From a7022b15109cfc3d5eb1ec52722116761ec382ad Mon Sep 17 00:00:00 2001 From: Amin Yahyaabadi Date: Thu, 11 Jun 2020 20:11:45 -0500 Subject: [PATCH 1/2] decaffeinate progress --- lib/ui/progress.coffee | 62 ---------------------------------- lib/ui/progress.js | 77 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 77 insertions(+), 62 deletions(-) delete mode 100644 lib/ui/progress.coffee create mode 100644 lib/ui/progress.js diff --git a/lib/ui/progress.coffee b/lib/ui/progress.coffee deleted file mode 100644 index d5466317..00000000 --- a/lib/ui/progress.coffee +++ /dev/null @@ -1,62 +0,0 @@ -{CompositeDisposable} = require 'atom' -{client} = require '../connection' -{formatTimePeriod} = require '../misc' - -module.exports = - progs: {} - - activate: (ink) -> - @subs = new CompositeDisposable - @ink = ink - client.handle 'progress': (t, id, m) => @[t] id, m - status = [] - @subs.add( - client.onWorking => - status = @ink.progress.add(null, description: 'Julia') - client.onDone => status?.destroy() - client.onAttached => @ink.progress.show() - client.onDetached => @clear() - ) - - deactivate: -> - @clear() - @subs.dispose() - - add: (id) -> - pr = @ink.progress.add() - pr.t0 = Date.now() - pr.showTime = true - @progs[id] = pr - - progress: (id, prog) -> - pr = @progs[id] - return unless pr? - pr.level = prog - if pr.showTime then @rightText id, null - - message: (id, m) -> @progs[id]?.message = m - - leftText: (id, m) -> @progs[id]?.description = m - - rightText: (id, m) -> - pr = @progs[id] - return unless pr? - if m?.length - pr.rightText = m - pr.showTime = false - else - dt = (Date.now() - pr.t0)*(1/pr.level - 1)/1000 - pr.showTime = true - pr.rightText = formatTimePeriod dt - - delete: (id) -> - pr = @progs[id] - return unless pr? - pr.destroy() - delete @progs[id] - - clear: -> - for _, p of @progs - p?.destroy() - @progs = {} - @ink.progress.hide() diff --git a/lib/ui/progress.js b/lib/ui/progress.js new file mode 100644 index 00000000..beda3f13 --- /dev/null +++ b/lib/ui/progress.js @@ -0,0 +1,77 @@ +'use babel' +import { CompositeDisposable } from 'atom'; +import client from '../connection/client'; +import { formatTimePeriod } from '../misc'; + +export default { + progs: {}, + + activate(ink) { + this.subs = new CompositeDisposable; + this.ink = ink; + client.handle({'progress': (t, id, m) => this[t](id, m)}); + let status = []; + this.subs.add( + client.onWorking(() => { + return status = this.ink.progress.add(null, {description: 'Julia'}); + }), + client.onDone(() => (status != null ? status.destroy() : undefined)), // status?.destroy() + client.onAttached(() => this.ink.progress.show()), + client.onDetached(() => this.clear()) + ); + }, + + deactivate() { + this.clear(); + this.subs.dispose(); + }, + + add(id) { + const pr = this.ink.progress.add(); + pr.t0 = Date.now(); + pr.showTime = true; + this.progs[id] = pr; + }, + + progress(id, prog) { + const pr = this.progs[id]; + if (pr == null) { return; } + pr.level = prog; + if (pr.showTime) { return this.rightText(id, null); } + }, + + message(id, m) { return (this.progs[id] != null ? this.progs[id].message = m : undefined); }, // this.progs[id]?.message = m + + leftText(id, m) { return (this.progs[id] != null ? this.progs[id].description = m : undefined); }, // this.progs[id]?.description = m + + rightText(id, m) { + const pr = this.progs[id]; + if (pr == null) { return; } + if (m != null ? m.length : undefined) { + pr.rightText = m; + return pr.showTime = false; + } else { + const dt = ((Date.now() - pr.t0)*((1/pr.level) - 1))/1000; + pr.showTime = true; + return pr.rightText = formatTimePeriod(dt); + } + }, + + delete(id) { + const pr = this.progs[id]; + if (pr == null) { return; } + pr.destroy(); + delete this.progs[id]; + }, + + clear() { + for (let _ in this.progs) { + const p = this.progs[_]; + if (p != null) { + p.destroy(); + } + } + this.progs = {}; + this.ink.progress.hide(); + } +}; From cb56cdb242ff5d0d063f87532373e0b5b7f0538a Mon Sep 17 00:00:00 2001 From: Amin Yahyaabadi Date: Thu, 11 Jun 2020 20:19:19 -0500 Subject: [PATCH 2/2] named export --- lib/ui/progress.js | 76 +++++++++++++++++++++++----------------------- 1 file changed, 38 insertions(+), 38 deletions(-) diff --git a/lib/ui/progress.js b/lib/ui/progress.js index beda3f13..a2ea9f9e 100644 --- a/lib/ui/progress.js +++ b/lib/ui/progress.js @@ -3,49 +3,50 @@ import { CompositeDisposable } from 'atom'; import client from '../connection/client'; import { formatTimePeriod } from '../misc'; -export default { - progs: {}, +export let progs = {} - activate(ink) { - this.subs = new CompositeDisposable; - this.ink = ink; +let subs; +let ink; +export function activate(ink_in) { + subs = new CompositeDisposable; + ink = ink_in; client.handle({'progress': (t, id, m) => this[t](id, m)}); let status = []; - this.subs.add( + subs.add( client.onWorking(() => { - return status = this.ink.progress.add(null, {description: 'Julia'}); + return status = ink.progress.add(null, {description: 'Julia'}); }), client.onDone(() => (status != null ? status.destroy() : undefined)), // status?.destroy() - client.onAttached(() => this.ink.progress.show()), - client.onDetached(() => this.clear()) + client.onAttached(() => ink.progress.show()), + client.onDetached(() => clear()) ); - }, +} - deactivate() { - this.clear(); - this.subs.dispose(); - }, +export function deactivate() { + clear(); + subs.dispose(); +} - add(id) { - const pr = this.ink.progress.add(); +export function add(id) { + const pr = ink.progress.add(); pr.t0 = Date.now(); pr.showTime = true; - this.progs[id] = pr; - }, + progs[id] = pr; +} - progress(id, prog) { - const pr = this.progs[id]; +export function progress(id, prog) { + const pr = progs[id]; if (pr == null) { return; } pr.level = prog; - if (pr.showTime) { return this.rightText(id, null); } - }, + if (pr.showTime) { return rightText(id, null); } +} - message(id, m) { return (this.progs[id] != null ? this.progs[id].message = m : undefined); }, // this.progs[id]?.message = m +export function message(id, m) { return (progs[id] != null ? progs[id].message = m : undefined); } // progs[id]?.message = m - leftText(id, m) { return (this.progs[id] != null ? this.progs[id].description = m : undefined); }, // this.progs[id]?.description = m +export function leftText(id, m) { return (progs[id] != null ? progs[id].description = m : undefined); } // progs[id]?.description = m - rightText(id, m) { - const pr = this.progs[id]; +export function rightText(id, m) { + const pr = progs[id]; if (pr == null) { return; } if (m != null ? m.length : undefined) { pr.rightText = m; @@ -55,23 +56,22 @@ export default { pr.showTime = true; return pr.rightText = formatTimePeriod(dt); } - }, +} - delete(id) { - const pr = this.progs[id]; +export function deleteit(id) { + const pr = progs[id]; if (pr == null) { return; } pr.destroy(); - delete this.progs[id]; - }, + delete progs[id]; +} - clear() { - for (let _ in this.progs) { - const p = this.progs[_]; +export function clear() { + for (let _ in progs) { + const p = progs[_]; if (p != null) { p.destroy(); } } - this.progs = {}; - this.ink.progress.hide(); - } -}; + progs = {}; + ink.progress.hide(); +}