Изменения от Главреда ГитЖС | 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();
|
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(содержимое) {
|
||||||
мир.архивПриложения = содержимое;
|
мир.архив = содержимое;
|
||||||
мир.уведомить("скачали архив приложения");
|
мир.уведомить("скачали архив приложения");
|
||||||
},
|
},
|
||||||
function(ошибка) {
|
function(ошибка) {
|
||||||
|
|||||||
@@ -7,4 +7,8 @@
|
|||||||
скачали архив приложения
|
скачали архив приложения
|
||||||
разобрать архив приложения
|
разобрать архив приложения
|
||||||
разобрали архив приложения
|
разобрали архив приложения
|
||||||
|
собрать список модулей из архива
|
||||||
|
собрали список модулей из архива
|
||||||
|
собрать описания модулей из архива
|
||||||
|
собрали описания модулей из архива
|
||||||
сохранить модули приложения из архива
|
сохранить модули приложения из архива
|
||||||
Reference in New Issue
Block a user