modal-spell-check.component.js 11.9 KB
/**
 * @fileoverview added by tsickle
 * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
 */
import * as tslib_1 from "tslib";
import { Component, EventEmitter, Output, ViewChild } from '@angular/core';
import { Request } from '../_services/request.service';
import { Common } from '../_services/common.service';
import { HttpClient } from '@angular/common/http';
import { ModalDirective } from 'ngx-bootstrap';
import { AppConfigService } from '../app-config/app-config.service';
export class ModalSpellCheckComponent {
    /**
     * @param {?} appConfigService
     * @param {?} request
     * @param {?} common
     * @param {?} http
     */
    constructor(appConfigService, request, common, http) {
        this.appConfigService = appConfigService;
        this.request = request;
        this.common = common;
        this.http = http;
        this.onSave = new EventEmitter();
        this.objectKeys = Object.keys;
        this.spellCheck = {};
        this.model = {};
        this.enableList = [];
        this.isEdit = false;
        this.config = appConfigService.getConfig();
    }
    /**
     * @return {?}
     */
    ngOnInit() {
    }
    /**
     * @param {?=} data
     * @return {?}
     */
    open(data) {
        return tslib_1.__awaiter(this, void 0, void 0, function* () {
            /** @type {?} */
            const after = { re: '(<font\\s+color=#[a-zA-Z0-9]+\\s*>(?<word>[^<]+)<\\/font>\\s*)', flags: 'g' };
            /** @type {?} */
            const regex = new RegExp(after.re, after.flags);
            for (let i in data) {
                this.model[i] = data[i].value.replace(regex, '$<word>');
                console.log(this.model[i]);
                this.enableList.push(false);
            }
            this.spellCheck = data || {};
            this.modal.show();
        });
    }
    /**
     * @return {?}
     */
    closeModal() {
        this.modal.hide();
        this.spellCheck = {};
        this.model = {};
        this.enableList = [];
        this.isEdit = false;
    }
    /**
     * @param {?} i
     * @return {?}
     */
    enableEdit(i) {
        this.enableList[i] = !this.enableList[i];
        this.isEdit = true;
    }
    /**
     * @return {?}
     */
    saveModal() {
        this.onSave.emit(this.model);
        this.modal.hide();
        this.spellCheck = {};
        this.model = {};
        this.enableList = [];
        this.isEdit = false;
    }
}
ModalSpellCheckComponent.decorators = [
    { type: Component, args: [{
                selector: 'modal-spell-check',
                template: "<div class=\"modal fade\" bsModal #modal=\"bs-modal\" [config]=\"{backdrop: 'static'}\"\n     tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"dialog-static-name1\">\n    <div class=\"modal-dialog modal-md\">\n        <div class=\"modal-content\">\n            <div class=\"modal-header\">\n                <h4 id=\"dialog-static-name\" class=\"modal-title pull-left\">\u0E15\u0E23\u0E27\u0E08\u0E04\u0E33\u0E28\u0E31\u0E1E\u0E17\u0E4C</h4>\n                <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"closeModal()\">\n                    <span aria-hidden=\"true\">&times;</span>\n                </button>\n            </div>\n\n            <div class=\"modal-body\">\n                <div *ngFor=\"let name of objectKeys(spellCheck); let i = index\" class=\"row\">\n                    <!--<div class=\"col-sm-3\">-->\n                    <!--<span>\u0E0A\u0E37\u0E48\u0E2D\u0E40\u0E23\u0E37\u0E48\u0E2D\u0E07 :</span>-->\n                    <!--</div>-->\n                    <div class=\"col-sm-12\">\n                        <div class=\"form-group\">\n                            <label class=\"control-label\">{{spellCheck[name].display}}</label>\n                            <div [innerHtml]=\"spellCheck[name].value\" [(hidden)]=\"enableList[i]\"></div>\n                            <input [id]=\"'txt'+name\" class=\"form-control m-input\" [(ngModel)]=\"model[name]\" [(hidden)]=\"!enableList[i]\">\n                        </div>\n                        <a type=\"button\" (click)=\"enableEdit(i)\" [(hidden)]=\"enableList[i]\" class=\"btn btn-default btn-sm  icon\" data-toggle=\"tooltip\"\n                           data-placement=\"top\" title=\"\u0E41\u0E01\u0E49\u0E44\u0E02\"><i class=\"fal fa-pencil-alt\"></i></a>\n                    </div>\n                </div>\n                <div class=\"m-portlet__foot m-portlet__foot--fit text-right\">\n                    \u0E04\u0E27\u0E32\u0E21\u0E2B\u0E21\u0E32\u0E22\u0E02\u0E2D\u0E07\u0E2A\u0E35 : <font color=#ff0000>  \u0E04\u0E33\u0E17\u0E35\u0E48\u0E44\u0E21\u0E48\u0E23\u0E39\u0E49\u0E08\u0E31\u0E01 </font>\n                    <div class=\"m-form__actions\">\n                        <button type=\"submit\" class=\"btn btn-success btn-md btn-md-save\" (click)=\"saveModal()\" [(hidden)]=\"!isEdit\">\n                            \u0E1A\u0E31\u0E19\u0E17\u0E36\u0E01\n                        </button>\n                    </div>\n                </div>\n            </div>\n        </div>\n    </div>\n</div>"
            }] }
];
/** @nocollapse */
ModalSpellCheckComponent.ctorParameters = () => [
    { type: AppConfigService },
    { type: Request },
    { type: Common },
    { type: HttpClient }
];
ModalSpellCheckComponent.propDecorators = {
    modal: [{ type: ViewChild, args: ['modal',] }],
    onSave: [{ type: Output }]
};
if (false) {
    /** @type {?} */
    ModalSpellCheckComponent.prototype.modal;
    /** @type {?} */
    ModalSpellCheckComponent.prototype.onSave;
    /** @type {?} */
    ModalSpellCheckComponent.prototype.objectKeys;
    /** @type {?} */
    ModalSpellCheckComponent.prototype.config;
    /** @type {?} */
    ModalSpellCheckComponent.prototype.spellCheck;
    /** @type {?} */
    ModalSpellCheckComponent.prototype.model;
    /** @type {?} */
    ModalSpellCheckComponent.prototype.enableList;
    /** @type {?} */
    ModalSpellCheckComponent.prototype.isEdit;
    /** @type {?} */
    ModalSpellCheckComponent.prototype.appConfigService;
    /** @type {?} */
    ModalSpellCheckComponent.prototype.request;
    /** @type {?} */
    ModalSpellCheckComponent.prototype.common;
    /** @type {?} */
    ModalSpellCheckComponent.prototype.http;
}

//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtc3BlbGwtY2hlY2suY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vc29jLWFwcC1saWJyYXJ5LyIsInNvdXJjZXMiOlsibGliL21vZGFsLXNwZWxsLWNoZWNrL21vZGFsLXNwZWxsLWNoZWNrLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUE0QixNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ25HLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFFbkQsT0FBTyxFQUFDLFVBQVUsRUFBbUUsTUFBTSxzQkFBc0IsQ0FBQztBQUlsSCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzdDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBTWxFLE1BQU07Ozs7Ozs7SUFTRixZQUFvQixnQkFBa0MsRUFBUyxPQUFnQixFQUFTLE1BQWMsRUFBVSxJQUFnQjtRQUE1RyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQVMsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUFTLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxTQUFJLEdBQUosSUFBSSxDQUFZO3NCQVA3RyxJQUFJLFlBQVksRUFBRTswQkFDeEIsTUFBTSxDQUFDLElBQUk7MEJBRVAsRUFBRTtxQkFDUCxFQUFFOzBCQUNHLEVBQUU7c0JBQ1YsS0FBSztRQUVWLElBQUksQ0FBQyxNQUFNLEdBQUcsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLENBQUM7S0FDOUM7Ozs7SUFFRCxRQUFRO0tBRVA7Ozs7O0lBRUssSUFBSSxDQUFDLElBQVU7OztZQUNqQixNQUFNLEtBQUssR0FBRyxFQUFFLEVBQUUsRUFBRSxnRUFBZ0UsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUE7O1lBQ2xHLE1BQU0sS0FBSyxHQUFHLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2hELEtBQUksSUFBSSxDQUFDLElBQUksSUFBSSxFQUFDO2dCQUNkLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO2dCQUN4RCxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDM0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDL0I7WUFDRCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7WUFFN0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQzs7S0FDckI7Ozs7SUFFRCxVQUFVO1FBQ04sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUNoQixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztLQUN2Qjs7Ozs7SUFFRCxVQUFVLENBQUMsQ0FBQztRQUNSLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO0tBQ3RCOzs7O0lBRUQsU0FBUztRQUNMLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO0tBQ3ZCOzs7WUF0REosU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSxtQkFBbUI7Z0JBQzdCLDYrRUFBaUQ7YUFDcEQ7Ozs7WUFMTyxnQkFBZ0I7WUFSZixPQUFPO1lBQ1IsTUFBTTtZQUVOLFVBQVU7OztvQkFZYixTQUFTLFNBQUMsT0FBTztxQkFDakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmVxdWVzdCB9IGZyb20gJy4uL19zZXJ2aWNlcy9yZXF1ZXN0LnNlcnZpY2UnO1xuaW1wb3J0IHtDb21tb259IGZyb20gJy4uL19zZXJ2aWNlcy9jb21tb24uc2VydmljZSc7XG5pbXBvcnQge1VwbG9hZFhIUkFyZ3N9IGZyb20gJ25nLXpvcnJvLWFudGQnO1xuaW1wb3J0IHtIdHRwQ2xpZW50LCBIdHRwRXZlbnQsIEh0dHBFdmVudFR5cGUsIEh0dHBIZWFkZXJzLCBIdHRwUmVxdWVzdCwgSHR0cFJlc3BvbnNlfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBOek1lc3NhZ2VTZXJ2aWNlLCBVcGxvYWRGaWxlIH0gZnJvbSAnbmctem9ycm8tYW50ZCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBPYnNlcnZlciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gJ3J4anMvUngnO1xuaW1wb3J0IHtNb2RhbERpcmVjdGl2ZX0gZnJvbSAnbmd4LWJvb3RzdHJhcCc7XG5pbXBvcnQge0FwcENvbmZpZ1NlcnZpY2V9IGZyb20gJy4uL2FwcC1jb25maWcvYXBwLWNvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbW9kYWwtc3BlbGwtY2hlY2snLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9tb2RhbC1zcGVsbC1jaGVjay5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxTcGVsbENoZWNrQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBAVmlld0NoaWxkKCdtb2RhbCcpIG1vZGFsOiBNb2RhbERpcmVjdGl2ZTtcbiAgICBAT3V0cHV0KCkgb25TYXZlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIG9iamVjdEtleXMgPSBPYmplY3Qua2V5cztcbiAgICBjb25maWc7XG4gICAgc3BlbGxDaGVjazphbnkgPSB7fTtcbiAgICBtb2RlbDphbnkgPSB7fTtcbiAgICBlbmFibGVMaXN0OmFueSA9IFtdO1xuICAgIGlzRWRpdCA9IGZhbHNlO1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgYXBwQ29uZmlnU2VydmljZTogQXBwQ29uZmlnU2VydmljZSxwcml2YXRlIHJlcXVlc3Q6IFJlcXVlc3QsIHB1YmxpYyBjb21tb246IENvbW1vbiwgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50KSB7XG4gICAgICAgIHRoaXMuY29uZmlnID0gYXBwQ29uZmlnU2VydmljZS5nZXRDb25maWcoKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcblxuICAgIH1cblxuICAgIGFzeW5jIG9wZW4oZGF0YT86IGFueSkge1xuICAgICAgICBjb25zdCBhZnRlciA9IHsgcmU6ICcoPGZvbnRcXFxccytjb2xvcj0jW2EtekEtWjAtOV0rXFxcXHMqPig/PHdvcmQ+W148XSspPFxcXFwvZm9udD5cXFxccyopJywgZmxhZ3M6ICdnJyB9XG4gICAgICAgIGNvbnN0IHJlZ2V4ID0gbmV3IFJlZ0V4cChhZnRlci5yZSwgYWZ0ZXIuZmxhZ3MpO1xuICAgICAgICBmb3IobGV0IGkgaW4gZGF0YSl7XG4gICAgICAgICAgICB0aGlzLm1vZGVsW2ldID0gZGF0YVtpXS52YWx1ZS5yZXBsYWNlKHJlZ2V4LCAnJDx3b3JkPicpO1xuICAgICAgICAgICAgY29uc29sZS5sb2codGhpcy5tb2RlbFtpXSk7XG4gICAgICAgICAgICB0aGlzLmVuYWJsZUxpc3QucHVzaChmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zcGVsbENoZWNrID0gZGF0YSB8fCB7fTtcblxuICAgICAgICB0aGlzLm1vZGFsLnNob3coKTtcbiAgICB9XG5cbiAgICBjbG9zZU1vZGFsKCl7XG4gICAgICAgIHRoaXMubW9kYWwuaGlkZSgpO1xuICAgICAgICB0aGlzLnNwZWxsQ2hlY2sgPSB7fTtcbiAgICAgICAgdGhpcy5tb2RlbCA9IHt9O1xuICAgICAgICB0aGlzLmVuYWJsZUxpc3QgPSBbXTtcbiAgICAgICAgdGhpcy5pc0VkaXQgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBlbmFibGVFZGl0KGkpe1xuICAgICAgICB0aGlzLmVuYWJsZUxpc3RbaV0gPSAhdGhpcy5lbmFibGVMaXN0W2ldO1xuICAgICAgICB0aGlzLmlzRWRpdCA9IHRydWU7XG4gICAgfVxuXG4gICAgc2F2ZU1vZGFsKCl7XG4gICAgICAgIHRoaXMub25TYXZlLmVtaXQodGhpcy5tb2RlbCk7XG4gICAgICAgIHRoaXMubW9kYWwuaGlkZSgpO1xuICAgICAgICB0aGlzLnNwZWxsQ2hlY2sgPSB7fTtcbiAgICAgICAgdGhpcy5tb2RlbCA9IHt9O1xuICAgICAgICB0aGlzLmVuYWJsZUxpc3QgPSBbXTtcbiAgICAgICAgdGhpcy5pc0VkaXQgPSBmYWxzZTtcbiAgICB9XG59XG4iXX0=