backend-plus 2.0.0-rc.15 → 2.0.0-rc.16
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/lib/backend-plus.d.ts +1 -1
- package/lib/backend-plus.js +7 -7
- package/package.json +4 -4
- package/unlogged/my-ajax.js +26 -20
package/lib/backend-plus.d.ts
CHANGED
|
@@ -76,7 +76,7 @@ export interface ContextForDump extends Context {
|
|
|
76
76
|
forDump?:boolean
|
|
77
77
|
}
|
|
78
78
|
|
|
79
|
-
export type InformProgressFunction=(opts:Error|{data:any}|{start:any}|{message:string}|{message?:string, lengthComputable:boolean, loaded:number, total:number, force?:boolean})=>void
|
|
79
|
+
export type InformProgressFunction=(opts:Error|{data:any}|{start:any}|{message:string}|{idGroup?:string, message?:string, lengthComputable:boolean, loaded:number, total:number, force?:boolean})=>void
|
|
80
80
|
|
|
81
81
|
export interface ProcedureContext extends Context{
|
|
82
82
|
client:Client
|
package/lib/backend-plus.js
CHANGED
|
@@ -1552,17 +1552,17 @@ AppBackend.prototype.addProcedureServices = function addProcedureServices(forUnl
|
|
|
1552
1552
|
});
|
|
1553
1553
|
}else{
|
|
1554
1554
|
if(progressInfo.lengthComputable){
|
|
1555
|
-
if
|
|
1556
|
-
context.lastMessageSended=
|
|
1555
|
+
if (!context.lastMessageSended) {
|
|
1556
|
+
context.lastMessageSended = {}
|
|
1557
|
+
}
|
|
1558
|
+
if(new Date()-(context.lastMessageSended[progressInfo.idGroup]||0) > 500 || progressInfo.force){
|
|
1559
|
+
context.lastMessageSended[progressInfo.idGroup]=new Date();
|
|
1557
1560
|
res.write(JSON.stringify({progress:progressInfo})+"\n");
|
|
1558
1561
|
if(progressInfo.total){
|
|
1559
1562
|
var rate100=Math.floor(progressInfo.loaded*100/progressInfo.total);
|
|
1560
1563
|
var rate1000=Math.floor(progressInfo.loaded*1000/progressInfo.total);
|
|
1561
|
-
|
|
1562
|
-
|
|
1563
|
-
}else{
|
|
1564
|
-
progress2send={message:rate100+'%', ephemeral:true};
|
|
1565
|
-
}
|
|
1564
|
+
var message = rate100<1 && progressInfo.loaded>0 ? '('+(rate1000||'½')+'‰)' : rate100+'%';
|
|
1565
|
+
progress2send={message, ephemeral:true, idGroup:progressInfo.idGroup};
|
|
1566
1566
|
}
|
|
1567
1567
|
}else{
|
|
1568
1568
|
progress2send=null;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "backend-plus",
|
|
3
3
|
"description": "Backend for the anti Pareto rule",
|
|
4
|
-
"version": "2.0.0-rc.
|
|
4
|
+
"version": "2.0.0-rc.16",
|
|
5
5
|
"author": "Codenautas <codenautas@googlegroups.com>",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"repository": "codenautas/backend-plus",
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"numeral": "^2.0.6",
|
|
60
60
|
"pg-promise-strict": "^1.4.0",
|
|
61
61
|
"pikaday": "^1.8.2",
|
|
62
|
-
"pug": "^3.0.
|
|
62
|
+
"pug": "^3.0.3",
|
|
63
63
|
"read-yaml-promise": "^1.0.2",
|
|
64
64
|
"regexplicit": "^0.1.3",
|
|
65
65
|
"require-bro": "^0.3.1",
|
|
@@ -82,7 +82,7 @@
|
|
|
82
82
|
"@types/js-yaml": "^4.0.9",
|
|
83
83
|
"@types/mocha": "^10.0.6",
|
|
84
84
|
"@types/multiparty": "~0.0.36",
|
|
85
|
-
"@types/node": "^20.
|
|
85
|
+
"@types/node": "^20.13.0",
|
|
86
86
|
"@types/nodemailer": "^6.4.15",
|
|
87
87
|
"@types/numeral": "~2.0.5",
|
|
88
88
|
"@types/session-file-store": "^1.2.5",
|
|
@@ -99,7 +99,7 @@
|
|
|
99
99
|
"kill-9": "~0.4.3",
|
|
100
100
|
"mocha": "^10.4.0",
|
|
101
101
|
"nyc": "^15.1.0",
|
|
102
|
-
"puppeteer": "^22.
|
|
102
|
+
"puppeteer": "^22.10.0",
|
|
103
103
|
"sinon": "^18.0.0",
|
|
104
104
|
"supertest": "^7.0.0",
|
|
105
105
|
"types.d.ts": "~0.6.21",
|
package/unlogged/my-ajax.js
CHANGED
|
@@ -193,14 +193,17 @@ myAjax.ajaxPromise = function ajaxPromise(procedureDef,data,opts){
|
|
|
193
193
|
}
|
|
194
194
|
var result=[];
|
|
195
195
|
var progress=procedureDef.progress!==false;
|
|
196
|
+
/** @type {Record<string,{ divBar, progressBar, progresIndicator, divBarLabel }>} */
|
|
197
|
+
var progressStruct = {}
|
|
196
198
|
var divProgress;
|
|
197
|
-
var divBarProgress;
|
|
198
|
-
var progressBar;
|
|
199
|
-
var progressIndicator;
|
|
200
|
-
var divBarProgressLabel;
|
|
199
|
+
// var divBarProgress = {};
|
|
200
|
+
// var progressBar;
|
|
201
|
+
// var progressIndicator;
|
|
202
|
+
// var divBarProgressLabel = {};
|
|
201
203
|
var onClose=function(){}
|
|
202
204
|
var defaultInformProgress = function defaultInformProgress(progressInfo){
|
|
203
205
|
if(progressInfo.message || progressInfo.end || progressInfo.start || progressInfo.loaded){
|
|
206
|
+
// progressInfo.idGroup
|
|
204
207
|
if(!divProgress){
|
|
205
208
|
var idAutoClose='id-auto-close-'+Math.random();
|
|
206
209
|
var checkAutoClose=html.input({type:'checkbox', id:idAutoClose, checked:myAjax.ajaxPromise.autoClose}).create();
|
|
@@ -235,8 +238,12 @@ myAjax.ajaxPromise = function ajaxPromise(procedureDef,data,opts){
|
|
|
235
238
|
}
|
|
236
239
|
}
|
|
237
240
|
}
|
|
238
|
-
if(progressInfo.
|
|
239
|
-
|
|
241
|
+
if (progressStruct[progressInfo.idGroup] == null) {
|
|
242
|
+
progressStruct[progressInfo.idGroup] = {}
|
|
243
|
+
}
|
|
244
|
+
var ps = progressStruct[progressInfo.idGroup];
|
|
245
|
+
if(progressInfo.ephemeral && ps.divBarLabel){
|
|
246
|
+
ps.divBarLabel.textContent = progressInfo.message;
|
|
240
247
|
}else if(progressInfo.message || progressInfo.end){
|
|
241
248
|
var now=bestGlobals.datetime.now();
|
|
242
249
|
var elapsed = now.sub(tickTime);
|
|
@@ -265,23 +272,23 @@ myAjax.ajaxPromise = function ajaxPromise(procedureDef,data,opts){
|
|
|
265
272
|
);
|
|
266
273
|
}
|
|
267
274
|
}
|
|
268
|
-
if(progressInfo.loaded){
|
|
269
|
-
if(!
|
|
270
|
-
|
|
271
|
-
progressIndicator=html.div({class:'indicator'},' ').create();
|
|
272
|
-
progressBar=html.div({class:'progress-bar', style:'width:400px; height:8px;'},[progressIndicator]).create();
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
progressBar
|
|
275
|
+
if(progressInfo.loaded != null){
|
|
276
|
+
if(!ps.divBar){
|
|
277
|
+
ps.divBarLabel = html.div().create();
|
|
278
|
+
ps.progressIndicator=html.div({class:'indicator'},' ').create();
|
|
279
|
+
ps.progressBar=html.div({class:'progress-bar', style:'width:400px; height:8px;'},[ps.progressIndicator]).create();
|
|
280
|
+
ps.divBar = html.div([
|
|
281
|
+
ps.divBarLabel,
|
|
282
|
+
ps.progressBar
|
|
276
283
|
]).create();
|
|
277
|
-
divProgress.parentNode.insertBefore(
|
|
284
|
+
divProgress.parentNode.insertBefore(ps.divBar, divProgress);
|
|
278
285
|
}
|
|
279
286
|
if(progressInfo.lengthComputable){
|
|
280
|
-
progressIndicator.style.width=progressInfo.loaded*100/progressInfo.total+'%';
|
|
281
|
-
progressIndicator.title=Math.round(progressInfo.loaded*100/progressInfo.total)+'%';
|
|
287
|
+
ps.progressIndicator.style.width=progressInfo.loaded*100/progressInfo.total+'%';
|
|
288
|
+
ps.progressIndicator.title=Math.round(progressInfo.loaded*100/progressInfo.total)+'%';
|
|
282
289
|
}else{
|
|
283
|
-
progressIndicator.style.backgroundColor='#D4D';
|
|
284
|
-
progressIndicator.title='N/D %';
|
|
290
|
+
ps.progressIndicator.style.backgroundColor='#D4D';
|
|
291
|
+
ps.progressIndicator.title='N/D %';
|
|
285
292
|
}
|
|
286
293
|
}
|
|
287
294
|
}
|
|
@@ -304,7 +311,6 @@ myAjax.ajaxPromise = function ajaxPromise(procedureDef,data,opts){
|
|
|
304
311
|
}
|
|
305
312
|
var controlLoggedIn = function controlLoggedIn(result, informNotLoggedIn){
|
|
306
313
|
if(informNotLoggedIn || result && result[0]=="<" && result.match(/login/m)){
|
|
307
|
-
console.log('xxxxxxxxxxx',procedureDef.action)
|
|
308
314
|
my.informDetectedStatus('notLogged');
|
|
309
315
|
throw bestGlobals.changing(new Error(my.messages.notLogged),{displayed:true, isNotLoggedError:true});
|
|
310
316
|
}
|