mirror of
https://github.com/flynx/ImageGrid.git
synced 2025-10-29 02:10:08 +00:00
working on queue/task...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
parent
1824eeddb2
commit
ecb9d83af8
@ -2549,7 +2549,7 @@ function(title, func){
|
||||
this.tasks.Task(...pre_args, func.bind(this), ...args),
|
||||
// make this searchable by .tasks.named(..)...
|
||||
{
|
||||
__session_task__: action.__session_task__,
|
||||
__session_task__: !!action.__session_task__,
|
||||
name: action.name,
|
||||
}) }),
|
||||
{
|
||||
@ -2621,7 +2621,7 @@ function(title, func){
|
||||
resolve(res)
|
||||
return res }),
|
||||
{
|
||||
__session_task__: action.__session_task__,
|
||||
__session_task__: !!action.__session_task__,
|
||||
title: action.name,
|
||||
}) }) }),
|
||||
{
|
||||
@ -2738,9 +2738,7 @@ function(title, func){
|
||||
{},
|
||||
opts || {},
|
||||
{
|
||||
__session_task__: action.__session_task__,
|
||||
// XXX not sure about this...
|
||||
//auto_stop: true,
|
||||
__session_task__: !!action.__session_task__,
|
||||
handler: function([item, args]){
|
||||
return func.call(that, item, ...(args || [])) },
|
||||
}))
|
||||
@ -2762,7 +2760,8 @@ function(title, func){
|
||||
&& (inputs = arg_handler.call(this, q, ...inputs))
|
||||
|
||||
// run...
|
||||
return inputs instanceof Promise ?
|
||||
return (inputs instanceof Promise
|
||||
|| inputs instanceof runner.FinalizableQueue) ?
|
||||
// XXX BUG? .then(resolve) is triggered even if inputs was
|
||||
// stopped (should not resolve) or aborted (should reject)...
|
||||
inputs.then(
|
||||
@ -2770,14 +2769,6 @@ function(title, func){
|
||||
return run([items, ...args]) },
|
||||
function(){
|
||||
q && q.abort() })
|
||||
: inputs instanceof runner.Queue ?
|
||||
inputs
|
||||
.on('stop', function(){
|
||||
q && q.stop() })
|
||||
.on('abort', function(){
|
||||
q && q.abort() })
|
||||
.then(function(items){
|
||||
return run([items, ...args]) })
|
||||
: run(inputs) }),
|
||||
{
|
||||
title,
|
||||
@ -2891,9 +2882,7 @@ var TaskActions = actions.Actions({
|
||||
var abort = function(){
|
||||
options.nonAbortable
|
||||
|| queue
|
||||
// XXX abort or stop???
|
||||
.abort()
|
||||
.clear() }
|
||||
.abort() }
|
||||
var cleanup = function(){
|
||||
return function(){
|
||||
queue.stop()
|
||||
@ -2911,7 +2900,7 @@ var TaskActions = actions.Actions({
|
||||
&& (options.logger = logger)
|
||||
|
||||
queue = this.queues[name] =
|
||||
runner.Queue(options || {})
|
||||
runner.FinalizableQueue(options || {})
|
||||
|
||||
// setup logging...
|
||||
var suffix = (options || {}).hideProgress ?
|
||||
@ -2925,11 +2914,9 @@ var TaskActions = actions.Actions({
|
||||
.on('taskFailed', function(evt, t, err){
|
||||
this.logger && this.logger.emit('skipped'+suffix, t, err) })
|
||||
.on('stop', function(){
|
||||
this.logger && this.logger.emit('reset')
|
||||
this.clear() })
|
||||
this.logger && this.logger.emit('reset') })
|
||||
.on('abort', function(){
|
||||
this.logger && this.logger.emit('reset')
|
||||
this.clear() })
|
||||
this.logger && this.logger.emit('reset') })
|
||||
// cleanup...
|
||||
queue
|
||||
.then(
|
||||
|
||||
@ -345,9 +345,9 @@ var ExampleActions = actions.Actions({
|
||||
core.queueHandler('Main queue',
|
||||
core.queueHandler('Sub queue',
|
||||
// pre-prepare the inputs (sync)...
|
||||
function(outer_queue, inner_queue, items, ...args){
|
||||
function(queue, next, items, ...args){
|
||||
console.log('### PRE-PREP', items, ...args)
|
||||
return [items, outer_queue, ...args] },
|
||||
return [items, queue, ...args] },
|
||||
//return [items, inner_queue, ...args] },
|
||||
// prepare inputs (async/queue)...
|
||||
function(item, q, ...args){
|
||||
|
||||
106
Viewer/package-lock.json
generated
106
Viewer/package-lock.json
generated
@ -32,6 +32,15 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"@malept/cross-spawn-promise": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@malept/cross-spawn-promise/-/cross-spawn-promise-1.1.1.tgz",
|
||||
"integrity": "sha512-RTBGWL5FWQcg9orDOCcp4LvItNzUPcyEU9bwaeJX0rJ1IQxzucC48Y0/sQLp/g6t99IQgAlGIaesJS+gTn7tVQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"cross-spawn": "^7.0.1"
|
||||
}
|
||||
},
|
||||
"@sindresorhus/is": {
|
||||
"version": "0.14.0",
|
||||
"resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz",
|
||||
@ -582,6 +591,50 @@
|
||||
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
|
||||
"integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
|
||||
},
|
||||
"cross-spawn": {
|
||||
"version": "7.0.3",
|
||||
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
|
||||
"integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"path-key": "^3.1.0",
|
||||
"shebang-command": "^2.0.0",
|
||||
"which": "^2.0.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"which": {
|
||||
"version": "2.0.2",
|
||||
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
|
||||
"integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"isexe": "^2.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"cross-spawn-windows-exe": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/cross-spawn-windows-exe/-/cross-spawn-windows-exe-1.0.0.tgz",
|
||||
"integrity": "sha512-WZzs4Ofgi/OBs1vkLmtEUX/6JjkTNWsXJqKDwIdW4lFsSzMcsGsf1OiELZL3waE/HzRO6V27cJpzqYYQRUGShQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@malept/cross-spawn-promise": "^1.1.0",
|
||||
"is-wsl": "^2.2.0",
|
||||
"which": "^2.0.2"
|
||||
},
|
||||
"dependencies": {
|
||||
"which": {
|
||||
"version": "2.0.2",
|
||||
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
|
||||
"integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"isexe": "^2.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"dashdash": {
|
||||
"version": "1.14.1",
|
||||
"resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
|
||||
@ -1156,9 +1209,9 @@
|
||||
"integrity": "sha512-9kZM80Js9/eTwXN9VXwLDC1wDJ7gIAdYU9GIzb5KJmNcLAMaW+zhgFrwFFMrcSfggUuadgnqSrS41E4XLe8JZw=="
|
||||
},
|
||||
"ig-types": {
|
||||
"version": "5.0.41",
|
||||
"resolved": "https://registry.npmjs.org/ig-types/-/ig-types-5.0.41.tgz",
|
||||
"integrity": "sha512-ay185peZ3WfcSfbe6BsVffkqAGtKAeqMf62RqA9Z/ZVIopYSY1Ga3d08mbPD6+j4G6eT5amWZOmk6wlhnflGhQ==",
|
||||
"version": "6.0.1",
|
||||
"resolved": "https://registry.npmjs.org/ig-types/-/ig-types-6.0.1.tgz",
|
||||
"integrity": "sha512-yaZU07JZO+9lxPGUjxnvRCGAXyAXSqP9ef33eW8912E751RAUyexruPaJkalvJuRJYzMo6rrURk65asWUNGs/g==",
|
||||
"requires": {
|
||||
"ig-object": "^5.4.12",
|
||||
"object-run": "^1.0.1"
|
||||
@ -1195,6 +1248,12 @@
|
||||
"resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz",
|
||||
"integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ=="
|
||||
},
|
||||
"is-docker": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.1.1.tgz",
|
||||
"integrity": "sha512-ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw==",
|
||||
"dev": true
|
||||
},
|
||||
"is-fullwidth-code-point": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
|
||||
@ -1209,6 +1268,15 @@
|
||||
"integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
|
||||
"dev": true
|
||||
},
|
||||
"is-wsl": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz",
|
||||
"integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-docker": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"isarray": {
|
||||
"version": "0.0.1",
|
||||
"resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
|
||||
@ -1733,6 +1801,12 @@
|
||||
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
|
||||
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
|
||||
},
|
||||
"path-key": {
|
||||
"version": "3.1.1",
|
||||
"resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
|
||||
"integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
|
||||
"dev": true
|
||||
},
|
||||
"pend": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
|
||||
@ -1862,10 +1936,13 @@
|
||||
}
|
||||
},
|
||||
"rcedit": {
|
||||
"version": "2.3.0",
|
||||
"resolved": "https://registry.npmjs.org/rcedit/-/rcedit-2.3.0.tgz",
|
||||
"integrity": "sha512-h1gNEl9Oai1oijwyJ1WYqYSXTStHnOcv1KYljg/8WM4NAg3H1KBK3azIaKkQ1WQl+d7PoJpcBMscPfLXVKgCLQ==",
|
||||
"dev": true
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/rcedit/-/rcedit-3.0.0.tgz",
|
||||
"integrity": "sha512-Zg2Ihvtfzrx8XFICzQ/4aGnhw1k4Jaba8cLvVabgpxKozO0hIIS2vqTfhRkelmOmO0XW+GvmHYO2X+TRnYNlow==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"cross-spawn-windows-exe": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"readable-stream": {
|
||||
"version": "2.3.7",
|
||||
@ -2121,6 +2198,21 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"shebang-command": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
|
||||
"integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"shebang-regex": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"shebang-regex": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
|
||||
"integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
|
||||
"dev": true
|
||||
},
|
||||
"signal-exit": {
|
||||
"version": "3.0.3",
|
||||
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz",
|
||||
|
||||
@ -34,7 +34,7 @@
|
||||
"ig-argv": "^2.16.3",
|
||||
"ig-features": "^3.4.2",
|
||||
"ig-object": "^5.4.12",
|
||||
"ig-types": "^5.0.41",
|
||||
"ig-types": "^6.0.1",
|
||||
"json5": "^2.1.3",
|
||||
"object-run": "^1.0.1",
|
||||
"requirejs": "^2.3.6",
|
||||
@ -56,7 +56,7 @@
|
||||
"asar": "^3.0.1",
|
||||
"electron-rebuild": "^1.11.0",
|
||||
"less": "^3.13.0",
|
||||
"rcedit": "*"
|
||||
"rcedit": "^3.0.0"
|
||||
},
|
||||
"bin": {
|
||||
"ig": "ig.js"
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user