{"_id":"@andrey4emk/npm-appbackb24","_rev":"6-86f2ddc379fdb48c08257ecfc2e38b02","name":"@andrey4emk/npm-appbackb24","dist-tags":{"latest":"0.2.3"},"versions":{"0.1.1":{"name":"@andrey4emk/npm-appbackb24","version":"0.1.1","keywords":[],"author":{"name":"andrey4emk"},"license":"MIT","_id":"@andrey4emk/npm-appbackb24@0.1.1","maintainers":[{"name":"andrey4emk","email":"andrey4emk2@gmail.com"}],"homepage":"https://github.com/andrey4emk/npm_appBackB24#readme","bugs":{"url":"https://github.com/andrey4emk/npm_appBackB24/issues"},"dist":{"shasum":"83155e040d29195f9855b15acb64e559c83573a5","tarball":"https://registry.npmjs.org/@andrey4emk/npm-appbackb24/-/npm-appbackb24-0.1.1.tgz","fileCount":4,"integrity":"sha512-pBbW1eW/hvamvncjunbUhK8DfPbTLy1bmOpyImn7rFna36hhPcaNC3UyBipwkhhjCUkbOlugtdmBsbWVsRST5g==","signatures":[{"sig":"MEYCIQDwpqtA1vtbKtzCE8OWbGK3mNeeKdAsCOLxYu43cQAIPgIhAMx88Ab+FlkUYbRSWXm/XqsI6TlJuIGAl680sNN+P/UO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6852},"main":"b24.js","type":"module","gitHead":"843d17f1822c27d4f97989f69cb8f309e180f0f3","scripts":{"test":"echo \"No tests\" && exit 0","pack:dry":"npm pack --dry-run"},"_npmUser":{"name":"andrey4emk","email":"andrey4emk2@gmail.com"},"repository":{"url":"git+ssh://git@github.com/andrey4emk/npm_appBackB24.git","type":"git"},"_npmVersion":"11.5.1","description":"Bitrix24 OAuth helpers for Node.js projects","directories":{},"_nodeVersion":"24.7.0","dependencies":{"dotenv":"^17.2.3","@bitrix24/b24jssdk":"^0.5.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/npm-appbackb24_0.1.1_1761827284524_0.525418760194863","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Deprecated — use @andrey4emk/npm-app-back-b24"},"0.2.0":{"name":"@andrey4emk/npm-appbackb24","version":"0.2.0","keywords":[],"author":{"name":"andrey4emk"},"license":"MIT","_id":"@andrey4emk/npm-appbackb24@0.2.0","maintainers":[{"name":"andrey4emk","email":"andrey4emk2@gmail.com"}],"homepage":"https://github.com/andrey4emk/npm_appBackB24#readme","bugs":{"url":"https://github.com/andrey4emk/npm_appBackB24/issues"},"dist":{"shasum":"65b1d8c1b2f0660c05bd0144e4bcae4d9dce4934","tarball":"https://registry.npmjs.org/@andrey4emk/npm-appbackb24/-/npm-appbackb24-0.2.0.tgz","fileCount":4,"integrity":"sha512-utBY1mLVR4NyECh7My9N327e7hk4c/TOZHWDBnunFqgSeYuNv2SkSPYkqrULcCZjCAQRGD/5yer5pIjuKpvjgw==","signatures":[{"sig":"MEUCICfnJ+0HqS/sPFXhlCXEodouoOsH3MSx0YrqOPojJJEbAiEA3WTiicPC+g64X+tF3Ce90y719RaX2pTWdTCHPEx2Tb0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6767},"main":"b24.js","type":"module","gitHead":"5d4632377c9437a8c5de63ab8d4f512262022cd2","scripts":{"test":"echo \"No tests\" && exit 0","pack:dry":"npm pack --dry-run"},"_npmUser":{"name":"andrey4emk","email":"andrey4emk2@gmail.com"},"repository":{"url":"git+ssh://git@github.com/andrey4emk/npm_appBackB24.git","type":"git"},"_npmVersion":"11.5.1","description":"Bitrix24 OAuth helpers for Node.js projects","directories":{},"_nodeVersion":"24.7.0","dependencies":{"dotenv":"^17.2.3","@bitrix24/b24jssdk":"^0.5.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/npm-appbackb24_0.2.0_1761828545101_0.0936304921586113","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Deprecated — use @andrey4emk/npm-app-back-b24"},"0.2.1":{"name":"@andrey4emk/npm-appbackb24","version":"0.2.1","keywords":[],"author":{"name":"andrey4emk"},"license":"MIT","_id":"@andrey4emk/npm-appbackb24@0.2.1","maintainers":[{"name":"andrey4emk","email":"andrey4emk2@gmail.com"}],"homepage":"https://github.com/andrey4emk/npm_appBackB24#readme","bugs":{"url":"https://github.com/andrey4emk/npm_appBackB24/issues"},"dist":{"shasum":"98ff54ac0c5394761983701973d58a6672722ccb","tarball":"https://registry.npmjs.org/@andrey4emk/npm-appbackb24/-/npm-appbackb24-0.2.1.tgz","fileCount":4,"integrity":"sha512-O98Yi4+5ejWvdw4zZ/5kzP/byIwqgPea7GsIfFie+UDZ0VsEOWWCd+LR0FU7wPxRgBwx1iVJ+GYr/bHISE8Exw==","signatures":[{"sig":"MEQCIDo3VMrzOqIk32Wk1CyPGmTT5d1o6YvQ63GsfXzI2JxAAiBjGgfSb1t4z/QYzl/GG2+Gvz+EyUU6I/05GiPDTC+D6Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7414},"main":"b24.js","type":"module","gitHead":"e1920b7d44e13bb423e1d7abd17948b4cdcaa746","scripts":{"test":"echo \"No tests\" && exit 0","pack:dry":"npm pack --dry-run"},"_npmUser":{"name":"andrey4emk","email":"andrey4emk2@gmail.com"},"repository":{"url":"git+ssh://git@github.com/andrey4emk/npm_appBackB24.git","type":"git"},"_npmVersion":"11.5.1","description":"Bitrix24 OAuth helpers for Node.js projects","directories":{},"_nodeVersion":"24.7.0","dependencies":{"dotenv":"^17.2.3","@bitrix24/b24jssdk":"^0.5.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/npm-appbackb24_0.2.1_1761854893292_0.8747143269070359","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Deprecated — use @andrey4emk/npm-app-back-b24"},"0.2.2":{"name":"@andrey4emk/npm-appbackb24","version":"0.2.2","keywords":[],"author":{"name":"andrey4emk"},"license":"MIT","_id":"@andrey4emk/npm-appbackb24@0.2.2","maintainers":[{"name":"andrey4emk","email":"andrey4emk2@gmail.com"}],"homepage":"https://github.com/andrey4emk/npm_appBackB24#readme","bugs":{"url":"https://github.com/andrey4emk/npm_appBackB24/issues"},"dist":{"shasum":"1e22807a6f65afbf0708929d7c72a05261dad7a2","tarball":"https://registry.npmjs.org/@andrey4emk/npm-appbackb24/-/npm-appbackb24-0.2.2.tgz","fileCount":4,"integrity":"sha512-X/z/Xb3ITlrIXtdX3MOIV3qt8gBDusEvcvTxsQ1LvS5C2SVDZvk3V9jL9zGnzhO97UsoIDEW07XvITogJVgq8Q==","signatures":[{"sig":"MEUCIGh9i/a9KfK9PwgqhK0X4cwC2KEXe/pqLRByM3YngClpAiEAtG2mqmHDMiUQzTD/mTfb1UgY0V+HUWceeGubhC5KkGA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11624},"main":"b24.js","type":"module","gitHead":"984d3a0557c14585503ee2fff1c7efe4ba77f8a2","scripts":{"test":"echo \"No tests\" && exit 0","pack:dry":"npm pack --dry-run"},"_npmUser":{"name":"andrey4emk","email":"andrey4emk2@gmail.com"},"repository":{"url":"git+ssh://git@github.com/andrey4emk/npm_appBackB24.git","type":"git"},"_npmVersion":"11.5.1","description":"Bitrix24 OAuth helpers for Node.js projects","directories":{},"_nodeVersion":"24.7.0","dependencies":{"luxon":"^3.4.4","dotenv":"^17.2.3","@bitrix24/b24jssdk":"^0.5.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/npm-appbackb24_0.2.2_1761857853887_0.2521424568427175","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Deprecated — use @andrey4emk/npm-app-back-b24"},"0.2.3":{"name":"@andrey4emk/npm-appbackb24","version":"0.2.3","keywords":[],"author":{"name":"andrey4emk"},"license":"MIT","_id":"@andrey4emk/npm-appbackb24@0.2.3","maintainers":[{"name":"andrey4emk","email":"andrey4emk2@gmail.com"}],"homepage":"https://github.com/andrey4emk/npm_appBackB24#readme","bugs":{"url":"https://github.com/andrey4emk/npm_appBackB24/issues"},"dist":{"shasum":"ea0ae4351ef0656a7946c6cd6a9a28601abc0f7c","tarball":"https://registry.npmjs.org/@andrey4emk/npm-appbackb24/-/npm-appbackb24-0.2.3.tgz","fileCount":4,"integrity":"sha512-ev7RikQtauka4MlFkq6x6zZfiT/MpAs0WtKrWFvAt2+BO3YVrRGJk05wm8eJ25Fca3Gtx2hLMnDLvdUTdIQ6aA==","signatures":[{"sig":"MEQCIDrP9ojDiw7X+e+KEn8N1yhiS4Zg7V0YgXT7qSNG17AYAiAL5unW+a2NW8MXJi6kBp+kn+Cxs79kL1oXj+k8NgTzSg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14340},"main":"b24.js","type":"module","gitHead":"28e6bb40002562d7eb742c389c5eb393d95f5ab8","scripts":{"test":"echo \"No tests\" && exit 0","pack:dry":"npm pack --dry-run"},"_npmUser":{"name":"andrey4emk","email":"andrey4emk2@gmail.com"},"repository":{"url":"git+ssh://git@github.com/andrey4emk/npm_appBackB24.git","type":"git"},"_npmVersion":"11.5.1","description":"Bitrix24 OAuth helpers for Node.js projects","directories":{},"_nodeVersion":"24.7.0","dependencies":{"luxon":"^3.4.4","dotenv":"^17.2.3","@bitrix24/b24jssdk":"^0.5.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/npm-appbackb24_0.2.3_1761858194810_0.642692309060571","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Deprecated — use @andrey4emk/npm-app-back-b24"}},"time":{"created":"2025-10-30T12:28:04.432Z","modified":"2025-10-30T21:23:05.882Z","0.1.1":"2025-10-30T12:28:04.727Z","0.2.0":"2025-10-30T12:49:05.289Z","0.2.1":"2025-10-30T20:08:13.479Z","0.2.2":"2025-10-30T20:57:34.074Z","0.2.3":"2025-10-30T21:03:15.031Z"},"bugs":{"url":"https://github.com/andrey4emk/npm_appBackB24/issues"},"author":{"name":"andrey4emk"},"license":"MIT","homepage":"https://github.com/andrey4emk/npm_appBackB24#readme","keywords":[],"repository":{"url":"git+ssh://git@github.com/andrey4emk/npm_appBackB24.git","type":"git"},"description":"Bitrix24 OAuth helpers for Node.js projects","maintainers":[{"name":"andrey4emk","email":"andrey4emk2@gmail.com"}],"readme":"# npm_appBackB24\n\nУтилиты для работы с Bitrix24 OAuth на основе `@bitrix24/b24jssdk`.\n\n## Установка\n\n```bash\nnpm install @andrey4emk/npm-appbackb24\n```\n\n## Использование\n\n```js\nimport { create, refresh, save } from \"@andrey4emk/npm-appbackb24\";\nimport { AuthB24Model } from \"./models/AuthB24.js\"; // пример модели\n\nconst b24Client = await create(AuthB24Model);\nconst refreshResult = await refresh(AuthB24Model);\n\napp.post(\"/b24/auth\", (req, res) => save(req, res, AuthB24Model));\n```\n\n## API\n\n-   `create(AuthB24Model)` — создаёт клиента `B24OAuth` с использованием сохранённых в БД токенов.\n-   `refresh(AuthB24Model)` — продлевает токены через Bitrix24 и обновляет запись в БД.\n-   `save(req, res, AuthB24Model)` — HTTP-обработчик для сохранения набора токенов из `req.body`.\n\n-   `error({ dataTask, $b24 })` — утилита для создания служебной задачи в Bitrix24 при ошибках/событиях. Сначала проверяет, сколько задач с таким `TITLE` уже создано (через `tasks.task.list`), и если их меньше чем `maxTasks`, создаёт новую задачу (`tasks.task.add`).\n\n### Возвращаемые значения\n\n-   [`makeAuthParams`](b24.js) — промис, который резолвится объектом `{ AuthParams, secret }` для Bitrix24 SDK.\n-   [`create`](b24.js) — промис с экземпляром `B24OAuth`, готовым к вызовам REST API.\n-   [`refresh`](b24.js) — промис с объектом `{ error: boolean, message: string }`, описывающим статус продления.\n-   [`save`](b24.js) — HTTP-ответ, отправляющий JSON `{ status, message }` с кодом `201` при успехе или `400/500` при ошибках.\n-   [`error`](b24.js) — промис с объектом `{ error: boolean, message: string, result? }`.\n    -   В случае успеха возвращает `{ error: false, message: 'Задача создана в Битрикс24.', result }`, где `result` — ответ API `tasks.task.add`.\n    -   Если задач уже больше или равно `maxTasks`, возвращает `{ error: false, message: 'Превышено максимальное количество задач...' }` и не создаёт новую задачу.\n    -   В случае ошибки возвращает `{ error: true, message: 'Не удалось создать задачу в Битрикс24: <текст ошибки>' }`.\n\nПараметры функции `error` (передаются как один объект):\n\n-   `dataTask` — объект с настройками задачи. Поддерживаемые поля:\n\n    -   `title` (string) — заголовок задачи (обязательное).\n    -   `description` (string) — описание (опционально).\n    -   `createdBy` (number) — ID создателя (по умолчанию `138`).\n    -   `responsibleId` (number) — ID ответственного (по умолчанию `1`).\n    -   `deadline` (ISO string) — дедлайн задачи; если не задан, используется `DateTime.now().plus({ days: 1 })`.\n    -   `groupId` (number|null) — группа, опционально.\n    -   `accomplices` (array) — массив соисполнителей.\n    -   `maxTasks` (number) — максимум существующих задач с таким названием (по умолчанию `100`).\n    -   `entityTypeAbbr` (string) — код CRM сущности для `UF_CRM_TASK`.\n\n-   `$b24` — экземпляр SDK/клиента Bitrix24 с методом `callMethod(method, params)`.\n\nПобочные эффекты:\n\n-   Функция вызывает методы Bitrix24 через `$b24.callMethod` и может создавать задачи в вашей облачной системе Bitrix24.\n-   Убедитесь, что `$b24` авторизован и имеет доступ на создание задач.\n\n### Переменные окружения\n\n-   `APP_B24_DOMEN`\n-   `APP_B24_CLIENT_ID`, `APP_B24_CLIENT_SECRET`\n-   `APP_B24_CLIENT_ID_DEV`, `APP_B24_CLIENT_SECRET_DEV`\n-   `APP_ENV` (`DEV` или иное значение)\n\nДополнительные переменные (имена совпадают с теми, что используются в `b24.js`):\n\n-   `APP_NAME` — название приложения, используется при создании задач через `error`.\n\nНазначение переменных:\n\n-   `APP_B24_DOMEN` — домен Bitrix24, для которого хранится запись авторизации в БД.\n-   `APP_B24_CLIENT_ID`, `APP_B24_CLIENT_SECRET` — клиентские креденшелы для рабочего (production) приложения.\n-   `APP_B24_CLIENT_ID_DEV`, `APP_B24_CLIENT_SECRET_DEV` — креденшелы для DEV окружения, используются при `APP_ENV == 'DEV'`.\n-   `APP_ENV` — определяет, какие креденшелы использовать (например, `DEV`).\n-   `APP_NAME` — читабельное имя приложения, добавляется в описание задач, создаваемых функцией `error`.\n\nНастройте их перед использованием.\n\n## Скрипты\n\n-   `npm run test` — заглушка тестов.\n-   `npm run pack:dry` — предпросмотр содержимого пакета.\n","readmeFilename":"README.md"}