Browse Source

Изменения от Главреда ГитЖС | Changes of GitJS Glavred

master
Главред | Glavred 3 years ago
parent
commit
2f8c262382
23 changed files with 330 additions and 64 deletions
  1. +19
    -14
      0000
  2. +0
    -0
      00🕸jquery_3.5.1🕸jquery-3.5.1.min.js
  3. +5
    -4
      01🕸uikit_3.2.0🕸.js
  4. +0
    -0
      01🕸uikit_3.2.0🕸.череда
  5. +0
    -0
      01🕸uikit_3.2.0🕸uikit-icons.min.js
  6. +0
    -0
      01🕸uikit_3.2.0🕸uikit.min.css
  7. +0
    -0
      01🕸uikit_3.2.0🕸uikit.min.js
  8. +3
    -9
      02🕸UIK🕸.js
  9. +0
    -0
      02🕸UIK🕸.череда
  10. +22
    -0
      03🕸isomorphic-git_1.7.2🕸.js
  11. +2
    -0
      03🕸isomorphic-git_1.7.2🕸.череда
  12. +167
    -0
      03🕸isomorphic-git_1.7.2🕸index.js
  13. +10
    -0
      03🕸isomorphic-git_1.7.2🕸index.umd.min.js
  14. +2
    -0
      03🕸isomorphic-git_1.7.2🕸lightning-fs.min.js
  15. +0
    -0
      70🕸механика🕸.js
  16. +0
    -0
      70🕸механика🕸.череда
  17. +0
    -0
      80🕸морда🕸.js
  18. +0
    -0
      80🕸морда🕸.череда
  19. +83
    -0
      81🕸➕🕸.js
  20. +11
    -0
      81🕸➕🕸.череда
  21. +0
    -29
      81🕸➕🕸🎬.js
  22. +0
    -6
      81🕸➕🕸🎬.череда
  23. +6
    -2
      81🕸➕🕸🙈.html

+ 19
- 14
0000 View File

@@ -2,23 +2,28 @@
0.1.0
https://git.opengamestudio.org/kornerr/AMYP

x /00🕸jquery🕸jquery-3.5.1.min.js
/01🕸uikit🕸uikit-icons.min.js
/01🕸uikit🕸uikit.min.css
/01🕸uikit🕸uikit.min.js
x /01🕸uikit🕸🎬.js
/01🕸uikit🕸🎬.череда
x /02🕸UIK🕸🎬.js
/02🕸UIK🕸🎬.череда
x /00🕸jquery_3.5.1🕸jquery-3.5.1.min.js
x /01🕸uikit_3.2.0🕸.js
/01🕸uikit_3.2.0🕸.череда
/01🕸uikit_3.2.0🕸uikit-icons.min.js
/01🕸uikit_3.2.0🕸uikit.min.css
/01🕸uikit_3.2.0🕸uikit.min.js
x /02🕸UIK🕸.js
/02🕸UIK🕸.череда
/02🕸UIK🕸🙈.css
/02🕸UIK🕸🙈.html
x /70🕸механика🕸🎬.js
/70🕸механика🕸🎬.череда
x /80🕸морда🕸🎬.js
/80🕸морда🕸🎬.череда
x /03🕸isomorphic-git_1.7.2🕸.js
/03🕸isomorphic-git_1.7.2🕸.череда
/03🕸isomorphic-git_1.7.2🕸index.js
/03🕸isomorphic-git_1.7.2🕸index.umd.min.js
/03🕸isomorphic-git_1.7.2🕸lightning-fs.min.js
x /70🕸механика🕸.js
/70🕸механика🕸.череда
x /80🕸морда🕸.js
/80🕸морда🕸.череда
x /80🕸морда🕸📖.js
x /81🕸➕🕸🎬.js
/81🕸➕🕸🎬.череда
x /81🕸➕🕸.js
/81🕸➕🕸.череда
/81🕸➕🕸🙈.html
x /90🕸🎬.js
/90🕸🎬.череда

00🕸jquery🕸jquery-3.5.1.min.js → 00🕸jquery_3.5.1🕸jquery-3.5.1.min.js View File


01🕸uikit🕸🎬.js → 01🕸uikit_3.2.0🕸.js View File

@@ -1,10 +1,11 @@
УстановитьUIkit = мир =>
{
var м = мир.модули.модульПоУказателю(УКАЗАТЕЛЬ_ЭТОГО_МОДУЛЯ);

var css = м.содержимое["/01🕸uikit🕸uikit.min.css"];
var js = м.содержимое["/01🕸uikit🕸uikit.min.js"];
var iconsJS = м.содержимое["/01🕸uikit🕸uikit-icons.min.js"];
var префикс = ИМЯ_ЭТОГО_ФАЙЛА.substring(0, ИМЯ_ЭТОГО_ФАЙЛА.length - 3);
var css = м.содержимое[префикс + "uikit.min.css"];
var js = м.содержимое[префикс + "uikit.min.js"];
var iconsJS = м.содержимое[префикс + "uikit-icons.min.js"];

// Применить стиль.
var style = document.createElement("style");

01🕸uikit🕸🎬.череда → 01🕸uikit_3.2.0🕸.череда View File


01🕸uikit🕸uikit-icons.min.js → 01🕸uikit_3.2.0🕸uikit-icons.min.js View File


01🕸uikit🕸uikit.min.css → 01🕸uikit_3.2.0🕸uikit.min.css View File


01🕸uikit🕸uikit.min.js → 01🕸uikit_3.2.0🕸uikit.min.js View File


02🕸UIK🕸🎬.js → 02🕸UIK🕸.js View File

@@ -60,15 +60,9 @@
ЗагрузитьМакетUIK = мир =>
{
var м = мир.модули.модульПоУказателю(УКАЗАТЕЛЬ_ЭТОГО_МОДУЛЯ);
var префикс = ИМЯ_ЭТОГО_ФАЙЛА.substring(0, ИМЯ_ЭТОГО_ФАЙЛА.length - 3);
мир.макет = {
"структура": м.содержимое["/02🕸UIK🕸🙈.html"],
"вид": м.содержимое["/02🕸UIK🕸🙈.css"],
"структура": м.содержимое[префикс + "🙈.html"],
"вид": м.содержимое[префикс + "🙈.css"],
};
};



console.debug("обработали модуль UIK")

02🕸UIK🕸🎬.череда → 02🕸UIK🕸.череда View File


+ 22
- 0
03🕸isomorphic-git_1.7.2🕸.js View File

@@ -0,0 +1,22 @@
УстановитьIsomorphicGit = мир =>
{
var м = мир.модули.модульПоУказателю(УКАЗАТЕЛЬ_ЭТОГО_МОДУЛЯ);
var префикс = ИМЯ_ЭТОГО_ФАЙЛА.substring(0, ИМЯ_ЭТОГО_ФАЙЛА.length - 3);

var isogit = м.содержимое[префикс + "index.umd.min.js"];
var http = м.содержимое[префикс + "index.js"];
var lfs = м.содержимое[префикс + "lightning-fs.min.js"];

function загрузитьСкрипт(код)
{
var скрипт = document.createElement("script");
скрипт.innerHTML = код;
document.body.appendChild(скрипт);
}

загрузитьСкрипт(lfs);
загрузитьСкрипт(isogit);

eval(http);
мир.гитHTTP = { request };
};

+ 2
- 0
03🕸isomorphic-git_1.7.2🕸.череда View File

@@ -0,0 +1,2 @@
ручной пуск
установить IsomorphicGit

+ 167
- 0
03🕸isomorphic-git_1.7.2🕸index.js View File

@@ -0,0 +1,167 @@
// https://unpkg.com/isomorphic-git@1.7.2/http/web/index.js
/**
* @typedef {Object} GitProgressEvent
* @property {string} phase
* @property {number} loaded
* @property {number} total
*/

/**
* @callback ProgressCallback
* @param {GitProgressEvent} progress
* @returns {void | Promise<void>}
*/

/**
* @typedef {Object} GitHttpRequest
* @property {string} url - The URL to request
* @property {string} [method='GET'] - The HTTP method to use
* @property {Object<string, string>} [headers={}] - Headers to include in the HTTP request
* @property {AsyncIterableIterator<Uint8Array>} [body] - An async iterator of Uint8Arrays that make up the body of POST requests
* @property {ProgressCallback} [onProgress] - Reserved for future use (emitting `GitProgressEvent`s)
* @property {object} [signal] - Reserved for future use (canceling a request)
*/

/**
* @typedef {Object} GitHttpResponse
* @property {string} url - The final URL that was fetched after any redirects
* @property {string} [method] - The HTTP method that was used
* @property {Object<string, string>} [headers] - HTTP response headers
* @property {AsyncIterableIterator<Uint8Array>} [body] - An async iterator of Uint8Arrays that make up the body of the response
* @property {number} statusCode - The HTTP status code
* @property {string} statusMessage - The HTTP status message
*/

/**
* @callback HttpFetch
* @param {GitHttpRequest} request
* @returns {Promise<GitHttpResponse>}
*/

/**
* @typedef {Object} HttpClient
* @property {HttpFetch} request
*/

// Convert a value to an Async Iterator
// This will be easier with async generator functions.
function fromValue(value) {
let queue = [value];
return {
next() {
return Promise.resolve({ done: queue.length === 0, value: queue.pop() })
},
return() {
queue = [];
return {}
},
[Symbol.asyncIterator]() {
return this
},
}
}

function getIterator(iterable) {
if (iterable[Symbol.asyncIterator]) {
return iterable[Symbol.asyncIterator]()
}
if (iterable[Symbol.iterator]) {
return iterable[Symbol.iterator]()
}
if (iterable.next) {
return iterable
}
return fromValue(iterable)
}

// Currently 'for await' upsets my linters.
async function forAwait(iterable, cb) {
const iter = getIterator(iterable);
while (true) {
const { value, done } = await iter.next();
if (value) await cb(value);
if (done) break
}
if (iter.return) iter.return();
}

async function collect(iterable) {
let size = 0;
const buffers = [];
// This will be easier once `for await ... of` loops are available.
await forAwait(iterable, value => {
buffers.push(value);
size += value.byteLength;
});
const result = new Uint8Array(size);
let nextIndex = 0;
for (const buffer of buffers) {
result.set(buffer, nextIndex);
nextIndex += buffer.byteLength;
}
return result
}

// Convert a web ReadableStream (not Node stream!) to an Async Iterator
// adapted from https://jakearchibald.com/2017/async-iterators-and-generators/
function fromStream(stream) {
// Use native async iteration if it's available.
if (stream[Symbol.asyncIterator]) return stream
const reader = stream.getReader();
return {
next() {
return reader.read()
},
return() {
reader.releaseLock();
return {}
},
[Symbol.asyncIterator]() {
return this
},
}
}

/* eslint-env browser */

/**
* HttpClient
*
* @param {GitHttpRequest} request
* @returns {Promise<GitHttpResponse>}
*/
async function request({
onProgress,
url,
method = 'GET',
headers = {},
body,
}) {
// streaming uploads aren't possible yet in the browser
if (body) {
body = await collect(body);
}
const res = await fetch(url, { method, headers, body });
const iter =
res.body && res.body.getReader
? fromStream(res.body)
: [new Uint8Array(await res.arrayBuffer())];
// convert Header object to ordinary JSON
headers = {};
for (const [key, value] of res.headers.entries()) {
headers[key] = value;
}
return {
url: res.url,
method: res.method,
statusCode: res.status,
statusMessage: res.statusText,
body: iter,
headers: headers,
}
}

var index = { request };

//export default index;
//export { request };

+ 10
- 0
03🕸isomorphic-git_1.7.2🕸index.umd.min.js
File diff suppressed because it is too large
View File


+ 2
- 0
03🕸isomorphic-git_1.7.2🕸lightning-fs.min.js
File diff suppressed because it is too large
View File


70🕸механика🕸🎬.js → 70🕸механика🕸.js View File


70🕸механика🕸🎬.череда → 70🕸механика🕸.череда View File


80🕸морда🕸🎬.js → 80🕸морда🕸.js View File


80🕸морда🕸🎬.череда → 80🕸морда🕸.череда View File


+ 83
- 0
81🕸➕🕸.js View File

@@ -0,0 +1,83 @@
ИмпортироватьХранилище = мир =>
{
(async() => {

await git.clone({
fs: мир.импортХранилища.фс,
http: мир.гитHTTP,
dir: мир.импортХранилища.директория,
url: мир.импортХранилища.хранилище,
corsProxy: мир.импортХранилища.прокси,
});

//мир.уведомить("склонировали хранилище");

})();
};


// // // //


ЗадатьПараметрыИмпортаХранилища = мир =>
{
const хранилище = $(`#окно-добавление-хранилища-гит-хранилище`).val();
const прокси = $(`#окно-добавление-хранилища-гит-прокси`).val();
const имяФС = "git_" + хранилище;
мир.импортХранилища = {
"хранилище": хранилище,
"фс": new LightningFS(имяФС),
"директория": "/",
"прокси": прокси,
};
};


// // // //


ОтобразитьОкноДобавленияХранилища = мир =>
{
UIkit.modal($("#окно-добавление-хранилища")).show();
};


// // // //


ЗадатьПроксиИмпортаПоУмолчанию = мир =>
{
$(`#окно-добавление-хранилища-гит-прокси`).val("https://cors.isomorphic-git.org");
};


// // // //


СоздатьОкноДобавленияХранилища = мир =>
{
var м = мир.модули.модульПоУказателю(УКАЗАТЕЛЬ_ЭТОГО_МОДУЛЯ);
var префикс = ИМЯ_ЭТОГО_ФАЙЛА.substring(0, ИМЯ_ЭТОГО_ФАЙЛА.length - 3);
var содержимое = м.содержимое[префикс + "🙈.html"];
$(document.body).prepend(содержимое);
$(`#окно-добавление-хранилища-гит-учётка`).submit(function(событие) {
событие.preventDefault();
мир.уведомить("кнопка импорта в окне добавления хранилища");
});
};


// // // //


СоздатьКнопкуПлюсВШапке = мир =>
{
мир.кнопкиШапки.push({
"🎃": "шапка-кнопка-плюс",
"💥": "кнопка плюс в шапке",
"🍲": "➕",
});
мир.уведомить("изменили кнопки шапки");
};

+ 11
- 0
81🕸➕🕸.череда View File

@@ -0,0 +1,11 @@
пуск амура
создать кнопку плюс в шапке
создать окно добавления хранилища
задать прокси импорта по умолчанию

кнопка плюс в шапке
отобразить окно добавления хранилища

кнопка импорта в окне добавления хранилища
задать параметры импорта хранилища
импортировать хранилище

+ 0
- 29
81🕸➕🕸🎬.js View File

@@ -1,29 +0,0 @@
ОтобразитьОкноДобавленияХранилища = мир =>
{
UIkit.modal($("#окно-добавление-хранилища")).show();
};


// // // //


ДобавитьОкноДобавленияХранилища = мир =>
{
var м = мир.модули.модульПоУказателю(УКАЗАТЕЛЬ_ЭТОГО_МОДУЛЯ);
var содержимое = м.содержимое["/81🕸➕🕸🙈.html"];
$(document.body).prepend(содержимое);
};


// // // //


ДобавитьКнопкуПлюсВШапку = мир =>
{
мир.кнопкиШапки.push({
"🎃": "шапка-кнопка-плюс",
"💥": "шапки кнопка плюс",
"🍲": "➕",
});
мир.уведомить("изменили кнопки шапки");
};

+ 0
- 6
81🕸➕🕸🎬.череда View File

@@ -1,6 +0,0 @@
пуск амура
добавить кнопку плюс в шапку
добавить окно добавления хранилища
шапки кнопка плюс
отобразить окно добавления хранилища

+ 6
- 2
81🕸➕🕸🙈.html View File

@@ -2,9 +2,13 @@
<div class="uk-modal-dialog">
<button class="uk-modal-close-default" type="button" uk-close></button>
<div class="uk-modal-header">
<h2 class="uk-modal-title">Добавить ⚬ 添加 ⚬ Add</h2>
<h2 class="uk-modal-title">Добавить 🕸 添加 🕸 Add</h2>
</div>
<div id="___окно-со-списком-модулей-список" class="uk-modal-body" uk-overflow-auto>
<form id="окно-добавление-хранилища-гит-учётка" class="uk-padding">
<input id="окно-добавление-хранилища-гит-прокси" class="uk-input uk-margin-small" type="text" placeholder="Прокси 🕸 代理 🕸 Proxy">
<input id="окно-добавление-хранилища-гит-хранилище" class="uk-input uk-margin-small" type="text" placeholder="Хранилище 🕸 存储库 🕸 Repository">
<button class="uk-button uk-button-primary uk-margin-small">Импортировать 🕸 导入 🕸 Import</button>
</form>
</div>
</div>
</div>

Loading…
Cancel
Save