Comparing version 1.0.14 to 1.0.15
{ | ||
"name": "commode", | ||
"version": "1.0.14", | ||
"version": "1.0.15", | ||
"description": "Electron-Vue based, iTunes like UI, for file tagging, restructuring, processing, and general management.", | ||
@@ -5,0 +5,0 @@ "main": "main.js", |
@@ -11,2 +11,3 @@ # commode | ||
- iTunes like view of your data | ||
- You must prepare a directory with data.js, sort.js and filter.js | ||
@@ -16,5 +17,32 @@ - .js before .json, program will seek a .js data file that may load json. | ||
## What you get | ||
## Action Handler Example (work.js) | ||
- iTunes like view of your data | ||
- | ||
When you hit play Promise's resolve, reject is sent to an emitter handler, | ||
simply perform your operation and call resolve(); | ||
```JavaScript | ||
emitter.on('example', function({app, item, name, resolve, reject }) { | ||
// make an indication that you are working on this item | ||
app.selectItem(item); | ||
// in this example we uppercase the name of the item... | ||
item.name = item.name.toUpperCase(); | ||
setTimeout(function(){ | ||
console.log( 'Working on %s.', name ); | ||
// When the thing is done, call resolve... | ||
resolve(); | ||
},200); | ||
}); | ||
``` | ||
## Todo | ||
- More samples | ||
- drop built-in filter editor (just edit filter.js) | ||
- maybe drop manual item editor in favor of actions? |
@@ -23,4 +23,4 @@ const path = require('path'); | ||
selectedItem: null, | ||
selectedAction: null, | ||
selectedItem: {}, | ||
selectedAction: {}, | ||
@@ -60,4 +60,25 @@ filters: [], | ||
play:function (e) { | ||
let app = this; | ||
if(!this.selectedAction.event){ | ||
return myEmitter.emit('status', 'You must select an action to apply to items below...'); | ||
} | ||
let jobs = Promise.resolve(); | ||
this.computedDatabase.forEach(item => { | ||
jobs = jobs.then(i=>new Promise(function(resolve, reject) { | ||
let payload = Object.assign({app, item, resolve, reject},item,app.selectedAction.assign); | ||
myEmitter.emit(app.selectedAction.event, payload) | ||
})); | ||
}); | ||
jobs.then(i=>{ | ||
myEmitter.emit('status', 'Jobs Done...'); | ||
this.deselectItem() | ||
this.deselectAction() | ||
}) | ||
}, | ||
toggle: function (e) { | ||
@@ -79,6 +100,14 @@ console.log(e.name) | ||
}, | ||
deselectItem: function (e) { | ||
myEmitter.emit('status', ``) | ||
this.selectedItem = {}; | ||
}, | ||
selectAction: function (e) { | ||
myEmitter.emit('status', `Selecte ${e.name} Action, press play to apply it to the items below...`) | ||
myEmitter.emit('status', `Selected ${e.name} Action, press play to apply it to the items below...`) | ||
this.selectedAction = e; | ||
}, | ||
deselectAction: function (e) { | ||
this.selectedAction = {}; | ||
}, | ||
@@ -123,3 +152,5 @@ | ||
require(path.join(dir,'work.js'))({emitter:myEmitter}) | ||
myEmitter.emit('status', 'System Ready...') | ||
@@ -126,0 +157,0 @@ }, |
module.exports = [ | ||
{ name: 'Delete', event:"delete-item", assign:{}}, | ||
{ name: 'Resize', event:"resize-item", assign:{}}, | ||
{ name: 'Downsample', event:"downsample-item", assign:{}}, | ||
{ name: 'Nuke', event:"nuke-item", assign:{}}, | ||
{ name: 'Freeze', icon:'snowflake-o', event:'example', assign:{}}, | ||
{ name: 'Clean', icon:'bath', event:'example', assign:{}}, | ||
{ name: 'PLC', icon:'microchip', event:'example', assign:{}}, | ||
{ name: 'Deposit', icon:'bank', event:'example', assign:{}}, | ||
]; |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
16
263
47
400380
5