John Cowen 97b645a745 ui: Run Ember native class code mod (#9093)
* ui: Apply native class codemod to all services

* ui: Apply native class codemod to routes

* ui: Apply native class codemod to controllers

* Fix up ember proxy `content` issue

* Add a CreateTime on policy creation

* Minor formatting

* Convert child based saving to use ec instead of custom approach

* Remove custom event source repo wrapping initializer

* Repos here are no longer proxy objects revert to using them normally

* Remove areas of code that were used to set up source backed repos
2020-11-09 09:26:20 +00:00

29 lines
693 B
JavaScript

import Service from '@ember/service';
import Clipboard from 'clipboard';
class ClipboardCallback extends Clipboard {
constructor(trigger, cb) {
super(trigger);
this._cb = cb;
}
onClick(e) {
this._cb(this.text(e.delegateTarget || e.currentTarget));
// Clipboard uses/extends `tiny-emitter`
// TODO: We should probably fill this out to match the obj passed from
// os implementation
this.emit('success', {});
}
}
export default class LocalStorageService extends Service {
storage = window.localStorage;
key = 'clipboard';
execute(trigger) {
return new ClipboardCallback(trigger, val => {
this.storage.setItem(this.key, val);
});
}
}