tnx-shared 5.1.417 → 5.1.418

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -28,6 +28,7 @@
28
28
 
29
29
  var stringify__default = /*#__PURE__*/_interopDefaultLegacy(stringify);
30
30
  var moment___default = /*#__PURE__*/_interopDefaultLegacy(moment_);
31
+ var FileSaver__default = /*#__PURE__*/_interopDefaultLegacy(FileSaver);
31
32
  var printJS__default = /*#__PURE__*/_interopDefaultLegacy(printJS$3);
32
33
  var jQuery___default = /*#__PURE__*/_interopDefaultLegacy(jQuery_);
33
34
  var JWT___namespace = /*#__PURE__*/_interopNamespace(JWT_);
@@ -19970,7 +19971,6 @@
19970
19971
  this._http = _http;
19971
19972
  this._injector = _injector;
19972
19973
  this._commonService = _commonService;
19973
- this._moduleConfigService = _moduleConfigService;
19974
19974
  this._moduleConfig = _moduleConfigService.getConfig();
19975
19975
  this.environment = this._moduleConfig.environment;
19976
19976
  this.serviceUri = this._moduleConfig.environment.apiDomain.templateEndpoint + "/Export";
@@ -19988,7 +19988,13 @@
19988
19988
  var data = new Blob([buffer], {
19989
19989
  type: EXCEL_TYPE$1
19990
19990
  });
19991
- FileSaver.saveAs(data, fileName + '_' + new Date().getTime() + EXCEL_EXTENSION$1);
19991
+ FileSaver__default['default'].saveAs(data, fileName + '_' + new Date().getTime() + EXCEL_EXTENSION$1);
19992
+ };
19993
+ ExportService.prototype.saveSpreadSheet = function (buffer, fileName) {
19994
+ var data = new Blob([buffer], {
19995
+ type: EXCEL_TYPE$1
19996
+ });
19997
+ FileSaver__default['default'].saveAs(data, new Date().getTime() + '_' + fileName);
19992
19998
  };
19993
19999
  return ExportService;
19994
20000
  }());
@@ -27129,14 +27135,16 @@
27129
27135
  var _this = _super.call(this, http, injector, _moduleConfigService.getConfig().environment.apiDomain.fileEndpoint + "/" + _moduleConfigService.getConfig().environment.apiVersion + "/FileObject") || this;
27130
27136
  _this._moduleConfigService = _moduleConfigService;
27131
27137
  _this.thumborEndpoint = '';
27138
+ _this.fileWithThumborEndpoint = '';
27132
27139
  _this.endPoint = _moduleConfigService.getConfig().environment.apiDomain.fileEndpoint;
27140
+ _this.fileWithThumborEndpoint = _moduleConfigService.getConfig().environment.apiDomain.fileWithThumborEndpoint;
27133
27141
  _this.thumborEndpoint = _moduleConfigService.getConfig().environment.apiDomain.thumbor;
27134
27142
  return _this;
27135
27143
  }
27136
27144
  FileObjectService.prototype.getFileUrlWithThumbor = function (fileId, width, height) {
27137
27145
  if (width === void 0) { width = 0; }
27138
27146
  if (height === void 0) { height = 0; }
27139
- var url = this.thumborEndpoint + "/unsafe/" + width + "x" + height + "/smart/" + this.endPoint + "/v5/FileObject/public/" + fileId + "/download";
27147
+ var url = this.thumborEndpoint + "/unsafe/" + width + "x" + height + "/smart/" + this.fileWithThumborEndpoint + "/v5/FileObject/public/" + fileId + "/download";
27140
27148
  return url;
27141
27149
  };
27142
27150
  FileObjectService.prototype.getUrlImage = function (fileId) {
@@ -27303,6 +27311,12 @@
27303
27311
  }
27304
27312
  return result;
27305
27313
  };
27314
+ FileObjectService.prototype.uploadWithByteArray = function (file) {
27315
+ var formData = new FormData();
27316
+ formData.append('files', file);
27317
+ var url = this.serviceUri + "/UploadWithByteArray";
27318
+ return this._http.post(url, formData, { responseType: 'text' }).toPromise();
27319
+ };
27306
27320
  return FileObjectService;
27307
27321
  }(BaseService));
27308
27322
  FileObjectService.ɵprov = i0.ɵɵdefineInjectable({ factory: function FileObjectService_Factory() { return new FileObjectService(i0.ɵɵinject(i1$1.HttpClient), i0.ɵɵinject(i0.INJECTOR), i0.ɵɵinject(ModuleConfigService)); }, token: FileObjectService, providedIn: "root" });
@@ -56114,11 +56128,12 @@
56114
56128
 
56115
56129
  var TnTinymceComponent = /** @class */ (function (_super) {
56116
56130
  __extends(TnTinymceComponent, _super);
56117
- function TnTinymceComponent(injector, _deviceDetectorService, _notifierService, _fileService) {
56131
+ function TnTinymceComponent(injector, _deviceDetectorService, _notifierService, _fileService, _fileObjectService) {
56118
56132
  var _this = _super.call(this, injector) || this;
56119
56133
  _this._deviceDetectorService = _deviceDetectorService;
56120
56134
  _this._notifierService = _notifierService;
56121
56135
  _this._fileService = _fileService;
56136
+ _this._fileObjectService = _fileObjectService;
56122
56137
  _this.mode = 'basic';
56123
56138
  _this.disabled = false;
56124
56139
  _this.required = false;
@@ -56254,19 +56269,35 @@
56254
56269
  }).on('focus', function (e) {
56255
56270
  editorHolder.classList.add('tinymce-focus');
56256
56271
  }).on('paste', function (e) {
56272
+ var begin = new Date();
56257
56273
  var types = e.originalEvent.clipboardData.types;
56258
- if (((types instanceof DOMStringList) && types.contains('text/html')) || (types.indexOf && types.indexOf('text/html') !== -1)) {
56274
+ if (((types instanceof DOMStringList) && types.contains('text/html')) || (types.indexOf && (types.indexOf('text/html') !== -1) || types.indexOf('Files') !== -1)) {
56275
+ _this._notifierService.showSuccess('Đang tiến hành xử lý nội dung, vui lòng chờ trong giây lát!');
56259
56276
  e.originalEvent.stopPropagation();
56260
56277
  e.originalEvent.preventDefault();
56261
- _this.handlePaste(e.originalEvent).then(function (content) {
56262
- if (content) {
56263
- // content = content.replace(/<!\[if[\s\S]*?>/gm, '').replace(/<!\[endif[\s\S]*?>/gm, '');
56264
- content = _this.normalizeHTML(content, '<![if !supportLists]>', '<![endif]>');
56265
- content = _this.normalizeHTML(content, '<![if !msEquation]>', '<![endif]>');
56266
- editor.execCommand('mceInsertContent', false, content);
56278
+ var types_1 = e.originalEvent.clipboardData.types;
56279
+ var files_1 = e.originalEvent.clipboardData.files;
56280
+ var pastedData_1 = '';
56281
+ var pastedRtfData_1 = '';
56282
+ if ((e.originalEvent.clipboardData.types instanceof DOMStringList && e.originalEvent.clipboardData.types.contains('text/html')) || (e.originalEvent.clipboardData.types.indexOf && e.originalEvent.clipboardData.types.indexOf('text/html') !== -1)) {
56283
+ pastedData_1 = e.originalEvent.clipboardData.getData('text/html');
56284
+ if (((e.originalEvent.clipboardData.types instanceof DOMStringList) && e.originalEvent.clipboardData.types.contains('text/rtf')) || (e.originalEvent.clipboardData.types.indexOf && e.originalEvent.clipboardData.types.indexOf('text/rtf') !== -1)) {
56285
+ pastedRtfData_1 = e.originalEvent.clipboardData.getData('text/rtf');
56267
56286
  }
56268
- });
56269
- return false;
56287
+ }
56288
+ setTimeout(function () {
56289
+ _this.handlePaste(types_1, pastedData_1, pastedRtfData_1, files_1).then(function (content) {
56290
+ var end = new Date();
56291
+ console.log('Time to run handlePaste is ' + (end.getTime() - begin.getTime()) + 'ms');
56292
+ if (content) {
56293
+ // content = content.replace(/<!\[if[\s\S]*?>/gm, '').replace(/<!\[endif[\s\S]*?>/gm, '');
56294
+ content = _this.normalizeHTML(content, '<![if !supportLists]>', '<![endif]>');
56295
+ content = _this.normalizeHTML(content, '<![if !msEquation]>', '<![endif]>');
56296
+ editor.execCommand('mceInsertContent', false, content);
56297
+ }
56298
+ });
56299
+ return false;
56300
+ }, 500);
56270
56301
  }
56271
56302
  }).on('keydown', function (e) {
56272
56303
  if (e.ctrlKey || e.metaKey) {
@@ -56388,74 +56419,160 @@
56388
56419
  this.editor.focus();
56389
56420
  }
56390
56421
  };
56391
- TnTinymceComponent.prototype.handlePaste = function (e) {
56422
+ TnTinymceComponent.prototype.handlePaste = function (types, pastedData, pastedRtfData, files) {
56392
56423
  return __awaiter(this, void 0, void 0, function () {
56393
56424
  var _this = this;
56394
56425
  return __generator(this, function (_a) {
56395
- return [2 /*return*/, new Promise(function (resolve) {
56396
- var images = [];
56397
- var oldLegacyValue = false;
56398
- var settings = {
56399
- onPicture: function (isLegacy, create) {
56400
- if (oldLegacyValue) {
56426
+ return [2 /*return*/, new Promise(function (resolve) { return __awaiter(_this, void 0, void 0, function () {
56427
+ var images, oldLegacyValue, settings, doc, result, files_2, files_2_1, item, uploadImage, e_1_1;
56428
+ var e_1, _a;
56429
+ var _this = this;
56430
+ return __generator(this, function (_b) {
56431
+ switch (_b.label) {
56432
+ case 0:
56433
+ images = [];
56401
56434
  oldLegacyValue = false;
56402
- var dom = create();
56403
- images.push(dom.outerHTML);
56404
- return dom;
56405
- }
56406
- else if (!isLegacy) {
56407
- var dom = create();
56408
- if (dom.tagName == 'IMG') {
56409
- images.push(dom.outerHTML);
56410
- return dom;
56411
- }
56412
- else {
56413
- oldLegacyValue = true;
56414
- }
56415
- }
56416
- }
56417
- };
56418
- var types = e.clipboardData.types;
56419
- if (((types instanceof DOMStringList) && types.contains('text/html')) || (types.indexOf && types.indexOf('text/html') !== -1)) {
56420
- var pastedData_1 = e.clipboardData.getData('text/html');
56421
- if (pastedData_1.indexOf('<v:imagedata ') == -1) {
56422
- resolve(pastedData_1);
56423
- }
56424
- else {
56425
- if (((types instanceof DOMStringList) && types.contains('text/rtf')) || (types.indexOf && types.indexOf('text/rtf') !== -1)) {
56426
- var pastedRtfData = e.clipboardData.getData('text/rtf');
56427
- var doc = new rtf_js.RTFJS.Document(_this._commonService.stringToArrayBuffer(pastedRtfData), settings);
56428
- doc.render().then(function (htmlElements) {
56429
- var index = pastedData_1.indexOf('<v:imagedata ');
56430
- var i = 0;
56431
- while (index > -1) {
56432
- var p1 = pastedData_1.substring(0, index);
56433
- var index2 = pastedData_1.indexOf('/>', index);
56434
- if (index == -1)
56435
- break;
56436
- else {
56437
- var p2 = pastedData_1.substring(index2 + 2);
56438
- var imageStr = '';
56439
- if (images.length > i) {
56440
- imageStr = images[i];
56435
+ settings = {
56436
+ onPicture: function (isLegacy, create) {
56437
+ if (oldLegacyValue) {
56438
+ oldLegacyValue = false;
56439
+ var dom = create();
56440
+ images.push(dom.outerHTML);
56441
+ return dom;
56442
+ }
56443
+ else if (!isLegacy) {
56444
+ var dom = create();
56445
+ if (dom.tagName == 'IMG') {
56446
+ images.push(dom.outerHTML);
56447
+ return dom;
56448
+ }
56449
+ else {
56450
+ oldLegacyValue = true;
56441
56451
  }
56442
- pastedData_1 = p1 + imageStr + p2;
56443
- index = pastedData_1.indexOf('<v:imagedata ');
56444
- i++;
56445
56452
  }
56446
56453
  }
56447
- resolve(pastedData_1);
56448
- }).catch(function (err) {
56449
- console.error(err);
56450
- resolve(null);
56451
- });
56452
- }
56454
+ };
56455
+ if (!(types.indexOf('text/html') !== -1)) return [3 /*break*/, 1];
56456
+ if (pastedData.indexOf('<v:imagedata ') == -1) {
56457
+ resolve(pastedData);
56458
+ }
56459
+ else {
56460
+ if (types.indexOf('text/rtf') !== -1) {
56461
+ doc = new rtf_js.RTFJS.Document(this._commonService.stringToArrayBuffer(pastedRtfData), settings);
56462
+ doc.render().then(function (htmlElements) { return __awaiter(_this, void 0, void 0, function () {
56463
+ var index, i, imageUploaded, docm, img, p1, index2, p2, indexImg, imageType, base64, imageBlob, srcArr, fileName, file, uploadImage, i_1, result;
56464
+ return __generator(this, function (_a) {
56465
+ switch (_a.label) {
56466
+ case 0:
56467
+ index = pastedData.indexOf('<v:imagedata ');
56468
+ i = 0;
56469
+ imageUploaded = [];
56470
+ docm = new DOMParser().parseFromString(pastedData, 'text/html');
56471
+ img = docm.getElementsByTagName('img');
56472
+ _a.label = 1;
56473
+ case 1:
56474
+ if (!(index > -1)) return [3 /*break*/, 6];
56475
+ p1 = pastedData.substring(0, index);
56476
+ index2 = pastedData.indexOf('/>', index);
56477
+ if (!(index == -1)) return [3 /*break*/, 2];
56478
+ return [3 /*break*/, 6];
56479
+ case 2:
56480
+ p2 = pastedData.substring(index2 + 2);
56481
+ if (!(images.length > i)) return [3 /*break*/, 4];
56482
+ indexImg = images[i].indexOf('<img src=');
56483
+ if (indexImg !== -1) {
56484
+ images[i] = images[i].substring(indexImg + 10, images[i].length - 2);
56485
+ }
56486
+ imageType = images[i].substring(5, images[i].indexOf(';'));
56487
+ base64 = images[i].substring(images[i].indexOf('base64,') + 7);
56488
+ imageBlob = this.dataURItoBlob(base64, imageType);
56489
+ srcArr = img[i].src.split('/');
56490
+ fileName = srcArr[srcArr.length - 1];
56491
+ file = new File([imageBlob], fileName, { type: imageType });
56492
+ return [4 /*yield*/, this._fileObjectService.uploadWithByteArray(file)];
56493
+ case 3:
56494
+ uploadImage = _a.sent();
56495
+ if (typeof uploadImage == 'string') {
56496
+ imageUploaded.push(this._fileObjectService.getUrlImage(uploadImage));
56497
+ }
56498
+ else {
56499
+ this._notifierService.showWarning('Upload file thất bại');
56500
+ }
56501
+ _a.label = 4;
56502
+ case 4:
56503
+ pastedData = p1 + '<img src=' + imageUploaded[i] + '/>' + p2;
56504
+ index = pastedData.indexOf('<v:imagedata ');
56505
+ i++;
56506
+ _a.label = 5;
56507
+ case 5: return [3 /*break*/, 1];
56508
+ case 6:
56509
+ docm = new DOMParser().parseFromString(pastedData, 'text/html');
56510
+ img = docm.getElementsByTagName('img');
56511
+ for (i_1 = 0; i_1 < images.length; i_1++) {
56512
+ if (imageUploaded[i_1]) {
56513
+ img[i_1].src = imageUploaded[i_1];
56514
+ img[i_1].alt = imageUploaded[i_1];
56515
+ }
56516
+ }
56517
+ result = '';
56518
+ result = new XMLSerializer().serializeToString(docm);
56519
+ resolve(result);
56520
+ return [2 /*return*/];
56521
+ }
56522
+ });
56523
+ }); }).catch(function (err) {
56524
+ console.error(err);
56525
+ resolve(null);
56526
+ });
56527
+ }
56528
+ }
56529
+ return [3 /*break*/, 11];
56530
+ case 1:
56531
+ if (!(types.indexOf('Files') !== -1)) return [3 /*break*/, 10];
56532
+ result = '';
56533
+ if (!(files.length > 0)) return [3 /*break*/, 9];
56534
+ _b.label = 2;
56535
+ case 2:
56536
+ _b.trys.push([2, 7, 8, 9]);
56537
+ files_2 = __values(files), files_2_1 = files_2.next();
56538
+ _b.label = 3;
56539
+ case 3:
56540
+ if (!!files_2_1.done) return [3 /*break*/, 6];
56541
+ item = files_2_1.value;
56542
+ return [4 /*yield*/, this._fileObjectService.uploadWithByteArray(item)];
56543
+ case 4:
56544
+ uploadImage = _b.sent();
56545
+ if (typeof uploadImage == 'string') {
56546
+ result += '<img src=' + this._fileObjectService.getUrlImage(uploadImage) + '/>';
56547
+ }
56548
+ else {
56549
+ this._notifierService.showWarning('Upload file thất bại');
56550
+ }
56551
+ _b.label = 5;
56552
+ case 5:
56553
+ files_2_1 = files_2.next();
56554
+ return [3 /*break*/, 3];
56555
+ case 6: return [3 /*break*/, 9];
56556
+ case 7:
56557
+ e_1_1 = _b.sent();
56558
+ e_1 = { error: e_1_1 };
56559
+ return [3 /*break*/, 9];
56560
+ case 8:
56561
+ try {
56562
+ if (files_2_1 && !files_2_1.done && (_a = files_2.return)) _a.call(files_2);
56563
+ }
56564
+ finally { if (e_1) throw e_1.error; }
56565
+ return [7 /*endfinally*/];
56566
+ case 9:
56567
+ resolve(result);
56568
+ return [3 /*break*/, 11];
56569
+ case 10:
56570
+ resolve(null);
56571
+ _b.label = 11;
56572
+ case 11: return [2 /*return*/];
56453
56573
  }
56454
- }
56455
- else {
56456
- resolve(null);
56457
- }
56458
- })];
56574
+ });
56575
+ }); })];
56459
56576
  });
56460
56577
  });
56461
56578
  };
@@ -56484,12 +56601,22 @@
56484
56601
  this.showTemplate = false;
56485
56602
  this.editor.insertContent(evt);
56486
56603
  };
56604
+ TnTinymceComponent.prototype.dataURItoBlob = function (dataURI, fileType) {
56605
+ var byteString = window.atob(dataURI);
56606
+ var arrayBuffer = new ArrayBuffer(byteString.length);
56607
+ var int8Array = new Uint8Array(arrayBuffer);
56608
+ for (var i = 0; i < byteString.length; i++) {
56609
+ int8Array[i] = byteString.charCodeAt(i);
56610
+ }
56611
+ var blob = new Blob([int8Array], { type: fileType });
56612
+ return blob;
56613
+ };
56487
56614
  return TnTinymceComponent;
56488
56615
  }(ComponentBase));
56489
56616
  TnTinymceComponent.decorators = [
56490
56617
  { type: i0.Component, args: [{
56491
56618
  selector: 'tn-tinymce',
56492
- template: "<input *ngIf=\"!_deviceDetectorService.isDesktop()\" class=\"input-tab-trap\" (focus)=\"focusTrap($event)\" />\r\n<textarea class=\"tinymce-control\" id={{id}} [ngStyle]=\"{height: height+'px'}\">\r\n</textarea>\r\n<tn-dialog #dialog *ngIf=\"equationFormModel.show\" [closeOnEscape]=\"false\"\r\n [header]=\"'C\u00F4ng th\u1EE9c to\u00E1n h\u1ECDc (d\u00F9ng laTex)' | translate\" [popupSize]=\"popupSize\">\r\n <tn-custom-scrollbar #scrollbar>\r\n <equation-editor [data]=\"dataEquation\">\r\n </equation-editor>\r\n </tn-custom-scrollbar>\r\n <ng-template #footer>\r\n <button icon=\"fas fa-check\" [disabled]=\"model.submitting\" pButton type=\"button\" (click)=\"handleOk($event)\"\r\n [label]=\"'Ok' | translate\"></button>\r\n <button icon=\"fas fa-undo\" [disabled]=\"model.submitting\" pButton class=\"ui-button-secondary\" type=\"button\"\r\n (click)=\"equationFormModel.show = false\" [label]=\"'FORM.CANCEL' | translate\"></button>\r\n </ng-template>\r\n</tn-dialog>\r\n\r\n<tn-dialog *ngIf=\"isAddNews\" #dialog [styleClass]=\"'address-form'\" [header]=\"header | translate\" [popupSize]=\"popupSize\"\r\n (onHide)=\"isAddNews = false\">\r\n <add-news #listBase [languageCode]=\"languageCode\" (showChange)=\"showChanged($event)\"></add-news>\r\n</tn-dialog>\r\n\r\n<tn-dialog *ngIf=\"showTemplate\" #dialog [styleClass]=\"'address-form'\" [header]=\"header | translate\" [popupSize]=\"popupSize\"\r\n (onHide)=\"showTemplate = false\">\r\n <tn-template (onChanged)=\"addTemplate($event)\"></tn-template>\r\n</tn-dialog>\r\n\r\n<tn-dialog *ngIf=\"isAddFile\" #dialog [styleClass]=\"'address-form'\" [header]=\"header | translate\" [popupSize]=\"popupSize\"\r\n (onHide)=\"isAddFile = false\">\r\n <file-picker-dialog #formBase [parentModel]=\" model\" [parentContext]=\"context\" (closeForm)=\"isAddFile = false\"\r\n (onCancel)=\"handleRFCancel($event)\" (onChanged)=\"showChanged($event)\">\r\n </file-picker-dialog>\r\n</tn-dialog>\r\n",
56619
+ template: "<input *ngIf=\"!_deviceDetectorService.isDesktop()\" class=\"input-tab-trap\" (focus)=\"focusTrap($event)\" />\r\n<textarea class=\"tinymce-control\" id={{id}} [ngStyle]=\"{height: height+'px'}\"></textarea>\r\n<tn-dialog #dialog *ngIf=\"equationFormModel.show\" [closeOnEscape]=\"false\"\r\n [header]=\"'C\u00F4ng th\u1EE9c to\u00E1n h\u1ECDc (d\u00F9ng laTex)' | translate\" [popupSize]=\"popupSize\">\r\n <tn-custom-scrollbar #scrollbar>\r\n <equation-editor [data]=\"dataEquation\">\r\n </equation-editor>\r\n </tn-custom-scrollbar>\r\n <ng-template #footer>\r\n <button icon=\"fas fa-check\" [disabled]=\"model.submitting\" pButton type=\"button\" (click)=\"handleOk($event)\"\r\n [label]=\"'Ok' | translate\"></button>\r\n <button icon=\"fas fa-undo\" [disabled]=\"model.submitting\" pButton class=\"ui-button-secondary\" type=\"button\"\r\n (click)=\"equationFormModel.show = false\" [label]=\"'FORM.CANCEL' | translate\"></button>\r\n </ng-template>\r\n</tn-dialog>\r\n\r\n<tn-dialog *ngIf=\"isAddNews\" #dialog [styleClass]=\"'address-form'\" [header]=\"header | translate\" [popupSize]=\"popupSize\"\r\n (onHide)=\"isAddNews = false\">\r\n <add-news #listBase [languageCode]=\"languageCode\" (showChange)=\"showChanged($event)\"></add-news>\r\n</tn-dialog>\r\n\r\n<tn-dialog *ngIf=\"showTemplate\" #dialog [styleClass]=\"'address-form'\" [header]=\"header | translate\"\r\n [popupSize]=\"popupSize\" (onHide)=\"showTemplate = false\">\r\n <tn-template (onChanged)=\"addTemplate($event)\"></tn-template>\r\n</tn-dialog>\r\n\r\n<tn-dialog *ngIf=\"isAddFile\" #dialog [styleClass]=\"'address-form'\" [header]=\"header | translate\" [popupSize]=\"popupSize\"\r\n (onHide)=\"isAddFile = false\">\r\n <file-picker-dialog #formBase [parentModel]=\" model\" [parentContext]=\"context\" (closeForm)=\"isAddFile = false\"\r\n (onCancel)=\"handleRFCancel($event)\" (onChanged)=\"showChanged($event)\">\r\n </file-picker-dialog>\r\n</tn-dialog>",
56493
56620
  providers: [
56494
56621
  {
56495
56622
  provide: forms.NG_VALUE_ACCESSOR,
@@ -56505,7 +56632,8 @@
56505
56632
  { type: i0.Injector },
56506
56633
  { type: ngxDeviceDetector.DeviceDetectorService },
56507
56634
  { type: NotifierService },
56508
- { type: FileExplorerService }
56635
+ { type: FileExplorerService },
56636
+ { type: FileObjectService }
56509
56637
  ]; };
56510
56638
  TnTinymceComponent.propDecorators = {
56511
56639
  equationForm: [{ type: i0.ViewChild, args: [EquationEditorComponent,] }],