@aceramica/nuxt-shared
v1.0.9
Published
Общие utils для фронтенд сервисов aceramica на Nuxt 3
Readme
NuxtShared A-Ceramica
Nuxt 3 модуль c переиспользуемыми utils для проектов A-Ceramica
Utils
currentDate()- возвращает текущую дату в форматеdd.mm.yyyy- Пример использования:
currentDate() // '01.01.2025'
- Пример использования:
currentDateTime()- возвращает текущую дату и время в форматеdd.mm.yyyy HH:mm- Пример использования:
currentDateTime() // '01.01.2025 12:00'
- Пример использования:
currentYear()- возвращает текущий год в форматеyyyy- Пример использования:
currentYear() // '2025'
- Пример использования:
declensionOfNumber- возвращает форму существительного в зависимости от числа- Пример использования:
const titles = ['товар', 'товара', 'товаров'] declensionOfNumber(22, titles) // 'товара'
- Пример использования:
formattingDate- форматирует дату в форматеdd.mm.yyyy HH:mm(по умолчанию UTC Москва, можно указать часовой пояс)- Пример использования:
formattingDate(new Date()) // '01.01.2025 12:00' formattingDate('2024-11-19T08:44:26.000000Z', '+03:00') // '19.11.2024 11:44'
- Пример использования:
formattingDateFeed- форматирует дату в форматеyyyy-mm-ddTHH:mm:ss+XX:XX(нужно для фидов и sitemap, по умолчанию UTC Москва)- Пример использования:
formattingDateFeed(new Date()) // '2025-01-01T12:00:00+00:00' formattingDateFeed('2024-11-19T08:44:26.000000Z', '+03:00') // '2024-11-19T11:44:26+03:00'
- Пример использования:
formattingPrice- форматирует цену в строку с разделителями тысяч и заданным количеством знаков после запятой- Пример использования:
formattingPrice(1234) // '1 234.00' formattingPrice(1234.5) // '1 234.50' formattingPrice(1234.567, 1) // '1 234.6' formattingPrice(1234.567, 0) // '1 234' formattingPrice('5678.9', 2) // '5 678.90'
- Пример использования:
scrollToElement- прокручивает страницу до элемента с заданным id- Пример использования:
scrollToElement('elementId') // прокручивает страницу до элемента с id='elementId'
- Пример использования:
transliterate- транслитерация с русского на английский язык- Пример использования:
transliterate('Привет, мир!') // 'Privet, mir!'
- Пример использования:
truncateString- обрезает строку до указанного размера- Пример использования:
truncateString('Если строка очень длинная, и не помещается в блок, она будет обрезана до указанного размера', 20) // 'Если строка очень дл...'
- Пример использования:
Установка в свой проект
- Создаём файл .npmrc в корне проекта со следующим содержимым
# Токен создаётся в настройках проекта в GitLab (Settings -> Access Tokens) //gitlab.a-ceramica.ru/api/v4/projects/7/packages/npm/:_authToken=ТОКЕН_ИЗ_GITLAB @aceramica:registry=https://gitlab.a-ceramica.ru/api/v4/projects/7/packages/npm/ - В консоли выполняем команду
npm install @aceramica/nuxt-shared - D nuxt.config.ts добавляем в modules
modules: [ '@aceramica/nuxt-shared' ]
Вклад в проект
# Установка зависимостей
npm install
# Генерация типов
npm run dev:prepare
# Запуск playground для разработки
npm run dev
# Билд playground
npm run dev:build
# Запуск линтера (ESLint)
npm run lint
# ЗАпуск тестов (Vitest)
npm run test
npm run test:watch
# Релиз новой версии
npm run release