1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2026-06-20 09:19:27 +02:00

Доработка генерации документов

This commit is contained in:
Anton Titovets
2026-01-27 15:11:22 +03:00
parent 67f531d183
commit 2b975fc367
3 changed files with 76 additions and 16 deletions
+66 -9
View File
@@ -41,9 +41,7 @@
ОсновнойЯзык = ДанныеПроекта.ПолучитьЗначениеНастройки("localization.mainLang");
КаталогШаблонов = ДанныеПроекта.ПолучитьЗначениеНастройки("paths.templatesSrc");
МассивДанныхМодулей = Новый Массив;
ЧтениеJSON = Новый ЧтениеJSON();
ЧтениеJSON.ОткрытьФайл("./media/catalogs/names.json");
ИменаБиблиотек = ПрочитатьJSON(ЧтениеJSON);
@@ -62,6 +60,8 @@
Для Каждого Язык Из Языки Цикл
МассивДанныхМодулей = Новый Массив;
ТекущийЯзык = Язык;
СПодкаталогами = Истина;
Расположение = "./src/" + Язык + "/OInt";
@@ -88,7 +88,7 @@
СоздатьЗаглушкиИнструкций(КаталогИнструкцийЛокализация);
КонецЕсли;
СоздатьФайлSidebars();
СоздатьФайлыIndexИSidebars();
КаталогMelezhНачальный = СтрШаблон("./Melezh/docs/%1/md/Melezh", Язык);
КаталогMelezhКонечный = СтрШаблон("./docs/%1/md/Addons/Melezh", Язык);
@@ -351,7 +351,7 @@
КонецПроцедуры
Процедура СоздатьФайлSidebars()
Процедура СоздатьФайлыIndexИSidebars()
ПутьSidebars = ДанныеПроекта.ПолучитьЗначениеНастройкиЛокализации("docsMdSrc", ТекущийЯзык) + "sidebars.js";
@@ -367,11 +367,12 @@
ФайлШаблонаБиблиотеки = ОбъединитьПути(КаталогШаблонов, "sidebars_lib.txt");
ТекстШаблонаБиблиотеки = ПолучитьСтрокуИзДвоичныхДанных(Новый ДвоичныеДанные(ФайлШаблонаБиблиотеки));
МассивКатегорий = Новый Массив;
МассивКатегорий = Новый Массив;
ОбщийМассивБиблиотек = Новый Массив;
Для Каждого Категория Из СписокКатегорий Цикл
МассивБиблиотек = Новый Массив;
СписокБиблиотек = Новый СписокЗначений();
Для Каждого Данные Из МассивДанныхМодулей Цикл
@@ -381,13 +382,21 @@
Если Данные["Категория"] = Категория.Ключ Тогда
ТекущееОписание = СтрШаблон(ТекстШаблонаБиблиотеки, Данные["Библиотека"], Данные["Представление" + ТРег(ТекущийЯзык)]);
МассивБиблиотек.Добавить(ТекущееОписание);
Представление = Данные["Представление" + ТРег(ТекущийЯзык)];
ТекущееОписание = СтрШаблон(ТекстШаблонаБиблиотеки, Данные["Библиотека"], Представление);
СписокБиблиотек.Добавить(ТекущееОписание, Данные["Библиотека"]);
КонецЕсли;
КонецЦикла;
СписокБиблиотек.СортироватьПоПредставлению();
МассивБиблиотек = СписокБиблиотек.ВыгрузитьЗначения();
Для Каждого Библиотека Из СписокБиблиотек Цикл
ОбщийМассивБиблиотек.Добавить(Библиотека.Представление);
КонецЦикла;
ТекущаяКатегория = СтрШаблон(ТекстШаблонаКатегории
, Категория.Значение
, Категория.Ключ
@@ -399,7 +408,55 @@
ТекущийSidebars = СтрШаблон(ТекстШаблонаSidebars, СтрСоединить(МассивКатегорий, Символы.ПС + " "));
CommonTools.ЗаписатьТекст(ТекущийSidebars, ПутьSidebars);
ШаблонБлокаНавигации = "<div>
|%1
|</div>";
МассивЭлементов = Новый Массив;
ШаблонЭлементаНавигации = "<a href=""/docs/Instructions/%1/""><img src={require('../../static/img/APIs/%1.png').default} width=""32"" class=""wp_logo""/></a>";
Для Каждого Библиотека Из ОбщийМассивБиблиотек Цикл
МассивЭлементов.Добавить(СтрШаблон(ШаблонЭлементаНавигации, Библиотека));
КонецЦикла;
БлокНавигации = СтрШаблон(ШаблонБлокаНавигации, СтрСоединить(МассивЭлементов, Символы.ПС));
ПутьВступительногоДокумента = СтрШаблон("./docs/%1/md/Instructions/Start.md");
ТекстовыйДокумент = Новый ТекстовыйДокумент();
ТекстовыйДокумент.Прочитать(ПутьВступительногоДокумента);
ЧислоСтрок = ТекстовыйДокумент.КоличествоСтрок();
СтрокаНачала = Неопределено;
СтрокаОкончания = Неопределено;
Для Н = 1 По ЧислоСтрок Цикл
Если СтрНайти(ТекстовыйДокумент.ПолучитьСтроку(Н), "AUTOGENERATED START") > 0 Тогда
СтрокаНачала = Н;
КонецЕсли;
Если СтрНайти(ТекстовыйДокумент.ПолучитьСтроку(Н), "AUTOGENERATED END") > 0 Тогда
СтрокаОкончания = Н;
КонецЕсли;
Если СтрокаНачала <> Неопределено И СтрокаОкончания <> Неопределено Тогда
Прервать;
КонецЕсли;
КонецЦикла;
Если СтрокаНачала = Неопределено Или СтрокаОкончания = Неопределено Тогда
CommonTools.СообщитьПроцесс("AUTOGENERATED block not found. Skip...");
КонецЕсли;
ЧислоУдаляемых = СтрокаОкончания - СтрокаНачала - 1;
Для Н = 1 По ЧислоУдаляемых Цикл
ТекстовыйДокумент.УдалитьСтроку(СтрокаНачала + 2);
КонецЦикла;
КонецПроцедуры
#КонецОбласти
+2 -1
View File
@@ -13,6 +13,7 @@ The project code is organized as a set of independent modules, each responsible
<br/>
<!--AUTOGENERATED START-->
Fast navigation:
<div>
<a href="/docs/Instructions/Telegram/"><img src={require('../../static/img/APIs/Telegram.png').default} width="32" class="wp_logo"/></a>
@@ -49,8 +50,8 @@ Fast navigation:
<a href="/docs/Instructions/GRPC/"><img src={require('../../static/img/APIs/gRPC.png').default} width="32" class="wp_logo"/></a>
<a href="/docs/Instructions/SSH/"><img src={require('../../static/img/APIs/SSH.png').default} width="32" class="wp_logo"/></a>
<a href="/docs/Instructions/RCON/"><img src={require('../../static/img/APIs/RCON.png').default} width="32" class="wp_logo"/></a>
</div>
<!--AUTOGENERATED END-->
<br/>
+8 -6
View File
@@ -4,7 +4,7 @@ sidebar_class_name: NachaloRaboty
keywords: [1C, 1С, 1С:Предприятие, 1С:Предприятие 8.3, API, Интеграция, Сервисы, Обмен, OneScript, CLI, HTTP, Расширение]
---
# Добро пожаловать!
# Добро пожаловать
![OPI](../../static/img/logo_long.webp)
@@ -14,8 +14,9 @@ keywords: [1C, 1С, 1С:Предприятие, 1С:Предприятие 8.3,
<br/>
Быстрый переход по документации:
<div>
<!--AUTOGENERATED START-->
Быстрый переход:
<div>
<a href="/docs/Instructions/Telegram/"><img src={require('../../static/img/APIs/Telegram.png').default} width="32" class="wp_logo"/></a>
<a href="/docs/Instructions/Bitrix24/"><img src={require('../../static/img/APIs/Bitrix24.png').default} width="32" class="wp_logo"/></a>
<a href="/docs/Instructions/CDEK/"><img src={require('../../static/img/APIs/CDEK.png').default} width="32" class="wp_logo"/></a>
@@ -50,13 +51,14 @@ keywords: [1C, 1С, 1С:Предприятие, 1С:Предприятие 8.3,
<a href="/docs/Instructions/GRPC/"><img src={require('../../static/img/APIs/gRPC.png').default} width="32" class="wp_logo"/></a>
<a href="/docs/Instructions/SSH/"><img src={require('../../static/img/APIs/SSH.png').default} width="32" class="wp_logo"/></a>
<a href="/docs/Instructions/RCON/"><img src={require('../../static/img/APIs/RCON.png').default} width="32" class="wp_logo"/></a>
</div>
</div>
<!--AUTOGENERATED END-->
<br/>
## Начало работы
Релизы библиотеки выходят в пяти вариантах:
Релизы библиотеки выходят в пяти вариантах:
- Как CLI приложение для Windows и Linux (exe, rpm, deb)
- Как XML файлы расширения для загрузки через конфигуратор
@@ -64,7 +66,7 @@ keywords: [1C, 1С, 1С:Предприятие, 1С:Предприятие 8.3,
- Как отдельный файл расширения формата cfe
- Как OneScript пакет расширения ospx
Вне зависимости от выбранного способа установки, получать файлы необходимо из [Release](https://github.com/Bayselonarrend/OpenIntegrations/releases), так как в самих файлах репозитория бывают промежуточные данные и функции, находящиеся в процессе разработки.
Вне зависимости от выбранного способа установки, получать файлы необходимо из [Release](https://github.com/Bayselonarrend/OpenIntegrations/releases), так как в самих файлах репозитория бывают промежуточные данные и функции, находящиеся в процессе разработки.
Подробнее о каждом варианте релиза в разделе [Про варианты релизов](/docs/Start/Release-variants)