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.
- package/bundles/tnx-shared.umd.js +203 -75
- package/bundles/tnx-shared.umd.js.map +1 -1
- package/bundles/tnx-shared.umd.min.js +2 -2
- package/bundles/tnx-shared.umd.min.js.map +1 -1
- package/components/file-explorer/services/file-object.service.d.ts +2 -0
- package/components/file-explorer/services/file-object.service.d.ts.map +1 -1
- package/components/tn-tinymce/tn-tinymce.component.d.ts +5 -2
- package/components/tn-tinymce/tn-tinymce.component.d.ts.map +1 -1
- package/esm2015/components/file-explorer/services/file-object.service.js +10 -2
- package/esm2015/components/tn-tinymce/tn-tinymce.component.js +96 -27
- package/esm2015/services/export.service.js +10 -5
- package/fesm2015/tnx-shared.js +111 -30
- package/fesm2015/tnx-shared.js.map +1 -1
- package/package.json +2 -2
- package/services/export.service.d.ts +3 -3
- package/services/export.service.d.ts.map +1 -1
- package/tnx-shared.metadata.json +1 -1
|
@@ -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
|
-
|
|
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.
|
|
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
|
-
|
|
56262
|
-
|
|
56263
|
-
|
|
56264
|
-
|
|
56265
|
-
|
|
56266
|
-
|
|
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
|
-
|
|
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 (
|
|
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
|
|
56398
|
-
var
|
|
56399
|
-
|
|
56400
|
-
|
|
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
|
-
|
|
56403
|
-
|
|
56404
|
-
|
|
56405
|
-
|
|
56406
|
-
|
|
56407
|
-
|
|
56408
|
-
|
|
56409
|
-
|
|
56410
|
-
|
|
56411
|
-
|
|
56412
|
-
|
|
56413
|
-
|
|
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
|
-
|
|
56448
|
-
|
|
56449
|
-
|
|
56450
|
-
resolve(
|
|
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
|
-
|
|
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'}\"
|
|
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,] }],
|