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/cvetdv.ru/bitrix/js/im/v2/model/src/utils/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/cvetdv.ru/bitrix/js/im/v2/model/src/utils/format.js
import { Type, Text } from 'main.core';
import { Utils } from 'im.v2.lib.utils';

import type { JsonObject, JsonValue } from 'main.core';

export const isNumberOrString = (target: JsonValue): boolean => {
	return Type.isNumber(target) || Type.isString(target);
};

export const convertToString = (target: JsonValue): string => {
	return target.toString();
};

export const convertToNumber = (target: string | number): number => {
	return Number.parseInt(target, 10);
};

export const convertToDate = (target: string) => {
	return Utils.date.cast(target, false);
};

const SNAKE_CASE_REGEXP = /(_[\da-z])/gi;
export const convertObjectKeysToCamelCase = (targetObject: JsonObject): JsonObject => {
	const resultObject = {};
	Object.entries(targetObject).forEach(([key, value]) => {
		const newKey = prepareKey(key);
		if (Type.isPlainObject(value))
		{
			resultObject[newKey] = convertObjectKeysToCamelCase(value);

			return;
		}

		if (Type.isArray(value))
		{
			resultObject[newKey] = convertArrayItemsKeysToCamelCase(value);

			return;
		}
		resultObject[newKey] = value;
	});

	return resultObject;
};

const prepareKey = (rawKey: string): string => {
	let key = rawKey;
	if (key.search(SNAKE_CASE_REGEXP) !== -1)
	{
		key = key.toLowerCase();
	}

	return Text.toCamelCase(key);
};

const convertArrayItemsKeysToCamelCase = (targetArray: JsonValue[]): JsonValue[] => {
	return targetArray.map((arrayItem) => {
		if (!Type.isPlainObject(arrayItem))
		{
			return arrayItem;
		}

		return convertObjectKeysToCamelCase(arrayItem);
	});
};

Youez - 2016 - github.com/yon3zu
LinuXploit