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/ |
Upload File : |
import Type from './type'; /** * @memberOf BX */ export default class Reflection { /** * Gets link to function by function name * @param className * @return {?Function} */ static getClass(className: string | Function): Function | null { if (Type.isString(className) && !!className) { let classFn = null; let currentNamespace = window; const namespaces = className.split('.'); for (let i = 0; i < namespaces.length; i += 1) { const namespace = namespaces[i]; if (!currentNamespace[namespace]) { return null; } currentNamespace = currentNamespace[namespace]; classFn = currentNamespace; } return classFn; } if (Type.isFunction(className)) { return className; } return null; } /** * Creates a namespace or returns a link to a previously created one * @param {String} namespaceName * @return {Object<string, any> | Function | null} */ static namespace(namespaceName: string): {[key: string]: any} | Function { let parts = namespaceName.split('.'); let parent = window.BX; if (parts[0] === 'BX') { parts = parts.slice(1); } for (let i = 0; i < parts.length; i += 1) { if (Type.isUndefined(parent[parts[i]])) { parent[parts[i]] = {}; } parent = parent[parts[i]]; } return parent; } }