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/ilovecveti.ru/bitrix/js/ui/mail/sender-selector/dist/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/ilovecveti.ru/bitrix/js/ui/mail/sender-selector/dist/sender-selector.bundle.js
/* eslint-disable */
this.BX = this.BX || {};
this.BX.UI = this.BX.UI || {};
(function (exports,main_core,main_core_events,main_loader,ui_entitySelector,ui_mail_providerShowcase,ui_mail_senderEditor,ui_iconSet_api_core) {
	'use strict';

	let _ = t => t,
	  _t,
	  _t2,
	  _t3,
	  _t4,
	  _t5;
	const senderEntityId = 'sender';
	const mailboxEntityId = 'mailbox';
	const senderPrefix = 'S';
	const mailboxPrefix = 'MB';
	var _container = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("container");
	var _senderButton = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("senderButton");
	var _senderButtonTextNode = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("senderButtonTextNode");
	var _loader = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("loader");
	var _isListUpdated = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("isListUpdated");
	var _isSenderAvailable = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("isSenderAvailable");
	var _createLoader = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("createLoader");
	var _renderContainer = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("renderContainer");
	var _createSelector = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("createSelector");
	var _updateDialog = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("updateDialog");
	var _loadItems = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("loadItems");
	var _updateSenderList = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("updateSenderList");
	var _addSender = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("addSender");
	var _showLoader = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("showLoader");
	var _hideLoader = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("hideLoader");
	var _getSelectorSenderId = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("getSelectorSenderId");
	var _getSenderTypeByItemId = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("getSenderTypeByItemId");
	class SenderSelector {
	  constructor(options) {
	    var _options$fieldValue, _options$isSenderAvai;
	    Object.defineProperty(this, _getSenderTypeByItemId, {
	      value: _getSenderTypeByItemId2
	    });
	    Object.defineProperty(this, _getSelectorSenderId, {
	      value: _getSelectorSenderId2
	    });
	    Object.defineProperty(this, _hideLoader, {
	      value: _hideLoader2
	    });
	    Object.defineProperty(this, _showLoader, {
	      value: _showLoader2
	    });
	    Object.defineProperty(this, _addSender, {
	      value: _addSender2
	    });
	    Object.defineProperty(this, _updateSenderList, {
	      value: _updateSenderList2
	    });
	    Object.defineProperty(this, _loadItems, {
	      value: _loadItems2
	    });
	    Object.defineProperty(this, _updateDialog, {
	      value: _updateDialog2
	    });
	    Object.defineProperty(this, _createSelector, {
	      value: _createSelector2
	    });
	    Object.defineProperty(this, _renderContainer, {
	      value: _renderContainer2
	    });
	    Object.defineProperty(this, _createLoader, {
	      value: _createLoader2
	    });
	    Object.defineProperty(this, _container, {
	      writable: true,
	      value: null
	    });
	    Object.defineProperty(this, _senderButton, {
	      writable: true,
	      value: null
	    });
	    Object.defineProperty(this, _senderButtonTextNode, {
	      writable: true,
	      value: null
	    });
	    Object.defineProperty(this, _loader, {
	      writable: true,
	      value: void 0
	    });
	    Object.defineProperty(this, _isListUpdated, {
	      writable: true,
	      value: true
	    });
	    Object.defineProperty(this, _isSenderAvailable, {
	      writable: true,
	      value: false
	    });
	    this.sender = ((_options$fieldValue = options.fieldValue) == null ? void 0 : _options$fieldValue.length) > 0 ? options.fieldValue : null;
	    this.fieldId = options.fieldId;
	    this.fieldName = options.fieldName;
	    babelHelpers.classPrivateFieldLooseBase(this, _isSenderAvailable)[_isSenderAvailable] = (_options$isSenderAvai = options.isSenderAvailable) != null ? _options$isSenderAvai : false;
	    babelHelpers.classPrivateFieldLooseBase(this, _container)[_container] = this.fieldId && this.fieldName ? babelHelpers.classPrivateFieldLooseBase(this, _renderContainer)[_renderContainer]() : null;
	    babelHelpers.classPrivateFieldLooseBase(this, _createLoader)[_createLoader]();
	    babelHelpers.classPrivateFieldLooseBase(this, _createSelector)[_createSelector]();
	    this.selectCallback = options.selectCallback;
	    this.mailboxes = options.mailboxes;
	    if (this.mailboxes) {
	      babelHelpers.classPrivateFieldLooseBase(this, _updateDialog)[_updateDialog](this.mailboxes);
	    }
	  }
	  render() {
	    return babelHelpers.classPrivateFieldLooseBase(this, _container)[_container];
	  }
	  renderTo(targetContainer) {
	    if (main_core.Type.isDomNode(targetContainer)) {
	      main_core.Dom.append(babelHelpers.classPrivateFieldLooseBase(this, _container)[_container], targetContainer);
	    }
	  }
	  setSender(senderId = null, name = null, email = null, type = senderEntityId) {
	    const prefix = type === mailboxEntityId ? mailboxPrefix : senderPrefix;
	    this.selectedItemId = senderId ? `${prefix}_${senderId}` : null;
	    const senderName = name;
	    const senderEmail = email;
	    let selectorText = '';
	    if (senderName && senderEmail) {
	      selectorText = `${senderName} <${senderEmail}>`;
	    }
	    if (this.selectCallback && !babelHelpers.classPrivateFieldLooseBase(this, _container)[_container]) {
	      this.selectCallback(selectorText, '');
	      return;
	    }
	    if (!babelHelpers.classPrivateFieldLooseBase(this, _container)[_container]) {
	      return;
	    }
	    const input = babelHelpers.classPrivateFieldLooseBase(this, _container)[_container].querySelector('input');
	    this.sender = selectorText;
	    babelHelpers.classPrivateFieldLooseBase(this, _senderButtonTextNode)[_senderButtonTextNode].innerText = selectorText.length > 0 ? selectorText : main_core.Loc.getMessage('UI_MAIL_SENDER_SLIDER_SELECTOR_SELECT_NEW_SENDER');
	    babelHelpers.classPrivateFieldLooseBase(this, _senderButtonTextNode)[_senderButtonTextNode].title = this.sender;
	    main_core.Dom.append(this.icon, babelHelpers.classPrivateFieldLooseBase(this, _senderButton)[_senderButton]);
	    input.value = selectorText;
	  }
	  showDialog(targetNode = null, selectedSender = null) {
	    if (!babelHelpers.classPrivateFieldLooseBase(this, _isListUpdated)[_isListUpdated]) {
	      return;
	    }
	    if (!this.senderDialog || this.senderDialog.getItems().length === 0) {
	      this.showProviderShowcase();
	      return;
	    }
	    if (targetNode) {
	      this.senderDialog.setTargetNode(targetNode);
	    }
	    this.senderDialog.show();
	  }
	  showProviderShowcase(addSenderCallback) {
	    this.addSenderCallback = addSenderCallback;
	    ui_mail_providerShowcase.ProviderShowcase.openSlider({
	      isSender: babelHelpers.classPrivateFieldLooseBase(this, _isSenderAvailable)[_isSenderAvailable],
	      addSenderCallback,
	      setSenderCallback: (senderId, senderName, senderEmail) => {
	        this.setSender(senderId, senderName, senderEmail);
	      },
	      updateSenderList: () => {
	        void babelHelpers.classPrivateFieldLooseBase(this, _updateSenderList)[_updateSenderList]();
	      }
	    });
	  }
	}
	function _createLoader2() {
	  babelHelpers.classPrivateFieldLooseBase(this, _loader)[_loader] = new main_loader.Loader({
	    target: babelHelpers.classPrivateFieldLooseBase(this, _senderButton)[_senderButton],
	    size: 17,
	    mode: 'inline'
	  });
	}
	function _renderContainer2() {
	  var _this$sender, _this$sender2, _this$sender3;
	  const icon = new ui_iconSet_api_core.Icon({
	    icon: ui_iconSet_api_core.Actions.CHEVRON_DOWN,
	    color: getComputedStyle(document.body).getPropertyValue('--ui-color-base-80'),
	    size: 16
	  });
	  this.icon = icon.render();
	  babelHelpers.classPrivateFieldLooseBase(this, _senderButtonTextNode)[_senderButtonTextNode] = main_core.Tag.render(_t || (_t = _`
			<div class="sender-selector-button-text" title="${0}">
				${0}
			</div>
		`), (_this$sender = this.sender) != null ? _this$sender : '', (_this$sender2 = this.sender) != null ? _this$sender2 : main_core.Loc.getMessage('UI_MAIL_SENDER_SLIDER_SELECTOR_SELECT_NEW_SENDER'));
	  babelHelpers.classPrivateFieldLooseBase(this, _senderButton)[_senderButton] = main_core.Tag.render(_t2 || (_t2 = _`
			<div class="sender-selector-button">
				${0}
				${0}
			</div>
		`), babelHelpers.classPrivateFieldLooseBase(this, _senderButtonTextNode)[_senderButtonTextNode], this.icon);
	  const {
	    root,
	    senderInput
	  } = main_core.Tag.render(_t3 || (_t3 = _`
			<div>
				${0}
				<input type="hidden"
					id="${0}"
					name="${0}"
					value="${0}"
					ref="senderInput">
			</div>
		`), babelHelpers.classPrivateFieldLooseBase(this, _senderButton)[_senderButton], this.fieldId, this.fieldName, (_this$sender3 = this.sender) != null ? _this$sender3 : '');
	  this.senderInput = senderInput;
	  return root;
	}
	function _createSelector2() {
	  const footerHandler = () => {
	    this.senderDialog.hide();
	    this.showProviderShowcase();
	  };
	  const footer = main_core.Tag.render(_t4 || (_t4 = _`
			<span class="ui-selector-footer-link ui-selector-footer-link-add" onclick="${0}">${0}</span>
		`), footerHandler, main_core.Loc.getMessage('UI_MAIL_SENDER_SLIDER_SELECTOR_ADD_NEW_MAILBOX'));
	  const linkClickHandler = baseEvent => {
	    const data = baseEvent.data;
	    data.event.preventDefault();
	    const item = data.node.getItem();
	    const dialog = item.getDialog();
	    dialog.hide();
	    const customData = item.getCustomData();
	    if (item.entityId === mailboxEntityId) {
	      BX.SidePanel.Instance.open(customData.get('href'), {
	        width: 760,
	        cacheable: false,
	        events: {
	          onClose: () => {
	            this.setSender();
	            void babelHelpers.classPrivateFieldLooseBase(this, _updateSenderList)[_updateSenderList]();
	          }
	        }
	      });
	      return;
	    }
	    ui_mail_senderEditor.AliasEditor.openSlider({
	      senderId: customData.get('id'),
	      email: customData.get('email'),
	      setSenderCallback: (senderId, senderName, senderEmail) => {
	        this.setSender(senderId, senderName, senderEmail);
	      },
	      updateSenderList: () => {
	        void babelHelpers.classPrivateFieldLooseBase(this, _updateSenderList)[_updateSenderList]();
	      }
	    });
	  };
	  this.senderDialog = new ui_entitySelector.Dialog({
	    targetNode: babelHelpers.classPrivateFieldLooseBase(this, _senderButton)[_senderButton],
	    width: 400,
	    height: 300,
	    multiple: false,
	    enableSearch: true,
	    footer,
	    dropdownMode: true,
	    showAvatars: false,
	    compactView: true,
	    events: {
	      'Item:onSelect': event => {
	        const {
	          item: selectedItem
	        } = event.getData();
	        const selectedItemName = selectedItem.getCustomData().get('name');
	        const selectedItemEmail = selectedItem.getCustomData().get('email');
	        this.setSender(selectedItem.id, selectedItemName, selectedItemEmail);
	      },
	      'ItemNode:onLinkClick': linkClickHandler
	    }
	  });
	  main_core.Event.bind(babelHelpers.classPrivateFieldLooseBase(this, _senderButton)[_senderButton], 'click', () => {
	    this.showDialog();
	  });
	}
	function _updateDialog2(senders) {
	  this.senderDialog.removeItems();
	  const senderName = main_core.Tag.unsafe(_t5 || (_t5 = _`${0}`), this.sender);
	  senders.forEach(sender => {
	    if (sender.id) {
	      babelHelpers.classPrivateFieldLooseBase(this, _addSender)[_addSender](sender);
	      if (!this.selectedItemId && senderName === `${sender.name} <${sender.email}>`) {
	        this.selectedItemId = babelHelpers.classPrivateFieldLooseBase(this, _getSelectorSenderId)[_getSelectorSenderId](sender.id, sender.type);
	      }
	    }
	  });
	  if (this.selectedItemId) {
	    const selectedItem = this.senderDialog.getItem({
	      id: this.selectedItemId,
	      entityId: babelHelpers.classPrivateFieldLooseBase(this, _getSenderTypeByItemId)[_getSenderTypeByItemId](this.selectedItemId)
	    });
	    selectedItem == null ? void 0 : selectedItem.select();
	  } else {
	    const items = this.senderDialog.getItems();
	    if (items.length > 0) {
	      this.setSender(items[0].id, items[0].getCustomData().get('name'), items[0].getCustomData().get('email'));
	      items[0].select();
	      this.selectedItemId = items[0].id;
	    }
	  }
	}
	function _loadItems2() {
	  return main_core.ajax.runAction('main.api.mail.sender.getAvailableSenders', {}).then(response => {
	    return response.data;
	  }).catch(() => {
	    return [];
	  });
	}
	async function _updateSenderList2() {
	  babelHelpers.classPrivateFieldLooseBase(this, _isListUpdated)[_isListUpdated] = false;
	  babelHelpers.classPrivateFieldLooseBase(this, _showLoader)[_showLoader]();
	  this.senderDialog.removeItems();
	  try {
	    const senders = await babelHelpers.classPrivateFieldLooseBase(this, _loadItems)[_loadItems]();
	    if (senders) {
	      babelHelpers.classPrivateFieldLooseBase(this, _updateDialog)[_updateDialog](senders);
	    }
	  } catch {/* empty */}
	  babelHelpers.classPrivateFieldLooseBase(this, _hideLoader)[_hideLoader]();
	  babelHelpers.classPrivateFieldLooseBase(this, _isListUpdated)[_isListUpdated] = true;
	}
	function _addSender2(sender) {
	  const title = `${sender.name} <${sender.email}>`;
	  const id = babelHelpers.classPrivateFieldLooseBase(this, _getSelectorSenderId)[_getSelectorSenderId](sender.id, sender.type);
	  const href = sender.type === mailboxEntityId ? sender.editHref : sender.id;
	  this.senderDialog.addItem({
	    id,
	    tabs: 'recents',
	    entityId: sender.type === mailboxEntityId ? mailboxEntityId : senderEntityId,
	    link: href ? '#' : null,
	    deselectable: false,
	    linkTitle: main_core.Loc.getMessage('UI_MAIL_SENDER_SLIDER_SELECTOR_ITEM_LINK_TITLE'),
	    title,
	    customData: {
	      name: sender.name,
	      email: sender.email,
	      id: sender.id,
	      formated: sender.formated,
	      href
	    }
	  });
	}
	function _showLoader2() {
	  babelHelpers.classPrivateFieldLooseBase(this, _loader)[_loader].show();
	  main_core.Dom.style(this.icon, 'display', 'none');
	}
	function _hideLoader2() {
	  babelHelpers.classPrivateFieldLooseBase(this, _loader)[_loader].hide();
	  main_core.Dom.style(this.icon, 'display', 'block');
	}
	function _getSelectorSenderId2(id, entityType) {
	  return entityType === mailboxEntityId ? `${mailboxPrefix}_${id}` : `${senderPrefix}_${id}`;
	}
	function _getSenderTypeByItemId2(id) {
	  const prefix = id.split('_')[0];
	  switch (prefix) {
	    case senderPrefix:
	      return senderEntityId;
	    case mailboxPrefix:
	      return mailboxEntityId;
	    default:
	      return '';
	  }
	}

	exports.SenderSelector = SenderSelector;

}((this.BX.UI.Mail = this.BX.UI.Mail || {}),BX,BX.Event,BX,BX.UI.EntitySelector,BX.UI.Mail,BX.UI.Mail,BX.UI.IconSet));
//# sourceMappingURL=sender-selector.bundle.js.map

Youez - 2016 - github.com/yon3zu
LinuXploit