summernote-image-upload
Version:
a utility for uploading summernote images to disk
49 lines (48 loc) • 1.66 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.SummernoteImageUploader = void 0;
var SummernoteImageUploader = /** @class */ (function () {
function SummernoteImageUploader(uploadURL, $element, opts, code, formDataCallback) {
this.uploadURL = uploadURL;
this.$element = $element;
this.opts = opts;
this.code = code;
this.formdataCallback = formDataCallback;
}
SummernoteImageUploader.prototype.render = function () {
var _this = this;
this.opts.callbacks = {
onImageUpload: function (files) {
// @ts-ignore
for (var _i = 0, files_1 = files; _i < files_1.length; _i++) {
var file = files_1[_i];
_this.uploadFile(file);
}
}
};
this.$element.summernote(this.opts);
if (this.code) {
this.$element.summernote("code", this.code);
}
};
SummernoteImageUploader.prototype.uploadFile = function (file) {
var _this = this;
var data = new FormData();
data.append("image", file);
if (this.formdataCallback) {
this.formdataCallback(data);
}
$.ajax({
url: this.uploadURL,
type: "POST",
data: data,
contentType: false,
processData: false,
success: function (url) {
_this.$element.summernote("editor.insertImage", url);
},
});
};
return SummernoteImageUploader;
}());
exports.SummernoteImageUploader = SummernoteImageUploader;