Изменения от Главреда ГитЖС | Changes of GitJS Glavred
This commit is contained in:
117
🗜️.js
117
🗜️.js
@@ -5,6 +5,108 @@ const КЛЮЧЕВОЙ_МОДУЛЬ = "https://git.opengamestudio.org/MAOH/CYMA/
|
||||
// // // //
|
||||
|
||||
|
||||
СохранитьМодулиПриложенияИзАрхива = мир =>
|
||||
{
|
||||
console.debug("сохранить модули приложения из архива");
|
||||
|
||||
var номер = 0;
|
||||
const ук = мир.списокМодулейИзАрхива[номер];
|
||||
const описание = мир.описанияМодулейИзАрхива[номер];
|
||||
var список = Object.keys(описание.структура).sort();
|
||||
console.debug("список", список);
|
||||
|
||||
var модуль =
|
||||
new Модуль(
|
||||
описание.имя,
|
||||
описание.версия,
|
||||
описание["🏠"],
|
||||
указатель,
|
||||
указатель + "/..",
|
||||
описание.структура
|
||||
);
|
||||
модуль.содержимое = {};
|
||||
|
||||
function собратьМодуль(мир, список, номер, успех, провал)
|
||||
{
|
||||
const файл = список[номер];
|
||||
var свойства = описание.структура[файл];
|
||||
var тип = свойства.двоичный ? "arraybuffer" : "string";
|
||||
var путь = `${номер}${файл}`;
|
||||
console.debug("путь", путь);
|
||||
мир.архив.file(путь).async(тип).then(function(содержимое) {
|
||||
модуль.содержимое[файл] = содержимое;
|
||||
успех();
|
||||
});
|
||||
}
|
||||
|
||||
сделатьПоследовательно(
|
||||
мир,
|
||||
список,
|
||||
собратьМодуль,
|
||||
function() {
|
||||
//мир.уведомить("собрали содержимое модулей из архива");
|
||||
//console.debug("описания", мир.описанияМодулейИзАрхива);
|
||||
console.debug("собранный модуль", модуль);
|
||||
}
|
||||
);
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
СобратьОписанияМодулейИзАрхива = мир =>
|
||||
{
|
||||
мир.описанияМодулейИзАрхива = [];
|
||||
|
||||
function собратьОписание(мир, список, номер, успех, провал)
|
||||
{
|
||||
const ук = список[номер];
|
||||
var файл = `${номер}/0000`;
|
||||
мир.архив.file(файл).async("string").then(function(содержимое) {
|
||||
var описание = мир.разобрать0000(содержимое);
|
||||
мир.описанияМодулейИзАрхива.push(описание);
|
||||
успех();
|
||||
});
|
||||
}
|
||||
|
||||
сделатьПоследовательно(
|
||||
мир,
|
||||
мир.списокМодулейИзАрхива,
|
||||
собратьОписание,
|
||||
function() {
|
||||
мир.уведомить("собрали описания модулей из архива");
|
||||
console.debug("описания", мир.описанияМодулейИзАрхива);
|
||||
}
|
||||
);
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
СобратьСписокМодулейИзАрхива = мир =>
|
||||
{
|
||||
мир.архив.file("gitjs").async("string").then(function(содержимое) {
|
||||
var строки = содержимое.split(/\n/);
|
||||
var список = [];
|
||||
for (var н in строки)
|
||||
{
|
||||
var строка = строки[н];
|
||||
if (строка.length)
|
||||
{
|
||||
список.push(строка);
|
||||
}
|
||||
}
|
||||
мир.списокМодулейИзАрхива = список;
|
||||
мир.уведомить("собрали список модулей из архива");
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
УведомитьОЯкобыНаличииПриложения = мир =>
|
||||
{
|
||||
мир.уведомить("приложение присутствует");
|
||||
@@ -14,20 +116,11 @@ const КЛЮЧЕВОЙ_МОДУЛЬ = "https://git.opengamestudio.org/MAOH/CYMA/
|
||||
// // // //
|
||||
|
||||
|
||||
СохранитьМодулиПриложенияИзАрхива = мир =>
|
||||
{
|
||||
console.debug("сохранить модули приложения их архива");
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
РазобратьАрхивПриложения = мир =>
|
||||
{
|
||||
var zip = new JSZip();
|
||||
zip.loadAsync(мир.архивПриложения).then(function(архив) {
|
||||
мир.архивПриложения = архив;
|
||||
zip.loadAsync(мир.архив).then(function(архив) {
|
||||
мир.архив = архив.folder("MAOH");
|
||||
мир.уведомить("разобрали архив приложения");
|
||||
});
|
||||
};
|
||||
@@ -42,7 +135,7 @@ const КЛЮЧЕВОЙ_МОДУЛЬ = "https://git.opengamestudio.org/MAOH/CYMA/
|
||||
мир.взять(
|
||||
АДРЕС_АРХИВА,
|
||||
function(содержимое) {
|
||||
мир.архивПриложения = содержимое;
|
||||
мир.архив = содержимое;
|
||||
мир.уведомить("скачали архив приложения");
|
||||
},
|
||||
function(ошибка) {
|
||||
|
||||
@@ -7,4 +7,8 @@
|
||||
скачали архив приложения
|
||||
разобрать архив приложения
|
||||
разобрали архив приложения
|
||||
собрать список модулей из архива
|
||||
собрали список модулей из архива
|
||||
собрать описания модулей из архива
|
||||
собрали описания модулей из архива
|
||||
сохранить модули приложения из архива
|
||||
Reference in New Issue
Block a user