* DEV: Fix the function prototype observers deprecation
DEPRECATION: Function prototype extensions have been deprecated, please migrate from function(){}.observes('foo') to observer('foo', function() {}). [deprecation id: function-prototype-extensions.observes] See https://deprecations.emberjs.com/v3.x/#toc_function-prototype-extensions-observes for more details.
* DEV: Fix the function prototype event listeners deprecation
DEPRECATION: Function prototype extensions have been deprecated, please migrate from function(){}.on('foo') to on('foo', function() {}). [deprecation id: function-prototype-extensions.on] See https://deprecations.emberjs.com/v3.x/#toc_function-prototype-extensions-on for more details.
* DEV: Simplify `default as` imports
Co-authored-by: Joffrey JAFFEUX <j.jaffeux@gmail.com>
32 lines
720 B
JavaScript
32 lines
720 B
JavaScript
import { notEmpty, not } from "@ember/object/computed";
|
|
import Component from "@ember/component";
|
|
import discourseComputed from "discourse-common/utils/decorators";
|
|
import UploadMixin from "discourse/mixins/upload";
|
|
|
|
export default Component.extend(UploadMixin, {
|
|
type: "emoji",
|
|
uploadUrl: "/admin/customize/emojis",
|
|
hasName: notEmpty("name"),
|
|
addDisabled: not("hasName"),
|
|
|
|
uploadOptions() {
|
|
return {
|
|
sequentialUploads: true
|
|
};
|
|
},
|
|
|
|
@discourseComputed("hasName", "name")
|
|
data(hasName, name) {
|
|
return hasName ? { name } : {};
|
|
},
|
|
|
|
validateUploadedFilesOptions() {
|
|
return { imagesOnly: true };
|
|
},
|
|
|
|
uploadDone(upload) {
|
|
this.set("name", null);
|
|
this.done(upload);
|
|
}
|
|
});
|