{"id":22178057,"url":"https://github.com/fi1a/bitrixrequire","last_synced_at":"2025-03-24T18:26:42.779Z","repository":{"id":65395122,"uuid":"584570485","full_name":"fi1a/bitrixrequire","owner":"fi1a","description":"Модуль 1С-Битрикс \"Обертка над composer для установки зависимостей\"","archived":false,"fork":false,"pushed_at":"2023-03-15T05:23:55.000Z","size":912,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-29T23:16:43.959Z","etag":null,"topics":["bitrix","bitrix-module","composer","composer-package","php"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fi1a.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-01-03T00:16:45.000Z","updated_at":"2024-05-24T14:19:37.000Z","dependencies_parsed_at":"2024-12-02T08:45:26.128Z","dependency_job_id":null,"html_url":"https://github.com/fi1a/bitrixrequire","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fi1a%2Fbitrixrequire","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fi1a%2Fbitrixrequire/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fi1a%2Fbitrixrequire/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fi1a%2Fbitrixrequire/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fi1a","download_url":"https://codeload.github.com/fi1a/bitrixrequire/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245326975,"owners_count":20597126,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bitrix","bitrix-module","composer","composer-package","php"],"created_at":"2024-12-02T08:34:34.877Z","updated_at":"2025-03-24T18:26:42.747Z","avatar_url":"https://github.com/fi1a.png","language":"PHP","readme":"# Модуль 1С-Битрикс \"Обертка над composer для установки зависимостей\"\n\n[![Software License][badge-license]][license]\n[![Support mail][badge-mail]][mail]\n\nЧасто бывает так, что необходимо использовать в модуле пакет распростаняемый через composer. Простое включение\nего в поставку с модулем не решает проблему так как может возникнуть ситуация, что два модуля включили один и тот же пакет два раза.\nДанный модуль представляет собой обертку над composer и решает проблему путем\nвключения зависимостей модулей централизованно через composer.\nЭто можно сделать используя предоставляемый API при установке ваших модулей.\n\nТакже модуль имеет интерфейс с функцией управления зависимостями (добавления, обновления и удаления пакетов).\nДанная возможность будет полезна при отсутствии доступа к консоли.\n\nПосле установки модуль будет доступен в меню: Настройки \u003e Установка зависимостей.\n\n## Установка модуля\n\nМодуль можно установить из Маркетплейса 1С-Битрикс \n[\"Обертка над composer для установки зависимостей\"](http://marketplace.1c-bitrix.ru/solutions/fi1a.bitrixrequire/)\n\n## Изображения модуля\n\nИнтерфейс управления зависимостями в админке 1С-Битрикс.\n\n![Интерфейс управления зависимостями в админке 1С-Битрикс](images/fi1a.bitrixrequire-screen-1.png)\n\nНастройки расположения домашней директории composer.\n\n![Настройки расположения домашней директории composer](images/fi1a.bitrixrequire-screen-2.png)\n\n## Установка и удаление пакетов модуля\n\nПри установке вашего модуля можно вызвать метод `require` класса `Fi1a\\BitrixRequire\\ModulePackages`\nдля установки пакета через composer с указанной версией\n(перед вызовом необходимо проверить установлен ли модуль \"fi1a.bitrixrequire\").\n\nПример:\n\n```php\nuse Fi1a\\BitrixRequire\\ModulePackages;\n\n$modulePackages = new ModulePackages();\n$result = $modulePackages-\u003erequire('fi1a.bitrixrequire', 'fi1a/format', '^2.0');\n$result-\u003eisSuccess(); // true\n```\n\nАргументы метода `require` класса `Fi1a\\BitrixRequire\\ModulePackages`:\n\n| Аргумент                 | Описание                                       |\n|--------------------------|------------------------------------------------|\n| string $moduleId         | Идентификатор вашего модуля                    |\n| string $package          | Название пакета от которого зависит ваш модуль |\n| ?string $version = null  | Версия пакета                                  |\n\nПри удалении вашего модуля следует вызвать метод `remove` класса `Fi1a\\BitrixRequire\\ModulePackages`\nдля удаления информации о зависимости модуля от указанного пакета:\n\n```php\nuse Fi1a\\BitrixRequire\\ModulePackages;\n\n$modulePackages = new ModulePackages();\n$result = $modulePackages-\u003eremove('fi1a.bitrixrequire', 'fi1a/format');\n$result-\u003eisSuccess(); // true\n```\n\nАргументы метода `remove` класса `Fi1a\\BitrixRequire\\ModulePackages`:\n\n| Аргумент                 | Описание                                       |\n|--------------------------|------------------------------------------------|\n| string $moduleId         | Идентификатор вашего модуля                    |\n| string $package          | Название пакета от которого зависит ваш модуль |\n\n## Подключение vendor/autoload.php\n\nДля подключения vendor/autoload.php достаточно в файле php_interface/init.php подключить модуль 'fi1a.bitrixrequire':\n\n```php\nuse Bitrix\\Main\\Loader;\n\nLoader::includeModule('fi1a.bitrixrequire');\n```\n\n[badge-license]: https://img.shields.io/github/license/fi1a/bitrixvalidation?style=flat-square\n[badge-mail]: https://img.shields.io/badge/mail-support%40fi1a.ru-brightgreen\n\n[license]: https://github.com/fi1a/bitrixvalidation/blob/master/LICENSE\n[mail]: mailto:support@fi1a.ru","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffi1a%2Fbitrixrequire","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffi1a%2Fbitrixrequire","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffi1a%2Fbitrixrequire/lists"}