flamerest 1.0.25 → 1.0.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -1
- package/REST.d.ts +2 -1
- package/REST.js +18 -7
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -20,4 +20,8 @@ window.REST = new FLAMEREST('localhost');
|
|
|
20
20
|
|
|
21
21
|
# Create and Update
|
|
22
22
|
|
|
23
|
-
Just field list, but any field can be HTML Input, or FileList (automatically
|
|
23
|
+
Just field list, but any field can be HTML Input [type=file], Clipboard object, DataTransfer [Drag&Drop/Clipboard] or FileList (automatically upload any of that)
|
|
24
|
+
|
|
25
|
+
# Delete
|
|
26
|
+
|
|
27
|
+
Function `Remove`. Can delete row by primaryKey - second parameter, or mass delete by fields condition - third parameter with fields
|
package/REST.d.ts
CHANGED
|
@@ -51,8 +51,9 @@ export function create(table: string, values: object)
|
|
|
51
51
|
* Удалить запись
|
|
52
52
|
* @param table
|
|
53
53
|
* @param id
|
|
54
|
+
* @param byFields Если указан, удаляет по этим параметрам
|
|
54
55
|
*/
|
|
55
|
-
export function remove(table: string, id: number | string)
|
|
56
|
+
export function remove(table: string, id: number | string, byFields: object)
|
|
56
57
|
|
|
57
58
|
/**
|
|
58
59
|
* Редактировать значения
|
package/REST.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
class FLAMEREST {
|
|
3
3
|
|
|
4
|
-
constructor(server_address, localhost_endpoint, unauthorized_callback) {
|
|
4
|
+
constructor(server_address, localhost_endpoint, unauthorized_callback, version) {
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Адрес серва
|
|
@@ -25,6 +25,11 @@ class FLAMEREST {
|
|
|
25
25
|
*/
|
|
26
26
|
this.unauthorized_callback = unauthorized_callback;
|
|
27
27
|
|
|
28
|
+
/**
|
|
29
|
+
* Версия api
|
|
30
|
+
*/
|
|
31
|
+
this.version = version ? version : 'v1';
|
|
32
|
+
|
|
28
33
|
}
|
|
29
34
|
|
|
30
35
|
install(Vue, options) {
|
|
@@ -300,7 +305,7 @@ class FLAMEREST {
|
|
|
300
305
|
let responseType = "json";
|
|
301
306
|
|
|
302
307
|
// Генерим запрос
|
|
303
|
-
let query = this.SERVER + '/api/' + table;
|
|
308
|
+
let query = this.SERVER + '/api/' + this.version + '/' + table;
|
|
304
309
|
|
|
305
310
|
let json = {};
|
|
306
311
|
|
|
@@ -376,7 +381,7 @@ class FLAMEREST {
|
|
|
376
381
|
// Подготовить значения
|
|
377
382
|
await this.prepare(values);
|
|
378
383
|
|
|
379
|
-
return this.request(this.SERVER + '/api/' + table + '/create', JSON.stringify(values), 'POST');
|
|
384
|
+
return this.request(this.SERVER + '/api/' + this.version + '/' + table + '/create', JSON.stringify(values), 'POST');
|
|
380
385
|
|
|
381
386
|
}
|
|
382
387
|
|
|
@@ -384,13 +389,17 @@ class FLAMEREST {
|
|
|
384
389
|
* Удалить запись
|
|
385
390
|
* @param table
|
|
386
391
|
* @param id
|
|
392
|
+
* @param byFields
|
|
387
393
|
*/
|
|
388
|
-
remove(table, id) {
|
|
394
|
+
remove(table, id = 0, byFields = null) {
|
|
389
395
|
|
|
390
396
|
// Нормализуем имена таблиц
|
|
391
397
|
table = table.replace(/_/g, "");
|
|
392
398
|
|
|
393
|
-
|
|
399
|
+
params = {};
|
|
400
|
+
if(byFields instanceof Object) params = byFields;
|
|
401
|
+
|
|
402
|
+
return this.request(this.SERVER + '/api/' + this.version + '/' + table + '/delete?id=' + id, params, 'DELETE');
|
|
394
403
|
|
|
395
404
|
}
|
|
396
405
|
|
|
@@ -408,7 +417,7 @@ class FLAMEREST {
|
|
|
408
417
|
// Подготовить значения
|
|
409
418
|
await this.prepare(values);
|
|
410
419
|
|
|
411
|
-
return this.request(this.SERVER + '/api/' + table + '/update?id=' + ID, JSON.stringify(values), 'PATCH');
|
|
420
|
+
return this.request(this.SERVER + '/api/' + this.version + '/' + table + '/update?id=' + ID, JSON.stringify(values), 'PATCH');
|
|
412
421
|
}
|
|
413
422
|
|
|
414
423
|
/**
|
|
@@ -441,7 +450,7 @@ class FLAMEREST {
|
|
|
441
450
|
|
|
442
451
|
|
|
443
452
|
/**
|
|
444
|
-
* Подготовить объект под загрузку: загрузить данные из элементов [type=file]
|
|
453
|
+
* Подготовить объект под загрузку: загрузить данные из элементов Input [type=file] / Clipboard / DataTransfer [Drag&Drop/Clipboard]
|
|
445
454
|
* @param {object} values
|
|
446
455
|
*/
|
|
447
456
|
async prepare(values) {
|
|
@@ -450,6 +459,8 @@ class FLAMEREST {
|
|
|
450
459
|
for (let val in values) {
|
|
451
460
|
// Преобразуем
|
|
452
461
|
if (values[val] instanceof HTMLInputElement && values[val].type === 'file') values[val] = values[val].files;
|
|
462
|
+
if (values[val] instanceof ClipboardEvent) values[val] = values[val].clipboardData.files;
|
|
463
|
+
if (values[val] instanceof DataTransfer) values[val] = values[val].files;
|
|
453
464
|
if (values[val] instanceof FileList) {
|
|
454
465
|
let newValues = [];
|
|
455
466
|
values[val] = Array.from(values[val]);
|