@astral/utils
v1.6.1
Published
Утилиты и функции общего назначения.
Downloads
1,475
Readme
@astral/utils
Утилиты и функции общего назначения.
Table of contents
Installation
npm i --save @astral/utils
yarn add @astral/utils
base
base utils - Общие утилиты и функции
zeroPad
Утилита для генерации строковых чисел с заданным количеством символов, если число символов числа меньше необходимого.
import { zeroPad } from '@astral/utils';
// 001
zeroPad(1,3);
// 007
zeroPad(7,3);
// 111
zeroPad(111,3);
external base
Внешние общие утилиты и функции
isPlainObject
Утилита для проверки, является ли значение простым объектом. Подробнее
date
Утилиты и функции работы с датами
addDays
Утилита добавляющая к дате указанное количество дней
import { addDays } from '@astral/utils';
// 01.10.2024 - функция добавит 10 дней
addDays(new Date('01.01.2024'), 10);
addMonths
Утилита добавляющая к дате указанное количество месяцев
import { addMonths } from '@astral/utils';
// 04.01.2024 - функция добавит 4 месяца
addMonths(new Date('01.01.2024'), 4);
addYears
Утилита добавляющая к дате указанное количество лет
import { addYears } from '@astral/utils';
// 01.01.2024 - функция добавит 4 года
addYears(new Date('01.01.2020'), 4);
isDate
Утилита проверки значения на валидность даты
import { isDate } from '@astral/utils';
// true
isDate(new Date('01.01.2020'));
// true
isDate('01.01.2020');
// true
isDate(2024);
// false
isDate(undefined);
// false
isDate(null);
// false
isDate('some string');
declension
Утилиты и функции для работы со склонениями слов
declensionOfWords
Базовая утилита для работы со склонениями
import { declensionOfWords } from '@astral/utils';
// Возвращает функцию для склонения слова 'документ'
const declensionDocument = declensionOfWords(['документ', 'документа', 'документов']);
declensionDay
Утилита для склонения дней
import { declensionDay } from '@astral/utils';
// вернет 'день'
declensionDay(1);
// вернет 'дня'
declensionDay(2);
// вернет 'дней'
declensionDay(5);
declensionMonth
Утилита для склонения месяцев
import { declensionMonth } from '@astral/utils';
// вернет 'месяц'
declensionMonth(1);
// вернет 'месяца'
declensionMonth(2);
// вернет 'месяцев'
declensionMonth(5);
declensionYear
Утилита для склонения лет
import { declensionYear } from '@astral/utils';
// вернет 'год'
declensionYear(1);
// вернет 'года'
declensionYear(2);
// вернет 'лет'
declensionYear(5);
file
Утилиты и функции для работы с файлами
formatFileSizeToView
Функция, которая возвращает размер файла с единицами измерения.
import { formatFileSizeToView } from '@astral/utils';
// 1.00 Б
formatFileSizeToView(1);
// 5.00 Кб
formatFileSizeToView(5 * 1024);
// 5.00 Мб
formatFileSizeToView(5 * 1024 * 1024);
// 0 Б
formatFileSizeToView(0);
formatFileTypeToView
Функция, которая возвращает расширение файла
import { formatFileTypeToView } from '@astral/utils';
// jpeg
formatFileTypeToView('.jpeg');
// pdf
formatFileTypeToView('application/pdf');
getAllFileExtensions
Функция, которая возвращает массив расширений файлов для указанного MIME-типа
import { getAllFileExtensions } from '@astral/utils';
// ['jpg', 'jpeg', 'jpe']
getAllFileExtensions('image/jpeg')
// ['pdf']
getAllFileExtensions('application/pdf');
getFileExtension
Функция, которая возвращает расширение файла на основе переданного типа
import { getFileExtension } from '@astral/utils';
// jpg
getFileExtension('image/jpeg');
// pdf
getFileExtension('application/pdf');
getFileType
Определяет MIME-тип файла по его расширению
import { getFileType } from '@astral/utils';
// application/pdf
getFileType('pdf');
phone
Утилиты и функции работы с номерами телефона
formatPhoneToView
Форматирование номера телефона по маске
import { formatPhoneToView } from '@astral/utils';
// +7 (999) 999-99-99
formatPhoneToView('79999999999');
// 8 (999) 999-99-99
formatPhoneToView('79999999999',{
isStartWithPlus: false,
});
// undefined
formatPhoneToView();
number
Утилиты и функции для работы с числами
formatNumberToCurrency
Форматирование чисел или строк в формат валюты
import { formatNumberToCurrency } from '@astral/utils';
// "10 000 ₽"
formatNumberToCurrency({ amount: '10000' });
// "100 ₽"
formatNumberToCurrency({ amount: 100 });
// "0 ₽"
formatNumberToCurrency({ amount: 0 });
// "Бесплатно"
formatNumberToCurrency({
amount: 0,
isTextInsteadOfZeroFormat: true,
});
// "Даром"
formatNumberToCurrency({
amount: 0,
isTextInsteadOfZeroFormat: true,
zeroSumPlaceholder: "Даром",
});