Your IP : 216.73.216.86


Current Path : /var/www/homesaver/www/bitrix/js/landing/ui/field/image/dist/
Upload File :
Current File : /var/www/homesaver/www/bitrix/js/landing/ui/field/image/dist/image.bundle.js.map

{"version":3,"file":"image.bundle.js","sources":["../src/image.js"],"sourcesContent":["import { Dom, Type, Runtime, Event } from 'main.core';\nimport {Loc} from 'landing.loc';\nimport {Main} from 'landing.main';\nimport {StylePanel} from 'landing.ui.panel.stylepanel';\nimport {TextField} from 'landing.ui.field.textfield';\nimport {ImageUploader} from 'landing.imageuploader';\nimport {BaseButton} from 'landing.ui.button.basebutton';\nimport {AiImageButton} from 'landing.ui.button.aiimagebutton';\nimport {Env} from 'landing.env';\nimport type { Copilot as CopilotType } from 'ai.copilot';\n\nimport 'ui.fonts.opensans';\n// todo: remove most likely\nimport 'ui.forms';\nimport './css/style.css';\n\nexport class Image extends TextField\n{\n\timageCopilot: CopilotType;\n\tcopilotBindElement: ?HTMLElement = null;\n\taiButton = null;\n\tcopilotContext = null;\n\tcopilotCategory = null;\n\tuseCopilotInIframe = false;\n\tcopilotFinishInitPromise = new Promise(() => {});\n\n\tstatic CONTEXT_TYPE_CONTENT = 'content';\n\tstatic CONTEXT_TYPE_STYLE = 'style';\n\n\tconstructor(data)\n\t{\n\t\tsuper(data);\n\n\t\tthis.dimensions = typeof data.dimensions === \"object\" ? data.dimensions : null;\n\t\tthis.create2xByDefault = data.create2xByDefault !== false;\n\t\tthis.uploadParams = typeof data.uploadParams === \"object\" ? data.uploadParams : {};\n\t\tthis.onValueChangeHandler = data.onValueChange ? data.onValueChange : (() => {});\n\t\tthis.type = this.content.type || \"image\";\n\t\tthis.contextType = data.contextType || Image.CONTEXT_TYPE_CONTENT;\n\t\tthis.allowClear = data.allowClear;\n\t\tthis.isAiImageAvailable = Type.isBoolean(data.isAiImageAvailable) ? data.isAiImageAvailable : false;\n\t\tthis.isAiImageActive = Type.isBoolean(data.isAiImageActive) ? data.isAiImageActive : false;\n\t\tthis.aiUnactiveInfoCode = Type.isString(data.aiUnactiveInfoCode) ? data.aiUnactiveInfoCode : null;\n\n\t\tthis.input.innerText = this.content.src;\n\t\tthis.input.hidden = true;\n\t\tthis.input2x = this.createInput();\n\t\tthis.input2x.innerText = this.content.src2x || '';\n\t\tthis.input2x.hidden = true;\n\n\t\tthis.layout.classList.add(\"landing-ui-field-image\");\n\t\tthis.compactMode = data.compactMode === true;\n\t\tif (this.compactMode)\n\t\t{\n\t\t\tthis.layout.classList.add(\"landing-ui-field-image--compact\");\n\t\t}\n\n\t\tthis.disableAltField = typeof data.disableAltField === \"boolean\" ? data.disableAltField : false;\n\n\t\tthis.fileInput = Image.createFileInput(this.selector);\n\t\tthis.fileInput.addEventListener(\"change\", this.onFileInputChange.bind(this));\n\t\t// Do not append input to layout! Ticket 172032\n\n\t\tthis.linkInput = Image.createLinkInput();\n\t\tthis.linkInput.onInputHandler = Runtime.debounce(this.onLinkInput.bind(this), 777);\n\n\t\tthis.dropzone = Image.createDropzone(this.selector);\n\t\tthis.dropzone.hidden = true;\n\n\t\tthis.onDragOver = this.onDragOver.bind(this);\n\t\tthis.onDragLeave = this.onDragLeave.bind(this);\n\t\tthis.onDrop = this.onDrop.bind(this);\n\n\t\tthis.dropzone.addEventListener(\"dragover\", this.onDragOver);\n\t\tthis.dropzone.addEventListener(\"dragleave\", this.onDragLeave);\n\t\tthis.dropzone.addEventListener(\"drop\", this.onDrop);\n\n\t\tthis.clearButton = Image.createClearButton();\n\t\tthis.clearButton.on(\"click\", this.onClearClick.bind(this));\n\n\t\tthis.preview = Image.createImagePreview();\n\t\tthis.preview.appendChild(this.clearButton.layout);\n\t\tthis.preview.style.backgroundImage = \"url(\" + this.input.innerText.trim() + \")\";\n\n\t\tthis.onImageDragEnter = this.onImageDragEnter.bind(this);\n\t\tthis.preview.addEventListener(\"dragenter\", this.onImageDragEnter);\n\n\t\tthis.loader = new BX.Loader({target: this.preview});\n\n\t\tthis.icon = Image.createIcon();\n\n\t\tthis.image = Image.createImageLayout();\n\t\tthis.image.appendChild(this.preview);\n\t\tthis.image.appendChild(this.icon);\n\t\tthis.image.dataset.fileid = this.content.id;\n\t\tthis.image.dataset.fileid2x = this.content.id2x;\n\n\t\tthis.hiddenImage = Dom.create(\"img\", {\n\t\t\tprops: {className: \"landing-ui-field-image-hidden\"},\n\t\t});\n\n\t\tif (Type.isPlainObject(this.content) && \"src\" in this.content)\n\t\t{\n\t\t\tthis.hiddenImage.src = this.content.src;\n\t\t}\n\n\t\tthis.altField = Image.createAltField();\n\t\tthis.altField.setValue(this.content.alt);\n\n\t\tthis.left = Image.createLeftLayout();\n\t\tthis.left.appendChild(this.dropzone);\n\t\tthis.left.appendChild(this.image);\n\t\tthis.left.appendChild(this.hiddenImage);\n\n\t\tif (this.description)\n\t\t{\n\t\t\tthis.left.appendChild(this.description);\n\t\t}\n\n\t\tthis.left.appendChild(this.altField.layout);\n\t\tthis.left.appendChild(this.linkInput.layout);\n\n\t\tthis.uploadButton = Image.createUploadButton(this.compactMode);\n\t\tthis.uploadButton.on(\"click\", this.onUploadClick.bind(this));\n\n\t\tthis.editButton = Image.createEditButton();\n\t\tthis.editButton.on(\"click\", this.onEditClick.bind(this));\n\n\t\tthis.right = Image.createRightLayout();\n\n\t\t// ai images\n\t\tif (\n\t\t\tthis.isAiImageAvailable\n\t\t\t&& (this.type === \"background\" || this.type === \"image\")\n\t\t)\n\t\t{\n\t\t\tthis.useCopilotInIframe = this.uploadParams.action === 'Landing::uploadFile';\n\t\t\tthis.defineCopilotCategory();\n\t\t\tconst copilotOptions = {\n\t\t\t\tmoduleId: 'landing',\n\t\t\t\tcontextId: this.getAiContext(),\n\t\t\t\tcategory: this.copilotCategory,\n\t\t\t\tuseText: false,\n\t\t\t\tuseImage: true,\n\t\t\t\tautoHide: true,\n\t\t\t};\n\n\t\t\tthis.copilotContext = this.useCopilotInIframe ? BX : top.BX;\n\t\t\tthis.stylePanel = StylePanel.getInstance().layout;\n\t\t\tthis.stylePanelContent = StylePanel.getInstance().content;\n\t\t\tthis.copilotContext.Runtime.loadExtension('ai.copilot').then(({ Copilot, CopilotEvents}) => {\n\t\t\t\tthis.imageCopilot = new Copilot(copilotOptions);\n\n\t\t\t\tthis.imageCopilot.subscribe(CopilotEvents.FINISH_INIT, this.imageCopilotFinishInitHandler.bind(this));\n\t\t\t\tthis.imageCopilot.subscribe(CopilotEvents.IMAGE_COMPLETION_RESULT, this.imageCopilotImageResultHandler.bind(this));\n\t\t\t\tthis.imageCopilot.subscribe(CopilotEvents.IMAGE_SAVE, this.imageCopilotSaveImageHandler.bind(this));\n\t\t\t\tthis.imageCopilot.subscribe(CopilotEvents.IMAGE_CANCEL, this.imageCopilotCancelImageHandler.bind(this));\n\n\t\t\t\tEvent.bind(this.stylePanelContent, 'scroll', this.onScrollContentPanel.bind(this));\n\t\t\t\tEvent.bind(this.stylePanel, 'click', this.onClickStylePanel.bind(this));\n\t\t\t\tEvent.EventEmitter.subscribe('BX.Landing.UI.Panel.ContentEdit:onClick', this.onClickContentPanel.bind(this));\n\t\t\t\tEvent.EventEmitter.subscribe('BX.Landing.UI.Panel.BasePanel:onHide', this.closeCopilot.bind(this));\n\t\t\t\tEvent.EventEmitter.subscribe('BX.Landing.UI.Panel.BasePanel:onClick', this.onClickContentPanel.bind(this));\n\t\t\t\tEvent.EventEmitter.subscribe('BX.Landing.UI.Panel.BasePanel:onScroll', this.onScrollContentPanel.bind(this));\n\t\t\t\tthis.imageCopilot.init();\n\t\t\t});\n\n\t\t\tthis.aiButton = Image.createAiButton(this.compactMode);\n\t\t\tBX.bind(this.aiButton.layout, 'click', () => {\n\t\t\t\tif (this.isAiImageActive)\n\t\t\t\t{\n\t\t\t\t\tthis.onAiClick();\n\t\t\t\t}\n\t\t\t\telse if (this.aiUnactiveInfoCode && this.aiUnactiveInfoCode.length > 0)\n\t\t\t\t{\n\t\t\t\t\tBX.UI.InfoHelper.show(this.aiUnactiveInfoCode);\n\t\t\t\t}\n\t\t\t});\n\t\t\tthis.right.appendChild(this.aiButton.layout);\n\t\t}\n\n\t\tthis.right.appendChild(this.uploadButton.layout);\n\t\tthis.right.appendChild(this.editButton.layout);\n\t\tthis.form = Image.createForm();\n\t\tthis.form.appendChild(this.left);\n\t\tthis.form.appendChild(this.right);\n\n\t\tthis.layout.appendChild(this.form);\n\n\t\tthis.enableTextOnly();\n\n\t\tif (!this.input.innerText.trim() || this.input.innerText.trim() === window.location.toString())\n\t\t{\n\t\t\tthis.showDropzone();\n\t\t}\n\n\t\tif (this.disableAltField)\n\t\t{\n\t\t\tthis.altField.layout.hidden = true;\n\t\t\tthis.altField.layout.style.display = \"none\";\n\t\t\tthis.altField.layout.classList.add(\"landing-ui-hide\");\n\t\t}\n\n\t\tif (this.content.type === \"icon\")\n\t\t{\n\t\t\tthis.type = \"icon\";\n\t\t\tthis.classList = this.content.classList;\n\t\t\tthis.showPreview();\n\t\t\tthis.altField.layout.hidden = true;\n\t\t\tDom.addClass(this.layout, 'landing-ui-field-image-icon');\n\t\t}\n\n\t\tthis.makeAsLinkWrapper = Dom.create(\"div\", {\n\t\t\tprops: {className: \"landing-ui-field-image-make-as-link-wrapper\"},\n\t\t\tchildren: [\n\t\t\t\tDom.create('div', {\n\t\t\t\t\tprops: {className: \"landing-ui-field-image-make-as-link-button\"},\n\t\t\t\t\tchildren: [],\n\t\t\t\t}),\n\t\t\t],\n\t\t});\n\n\t\tthis.url = new BX.Landing.UI.Field.Link({\n\t\t\tcontent: this.content.url || {\n\t\t\t\ttext: '',\n\t\t\t\thref: '',\n\t\t\t},\n\t\t\toptions: {\n\t\t\t\tsiteId: Main.getInstance().options.site_id,\n\t\t\t\tlandingId: Main.getInstance().id,\n\t\t\t},\n\t\t\tcontentRoot: this.contentRoot,\n\t\t});\n\n\t\tthis.isDisabledUrl = this.content.url && this.content.url.enabled === false;\n\t\tif (this.isDisabledUrl)\n\t\t{\n\t\t\tthis.content.url.href = '';\n\t\t}\n\n\t\tthis.url.left.hidden = true;\n\n\t\tthis.makeAsLinkWrapper.appendChild(this.url.layout);\n\n\t\tif (!data.disableLink)\n\t\t{\n\t\t\tthis.layout.appendChild(this.makeAsLinkWrapper);\n\t\t}\n\n\t\tthis.content = this.getValue();\n\t\tBX.DOM.write(function ()\n\t\t{\n\t\t\tthis.adjustPreviewBackgroundSize();\n\t\t}.bind(this));\n\n\t\tif (this.getValue().type === \"background\" || this.allowClear)\n\t\t{\n\t\t\tthis.clearButton.layout.classList.add(\"landing-ui-show\");\n\t\t}\n\n\t\tthis.uploader = new ImageUploader({\n\t\t\tuploadParams: this.uploadParams,\n\t\t\tadditionalParams: {context: 'imageeditor'},\n\t\t\tdimensions: this.dimensions,\n\t\t\tsizes: ['1x', '2x'],\n\t\t\tallowSvg: Main.getInstance().options.allow_svg === true,\n\t\t});\n\n\t\tthis.adjustEditButtonState();\n\t}\n\n\t/**\n\t * Creates file input\n\t * @return {Element}\n\t */\n\tstatic createFileInput(id)\n\t{\n\t\treturn Dom.create(\"input\", {\n\t\t\tprops: {className: \"landing-ui-field-image-dropzone-input\"},\n\t\t\tattrs: {accept: \"image/*\", type: \"file\", id: \"file_\" + id, name: \"picture\"},\n\t\t});\n\t}\n\n\t/**\n\t * Creates link input field\n\t * @return {TextField}\n\t */\n\tstatic createLinkInput(): TextField\n\t{\n\t\tvar field = new TextField({\n\t\t\tid: \"path_to_image\",\n\t\t\tplaceholder: Loc.getMessage(\"LANDING_IMAGE_UPLOAD_MENU_LINK_LABEL\"),\n\t\t});\n\t\tfield.enableTextOnly();\n\t\tfield.layout.hidden = true;\n\t\treturn field;\n\t}\n\n\t/**\n\t * Creates dropzone\n\t * @param {string} id\n\t * @return {Element}\n\t */\n\tstatic createDropzone(id)\n\t{\n\t\treturn Dom.create(\"label\", {\n\t\t\tprops: {className: \"landing-ui-field-image-dropzone\"},\n\t\t\tchildren: [\n\t\t\t\tDom.create(\"div\", {\n\t\t\t\t\tprops: {className: \"landing-ui-field-image-dropzone-text\"},\n\t\t\t\t\thtml: (\n\t\t\t\t\t\t\"<div class=\\\"landing-ui-field-image-dropzone-title\\\">\" + Loc.getMessage(\n\t\t\t\t\t\t\t\"LANDING_IMAGE_DROPZONE_TITLE\") + \"</div>\" +\n\t\t\t\t\t\t\"<div class=\\\"landing-ui-field-image-dropzone-subtitle\\\">\" + Loc.getMessage(\n\t\t\t\t\t\t\t\"LANDING_IMAGE_DROPZONE_SUBTITLE\") + \"</div>\"\n\t\t\t\t\t),\n\t\t\t\t}),\n\t\t\t],\n\t\t\tattrs: {\"for\": \"file_\" + id},\n\t\t});\n\t}\n\n\t/**\n\t * Creates clear button\n\t * @return {BaseButton}\n\t */\n\tstatic createClearButton()\n\t{\n\t\treturn new BaseButton(\"clear\", {\n\t\t\tclassName: \"landing-ui-field-image-action-button-clear\",\n\t\t});\n\t}\n\n\t/**\n\t * Creates image preview\n\t * @return {Element}\n\t */\n\tstatic createImagePreview()\n\t{\n\t\treturn Dom.create(\"div\", {\n\t\t\tprops: {className: \"landing-ui-field-image-preview-inner\"},\n\t\t});\n\t}\n\n\t/**\n\t * Creates icon layout\n\t * @return {Element}\n\t */\n\tstatic createIcon()\n\t{\n\t\treturn Dom.create(\"span\", {\n\t\t\tprops: {className: \"landing-ui-field-image-preview-icon\"},\n\t\t});\n\t}\n\n\t/**\n\t * Creates image layout\n\t * @return {Element}\n\t */\n\tstatic createImageLayout()\n\t{\n\t\treturn Dom.create(\"div\", {\n\t\t\tprops: {className: \"landing-ui-field-image-preview\"},\n\t\t});\n\t}\n\n\t/**\n\t * Creates alt field\n\t * @return {TextField}\n\t */\n\tstatic createAltField()\n\t{\n\t\tvar field = new TextField({\n\t\t\tplaceholder: Loc.getMessage(\"LANDING_FIELD_IMAGE_ALT_PLACEHOLDER\"),\n\t\t\tclassName: \"landing-ui-field-image-alt\",\n\t\t\ttextOnly: true,\n\t\t});\n\t\treturn field;\n\t}\n\n\t/**\n\t * Creates left layout\n\t * @return {Element}\n\t */\n\tstatic createLeftLayout()\n\t{\n\t\treturn Dom.create(\"div\", {\n\t\t\tprops: {className: \"landing-ui-field-image-left\"},\n\t\t});\n\t}\n\n\t/**\n\t * Creates upload button\n\t * @return {BaseButton}\n\t */\n\tstatic createAiButton(compactMode: boolean = false)\n\t{\n\t\treturn new AiImageButton(\"ai\", {\n\t\t\ttext: 'CoPilot',\n\t\t\tclassName: \"landing-ui-field-image-ai-button\" + (compactMode ? ' --compact' : ''),\n\t\t});\n\t}\n\n\t/**\n\t * Creates ia create button\n\t * @return {BaseButton}\n\t */\n\tstatic createUploadButton()\n\t{\n\t\treturn new BaseButton(\"upload\", {\n\t\t\ttext: Loc.getMessage(\"LANDING_FIELD_IMAGE_UPLOAD_BUTTON\"),\n\t\t\tclassName: \"landing-ui-field-image-action-button\",\n\t\t});\n\t}\n\n\t/**\n\t * Creates edit button\n\t * @return {BaseButton}\n\t */\n\tstatic createEditButton()\n\t{\n\t\tvar field = new BaseButton(\"edit\", {\n\t\t\ttext: Loc.getMessage(\"LANDING_FIELD_IMAGE_EDIT_BUTTON\"),\n\t\t\tclassName: \"landing-ui-field-image-action-button\",\n\t\t});\n\n\t\treturn field;\n\t}\n\n\t/**\n\t * Creates right layout\n\t * @return {Element}\n\t */\n\tstatic createRightLayout()\n\t{\n\t\treturn Dom.create(\"div\", {\n\t\t\tprops: {className: \"landing-ui-field-image-right\"},\n\t\t});\n\t}\n\n\t/**\n\t * Creates form\n\t * @return {Element}\n\t */\n\tstatic createForm()\n\t{\n\t\treturn Dom.create(\"form\", {\n\t\t\tprops: {className: \"landing-ui-field-image-container\"},\n\t\t\tattrs: {method: \"post\", enctype: \"multipart/form-data\"},\n\t\t\tevents: {\n\t\t\t\tsubmit: function (event)\n\t\t\t\t{\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\tonInputInput()\n\t{\n\t\tthis.preview.src = this.input.innerText.trim();\n\t}\n\n\tonImageDragEnter(event)\n\t{\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\n\t\tif (!this.imageHidden)\n\t\t{\n\t\t\tthis.showDropzone();\n\t\t\tthis.imageHidden = true;\n\t\t}\n\t}\n\n\tonDragOver(event)\n\t{\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\tthis.dropzone.classList.add(\"landing-ui-active\");\n\t}\n\n\tonDragLeave(event)\n\t{\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\tthis.dropzone.classList.remove(\"landing-ui-active\");\n\n\t\tif (this.imageHidden)\n\t\t{\n\t\t\tthis.imageHidden = false;\n\t\t\tthis.showPreview();\n\t\t}\n\t}\n\n\tonDrop(event)\n\t{\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\tthis.dropzone.classList.remove(\"landing-ui-active\");\n\t\tthis.onFileChange(event.dataTransfer.files[0]);\n\t\tthis.imageHidden = false;\n\t}\n\n\tonFileChange(file)\n\t{\n\t\tthis.showLoader();\n\n\t\tthis.upload(file)\n\t\t\t.then(this.setValue.bind(this))\n\t\t\t.then(this.hideLoader.bind(this))\n\t\t\t.catch(function (err)\n\t\t\t{\n\t\t\t\tconsole.error(err);\n\t\t\t\tthis.hideLoader();\n\t\t\t}.bind(this));\n\t}\n\n\tonFileInputChange(event)\n\t{\n\t\tthis.onFileChange(event.currentTarget.files[0]);\n\t}\n\n\tasync onAiClick()\n\t{\n\t\tawait this.copilotFinishInitPromise;\n\t\tthis.showCopilot();\n\t}\n\n\t/**\n\t * Return AI image button, if exists (if allow)\n\t */\n\tgetAiButton(): ?BaseButton\n\t{\n\t\treturn this.aiButton;\n\t}\n\n\tshowCopilot()\n\t{\n\t\tthis.copilotBindElement = this.aiButton.layout;\n\t\tconst offsetY = 3;\n\t\tconst copilotBindElementPosition = this.copilotBindElement.getBoundingClientRect();\n\n\t\tthis.imageCopilot.show({\n\t\t\twidth: 500,\n\t\t\tbindElement: {\n\t\t\t\ttop: copilotBindElementPosition.bottom + offsetY,\n\t\t\t\tleft: copilotBindElementPosition.left,\n\t\t\t},\n\t\t});\n\t\tthis.imageCopilot.adjustPosition({});\n\t}\n\n\timageCopilotFinishInitHandler()\n\t{\n\t\tthis.copilotFinishInitPromise = Promise.resolve();\n\t}\n\n\timageCopilotImageResultHandler(e)\n\t{\n\t\tconst data = e.getData();\n\t\tthis.imageCopilotUrl = encodeURI(data.imageUrl);\n\t\tif (this.copilotBindElement === this.dropzone)\n\t\t{\n\t\t\tthis.showPreview();\n\t\t}\n\t\tDom.addClass(this.preview, '--shown');\n\t\tDom.style(this.preview, 'background-image', `url(\"${this.imageCopilotUrl}\")`);\n\t\tDom.style(this.preview, 'background-size', 'contain');\n\t}\n\n\timageCopilotSaveImageHandler()\n\t{\n\t\tconst url = this.imageCopilotUrl;\n\t\tconst proxyUrl = BX.util.add_url_param(\"/bitrix/tools/landing/proxy.php\", {\n\t\t\t\"sessid\": BX.bitrix_sessid(),\n\t\t\t\"url\": url,\n\t\t});\n\t\tBX.Landing.Utils.urlToBlob(proxyUrl)\n\t\t\t.then(blob => {\n\t\t\t\tblob.lastModifiedDate = new Date();\n\t\t\t\tblob.name = url.slice(url.lastIndexOf('/') + 1);\n\n\t\t\t\treturn blob;\n\t\t\t})\n\t\t\t.then(this.upload.bind(this))\n\t\t\t.then(this.setValue.bind(this))\n\t\t\t.then(this.hideLoader.bind(this))\n\t\t\t.then(() => {\n\t\t\t\tDom.removeClass(this.preview, '--shown');\n\t\t\t});\n\n\t\tthis.closeCopilot();\n\t}\n\n\timageCopilotCancelImageHandler()\n\t{\n\t\tif (this.copilotBindElement === this.dropzone)\n\t\t{\n\t\t\tthis.showDropzone();\n\t\t}\n\t\telse\n\t\t{\n\t\t\tDom.removeClass(this.preview, '--shown');\n\t\t\tDom.style(this.preview, 'background-image', `url(\"${this.input.innerText.trim()}\")`);\n\t\t}\n\t}\n\n\tcloseCopilot()\n\t{\n\t\tif (this.imageCopilot.isShown())\n\t\t{\n\t\t\tthis.imageCopilot.hide();\n\t\t\tEvent.EventEmitter.unsubscribe('BX.Landing.UI.Panel.BasePanel:onHide', this.closeCopilot.bind(this));\n\t\t\tEvent.unbind(this.stylePanel, 'click', this.onClickStylePanel.bind(this));\n\t\t}\n\t}\n\n\tonClickStylePanel(event)\n\t{\n\t\tif (!this.aiButton.layout.contains(event.target))\n\t\t{\n\t\t\tthis.closeCopilot();\n\t\t}\n\t}\n\n\tonClickContentPanel(event)\n\t{\n\t\tconst target = event.getData().event.target;\n\t\tif (!this.aiButton.layout.contains(target))\n\t\t{\n\t\t\tthis.closeCopilot();\n\t\t}\n\t}\n\n\tonScrollContentPanel()\n\t{\n\t\tif (Boolean(this.imageCopilot?.isShown()) === false)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.imageCopilot.getPosition().inputField.top < 133)\n\t\t{\n\t\t\tthis.imageCopilot.adjustPosition({ hide: true });\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.imageCopilot.adjustPosition({ hide: false });\n\t\t}\n\t}\n\n\tdefineCopilotCategory()\n\t{\n\t\tthis.copilotCategory = this.contextType === 'style' ? 'landing_designer'\n\t\t\t: (this.useCopilotInIframe ? 'landing_setting'\n\t\t\t\t: 'landing_editor');\n\t}\n\n\tgetAiContext(): string\n\t{\n\t\treturn 'image_site_' + Env.getInstance().getSiteId();\n\t}\n\n\tonUploadClick(event)\n\t{\n\t\tthis.bindElement = event.currentTarget;\n\n\t\tevent.preventDefault();\n\n\t\tif (!this.uploadMenu)\n\t\t{\n\t\t\tthis.uploadMenu = BX.Main.MenuManager.create({\n\t\t\t\tid: \"upload_\" + this.selector + (+new Date()),\n\t\t\t\tbindElement: this.bindElement,\n\t\t\t\tbindOptions: {\n\t\t\t\t\tforceBindPosition: true,\n\t\t\t\t},\n\t\t\t\titems: [\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: Loc.getMessage(\"LANDING_IMAGE_UPLOAD_MENU_UNSPLASH\"),\n\t\t\t\t\t\tonclick: this.onUnsplashShow.bind(this),\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: Loc.getMessage(\"LANDING_IMAGE_UPLOAD_MENU_GOOGLE\"),\n\t\t\t\t\t\tonclick: this.onGoogleShow.bind(this),\n\t\t\t\t\t},\n\t\t\t\t\t// {\n\t\t\t\t\t// \ttext: Loc.getMessage(\"LANDING_IMAGE_UPLOAD_MENU_PARTNER\"),\n\t\t\t\t\t// \tclassName: \"landing-ui-disabled\"\n\t\t\t\t\t// },\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: Loc.getMessage(\"LANDING_IMAGE_UPLOAD_MENU_UPLOAD\"),\n\t\t\t\t\t\tonclick: this.onUploadShow.bind(this),\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: Loc.getMessage(\"LANDING_IMAGE_UPLOAD_MENU_LINK\"),\n\t\t\t\t\t\tonclick: this.onLinkShow.bind(this),\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tevents: {\n\t\t\t\t\tonPopupClose: function ()\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.bindElement.classList.remove(\"landing-ui-active\");\n\n\t\t\t\t\t\tif (this.uploadMenu)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tthis.uploadMenu.destroy();\n\t\t\t\t\t\t\tthis.uploadMenu = null;\n\t\t\t\t\t\t}\n\t\t\t\t\t}.bind(this),\n\t\t\t\t},\n\t\t\t\ttargetContainer: this.contentRoot,\n\t\t\t});\n\t\t\tif (!this.contentRoot)\n\t\t\t{\n\t\t\t\tthis.bindElement.parentNode.appendChild(this.uploadMenu.popupWindow.popupContainer);\n\t\t\t}\n\t\t}\n\n\t\tthis.bindElement.classList.add(\"landing-ui-active\");\n\t\tthis.uploadMenu.toggle();\n\n\t\tif (!this.contentRoot && this.uploadMenu)\n\t\t{\n\t\t\tvar rect = BX.pos(this.bindElement, this.bindElement.parentNode);\n\t\t\tthis.uploadMenu.popupWindow.popupContainer.style.top = rect.bottom + \"px\";\n\t\t\tthis.uploadMenu.popupWindow.popupContainer.style.left = \"auto\";\n\t\t\tthis.uploadMenu.popupWindow.popupContainer.style.right = \"5px\";\n\t\t}\n\t}\n\n\tonUnsplashShow()\n\t{\n\t\tthis.uploadMenu.close();\n\n\t\tBX.Landing.UI.Panel.Image.getInstance()\n\t\t\t.show(\"unsplash\", this.dimensions, this.loader, this.uploadParams)\n\t\t\t.then(this.upload.bind(this))\n\t\t\t.then(this.setValue.bind(this))\n\t\t\t.then(this.hideLoader.bind(this))\n\t\t\t.catch(function (err)\n\t\t\t{\n\t\t\t\tconsole.error(err);\n\t\t\t\tthis.hideLoader();\n\t\t\t}.bind(this));\n\t}\n\n\tonGoogleShow()\n\t{\n\t\tthis.uploadMenu.close();\n\n\t\tBX.Landing.UI.Panel.Image.getInstance()\n\t\t\t.show(\"google\", this.dimensions, this.loader, this.uploadParams)\n\t\t\t.then(this.upload.bind(this))\n\t\t\t.then(this.setValue.bind(this))\n\t\t\t.then(this.hideLoader.bind(this))\n\t\t\t.catch(function (err)\n\t\t\t{\n\t\t\t\tBX.Landing.ErrorManager.getInstance().add({\n\t\t\t\t\ttype: 'error',\n\t\t\t\t\taction: 'BAD_IMAGE',\n\t\t\t\t\thideSupportLink: true,\n\t\t\t\t});\n\t\t\t\tconsole.error(err);\n\t\t\t\tthis.hideLoader();\n\t\t\t}.bind(this));\n\t}\n\n\tonUploadShow()\n\t{\n\t\tthis.uploadMenu.close();\n\t\tthis.fileInput.click();\n\t}\n\n\tonLinkShow()\n\t{\n\t\tthis.uploadMenu.close();\n\t\tthis.showLinkField();\n\t\tthis.linkInput.setValue(\"\");\n\t}\n\n\tonEditClick(event)\n\t{\n\t\tevent.preventDefault();\n\t\tthis.edit({src: this.hiddenImage.src});\n\t}\n\n\tonClearClick(event)\n\t{\n\t\tevent.preventDefault();\n\t\tthis.setValue({src: \"\"});\n\t\tthis.fileInput.value = \"\";\n\t\tthis.showDropzone();\n\t}\n\n\tshowDropzone()\n\t{\n\t\tthis.dropzone.hidden = false;\n\t\tthis.image.hidden = true;\n\t\tthis.altField.layout.hidden = true;\n\t\tthis.linkInput.layout.hidden = true;\n\t}\n\n\tshowPreview()\n\t{\n\t\tthis.dropzone.hidden = true;\n\t\tthis.image.hidden = false;\n\t\tthis.altField.layout.hidden = false;\n\t\tthis.linkInput.layout.hidden = true;\n\t}\n\n\tshowLinkField()\n\t{\n\t\tthis.dropzone.hidden = true;\n\t\tthis.image.hidden = true;\n\t\tthis.altField.layout.hidden = true;\n\t\tthis.linkInput.layout.hidden = false;\n\t}\n\n\tonLinkInput(value)\n\t{\n\t\tconst tmpImage = Dom.create(\"img\");\n\t\ttmpImage.src = value;\n\t\ttmpImage.onload = () => {\n\t\t\tthis.showPreview();\n\t\t\tthis.setValue({src: value, src2x: value});\n\t\t};\n\t}\n\n\tshowLoader()\n\t{\n\t\tif (this.dropzone && !this.dropzone.hidden)\n\t\t{\n\t\t\tthis.loader.show(this.dropzone);\n\t\t\treturn;\n\t\t}\n\n\t\tthis.loader.show(this.preview);\n\t}\n\n\thideLoader()\n\t{\n\t\tthis.loader.hide();\n\t}\n\n\t/**\n\t * Handles click event on input field\n\t * @param {MouseEvent} event\n\t */\n\tonInputClick(event)\n\t{\n\t\tevent.preventDefault();\n\t}\n\n\t/**\n\t * @inheritDoc\n\t * @return {boolean}\n\t */\n\tisChanged()\n\t{\n\t\tvar lastValue = BX.Landing.Utils.clone(this.content);\n\t\tvar currentValue = BX.Landing.Utils.clone(this.getValue());\n\n\t\tif (lastValue.url && Type.isString(lastValue.url))\n\t\t{\n\t\t\tlastValue.url = BX.Landing.Utils.decodeDataValue(lastValue.url);\n\t\t}\n\n\t\tif (currentValue.url && Type.isString(currentValue.url))\n\t\t{\n\t\t\tcurrentValue.url = BX.Landing.Utils.decodeDataValue(currentValue.url);\n\t\t}\n\n\t\treturn JSON.stringify(lastValue) !== JSON.stringify(currentValue);\n\t}\n\n\t/**\n\t * Adjusts preview background image size\n\t */\n\tadjustPreviewBackgroundSize()\n\t{\n\t\tvar img = Dom.create(\"img\", {attrs: {src: this.getValue().src}});\n\n\t\timg.onload = function ()\n\t\t{\n\t\t\tvar preview = this.preview.getBoundingClientRect();\n\t\t\tvar position = \"cover\";\n\n\t\t\tif (img.width > preview.width || img.height > preview.height)\n\t\t\t{\n\t\t\t\tposition = \"contain\";\n\t\t\t}\n\n\t\t\tif (img.width < preview.width && img.height < preview.height)\n\t\t\t{\n\t\t\t\tposition = \"auto\";\n\t\t\t}\n\n\t\t\tBX.DOM.write(function ()\n\t\t\t{\n\t\t\t\tthis.preview.style.backgroundSize = position;\n\t\t\t}.bind(this));\n\t\t}.bind(this);\n\t}\n\n\t/**\n\t * @param {object} value\n\t * @param {boolean} [preventEvent = false]\n\t */\n\tsetValue(value, preventEvent)\n\t{\n\t\tif (value.type !== \"icon\")\n\t\t{\n\t\t\tif (!value || !value.src)\n\t\t\t{\n\t\t\t\tthis.input.innerText = \"\";\n\t\t\t\tthis.input2x.innerText = \"\";\n\t\t\t\tthis.preview.removeAttribute(\"style\");\n\t\t\t\tthis.input.dataset.ext = \"\";\n\t\t\t\tthis.showDropzone();\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.input.innerText = value.src;\n\t\t\t\tthis.input2x.innerText = value.src2x || '';\n\t\t\t\tthis.preview.style.backgroundImage = \"url(\\\"\" + (value.src2x || value.src) + \"\\\")\";\n\t\t\t\tthis.preview.id = BX.util.getRandomString();\n\t\t\t\tthis.hiddenImage.src = value.src2x || value.src;\n\t\t\t\tthis.showPreview();\n\t\t\t}\n\n\t\t\tthis.image.dataset.fileid = value && value.id ? value.id : -1;\n\t\t\tthis.image.dataset.fileid2x = value && value.id2x ? value.id2x : -1;\n\n\t\t\tif (value.type === 'image')\n\t\t\t{\n\t\t\t\tthis.altField.layout.hidden = false;\n\t\t\t\tthis.altField.setValue(value.alt);\n\t\t\t}\n\n\t\t\tthis.classList = [];\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.preview.style.backgroundImage = null;\n\t\t\tthis.classList = value.classList;\n\t\t\tthis.icon.innerHTML = \"<span class=\\\"\" + value.classList.join(\" \") + \"\\\"></span>\";\n\t\t\tthis.showPreview();\n\t\t\tthis.type = \"icon\";\n\t\t\tthis.altField.layout.hidden = true;\n\t\t\tthis.altField.setValue(\"\");\n\t\t\tthis.input.innerText = \"\";\n\t\t}\n\n\t\tif (value.url)\n\t\t{\n\t\t\tthis.url.setValue(value.url);\n\t\t}\n\n\t\tthis.adjustPreviewBackgroundSize();\n\t\tthis.adjustEditButtonState();\n\t\tthis.hideLoader();\n\n\t\tthis.onValueChangeHandler(this);\n\t\tBX.fireEvent(this.layout, \"input\");\n\n\t\tvar event = new BX.Event.BaseEvent({\n\t\t\tdata: {value: this.getValue()},\n\t\t\tcompatData: [this.getValue()],\n\t\t});\n\t\tif (!preventEvent)\n\t\t{\n\t\t\tthis.emit('change', event);\n\t\t}\n\t}\n\n\tadjustEditButtonState()\n\t{\n\t\tvar value = this.getValue();\n\t\tif (BX.Type.isStringFilled(value.src))\n\t\t{\n\t\t\tthis.editButton.enable();\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.editButton.disable();\n\t\t}\n\t}\n\n\treset()\n\t{\n\t\tthis.setValue({\n\t\t\ttype: this.getValue().type,\n\t\t\tid: -1,\n\t\t\tsrc: \"\",\n\t\t\talt: \"\",\n\t\t});\n\t}\n\n\t/**\n\t * Gets field value\n\t * @return {{src, [alt]: string, [title]: string, [url]: string, [type]: string}}\n\t */\n\tgetValue()\n\t{\n\t\tconst value = {type: \"\", src: \"\", alt: \"\", url: \"\"};\n\n\t\tconst fileId = parseInt(this.image.dataset.fileid);\n\t\tif (Type.isNumber(fileId) && fileId > 0)\n\t\t{\n\t\t\tvalue.id = fileId;\n\t\t}\n\n\t\tconst fileId2x = parseInt(this.image.dataset.fileid2x);\n\t\tif (Type.isNumber(fileId2x) && fileId2x > 0)\n\t\t{\n\t\t\tvalue.id2x = fileId2x;\n\t\t}\n\n\t\tconst src2x = this.input2x.innerText.trim();\n\t\tif (Type.isString(src2x) && src2x)\n\t\t{\n\t\t\tvalue.src2x = src2x;\n\t\t}\n\n\t\tif (this.type === \"background\" || this.type === \"image\")\n\t\t{\n\t\t\tvalue.src = this.input.innerText.trim();\n\t\t}\n\n\t\tif (this.type === \"background\")\n\t\t{\n\t\t\tvalue.type = \"background\";\n\t\t}\n\n\t\tif (this.type === \"image\")\n\t\t{\n\t\t\tvalue.type = \"image\";\n\t\t\tvalue.alt = this.altField.getValue();\n\t\t}\n\n\t\tif (this.type === \"icon\")\n\t\t{\n\t\t\tvalue.type = \"icon\";\n\t\t\tvalue.classList = this.classList;\n\t\t}\n\n\t\tvalue.url = Object.assign({}, this.url.getValue(), {enabled: true});\n\n\t\treturn value;\n\t}\n\n\tedit(data)\n\t{\n\t\tparent.BX.Landing.ImageEditor\n\t\t\t.edit({\n\t\t\t\timage: data.src,\n\t\t\t\tdimensions: this.dimensions,\n\t\t\t})\n\t\t\t.then(function (file)\n\t\t\t{\n\t\t\t\tlet ext = file.name.split('.').pop();\n\t\t\t\tif (!file.name.includes('.') || ext.length > 4)\n\t\t\t\t{\n\t\t\t\t\text = `.${file.name.split('_').pop()}`;\n\t\t\t\t\tfile.name = file.name + ext;\n\t\t\t\t}\n\n\t\t\t\treturn this.upload(file, {context: \"imageEditor\"});\n\t\t\t}.bind(this))\n\t\t\t.then(function (result)\n\t\t\t{\n\t\t\t\tthis.setValue(result);\n\t\t\t}.bind(this));\n\n\t\t// Analytics hack\n\t\tconst tmpImage = document.createElement('img');\n\t\tlet imageSrc = \"/bitrix/images/landing/close.svg\";\n\n\t\timageSrc = BX.util.add_url_param(imageSrc, {\n\t\t\taction: \"openImageEditor\",\n\t\t});\n\n\t\ttmpImage.src = imageSrc + \"?\" + (+new Date());\n\t}\n\n\t/**\n\t * @param {File|Blob} file\n\t * @param {object} [additionalParams]\n\t */\n\tupload(file, additionalParams)\n\t{\n\t\tif (file.type && (file.type.includes('text') || file.type.includes('html')))\n\t\t{\n\t\t\tBX.Landing.ErrorManager.getInstance().add({\n\t\t\t\ttype: \"error\",\n\t\t\t\taction: \"BAD_IMAGE\",\n\t\t\t});\n\n\t\t\treturn Promise.reject({\n\t\t\t\ttype: \"error\",\n\t\t\t\taction: \"BAD_IMAGE\",\n\t\t\t});\n\t\t}\n\n\t\tthis.showLoader();\n\n\t\tconst isPng = (\n\t\t\tType.isStringFilled(file.type)\n\t\t\t&& file.type.includes('png')\n\t\t);\n\n\t\tconst isSvg = (\n\t\t\tType.isStringFilled(file.type)\n\t\t\t&& file.type.includes('svg')\n\t\t);\n\n\t\tconst checkSize = new Promise(function (resolve)\n\t\t{\n\t\t\tlet sizes = (isPng || isSvg) ? ['2x'] : ['1x', '2x'];\n\n\t\t\tif (this.create2xByDefault === false)\n\t\t\t{\n\t\t\t\tconst image = document.createElement('img');\n\t\t\t\tconst objectUrl = URL.createObjectURL(file);\n\t\t\t\tconst dimensions = this.dimensions;\n\t\t\t\timage.onload = function ()\n\t\t\t\t{\n\t\t\t\t\tURL.revokeObjectURL(objectUrl);\n\t\t\t\t\tif (\n\t\t\t\t\t\t(\n\t\t\t\t\t\t\tthis.width >= dimensions.width\n\t\t\t\t\t\t\t|| this.height >= dimensions.height\n\t\t\t\t\t\t\t|| this.width >= dimensions.maxWidth\n\t\t\t\t\t\t\t|| this.height >= dimensions.maxHeight\n\t\t\t\t\t\t) === false\n\t\t\t\t\t)\n\t\t\t\t\t{\n\t\t\t\t\t\tsizes = (isPng || isSvg) ? ['2x'] : ['1x'];\n\t\t\t\t\t}\n\n\t\t\t\t\tresolve(sizes);\n\t\t\t\t};\n\t\t\t\timage.src = objectUrl;\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tresolve(sizes);\n\t\t\t}\n\t\t}.bind(this));\n\n\t\treturn checkSize\n\t\t\t.then(function (allowedSizes)\n\t\t\t{\n\t\t\t\tvar sizes = (function ()\n\t\t\t\t{\n\t\t\t\t\tif (\n\t\t\t\t\t\tthis.create2xByDefault === false\n\t\t\t\t\t\t&& BX.Type.isArrayFilled(allowedSizes)\n\t\t\t\t\t)\n\t\t\t\t\t{\n\t\t\t\t\t\treturn allowedSizes;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (isPng || isSvg) ? ['2x'] : ['1x', '2x'];\n\t\t\t\t}.bind(this))();\n\n\t\t\t\treturn this.uploader\n\t\t\t\t\t.setSizes(sizes)\n\t\t\t\t\t.upload(file, additionalParams)\n\t\t\t\t\t.then(function (result)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.hideLoader();\n\n\t\t\t\t\t\tif (sizes.length === 1)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\treturn result[0];\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn Object.assign({}, result[0], {\n\t\t\t\t\t\t\tsrc2x: result[1].src,\n\t\t\t\t\t\t\tid2x: result[1].id,\n\t\t\t\t\t\t});\n\t\t\t\t\t}.bind(this));\n\t\t\t}.bind(this));\n\t}\n}\n"],"names":["Image","data","Promise","dimensions","create2xByDefault","uploadParams","onValueChangeHandler","onValueChange","type","content","contextType","CONTEXT_TYPE_CONTENT","allowClear","isAiImageAvailable","Type","isBoolean","isAiImageActive","aiUnactiveInfoCode","isString","input","innerText","src","hidden","input2x","createInput","src2x","layout","classList","add","compactMode","disableAltField","fileInput","createFileInput","selector","addEventListener","onFileInputChange","bind","linkInput","createLinkInput","onInputHandler","Runtime","debounce","onLinkInput","dropzone","createDropzone","onDragOver","onDragLeave","onDrop","clearButton","createClearButton","on","onClearClick","preview","createImagePreview","appendChild","style","backgroundImage","trim","onImageDragEnter","loader","BX","Loader","target","icon","createIcon","image","createImageLayout","dataset","fileid","id","fileid2x","id2x","hiddenImage","Dom","create","props","className","isPlainObject","altField","createAltField","setValue","alt","left","createLeftLayout","description","uploadButton","createUploadButton","onUploadClick","editButton","createEditButton","onEditClick","right","createRightLayout","useCopilotInIframe","action","defineCopilotCategory","copilotOptions","moduleId","contextId","getAiContext","category","copilotCategory","useText","useImage","autoHide","copilotContext","top","stylePanel","StylePanel","getInstance","stylePanelContent","loadExtension","then","Copilot","CopilotEvents","imageCopilot","subscribe","FINISH_INIT","imageCopilotFinishInitHandler","IMAGE_COMPLETION_RESULT","imageCopilotImageResultHandler","IMAGE_SAVE","imageCopilotSaveImageHandler","IMAGE_CANCEL","imageCopilotCancelImageHandler","Event","onScrollContentPanel","onClickStylePanel","EventEmitter","onClickContentPanel","closeCopilot","init","aiButton","createAiButton","onAiClick","length","UI","InfoHelper","show","form","createForm","enableTextOnly","window","location","toString","showDropzone","display","showPreview","addClass","makeAsLinkWrapper","children","url","Landing","Field","Link","text","href","options","siteId","Main","site_id","landingId","contentRoot","isDisabledUrl","enabled","disableLink","getValue","DOM","write","adjustPreviewBackgroundSize","uploader","ImageUploader","additionalParams","context","sizes","allowSvg","allow_svg","adjustEditButtonState","event","preventDefault","stopPropagation","imageHidden","remove","onFileChange","dataTransfer","files","file","showLoader","upload","hideLoader","err","console","error","currentTarget","copilotFinishInitPromise","showCopilot","copilotBindElement","offsetY","copilotBindElementPosition","getBoundingClientRect","width","bindElement","bottom","adjustPosition","resolve","e","getData","imageCopilotUrl","encodeURI","imageUrl","proxyUrl","util","add_url_param","bitrix_sessid","Utils","urlToBlob","blob","lastModifiedDate","Date","name","slice","lastIndexOf","removeClass","isShown","hide","unsubscribe","unbind","contains","Boolean","getPosition","inputField","Env","getSiteId","uploadMenu","MenuManager","bindOptions","forceBindPosition","items","Loc","getMessage","onclick","onUnsplashShow","onGoogleShow","onUploadShow","onLinkShow","events","onPopupClose","destroy","targetContainer","parentNode","popupWindow","popupContainer","toggle","rect","pos","close","Panel","ErrorManager","hideSupportLink","click","showLinkField","edit","value","tmpImage","onload","lastValue","clone","currentValue","decodeDataValue","JSON","stringify","img","attrs","position","height","backgroundSize","preventEvent","removeAttribute","ext","getRandomString","innerHTML","join","fireEvent","BaseEvent","compatData","emit","isStringFilled","enable","disable","fileId","parseInt","isNumber","fileId2x","Object","assign","parent","ImageEditor","split","pop","includes","result","document","createElement","imageSrc","reject","isPng","isSvg","checkSize","objectUrl","URL","createObjectURL","revokeObjectURL","maxWidth","maxHeight","allowedSizes","isArrayFilled","setSizes","accept","field","TextField","placeholder","html","BaseButton","textOnly","AiImageButton","method","enctype","submit"],"mappings":"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"}