{"_id":"@aceramica/nuxt-shared","name":"@aceramica/nuxt-shared","dist-tags":{"latest":"1.0.9"},"versions":{"1.0.9":{"name":"@aceramica/nuxt-shared","version":"1.0.9","description":"Общие utils для фронтенд сервисов aceramica на Nuxt 3","repository":{"type":"git","url":"https://gitlab.acrmc.ru/aceramica/frontend/common/utils/nuxt-shared.git"},"author":{"name":"https://github.com/tagir404"},"license":"MIT","type":"module","exports":{".":{"types":"./dist/types.d.ts","import":"./dist/module.mjs","require":"./dist/module.cjs"}},"main":"./dist/module.cjs","types":"./dist/types.d.ts","scripts":{"prepack":"nuxt-module-build build","dev":"nuxi dev playground","dev:build":"nuxi build playground","dev:prepare":"nuxt-module-build build --stub && nuxt-module-build prepare && nuxi prepare playground","release":"typedoc src --out docs && npm run prepack && changelogen --release && npm publish && git push --follow-tags","lint":"eslint .","test":"vitest run","test:watch":"vitest watch","test:types":"vue-tsc --noEmit && cd playground && vue-tsc --noEmit","docs":"typedoc src --out docs"},"dependencies":{"@nuxt/kit":"^3.16.0"},"devDependencies":{"@nuxt/devtools":"^2.3.0","@nuxt/eslint-config":"^1.2.0","@nuxt/module-builder":"^0.8.4","@nuxt/schema":"^3.16.0","@nuxt/test-utils":"^3.17.2","@types/node":"latest","changelogen":"^0.6.1","eslint":"^9.22.0","nuxt":"^3.16.0","prettier-plugin-vue":"^1.1.6","typedoc":"^0.28.0","typescript":"~5.8.2","vitest":"^3.0.8","vue-tsc":"^2.2.8"},"_id":"@aceramica/nuxt-shared@1.0.9","gitHead":"d36fb2d43609cf8d19c7e60070d49f3ac9584a1b","_nodeVersion":"22.14.0","_npmVersion":"11.4.0","dist":{"integrity":"sha512-4EcdhKRagMyJeptI7pGtsZJXCF7pKk5ufUS4BsDfIBc1qgPxd9FmIwzqOdpICIVZl3cp0EZc6K2ZFMBOeORENA==","shasum":"e33da7cb0627a18a18517907727e97ff14dcbce1","tarball":"https://registry.npmjs.org/@aceramica/nuxt-shared/-/nuxt-shared-1.0.9.tgz","fileCount":24,"unpackedSize":16203,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDzWtE6J3BVv6ZgYaawzWUtsI3npNKKroHMMIDbPJR5TAIgKkzmc7l/pyQs1rrKGlMyHXQSlGbKkXoy2azE8C08ZLQ="}]},"_npmUser":{"name":"tagir404","email":"tagirsulaev@gmail.com"},"directories":{},"maintainers":[{"name":"tagir404","email":"tagirsulaev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/nuxt-shared_1.0.9_1752219744314_0.3811803164927603"},"_hasShrinkwrap":false}},"time":{"created":"2025-07-11T07:42:24.238Z","1.0.9":"2025-07-11T07:42:24.481Z","modified":"2025-07-11T07:42:24.747Z"},"maintainers":[{"name":"tagir404","email":"tagirsulaev@gmail.com"}],"description":"Общие utils для фронтенд сервисов aceramica на Nuxt 3","repository":{"type":"git","url":"https://gitlab.acrmc.ru/aceramica/frontend/common/utils/nuxt-shared.git"},"author":{"name":"https://github.com/tagir404"},"license":"MIT","readme":"# NuxtShared A-Ceramica\n\nNuxt 3 модуль c переиспользуемыми utils для проектов A-Ceramica\n\n## Utils\n\n- `currentDate()` - возвращает текущую дату в формате `dd.mm.yyyy`\n  - Пример использования:\n    ```javascript\n    currentDate() // '01.01.2025'\n    ```\n- `currentDateTime()` - возвращает текущую дату и время в формате `dd.mm.yyyy HH:mm`\n  - Пример использования:\n    ```javascript\n    currentDateTime() // '01.01.2025 12:00'\n    ```\n- `currentYear()` - возвращает текущий год в формате `yyyy`\n  - Пример использования:\n    ```javascript\n    currentYear() // '2025'\n    ```\n- `declensionOfNumber` - возвращает форму существительного в зависимости от числа\n  - Пример использования:\n    ```javascript\n    const titles = ['товар', 'товара', 'товаров']\n    declensionOfNumber(22, titles) // 'товара'\n    ```\n- `formattingDate` - форматирует дату в формате `dd.mm.yyyy HH:mm` (по умолчанию UTC Москва, можно указать часовой пояс)\n  - Пример использования:\n    ```javascript\n    formattingDate(new Date()) // '01.01.2025 12:00'\n    formattingDate('2024-11-19T08:44:26.000000Z', '+03:00') // '19.11.2024 11:44'\n    ```\n- `formattingDateFeed` - форматирует дату в формате `yyyy-mm-ddTHH:mm:ss+XX:XX` (нужно для фидов и sitemap, по умолчанию UTC Москва)\n  - Пример использования:\n    ```javascript\n    formattingDateFeed(new Date()) // '2025-01-01T12:00:00+00:00'\n    formattingDateFeed('2024-11-19T08:44:26.000000Z', '+03:00') // '2024-11-19T11:44:26+03:00'\n    ```\n- `formattingPrice` - форматирует цену в строку с разделителями тысяч и заданным количеством знаков после запятой\n  - Пример использования:\n    ```javascript\n    formattingPrice(1234) // '1 234.00'\n    formattingPrice(1234.5) // '1 234.50'\n    formattingPrice(1234.567, 1) // '1 234.6'\n    formattingPrice(1234.567, 0) // '1 234'\n    formattingPrice('5678.9', 2) // '5 678.90'\n    ```\n- `scrollToElement` - прокручивает страницу до элемента с заданным id\n  - Пример использования:\n    ```javascript\n    scrollToElement('elementId') // прокручивает страницу до элемента с id='elementId'\n    ```\n- `transliterate` - транслитерация с русского на английский язык\n  - Пример использования:\n    ```javascript\n    transliterate('Привет, мир!') // 'Privet, mir!'\n    ```\n- `truncateString` - обрезает строку до указанного размера\n  - Пример использования:\n    ```javascript\n    truncateString('Если строка очень длинная, и не помещается в блок, она будет обрезана до указанного размера', 20) // 'Если строка очень дл...'\n    ```\n\n## Установка в свой проект\n\n1. Создаём файл .npmrc в корне проекта со следующим содержимым\n   ```bash\n   # Токен создаётся в настройках проекта в GitLab (Settings -> Access Tokens)\n   //gitlab.a-ceramica.ru/api/v4/projects/7/packages/npm/:_authToken=ТОКЕН_ИЗ_GITLAB\n   @aceramica:registry=https://gitlab.a-ceramica.ru/api/v4/projects/7/packages/npm/\n   ```\n2. В консоли выполняем команду\n   ```bash\n   npm install @aceramica/nuxt-shared\n   ```\n3. D nuxt.config.ts добавляем в modules\n   ```typescript\n   modules: [\n     '@aceramica/nuxt-shared'\n   ]\n   ```\n\n## Вклад в проект\n\n<details>\n  <summary>Локальная разработка</summary>\n  \n  ```bash\n  # Установка зависимостей\n  npm install\n  \n  # Генерация типов\n  npm run dev:prepare\n  \n  # Запуск playground для разработки\n  npm run dev\n  \n  # Билд playground\n  npm run dev:build\n  \n  # Запуск линтера (ESLint)\n  npm run lint\n  \n  # ЗАпуск тестов (Vitest)\n  npm run test\n  npm run test:watch\n  \n  # Релиз новой версии\n  npm run release\n  ```\n\n</details>\n","readmeFilename":"README.md","_rev":"1-cc2ce8b3b480036e4d35bf21a2bea6b7"}