403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/sender/toloka/dist/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/sender/toloka/dist/toloka.bundle.js.map
{"version":3,"file":"toloka.bundle.js","sources":["../src/autocomplete/components/element.js","../src/autocomplete/autocomplete.js","../src/toloka.js"],"sourcesContent":["const allowedAttributes = {\n\tvalue: \"data-value\",\n\tname: \"data-name\",\n\tdisabled: \"data-disabled\",\n\tclass: \"class\",\n\ttype: \"type\"\n};\n\nclass Element\n{\n\tconstructor(element, attributes = {}, i18n = {})\n\t{\n\t\tthis._node = element instanceof HTMLElement ? element : document.createElement(element);\n\t\tthis._config = { i18n };\n\n\t\tthis._setAttributes(attributes);\n\n\t\tif (attributes.textContent)\n\t\t{\n\t\t\tthis._setTextContent(attributes.textContent);\n\t\t}\n\n\t\treturn this;\n\t}\n\n\tget()\n\t{\n\t\treturn this._node;\n\t}\n\n\tappend(element)\n\t{\n\t\tthis._node.appendChild(element);\n\t\treturn this;\n\t}\n\n\taddClass(className)\n\t{\n\t\tthis._node.classList.add(className);\n\t\treturn this;\n\t}\n\n\tremoveClass(className)\n\t{\n\t\tthis._node.classList.remove(className);\n\t\treturn this;\n\t}\n\n\ttoggleClass(className)\n\t{\n\t\tthis._node.classList.toggle(className);\n\t\treturn this;\n\t}\n\n\taddEventListener(type, callback)\n\t{\n\t\tthis._node.addEventListener(type, callback);\n\t\treturn this;\n\t}\n\n\tremoveEventListener(type, callback)\n\t{\n\t\tthis._node.removeEventListener(type, callback);\n\t\treturn this;\n\t}\n\n\tsetText(text)\n\t{\n\t\tthis._setTextContent(text);\n\t\treturn this;\n\t}\n\n\tgetHeight()\n\t{\n\t\treturn window.getComputedStyle(this._node).height;\n\t}\n\n\n\tgetWidth()\n\t{\n\t\treturn window.getComputedStyle(this._node).width;\n\t}\n\n\tsetTop(top)\n\t{\n\t\tthis._node.style.top = `${top}px`;\n\t\treturn this;\n\t}\n\n\tfocus()\n\t{\n\t\tthis._node.focus();\n\t\treturn this;\n\t}\n\n\t_setTextContent(textContent)\n\t{\n\t\tthis._node.textContent = textContent;\n\t}\n\n\t_setAttributes(attributes)\n\t{\n\t\tfor (const key in attributes)\n\t\t{\n\t\t\tif (allowedAttributes[key] && attributes[key])\n\t\t\t{\n\t\t\t\tthis._setAttribute(allowedAttributes[key], attributes[key]);\n\t\t\t}\n\t\t}\n\t}\n\n\t_setAttribute(key, value)\n\t{\n\t\tthis._node.setAttribute(key, value);\n\t}\n\n\t_getAttribute(key)\n\t{\n\t\tthis._node.getAttribute(key);\n\t}\n}\n\nexport default Element;\n","import Element from \"./components/element\";\nimport \"./css/autocomplete.css\";\nimport { Popup } from 'main.popup';\n\nconst CLASSES = {\n\tselect: \"main-ui-control\",\n\tdropdownShown: \"autocomplete-select--opened\",\n\tmultiselect: \"main-ui-multi-select\",\n\tlabel: \"main-ui-square-container\",\n\tplaceholder: \"autocomplete-placeholder\",\n\tdropdown: \"popup-select-content\",\n\toption: \"main-ui-select-inner-item\",\n\tremove: \"main-ui-item-icon main-ui-square-delete\",\n\toptionDisabled: \"autocomplete-option--disabled\",\n\tautocompleteInput: \"main-ui-control main-ui-control-string\",\n\tselectedLabel: \"main-ui-square\",\n\tselectedOption: \"autocomplete-option--selected\",\n\tplaceholderHidden: \"autocomplete-placeholder--hidden\",\n\toptionHidden: \"autocomplete-option--hidden\"\n};\n\nclass Autocomplete\n{\n\tconstructor(element, config)\n\t{\n\t\tthis._config = {\n\t\t\t...config,\n\t\t\tclassNames: {\n\t\t\t\t...CLASSES,\n\t\t\t\t...config.classNames\n\t\t\t},\n\t\t\tdisabledOptions: []\n\t\t};\n\t\tthis._state = {\n\t\t\topened: false\n\t\t};\n\t\tthis._icons = [];\n\t\tthis._holderElement = element;\n\n\t\tthis._boundHandleClick = this._handleClick.bind(this);\n\t\tthis._boundUnselectOption = this._unselectOption.bind(this);\n\t\tthis._boundSortOptions = this._sortOptions.bind(this);\n\n\t\tthis._body = new Element(document.body);\n\n\t\tthis._create(element);\n\n\t\tif (!this._config.value)\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tthis._setValue();\n\t}\n\n\tsetOptions(data)\n\t{\n\t\tthis._config.options = data;\n\t\tthis._options = this._generateOptions();\n\t}\n\n\tvalue()\n\t{\n\t\treturn this._config.value;\n\t}\n\n\tremoveAutocompleteNode()\n\t{\n\t\tBX.remove(this._autocomplete.get());\n\n\t\tthis._options.map(_option => {\n\t\t\tBX.remove(_option.get());\n\t\t})\n\t}\n\n\treset()\n\t{\n\t\tthis._config.value = this._config.multiple ? [] : null;\n\t\tthis._setValue();\n\t}\n\n\t_create(_element)\n\t{\n\t\tconst element = typeof _element === \"string\" ? document.querySelector(_element) : _element;\n\n\t\tthis._parent = new Element(element);\n\n\t\tconst selector = element.querySelectorAll(\n\t\t\t`div[data-name=${element.dataset.name}]`\n\t\t)[0];\n\t\tlet selectClone = selector.cloneNode(true);\n\t\telement.removeChild(selector);\n\n\t\tthis._select = new Element(selectClone);\n\t\tthis._label = new Element(\"span\", { class: this._config.classNames.label });\n\t\tthis._optionsWrapper = new Element(\"div\", { class: this._config.classNames.dropdown });\n\n\t\tif (this._config.multiple)\n\t\t{\n\t\t\tthis._select.addClass(this._config.classNames.multiselect);\n\t\t}\n\n\t\tthis._options = this._generateOptions();\n\n\t\tthis._select.addEventListener(\"click\", this._boundHandleClick);\n\t\tthis._select.append(this._label.get());\n\n\t\tlet deleteButton = this._parent.get().parentNode.querySelectorAll('div.main-ui-control-value-delete');\n\t\tif(deleteButton.length > 0)\n\t\t{\n\t\t\tBX.bind(deleteButton[0], \"click\", this.reset.bind(this));\n\t\t\tthis._select.append(deleteButton[0]);\n\t\t}\n\n\t\tthis._parent.append(this._select.get());\n\t\tthis._placeholder = new Element(\"div\",\n\t\t\t{\n\t\t\t\tclass: this._config.classNames.placeholder,\n\t\t\t\ttextContent: this._config.placeholder\n\t\t\t}\n\t\t);\n\t\tthis._select.append(this._placeholder.get());\n\n\t\tthis._popup = new Popup({\n\t\t\tid: \"autocomplete\" + Math.random(),\n\t\t\tbindElement: _element,\n\t\t\tzIndex: 3000,\n\t\t\twidth: 515,\n\t\t\tmaxHeight: 300\n\t\t});\n\n\t\tthis._popup.setContent(this._optionsWrapper.get());\n\t}\n\n\t_generateOptions()\n\t{\n\t\tif (this._config.autocomplete && !this._autocomplete)\n\t\t{\n\t\t\tthis._autocomplete = new Element(\"input\", {\n\t\t\t\tclass: this._config.classNames.autocompleteInput,\n\t\t\t\tname: `autocomplete-${this._parent.get().dataset.name}`,\n\t\t\t\ttype: \"text\"\n\t\t\t});\n\t\t\tthis._autocomplete.addEventListener(\"input\", this._boundSortOptions);\n\n\t\t\tthis._optionsWrapper.append(this._autocomplete.get());\n\t\t}\n\n\t\treturn this._config.options.map(_option => {\n\t\t\tconst preOption =\n\t\t\t\tdocument\n\t\t\t\t\t.querySelectorAll(\n\t\t\t\t\t\t`div.${this._config.classNames.option}[data-value=\"${_option.id}\"]`\n\t\t\t\t\t);\n\t\t\tif (preOption.length > 0)\n\t\t\t{\n\t\t\t\treturn new Element(preOption[0]);\n\t\t\t}\n\n\t\t\tconst option = new Element(\"div\", {\n\t\t\t\tclass: `${this._config.classNames.option}${_option.disabled ?\n\t\t\t\t\t\" \" + this._config.classNames.optionDisabled : \"\"}`,\n\t\t\t\tvalue: _option.id,\n\t\t\t\ttextContent: _option.name,\n\t\t\t\tdisabled: _option.disabled\n\t\t\t});\n\t\t\tif (_option.disabled)\n\t\t\t{\n\t\t\t\tthis._config.disabledOptions.push(String(_option.id));\n\t\t\t}\n\t\t\tthis._optionsWrapper.append(option.get());\n\n\t\t\treturn option;\n\t\t});\n\t}\n\n\t_handleClick(event)\n\t{\n\t\tevent.stopPropagation();\n\n\t\tif (event.target.className === this._config.classNames.autocompleteInput)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._state.opened)\n\t\t{\n\t\t\tconst option = this._options.find(_option => {\n\t\t\t\tif(_option)\n\t\t\t\t{\n\t\t\t\t\treturn _option.get() === event.target;\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tif (option !== undefined)\n\t\t\t{\n\t\t\t\tthis._setValue(option.get().getAttribute(\"data-value\"), true);\n\t\t\t}\n\n\t\t\tthis._popup.close();\n\t\t\tthis._select.removeClass(this._config.classNames.dropdownShown);\n\t\t\tthis._body.removeEventListener(\"click\", this._boundHandleClick);\n\t\t\tthis._select.addEventListener(\"click\", this._boundHandleClick);\n\n\t\t\tthis._state.opened = false;\n\t\t\treturn;\n\t\t}\n\n\t\tif (event.target.className === this._config.icon)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis._popup.show();\n\t\tthis._select.addClass(this._config.classNames.dropdownShown);\n\t\tthis._body.addEventListener(\"click\", this._boundHandleClick);\n\t\tthis._select.removeEventListener(\"click\", this._boundHandleClick);\n\n\t\tthis._state.opened = true;\n\n\t\tif (this._autocomplete)\n\t\t{\n\t\t\tthis._autocomplete.focus();\n\t\t}\n\t}\n\n\t_prepareDataValue()\n\t{\n\t\tlet dataValue = [];\n\n\t\tthis._config.options.forEach(_option => {\n\t\t\tthis._config.value.forEach(_value => {\n\t\t\t\tif(_option.id.toString() === _value)\n\t\t\t\t{\n\t\t\t\t\tdataValue.push(\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tNAME: _option.name,\n\t\t\t\t\t\t\tVALUE: _option.id.toString()\n\t\t\t\t\t\t}\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t});\n\t\t})\n\n\t\tthis._parent.get().dataset.value = JSON.stringify(dataValue);\n\t\tthis._select.get().dataset.value = JSON.stringify(dataValue);\n\n\t\treturn dataValue;\n\t}\n\n\t_setValue(value, manual, unselected)\n\t{\n\t\tif (this._config.disabledOptions.indexOf(value) > -1)\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tif (value && !unselected)\n\t\t{\n\t\t\tthis._config.value = this._config.multiple ? [...this._config.value || [], value] : value;\n\t\t}\n\t\tif (value && unselected)\n\t\t{\n\t\t\tthis._config.value = value;\n\t\t}\n\t\tthis._options.forEach(_option => {\n\t\t\t_option.removeClass(this._config.classNames.selectedOption);\n\t\t});\n\t\tthis._placeholder.removeClass(this._config.classNames.placeholderHidden);\n\n\t\tif (this._config.multiple)\n\t\t{\n\t\t\tconst options = this._config.value.map(_value => {\n\t\t\t\tconst option = this._config.options.find(_option => {\n\t\t\t\t\tif(_option)\n\t\t\t\t\t{\n\t\t\t\t\t\treturn _option.id.toString() === _value;\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tif (!option)\n\t\t\t\t{\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tconst optionNode = this._options.find(\n\t\t\t\t\t_option => {\n\t\t\t\t\t\tif(_option)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\treturn _option.get().getAttribute(\"data-value\") === option.id.toString();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\toptionNode.addClass(this._config.classNames.selectedOption);\n\n\t\t\t\treturn option;\n\t\t\t});\n\n\t\t\tif (options.length)\n\t\t\t{\n\t\t\t\tthis._placeholder.addClass(this._config.classNames.placeholderHidden);\n\t\t\t}\n\t\t\tthis._selectOptions(options, manual);\n\t\t\tthis._prepareDataValue();\n\t\t\treturn;\n\t\t}\n\n\t\tconst option = this._config.value ?\n\t\t\tthis._config.options.find(_option => {\n\t\t\t\t\tif (_option)\n\t\t\t\t\t{\n\t\t\t\t\t\t_option.id.toString() === this._config.value\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t) :\n\t\t\tthis._config.options[0];\n\n\t\tconst optionNode = this._options.find(\n\t\t\t_option => {\n\t\t\t\tif(_option)\n\t\t\t\t{\n\t\t\t\t\t_option.get().getAttribute(\"data-value\") === option.id.toString()\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\tthis._prepareDataValue();\n\t\tif (!this._config.value)\n\t\t{\n\t\t\tthis._label.setText(\"\");\n\t\t\treturn;\n\t\t}\n\t\toptionNode.addClass(this._config.classNames.selectedOption);\n\t\tthis._placeholder.addClass(this._config.classNames.placeholderHidden);\n\t\tthis._selectOption(option, manual);\n\t}\n\n\t_selectOption(option, manual)\n\t{\n\t\tthis._selectedOption = option;\n\n\t\tthis._label.setText(option.name);\n\n\t\tif (this._config.onChange && manual)\n\t\t{\n\t\t\tthis._config.onChange(option.id,this._prepareDataValue());\n\t\t}\n\t}\n\n\t_selectOptions(options, manual)\n\t{\n\t\tthis._label.setText(\"\");\n\n\t\tthis._icons = options.map(_option => {\n\t\t\tif(_option)\n\t\t\t{\n\t\t\t\tconst selectedLabel = new Element(\"span\", {\n\t\t\t\t\tclass: this._config.classNames.selectedLabel,\n\t\t\t\t\ttextContent: _option.name\n\t\t\t\t});\n\n\t\t\t\tconst remove = new Element(\"span\", {\n\t\t\t\t\tclass: `${this._config.classNames.remove}`,\n\t\t\t\t\tvalue: _option.id\n\t\t\t\t});\n\n\t\t\t\tremove.addEventListener(\"click\", this._boundUnselectOption);\n\n\t\t\t\tselectedLabel.append(remove.get());\n\t\t\t\tthis._label.append(selectedLabel.get());\n\n\t\t\t\treturn remove.get();\n\t\t\t}\n\t\t});\n\n\t\tif (manual)\n\t\t{\n\t\t\tthis._optionsWrapper.setTop(Number(this._select.getHeight().split(\"px\")[0]) + 5);\n\t\t}\n\n\t\tif (this._config.onChange && manual)\n\t\t{\n\t\t\tthis._config.onChange(this._config.value, this._prepareDataValue());\n\t\t}\n\t}\n\n\t_unselectOption(event)\n\t{\n\t\tconst newValue = [...this._config.value];\n\t\tconst index = newValue.indexOf(event.target.getAttribute(\"data-value\"));\n\n\t\tif (index !== -1)\n\t\t{\n\t\t\tnewValue.splice(index, 1);\n\t\t}\n\n\t\tthis._setValue(newValue, true, true);\n\t}\n\n\t_sortOptions(event)\n\t{\n\t\tthis._options.forEach(_option => {\n\t\t\tif (!_option.get().textContent.toLowerCase().startsWith(event.target.value.toLowerCase()))\n\t\t\t{\n\t\t\t\t_option.addClass(this._config.classNames.optionHidden);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t_option.removeClass(this._config.classNames.optionHidden);\n\t\t});\n\t}\n}\n\nexport default Autocomplete;\n","import Autocomplete from './autocomplete/autocomplete';\nimport { Popup } from 'main.popup';\n\nexport class Toloka\n{\n\t#page = BX.Sender.Page;\n\t#helper = BX.Sender.Helper;\n\t#context;\n\t#actionUri;\n\t#isFrame;\n\t#prettyDateFormat;\n\t#isSaved;\n\t#isRegistered;\n\t#isOutside;\n\t#mess;\n\t#letterTile;\n\t#selectorNode;\n\t#editorNode;\n\t#titleNode;\n\t#loginNode;\n\t#formNode;\n\t#oauthCodeNode;\n\t#filterNode;\n\t#filterData;\n\t#filterId;\n\t#filter;\n\t#isAvailable;\n\t#ajaxAction;\n\t#messageFields = null;\n\t#templateChangeButton;\n\t#buttonsNode;\n\t#templateNameNode;\n\t#templateTypeNode;\n\t#templateIdNode;\n\t#templateData;\n\t#REGION_BY_IP = 'REGION_BY_IP';\n\t#REGION_BY_PHONE = 'REGION_BY_PHONE';\n\t#isSlider: boolean;\n\t#toolbarId: string;\n\t#uiToolbar: BX.UI.Toolbar | null;\n\n\tconstructor()\n\t{\n\t}\n\n\tstatic create(settings)\n\t{\n\t\tconst self = new Toloka();\n\t\tself.initialize(settings);\n\n\t\treturn self;\n\t}\n\n\tbindEvents()\n\t{\n\t\tthis._expireInNode.addEventListener('change', this.validateRequiredFields.bind(this));\n\t\tif (BX.Sender.Template && BX.Sender.Template.Selector)\n\t\t{\n\t\t\tconst selector = BX.Sender.Template.Selector;\n\t\t\tBX.addCustomEvent(selector, selector.events.templateSelect, this.onTemplateSelect.bind(this));\n\t\t\tBX.addCustomEvent(selector, selector.events.selectorClose, this.closeTemplateSelector.bind(this));\n\t\t}\n\n\t\tif (this._saveBtn)\n\t\t{\n\t\t\tBX.bind(\n\t\t\t\tthis._saveBtn,\n\t\t\t\t'click',\n\t\t\t\tthis.applyChanges.bind(this),\n\t\t\t);\n\t\t}\n\n\t\tif (this.#templateChangeButton)\n\t\t{\n\t\t\tBX.bind(this.#templateChangeButton, 'click', this.showTemplateSelector.bind(this));\n\t\t}\n\n\t\tif (this.#isSaved)\n\t\t{\n\t\t\ttop.BX.onCustomEvent(top, 'sender-letter-edit-change', [this.letterTile]);\n\t\t\tthis.#page.slider.close();\n\n\t\t\tif (this.#isOutside)\n\t\t\t{\n\t\t\t\tBX.UI.Notification.Center.notify({\n\t\t\t\t\tcontent: this.#mess.outsideSaveSuccess,\n\t\t\t\t\tautoHideDelay: 5000,\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\tif (this.#uiToolbar && this.#isSlider)\n\t\t{\n\t\t\tthis.#uiToolbar.subscribe(BX.UI.ToolbarEvents.finishEditing, (event) => {\n\t\t\t\tconst updatedTitle = event.getData().updatedTitle;\n\n\t\t\t\tif (updatedTitle && this.#titleNode)\n\t\t\t\t{\n\t\t\t\t\tthis.#titleNode.value = updatedTitle;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tthis.initWidget();\n\n\t\tconst filter = this.getFilter();\n\t\tfilter.getAddPresetButton().style.display = 'none';\n\n\t\tfilter.getPreset().getPresets().forEach(preset => {\n\t\t\tpreset.style.display = 'none';\n\t\t})\n\n\t\tBX.bind(filter.getResetButton(), 'click', this.reInitAddressWidget.bind(this));\n\n\t\tconst clearFilterBtn = document.querySelector('.main-ui-delete');\n\t\tBX.bind(clearFilterBtn, 'click', this.reInitAddressWidget.bind(this));\n\t}\n\n\tinitialize(params)\n\t{\n\t\tthis.#context = BX(params.containerId);\n\t\tthis.#filterData = [];\n\t\tthis.#filterData[this.#REGION_BY_IP] = {\n\t\t\tregion: [],\n\t\t};\n\t\tthis.#filterData[this.#REGION_BY_PHONE] = {\n\t\t\tregion: [],\n\t\t};\n\n\t\tthis.#filterId = 'toloka-filter-connector';\n\t\tthis.#filterNode = document.getElementById(`${this.#filterId}_search_container`);\n\t\tthis.#filter = this.getFilter();\n\t\tthis.#templateChangeButton = BX('SENDER_TOLOKA_BUTTON_CHANGE');\n\t\tthis.#helper.changeDisplay(this.#templateChangeButton, false);\n\n\t\tthis.#actionUri = params.actionUri;\n\t\tthis.#ajaxAction = new BX.AjaxAction(this.#actionUri);\n\t\tthis.#isFrame = params.isFrame || false;\n\t\tthis.#prettyDateFormat = params.prettyDateFormat;\n\t\tthis.#isSaved = params.isSaved || false;\n\t\tthis.#isRegistered = params.isRegistered || false;\n\t\tthis.#isOutside = params.isOutside || false;\n\t\tthis.#isAvailable = params.isAvailable || true;\n\t\tthis.#mess = params.mess;\n\t\tthis.#letterTile = params.letterTile || {};\n\t\tthis.#templateData = [];\n\t\tthis.#messageFields = this.objectKeysToLowerCase(JSON.parse(params.preset));\n\t\tthis.optionData = [];\n\t\tthis.#isSlider = params.isSlider;\n\t\tthis.#toolbarId = params.toolbarId;\n\t\tthis.#uiToolbar = BX.UI.ToolbarManager.get(this.toolbarId);\n\n\t\tthis.prepareNodes();\n\t\tthis.buildDispatchNodes();\n\n\t\tthis._filterNode = [];\n\t\tthis._regionInput = [];\n\t\tthis._autocomplete = [];\n\t\tthis.bindEvents();\n\n\t\tthis.#page.initButtons();\n\n\t\tif (this.isMSBrowser())\n\t\t{\n\t\t\tthis.#context.classList.add('bx-sender-letter-ms-ie');\n\t\t}\n\n\t\tif (!this.#isRegistered)\n\t\t{\n\t\t\tthis.#loginNode.style = '';\n\t\t\tthis.#formNode.style = 'display:none;';\n\t\t}\n\t}\n\n\tprepareNodes()\n\t{\n\t\tthis.#selectorNode = this.#helper.getNode('template-selector', this.#context);\n\t\tthis.#editorNode = this.#helper.getNode('editor', this.#context);\n\t\tthis.#titleNode = this.#helper.getNode('title', this.#context);\n\t\tthis.#loginNode = this.#helper.getNode('login', this.#context);\n\t\tthis.#formNode = this.#helper.getNode('sender-toloka-form', this.#context);\n\t\tthis.#oauthCodeNode = this.#helper.getNode('toloka-oauth-code', this.#context);\n\n\t\tthis.#buttonsNode = this.#helper.getNode('letter-buttons', this.#context);\n\t\tthis.#templateNameNode = this.#helper.getNode('template-name', this.#editorNode);\n\t\tthis.#templateTypeNode = this.#helper.getNode('template-type', this.#editorNode);\n\t\tthis.#templateIdNode = this.#helper.getNode('template-id', this.#editorNode);\n\n\t\tthis._projectNode = document.getElementById('CONFIGURATION_PROJECT_ID');\n\t\tthis._poolNode = document.getElementById('CONFIGURATION_POOL_ID');\n\t\tthis._taskSuiteNode = document.getElementById('CONFIGURATION_TASK_SUITE_ID');\n\t\tthis._descriptionNode = document.getElementById('CONFIGURATION_DESCRIPTION');\n\t\tthis._instructionNode = document.getElementById('CONFIGURATION_INSTRUCTION');\n\t\tthis._tasksNode = document.getElementById('CONFIGURATION_TASKS');\n\t\tthis._overlapNode = document.getElementById('CONFIGURATION_OVERLAP');\n\t\tthis._adultContentNode = document.getElementById('CONFIGURATION_ADULT_CONTENT');\n\t\tthis._priceNode = document.getElementById('CONFIGURATION_PRICE');\n\t\tthis._expireInNode = document.getElementById('CONFIGURATION_EXPIRE_IN');\n\t\tthis._saveBtn = document.getElementById('ui-button-panel-save');\n\n\t\tthis._projectNode.parentNode.parentNode.style = 'display:none';\n\t\tthis._poolNode.parentNode.parentNode.style = 'display:none';\n\t\tthis._taskSuiteNode.parentNode.parentNode.style = 'display:none';\n\t}\n\n\treInitAddressWidget()\n\t{\n\t\tif(this._filterNode[this.#REGION_BY_IP] && this._autocomplete[this.#REGION_BY_IP])\n\t\t{\n\t\t\tthis._autocomplete[this.#REGION_BY_IP].removeAutocompleteNode();\n\t\t\tthis._autocomplete[this.#REGION_BY_IP] = null;\n\t\t}\n\n\t\tif(this._filterNode[this.#REGION_BY_PHONE] && this._autocomplete[this.#REGION_BY_PHONE])\n\t\t{\n\t\t\tthis._autocomplete[this.#REGION_BY_PHONE].removeAutocompleteNode();\n\t\t\tthis._autocomplete[this.#REGION_BY_PHONE] = null;\n\t\t}\n\n\t\tthis.initWidget();\n\t}\n\n\tinitWidget()\n\t{\n\t\tif (this.#filterNode)\n\t\t{\n\t\t\tBX.bind(\n\t\t\t\tthis.#filterNode,\n\t\t\t\t'click',\n\t\t\t\tthis.initAddressWidget.bind(this, this.#REGION_BY_IP)\n\t\t\t);\n\t\t\tBX.bind(\n\t\t\t\tthis.#filterNode,\n\t\t\t\t'click',\n\t\t\t\tthis.initAddressWidget.bind(this, this.#REGION_BY_PHONE)\n\t\t\t);\n\t\t\tBX.bind(\n\t\t\t\tthis.getFilter().getPopup().popupContainer,\n\t\t\t\t'click',\n\t\t\t\tthis.initAddressWidget.bind(this, this.#REGION_BY_IP)\n\t\t\t);\n\t\t\tBX.bind(\n\t\t\t\tthis.getFilter().getPopup().popupContainer,\n\t\t\t\t'click',\n\t\t\t\tthis.initAddressWidget.bind(this, this.#REGION_BY_PHONE)\n\t\t\t);\n\t\t}\n\t}\n\n\tinitAddressWidget(name, event)\n\t{\n\t\tif(event.target && this.getFilter().getSearch().isSquareRemoveButton(event.target))\n\t\t{\n\t\t\tthis.reInitAddressWidget();\n\t\t}\n\n\n\t\tthis._filterNode[name] = document.querySelectorAll(`.main-ui-filter-field-container-list > div[data-name=${name}]`)[0];\n\n\t\tif(!this._filterNode[name])\n\t\t{\n\t\t\tif(this._autocomplete[name])\n\t\t\t{\n\t\t\t\tthis._autocomplete[name].removeAutocompleteNode();\n\t\t\t\tthis._autocomplete[this.#REGION_BY_IP] = null;\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._autocomplete[name])\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst self = this;\n\t\tthis.optionData[name] = this.optionData[name] || [];\n\n\t\tthis._autocomplete[name] = new Autocomplete(this._filterNode[name], {\n\t\t\toptions: this.optionData[name],\n\t\t\tmultiple: true,\n\t\t\tautocomplete: true,\n\t\t\tonChange: (value, preparedValue) => {\n\t\t\t\tself.#filterData[name] = value;\n\t\t\t\tthis.#filter.getFieldByName(name).ITEMS = preparedValue;\n\t\t\t\tthis.#filter.getFieldByName(name).VALUE = preparedValue;\n\t\t\t}\n\t\t});\n\t\tthis._regionInput[name] = document.querySelectorAll(`input[data-name=autocomplete-${name}]`)[0];\n\n\t\tBX.bind(\n\t\t\tthis._regionInput[name],\n\t\t\t'keyup',\n\t\t\tthis.getLocationList.bind(this, name)\n\t\t);\n\t}\n\n\tregister()\n\t{\n\t\tconst self = this;\n\t\tthis.#ajaxAction.request({\n\t\t\taction: 'registerOAuth',\n\t\t\tonsuccess: (response) => {\n\t\t\t\tself.#loginNode.style = 'display:none;';\n\t\t\t\tself.#formNode.style = '';\n\t\t\t},\n\t\t\tdata: { 'access_code': this.#oauthCodeNode.value }\n\t\t});\n\t}\n\n\tisMSBrowser()\n\t{\n\t\treturn window.navigator.userAgent.match(/(Trident\\/|MSIE|Edge\\/)/) !== null;\n\t}\n\n\tgetPatternTitle(name)\n\t{\n\t\treturn this.#helper.replace(\n\t\t\tthis.#mess.patternTitle,\n\t\t\t{\n\t\t\t\t'name': name,\n\t\t\t\t'date': BX.date.format(this.#prettyDateFormat)\n\t\t\t}\n\t\t);\n\t}\n\n\tonTemplateSelect(template)\n\t{\n\t\tif (this.#templateNameNode)\n\t\t{\n\t\t\tthis.#templateNameNode.textContent = template.name;\n\t\t}\n\t\tif (this.#templateTypeNode)\n\t\t{\n\t\t\tthis.#templateTypeNode.value = template.type;\n\t\t}\n\t\tif (this.#templateIdNode)\n\t\t{\n\t\t\tthis.#templateIdNode.value = template.code;\n\t\t}\n\n\t\tthis.#messageFields = template.messageFields;\n\n\t\tthis.buildDispatchNodes();\n\t\tthis.#titleNode.value = this.getPatternTitle(template.name);\n\n\t\tBX.fireEvent(this.#titleNode, 'change');\n\n\t\tthis.closeTemplateSelector();\n\t\twindow.scrollTo(0, 0);\n\t}\n\n\tbuildDispatchNodes()\n\t{\n\t\tconst self = this;\n\t\tthis.#helper.getNodes('dispatch', this.#context).forEach(node => {\n\t\t\tconst code = node.getAttribute('data-code');\n\t\t\tfor(const field in self.#messageFields)\n\t\t\t{\n\t\t\t\tif(!self.#messageFields.hasOwnProperty(field))\n\t\t\t\t{\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tconst data = self.#messageFields[field];\n\t\t\t\tif (data.code === code && node.innerHTML.length === 0)\n\t\t\t\t{\n\t\t\t\t\tnode.innerHTML = data.value;\n\t\t\t\t}\n\n\t\t\t\tself.#templateData[data.code] = data.value;\n\t\t\t}\n\t\t});\n\t}\n\n\tcloseTemplateSelector()\n\t{\n\t\tthis.changeDisplayingTemplateSelector(false);\n\t}\n\n\tshowTemplateSelector()\n\t{\n\t\tthis.changeDisplayingTemplateSelector(true);\n\t}\n\n\tchangeDisplayingTemplateSelector(isShow)\n\t{\n\t\tconst classShow = 'bx-sender-letter-show';\n\t\tconst classHide = 'bx-sender-letter-hide';\n\t\tthis.#helper.changeClass(this.#selectorNode, classShow, isShow);\n\t\tthis.#helper.changeClass(this.#selectorNode, classHide, !isShow);\n\n\t\tthis.#helper.changeClass(this.#editorNode, classShow, !isShow);\n\t\tthis.#helper.changeClass(this.#editorNode, classHide, isShow);\n\n\t\tthis.#helper.changeDisplay(this.#templateChangeButton, !isShow);\n\t\tthis.#helper.changeDisplay(this.#buttonsNode, !isShow);\n\t}\n\n\tobjectKeysToLowerCase(origObj)\n\t{\n\t\tconst self = this;\n\t\tif(origObj === null)\n\t\t{\n\t\t\treturn origObj;\n\t\t}\n\n\t\treturn Object.keys(origObj).reduce(function(newObj, key) {\n\t\t\tconst val = origObj[key];\n\t\t\tnewObj[key.toLowerCase()] = (typeof val === 'object') ? self.objectKeysToLowerCase(val) : val;\n\t\t\treturn newObj;\n\t\t}, {})\n\t}\n\n\tgetLocationList(name)\n\t{\n\t\tif (this._regionInput[name].value.length < 3)\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tthis.usedWords = this.usedWords || [];\n\t\tconst value = this._regionInput[name].value;\n\n\t\tif(this.usedWords.includes(value))\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tthis.usedWords.push(value);\n\n\t\tconst self = this;\n\t\tthis.#ajaxAction.request({\n\t\t\taction: 'getGeoList',\n\t\t\tdata: {\n\t\t\t\tname: value\n\t\t\t},\n\t\t\tonsuccess: response => {\n\t\t\t\tif(!this.optionData[name])\n\t\t\t\t{\n\t\t\t\t\tthis.optionData[name] = [];\n\t\t\t\t}\n\t\t\t\tfor (const value in response)\n\t\t\t\t{\n\t\t\t\t\tconst responseData = response[value];\n\t\t\t\t\tif (typeof responseData === 'object' && 'id' in responseData)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.optionData[name].push(responseData);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (self._autocomplete[name])\n\t\t\t\t{\n\n\t\t\t\t\tthis.optionData[name] = this.optionData[name].reduce((acc, current) => {\n\t\t\t\t\t\tconst x = acc.find(item => item.id === current.id);\n\t\t\t\t\t\tif (!x) {\n\t\t\t\t\t\t\treturn acc.concat([current]);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn acc;\n\t\t\t\t\t\t}\n\t\t\t\t\t}, []);\n\t\t\t\t\tself._autocomplete[name].setOptions(this.optionData[name]);\n\t\t\t\t}\n\n\t\t\t}\n\t\t});\n\n\t}\n\n\tvalidateRequiredFields()\n\t{\n\t\tlet success = true;\n\n\t\t[\n\t\t\tthis._expireInNode,\n\t\t\tthis._priceNode,\n\t\t\tthis._tasksNode\n\t\t].every(element => {\n\t\t\tif(!this.validateField(element))\n\t\t\t{\n\t\t\t\tsuccess = false;\n\t\t\t\treturn false;\n\t\t\t}\n\t\t});\n\n\t\tif(!success)\n\t\t{\n\t\t\tthis.removeLoader();\n\t\t}\n\t\treturn success;\n\t}\n\n\tremoveLoader()\n\t{\n\t\tthis._saveBtn.classList.remove(\"ui-btn-wait\");\n\t}\n\n\tvalidateField(field)\n\t{\n\t\tif(!this._validatorPopup)\n\t\t{\n\t\t\tthis._validatorPopup = new Popup({\n\t\t\t\tid: \"sender-toloka-validator\",\n\t\t\t\tcontent: `${this.#mess.required}`,\n\t\t\t});\n\t\t}\n\n\t\tif(!field.value)\n\t\t{\n\t\t\tthis._validatorPopup.setBindElement(field);\n\t\t\tthis._validatorPopup.show();\n\t\t\tfield.classList.add(\"bx-sender-form-control-danger\");\n\t\t\tfield.scrollIntoView();\n\t\t\treturn false\n\t\t}\n\t\tthis._validatorPopup.close();\n\n\t\tfield.classList.remove(\"bx-sender-form-control-danger\");\n\t\treturn true;\n\t}\n\n\tcreateProject()\n\t{\n\t\tif(!this.validateRequiredFields())\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tconst input_key = Object.keys(this.#templateData['INPUT_VALUE'])[0];\n\t\tconst output_key = Object.keys(this.#templateData['OUTPUT_VALUE'])[0];\n\t\tthis.#ajaxAction.request({\n\t\t\taction: 'createProject',\n\t\t\tdata: {\n\t\t\t\tid: this._projectNode.value,\n\t\t\t\tname: this.#titleNode.value,\n\t\t\t\tdescription: this._descriptionNode.value,\n\t\t\t\tinstruction: this._instructionNode.value,\n\t\t\t\tinput_type: this.#templateData['INPUT_VALUE'][input_key],\n\t\t\t\tinput_identificator: input_key,\n\t\t\t\toutput_type: this.#templateData['OUTPUT_VALUE'][output_key],\n\t\t\t\toutput_identificator: output_key,\n\t\t\t\tmarkup: this.#templateData['PRESET'].template,\n\t\t\t\tscript: this.#templateData['PRESET'].js,\n\t\t\t\tstyles: this.#templateData['PRESET'].css\n\t\t\t},\n\t\t\tonsuccess: response => {\n\t\t\t\tthis._projectNode.value = response.id;\n\t\t\t\tthis.createPool(response.id);\n\t\t\t},\n\t\t\tonfailure: response => {\n\t\t\t\tthis.removeLoader();\n\t\t\t}\n\t\t});\n\t}\n\n\tcreatePool(projectId)\n\t{\n\t\tconst input_key = Object.keys(this.#templateData['INPUT_VALUE'])[0]\n\t\tthis.#ajaxAction.request({\n\t\t\taction: 'createPool',\n\t\t\tdata: {\n\t\t\t\tid: this._poolNode.value,\n\t\t\t\ttask_suite_id: this._taskSuiteNode.value,\n\t\t\t\tproject_id: projectId,\n\t\t\t\tprivate_name: this.#titleNode.value,\n\t\t\t\tpublic_description: this._descriptionNode.value,\n\t\t\t\tmay_contain_adult_content: this._adultContentNode.checked,\n\t\t\t\treward_per_assignment: this._priceNode.value,\n\t\t\t\twill_expire: this._expireInNode.value,\n\t\t\t\toverlap: this._overlapNode.value,\n\t\t\t\ttasks: this._tasksNode.value,\n\t\t\t\tidentificator: input_key,\n\t\t\t\tfilter: this.#filterData\n\t\t\t},\n\t\t\tonsuccess: response => {\n\t\t\t\tthis._poolNode.value = response.pool_id;\n\t\t\t\tthis._taskSuiteNode.value = response.id;\n\n\t\t\t\tconst form = this.#context.getElementsByTagName('form');\n\n\t\t\t\tif (form && form[0])\n\t\t\t\t{\n\t\t\t\t\tform[0].appendChild(BX.create('input', {\n\t\t\t\t\t\tattrs: {\n\t\t\t\t\t\t\ttype: \"hidden\",\n\t\t\t\t\t\t\tname: \"apply\",\n\t\t\t\t\t\t\tvalue: \"Y\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}));\n\n\t\t\t\t\tform[0].submit();\n\t\t\t\t}\n\t\t\t},\n\t\t\tonfailure: response => {\n\t\t\t\tthis.removeLoader();\n\t\t\t}\n\t\t});\n\t}\n\n\tapplyChanges(event)\n\t{\n\t\tif (!this.#isAvailable)\n\t\t{\n\t\t\tBX.UI.InfoHelper.show('limit_crm_marketing_toloka');\n\t\t\treturn;\n\t\t}\n\n\t\tthis.createProject();\n\t}\n\n\tgetFilter()\n\t{\n\t\tconst filter = BX.Main.filterManager.getById(this.#filterId);\n\t\tif (!filter || !(filter instanceof BX.Main.Filter))\n\t\t{\n\t\t\treturn null;\n\t\t}\n\n\t\treturn filter;\n\t}\n}"],"names":["allowedAttributes","value","name","disabled","type","Element","element","attributes","i18n","_node","HTMLElement","document","createElement","_config","_setAttributes","textContent","_setTextContent","appendChild","className","classList","add","remove","toggle","callback","addEventListener","removeEventListener","text","window","getComputedStyle","height","width","top","style","focus","key","_setAttribute","setAttribute","getAttribute","CLASSES","select","dropdownShown","multiselect","label","placeholder","dropdown","option","optionDisabled","autocompleteInput","selectedLabel","selectedOption","placeholderHidden","optionHidden","Autocomplete","config","classNames","disabledOptions","_state","opened","_icons","_holderElement","_boundHandleClick","_handleClick","bind","_boundUnselectOption","_unselectOption","_boundSortOptions","_sortOptions","_body","body","_create","_setValue","data","options","_options","_generateOptions","BX","_autocomplete","get","map","_option","multiple","_element","querySelector","_parent","selector","querySelectorAll","dataset","selectClone","cloneNode","removeChild","_select","_label","_optionsWrapper","addClass","append","deleteButton","parentNode","length","reset","_placeholder","_popup","Popup","id","Math","random","bindElement","zIndex","maxHeight","setContent","autocomplete","preOption","push","String","event","stopPropagation","target","find","undefined","close","removeClass","icon","show","dataValue","forEach","_value","toString","NAME","VALUE","JSON","stringify","manual","unselected","indexOf","optionNode","_selectOptions","_prepareDataValue","setText","_selectOption","_selectedOption","onChange","setTop","Number","getHeight","split","newValue","index","splice","toLowerCase","startsWith","Toloka","Sender","Page","Helper","_expireInNode","validateRequiredFields","Template","Selector","addCustomEvent","events","templateSelect","onTemplateSelect","selectorClose","closeTemplateSelector","_saveBtn","applyChanges","showTemplateSelector","onCustomEvent","letterTile","slider","UI","Notification","Center","notify","content","outsideSaveSuccess","autoHideDelay","subscribe","ToolbarEvents","finishEditing","updatedTitle","getData","initWidget","filter","getFilter","getAddPresetButton","display","getPreset","getPresets","preset","getResetButton","reInitAddressWidget","clearFilterBtn","params","containerId","region","getElementById","changeDisplay","actionUri","AjaxAction","isFrame","prettyDateFormat","isSaved","isRegistered","isOutside","isAvailable","mess","objectKeysToLowerCase","parse","optionData","isSlider","toolbarId","ToolbarManager","prepareNodes","buildDispatchNodes","_filterNode","_regionInput","bindEvents","initButtons","isMSBrowser","getNode","_projectNode","_poolNode","_taskSuiteNode","_descriptionNode","_instructionNode","_tasksNode","_overlapNode","_adultContentNode","_priceNode","removeAutocompleteNode","initAddressWidget","getPopup","popupContainer","getSearch","isSquareRemoveButton","self","preparedValue","getFieldByName","ITEMS","getLocationList","request","action","onsuccess","response","navigator","userAgent","match","replace","patternTitle","date","format","template","code","messageFields","getPatternTitle","fireEvent","scrollTo","getNodes","node","field","hasOwnProperty","innerHTML","changeDisplayingTemplateSelector","isShow","classShow","classHide","changeClass","origObj","Object","keys","reduce","newObj","val","usedWords","includes","responseData","acc","current","x","item","concat","setOptions","success","every","validateField","removeLoader","_validatorPopup","required","setBindElement","scrollIntoView","input_key","output_key","description","instruction","input_type","input_identificator","output_type","output_identificator","markup","script","js","styles","css","createPool","onfailure","projectId","task_suite_id","project_id","private_name","public_description","may_contain_adult_content","checked","reward_per_assignment","will_expire","overlap","tasks","identificator","pool_id","form","getElementsByTagName","create","attrs","submit","InfoHelper","createProject","Main","filterManager","getById","Filter","settings","initialize"],"mappings":"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"}

Youez - 2016 - github.com/yon3zu
LinuXploit