| Current Path : /var/www/homesaver/www/bitrix/components/bitrix/ui.image.input/templates/.default/ |
| Current File : /var/www/homesaver/www/bitrix/components/bitrix/ui.image.input/templates/.default/script.js.map |
{"version":3,"file":"script.js","sources":["script.es6.js"],"sourcesContent":["import {Dom, Event, Reflection, Tag, Type} from 'main.core';\nimport {type BaseEvent, EventEmitter} from 'main.core.events';\nimport {Loader} from 'main.loader';\n\nconst instances = new Map();\n\nclass ImageInput\n{\n\tcontainer = null;\n\tloaderContainer = null;\n\taddButton = null;\n\tloader = null;\n\ttimeout = null;\n\tuploading = false;\n\n\tonUploaderIsInitedHandler = this.handleOnUploaderIsInited.bind(this);\n\trecalculateWrapperHandler = this.recalculateWrapper.bind(this);\n\n\tstatic getById(id: string): ?ImageInput\n\t{\n\t\treturn instances.get(id) || null;\n\t}\n\n\tconstructor(params = {})\n\t{\n\t\tthis.instanceId = params.instanceId;\n\t\tthis.containerId = params.containerId;\n\t\tthis.loaderContainerId = params.loaderContainerId;\n\t\tthis.settings = params.settings || {};\n\n\t\tthis.disabled = params.disabled || false;\n\t\tif (this.disabled)\n\t\t{\n\t\t\tEvent.bind(this.getContainer(), 'click', (event) => {\n\t\t\t\tevent.stopPropagation();\n\t\t\t\tevent.preventDefault();\n\t\t\t});\n\t\t}\n\n\t\tthis.addImageHandler = this.addImage.bind(this);\n\t\tthis.editImageHandler = this.editImage.bind(this);\n\n\t\tEventEmitter.subscribe('onUploaderIsInited', this.onUploaderIsInitedHandler);\n\n\t\tinstances.set(this.instanceId, this);\n\t}\n\n\thandleOnUploaderIsInited(event: BaseEvent)\n\t{\n\t\tconst [id, uploader] = event.getCompatData();\n\n\t\tif (this.instanceId === id)\n\t\t{\n\t\t\tif (this.getPreviews().length > 0)\n\t\t\t{\n\t\t\t\tDom.addClass(this.getFileWrapper(), 'ui-image-input-wrapper');\n\t\t\t}\n\n\t\t\trequestAnimationFrame(() => {\n\t\t\t\tthis.getLoaderContainer() && (this.getLoaderContainer().style.display = 'none');\n\t\t\t\tthis.getContainer().style.display = '';\n\t\t\t});\n\n\t\t\tEventEmitter.subscribe(uploader, 'onFileIsDeleted', this.onFileIsDeletedHandler.bind(this));\n\t\t\tEventEmitter.subscribe(uploader, 'onStart', this.onUploadStartHandler.bind(this));\n\t\t\tEventEmitter.subscribe(uploader, 'onDone', this.onUploadDoneHandler.bind(this));\n\t\t\tEventEmitter.subscribe(uploader, 'onFileCanvasIsLoaded', this.onFileCanvasIsLoadedHandler.bind(this));\n\n\t\t\tEventEmitter.unsubscribe('onDemandRecalculateWrapper', this.recalculateWrapperHandler);\n\t\t\tEventEmitter.subscribe('onDemandRecalculateWrapper', this.recalculateWrapperHandler);\n\t\t}\n\t}\n\n\tunsubscribeEvents()\n\t{\n\t\tEventEmitter.unsubscribe('onDemandRecalculateWrapper', this.recalculateWrapperHandler);\n\t\tEventEmitter.unsubscribe('onUploaderIsInited', this.onUploaderIsInitedHandler);\n\t}\n\n\tgetInputInstance()\n\t{\n\t\treturn BX.UI.FileInput.getInstance(this.instanceId);\n\t}\n\n\tgetFileInput()\n\t{\n\t\treturn this.getInputInstance().agent.fileInput;\n\t}\n\n\tgetContainer()\n\t{\n\t\tif (!this.container)\n\t\t{\n\t\t\tthis.container = document.getElementById(this.containerId);\n\n\t\t\tif (!Type.isDomNode(this.container))\n\t\t\t{\n\t\t\t\tthrow Error(`Can't find container with id ${this.containerId}`);\n\t\t\t}\n\t\t}\n\n\t\treturn this.container;\n\t}\n\n\tgetFileWrapper()\n\t{\n\t\tif (!this.fileWrapper)\n\t\t{\n\t\t\tthis.fileWrapper = this.getContainer().querySelector('.adm-fileinput-wrapper');\n\t\t}\n\n\t\treturn this.fileWrapper;\n\t}\n\n\tgetLoaderContainer()\n\t{\n\t\tif (!this.loaderContainer)\n\t\t{\n\t\t\tthis.loaderContainer = document.getElementById(this.loaderContainerId);\n\t\t}\n\n\t\treturn this.loaderContainer;\n\t}\n\n\tgetAddButton()\n\t{\n\t\tif (!this.addButton)\n\t\t{\n\t\t\tthis.addButton = this.getContainer().querySelector('[data-role=\"image-add-button\"]');\n\t\t}\n\n\t\treturn this.addButton;\n\t}\n\n\teditImage(event)\n\t{\n\t\tif (event.target === this.getFileInput())\n\t\t{\n\t\t\t// api call .click() to fire file upload dialog\n\t\t\tif (event.detail === 0)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// disable default file dialog open\n\t\t\telse\n\t\t\t{\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t}\n\n\t\tconst inputInstance = this.getInputInstance();\n\t\tconst items = inputInstance.agent.getItems().items;\n\n\t\tfor (let id in items)\n\t\t{\n\t\t\tif (items.hasOwnProperty(id))\n\t\t\t{\n\t\t\t\t// hack to open editor (for unknown reasons the flag disappears)\n\t\t\t\tinputInstance.frameFlags.active = true;\n\t\t\t\tinputInstance.frameFiles(id);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\taddImage(event)\n\t{\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\tthis.getFileInput().click();\n\t}\n\n\t/**\n\t * @returns {Loader}\n\t */\n\tgetLoader()\n\t{\n\t\tif (!this.loader)\n\t\t{\n\t\t\tthis.loader = new Loader({\n\t\t\t\ttarget: this.getFileWrapper().querySelector('.adm-fileinput-drag-area')\n\t\t\t});\n\t\t}\n\n\t\treturn this.loader;\n\t}\n\n\tshowLoader()\n\t{\n\t\tthis.getLoader().setOptions({\n\t\t\tsize: Math.min(this.getContainer().offsetHeight, this.getContainer().offsetWidth)\n\t\t});\n\t\tthis.getLoader().show();\n\t}\n\n\thideLoader()\n\t{\n\t\tthis.getLoader().hide();\n\t}\n\n\tonFileIsDeletedHandler()\n\t{\n\t\tthis.timeout = clearTimeout(this.timeout);\n\n\t\tthis.timeout = setTimeout(() => {\n\t\t\tthis.hideLoader();\n\t\t\tthis.recalculateWrapper();\n\t\t}, 100);\n\t}\n\n\tonUploadStartHandler(event: BaseEvent)\n\t{\n\t\tconst [stream] = event.getCompatData();\n\t\tif (stream)\n\t\t{\n\t\t\tthis.uploading = true;\n\t\t}\n\n\t\tclearTimeout(this.timeout);\n\n\t\tthis.timeout = setTimeout(() => {\n\t\t\tthis.showLoader();\n\t\t\tthis.recalculateWrapper();\n\t\t}, 100);\n\t}\n\n\tonUploadDoneHandler(event: BaseEvent)\n\t{\n\t\tconst [stream] = event.getCompatData();\n\t\tif (stream)\n\t\t{\n\t\t\tthis.uploading = false;\n\t\t\tthis.timeout = clearTimeout(this.timeout);\n\n\t\t\trequestAnimationFrame(() => {\n\t\t\t\tthis.hideLoader();\n\t\t\t\tthis.recalculateWrapper();\n\t\t\t});\n\t\t}\n\t}\n\n\tonFileCanvasIsLoadedHandler()\n\t{\n\t\tif (this.timeout && !this.uploading)\n\t\t{\n\t\t\tthis.uploading = false;\n\t\t\tthis.timeout = clearTimeout(this.timeout);\n\n\t\t\trequestAnimationFrame(() => {\n\t\t\t\tthis.hideLoader();\n\t\t\t\tthis.recalculateWrapper();\n\t\t\t});\n\t\t}\n\t}\n\n\tisMultipleInput()\n\t{\n\t\treturn this.getInputInstance().uploadParams.maxCount !== 1;\n\t}\n\n\tbuildShadowElement(wrapper)\n\t{\n\t\tif (wrapper.offsetParent === null)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tlet shadowElement = wrapper.querySelector('div.ui-image-item-shadow');\n\t\tif (!shadowElement)\n\t\t{\n\t\t\tshadowElement = Tag.render`<div class=\"ui-image-item-shadow\"></div>`;\n\t\t\tDom.prepend(shadowElement, wrapper);\n\t\t}\n\n\t\tconst canvas = wrapper.querySelector('canvas');\n\t\tif (canvas)\n\t\t{\n\t\t\tconst bottomMargin = 4;\n\n\t\t\tshadowElement.style.height = canvas.offsetHeight + 'px';\n\t\t\tshadowElement.style.width = canvas.offsetWidth - bottomMargin + 'px';\n\n\t\t\twrapper.querySelector('.adm-fileinput-item-preview').style.height = canvas.offsetHeight + 'px';\n\t\t\twrapper.closest('.adm-fileinput-item-wrapper').style.height = canvas.offsetHeight + 'px';\n\t\t}\n\t}\n\n\tgetPreviews()\n\t{\n\t\treturn this.getFileWrapper().querySelectorAll('.adm-fileinput-item');\n\t}\n\n\trecalculateWrapper()\n\t{\n\t\tconst wrapper = this.getFileWrapper();\n\t\tconst previews = this.getPreviews();\n\t\tconst length = Math.min(previews.length, 3);\n\n\t\tif (length)\n\t\t{\n\t\t\tthis.buildShadowElement(previews[0]);\n\n\t\t\tDom.addClass(wrapper, 'ui-image-input-wrapper');\n\t\t\tthis.getFileInput().style.display = 'none';\n\n\t\t\tEvent.unbind(wrapper, 'click', this.editImageHandler);\n\t\t\tEvent.bind(wrapper, 'click', this.editImageHandler);\n\n\t\t\tif (this.isMultipleInput())\n\t\t\t{\n\t\t\t\tthis.getAddButton().style.display = '';\n\n\t\t\t\tEvent.unbindAll(this.getAddButton());\n\t\t\t\tEvent.bind(this.getAddButton(), 'click', this.addImageHandler);\n\t\t\t}\n\t\t}\n\t\telse\n\t\t{\n\t\t\tDom.removeClass(wrapper, 'ui-image-input-wrapper');\n\t\t\tthis.getFileInput().style.display = '';\n\n\t\t\tEvent.unbind(wrapper, 'click', this.editImageHandler);\n\n\t\t\tif (this.isMultipleInput())\n\t\t\t{\n\t\t\t\tthis.getAddButton().style.display = 'none';\n\n\t\t\t\tEvent.unbindAll(this.getAddButton());\n\t\t\t}\n\t\t}\n\n\t\tswitch (length)\n\t\t{\n\t\t\tcase 3:\n\t\t\t\tDom.addClass(wrapper, 'ui-image-input-wrapper-multiple');\n\t\t\t\tDom.removeClass(wrapper, 'ui-image-input-wrapper-double');\n\t\t\t\tbreak;\n\n\t\t\tcase 2:\n\t\t\t\tDom.addClass(wrapper, 'ui-image-input-wrapper-double');\n\t\t\t\tDom.removeClass(wrapper, 'ui-image-input-wrapper-multiple');\n\t\t\t\tbreak;\n\n\t\t\tdefault:\n\t\t\t\tDom.removeClass(wrapper, 'ui-image-input-wrapper-double');\n\t\t\t\tDom.removeClass(wrapper, 'ui-image-input-wrapper-multiple');\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nReflection.namespace('BX.UI').ImageInput = ImageInput;"],"names":["instances","Map","ImageInput","id","get","params","handleOnUploaderIsInited","bind","recalculateWrapper","instanceId","containerId","loaderContainerId","settings","disabled","Event","getContainer","event","stopPropagation","preventDefault","addImageHandler","addImage","editImageHandler","editImage","EventEmitter","subscribe","onUploaderIsInitedHandler","set","getCompatData","uploader","getPreviews","length","Dom","addClass","getFileWrapper","requestAnimationFrame","getLoaderContainer","style","display","onFileIsDeletedHandler","onUploadStartHandler","onUploadDoneHandler","onFileCanvasIsLoadedHandler","unsubscribe","recalculateWrapperHandler","BX","UI","FileInput","getInstance","getInputInstance","agent","fileInput","container","document","getElementById","Type","isDomNode","Error","fileWrapper","querySelector","loaderContainer","addButton","target","getFileInput","detail","inputInstance","items","getItems","hasOwnProperty","frameFlags","active","frameFiles","click","loader","Loader","getLoader","setOptions","size","Math","min","offsetHeight","offsetWidth","show","hide","timeout","clearTimeout","setTimeout","hideLoader","stream","uploading","showLoader","uploadParams","maxCount","wrapper","offsetParent","shadowElement","Tag","render","prepend","canvas","bottomMargin","height","width","closest","querySelectorAll","previews","buildShadowElement","unbind","isMultipleInput","getAddButton","unbindAll","removeClass","Reflection","namespace"],"mappings":"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"}