This repository has been archived on 2023-03-18. You can view files and clone it, but cannot push or open issues or pull requests.
osr-discourse-src/app/assets/javascripts/discourse/components/plugin-connector.js.es6
2019-05-27 10:15:39 +02:00

31 lines
886 B
JavaScript

import { observes } from "ember-addons/ember-computed-decorators";
export default Ember.Component.extend({
init() {
this._super(...arguments);
const connector = this.connector;
this.set("layoutName", connector.templateName);
const args = this.args || {};
Object.keys(args).forEach(key => this.set(key, args[key]));
const connectorClass = this.get("connector.connectorClass");
connectorClass.setupComponent.call(this, args, this);
this.set("actions", connectorClass.actions);
},
@observes("args")
_argsChanged() {
const args = this.args || {};
Object.keys(args).forEach(key => this.set(key, args[key]));
},
send(name, ...args) {
const connectorClass = this.get("connector.connectorClass");
const action = connectorClass.actions[name];
return action ? action.call(this, ...args) : this._super(name, ...args);
}
});