(window["webpackJsonp"] = window["webpackJsonp"] || []).push([["main"],{

/***/ "./$$_lazy_route_resource lazy recursive":
/*!******************************************************!*\
  !*** ./$$_lazy_route_resource lazy namespace object ***!
  \******************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function webpackEmptyAsyncContext(req) {
	// Here Promise.resolve().then() is used instead of new Promise() to prevent
	// uncaught exception popping up in devtools
	return Promise.resolve().then(function() {
		var e = new Error("Cannot find module '" + req + "'");
		e.code = 'MODULE_NOT_FOUND';
		throw e;
	});
}
webpackEmptyAsyncContext.keys = function() { return []; };
webpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;
module.exports = webpackEmptyAsyncContext;
webpackEmptyAsyncContext.id = "./$$_lazy_route_resource lazy recursive";

/***/ }),

/***/ "./src/app/MyError.ts":
/*!****************************!*\
  !*** ./src/app/MyError.ts ***!
  \****************************/
/*! exports provided: MyErrorHandler */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MyErrorHandler", function() { return MyErrorHandler; });
class MyErrorHandler {
    handleError(error) {
        console.log(error.stack);
        window.courseware.sendErrorLog(error);
    }
}



/***/ }),

/***/ "./src/app/app.component.ts":
/*!**********************************!*\
  !*** ./src/app/app.component.ts ***!
  \**********************************/
/*! exports provided: AppComponent */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AppComponent", function() { return AppComponent; });
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/__ivy_ngcc__/fesm2015/core.js");
/* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/common */ "./node_modules/@angular/common/__ivy_ngcc__/fesm2015/common.js");
/* harmony import */ var _form_form_component__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./form/form.component */ "./src/app/form/form.component.ts");
/* harmony import */ var _play_play_component__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./play/play.component */ "./src/app/play/play.component.ts");





function AppComponent_app_form_0_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "app-form");
    }
}
function AppComponent_app_play_1_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "app-play");
    }
}
let AppComponent = /*@__PURE__*/ (() => {
    class AppComponent {
        constructor() {
            this.type = 'play';
            const tp = this.getQueryString('type');
            if (tp) {
                this.type = tp;
            }
        }
        ngOnInit() {
        }
        getQueryString(name) {
            const reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i');
            const r = window.location.search.substr(1).match(reg);
            if (r != null) {
                return unescape(r[2]);
            }
            return null;
        }
    }
    AppComponent.ɵfac = function AppComponent_Factory(t) { return new (t || AppComponent)(); };
    AppComponent.ɵcmp = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdefineComponent"]({ type: AppComponent, selectors: [["app-root"]], decls: 2, vars: 2, consts: [[4, "ngIf"]], template: function AppComponent_Template(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](0, AppComponent_app_form_0_Template, 1, 0, "app-form", 0);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](1, AppComponent_app_play_1_Template, 1, 0, "app-play", 0);
            }
            if (rf & 2) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.type === "form");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.type === "play");
            }
        }, directives: [_angular_common__WEBPACK_IMPORTED_MODULE_1__["NgIf"], _form_form_component__WEBPACK_IMPORTED_MODULE_2__["FormComponent"], _play_play_component__WEBPACK_IMPORTED_MODULE_3__["PlayComponent"]], styles: ["\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FwcC5jb21wb25lbnQuc2NzcyJ9 */"] });
    return AppComponent;
})();



/***/ }),

/***/ "./src/app/app.module.ts":
/*!*******************************!*\
  !*** ./src/app/app.module.ts ***!
  \*******************************/
/*! exports provided: AppModule */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AppModule", function() { return AppModule; });
/* harmony import */ var _angular_platform_browser__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/platform-browser */ "./node_modules/@angular/platform-browser/__ivy_ngcc__/fesm2015/platform-browser.js");
/* harmony import */ var _angular_cdk_drag_drop__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/cdk/drag-drop */ "./node_modules/@angular/cdk/__ivy_ngcc__/esm2015/drag-drop.js");
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/__ivy_ngcc__/fesm2015/core.js");
/* harmony import */ var _MyError__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./MyError */ "./src/app/MyError.ts");
/* harmony import */ var _app_component__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./app.component */ "./src/app/app.component.ts");
/* harmony import */ var ng_zorro_antd__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ng-zorro-antd */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd.js");
/* harmony import */ var _angular_forms__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @angular/forms */ "./node_modules/@angular/forms/__ivy_ngcc__/fesm2015/forms.js");
/* harmony import */ var _angular_common_http__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @angular/common/http */ "./node_modules/@angular/common/__ivy_ngcc__/fesm2015/http.js");
/* harmony import */ var _angular_platform_browser_animations__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @angular/platform-browser/animations */ "./node_modules/@angular/platform-browser/__ivy_ngcc__/fesm2015/animations.js");
/* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @angular/common */ "./node_modules/@angular/common/__ivy_ngcc__/fesm2015/common.js");
/* harmony import */ var _angular_common_locales_zh__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @angular/common/locales/zh */ "./node_modules/@angular/common/locales/zh.js");
/* harmony import */ var _angular_common_locales_zh__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(_angular_common_locales_zh__WEBPACK_IMPORTED_MODULE_10__);
/* harmony import */ var _form_form_component__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./form/form.component */ "./src/app/form/form.component.ts");
/* harmony import */ var _play_play_component__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./play/play.component */ "./src/app/play/play.component.ts");
/* harmony import */ var _common_lesson_title_config_lesson_title_config_component__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./common/lesson-title-config/lesson-title-config.component */ "./src/app/common/lesson-title-config/lesson-title-config.component.ts");
/* harmony import */ var _pipes_background_image_pipe__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./pipes/background-image.pipe */ "./src/app/pipes/background-image.pipe.ts");
/* harmony import */ var _common_upload_image_with_preview_upload_image_with_preview_component__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./common/upload-image-with-preview/upload-image-with-preview.component */ "./src/app/common/upload-image-with-preview/upload-image-with-preview.component.ts");
/* harmony import */ var _common_player_content_wrapper_player_content_wrapper_component__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./common/player-content-wrapper/player-content-wrapper.component */ "./src/app/common/player-content-wrapper/player-content-wrapper.component.ts");
/* harmony import */ var _common_custom_hot_zone_custom_hot_zone_component__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./common/custom-hot-zone/custom-hot-zone.component */ "./src/app/common/custom-hot-zone/custom-hot-zone.component.ts");
/* harmony import */ var _common_upload_video_upload_video_component__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./common/upload-video/upload-video.component */ "./src/app/common/upload-video/upload-video.component.ts");
/* harmony import */ var _pipes_time_pipe__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./pipes/time.pipe */ "./src/app/pipes/time.pipe.ts");
/* harmony import */ var _pipes_resource_pipe__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./pipes/resource.pipe */ "./src/app/pipes/resource.pipe.ts");
/* harmony import */ var _common_audio_recorder_audio_recorder_component__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./common/audio-recorder/audio-recorder.component */ "./src/app/common/audio-recorder/audio-recorder.component.ts");
/* harmony import */ var _fortawesome_angular_fontawesome__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! @fortawesome/angular-fontawesome */ "./node_modules/@fortawesome/angular-fontawesome/__ivy_ngcc__/fesm2015/angular-fontawesome.js");
/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ "./node_modules/@fortawesome/free-solid-svg-icons/index.es.js");
/* harmony import */ var _fortawesome_free_regular_svg_icons__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! @fortawesome/free-regular-svg-icons */ "./node_modules/@fortawesome/free-regular-svg-icons/index.es.js");
/* harmony import */ var _common_custom_action_custom_action_component__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ./common/custom-action/custom-action.component */ "./src/app/common/custom-action/custom-action.component.ts");
/* harmony import */ var _common_upload_dragon_bone_upload_dragon_bone_component__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./common/upload-dragon-bone/upload-dragon-bone.component */ "./src/app/common/upload-dragon-bone/upload-dragon-bone.component.ts");
/* harmony import */ var _common_sub_template_sub_template_component__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ./common/sub-template/sub-template.component */ "./src/app/common/sub-template/sub-template.component.ts");
/* harmony import */ var _common_formula_input_formula_input_component__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./common/formula-input/formula-input.component */ "./src/app/common/formula-input/formula-input.component.ts");
/* harmony import */ var _common_mult_rect_mult_rect_component__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./common/mult-rect/mult-rect.component */ "./src/app/common/mult-rect/mult-rect.component.ts");
































Object(_angular_common__WEBPACK_IMPORTED_MODULE_9__["registerLocaleData"])(_angular_common_locales_zh__WEBPACK_IMPORTED_MODULE_10___default.a);
let AppModule = /*@__PURE__*/ (() => {
    class AppModule {
        constructor(library) {
            library.addIconPacks(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_23__["fas"], _fortawesome_free_regular_svg_icons__WEBPACK_IMPORTED_MODULE_24__["far"]);
        }
    }
    AppModule.ɵmod = _angular_core__WEBPACK_IMPORTED_MODULE_2__["ɵɵdefineNgModule"]({ type: AppModule, bootstrap: [_app_component__WEBPACK_IMPORTED_MODULE_4__["AppComponent"]] });
    AppModule.ɵinj = _angular_core__WEBPACK_IMPORTED_MODULE_2__["ɵɵdefineInjector"]({ factory: function AppModule_Factory(t) { return new (t || AppModule)(_angular_core__WEBPACK_IMPORTED_MODULE_2__["ɵɵinject"](_fortawesome_angular_fontawesome__WEBPACK_IMPORTED_MODULE_22__["FaIconLibrary"])); }, providers: [
            { provide: _angular_core__WEBPACK_IMPORTED_MODULE_2__["ErrorHandler"], useClass: _MyError__WEBPACK_IMPORTED_MODULE_3__["MyErrorHandler"] },
            { provide: ng_zorro_antd__WEBPACK_IMPORTED_MODULE_5__["NZ_I18N"], useValue: ng_zorro_antd__WEBPACK_IMPORTED_MODULE_5__["zh_CN"] }
        ], imports: [[
                _angular_platform_browser__WEBPACK_IMPORTED_MODULE_0__["BrowserModule"],
                ng_zorro_antd__WEBPACK_IMPORTED_MODULE_5__["NgZorroAntdModule"],
                _angular_forms__WEBPACK_IMPORTED_MODULE_6__["FormsModule"],
                _angular_common_http__WEBPACK_IMPORTED_MODULE_7__["HttpClientModule"],
                _angular_platform_browser_animations__WEBPACK_IMPORTED_MODULE_8__["BrowserAnimationsModule"],
                _fortawesome_angular_fontawesome__WEBPACK_IMPORTED_MODULE_22__["FontAwesomeModule"],
                _angular_cdk_drag_drop__WEBPACK_IMPORTED_MODULE_1__["DragDropModule"]
            ]] });
    return AppModule;
})();
(function () {
    (typeof ngJitMode === "undefined" || ngJitMode) && _angular_core__WEBPACK_IMPORTED_MODULE_2__["ɵɵsetNgModuleScope"](AppModule, { declarations: [_app_component__WEBPACK_IMPORTED_MODULE_4__["AppComponent"],
            _form_form_component__WEBPACK_IMPORTED_MODULE_11__["FormComponent"],
            _play_play_component__WEBPACK_IMPORTED_MODULE_12__["PlayComponent"],
            _common_lesson_title_config_lesson_title_config_component__WEBPACK_IMPORTED_MODULE_13__["LessonTitleConfigComponent"],
            _common_audio_recorder_audio_recorder_component__WEBPACK_IMPORTED_MODULE_21__["AudioRecorderComponent"],
            _common_upload_image_with_preview_upload_image_with_preview_component__WEBPACK_IMPORTED_MODULE_15__["UploadImageWithPreviewComponent"],
            _pipes_background_image_pipe__WEBPACK_IMPORTED_MODULE_14__["BackgroundImagePipe"],
            _pipes_resource_pipe__WEBPACK_IMPORTED_MODULE_20__["ResourcePipe"],
            _pipes_time_pipe__WEBPACK_IMPORTED_MODULE_19__["TimePipe"],
            _common_upload_video_upload_video_component__WEBPACK_IMPORTED_MODULE_18__["UploadVideoComponent"],
            _common_custom_hot_zone_custom_hot_zone_component__WEBPACK_IMPORTED_MODULE_17__["CustomHotZoneComponent"],
            _common_sub_template_sub_template_component__WEBPACK_IMPORTED_MODULE_27__["SubTemplateComponent"],
            _common_player_content_wrapper_player_content_wrapper_component__WEBPACK_IMPORTED_MODULE_16__["PlayerContentWrapperComponent"],
            _common_custom_action_custom_action_component__WEBPACK_IMPORTED_MODULE_25__["CustomActionComponent"],
            _common_upload_dragon_bone_upload_dragon_bone_component__WEBPACK_IMPORTED_MODULE_26__["UploadDragonBoneComponent"],
            _common_formula_input_formula_input_component__WEBPACK_IMPORTED_MODULE_28__["FormulaInputComponent"],
            _common_mult_rect_mult_rect_component__WEBPACK_IMPORTED_MODULE_29__["MultRectComponent"]], imports: [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_0__["BrowserModule"],
            ng_zorro_antd__WEBPACK_IMPORTED_MODULE_5__["NgZorroAntdModule"],
            _angular_forms__WEBPACK_IMPORTED_MODULE_6__["FormsModule"],
            _angular_common_http__WEBPACK_IMPORTED_MODULE_7__["HttpClientModule"],
            _angular_platform_browser_animations__WEBPACK_IMPORTED_MODULE_8__["BrowserAnimationsModule"],
            _fortawesome_angular_fontawesome__WEBPACK_IMPORTED_MODULE_22__["FontAwesomeModule"],
            _angular_cdk_drag_drop__WEBPACK_IMPORTED_MODULE_1__["DragDropModule"]] });
})();



/***/ }),

/***/ "./src/app/common/audio-recorder/audio-recorder.component.ts":
/*!*******************************************************************!*\
  !*** ./src/app/common/audio-recorder/audio-recorder.component.ts ***!
  \*******************************************************************/
/*! exports provided: AudioRecorderComponent */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AudioRecorderComponent", function() { return AudioRecorderComponent; });
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/__ivy_ngcc__/fesm2015/core.js");
/* harmony import */ var ng_zorro_antd__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ng-zorro-antd */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd.js");
/* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/common */ "./node_modules/@angular/common/__ivy_ngcc__/fesm2015/common.js");
/* harmony import */ var ng_zorro_antd_upload__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ng-zorro-antd/upload */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-upload.js");
/* harmony import */ var _fortawesome_angular_fontawesome__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @fortawesome/angular-fontawesome */ "./node_modules/@fortawesome/angular-fontawesome/__ivy_ngcc__/fesm2015/angular-fontawesome.js");
/* harmony import */ var ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ng-zorro-antd/icon */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-icon.js");
/* harmony import */ var ng_zorro_antd_progress__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ng-zorro-antd/progress */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-progress.js");








function AudioRecorderComponent_div_2_Template(rf, ctx) {
    if (rf & 1) {
        const _r439 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 11);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function AudioRecorderComponent_div_2_Template_div_click_0_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r439); const ctx_r438 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r438.onBtnClearAudio(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](1, "fa-icon", 12);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
}
function AudioRecorderComponent_div_3_Template(rf, ctx) {
    if (rf & 1) {
        const _r441 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 13);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function AudioRecorderComponent_div_3_Template_div_click_0_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r441); const ctx_r440 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r440.onBtnRecord(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](1, "fa-icon", 14);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2, " Record Audio ");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r429 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵclassProp"]("p-recording", ctx_r429.isRecording);
    }
}
const _c0 = function (a0) { return { "has-clear": a0 }; };
function AudioRecorderComponent_div_5_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 15);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](1, "fa-icon", 16);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2, " Upload Audio ");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r430 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngClass", _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵpureFunction1"](1, _c0, ctx_r430.withRmBtn && (ctx_r430.audioUrl || ctx_r430.audioBlob)));
    }
}
function AudioRecorderComponent_div_6_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 17);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](1, "div", 18);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "div", 19);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](3, "fa-icon", 20);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](4, " Uploading... ");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r431 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstyleProp"]("width", ctx_r431.progress + "%");
    }
}
function AudioRecorderComponent_div_7_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "div");
    }
}
function AudioRecorderComponent_ng_template_8_Template(rf, ctx) {
    if (rf & 1) {
        const _r443 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 21);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function AudioRecorderComponent_ng_template_8_Template_div_click_0_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r443); const ctx_r442 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r442.onBtnDeleteAudio(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](1, "i", 22);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
}
function AudioRecorderComponent_ng_template_10_Template(rf, ctx) {
    if (rf & 1) {
        const _r445 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 23);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function AudioRecorderComponent_ng_template_10_Template_div_click_0_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r445); const ctx_r444 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r444.onBtnSwitchType(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](1, "fa-icon", 24);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
}
function AudioRecorderComponent_div_12_Template(rf, ctx) {
    if (rf & 1) {
        const _r447 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 25);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function AudioRecorderComponent_div_12_Template_div_click_0_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r447); const ctx_r446 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r446.onBtnPlay(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](1, "nz-progress", 26);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "div", 27);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](3, "fa-icon", 28);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r437 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzPercent", ctx_r437.percent)("nzWidth", 30)("nzFormat", ctx_r437.progressText);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstyleProp"]("left", ctx_r437.isPlaying ? "8px" : "");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("icon", ctx_r437.playIcon);
    }
}
let AudioRecorderComponent = /*@__PURE__*/ (() => {
    class AudioRecorderComponent {
        constructor(nzMessageService) {
            this.nzMessageService = nzMessageService;
            this.audio = new Audio();
            this.playIcon = 'play';
            this.isPlaying = false;
            this.isRecording = false;
            this.isUploading = false;
            this.type = Type.UPLOAD; // record | upload
            this.Type = Type;
            this.withRmBtn = false;
            this.needRemove = true;
            this.audioItem = null;
            this.audioUploaded = new _angular_core__WEBPACK_IMPORTED_MODULE_0__["EventEmitter"]();
            this.audioUploadFailure = new _angular_core__WEBPACK_IMPORTED_MODULE_0__["EventEmitter"]();
            this.audioRemoved = new _angular_core__WEBPACK_IMPORTED_MODULE_0__["EventEmitter"]();
            this.percent = 0;
            this.progress = 0;
            // 开始录音
            this.onBtnRecord = () => {
            };
            this.beforeUpload = (file) => {
                this.audioUrl = null;
                if (!this.checkSelectFile(file)) {
                    return false;
                }
                this.isUploading = true;
                this.progress = 0;
            };
            this.uploadSuccess = (url) => {
                this.nzMessageService.info('Upload Success');
                this.isUploading = false;
                this.audioUrl = url;
            };
            this.uploadFailure = (err, file) => {
                this.isUploading = false;
                if (err.name && err.name === 'cancel') {
                    return;
                }
                console.log(err);
                this.nzMessageService.error('Upload Error ' + err.message);
                this.audioUploadFailure.emit(file);
            };
            this.doProgress = (p) => {
                if (p > 1) {
                    p = 1;
                }
                if (p < 0) {
                    p = 0;
                }
                // console.log(Math.floor(p * 100));
                this.progress = Math.floor(p * 100);
            };
            this.uploadUrl = window.courseware.uploadUrl();
            this.uploadData = window.courseware.uploadData();
            window['air'].getUploadCallback = (url, data) => {
                this.uploadUrl = url;
                this.uploadData = data;
            };
            this.setUploadUrl();
        }
        set audioUrl(url) {
            this._audioUrl = url;
            if (url) {
                this.audio.src = this._audioUrl;
                this.audio.load();
            }
            this.init();
        }
        get audioUrl() {
            return this._audioUrl;
        }
        setUploadUrl() {
            if (!this.uploadUrl) {
                this.uploadUrl = window.courseware.uploadUrl();
                this.uploadData = window.courseware.uploadData();
                setTimeout(() => {
                    this.setUploadUrl();
                }, 500);
            }
        }
        init() {
            this.playIcon = 'play';
            this.isPlaying = false;
            this.isRecording = false;
            this.isUploading = false;
            this.percent = 0;
            this.progress = 0;
            this.audioBlob = null;
        }
        ngOnChanges() {
            // if (!this.audioItem || !this.audioItem.type) {
            //   return;
            // }
            // this.beforeUpload(this.audioItem);
        }
        ngOnInit() {
            this.audio.onplay = () => {
                this.onPlay();
            };
            this.audio.onpause = () => {
                this.onPause();
            };
            this.audio.ontimeupdate = (event) => {
                this.onTimeUpdate(event);
            };
            this.audio.onended = (event) => {
                this.onEnded();
            };
        }
        ngOnDestroy() {
            this.audio.pause();
            this.isPlaying = false;
            this.audio.remove();
            // if (this.recorder.worker) {
            //   this.recorder.worker.terminate();
            // }
        }
        progressText(percent) {
            return ``;
        }
        onPlay() {
            console.log('play');
            this.playIcon = 'pause';
            this.isPlaying = true;
        }
        onPause() {
            console.log('pause');
            this.playIcon = 'play';
            this.isPlaying = false;
        }
        onEnded() {
            console.log('on end');
            this.playIcon = 'play';
            this.percent = 0;
            this.isPlaying = false;
        }
        onTimeUpdate(event) {
            this.percent = Math.floor((this.audio.currentTime / this.audio.duration) * 100);
        }
        onBtnPlay() {
            if (this.isRecording) {
                this.nzMessageService.warning('In Recording');
                return;
            }
            if (this.isPlaying) {
                this.audio.pause();
            }
            else {
                this.audio.play();
            }
        }
        // 切换模式
        onBtnSwitchType() {
        }
        onBtnClearAudio() {
            this.audioUrl = null;
            this.audioRemoved.emit();
        }
        onBtnDeleteAudio() {
            this.audioUrl = null;
            this.audioUploaded.emit({});
            this.audioRemoved.emit();
        }
        handleChange(info) {
            switch (info.type) {
                case 'start':
                    this.isUploading = true;
                    this.progress = 0;
                    break;
                case 'success':
                    this.isUploading = false;
                    this.uploadSuccess(info.file.response);
                    this.audioUploaded.emit(info.file.response);
                    break;
                case 'progress':
                    this.progress = parseInt(info.event.percent, 10);
                    break;
            }
        }
        checkSelectFile(file) {
            if (!file) {
                return;
            }
            const isAudio = ['audio/mp3', 'audio/wav', 'audio/ogg'].includes(file.type);
            if (!isAudio) {
                this.nzMessageService.error('You can only upload Audio file ( mp3 | wav |ogg)');
                return;
            }
            const delta = 25;
            const isOverSize = (file.size / 1024 / 1024) < delta;
            if (!isOverSize) {
                this.nzMessageService.error(`audio file  must smaller than ${delta}MB!`);
                return false;
            }
            return true;
        }
    }
    AudioRecorderComponent.ɵfac = function AudioRecorderComponent_Factory(t) { return new (t || AudioRecorderComponent)(_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdirectiveInject"](ng_zorro_antd__WEBPACK_IMPORTED_MODULE_1__["NzMessageService"])); };
    AudioRecorderComponent.ɵcmp = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdefineComponent"]({ type: AudioRecorderComponent, selectors: [["app-audio-recorder"]], inputs: { withRmBtn: "withRmBtn", needRemove: "needRemove", audioItem: "audioItem", audioUrl: "audioUrl" }, outputs: { audioUploaded: "audioUploaded", audioUploadFailure: "audioUploadFailure", audioRemoved: "audioRemoved" }, features: [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵNgOnChangesFeature"]], decls: 13, vars: 12, consts: [[1, "d-flex"], [1, "p-btn-record", "d-flex"], ["class", "btn-clear", "style", "cursor: pointer", 3, "click", 4, "ngIf"], ["class", "btn-record", 3, "p-recording", "click", 4, "ngIf"], [3, "nzAccept", "nzShowUploadList", "nzAction", "nzData", "nzChange"], ["class", "btn-upload", 3, "ngClass", 4, "ngIf"], ["class", "p-upload-progress-bg", 4, "ngIf"], [4, "ngIf", "ngIfThen", "ngIfElse"], ["truthyTemplate", ""], ["falsyTemplate", ""], ["class", "p-progress ml-2", 3, "click", 4, "ngIf"], [1, "btn-clear", 2, "cursor", "pointer", 3, "click"], ["icon", "times"], [1, "btn-record", 3, "click"], ["icon", "microphone"], [1, "btn-upload", 3, "ngClass"], ["icon", "upload"], [1, "p-upload-progress-bg"], [1, "i-bg"], [1, "i-text"], ["icon", "cloud-upload-alt"], [1, "btn-delete", 3, "click"], ["nz-icon", "", "nzType", "close", "nzTheme", "outline"], [1, "btn-switch", 3, "click"], ["icon", "cog"], [1, "p-progress", "ml-2", 3, "click"], ["nzType", "circle", 3, "nzPercent", "nzWidth", "nzFormat"], [1, "p-btn-play"], [3, "icon"]], template: function AudioRecorderComponent_Template(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 0);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "div", 1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](2, AudioRecorderComponent_div_2_Template, 2, 0, "div", 2);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](3, AudioRecorderComponent_div_3_Template, 3, 2, "div", 3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "nz-upload", 4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzChange", function AudioRecorderComponent_Template_nz_upload_nzChange_4_listener($event) { return ctx.handleChange($event); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](5, AudioRecorderComponent_div_5_Template, 3, 3, "div", 5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](6, AudioRecorderComponent_div_6_Template, 5, 2, "div", 6);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](7, AudioRecorderComponent_div_7_Template, 1, 0, "div", 7);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](8, AudioRecorderComponent_ng_template_8_Template, 2, 0, "ng-template", null, 8, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplateRefExtractor"]);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](10, AudioRecorderComponent_ng_template_10_Template, 2, 0, "ng-template", null, 9, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplateRefExtractor"]);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](12, AudioRecorderComponent_div_12_Template, 4, 6, "div", 10);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
            }
            if (rf & 2) {
                const _r433 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵreference"](9);
                const _r435 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵreference"](11);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.withRmBtn && (ctx.audioUrl || ctx.audioBlob));
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.type === ctx.Type.RECORD && !ctx.isUploading);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzAccept", ".mp3")("nzShowUploadList", false)("nzAction", ctx.uploadUrl)("nzData", ctx.uploadData);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.type === ctx.Type.UPLOAD && !ctx.isUploading);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.isUploading);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.audioUrl && ctx.needRemove)("ngIfThen", _r433)("ngIfElse", _r435);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.audioUrl || ctx.audioBlob);
            }
        }, directives: [_angular_common__WEBPACK_IMPORTED_MODULE_2__["NgIf"], ng_zorro_antd_upload__WEBPACK_IMPORTED_MODULE_3__["NzUploadComponent"], _fortawesome_angular_fontawesome__WEBPACK_IMPORTED_MODULE_4__["FaIconComponent"], _angular_common__WEBPACK_IMPORTED_MODULE_2__["NgClass"], ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_5__["NzIconDirective"], ng_zorro_antd_progress__WEBPACK_IMPORTED_MODULE_6__["NzProgressComponent"]], styles: [".d-flex[_ngcontent-%COMP%] {\n  display: flex;\n}\n\n.p-btn-record[_ngcontent-%COMP%] {\n  font-size: 0.9rem;\n  color: #555;\n  font-family: \"Monospaced Number\", \"Chinese Quote\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"PingFang SC\", \"Hiragino Sans GB\", \"Microsoft YaHei\", \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n}\n\n.p-btn-record[_ngcontent-%COMP%]   .btn-record[_ngcontent-%COMP%], .p-btn-record[_ngcontent-%COMP%]   .btn-upload[_ngcontent-%COMP%] {\n  cursor: pointer;\n  text-align: center;\n  width: 130px;\n  height: 33px;\n  line-height: 33px;\n  border-radius: 0.5rem 0 0 0.5rem;\n  border: 1px solid #ddd;\n  border-right: 0.5px;\n}\n\n.p-btn-record[_ngcontent-%COMP%]   .btn-record[_ngcontent-%COMP%]:hover, .p-btn-record[_ngcontent-%COMP%]   .btn-upload[_ngcontent-%COMP%]:hover {\n  color: #40a9ff;\n}\n\n.p-btn-record[_ngcontent-%COMP%]   .btn-record.has-clear[_ngcontent-%COMP%], .p-btn-record[_ngcontent-%COMP%]   .btn-upload.has-clear[_ngcontent-%COMP%] {\n  border-radius: 0;\n  border-left: 0;\n}\n\n.p-btn-record[_ngcontent-%COMP%]   .btn-clear[_ngcontent-%COMP%] {\n  text-align: center;\n  color: #aaa;\n  padding: 0 0.5rem;\n  border: 1px solid #ddd;\n  border-radius: 0.5rem 0 0 0.5rem;\n  height: 33px;\n  line-height: 33px;\n}\n\n.p-btn-record[_ngcontent-%COMP%]   .btn-switch[_ngcontent-%COMP%] {\n  text-align: center;\n  color: #aaa;\n  padding: 0 0.5rem;\n  border: 1px solid #ddd;\n  border-radius: 0 0.5rem 0.5rem 0;\n  height: 33px;\n  line-height: 33px;\n}\n\n.p-btn-record[_ngcontent-%COMP%]   .btn-switch[_ngcontent-%COMP%]:hover {\n  color: #40a9ff;\n}\n\n.p-btn-record[_ngcontent-%COMP%]   .btn-delete[_ngcontent-%COMP%] {\n  text-align: center;\n  color: #aaa;\n  padding: 0 0.5rem;\n  border: 1px solid #ddd;\n  border-radius: 0 0.5rem 0.5rem 0;\n  height: 33px;\n  line-height: 33px;\n}\n\n.p-btn-record[_ngcontent-%COMP%]   .btn-delete[_ngcontent-%COMP%]:hover {\n  color: #ec5b56;\n}\n\n.p-recording[_ngcontent-%COMP%] {\n  background: orangered;\n  color: white !important;\n}\n\n.p-upload-progress-bg[_ngcontent-%COMP%] {\n  position: relative;\n  width: 130px;\n  height: 33px;\n  line-height: 33px;\n}\n\n.p-upload-progress-bg[_ngcontent-%COMP%]   .i-text[_ngcontent-%COMP%] {\n  position: absolute;\n  width: 100%;\n  height: 100%;\n  text-align: center;\n  border-radius: 0.5rem 0 0 0.5rem;\n  border: 1px solid #ddd;\n  border-right: 0.5px;\n  color: white;\n  text-shadow: 0 0 2px rgba(0, 0, 0, 0.85);\n}\n\n.p-upload-progress-bg[_ngcontent-%COMP%]   .i-bg[_ngcontent-%COMP%] {\n  position: absolute;\n  left: 0;\n  top: 0;\n  height: 100%;\n  background-color: #27b43f;\n  border-radius: 0.5rem 0 0 0.5rem;\n}\n\n.p-progress[_ngcontent-%COMP%] {\n  margin-top: 2px;\n  position: relative;\n  line-height: 26px;\n}\n\n.p-progress[_ngcontent-%COMP%]   .p-btn-play[_ngcontent-%COMP%] {\n  position: absolute;\n  left: 10px;\n  top: 3px;\n  color: #555;\n}\n\n[_nghost-%COMP%]     nz-upload {\n  line-height: 33px;\n}\n/*# sourceMappingURL=data:application/json;base64,  */"] });
    return AudioRecorderComponent;
})();
var Type = /*@__PURE__*/ (function (Type) {
    Type[Type["RECORD"] = 1] = "RECORD";
    Type[Type["UPLOAD"] = 2] = "UPLOAD";
    return Type;
})({});



/***/ }),

/***/ "./src/app/common/custom-action/custom-action.component.ts":
/*!*****************************************************************!*\
  !*** ./src/app/common/custom-action/custom-action.component.ts ***!
  \*****************************************************************/
/*! exports provided: CustomActionComponent */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CustomActionComponent", function() { return CustomActionComponent; });
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/__ivy_ngcc__/fesm2015/core.js");
/* harmony import */ var ng_zorro_antd__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ng-zorro-antd */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd.js");
/* harmony import */ var ng_zorro_antd_button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ng-zorro-antd/button */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-button.js");
/* harmony import */ var ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ng-zorro-antd/icon */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-icon.js");
/* harmony import */ var ng_zorro_antd_modal__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ng-zorro-antd/modal */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-modal.js");
/* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @angular/common */ "./node_modules/@angular/common/__ivy_ngcc__/fesm2015/common.js");
/* harmony import */ var ng_zorro_antd_divider__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ng-zorro-antd/divider */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-divider.js");
/* harmony import */ var _angular_forms__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @angular/forms */ "./node_modules/@angular/forms/__ivy_ngcc__/fesm2015/forms.js");
/* harmony import */ var ng_zorro_antd_input__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ng-zorro-antd/input */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-input.js");
/* harmony import */ var _audio_recorder_audio_recorder_component__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../audio-recorder/audio-recorder.component */ "./src/app/common/audio-recorder/audio-recorder.component.ts");
/* harmony import */ var _upload_image_with_preview_upload_image_with_preview_component__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../upload-image-with-preview/upload-image-with-preview.component */ "./src/app/common/upload-image-with-preview/upload-image-with-preview.component.ts");
/* harmony import */ var _upload_dragon_bone_upload_dragon_bone_component__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../upload-dragon-bone/upload-dragon-bone.component */ "./src/app/common/upload-dragon-bone/upload-dragon-bone.component.ts");













function CustomActionComponent_div_9_Template(rf, ctx) {
    if (rf & 1) {
        const _r454 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "app-upload-image-with-preview", 19);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("imageUploaded", function CustomActionComponent_div_9_Template_app_upload_image_with_preview_imageUploaded_1_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r454); const ctx_r453 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r453.onItemImgUploadSuccess($event, ctx_r453.item); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r448 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("picUrl", ctx_r448.item == null ? null : ctx_r448.item.pic_url);
    }
}
function CustomActionComponent_div_10_Template(rf, ctx) {
    if (rf & 1) {
        const _r456 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "input", 20);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function CustomActionComponent_div_10_Template_input_ngModelChange_1_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r456); const ctx_r455 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r455.item.text = $event; })("blur", function CustomActionComponent_div_10_Template_input_blur_1_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r456); const ctx_r457 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r457.saveText(ctx_r457.item); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r449 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx_r449.item.text);
    }
}
function CustomActionComponent_div_11_Template(rf, ctx) {
    if (rf & 1) {
        const _r459 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 21);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "app-upload-dragon-bone", 22);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("save", function CustomActionComponent_div_11_Template_app_upload_dragon_bone_save_1_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r459); const ctx_r458 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r458.saveAnima($event); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r450 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("skeJsonData", ctx_r450.item.skeJsonData)("texJsonData", ctx_r450.item.texJsonData)("texPngData", ctx_r450.item.texPngData);
    }
}
function CustomActionComponent_div_19_Template(rf, ctx) {
    if (rf & 1) {
        const _r463 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 23);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "div", 24);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "span");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "input", 25);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function CustomActionComponent_div_19_Template_input_ngModelChange_4_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r463); const op_r460 = ctx.$implicit; return (op_r460[1] = $event); })("blur", function CustomActionComponent_div_19_Template_input_blur_4_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r463); const op_r460 = ctx.$implicit; const ctx_r464 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r464.saveText(op_r460); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const op_r460 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate1"]("", op_r460[0], ": ");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", op_r460[1]);
    }
}
function CustomActionComponent_div_30_Template(rf, ctx) {
    if (rf & 1) {
        const _r468 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 23);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "div", 24);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "span");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "input", 26);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function CustomActionComponent_div_30_Template_input_ngModelChange_4_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r468); const op_r465 = ctx.$implicit; return (op_r465[2] = $event); })("blur", function CustomActionComponent_div_30_Template_input_blur_4_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r468); const op_r465 = ctx.$implicit; const ctx_r469 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r469.saveText(op_r465); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const op_r465 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate1"]("", op_r465[0], ": ");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("disabled", op_r465[2] == null)("ngModel", op_r465[2]);
    }
}
let CustomActionComponent = /*@__PURE__*/ (() => {
    class CustomActionComponent {
        constructor(appRef, nzMessageService) {
            this.appRef = appRef;
            this.nzMessageService = nzMessageService;
            this.uploading = false;
            this.progress = 0;
            this.btnName = '配置变化状态';
            this.option = [];
            this.type = 'text';
            this.save = new _angular_core__WEBPACK_IMPORTED_MODULE_0__["EventEmitter"]();
            this.refreshEmitter = new _angular_core__WEBPACK_IMPORTED_MODULE_0__["EventEmitter"]();
            this.panelVisible = false;
            this.pasteData = '';
            window['air'].getUploadCallback = (url, data) => {
                this.uploadUrl = url;
                this.uploadData = data;
            };
            const tmpId = setInterval(() => {
                console.log(' in setInterval');
                this.uploadUrl = window.courseware.uploadUrl();
                this.uploadData = window.courseware.uploadData();
                if (this.uploadUrl) {
                    clearInterval(tmpId);
                }
            }, 500);
        }
        ngOnInit() {
            this.initItem();
        }
        ngOnChanges() {
        }
        initItem() {
            console.log('```this.item: ', this.item);
            if (!this.item) {
                this.item = {
                    type: this.type,
                    skeJsonData: {},
                    texJsonData: {},
                    texPngData: {},
                    changeStart: [],
                    changeEnd: [],
                    changeTime: 0.3
                };
                if (this.option) {
                    this.item.changeOption = JSON.parse(JSON.stringify(this.option));
                }
            }
            console.log('initItem', this.item);
        }
        setAnimaBtnClick() {
            this.panelVisible = true;
            this.refresh();
        }
        panelCancel() {
            this.panelVisible = false;
            this.refresh();
        }
        panelOk() {
            // this.sendItemDragonBoneData();
            this.panelVisible = false;
            this.refresh();
            this.save.emit(this.item);
        }
        saveText(t) {
        }
        radioChange(e) {
            this.item.type = e;
            console.log('e: ', e);
        }
        onItemImgUploadSuccess(e, item) {
            item.pic_url = e.url;
            this.refresh();
        }
        onItemAudioUploadSuccess(e, item) {
            item.audio_url = e.url;
            this.refresh();
        }
        saveAnima(e) {
            console.log("~ e: ", e);
        }
        copyChangeData() {
            console.log('this.item: ', this.item);
            const jsonData = {
                changeOption: this.item.changeOption,
                changeTime: this.item.changeTime
                // bgItem,
                // hotZoneItemArr,
                // isHasRect: this.isHasRect,
                // isHasPic: this.isHasPic,
                // isHasText: this.isHasText,
                // isHasAudio: this.isHasAudio,
                // isHasAnima: this.isHasAnima,
                // hotZoneFontObj: this.hotZoneFontObj,
                // defaultItemType: this.defaultItemType,
                // hotZoneImgSize: this.hotZoneImgSize,
            };
            const oInput = document.createElement('input');
            oInput.value = JSON.stringify(jsonData);
            document.body.appendChild(oInput);
            oInput.select(); // 选择对象
            document.execCommand('Copy'); // 执行浏览器复制命令
            document.body.removeChild(oInput);
            this.nzMessageService.success('复制成功');
        }
        importData() {
            if (!this.pasteData) {
                return;
            }
            try {
                const data = JSON.parse(this.pasteData);
                console.log('data:', data);
                const { changeOption, changeTime } = data;
                this.item.changeOption = changeOption;
                this.item.changeTime = changeTime;
                this.pasteData = '';
            }
            catch (e) {
                console.log('err: ', e);
                this.nzMessageService.error('导入失败');
            }
        }
        /**
         * 刷新 渲染页面
         */
        refresh() {
            // this.refreshEmitter.emit();
            setTimeout(() => {
                this.appRef.tick();
            }, 1);
        }
        closePanel() {
            console.log(' in closePanel ');
            this.refresh();
        }
        ngOnDestroy() {
        }
    }
    CustomActionComponent.ɵfac = function CustomActionComponent_Factory(t) { return new (t || CustomActionComponent)(_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdirectiveInject"](_angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdirectiveInject"](ng_zorro_antd__WEBPACK_IMPORTED_MODULE_1__["NzMessageService"])); };
    CustomActionComponent.ɵcmp = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdefineComponent"]({ type: CustomActionComponent, selectors: [["app-custom-action"]], inputs: { btnName: "btnName", option: "option", item: "item", type: "type" }, outputs: { save: "save", refreshEmitter: "refreshEmitter" }, features: [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵNgOnChangesFeature"]], decls: 44, vars: 12, consts: [[1, "position-relative"], ["nz-button", "", 2, "border-radius", "0.5rem", "border", "1px solid #ddd", 3, "click"], ["nz-icon", "", "nzType", "tool", "nzTheme", "outline"], ["nzOkText", "\u4FDD\u5B58", 3, "nzVisible", "nzTitle", "nzVisibleChange", "nzAfterClose", "nzOnCancel", "nzOnOk"], [2, "margin-bottom", "10px", "width", "80%", "margin", "auto"], [4, "ngIf"], ["style", "margin-left: 100px;", 4, "ngIf"], [2, "margin-top", "10px"], [2, "display", "flex", "justify-content", "space-around"], [2, "width", "30%", "display", "flex", "align-items", "center", "flex-direction", "column"], ["style", "margin-bottom: 5px; ", 4, "ngFor", "ngForOf"], [2, "display", "flex", "width", "100%", "align-items", "center", "justify-content", "center"], ["type", "text", "nz-input", "", 2, "width", "80px", "margin-left", "5px", 3, "ngModel", "ngModelChange", "blur"], [2, "display", "flex", "align-items", "center", "justify-content", "center", "margin-top", "10px"], ["nz-button", "", 2, "margin-left", "20px", "margin-top", "-5px", 3, "click"], [2, "margin-left", "20px", "margin-top", "-5px"], ["type", "text", "nz-input", "", 2, "width", "100px", 3, "ngModel", "ngModelChange"], ["nz-button", "", "nzType", "primary", 2, "margin-left", "5px", 3, "disabled", "click"], [2, "margin", "auto", 3, "audioUrl", "audioUploaded"], [3, "picUrl", "imageUploaded"], ["type", "text", "nz-input", "", 3, "ngModel", "ngModelChange", "blur"], [2, "margin-left", "100px"], [3, "skeJsonData", "texJsonData", "texPngData", "save"], [2, "margin-bottom", "5px"], [2, "display", "flex", "align-items", "center", "justify-content", "center"], ["type", "text", "nz-input", "", 2, "margin-left", "5px", 3, "ngModel", "ngModelChange", "blur"], ["type", "text", "nz-input", "", 2, "margin-left", "5px", 3, "disabled", "ngModel", "ngModelChange", "blur"]], template: function CustomActionComponent_Template(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 0);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "button", 1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function CustomActionComponent_Template_button_click_1_listener() { return ctx.setAnimaBtnClick(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](2, "i", 2);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "nz-modal", 3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzVisibleChange", function CustomActionComponent_Template_nz_modal_nzVisibleChange_4_listener($event) { return ctx.panelVisible = $event; })("nzAfterClose", function CustomActionComponent_Template_nz_modal_nzAfterClose_4_listener() { return ctx.closePanel(); })("nzOnCancel", function CustomActionComponent_Template_nz_modal_nzOnCancel_4_listener() { return ctx.panelCancel(); })("nzOnOk", function CustomActionComponent_Template_nz_modal_nzOnOk_4_listener() { return ctx.panelOk(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](5, "div");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "h4");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](7, "\u57FA\u7840\u5185\u5BB9\uFF1A");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "div", 4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](9, CustomActionComponent_div_9_Template, 2, 1, "div", 5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](10, CustomActionComponent_div_10_Template, 2, 1, "div", 5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](11, CustomActionComponent_div_11_Template, 2, 3, "div", 6);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](12, "nz-divider", 7);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](13, "h4");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](14, "\u72B6\u6001\u8BBE\u7F6E\uFF1A");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](15, "div", 8);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](16, "div", 9);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](17, "h5");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](18, " \u5F00\u59CB\u72B6\u6001 ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](19, CustomActionComponent_div_19_Template, 5, 2, "div", 10);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](20, "div", 9);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](21, "h5");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](22, " \u5207\u6362\u65F6\u95F4 ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](23, "div", 11);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](24, "span");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](25, "time: ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](26, "input", 12);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function CustomActionComponent_Template_input_ngModelChange_26_listener($event) { return ctx.item.changeTime = $event; })("blur", function CustomActionComponent_Template_input_blur_26_listener() { return ctx.saveText(ctx.item.changeTime); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](27, "div", 9);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](28, "h5");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](29, " \u7ED3\u675F\u72B6\u6001 ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](30, CustomActionComponent_div_30_Template, 5, 3, "div", 10);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](31, "div", 13);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](32, "button", 14);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function CustomActionComponent_Template_button_click_32_listener() { return ctx.copyChangeData(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](33, " \u590D\u5236\u6570\u636E ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](34, "div", 15);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](35, "span");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](36, "\u7C98\u8D34\u6570\u636E: ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](37, "input", 16);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function CustomActionComponent_Template_input_ngModelChange_37_listener($event) { return ctx.pasteData = $event; });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](38, "button", 17);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function CustomActionComponent_Template_button_click_38_listener() { return ctx.importData(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](39, "\u5BFC\u5165");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](40, "nz-divider", 7);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](41, "h4");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](42, " \u97F3\u9891\u8BBE\u7F6E ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](43, "app-audio-recorder", 18);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("audioUploaded", function CustomActionComponent_Template_app_audio_recorder_audioUploaded_43_listener($event) { return ctx.onItemAudioUploadSuccess($event, ctx.item); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
            }
            if (rf & 2) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate1"](" ", ctx.btnName, " ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzVisible", ctx.panelVisible)("nzTitle", ctx.btnName);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.item.type == "pic");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.item.type == "text");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.item.type == "anima");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](8);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx.item.changeOption);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](7);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.item.changeTime);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx.item.changeOption);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](7);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.pasteData);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("disabled", ctx.pasteData == "");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("audioUrl", ctx.item == null ? null : ctx.item.audio_url);
            }
        }, directives: [ng_zorro_antd_button__WEBPACK_IMPORTED_MODULE_2__["NzButtonComponent"], ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_3__["NzIconDirective"], ng_zorro_antd_modal__WEBPACK_IMPORTED_MODULE_4__["NzModalComponent"], _angular_common__WEBPACK_IMPORTED_MODULE_5__["NgIf"], ng_zorro_antd_divider__WEBPACK_IMPORTED_MODULE_6__["NzDividerComponent"], _angular_common__WEBPACK_IMPORTED_MODULE_5__["NgForOf"], _angular_forms__WEBPACK_IMPORTED_MODULE_7__["DefaultValueAccessor"], ng_zorro_antd_input__WEBPACK_IMPORTED_MODULE_8__["NzInputDirective"], _angular_forms__WEBPACK_IMPORTED_MODULE_7__["NgControlStatus"], _angular_forms__WEBPACK_IMPORTED_MODULE_7__["NgModel"], _audio_recorder_audio_recorder_component__WEBPACK_IMPORTED_MODULE_9__["AudioRecorderComponent"], _upload_image_with_preview_upload_image_with_preview_component__WEBPACK_IMPORTED_MODULE_10__["UploadImageWithPreviewComponent"], _upload_dragon_bone_upload_dragon_bone_component__WEBPACK_IMPORTED_MODULE_11__["UploadDragonBoneComponent"]], styles: [".p-image-uploader[_ngcontent-%COMP%] {\n  position: relative;\n  display: block;\n  width: 100%;\n  height: 0;\n  padding-bottom: 56.25%;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%] {\n  position: absolute;\n  left: 0;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  border: 2px dashed #ddd;\n  border-radius: 0.5rem;\n  background-color: #fafafa;\n  text-align: center;\n  color: #aaa;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%]   .p-upload-icon[_ngcontent-%COMP%] {\n  text-align: center;\n  margin: auto;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%]   .p-upload-icon[_ngcontent-%COMP%]   .anticon-upload[_ngcontent-%COMP%] {\n  color: #888;\n  font-size: 5rem;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%]   .p-upload-icon[_ngcontent-%COMP%]   .p-progress-bar[_ngcontent-%COMP%] {\n  position: relative;\n  width: 20rem;\n  height: 1.5rem;\n  border: 1px solid #ccc;\n  border-radius: 1rem;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%]   .p-upload-icon[_ngcontent-%COMP%]   .p-progress-bar[_ngcontent-%COMP%]   .p-progress-bg[_ngcontent-%COMP%] {\n  background-color: #1890ff;\n  border-radius: 1rem;\n  height: 100%;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%]   .p-upload-icon[_ngcontent-%COMP%]   .p-progress-bar[_ngcontent-%COMP%]   .p-progress-value[_ngcontent-%COMP%] {\n  position: absolute;\n  top: 0;\n  left: 0;\n  width: 100%;\n  height: 100%;\n  text-shadow: 0 0 4px #000;\n  color: white;\n  text-align: center;\n  font-size: 0.9rem;\n  line-height: 1.5rem;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%]   .p-preview[_ngcontent-%COMP%] {\n  width: 100%;\n  height: 100%;\n  background-size: contain;\n  background-repeat: no-repeat;\n  background-position: 50% 50%;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .d-flex[_ngcontent-%COMP%] {\n  display: flex;\n}\n.p-btn-delete[_ngcontent-%COMP%] {\n  position: absolute;\n  right: -0.5rem;\n  top: -0.5rem;\n  width: 2rem;\n  height: 2rem;\n  border: 0.2rem solid white;\n  border-radius: 50%;\n  font-size: 1.2rem;\n  background-color: #fb781a;\n  color: white;\n  text-align: center;\n}\n.p-upload-progress-bg[_ngcontent-%COMP%] {\n  position: absolute;\n  width: 100%;\n  height: 100%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n.p-upload-progress-bg[_ngcontent-%COMP%]   .i-text[_ngcontent-%COMP%] {\n  position: absolute;\n  text-align: center;\n  color: white;\n  text-shadow: 0 0 2px rgba(0, 0, 0, 0.85);\n}\n.p-upload-progress-bg[_ngcontent-%COMP%]   .i-bg[_ngcontent-%COMP%] {\n  position: absolute;\n  left: 0;\n  top: 0;\n  height: 100%;\n  background-color: #27b43f;\n  border-radius: 0.5rem;\n}\n.anima-upload-btn[_ngcontent-%COMP%] {\n  padding: 10px;\n}\n[_nghost-%COMP%]     .ant-upload {\n  display: block;\n}\n/*# sourceMappingURL=data:application/json;base64,  */"] });
    return CustomActionComponent;
})();



/***/ }),

/***/ "./src/app/common/custom-hot-zone/Unit.ts":
/*!************************************************!*\
  !*** ./src/app/common/custom-hot-zone/Unit.ts ***!
  \************************************************/
/*! exports provided: MySprite, RoundSprite, ColorSpr, GrayscaleSpr, BitMapLabel, Label, RichTextOld, RichText, LineRect, ShapeRect, Line, ShapeCircle, ShapeRectNew, MyAnimation, tweenChange, rotateItem, scaleItem, moveItem, endShow, hideItem, showItem, alphaItem, showStar, randomSortByArr, radianToAngle, angleToRadian, getPosByAngle, getAngleByPos, removeItemFromArr, circleMove, getPosDistance, delayCall, formatTime, getMinScale, jelly, showPopParticle, shake, HotZoneItem, HotZoneMultRect, HotZoneImg, HotZoneLabel, HotZoneAction, DragItem, EditorItem */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MySprite", function() { return MySprite; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "RoundSprite", function() { return RoundSprite; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ColorSpr", function() { return ColorSpr; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "GrayscaleSpr", function() { return GrayscaleSpr; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BitMapLabel", function() { return BitMapLabel; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Label", function() { return Label; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "RichTextOld", function() { return RichTextOld; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "RichText", function() { return RichText; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "LineRect", function() { return LineRect; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ShapeRect", function() { return ShapeRect; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Line", function() { return Line; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ShapeCircle", function() { return ShapeCircle; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ShapeRectNew", function() { return ShapeRectNew; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MyAnimation", function() { return MyAnimation; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "tweenChange", function() { return tweenChange; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "rotateItem", function() { return rotateItem; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "scaleItem", function() { return scaleItem; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "moveItem", function() { return moveItem; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "endShow", function() { return endShow; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "hideItem", function() { return hideItem; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "showItem", function() { return showItem; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "alphaItem", function() { return alphaItem; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "showStar", function() { return showStar; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "randomSortByArr", function() { return randomSortByArr; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "radianToAngle", function() { return radianToAngle; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "angleToRadian", function() { return angleToRadian; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getPosByAngle", function() { return getPosByAngle; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getAngleByPos", function() { return getAngleByPos; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "removeItemFromArr", function() { return removeItemFromArr; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "circleMove", function() { return circleMove; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getPosDistance", function() { return getPosDistance; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "delayCall", function() { return delayCall; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "formatTime", function() { return formatTime; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getMinScale", function() { return getMinScale; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "jelly", function() { return jelly; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "showPopParticle", function() { return showPopParticle; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "shake", function() { return shake; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "HotZoneItem", function() { return HotZoneItem; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "HotZoneMultRect", function() { return HotZoneMultRect; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "HotZoneImg", function() { return HotZoneImg; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "HotZoneLabel", function() { return HotZoneLabel; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "HotZoneAction", function() { return HotZoneAction; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DragItem", function() { return DragItem; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "EditorItem", function() { return EditorItem; });
/* harmony import */ var _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tweenjs/tween.js */ "./node_modules/@tweenjs/tween.js/dist/tween.esm.js");

class Sprite {
    constructor(ctx = null) {
        this.x = 0;
        this.y = 0;
        this.color = "";
        this.radius = 0;
        this.alive = false;
        this.margin = 0;
        this.angle = 0;
        if (!ctx) {
            this.ctx = window.curCtx;
        }
        else {
            this.ctx = ctx;
        }
    }
    update($event) {
        this.draw();
    }
    draw() { }
}
class MySprite extends Sprite {
    constructor() {
        super(...arguments);
        this._width = 0;
        this._height = 0;
        this._anchorX = 0;
        this._anchorY = 0;
        this._offX = 0;
        this._offY = 0;
        this.scaleX = 1;
        this.scaleY = 1;
        this._alpha = 1;
        this.rotation = 0;
        this.visible = true;
        this.skewX = 0;
        this.skewY = 0;
        this._shadowFlag = false;
        this._shadowOffsetX = 0;
        this._shadowOffsetY = 0;
        this._shadowBlur = 5;
        this._radius = 0;
        this.children = [this];
        this.childDepandVisible = true;
        this.childDepandAlpha = false;
        this.hideArrow = false;
        this.showColorMask = false;
        this._z = 0;
        this._bitmapFlag = false;
    }
    set btimapFlag(v) {
        this._bitmapFlag = v;
    }
    get btimapFlag() {
        return this._bitmapFlag;
    }
    set alpha(v) {
        this._alpha = v;
        if (this.childDepandAlpha) {
            this._changeChildAlpha(v);
        }
    }
    get alpha() {
        return this._alpha;
    }
    set width(v) {
        this._width = v;
        this.refreshAnchorOff();
    }
    get width() {
        return this._width;
    }
    set height(v) {
        this._height = v;
        this.refreshAnchorOff();
    }
    get height() {
        return this._height;
    }
    set anchorX(value) {
        this._anchorX = value;
        this.refreshAnchorOff();
    }
    get anchorX() {
        return this._anchorX;
    }
    set anchorY(value) {
        this._anchorY = value;
        this.refreshAnchorOff();
    }
    get anchorY() {
        return this._anchorY;
    }
    init(imgObj = null, anchorX = 0.5, anchorY = 0.5) {
        if (imgObj) {
            this.img = imgObj;
            this.width = this.img.width;
            this.height = this.img.height;
        }
        this.anchorX = anchorX;
        this.anchorY = anchorY;
    }
    setShowRect(rect) {
        this._showRect = rect;
    }
    setShadow(offX, offY, blur, color = "rgba(0, 0, 0, 0.3)") {
        this._shadowFlag = true;
        this._shadowColor = color;
        this._shadowOffsetX = offX;
        this._shadowOffsetY = offY;
        this._shadowBlur = blur;
    }
    setRadius(r) {
        this._radius = r;
    }
    update($event = null) {
        if (!this.visible && this.childDepandVisible) {
            return;
        }
        this.draw();
    }
    draw() {
        this.ctx.save();
        this.drawInit();
        this.updateChildren();
        this.ctx.restore();
    }
    drawInit() {
        this.ctx.translate(this.x, this.y);
        this.ctx.rotate((this.rotation * Math.PI) / 180);
        this.ctx.scale(this.scaleX, this.scaleY);
        this.ctx.globalAlpha = this.alpha;
        this.ctx.transform(1, this.skewX, this.skewY, 1, 0, 0);
        //
        // if (this._radius) {
        //
        //   const r = this._radius;
        //   const w = this.width;
        //   const h = this.height;
        //
        //   this.ctx.lineTo(-w / 2, h / 2);          // 创建水平线
        //   this.ctx.arcTo(-w / 2, -h / 2, -w / 2 + r, -h / 2, r);
        //   this.ctx.arcTo(w / 2, -h / 2, w / 2, -h / 2 + r, r);
        //   this.ctx.arcTo(w / 2, h / 2, w / 2 - r, h / 2, r);
        //   this.ctx.arcTo(-w / 2, h / 2, -w / 2, h / 2 - r, r);
        //
        //   this.ctx.clip();
        // }
    }
    drawSelf() {
        if (this._shadowFlag) {
            this.ctx.shadowOffsetX = this._shadowOffsetX;
            this.ctx.shadowOffsetY = this._shadowOffsetY;
            this.ctx.shadowBlur = this._shadowBlur;
            this.ctx.shadowColor = this._shadowColor;
        }
        else {
            this.ctx.shadowOffsetX = 0;
            this.ctx.shadowOffsetY = 0;
            this.ctx.shadowBlur = null;
            this.ctx.shadowColor = null;
        }
        if (this.img) {
            if (this._showRect) {
                const rect = this._showRect;
                this.ctx.drawImage(this.img, rect.x, rect.y, rect.width, rect.height, this._offX, this._offY + rect.y, this.width, rect.height);
            }
            else {
                this.ctx.drawImage(this.img, this._offX, this._offY);
            }
        }
    }
    updateChildren() {
        if (this.children.length <= 0) {
            return;
        }
        for (const child of this.children) {
            if (child === this) {
                if (this.visible) {
                    this.drawSelf();
                }
            }
            else {
                child.update();
            }
        }
    }
    load(url, anchorX = 0.5, anchorY = 0.5) {
        return new Promise((resolve, reject) => {
            const img = new Image();
            img.onload = () => resolve(img);
            img.onerror = reject;
            img.src = url;
        }).then((img) => {
            this.init(img, anchorX, anchorY);
            return img;
        });
    }
    addChild(child, z = 1) {
        if (this.children.indexOf(child) === -1) {
            this.children.push(child);
            child._z = z;
            child.parent = this;
        }
        this.children.sort((a, b) => {
            return a._z - b._z;
        });
        if (this.childDepandAlpha) {
            child.alpha = this.alpha;
        }
    }
    removeChild(child) {
        const index = this.children.indexOf(child);
        if (index !== -1) {
            this.children.splice(index, 1);
        }
    }
    removeChildren() {
        for (let i = 0; i < this.children.length; i++) {
            if (this.children[i]) {
                if (this.children[i] !== this) {
                    this.children.splice(i, 1);
                    i--;
                }
            }
        }
    }
    _changeChildAlpha(alpha) {
        for (const child of this.children) {
            if (child !== this) {
                child.alpha = alpha;
            }
        }
    }
    refreshAnchorOff() {
        this._offX = -this._width * this.anchorX;
        this._offY = -this._height * this.anchorY;
    }
    setScaleXY(value) {
        this.scaleX = this.scaleY = value;
    }
    getBoundingBox() {
        const getParentData = (item) => {
            let px = item.x;
            let py = item.y;
            let sx = item.scaleX;
            let sy = item.scaleY;
            const parent = item.parent;
            if (parent) {
                const obj = getParentData(parent);
                const _x = obj.px;
                const _y = obj.py;
                const _sx = obj.sx;
                const _sy = obj.sy;
                px = _x + item.x * _sx;
                py = _y + item.y * _sy;
                sx *= _sx;
                sy *= _sy;
            }
            return { px, py, sx, sy };
        };
        const data = getParentData(this);
        const x = data.px + this._offX * Math.abs(data.sx);
        const y = data.py + this._offY * Math.abs(data.sy);
        const width = this.width * Math.abs(data.sx);
        const height = this.height * Math.abs(data.sy);
        return { x, y, width, height };
    }
}
class RoundSprite extends MySprite {
    init(imgObj = null, anchorX = 0.5, anchorY = 0.5) {
        if (imgObj) {
            this.img = imgObj;
            this.width = this.img.width;
            this.height = this.img.height;
        }
        this.anchorX = anchorX;
        this.anchorY = anchorY;
        const canvas = window["curCanvas"];
        const w = canvas.nativeElement.width;
        const h = canvas.nativeElement.height;
        this._offCanvas = document.createElement("canvas");
        this._offCanvas.width = w;
        this._offCanvas.height = h;
        this._offCtx = this._offCanvas.getContext("2d");
        // this._newCtx = this.ctx;
        // this.ctx = this._offCtx;
    }
    drawSelf() {
        //
        // if (this._shadowFlag) {
        //
        //   this.ctx.shadowOffsetX = this._shadowOffsetX;
        //   this.ctx.shadowOffsetY = this._shadowOffsetY;
        //   this.ctx.shadowBlur = this._shadowBlur;
        //   this.ctx.shadowColor = this._shadowColor;
        // } else {
        //   this.ctx.shadowOffsetX = 0;
        //   this.ctx.shadowOffsetY = 0;
        //   this.ctx.shadowBlur = null;
        //   this.ctx.shadowColor = null;
        // }
        if (this._radius) {
            const r = this._radius;
            const w = this.width;
            const h = this.height;
            const x = -this._offX;
            const y = -this._offY;
            this._offCtx.lineTo(x - w / 2, y + h / 2); // 创建水平线
            this._offCtx.arcTo(x - w / 2, y - h / 2, x - w / 2 + r, y - h / 2, r);
            this._offCtx.arcTo(x + w / 2, y - h / 2, x + w / 2, y - h / 2 + r, r);
            this._offCtx.arcTo(x + w / 2, y + h / 2, x + w / 2 - r, y + h / 2, r);
            this._offCtx.arcTo(x - w / 2, y + h / 2, x - w / 2, y + h / 2 - r, r);
            this._offCtx.clip();
        }
        if (this.img) {
            this._offCtx.drawImage(this.img, 0, 0);
            this.ctx.drawImage(this._offCanvas, this._offX, this._offX);
        }
    }
}
class ColorSpr extends MySprite {
    constructor() {
        super(...arguments);
        this.r = 0;
        this.g = 0;
        this.b = 0;
    }
    createGSCanvas() {
        if (!this.img) {
            return;
        }
        const rect = this.getBoundingBox();
        if (rect.width <= 1 || rect.height <= 1) {
            return;
        }
        const c = this.ctx.getImageData(rect.x, rect.y, rect.width, rect.height);
        for (let i = 0; i < c.height; i++) {
            for (let j = 0; j < c.width; j++) {
                const x = i * 4 * c.width + j * 4;
                const r = c.data[x];
                const g = c.data[x + 1];
                const b = c.data[x + 2];
                c.data[x] = this.r;
                c.data[x + 1] = this.g;
                c.data[x + 2] = this.b;
                // c.data[x] = c.data[x + 1] = c.data[x + 2] = (r + g + b) / 3 ;
                // // c.data[x + 3] = 255;
            }
        }
        this.ctx.putImageData(c, rect.x, rect.y, 0, 0, rect.width, rect.height);
    }
    drawSelf() {
        super.drawSelf();
        this.createGSCanvas();
    }
}
class GrayscaleSpr extends MySprite {
    constructor() {
        super(...arguments);
        this.grayScale = 120;
    }
    createGSCanvas() {
        if (!this.img) {
            return;
        }
        const rect = this.getBoundingBox();
        const c = this.ctx.getImageData(rect.x, rect.y, rect.width, rect.height);
        for (let i = 0; i < c.height; i++) {
            for (let j = 0; j < c.width; j++) {
                const x = i * 4 * c.width + j * 4;
                const r = c.data[x];
                const g = c.data[x + 1];
                const b = c.data[x + 2];
                // const a = c.data[x + 3];
                c.data[x] = c.data[x + 1] = c.data[x + 2] = this.grayScale; // (r + g + b) / 3;
                // c.data[x + 3] = 255;
            }
        }
        this.ctx.putImageData(c, rect.x, rect.y, 0, 0, rect.width, rect.height);
    }
    drawSelf() {
        super.drawSelf();
        this.createGSCanvas();
    }
}
class BitMapLabel extends MySprite {
    setText(data, text) {
        this.labelArr = [];
        const labelArr = [];
        const tmpArr = text.split("");
        let totalW = 0;
        let h = 0;
        for (const tmp of tmpArr) {
            const label = new MySprite(this.ctx);
            label.init(data[tmp], 0);
            this.addChild(label);
            labelArr.push(label);
            totalW += label.width;
            h = label.height;
        }
        this.width = totalW;
        this.height = h;
        let offX = -totalW / 2;
        for (const label of labelArr) {
            label.x = offX;
            offX += label.width;
        }
        this.labelArr = labelArr;
    }
}
class Label extends MySprite {
    constructor(ctx = null) {
        super(ctx);
        // fontSize:String = '40px';
        this.fontName = "Verdana";
        this.textAlign = "left";
        this.fontSize = 40;
        this.fontColor = "#000000";
        this.fontWeight = 900;
        this.outline = 0;
        this.outlineColor = "#ffffff";
        // _shadowFlag = false;
        // _shadowColor;
        // _shadowOffsetX;
        // _shadowOffsetY;
        // _shadowBlur;
        this._outlineFlag = false;
        this.init();
    }
    get text() {
        return this._text;
    }
    set text(value) {
        this._text = value;
        this.refreshSize();
    }
    refreshSize() {
        this.ctx.save();
        this.ctx.font = `${this.fontSize * this.scaleX}px ${this.fontName}`;
        this.ctx.textAlign = this.textAlign;
        this.ctx.textBaseline = "middle";
        this.ctx.fontWeight = this.fontWeight;
        this._width = this.ctx.measureText(this.text).width;
        this._height = this.fontSize;
        this.refreshAnchorOff();
        this.ctx.restore();
    }
    setMaxSize(w) {
        this._maxWidth = w;
        this.refreshSize();
        if (this.width >= w) {
            this.scaleX *= w / this.width;
            this.scaleY *= w / this.width;
        }
    }
    show(callBack = null) {
        this.visible = true;
        if (this.alpha >= 1) {
            return;
        }
        const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(this)
            .to({ alpha: 1 }, 800)
            // .easing(TWEEN.Easing.Quadratic.Out) // Use an easing function to make the animation smooth.
            .onComplete(() => {
            if (callBack) {
                callBack();
            }
        })
            .start(); // Start the tween immediately.
    }
    setOutline(width = 5, color = "#ffffff") {
        this._outlineFlag = true;
        this._outLineWidth = width;
        this._outLineColor = color;
    }
    drawText() {
        if (!this.text) {
            return;
        }
        this.ctx.font = `${this.fontSize}px ${this.fontName}`;
        this.ctx.textAlign = this.textAlign;
        this.ctx.textBaseline = "middle";
        this.ctx.fontWeight = this.fontWeight;
        if (this._outlineFlag) {
            this.ctx.lineWidth = this._outLineWidth;
            this.ctx.strokeStyle = this._outLineColor;
            this.ctx.strokeText(this.text, 0, 0);
        }
        this.ctx.fillStyle = this.fontColor;
        if (this.outline > 0) {
            this.ctx.lineWidth = this.outline;
            this.ctx.strokeStyle = this.outlineColor;
            this.ctx.strokeText(this.text, 0, 0);
        }
        this.ctx.fillText(this.text, 0, 0);
    }
    drawSelf() {
        super.drawSelf();
        this.drawText();
    }
}
class RichTextOld extends Label {
    constructor() {
        super(...arguments);
        this.textArr = [];
        this.fontSize = 40;
    }
    setText(text, words) {
        let newText = text;
        for (const word of words) {
            const re = new RegExp(word, "g");
            newText = newText.replace(re, `#${word}#`);
            // newText = newText.replace(word, `#${word}#`);
        }
        this.textArr = newText.split("#");
        this.text = newText;
        // this.setSize();
    }
    refreshSize() {
        this.ctx.save();
        this.ctx.font = `${this.fontSize}px ${this.fontName}`;
        this.ctx.textAlign = this.textAlign;
        this.ctx.textBaseline = "middle";
        this.ctx.fontWeight = this.fontWeight;
        let curX = 0;
        for (const text of this.textArr) {
            const w = this.ctx.measureText(text).width;
            curX += w;
        }
        this.width = curX;
        this.height = this.fontSize;
        this.refreshAnchorOff();
        this.ctx.restore();
    }
    show(callBack = null) {
        // console.log(' in show ');
        this.visible = true;
        // this.alpha = 0;
        const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(this)
            .to({ alpha: 1 }, 800)
            // .easing(TWEEN.Easing.Quadratic.Out) // Use an easing function to make the animation smooth.
            .onComplete(() => {
            if (callBack) {
                callBack();
            }
        })
            .start(); // Start the tween immediately.
    }
    drawText() {
        // console.log('in drawText', this.text);
        if (!this.text) {
            return;
        }
        this.ctx.font = `${this.fontSize}px ${this.fontName}`;
        this.ctx.textAlign = this.textAlign;
        this.ctx.textBaseline = "middle";
        this.ctx.fontWeight = 900;
        this.ctx.lineWidth = 5;
        this.ctx.strokeStyle = "#ffffff";
        // this.ctx.strokeText(this.text, 0, 0);
        this.ctx.fillStyle = "#000000";
        // this.ctx.fillText(this.text, 0, 0);
        let curX = 0;
        for (let i = 0; i < this.textArr.length; i++) {
            const w = this.ctx.measureText(this.textArr[i]).width;
            if ((i + 1) % 2 === 0) {
                this.ctx.fillStyle = "#c8171e";
            }
            else {
                this.ctx.fillStyle = "#000000";
            }
            this.ctx.fillText(this.textArr[i], curX, 0);
            curX += w;
        }
    }
}
class RichText extends Label {
    constructor(ctx) {
        super(ctx);
        this.disH = 30;
        // this.dataArr = dataArr;
    }
    drawText() {
        if (!this.text) {
            return;
        }
        this.ctx.font = `${this.fontSize}px ${this.fontName}`;
        this.ctx.textAlign = this.textAlign;
        this.ctx.textBaseline = "middle";
        this.ctx.fontWeight = this.fontWeight;
        this.ctx.fillStyle = this.fontColor;
        const selfW = this.width * this.scaleX;
        const chr = this.text.split(" ");
        let temp = "";
        const row = [];
        const w = selfW - 80;
        const disH = (this.fontSize + this.disH) * this.scaleY;
        for (const c of chr) {
            if (this.ctx.measureText(temp).width < w &&
                this.ctx.measureText(temp + c).width <= w) {
                temp += " " + c;
            }
            else {
                row.push(temp);
                temp = " " + c;
            }
        }
        row.push(temp);
        const x = 0;
        const y = (-row.length * disH) / 2;
        // for (let b = 0 ; b < row.length; b++) {
        //   this.ctx.strokeText(row[b], x, y + ( b + 1 ) * disH ); // 每行字体y坐标间隔20
        // }
        if (this._outlineFlag) {
            this.ctx.lineWidth = this._outLineWidth;
            this.ctx.strokeStyle = this._outLineColor;
            for (let b = 0; b < row.length; b++) {
                this.ctx.strokeText(row[b], x, y + (b + 1) * disH); // 每行字体y坐标间隔20
            }
            // this.ctx.strokeText(this.text, 0, 0);
        }
        // this.ctx.fillStyle = '#ff7600';
        for (let b = 0; b < row.length; b++) {
            this.ctx.fillText(row[b], x, y + (b + 1) * disH); // 每行字体y坐标间隔20
        }
    }
    drawSelf() {
        super.drawSelf();
        this.drawText();
    }
}
class LineRect extends MySprite {
    constructor() {
        super(...arguments);
        this.lineColor = "#ffffff";
        this.lineWidth = 10;
    }
    setSize(w, h) {
        this.width = w;
        this.height = h;
    }
    drawLine() {
        this.ctx.beginPath();
        this.ctx.moveTo(this._offX, this._offY);
        this.ctx.lineTo(this._offX + this.width, this._offY);
        this.ctx.lineTo(this._offX + this.width, this._offY + this.height);
        this.ctx.lineTo(this._offX, this._offY + this.height);
        this.ctx.closePath();
        this.ctx.lineWidth = this.lineWidth;
        // this.ctx.fillStyle = "rgb(2,33,42)";  //指定填充颜色
        // this.ctx.fill();   //对多边形进行填充
        this.ctx.strokeStyle = this.lineColor; // "#ffffff";
        this.ctx.stroke();
    }
    drawSelf() {
        super.drawSelf();
        this.drawLine();
    }
}
class ShapeRect extends MySprite {
    constructor() {
        super(...arguments);
        this.fillColor = "#FF0000";
    }
    setSize(w, h) {
        this.width = w;
        this.height = h;
        // console.log('w:', w);
        // console.log('h:', h);
    }
    drawShape() {
        this.ctx.fillStyle = this.fillColor;
        this.ctx.fillRect(this._offX, this._offY, this.width, this.height);
    }
    drawSelf() {
        super.drawSelf();
        this.drawShape();
    }
}
class Line extends MySprite {
    constructor() {
        super(...arguments);
        this.lineWidth = 5;
        this.lineColor = "#000000";
        this._pointArr = [];
        this.roundFlag = true;
        this._pointS = 1;
        this.lastPointIndex = 0;
    }
    init() {
        const canvas = window["curCanvas"];
        const w = canvas.nativeElement.width;
        const h = canvas.nativeElement.height;
        console.log("w: ", w);
        console.log("h: ", h);
        this._offCanvas = document.createElement("canvas");
        this._offCanvas.width = w;
        this._offCanvas.height = h;
        // this._offCanvas = _offCanvas;
        // this._offCtx = this._offCanvas.getContext('2d');
        // this._offCanvas = new OffscreenCanvas(w, h);
        this._offCtx = this._offCanvas.getContext("2d");
    }
    addPoint(x, y) {
        this._pointArr.push([x, y]);
        if (this._pointArr.length < 2) {
            return;
        }
        //
        // const lastP = this._pointArr[this._pointArr.length - 1];
        //
        //
        // const context = this._offCtx;
        // context.moveTo (lastP[0], lastP[1]);       // 设置起点状态
        // context.lineTo (x, y);       // 设置末端状态
        //
        // context.lineWidth = this.lineWidth;          //设置线宽状态
        // context.strokeStyle = this.lineColor;
        // context.stroke();
        //
        //
        // this.bitMap = this._offCanvas.transferToImageBitmap();
        // const tmpLine = new MySprite(this._offCtx);
        // tmpLine.init(this.imgObj);
        // tmpLine.anchorY = 1;
        // tmpLine.anchorX = 0.5;
        // tmpLine.x = lastP[0];
        // tmpLine.y = lastP[1];
        //
        // const disH = getPosDistance(lastP[0], lastP[1], x, y);
        // tmpLine.scaleX = this.lineWidth / tmpLine.width;
        // tmpLine.scaleY = disH / tmpLine.height * 1.1;
        //
        // const angle = getAngleByPos(lastP[0], lastP[1], x, y);
        // tmpLine.rotation = angle;
        //
        // this.addChild(tmpLine);
    }
    setPointArr(arr, imgObj) {
        this.removeChildren();
        if (arr.length < 2) {
            return;
        }
        let p1 = arr[0];
        let p2;
        for (let i = 1; i < arr.length; i++) {
            p2 = arr[i];
            const tmpLine = new MySprite();
            tmpLine.init(imgObj);
            tmpLine.anchorY = 1;
            tmpLine.anchorX = 0.5;
            tmpLine.x = p1[0];
            tmpLine.y = p1[1];
            const disH = getPosDistance(p1[0], p1[1], p2[0], p2[1]);
            tmpLine.scaleX = this.lineWidth / tmpLine.width;
            tmpLine.scaleY = (disH / tmpLine.height) * 1.1;
            const angle = getAngleByPos(p1[0], p1[1], p2[0], p2[1]);
            tmpLine.rotation = angle;
            this.addChild(tmpLine);
            p1 = p2;
        }
    }
    drawLine() {
        if (this._pointArr.length < 2) {
            return;
        }
        const curMaxPointIndex = this._pointArr.length - 1;
        if (curMaxPointIndex > this.lastPointIndex) {
            const arr = this._pointArr;
            const context = this._offCtx;
            context.moveTo(arr[this.lastPointIndex][0] * this._pointS, arr[this.lastPointIndex][1] * this._pointS); // 设置起点状态
            for (let i = this.lastPointIndex + 1; i < arr.length; i++) {
                context.lineTo(arr[i][0] * this._pointS, arr[i][1] * this._pointS); // 设置末端状态
            }
            if (this.roundFlag) {
                context.lineCap = "round";
            }
            context.lineWidth = this.lineWidth; //设置线宽状态
            context.strokeStyle = this.lineColor;
            context.stroke();
            this.lastPointIndex = curMaxPointIndex;
            // this.bitMap = this._offCanvas.transferToImageBitmap();
        }
        // this.ctx.drawImage(this.bitMap, this._offX, this._offY);
        this.ctx.drawImage(this._offCanvas, this._offX, this._offY);
    }
    drawSelf() {
        super.drawSelf();
        this.drawLine();
        // if (this.img) {
        //   this.ctx.drawImage(this._offCanvas, 0, 0, this.width, this.height);
        // }
        // if (this.bitMap) {
        //   this.bitMap = this._offCanvas.transferToImageBitmap();
        //   this.ctx.drawImage(this.bitMap, 0, 0, this.width, this.height);
        // }
    }
}
class ShapeCircle extends MySprite {
    constructor() {
        super(...arguments);
        this.fillColor = "#FF0000";
        this.radius = 0;
    }
    setRadius(r) {
        this.anchorX = this.anchorY = 0.5;
        this.radius = r;
        this.width = r * 2;
        this.height = r * 2;
    }
    drawShape() {
        this.ctx.beginPath();
        this.ctx.fillStyle = this.fillColor;
        this.ctx.arc(0, 0, this.radius, 0, angleToRadian(360));
        this.ctx.fill();
    }
    drawSelf() {
        super.drawSelf();
        this.drawShape();
    }
}
class ShapeRectNew extends MySprite {
    constructor() {
        super(...arguments);
        this.radius = 0;
        this.fillColor = "#ffffff";
        this.strokeColor = "#000000";
        this.fill = true;
        this.stroke = false;
        this.lineWidth = 1;
    }
    setSize(w, h, r) {
        this.width = w;
        this.height = h;
        this.radius = r;
    }
    setOutLine(color, lineWidth) {
        this.stroke = true;
        this.strokeColor = color;
        this.lineWidth = lineWidth;
    }
    drawShape() {
        const ctx = this.ctx;
        const width = this.width;
        const height = this.height;
        const radius = this.radius;
        ctx.save();
        ctx.beginPath(0);
        // 从右下角顺时针绘制，弧度从0到1/2PI
        ctx.arc(width - radius, height - radius, radius, 0, Math.PI / 2);
        // 矩形下边线
        ctx.lineTo(radius, height);
        // 左下角圆弧，弧度从1/2PI到PI
        ctx.arc(radius, height - radius, radius, Math.PI / 2, Math.PI);
        // 矩形左边线
        ctx.lineTo(0, radius);
        // 左上角圆弧，弧度从PI到3/2PI
        ctx.arc(radius, radius, radius, Math.PI, (Math.PI * 3) / 2);
        // 上边线
        ctx.lineTo(width - radius, 0);
        // 右上角圆弧
        ctx.arc(width - radius, radius, radius, (Math.PI * 3) / 2, Math.PI * 2);
        // 右边线
        ctx.lineTo(width, height - radius);
        ctx.closePath();
        if (this.fill) {
            ctx.fillStyle = this.fillColor;
            ctx.fill();
        }
        if (this.stroke) {
            ctx.lineWidth = this.lineWidth;
            ctx.strokeStyle = this.strokeColor;
            ctx.stroke();
        }
        ctx.restore();
    }
    drawSelf() {
        super.drawSelf();
        this.drawShape();
    }
}
class MyAnimation extends MySprite {
    constructor() {
        super(...arguments);
        this.frameArr = [];
        this.frameIndex = 0;
        this.playFlag = false;
        this.curDelay = 0;
        this.loop = false;
        this.delayPerUnit = 1;
        this.restartFlag = false;
        this.reverseFlag = false;
    }
    addFrameByImg(img) {
        const spr = new MySprite(this.ctx);
        spr.init(img);
        this._refreshSize(img);
        spr.visible = false;
        this.addChild(spr);
        this.frameArr.push(spr);
        this.frameArr[this.frameIndex].visible = true;
    }
    addFrameByUrl(url) {
        const spr = new MySprite(this.ctx);
        spr.load(url).then((img) => {
            this._refreshSize(img);
        });
        spr.visible = false;
        this.addChild(spr);
        this.frameArr.push(spr);
        this.frameArr[this.frameIndex].visible = true;
    }
    _refreshSize(img) {
        if (this.width < img.width) {
            this.width = img.width;
        }
        if (this.height < img.height) {
            this.height = img.height;
        }
    }
    play() {
        this.playFlag = true;
        this.lastDateTime = new Date().getTime();
    }
    stop() {
        this.playFlag = false;
    }
    replay() {
        this.restartFlag = true;
        this.play();
    }
    reverse() {
        this.reverseFlag = !this.reverseFlag;
        this.frameArr.reverse();
        this.frameIndex = 0;
    }
    showAllFrame() {
        for (const frame of this.frameArr) {
            frame.alpha = 1;
        }
    }
    hideAllFrame() {
        for (const frame of this.frameArr) {
            frame.alpha = 0;
        }
    }
    playEnd() {
        this.playFlag = false;
        this.curDelay = 0;
        this.frameArr[this.frameIndex].visible = true;
        if (this.playEndFunc) {
            this.playEndFunc();
            this.playEndFunc = null;
        }
    }
    updateFrame() {
        if (this.frameArr[this.frameIndex]) {
            this.frameArr[this.frameIndex].visible = false;
        }
        this.frameIndex++;
        if (this.frameIndex >= this.frameArr.length) {
            if (this.loop) {
                this.frameIndex = 0;
            }
            else if (this.restartFlag) {
                this.restartFlag = false;
                this.frameIndex = 0;
            }
            else {
                this.frameIndex--;
                this.playEnd();
                return;
            }
        }
        this.frameArr[this.frameIndex].visible = true;
    }
    _updateDelay(delay) {
        this.curDelay += delay;
        if (this.curDelay < this.delayPerUnit) {
            return;
        }
        this.curDelay -= this.delayPerUnit;
        this.updateFrame();
    }
    _updateLastDate() {
        if (!this.playFlag) {
            return;
        }
        let delay = 0;
        if (this.lastDateTime) {
            delay = (new Date().getTime() - this.lastDateTime) / 1000;
        }
        this.lastDateTime = new Date().getTime();
        this._updateDelay(delay);
    }
    update($event = null) {
        super.update($event);
        this._updateLastDate();
    }
}
// --------===========  util func  =============-------------
function tweenChange(item, obj, time = 0.8, callBack = null, easing = null, update = null) {
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item).to(obj, time * 1000);
    if (callBack) {
        tween.onComplete(() => {
            callBack();
        });
    }
    if (easing) {
        tween.easing(easing);
    }
    if (update) {
        tween.onUpdate((a, b) => {
            update(a, b);
        });
    }
    tween.start();
    return tween;
}
function rotateItem(item, rotation, time = 0.8, callBack = null, easing = null) {
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item).to({ rotation }, time * 1000);
    if (callBack) {
        tween.onComplete(() => {
            callBack();
        });
    }
    if (easing) {
        tween.easing(easing);
    }
    tween.start();
}
function scaleItem(item, scale, time = 0.8, callBack = null, easing = null) {
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item).to({ scaleX: scale, scaleY: scale }, time * 1000);
    if (callBack) {
        tween.onComplete(() => {
            callBack();
        });
    }
    if (easing) {
        tween.easing(easing);
    }
    tween.start();
    return tween;
}
function moveItem(item, x, y, time = 0.8, callBack = null, easing = null) {
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item).to({ x, y }, time * 1000);
    if (callBack) {
        tween.onComplete(() => {
            callBack();
        });
    }
    if (easing) {
        tween.easing(easing);
    }
    tween.start();
    return tween;
}
function endShow(item, s = 1) {
    item.scaleX = item.scaleY = 0;
    item.alpha = 0;
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item)
        .to({ alpha: 1, scaleX: s, scaleY: s }, 800)
        .easing(_tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Easing.Elastic.Out) // Use an easing function to make the animation smooth.
        .onComplete(() => { })
        .start();
}
function hideItem(item, time = 0.8, callBack = null, easing = null) {
    if (item.alpha === 0) {
        return;
    }
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item)
        .to({ alpha: 0 }, time * 1000)
        // .easing(TWEEN.Easing.Quadratic.Out) // Use an easing function to make the animation smooth.
        .onComplete(() => {
        if (callBack) {
            callBack();
        }
    });
    if (easing) {
        tween.easing(easing);
    }
    tween.start();
}
function showItem(item, time = 0.8, callBack = null, easing = null) {
    if (item.alpha === 1) {
        if (callBack) {
            callBack();
        }
        return;
    }
    item.visible = true;
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item)
        .to({ alpha: 1 }, time * 1000)
        // .easing(TWEEN.Easing.Quadratic.Out) // Use an easing function to make the animation smooth.
        .onComplete(() => {
        if (callBack) {
            callBack();
        }
    });
    if (easing) {
        tween.easing(easing);
    }
    tween.start();
}
function alphaItem(item, alpha, time = 0.8, callBack = null, easing = null) {
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item)
        .to({ alpha }, time * 1000)
        // .easing(TWEEN.Easing.Quadratic.Out) // Use an easing function to make the animation smooth.
        .onComplete(() => {
        if (callBack) {
            callBack();
        }
    });
    if (easing) {
        tween.easing(easing);
    }
    tween.start();
}
function showStar(item, time = 0.8, callBack = null, easing = null) {
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item)
        .to({ alpha: 1, scale: 1 }, time * 1000)
        // .easing(TWEEN.Easing.Quadratic.Out) // Use an easing function to make the animation smooth.
        .onComplete(() => {
        if (callBack) {
            callBack();
        }
    });
    if (easing) {
        tween.easing(easing);
    }
    tween.start();
}
function randomSortByArr(arr) {
    if (!arr) {
        return;
    }
    const newArr = [];
    const tmpArr = arr.concat();
    while (tmpArr.length > 0) {
        const randomIndex = Math.floor(tmpArr.length * Math.random());
        newArr.push(tmpArr[randomIndex]);
        tmpArr.splice(randomIndex, 1);
    }
    return newArr;
}
function radianToAngle(radian) {
    return (radian * 180) / Math.PI;
    // 角度 = 弧度 * 180 / Math.PI;
}
function angleToRadian(angle) {
    return (angle * Math.PI) / 180;
    // 弧度= 角度 * Math.PI / 180;
}
function getPosByAngle(angle, len) {
    const radian = (angle * Math.PI) / 180;
    const x = Math.sin(radian) * len;
    const y = Math.cos(radian) * len;
    return { x, y };
}
function getAngleByPos(px, py, mx, my) {
    const x = Math.abs(px - mx);
    const y = Math.abs(py - my);
    const z = Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2));
    const cos = y / z;
    const radina = Math.acos(cos); // 用反三角函数求弧度
    let angle = Math.floor((180 / (Math.PI / radina)) * 100) / 100; // 将弧度转换成角度
    if (mx > px && my > py) {
        // 鼠标在第四象限
        angle = 180 - angle;
    }
    if (mx === px && my > py) {
        // 鼠标在y轴负方向上
        angle = 180;
    }
    if (mx > px && my === py) {
        // 鼠标在x轴正方向上
        angle = 90;
    }
    if (mx < px && my > py) {
        // 鼠标在第三象限
        angle = 180 + angle;
    }
    if (mx < px && my === py) {
        // 鼠标在x轴负方向
        angle = 270;
    }
    if (mx < px && my < py) {
        // 鼠标在第二象限
        angle = 360 - angle;
    }
    // console.log('angle: ', angle);
    return angle;
}
function removeItemFromArr(arr, item) {
    const index = arr.indexOf(item);
    if (index !== -1) {
        arr.splice(index, 1);
    }
}
function circleMove(item, x0, y0, time = 2, addR = 360, xPer = 1, yPer = 1, callBack = null, easing = null) {
    const r = getPosDistance(item.x, item.y, x0, y0);
    let a = getAngleByPos(item.x, item.y, x0, y0);
    a += 90;
    const obj = { r, a };
    item._circleAngle = a;
    const targetA = a + addR;
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item).to({ _circleAngle: targetA }, time * 1000);
    if (callBack) {
        tween.onComplete(() => {
            callBack();
        });
    }
    if (easing) {
        tween.easing(easing);
    }
    tween.onUpdate((item, progress) => {
        // console.log(item._circleAngle);
        const r = obj.r;
        const a = item._circleAngle;
        const x = x0 + r * xPer * Math.cos((a * Math.PI) / 180);
        const y = y0 + r * yPer * Math.sin((a * Math.PI) / 180);
        item.x = x;
        item.y = y;
        // obj.a ++;
    });
    tween.start();
}
function getPosDistance(sx, sy, ex, ey) {
    const _x = ex - sx;
    const _y = ey - sy;
    const len = Math.sqrt(Math.pow(_x, 2) + Math.pow(_y, 2));
    return len;
}
function delayCall(callback, second) {
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(this)
        .delay(second * 1000)
        .onComplete(() => {
        if (callback) {
            callback();
        }
    })
        .start();
}
function formatTime(fmt, date) {
    // "yyyy-MM-dd HH:mm:ss";
    const o = {
        "M+": date.getMonth() + 1,
        "d+": date.getDate(),
        "h+": date.getHours(),
        "m+": date.getMinutes(),
        "s+": date.getSeconds(),
        "q+": Math.floor((date.getMonth() + 3) / 3),
        S: date.getMilliseconds(),
    };
    if (/(y+)/.test(fmt)) {
        fmt = fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length));
    }
    for (const k in o) {
        if (new RegExp("(" + k + ")").test(fmt)) {
            fmt = fmt.replace(RegExp.$1, RegExp.$1.length === 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length));
        }
    }
    return fmt;
}
function getMinScale(item, maxLen) {
    const sx = maxLen / item.width;
    const sy = maxLen / item.height;
    const minS = Math.min(sx, sy);
    return minS;
}
function jelly(item, time = 0.7) {
    if (item.jellyTween) {
        _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].remove(item.jellyTween);
    }
    const t = time / 9;
    const baseSX = item.scaleX;
    const baseSY = item.scaleY;
    let index = 0;
    const run = () => {
        if (index >= arr.length) {
            item.jellyTween = null;
            return;
        }
        const data = arr[index];
        const t = tweenChange(item, { scaleX: data[0], scaleY: data[1] }, data[2], () => {
            index++;
            run();
        }, _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Easing.Sinusoidal.InOut);
        item.jellyTween = t;
    };
    const arr = [
        [baseSX * 1.1, baseSY * 0.9, t],
        [baseSX * 0.98, baseSY * 1.02, t * 2],
        [baseSX * 1.02, baseSY * 0.98, t * 2],
        [baseSX * 0.99, baseSY * 1.01, t * 2],
        [baseSX * 1.0, baseSY * 1.0, t * 2],
    ];
    run();
}
function showPopParticle(img, pos, parent, num = 20, minLen = 40, maxLen = 80, showTime = 0.4) {
    for (let i = 0; i < num; i++) {
        const particle = new MySprite();
        particle.init(img);
        particle.x = pos.x;
        particle.y = pos.y;
        parent.addChild(particle);
        const randomR = 360 * Math.random();
        particle.rotation = randomR;
        const randomS = 0.3 + Math.random() * 0.7;
        particle.setScaleXY(randomS * 0.3);
        const randomX = Math.random() * 20 - 10;
        particle.x += randomX;
        const randomY = Math.random() * 20 - 10;
        particle.y += randomY;
        const randomL = minLen + Math.random() * (maxLen - minLen);
        const randomA = 360 * Math.random();
        const randomT = getPosByAngle(randomA, randomL);
        moveItem(particle, particle.x + randomT.x, particle.y + randomT.y, showTime, () => { }, _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Easing.Exponential.Out);
        // scaleItem(particle, 0, 0.6, () => {
        //
        // });
        scaleItem(particle, randomS, 0.6, () => { }, _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Easing.Exponential.Out);
        setTimeout(() => {
            hideItem(particle, 0.4, () => { }, _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Easing.Cubic.In);
        }, showTime * 0.5 * 1000);
    }
}
function shake(item, time = 0.5, callback = null, rate = 1) {
    if (item.shakeTween) {
        return;
    }
    item.shakeTween = true;
    const offX = 15 * item.scaleX * rate;
    const offY = 15 * item.scaleX * rate;
    const baseX = item.x;
    const baseY = item.y;
    const easing = _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Easing.Sinusoidal.InOut;
    const move4 = () => {
        moveItem(item, baseX, baseY, time / 4, () => {
            item.shakeTween = false;
            if (callback) {
                callback();
            }
        }, easing);
    };
    const move3 = () => {
        moveItem(item, baseX + offX / 4, baseY + offY / 4, time / 4, () => {
            move4();
        }, easing);
    };
    const move2 = () => {
        moveItem(item, baseX - (offX / 4) * 3, baseY - (offY / 4) * 3, time / 4, () => {
            move3();
        }, easing);
    };
    const move1 = () => {
        moveItem(item, baseX + offX, baseY + offY, time / 7.5, () => {
            move2();
        }, easing);
    };
    move1();
}
// --------------- custom class --------------------
class HotZoneItem extends MySprite {
    constructor() {
        super(...arguments);
        this.lineDashFlag = false;
        this.isAnimaStyle = false;
        this.rectFillColor = "#ffffff";
        this.rectEdgeColor = "#1bfff7";
    }
    get itemType() {
        return this._itemType;
    }
    set itemType(value) {
        this._itemType = value;
    }
    setSize(w, h) {
        this.width = w;
        this.height = h;
        const rect = new ShapeRect(this.ctx);
        rect.x = -w / 2;
        rect.y = -h / 2;
        rect.setSize(w, h);
        rect.fillColor = this.rectFillColor;
        rect.alpha = 0.2;
        this.addChild(rect);
    }
    showLabel(text = null) {
        if (!this.label) {
            this.label = new Label(this.ctx);
            this.label.anchorY = 0;
            this.label.fontSize = 40;
            this.label.textAlign = "center";
            this.addChild(this.label);
            // this.label.scaleX = 1 / this.scaleX;
            // this.label.scaleY = 1 / this.scaleY;
            this.refreshLabelScale();
        }
        if (text) {
            this.label.text = text;
        }
        else if (this.title) {
            this.label.text = this.title;
        }
        this.label.visible = true;
    }
    hideLabel() {
        if (!this.label) {
            return;
        }
        this.label.visible = false;
    }
    refreshLabelScale() {
        if (this.scaleX == this.scaleY) {
            this.label.setScaleXY(1);
        }
        if (this.scaleX > this.scaleY) {
            this.label.scaleX = this.scaleY / this.scaleX;
        }
        else {
            this.label.scaleY = this.scaleX / this.scaleY;
        }
    }
    showLineDash() {
        this.lineDashFlag = true;
        if (this.arrow) {
            this.arrow.visible = true;
        }
        else {
            this.arrow = new MySprite(this.ctx);
            this.arrow.load("assets/common/arrow.png", 1, 0);
            this.arrow.setScaleXY(0.06);
            this.arrowTop = new MySprite(this.ctx);
            this.arrowTop.load("assets/common/arrow_top.png", 0.5, 0);
            this.arrowTop.setScaleXY(0.06);
            this.arrowRight = new MySprite(this.ctx);
            this.arrowRight.load("assets/common/arrow_right.png", 1, 0.5);
            this.arrowRight.setScaleXY(0.06);
        }
        this.showLabel();
    }
    hideLineDash() {
        this.lineDashFlag = false;
        if (this.arrow) {
            this.arrow.visible = false;
        }
        this.hideLabel();
    }
    setAnimaStyle(isAnimaStyle) {
        this.isAnimaStyle = isAnimaStyle;
        console.log("in  setAnimaStyle ");
    }
    drawArrow() {
        if (!this.arrow) {
            return;
        }
        const rect = this.getBoundingBox();
        this.arrow.x = rect.x + rect.width;
        this.arrow.y = rect.y;
        this.arrow.update();
        if (!this.isAnimaStyle) {
            this.arrowTop.x = rect.x + rect.width / 2;
            this.arrowTop.y = rect.y;
            this.arrowTop.update();
            this.arrowRight.x = rect.x + rect.width;
            this.arrowRight.y = rect.y + rect.height / 2;
            this.arrowRight.update();
        }
    }
    drawFrame() {
        this.ctx.save();
        const rect = this.getBoundingBox();
        const w = rect.width;
        const h = rect.height;
        const x = rect.x + w / 2;
        const y = rect.y + h / 2;
        this.ctx.setLineDash([5, 5]);
        this.ctx.lineWidth = 2;
        this.ctx.strokeStyle = this.rectEdgeColor;
        this.ctx.beginPath();
        this.ctx.moveTo(x - w / 2, y - h / 2);
        this.ctx.lineTo(x + w / 2, y - h / 2);
        this.ctx.lineTo(x + w / 2, y + h / 2);
        this.ctx.lineTo(x - w / 2, y + h / 2);
        this.ctx.lineTo(x - w / 2, y - h / 2);
        if (this.showColorMask) {
            this.ctx.fillStyle = '#FF0';
            this.ctx.fill();
        }
        this.ctx.stroke();
        this.ctx.restore();
    }
    draw() {
        super.draw();
        if (this.lineDashFlag) {
            this.drawFrame();
            if (!this.hideArrow) {
                this.drawArrow();
            }
        }
    }
}
class HotZoneMultRect extends HotZoneItem {
    drawLine() {
        if (!this.item) {
            return;
        }
        this.ctx.save();
        const rect = this.getBoundingBox();
        const w = rect.width;
        const h = rect.height;
        const x = rect.x; //+ w / 2;
        const y = rect.y; //+ h / 2;
        this.ctx.setLineDash([4, 4]);
        this.ctx.lineWidth = 1;
        this.ctx.strokeStyle = "#ffa568";
        this.ctx.beginPath();
        this.ctx.moveTo(x + w / 2, y + h / 2);
        this.ctx.lineTo(this.item.x, this.item.y);
        // this.ctx.fill();
        this.ctx.stroke();
        this.ctx.restore();
    }
    draw() {
        super.draw();
        if (this.lineDashFlag) {
            this.drawLine();
        }
    }
}
class HotZoneImg extends MySprite {
    drawFrame() {
        this.ctx.save();
        const rect = this.getBoundingBox();
        const w = rect.width;
        const h = rect.height;
        const x = rect.x + w / 2;
        const y = rect.y + h / 2;
        this.ctx.setLineDash([5, 5]);
        this.ctx.lineWidth = 2;
        this.ctx.strokeStyle = "#1bfff7";
        this.ctx.beginPath();
        this.ctx.moveTo(x - w / 2, y - h / 2);
        this.ctx.lineTo(x + w / 2, y - h / 2);
        this.ctx.lineTo(x + w / 2, y + h / 2);
        this.ctx.lineTo(x - w / 2, y + h / 2);
        this.ctx.lineTo(x - w / 2, y - h / 2);
        // this.ctx.fill();
        this.ctx.stroke();
        this.ctx.restore();
    }
    draw() {
        super.draw();
        this.drawFrame();
    }
}
class HotZoneLabel extends Label {
    drawFrame() {
        this.ctx.save();
        const rect = this.getBoundingBox();
        const w = rect.width / this.scaleX;
        const h = this.height * this.scaleY;
        const x = this.x;
        const y = this.y;
        this.ctx.setLineDash([5, 5]);
        this.ctx.lineWidth = 2;
        this.ctx.strokeStyle = "#1bfff7";
        this.ctx.beginPath();
        this.ctx.moveTo(x - w / 2, y - h / 2);
        this.ctx.lineTo(x + w / 2, y - h / 2);
        this.ctx.lineTo(x + w / 2, y + h / 2);
        this.ctx.lineTo(x - w / 2, y + h / 2);
        this.ctx.lineTo(x - w / 2, y - h / 2);
        // this.ctx.fill();
        this.ctx.stroke();
        this.ctx.restore();
    }
    draw() {
        super.draw();
        this.drawFrame();
    }
    getLabelRect() {
        const rect = this.getBoundingBox();
        const width = rect.width / this.scaleX;
        const height = this.height * this.scaleY;
        const x = this.x - width / 2;
        const y = this.y - height / 2;
        return { width, height, x, y };
    }
}
class HotZoneAction extends MySprite {
}
class DragItem extends MySprite {
    constructor() {
        super(...arguments);
        this.lineDashFlag = true;
    }
    init() {
        this.anchorX = 0.5;
        this.anchorY = 0.5;
        this.initCenterCircle();
    }
    setSize(w, h) {
        this.anchorX = 0.5;
        this.anchorY = 0.5;
        this.width = w;
        this.height = h;
        // const rect = new ShapeRect(this.ctx);
        // rect.x = -w / 2;
        // rect.y = -h / 2;
        // rect.setSize(w, h);
        // rect.fillColor = '#000000';
        // rect.alpha = 0.1;
        // this.addChild(rect);
    }
    initCenterCircle() {
        const circle = new ShapeCircle(this.ctx);
        circle.setRadius(10);
        circle.fillColor = "#ffa568";
        this.addChild(circle);
        this.width = circle.width;
        this.height = circle.height;
    }
    getPosition() {
        return { x: this.x, y: this.y };
    }
    drawLine() {
        if (!this.item) {
            return;
        }
        this.ctx.save();
        const rect = this.getBoundingBox();
        const w = rect.width;
        const h = rect.height;
        const x = rect.x; //+ w / 2;
        const y = rect.y; //+ h / 2;
        this.ctx.setLineDash([4, 4]);
        this.ctx.lineWidth = 1;
        this.ctx.strokeStyle = "#ffa568";
        this.ctx.beginPath();
        this.ctx.moveTo(x + w / 2, y + h / 2);
        this.ctx.lineTo(this.item.x, this.item.y);
        // this.ctx.fill();
        this.ctx.stroke();
        this.ctx.restore();
    }
    drawFrame() {
        this.ctx.save();
        const rect = this.getBoundingBox();
        const w = rect.width;
        const h = rect.height;
        const x = rect.x; //+ w / 2;
        const y = rect.y; //+ h / 2;
        this.ctx.setLineDash([4, 4]);
        this.ctx.lineWidth = 2;
        this.ctx.strokeStyle = "#ffa568";
        // this.ctx.fillStyle = '#ffffff';
        this.ctx.beginPath();
        this.ctx.moveTo(x - w / 2, y - h / 2);
        this.ctx.lineTo(x + w / 2, y - h / 2);
        this.ctx.lineTo(x + w / 2, y + h / 2);
        this.ctx.lineTo(x - w / 2, y + h / 2);
        this.ctx.lineTo(x - w / 2, y - h / 2);
        // this.ctx.fill();
        this.ctx.stroke();
        this.ctx.restore();
    }
    draw() {
        super.draw();
        if (this.lineDashFlag) {
            this.drawLine();
            // this.drawFrame();
            // this.drawArrow();
        }
    }
}
class EditorItem extends MySprite {
    constructor() {
        super(...arguments);
        this.lineDashFlag = false;
    }
    showLabel(text = null) {
        if (!this.label) {
            this.label = new Label(this.ctx);
            this.label.anchorY = 0;
            this.label.fontSize = 50;
            this.label.textAlign = "center";
            this.addChild(this.label);
            this.label.setScaleXY(1 / this.scaleX);
        }
        if (text) {
            this.label.text = text;
        }
        else if (this.text) {
            this.label.text = this.text;
        }
        this.label.visible = true;
    }
    hideLabel() {
        if (!this.label) {
            return;
        }
        this.label.visible = false;
    }
    showLineDash() {
        this.lineDashFlag = true;
        if (this.arrow) {
            this.arrow.visible = true;
        }
        else {
            this.arrow = new MySprite(this.ctx);
            this.arrow.load("assets/common/arrow.png", 1, 0);
            this.arrow.setScaleXY(0.06);
            // this.arrowTop = new MySprite(this.ctx);
            // this.arrowTop.load('assets/common/arrow_top.png', 0.5, 0);
            // this.arrowTop.setScaleXY(0.06);
            //
            // this.arrowRight = new MySprite(this.ctx);
            // this.arrowRight.load('assets/common/arrow_right.png', 1, 0.5);
            // this.arrowRight.setScaleXY(0.06);
        }
        this.showLabel();
    }
    hideLineDash() {
        this.lineDashFlag = false;
        if (this.arrow) {
            this.arrow.visible = false;
        }
        this.hideLabel();
    }
    refreshLabelScale() { }
    drawArrow() {
        if (!this.arrow) {
            return;
        }
        const rect = this.getBoundingBox();
        this.arrow.x = rect.x + rect.width;
        this.arrow.y = rect.y;
        this.arrow.update();
        // this.arrowTop.x = rect.x + rect.width / 2;
        // this.arrowTop.y = rect.y;
        // this.arrowTop.update();
        //
        // this.arrowRight.x = rect.x + rect.width;
        // this.arrowRight.y = rect.y + rect.height / 2;
        // this.arrowRight.update();
    }
    drawFrame() {
        this.ctx.save();
        const rect = this.getBoundingBox();
        const w = rect.width;
        const h = rect.height;
        const x = rect.x + w / 2;
        const y = rect.y + h / 2;
        this.ctx.setLineDash([5, 5]);
        this.ctx.lineWidth = 2;
        this.ctx.strokeStyle = "#1bfff7";
        // this.ctx.fillStyle = '#ffffff';
        this.ctx.beginPath();
        this.ctx.moveTo(x - w / 2, y - h / 2);
        this.ctx.lineTo(x + w / 2, y - h / 2);
        this.ctx.lineTo(x + w / 2, y + h / 2);
        this.ctx.lineTo(x - w / 2, y + h / 2);
        this.ctx.lineTo(x - w / 2, y - h / 2);
        // this.ctx.fill();
        this.ctx.stroke();
        this.ctx.restore();
    }
    draw() {
        super.draw();
        if (this.lineDashFlag) {
            this.drawFrame();
            if (!this.hideArrow) {
                this.drawArrow();
            }
        }
    }
}



/***/ }),

/***/ "./src/app/common/custom-hot-zone/custom-hot-zone.component.ts":
/*!*********************************************************************!*\
  !*** ./src/app/common/custom-hot-zone/custom-hot-zone.component.ts ***!
  \*********************************************************************/
/*! exports provided: CustomHotZoneComponent */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CustomHotZoneComponent", function() { return CustomHotZoneComponent; });
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/__ivy_ngcc__/fesm2015/core.js");
/* harmony import */ var rxjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! rxjs */ "./node_modules/rxjs/_esm2015/index.js");
/* harmony import */ var rxjs_operators__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! rxjs/operators */ "./node_modules/rxjs/_esm2015/operators/index.js");
/* harmony import */ var _Unit__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Unit */ "./src/app/common/custom-hot-zone/Unit.ts");
/* harmony import */ var _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @tweenjs/tween.js */ "./node_modules/@tweenjs/tween.js/dist/tween.esm.js");
/* harmony import */ var _play_Unit__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../play/Unit */ "./src/app/play/Unit.ts");
/* harmony import */ var ng_zorro_antd_select__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ng-zorro-antd/select */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-select.js");
/* harmony import */ var _angular_forms__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @angular/forms */ "./node_modules/@angular/forms/__ivy_ngcc__/fesm2015/forms.js");
/* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @angular/common */ "./node_modules/@angular/common/__ivy_ngcc__/fesm2015/common.js");
/* harmony import */ var ng_zorro_antd_button__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ng-zorro-antd/button */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-button.js");
/* harmony import */ var ng_zorro_antd_grid__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ng-zorro-antd/grid */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-grid.js");
/* harmony import */ var _upload_image_with_preview_upload_image_with_preview_component__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../upload-image-with-preview/upload-image-with-preview.component */ "./src/app/common/upload-image-with-preview/upload-image-with-preview.component.ts");
/* harmony import */ var ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ng-zorro-antd/icon */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-icon.js");
/* harmony import */ var ng_zorro_antd_divider__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ng-zorro-antd/divider */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-divider.js");
/* harmony import */ var ng_zorro_antd_input__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ng-zorro-antd/input */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-input.js");
/* harmony import */ var ng_zorro_antd_checkbox__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ng-zorro-antd/checkbox */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-checkbox.js");
/* harmony import */ var ng_zorro_antd_tooltip__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ng-zorro-antd/tooltip */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-tooltip.js");


















const _c0 = ["canvas"];
const _c1 = ["wrap"];
const _c2 = ["hotZoneRef"];
const _c3 = ["toolBoxRef"];
const _c4 = ["previewBoxRef"];
const _c5 = ["previewContainerRef"];
const _c6 = ["RightContextMenuOnCanvasRef"];
function CustomHotZoneComponent_nz_option_16_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 37);
    }
    if (rf & 2) {
        const it_r403 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", it_r403.index)("nzLabel", it_r403.itemName);
    }
}
function CustomHotZoneComponent_div_25_Template(rf, ctx) {
    if (rf & 1) {
        const _r408 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 38);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "div", 39);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "span", 40);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "button", 41);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function CustomHotZoneComponent_div_25_Template_button_click_4_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r408); const i_r406 = ctx.index; const ctx_r407 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r407.deleteBtnClick(i_r406); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](5, " X ");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](6, "nz-divider", 42);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](7, "div", 43);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "span", 44);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](9, "\u70ED\u533A\u540D(\u53EF\u9009): ");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "input", 45);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function CustomHotZoneComponent_div_25_Template_input_ngModelChange_10_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r408); const it_r405 = ctx.$implicit; return it_r405.itemName = $event; })("blur", function CustomHotZoneComponent_div_25_Template_input_blur_10_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r408); const it_r405 = ctx.$implicit; const ctx_r410 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r410.saveText(it_r405); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const it_r405 = ctx.$implicit;
        const i_r406 = ctx.index;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate1"](" item-", i_r406 + 1, "");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](7);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r405.itemName);
    }
}
function CustomHotZoneComponent_div_53_Template(rf, ctx) {
    if (rf & 1) {
        const _r412 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 46);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "div", 47);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function CustomHotZoneComponent_div_53_Template_div_click_1_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r412); const ctx_r411 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r411.handleClickToSameSize(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnamespaceSVG"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "svg", 48);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](3, "path", 49);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](4, "path", 50);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnamespaceHTML"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](5, "div", 51);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function CustomHotZoneComponent_div_53_Template_div_click_5_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r412); const ctx_r413 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r413.handleClickAlignTop(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnamespaceSVG"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "svg", 52);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](7, "path", 53);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](8, "path", 54);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnamespaceHTML"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](9, "div", 55);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function CustomHotZoneComponent_div_53_Template_div_click_9_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r412); const ctx_r414 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r414.handleClickAlignBottom(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnamespaceSVG"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "svg", 56);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](11, "path", 57);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](12, "path", 58);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnamespaceHTML"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](13, "div", 59);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function CustomHotZoneComponent_div_53_Template_div_click_13_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r412); const ctx_r415 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r415.handleClickAlignLeft(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnamespaceSVG"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](14, "svg", 60);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](15, "path", 61);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](16, "path", 62);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnamespaceHTML"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](17, "div", 63);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function CustomHotZoneComponent_div_53_Template_div_click_17_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r412); const ctx_r416 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r416.handleClickAlignRight(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnamespaceSVG"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](18, "svg", 64);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](19, "path", 65);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](20, "path", 66);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnamespaceHTML"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](21, "div", 67);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function CustomHotZoneComponent_div_53_Template_div_click_21_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r412); const ctx_r417 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r417.handleClickHMiddle(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnamespaceSVG"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](22, "svg", 68);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](23, "path", 69);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnamespaceHTML"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](24, "div", 70);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function CustomHotZoneComponent_div_53_Template_div_click_24_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r412); const ctx_r418 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r418.handleClickVMiddle(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnamespaceSVG"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](25, "svg", 71);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](26, "path", 72);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnamespaceHTML"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](27, "div", 73);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function CustomHotZoneComponent_div_53_Template_div_click_27_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r412); const ctx_r419 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r419.handleClickHSpaceBetween(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnamespaceSVG"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](28, "svg", 74);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](29, "path", 75);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](30, "path", 76);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](31, "path", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](32, "path", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnamespaceHTML"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](33, "div", 79);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function CustomHotZoneComponent_div_53_Template_div_click_33_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r412); const ctx_r420 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r420.handleClickVSpaceBetween(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnamespaceSVG"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](34, "svg", 80);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](35, "path", 81);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](36, "path", 82);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](37, "path", 83);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](38, "path", 84);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
}
const _c7 = function (a0) { return { "fix-top": a0 }; };
let CustomHotZoneComponent = /*@__PURE__*/ (() => {
    class CustomHotZoneComponent {
        constructor() {
            this.imgItemArr = null;
            this.hotZoneItemArr = null;
            this.hotZoneArr = null;
            this.save = new _angular_core__WEBPACK_IMPORTED_MODULE_0__["EventEmitter"]();
            this.isHasRect = true;
            this.isHasPic = true;
            this.isHasText = true;
            this.hotZoneFontObj = {
                size: 50,
                name: 'BRLNSR_1',
                color: '#8f3758'
            };
            this.defaultItemType = 'rect';
            this.hotZoneImgSize = 190;
            this.saveDisabled = true;
            this.canvasWidth = 1280;
            this.canvasHeight = 720;
            this.canvasBaseW = 1280;
            // @HostListener('window:resize', ['$event'])
            this.canvasBaseH = 720;
            this.mapScale = 1;
            // 声音
            this.bgAudio = new Audio();
            this.images = new Map();
            // 资源
            // rawImages = new Map(res);
            this.winResizeEventStream = new rxjs__WEBPACK_IMPORTED_MODULE_1__["Subject"]();
            this.imgArr = [];
            this.curItems = []; // 多选热区 布局调整
            this.changeSizeFlag = false;
            this.changeTopSizeFlag = false;
            this.changeRightSizeFlag = false;
            // 布局模式
            this.inLayoutMode = false;
            // 右键菜单选择热区索引
            this.rightMenuSlecetHotZoneIndex = null;
            // 当前微调的对象
            this.currentSetting = {
                index: -1,
                itemName: "",
                x: 0,
                y: 0,
                width: 0,
                height: 0,
            };
            this._bgItem = null;
            this.toolBoxFixTop = false;
            // keyCtrlDown = false; // ctrl键是否被按下
            // @HostListener('window:keydown', ['$event'])
            // onKeyDown(e) {
            //   console.log("onKeyDown", e.keyCode);
            //   if(e.keyCode == 91 || e.ctrlKey) {
            //     this.keyCtrlDown = true;
            //   }
            // }
            // @HostListener('window:keyup', ['$event'])
            // onKeyUp(e) {
            //   console.log("onKeyUp", e.keyCode);
            //   if(e.keyCode == 91 || e.ctrlKey) {
            //     this.keyCtrlDown = false;
            //   }
            // }
            this.rightClickOffsetX = -1;
            this.rightClickOffsetY = -1;
        }
        get bgItem() {
            return this._bgItem;
        }
        set bgItem(v) {
            this._bgItem = v;
            this.init();
        }
        onResize(event) {
            this.winResizeEventStream.next();
        }
        onscroll() {
            const scrollTop = document.documentElement.scrollTop; // 页面顶端滚出屏幕的距离
            const offsetHeight = this.previewContainerRef.nativeElement.offsetHeight; // 预览框的高度
            const offsetTop = this.hotZoneRef.nativeElement.offsetTop; // 热区距离页面顶端的距离
            if (scrollTop <= offsetTop || (scrollTop - offsetTop) > offsetHeight) {
                this.toolBoxRef.nativeElement.style.position = "absolute";
                this.toolBoxFixTop = false;
            }
            else {
                this.toolBoxRef.nativeElement.style.position = "fixed";
                this.toolBoxFixTop = true;
            }
        }
        handleContextmenuOnMenu(e) {
            this.RightContextMenuOnCanvasRef.nativeElement.style.display = "block";
            this.RightContextMenuOnCanvasRef.nativeElement.style.position = "absolute";
            this.RightContextMenuOnCanvasRef.nativeElement.style.top = e.offsetY + "px";
            this.RightContextMenuOnCanvasRef.nativeElement.style.left = e.offsetX + "px";
            this.rightClickOffsetX = e.offsetX;
            this.rightClickOffsetY = e.offsetY;
        }
        ngOnInit() {
            this.initListener();
            // this.init();
            this.update();
            document.oncontextmenu = function () { return false; };
        }
        ngOnDestroy() {
            window.cancelAnimationFrame(this.animationId);
        }
        ngOnChanges() {
        }
        onBackgroundUploadSuccess(e) {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            this.bgItem.url = e.url;
            this.refreshBackground();
        }
        onItemImgUploadSuccess(e, item) {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            item.pic_url = e.url;
            this.loadHotZonePic(item.pic, e.url);
        }
        onItemAudioUploadSuccess(e, item) {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            item.audio_url = e.url;
        }
        refreshBackground(callBack = null) {
            if (!this.bg) {
                this.bg = new _Unit__WEBPACK_IMPORTED_MODULE_3__["MySprite"](this.ctx);
                this.renderArr.push(this.bg);
            }
            const bg = this.bg;
            if (this.bgItem.url) {
                bg.load(this.bgItem.url).then(() => {
                    const rate1 = this.canvasWidth / bg.width;
                    const rate2 = this.canvasHeight / bg.height;
                    const rate = Math.min(rate1, rate2);
                    bg.setScaleXY(rate);
                    bg.x = this.canvasWidth / 2;
                    bg.y = this.canvasHeight / 2;
                    if (callBack) {
                        callBack();
                    }
                });
            }
        }
        addHotZone(itemName) {
            // this.imgArr.push({});
            // this.hotZoneArr.push({});
            const item = this.getHotZoneItem();
            item.itemName = itemName;
            this.hotZoneArr.push(item);
            this.refreshItem(item);
            this.refreshHotZoneId();
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
        }
        addBtnClick() {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            // this.imgArr.push({});
            // this.hotZoneArr.push({});
            const item = this.getHotZoneItem();
            this.hotZoneArr.push(item);
            this.refreshItem(item);
            this.refreshHotZoneId();
        }
        deleteBtnClick(index) {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            const item = this.hotZoneArr.splice(index, 1)[0];
            Object(_Unit__WEBPACK_IMPORTED_MODULE_3__["removeItemFromArr"])(this.renderArr, item.pic);
            Object(_Unit__WEBPACK_IMPORTED_MODULE_3__["removeItemFromArr"])(this.renderArr, item.textLabel);
            this.refreshHotZoneId();
        }
        onImgUploadSuccessByImg(e, img) {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            img.pic_url = e.url;
            this.refreshImage(img);
        }
        refreshImage(img) {
            this.hideAllLineDash();
            img.picItem = this.getPicItem(img);
            this.refreshImageId();
        }
        refreshHotZoneId() {
            for (let i = 0; i < this.hotZoneArr.length; i++) {
                this.hotZoneArr[i].index = i;
                if (this.hotZoneArr[i]) {
                    this.hotZoneArr[i].title = 'item-' + (i + 1);
                }
            }
        }
        refreshImageId() {
            for (let i = 0; i < this.imgArr.length; i++) {
                this.imgArr[i].id = i;
                if (this.imgArr[i].picItem) {
                    this.imgArr[i].picItem.text = 'Image-' + (i + 1);
                }
            }
        }
        getHotZoneItem(saveData = null) {
            const itemW = 200;
            const itemH = 200;
            const item = new _Unit__WEBPACK_IMPORTED_MODULE_3__["HotZoneItem"](this.ctx);
            item.setSize(itemW, itemH);
            item.anchorX = 0.5;
            item.anchorY = 0.5;
            item.x = this.canvasWidth / 2;
            item.y = this.canvasHeight / 2;
            item.itemType = this.defaultItemType;
            item.itemName = "";
            if (saveData) {
                const saveRect = saveData.rect;
                item.scaleX = saveRect.width / item.width;
                item.scaleY = saveRect.height / item.height;
                item.x = saveRect.x + saveRect.width / 2;
                item.y = saveRect.y + saveRect.height / 2;
            }
            item.showLineDash();
            const pic = new _Unit__WEBPACK_IMPORTED_MODULE_3__["HotZoneImg"](this.ctx);
            pic.visible = false;
            item['pic'] = pic;
            if (saveData && saveData.pic_url) {
                this.loadHotZonePic(pic, saveData.pic_url);
            }
            pic.x = item.x;
            pic.y = item.y;
            this.renderArr.push(pic);
            const textLabel = new _Unit__WEBPACK_IMPORTED_MODULE_3__["HotZoneLabel"](this.ctx);
            textLabel.fontSize = this.hotZoneFontObj.size;
            textLabel.fontName = this.hotZoneFontObj.name;
            textLabel.fontColor = this.hotZoneFontObj.color;
            textLabel.textAlign = 'center';
            item['textLabel'] = textLabel;
            textLabel.setScaleXY(this.mapScale);
            if (saveData && saveData.text) {
                textLabel.text = saveData.text;
                textLabel.refreshSize();
            }
            textLabel.x = item.x;
            textLabel.y = item.y;
            this.renderArr.push(textLabel);
            return item;
        }
        getPicItem(img, saveData = null) {
            const item = new _Unit__WEBPACK_IMPORTED_MODULE_3__["EditorItem"](this.ctx);
            item.load(img.pic_url).then(img => {
                let maxW, maxH;
                if (this.bg) {
                    maxW = this.bg.width * this.bg.scaleX;
                    maxH = this.bg.height * this.bg.scaleY;
                }
                else {
                    maxW = this.canvasWidth;
                    maxH = this.canvasHeight;
                }
                let scaleX = maxW / 3 / item.width;
                let scaleY = maxH / 3 / item.height;
                if (item.height * scaleX < this.canvasHeight) {
                    item.setScaleXY(scaleX);
                }
                else {
                    item.setScaleXY(scaleY);
                }
                item.x = this.canvasWidth / 2;
                item.y = this.canvasHeight / 2;
                if (saveData) {
                    const saveRect = saveData.rect;
                    item.setScaleXY(saveRect.width / item.width);
                    item.x = saveRect.x + saveRect.width / 2;
                    item.y = saveRect.y + saveRect.height / 2;
                }
                else {
                    item.showLineDash();
                }
            });
            return item;
        }
        onAudioUploadSuccessByImg(e, img) {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            img.audio_url = e.url;
        }
        deleteItem(e, i) {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            // this.imgArr.splice(i , 1);
            // this.refreshImageId();
            this.hotZoneArr.splice(i, 1);
            this.refreshHotZoneId();
        }
        radioChange(e, item) {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            item.itemType = e;
            this.refreshItem(item);
        }
        refreshItem(item) {
            switch (item.itemType) {
                case 'rect':
                    this.setRectState(item);
                    break;
                case 'pic':
                    this.setPicState(item);
                    break;
                case 'text':
                    this.setTextState(item);
                    break;
                default:
            }
        }
        init() {
            this.initData();
            this.initCtx();
            this.initItem();
        }
        initItem() {
            if (!this.bgItem) {
                this.bgItem = {};
            }
            else {
                this.refreshBackground(() => {
                    if (!this.hotZoneItemArr) {
                        this.hotZoneItemArr = [];
                    }
                    else {
                        this.initHotZoneArr();
                    }
                });
            }
        }
        initHotZoneArr() {
            let curBgRect;
            if (this.bg) {
                curBgRect = this.bg.getBoundingBox();
            }
            else {
                curBgRect = { x: 0, y: 0, width: this.canvasWidth, height: this.canvasHeight };
            }
            let oldBgRect = this.bgItem.rect;
            if (!oldBgRect) {
                oldBgRect = curBgRect;
            }
            const rate = curBgRect.width / oldBgRect.width;
            this.hotZoneArr = [];
            const arr = this.hotZoneItemArr.concat();
            for (let i = 0; i < arr.length; i++) {
                const data = JSON.parse(JSON.stringify(arr[i]));
                // const img = {pic_url: data.pic_url};
                data.rect.x *= rate;
                data.rect.y *= rate;
                data.rect.width *= rate;
                data.rect.height *= rate;
                data.rect.x += curBgRect.x;
                data.rect.y += curBgRect.y;
                // img['picItem'] = this.getPicItem(img, data);
                // img['audio_url'] = arr[i].audio_url;
                // this.imgArr.push(img);
                const item = this.getHotZoneItem(data);
                item.audio_url = data.audio_url;
                item.pic_url = data.pic_url;
                item.text = data.text;
                item.itemType = data.itemType;
                item.itemName = data.itemName;
                this.refreshItem(item);
                this.hotZoneArr.push(item);
            }
            this.refreshHotZoneId();
            // this.refreshImageId();
        }
        initImgArr() {
            let curBgRect;
            if (this.bg) {
                curBgRect = this.bg.getBoundingBox();
            }
            else {
                curBgRect = { x: 0, y: 0, width: this.canvasWidth, height: this.canvasHeight };
            }
            let oldBgRect = this.bgItem.rect;
            if (!oldBgRect) {
                oldBgRect = curBgRect;
            }
            const rate = curBgRect.width / oldBgRect.width;
            this.imgArr = [];
            const arr = this.imgItemArr.concat();
            for (let i = 0; i < arr.length; i++) {
                const data = JSON.parse(JSON.stringify(arr[i]));
                const img = { pic_url: data.pic_url };
                data.rect.x *= rate;
                data.rect.y *= rate;
                data.rect.width *= rate;
                data.rect.height *= rate;
                data.rect.x += curBgRect.x;
                data.rect.y += curBgRect.y;
                img['picItem'] = this.getPicItem(img, data);
                img['audio_url'] = arr[i].audio_url;
                this.imgArr.push(img);
            }
            this.refreshImageId();
        }
        initData() {
            this.canvasWidth = this.wrap.nativeElement.clientWidth;
            this.canvasHeight = this.wrap.nativeElement.clientHeight;
            this.mapScale = this.canvasWidth / this.canvasBaseW;
            this.renderArr = [];
            this.bg = null;
            this.imgArr = [];
            this.hotZoneArr = [];
        }
        initCtx() {
            this.ctx = this.canvas.nativeElement.getContext('2d');
            this.canvas.nativeElement.width = this.canvasWidth;
            this.canvas.nativeElement.height = this.canvasHeight;
        }
        mapDown(event) {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            // 如果是鼠标右键 不响应
            if (event.button == 2) {
                return;
            }
            const altKey = event.altKey;
            this.oldPos = { x: this.mx, y: this.my };
            for (let i = 0; i < this.hotZoneArr.length; i++) {
                const item = this.hotZoneArr[i];
                let callback;
                let target;
                switch (item.itemType) {
                    case 'rect':
                        target = item;
                        callback = this.clickedHotZoneRect.bind(this);
                        break;
                    case 'pic':
                        target = item.pic;
                        callback = this.clickedHotZonePic.bind(this);
                        break;
                    case 'text':
                        target = item.textLabel;
                        callback = this.clickedHotZoneText.bind(this);
                        break;
                }
                if (this.checkClickTarget(target)) {
                    callback(target, altKey);
                    return;
                }
            }
            // 点击时没有按下Command键 则清空选择的热区点
            if (!altKey) {
                this.resetAllItemColors();
            }
            this.hideContextMenuOnCanvas();
        }
        mapMove(event) {
            if (!this.curItem) {
                return;
            }
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            if (this.changeSizeFlag) {
                this.changeSize();
            }
            else if (this.changeTopSizeFlag) {
                this.changeTopSize();
            }
            else if (this.changeRightSizeFlag) {
                this.changeRightSize();
            }
            else {
                const addX = this.mx - this.oldPos.x;
                const addY = this.my - this.oldPos.y;
                this.curItem.x += addX;
                this.curItem.y += addY;
            }
            this.oldPos = { x: this.mx, y: this.my };
            this.saveDisabled = true;
        }
        mapUp(event) {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            this.curItem = null;
            this.changeSizeFlag = false;
            this.changeTopSizeFlag = false;
            this.changeRightSizeFlag = false;
        }
        changeSize() {
            const rect = this.curItem.getBoundingBox();
            let lenW = (this.mx - (rect.x + rect.width / 2)) * 2;
            let lenH = ((rect.y + rect.height / 2) - this.my) * 2;
            let minLen = 20;
            let s;
            if (lenW < lenH) {
                if (lenW < minLen) {
                    lenW = minLen;
                }
                s = lenW / this.curItem.width;
            }
            else {
                if (lenH < minLen) {
                    lenH = minLen;
                }
                s = lenH / this.curItem.height;
            }
            this.curItem.setScaleXY(s);
            this.curItem.refreshLabelScale();
        }
        setCurItemSize(size) {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            const curItem = this.hotZoneArr[size.index];
            if (size.width != null && !isNaN(size.width)) {
                curItem.scaleX = size.width / curItem.width;
            }
            if (size.height != null && !isNaN(size.height)) {
                curItem.scaleY = size.height / curItem.height;
            }
            if (size.itemName) {
                curItem.itemName = size.itemName;
            }
            if (size.x != null && !isNaN(size.x)) {
                curItem.x = Number(size.x) + size.width / 2;
            }
            if (size.y != null && !isNaN(size.y)) {
                curItem.y = Number(size.y) + size.height / 2;
            }
            curItem.refreshLabelScale();
        }
        // 根据索引 设置热区的位置
        setHotZonePosByIndex(index, posX, posY) {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            const curItem = this.hotZoneArr[index];
            if (posX != null && !isNaN(posX)) {
                curItem.x = Number(posX);
            }
            if (posY != null && !isNaN(posY)) {
                curItem.y = Number(posY);
            }
            curItem.refreshLabelScale();
        }
        changeTopSize() {
            const rect = this.curItem.getBoundingBox();
            // let lenW = ( this.mx - (rect.x + rect.width / 2) ) * 2;
            let lenH = ((rect.y + rect.height / 2) - this.my) * 2;
            let minLen = 20;
            let s;
            // if (lenW < lenH) {
            //   if (lenW < minLen) {
            //     lenW = minLen;
            //   }
            //   s = lenW / this.curItem.width;
            //
            // } else {
            if (lenH < minLen) {
                lenH = minLen;
            }
            s = lenH / this.curItem.height;
            // }
            this.curItem.scaleY = s;
            this.curItem.refreshLabelScale();
        }
        changeRightSize() {
            const rect = this.curItem.getBoundingBox();
            let lenW = (this.mx - (rect.x + rect.width / 2)) * 2;
            // let lenH = ( (rect.y + rect.height / 2) - this.my ) * 2;
            let minLen = 20;
            let s;
            if (lenW < minLen) {
                lenW = minLen;
            }
            s = lenW / this.curItem.width;
            this.curItem.scaleX = s;
            this.curItem.refreshLabelScale();
        }
        changeItemSize(item) {
            this.curItem = item;
            this.changeSizeFlag = true;
        }
        changeItemTopSize(item) {
            this.curItem = item;
            this.changeTopSizeFlag = true;
        }
        changeItemRightSize(item) {
            this.curItem = item;
            this.changeRightSizeFlag = true;
        }
        changeCurItem(item) {
            this.hideAllLineDash();
            this.curItem = item;
            this.curItem.showLineDash();
        }
        hideAllLineDash() {
            for (let i = 0; i < this.imgArr.length; i++) {
                if (this.imgArr[i].picItem) {
                    this.imgArr[i].picItem.hideLineDash();
                }
            }
        }
        update() {
            if (!this.ctx) {
                return;
            }
            this.animationId = window.requestAnimationFrame(this.update.bind(this));
            // 清除画布内容
            this.ctx.clearRect(0, 0, this.canvasWidth, this.canvasHeight);
            for (let i = 0; i < this.renderArr.length; i++) {
                this.renderArr[i].update(this);
            }
            // for (let i = 0; i < this.imgArr.length; i++) {
            //   const picItem = this.imgArr[i].picItem;
            //   if (picItem) {
            //     picItem.update(this);
            //   }
            // }
            this.updateArr(this.hotZoneArr);
            this.updatePos();
            _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_4__["default"].update();
        }
        updateArr(arr) {
            if (arr) {
                for (let i = 0; i < arr.length; i++) {
                    arr[i].update();
                }
            }
        }
        renderAfterResize() {
            this.canvasWidth = this.wrap.nativeElement.clientWidth;
            this.canvasHeight = this.wrap.nativeElement.clientHeight;
            this.init();
        }
        initListener() {
            this.winResizeEventStream
                .pipe(Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_2__["debounceTime"])(500))
                .subscribe(data => {
                this.renderAfterResize();
            });
            if (this.IsPC()) {
                this.canvas.nativeElement.addEventListener('mousedown', (event) => {
                    setMxMyByMouse(event);
                    this.mapDown(event);
                });
                this.canvas.nativeElement.addEventListener('mousemove', (event) => {
                    setMxMyByMouse(event);
                    this.mapMove(event);
                });
                this.canvas.nativeElement.addEventListener('mouseup', (event) => {
                    setMxMyByMouse(event);
                    this.mapUp(event);
                });
                const setMxMyByMouse = (event) => {
                    this.mx = event.offsetX;
                    this.my = event.offsetY;
                };
            }
            else {
                this.canvas.nativeElement.addEventListener('touchstart', (event) => {
                    setMxMyByTouch(event);
                    this.mapDown(event);
                });
                this.canvas.nativeElement.addEventListener('touchmove', (event) => {
                    setMxMyByTouch(event);
                    this.mapMove(event);
                });
                this.canvas.nativeElement.addEventListener('touchend', (event) => {
                    setMxMyByTouch(event);
                    this.mapUp(event);
                });
                this.canvas.nativeElement.addEventListener('touchcancel', (event) => {
                    setMxMyByTouch(event);
                    this.mapUp(event);
                });
                const setMxMyByTouch = (event) => {
                    if (event.touches.length <= 0) {
                        return;
                    }
                    if (this.canvasLeft == null) {
                        setParentOffset();
                    }
                    this.mx = event.touches[0].pageX - this.canvasLeft;
                    this.my = event.touches[0].pageY - this.canvasTop;
                };
                const setParentOffset = () => {
                    const rect = this.canvas.nativeElement.getBoundingClientRect();
                    this.canvasLeft = rect.left;
                    this.canvasTop = rect.top;
                };
            }
        }
        IsPC() {
            if (window['ELECTRON']) {
                return false; // 封装客户端标记
            }
            if (document.body.ontouchstart !== undefined) {
                return false;
            }
            else {
                return true;
            }
        }
        checkClickTarget(target) {
            const rect = target.getBoundingBox();
            if (this.checkPointInRect(this.mx, this.my, rect)) {
                return true;
            }
            return false;
        }
        checkPointInRect(x, y, rect) {
            if (x >= rect.x && x <= rect.x + rect.width) {
                if (y >= rect.y && y <= rect.y + rect.height) {
                    return true;
                }
            }
            return false;
        }
        saveClick() {
            this.resetDataChange(); // 已经保存 清除离开提示
            const bgItem = this.bgItem;
            if (this.bg) {
                bgItem['rect'] = this.bg.getBoundingBox();
            }
            else {
                bgItem['rect'] = {
                    x: 0,
                    y: 0,
                    width: Math.round(this.canvasWidth * 100) / 100,
                    height: Math.round(this.canvasHeight * 100) / 100
                };
            }
            const hotZoneItemArr = [];
            const hotZoneArr = this.hotZoneArr;
            for (let i = 0; i < hotZoneArr.length; i++) {
                const hotZoneItem = {
                    index: hotZoneArr[i].index,
                    pic_url: hotZoneArr[i].pic_url,
                    text: hotZoneArr[i].text,
                    audio_url: hotZoneArr[i].audio_url,
                    itemType: hotZoneArr[i].itemType,
                    itemName: hotZoneArr[i].itemName,
                    fontSize: this.hotZoneFontObj.size,
                    fontName: this.hotZoneFontObj.name,
                    fontColor: this.hotZoneFontObj.color,
                    fontScale: hotZoneArr[i].textLabel ? hotZoneArr[i].textLabel.scaleX : 1,
                    imgScale: hotZoneArr[i].pic ? hotZoneArr[i].pic.scaleX : 1,
                    mapScale: this.mapScale
                };
                hotZoneItem['rect'] = hotZoneArr[i].getBoundingBox();
                hotZoneItem['rect'].x = Math.round((hotZoneItem['rect'].x - bgItem['rect'].x) * 100) / 100;
                hotZoneItem['rect'].y = Math.round((hotZoneItem['rect'].y - bgItem['rect'].y) * 100) / 100;
                hotZoneItem['rect'].width = Math.round((hotZoneItem['rect'].width) * 100) / 100;
                hotZoneItem['rect'].height = Math.round((hotZoneItem['rect'].height) * 100) / 100;
                hotZoneItemArr.push(hotZoneItem);
            }
            this.save.emit({ bgItem, hotZoneItemArr });
        }
        updatePos() {
            this.hotZoneArr.forEach((item) => {
                let x, y;
                switch (item.itemType) {
                    case 'rect':
                        x = item.x;
                        y = item.y;
                        break;
                    case 'pic':
                        x = item.pic.x;
                        y = item.pic.y;
                        break;
                    case 'text':
                        x = item.textLabel.x;
                        y = item.textLabel.y;
                        break;
                }
                item.x = x;
                item.y = y;
                item.pic.x = x;
                item.pic.y = y;
                item.textLabel.x = x;
                item.textLabel.y = y;
            });
        }
        setPicState(item) {
            item.visible = false;
            item.textLabel.visible = false;
            item.pic.visible = true;
        }
        setRectState(item) {
            item.visible = true;
            item.textLabel.visible = false;
            item.pic.visible = false;
        }
        setTextState(item) {
            item.visible = false;
            item.pic.visible = false;
            item.textLabel.visible = true;
        }
        clickedHotZoneRect(item, altKey = false) {
            if (this.checkClickTarget(item)) {
                if (!this.inLayoutMode && item.lineDashFlag && this.checkClickTarget(item.arrow)) {
                    this.changeItemSize(item);
                }
                else if (!this.inLayoutMode && item.lineDashFlag && this.checkClickTarget(item.arrowTop)) {
                    this.changeItemTopSize(item);
                }
                else if (!this.inLayoutMode && item.lineDashFlag && this.checkClickTarget(item.arrowRight)) {
                    this.changeItemRightSize(item);
                }
                else {
                    if (altKey) {
                        const bd = item.getBoundingBox();
                        const rectParams = {
                            index: item.index,
                            itemName: item.itemName,
                            x: bd.x,
                            y: bd.y,
                            width: bd.width,
                            height: bd.height,
                        };
                        // 如果之前没有选择过任何项目 则判断一下之前是否有选择过热区块，如果有选择，则把上次选择的热区作为第一个热区
                        if (this.curItems.length == 0) {
                            const lastItem = this.getCurrentMaskColorItem();
                            if (lastItem) {
                                const last_bd = lastItem.getBoundingBox();
                                const last_rectParams = {
                                    index: lastItem.index,
                                    itemName: lastItem.itemName,
                                    x: last_bd.x,
                                    y: last_bd.y,
                                    width: last_bd.width,
                                    height: last_bd.height,
                                };
                                this.curItems.push(last_rectParams);
                            }
                            else {
                                this.resetAllItemColors();
                            }
                        }
                        item.showColorMask = true;
                        this.curItems.push(rectParams);
                    }
                    else {
                        this.resetAllItemColors();
                        this.changeCurItem(item);
                        item.showColorMask = true;
                        const bd = item.getBoundingBox();
                        const rectParams = {
                            index: item.index,
                            itemName: item.itemName,
                            x: bd.x,
                            y: bd.y,
                            width: bd.width,
                            height: bd.height,
                        };
                        this.currentSetting = rectParams;
                    }
                }
                return;
            }
        }
        // 获取当前覆盖颜色的热区 - 上次选中（因为没有保存选择的Item, 所以把覆盖颜色的热区当做上一次的选择）
        getCurrentMaskColorItem() {
            const item = this.hotZoneArr.find(item => item.showColorMask == true);
            return item;
        }
        // 清除所有当前选中的item - 清除高亮
        resetAllItemColors() {
            this.hotZoneArr.forEach(item => {
                item.showColorMask = false;
            });
            this.curItems = [];
        }
        // 顶部对齐所选元素
        handleClickAlignTop() {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            let minY = -1;
            this.curItems.forEach(item => {
                // 取所有元素中 y坐标最小值
                if (minY < 0 || item.y < minY) {
                    minY = item.y;
                }
            });
            if (minY >= 0) {
                this.curItems.forEach(item => {
                    item.y = minY;
                    this.setCurItemSize(item);
                });
            }
        }
        // 底部对齐所选元素
        handleClickAlignBottom() {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            let maxY = 100000;
            this.curItems.forEach(item => {
                // 取所有元素中 y坐标最大值
                if (maxY > 99999 || item.y > maxY) {
                    maxY = item.y + item.height;
                }
            });
            if (maxY < 100000) {
                this.curItems.forEach(item => {
                    item.y = maxY - item.height;
                    this.setCurItemSize(item);
                });
            }
        }
        // 左侧对齐所选元素
        handleClickAlignLeft() {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            let minX = -1;
            this.curItems.forEach(item => {
                // 取所有元素中 y坐标最小值
                if (minX < 0 || item.x < minX) {
                    minX = item.x;
                }
            });
            if (minX >= 0) {
                this.curItems.forEach(item => {
                    item.x = minX;
                    this.setCurItemSize(item);
                });
            }
        }
        // 右侧对齐所选元素
        handleClickAlignRight() {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            let maxX = 100000;
            this.curItems.forEach(item => {
                // 取所有元素中 y坐标最大值
                if (maxX > 99999 || item.x > maxX) {
                    maxX = item.x + item.width;
                }
            });
            if (maxX < 100000) {
                this.curItems.forEach(item => {
                    item.x = maxX - item.width;
                    this.setCurItemSize(item);
                });
            }
        }
        // 水平居中所选元素
        handleClickHMiddle() {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            let baseY = 0;
            if (this.curItems.length > 0) {
                baseY = this.curItems[0].y + this.curItems[0].height / 2;
            }
            if (baseY > 0) {
                this.curItems.forEach(item => {
                    item.y = baseY - item.height / 2;
                    this.setCurItemSize(item);
                });
            }
        }
        // 垂直居中所选元素
        handleClickVMiddle() {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            let baseX = 0;
            if (this.curItems.length > 0) {
                baseX = this.curItems[0].x + this.curItems[0].width / 2;
            }
            if (baseX > 0) {
                this.curItems.forEach(item => {
                    item.x = baseX - item.width / 2;
                    this.setCurItemSize(item);
                });
            }
        }
        // 水平间距相同
        handleClickHSpaceBetween() {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            this.curItems.sort((a, b) => {
                return a.x - b.x;
            });
            let startX = 0;
            let endX = 0;
            let contentWidth = 0;
            if (this.curItems.length >= 2) {
                startX = this.curItems[0].x;
                endX = this.curItems[this.curItems.length - 1].x + this.curItems[this.curItems.length - 1].width;
            }
            else {
                return;
            }
            this.curItems.forEach(item => {
                contentWidth += item.width;
            });
            let space = (endX - startX - contentWidth) / (this.curItems.length - 1);
            if (space > 0) {
                let currentX = this.curItems[0].x;
                this.curItems.forEach(item => {
                    item.x = currentX;
                    currentX += space + item.width;
                    this.setCurItemSize(item);
                });
            }
        }
        // 垂直间距相同
        handleClickVSpaceBetween() {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            this.curItems.sort((a, b) => {
                return a.y - b.y;
            });
            let startY = 0;
            let endY = 0;
            let contentHeight = 0;
            if (this.curItems.length >= 2) {
                startY = this.curItems[0].y;
                endY = this.curItems[this.curItems.length - 1].y + this.curItems[this.curItems.length - 1].height;
            }
            else {
                return;
            }
            this.curItems.forEach(item => {
                contentHeight += item.height;
            });
            let space = (endY - startY - contentHeight) / (this.curItems.length - 1);
            if (space > 0) {
                let currentY = this.curItems[0].y;
                this.curItems.forEach(item => {
                    item.y = currentY;
                    currentY += space + item.height;
                    this.setCurItemSize(item);
                });
            }
        }
        // 使所有选择的热区和第一个选择的热区具有相同大小
        handleClickToSameSize() {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存
            let baseWidth = 0;
            let baseHeight = 0;
            if (this.curItems.length > 0) {
                baseWidth = this.curItems[0].width;
                baseHeight = this.curItems[0].height;
            }
            if (baseWidth > 0 && baseHeight > 0) {
                this.curItems.forEach(item => {
                    let adjustX = (item.width - baseWidth) / 2;
                    let adjustY = (item.height - baseHeight) / 2;
                    item.x = item.x + adjustX;
                    item.y = item.y + adjustY;
                    item.width = baseWidth;
                    item.height = baseHeight;
                    this.setCurItemSize(item);
                });
            }
        }
        // 处理微调更新热区位置参数
        handleClickUpdateHotZoneParams() {
            this.setDataChange(); // 标记数据改变 离开页面是提示保存ƒ√
            this.setCurItemSize({
                index: this.currentSetting.index,
                itemName: this.currentSetting.itemName,
                // x: this.currentSetting.x,
                // y: this.currentSetting.y,
                width: this.currentSetting.width,
                height: this.currentSetting.height,
            });
        }
        // 调整模式改变
        onAdjustModeChange(e) {
            this.hotZoneArr.forEach(zone => {
                zone.hideArrow = this.inLayoutMode;
            });
        }
        // 根据右键菜单选择热区索引 移动热区
        handleClickMoveHotZoneByRightMenu() {
            if (this.rightMenuSlecetHotZoneIndex != null) {
                this.setDataChange(); // 标记数据改变 离开页面是提示保存
                this.setHotZonePosByIndex(this.rightMenuSlecetHotZoneIndex, this.rightClickOffsetX, this.rightClickOffsetY);
                this.hideContextMenuOnCanvas();
            }
        }
        // 隐藏右键菜单
        hideContextMenuOnCanvas() {
            this.rightClickOffsetX = -1;
            this.rightClickOffsetY = -1;
            this.rightMenuSlecetHotZoneIndex = null;
            this.RightContextMenuOnCanvasRef.nativeElement.style.display = "none";
        }
        // 数据改变
        setDataChange() {
            // console.log("数据改变")
            // window.onbeforeunload = function(event) {
            //     event.returnValue = "";
            // };
        }
        // 数据改变
        resetDataChange() {
            // console.log("数据保存")
            // window.onbeforeunload = function(event) {
            // };
        }
        clickedHotZonePic(item) {
            if (this.checkClickTarget(item)) {
                this.curItem = item;
            }
        }
        clickedHotZoneText(item) {
            if (this.checkClickTarget(item)) {
                this.curItem = item;
            }
        }
        saveText(item) {
            item.textLabel.text = item.text;
        }
        loadHotZonePic(pic, url) {
            const baseLen = this.hotZoneImgSize * this.mapScale;
            pic.load(url).then(() => {
                const s = Object(_play_Unit__WEBPACK_IMPORTED_MODULE_5__["getMinScale"])(pic, baseLen);
                pic.setScaleXY(s);
            });
        }
    }
    CustomHotZoneComponent.ɵfac = function CustomHotZoneComponent_Factory(t) { return new (t || CustomHotZoneComponent)(); };
    CustomHotZoneComponent.ɵcmp = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdefineComponent"]({ type: CustomHotZoneComponent, selectors: [["app-custom-hot-zone"]], viewQuery: function CustomHotZoneComponent_Query(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstaticViewQuery"](_c0, true);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstaticViewQuery"](_c1, true);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstaticViewQuery"](_c2, true);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstaticViewQuery"](_c3, true);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstaticViewQuery"](_c4, true);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstaticViewQuery"](_c5, true);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstaticViewQuery"](_c6, true);
            }
            if (rf & 2) {
                var _t;
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵqueryRefresh"](_t = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵloadQuery"]()) && (ctx.canvas = _t.first);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵqueryRefresh"](_t = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵloadQuery"]()) && (ctx.wrap = _t.first);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵqueryRefresh"](_t = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵloadQuery"]()) && (ctx.hotZoneRef = _t.first);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵqueryRefresh"](_t = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵloadQuery"]()) && (ctx.toolBoxRef = _t.first);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵqueryRefresh"](_t = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵloadQuery"]()) && (ctx.previewBoxRef = _t.first);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵqueryRefresh"](_t = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵloadQuery"]()) && (ctx.previewContainerRef = _t.first);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵqueryRefresh"](_t = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵloadQuery"]()) && (ctx.RightContextMenuOnCanvasRef = _t.first);
            }
        }, hostBindings: function CustomHotZoneComponent_HostBindings(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("scroll", function CustomHotZoneComponent_scroll_HostBindingHandler() { return ctx.onscroll(); }, false, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵresolveWindow"]);
            }
        }, inputs: { imgItemArr: "imgItemArr", hotZoneItemArr: "hotZoneItemArr", hotZoneArr: "hotZoneArr", isHasRect: "isHasRect", isHasPic: "isHasPic", isHasText: "isHasText", hotZoneFontObj: "hotZoneFontObj", defaultItemType: "defaultItemType", hotZoneImgSize: "hotZoneImgSize", bgItem: "bgItem" }, outputs: { save: "save" }, features: [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵNgOnChangesFeature"]], decls: 64, vars: 14, consts: [[1, "p-image-children-editor", 2, "position", "relative", "padding-top", "50px"], ["hotZoneRef", ""], [2, "margin-left", "2.5%"], [2, "height", "1200px", "overflow", "scroll"], ["previewContainerRef", ""], [1, "preview-box"], ["previewBoxRef", "", "wrap", ""], ["id", "canvas", 3, "contextmenu"], ["canvas", ""], [1, "content-menu"], ["RightContextMenuOnCanvasRef", ""], [1, "title"], ["nzShowSearch", "", "nzAllowClear", "", 1, "select", 2, "width", "180px", 3, "ngModel", "ngModelChange"], [3, "nzValue", "nzLabel", 4, "ngFor", "ngForOf"], ["nz-button", "", "nzSize", "mini", "nzType", "primary", 3, "click"], ["nz-row", "", "nzType", "flex", "nzAlign", "middle"], ["nz-col", "", "nzSpan", "5", "nzOffset", "1"], [1, "bg-box"], [3, "picUrl", "imageUploaded"], ["nz-col", "", "nzSpan", "5", "nzOffset", "1", "class", "img-box", 4, "ngFor", "ngForOf"], ["nz-button", "", "nzType", "dashed", 1, "add-btn", 3, "click"], ["nz-icon", "", "nzType", "plus-circle", "nzTheme", "outline"], [1, "save-box"], ["nz-button", "", "nzType", "primary", "nzShape", "round", 1, "save-btn", 3, "nzSize", "click"], ["nz-icon", "", "nzType", "save"], [1, "hotzone-toolbox"], ["toolBoxRef", ""], [1, "tool-item"], [1, "item-name"], ["type", "text", "nz-input", "", 1, "edit", 3, "ngModel", "ngModelChange", "blur"], ["type", "text", "nz-input", "", 1, "edit", 3, "ngModel", "ngModelChange", "input"], ["class", "tool-items", "style", "margin-left: 10px;", 4, "ngIf"], [1, "tool-item", "right-btn"], ["nz-checkbox", "", 2, "width", "100px", "margin-right", "10px", 3, "ngModel", "ngModelChange", "change"], ["nz-button", "", "nzType", "primary", 1, "save-btn", 2, "margin-right", "10px", 3, "click"], ["nz-button", "", "nzType", "primary", 1, "save-btn", 3, "click"], [2, "opacity", "0", "position", "absolute", "top", "0px", "font-family", "BRLNSR_1"], [3, "nzValue", "nzLabel"], ["nz-col", "", "nzSpan", "5", "nzOffset", "1", 1, "img-box"], [2, "margin", "auto", "padding", "5px", "margin-top", "30px", "width", "90%", "border", "2px dashed #ddd", "border-radius", "10px"], [2, "margin-left", "40%"], ["nz-button", "", "nzType", "danger", "nzSize", "small", 2, "float", "right", 3, "click"], [2, "margin", "10px 0 5px 0"], [2, "display", "flex", "align-items", "center", "justify-content", "start"], [2, "display", "inline-block", "width", "200px", "text-align", "right", "white-space", "nowrap"], ["type", "text", "nz-input", "", 2, "margin-left", "20px", 3, "ngModel", "ngModelChange", "blur"], [1, "tool-items", 2, "margin-left", "10px"], ["nz-tooltip", "", "nzTooltipPlacement", "bottom", "nzTooltipTitle", "\u76F8\u540C\u5927\u5C0F (\u4EE5\u7B2C\u4E00\u4E2A\u9009\u62E9\u7684\u70ED\u533A\u4E3A\u57FA\u51C6)", 1, "icon-btn", 3, "click"], ["t", "1678350915666", "viewBox", "0 0 1024 1024", "version", "1.1", "xmlns", "http://www.w3.org/2000/svg", "p-id", "3053", "width", "28", "height", "28", 1, "icon"], ["d", "M263.2 761.3H145.4c-45.5 0-82.5-37-82.5-82.5V150.6c0-45.5 37-82.5 82.5-82.5h488.9c45.5 0 82.5 37 82.5 82.5v70.1c0 11-9 20-20 20s-20-9-20-20v-70.1c0-23.4-19-42.5-42.5-42.5H145.4c-23.4 0-42.5 19-42.5 42.5v528.3c0 23.4 19 42.5 42.5 42.5h117.8c11 0 20 9 20 20s-8.9 19.9-20 19.9z", "fill", "currentColor", "p-id", "3054"], ["d", "M897.2 971.1H400.9c-42.5 0-77.2-34.6-77.2-77.2V358.4c0-42.5 34.6-77.2 77.2-77.2h496.4c42.5 0 77.2 34.6 77.2 77.2V894c-0.1 42.5-34.7 77.1-77.3 77.1zM400.9 321.2c-20.5 0-37.2 16.7-37.2 37.2V894c0 20.5 16.7 37.2 37.2 37.2h496.4c20.5 0 37.2-16.7 37.2-37.2V358.4c0-20.5-16.7-37.2-37.2-37.2H400.9z", "fill", "currentColor", "p-id", "3055"], ["nz-tooltip", "", "nzTooltipPlacement", "bottom", "nzTooltipTitle", "\u4E0A\u5BF9\u9F50", 1, "icon-btn", 3, "click"], ["t", "1678350830188", "viewBox", "0 0 1024 1024", "version", "1.1", "xmlns", "http://www.w3.org/2000/svg", "p-id", "1549", "width", "28", "height", "28", 1, "icon"], ["d", "M191 926.8c-11 0-20-9-20-20V287.6c0-11 9-20 20-20s20 9 20 20v619.2c0 11-8.9 20-20 20zM509 628.1c-11 0-20-9-20-20V287.6c0-11 9-20 20-20s20 9 20 20v320.5c0 11-8.9 20-20 20zM827.1 786.9c-11 0-20-9-20-20V287.6c0-11 9-20 20-20s20 9 20 20V767c0 11-9 19.9-20 19.9z", "fill", "currentColor", "p-id", "1550"], ["d", "M964 160.3H54.1c-11 0-20-9-20-20s9-20 20-20H964c11 0 20 9 20 20s-9 20-20 20z", "fill", "currentColor", "p-id", "1551"], ["nz-tooltip", "", "nzTooltipPlacement", "bottom", "nzTooltipTitle", "\u4E0B\u5BF9\u9F50", 1, "icon-btn", 3, "click"], ["t", "1678351858696", "viewBox", "0 0 1024 1024", "version", "1.1", "xmlns", "http://www.w3.org/2000/svg", "p-id", "3554", "width", "28", "height", "28", 1, "icon"], ["d", "M195 131.2c-11 0-20 9-20 20v619.2c0 11 9 20 20 20s20-9 20-20V151.2c0-11-8.9-20-20-20zM513 429.9c-11 0-20 9-20 20v320.5c0 11 9 20 20 20s20-9 20-20V449.9c0-11-8.9-20-20-20zM831.1 271.1c-11 0-20 9-20 20v479.4c0 11 9 20 20 20s20-9 20-20V291.1c0-11.1-9-20-20-20z", "fill", "currentColor", "p-id", "3555"], ["d", "M968 897.7H58.1c-11 0-20 9-20 20s9 20 20 20H968c11 0 20-9 20-20s-9-20-20-20z", "fill", "currentColor", "p-id", "3556"], ["nz-tooltip", "", "nzTooltipPlacement", "bottom", "nzTooltipTitle", "\u5DE6\u5BF9\u9F50", 1, "icon-btn", 3, "click"], ["t", "1678350864717", "viewBox", "0 0 1024 1024", "version", "1.1", "xmlns", "http://www.w3.org/2000/svg", "p-id", "2051", "width", "28", "height", "28", 1, "icon"], ["d", "M926.2 225.9H277c-11.5 0-20.9-9.4-20.9-20.9 0-11.5 9.4-20.9 20.9-20.9h649.2c11.5 0 20.9 9.4 20.9 20.9 0 11.5-9.3 20.9-20.9 20.9zM613.1 540.7H277c-11.5 0-20.9-9.4-20.9-20.9 0-11.5 9.4-20.9 20.9-20.9h336c11.5 0 20.9 9.4 20.9 20.9 0.1 11.6-9.3 20.9-20.8 20.9zM779.6 855.6H277c-11.5 0-20.9-9.4-20.9-20.9 0-11.5 9.4-20.9 20.9-20.9h502.6c11.5 0 20.9 9.4 20.9 20.9 0 11.5-9.3 20.9-20.9 20.9z", "fill", "currentColor", "p-id", "2052"], ["d", "M116 987c-11.5 0-20.9-9.4-20.9-20.9V73.6c0-11.5 9.4-20.9 20.9-20.9s20.9 9.4 20.9 20.9v892.5c0 11.5-9.3 20.9-20.9 20.9z", "fill", "currentColor", "p-id", "2053"], ["nz-tooltip", "", "nzTooltipPlacement", "bottom", "nzTooltipTitle", "\u53F3\u5BF9\u9F50", 1, "icon-btn", 3, "click"], ["t", "1678350874629", "viewBox", "0 0 1024 1024", "version", "1.1", "xmlns", "http://www.w3.org/2000/svg", "p-id", "2302", "width", "28", "height", "28", 1, "icon"], ["d", "M101.8 225.9H751c11.5 0 20.9-9.4 20.9-20.9 0-11.5-9.4-20.9-20.9-20.9H101.8c-11.5 0-20.9 9.4-20.9 20.9 0 11.5 9.3 20.9 20.9 20.9zM414.9 540.7h336c11.5 0 20.9-9.4 20.9-20.9 0-11.5-9.4-20.9-20.9-20.9h-336c-11.5 0-20.9 9.4-20.9 20.9 0 11.6 9.4 20.9 20.9 20.9zM248.4 855.6H751c11.5 0 20.9-9.4 20.9-20.9 0-11.5-9.4-20.9-20.9-20.9H248.4c-11.5 0-20.9 9.4-20.9 20.9 0 11.5 9.3 20.9 20.9 20.9z", "fill", "currentColor", "p-id", "2303"], ["d", "M912 987c11.5 0 20.9-9.4 20.9-20.9V73.6c0-11.5-9.4-20.9-20.9-20.9-11.5 0-20.9 9.4-20.9 20.9v892.5c0 11.5 9.3 20.9 20.9 20.9z", "fill", "currentColor", "p-id", "2304"], ["nz-tooltip", "", "nzTooltipPlacement", "bottom", "nzTooltipTitle", "\u6C34\u5E73\u5C45\u4E2D\u5BF9\u9F50 (\u4EE5\u7B2C\u4E00\u4E2A\u9009\u62E9\u7684\u70ED\u533A\u4E3A\u57FA\u51C6)", 1, "icon-btn", 3, "click"], ["t", "1678350905967", "viewBox", "0 0 1024 1024", "version", "1.1", "xmlns", "http://www.w3.org/2000/svg", "p-id", "2803", "width", "28", "height", "28", 1, "icon"], ["d", "M195 196.3c-11 0-20 9-20 20v619.2c0 11 9 20 20 20s20-9 20-20V216.3c0-11-8.9-20-20-20zM513 345.7c-11 0-20 9-20 20v320.5c0 11 9 20 20 20s20-9 20-20V365.7c0-11.1-8.9-20-20-20zM831.1 266.2c-11 0-20 9-20 20v479.4c0 11 9 20 20 20s20-9 20-20V286.2c0-11-9-20-20-20z", "fill", "currentColor", "p-id", "2804"], ["nz-tooltip", "", "nzTooltipPlacement", "bottom", "nzTooltipTitle", "\u5782\u76F4\u5C45\u4E2D\u5BF9\u9F50 (\u4EE5\u7B2C\u4E00\u4E2A\u9009\u62E9\u7684\u70ED\u533A\u4E3A\u57FA\u51C6)", 1, "icon-btn", 3, "click"], ["t", "1678350984392", "viewBox", "0 0 1024 1024", "version", "1.1", "xmlns", "http://www.w3.org/2000/svg", "p-id", "3304", "width", "28", "height", "28", 1, "icon"], ["d", "M107.7 808.1h814.6c14.5 0 26.2 9.4 26.2 20.9 0 11.5-11.7 20.9-26.2 20.9H107.7c-14.5 0-26.2-9.4-26.2-20.9 0-11.5 11.7-20.9 26.2-20.9zM304.2 493.3h421.6c14.5 0 26.2 9.4 26.2 20.9 0 11.5-11.7 20.9-26.2 20.9H304.2c-14.5 0-26.2-9.4-26.2-20.9 0-11.6 11.7-20.9 26.2-20.9zM199.7 178.4h630.6c14.5 0 26.2 9.4 26.2 20.9s-11.7 20.9-26.2 20.9H199.7c-14.5 0-26.2-9.4-26.2-20.9s11.7-20.9 26.2-20.9z", "fill", "currentColor", "p-id", "3305"], ["nz-tooltip", "", "nzTooltipPlacement", "bottom", "nzTooltipTitle", "\u76F8\u540C\u6C34\u5E73\u95F4\u8DDD", 1, "icon-btn", 3, "click"], ["t", "1678354726989", "viewBox", "0 0 1024 1024", "version", "1.1", "xmlns", "http://www.w3.org/2000/svg", "p-id", "4058", "width", "28", "height", "28", 1, "icon"], ["d", "M828.4 123.5H225.6c-11 0-20-9-20-20s9-20 20-20h602.8c11 0 20 9 20 20s-8.9 20-20 20z", "fill", "currentColor", "p-id", "4059"], ["d", "M527 752.6c-11 0-20-9-20-20V108.4c0-11 9-20 20-20s20 9 20 20v624.2c0 11-9 20-20 20z", "fill", "currentColor", "p-id", "4060"], ["d", "M359.5 952.9c-3.3 0-6.6-0.8-9.7-2.5l-167-92.3c-6.4-3.5-10.4-10.3-10.3-17.6s4.1-14 10.5-17.5l167-89.7c9.7-5.2 21.9-1.6 27.1 8.2s1.6 21.9-8.2 27.1l-134.7 72.3 134.9 74.6c9.7 5.3 13.2 17.5 7.8 27.2-3.6 6.4-10.4 10.2-17.4 10.2zM694.5 952.9c-7 0-13.9-3.7-17.5-10.3-5.3-9.7-1.8-21.8 7.8-27.2l134.9-74.6L685 768.5c-9.7-5.2-13.4-17.3-8.2-27.1s17.3-13.4 27.1-8.2l167 89.7c6.5 3.5 10.5 10.2 10.5 17.5 0 7.3-3.9 14.1-10.3 17.6l-167 92.3c-3 1.8-6.3 2.6-9.6 2.6z", "fill", "currentColor", "p-id", "4061"], ["d", "M845.7 860.3H215.6c-11 0-20-9-20-20s9-20 20-20h630.1c11 0 20 9 20 20s-9 20-20 20z", "fill", "currentColor", "p-id", "4062"], ["nz-tooltip", "", "nzTooltipPlacement", "bottom", "nzTooltipTitle", "\u76F8\u540C\u5782\u76F4\u95F4\u8DDD", 1, "icon-btn", 3, "click"], ["t", "1678354701685", "viewBox", "0 0 1024 1024", "version", "1.1", "xmlns", "http://www.w3.org/2000/svg", "p-id", "3805", "width", "28", "height", "28", 1, "icon"], ["d", "M670.5 242.1H42.7c-11 0-20-9-20-20s9-20 20-20h627.8c11 0 20 9 20 20s-9 20-20 20z", "fill", "currentColor", "p-id", "3806"], ["d", "M356.6 897.2c-11 0-20-9-20-20v-650c0-11 9-20 20-20s20 9 20 20v650c0 11-9 20-20 20z", "fill", "currentColor", "p-id", "3807"], ["d", "M970 378.9c-7.1 0-14-3.8-17.6-10.5l-76-141.6L798 368.6c-5.3 9.7-17.5 13.2-27.2 7.8-9.7-5.3-13.2-17.5-7.8-27.2l96.2-174c3.5-6.4 10.2-10.3 17.5-10.3h0.1c7.3 0 14 4.1 17.5 10.5l93.4 174c5.2 9.7 1.6 21.9-8.2 27.1-3.1 1.6-6.3 2.4-9.5 2.4zM876.6 906.9c-7.3 0-14-4-17.5-10.3l-96.2-174c-5.3-9.7-1.8-21.8 7.8-27.2 9.7-5.3 21.8-1.8 27.2 7.8L876.3 845l76-141.6c5.2-9.7 17.3-13.4 27.1-8.2 9.7 5.2 13.4 17.3 8.2 27.1l-93.4 174c-3.5 6.5-10.2 10.5-17.5 10.5 0 0.1-0.1 0.1-0.1 0.1z", "fill", "currentColor", "p-id", "3808"], ["d", "M876.9 890.3c-11 0-20-9-20-20V209.1c0-11 9-20 20-20s20 9 20 20v661.3c0 11-9 19.9-20 19.9z", "fill", "currentColor", "p-id", "3809"]], template: function CustomHotZoneComponent_Template(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 0, 1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "h5", 2);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](3, " preview: ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "div", 3, 4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "div", 5, 6);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](9, "canvas", 7, 8);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("contextmenu", function CustomHotZoneComponent_Template_canvas_contextmenu_9_listener($event) { return ctx.handleContextmenuOnMenu($event); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](11, "div", 9, 10);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](13, "div", 11);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](14, "\u79FB\u52A8\u70ED\u533A\u5230\u8FD9\u91CC");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](15, "nz-select", 12);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function CustomHotZoneComponent_Template_nz_select_ngModelChange_15_listener($event) { return ctx.rightMenuSlecetHotZoneIndex = $event; });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](16, CustomHotZoneComponent_nz_option_16_Template, 1, 2, "nz-option", 13);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](17, "button", 14);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function CustomHotZoneComponent_Template_button_click_17_listener() { return ctx.handleClickMoveHotZoneByRightMenu(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](18, "\u786E\u5B9A");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](19, "div", 15);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](20, "div", 16);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](21, "h5");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](22, " add background: ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](23, "div", 17);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](24, "app-upload-image-with-preview", 18);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("imageUploaded", function CustomHotZoneComponent_Template_app_upload_image_with_preview_imageUploaded_24_listener($event) { return ctx.onBackgroundUploadSuccess($event); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](25, CustomHotZoneComponent_div_25_Template, 11, 2, "div", 19);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](26, "div", 16);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](27, "div", 17);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](28, "button", 20);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function CustomHotZoneComponent_Template_button_click_28_listener() { return ctx.addBtnClick(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](29, "i", 21);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](30, " Add hot zone ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](31, "nz-divider");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](32, "div", 22);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](33, "button", 23);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function CustomHotZoneComponent_Template_button_click_33_listener() { return ctx.saveClick(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](34, "i", 24);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](35, " Save ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](36, "div", 25, 26);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](38, "div", 27);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](39, "span", 28);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](40, "\u540D\u79F0\uFF1A");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](41, "input", 29);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function CustomHotZoneComponent_Template_input_ngModelChange_41_listener($event) { return ctx.currentSetting.itemName = $event; })("blur", function CustomHotZoneComponent_Template_input_blur_41_listener() { return ctx.handleClickUpdateHotZoneParams(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](42, "div", 27);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](43, "span", 28);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](44, "\u5BBD\uFF1A");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](45, "input", 30);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function CustomHotZoneComponent_Template_input_ngModelChange_45_listener($event) { return ctx.currentSetting.width = $event; })("input", function CustomHotZoneComponent_Template_input_input_45_listener() { return ctx.handleClickUpdateHotZoneParams(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](46, "div", 27);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](47, "span", 28);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](48, "\u9AD8\uFF1A");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](49, "input", 30);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function CustomHotZoneComponent_Template_input_ngModelChange_49_listener($event) { return ctx.currentSetting.height = $event; })("input", function CustomHotZoneComponent_Template_input_input_49_listener() { return ctx.handleClickUpdateHotZoneParams(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](50, "div", 27);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](51, "button", 14);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function CustomHotZoneComponent_Template_button_click_51_listener() { return ctx.handleClickUpdateHotZoneParams(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](52, "\u8BBE\u7F6E");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](53, CustomHotZoneComponent_div_53_Template, 39, 0, "div", 31);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](54, "div", 27);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](55, "div", 32);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](56, "label", 33);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function CustomHotZoneComponent_Template_label_ngModelChange_56_listener($event) { return ctx.inLayoutMode = $event; })("change", function CustomHotZoneComponent_Template_label_change_56_listener($event) { return ctx.onAdjustModeChange($event); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](57, "\u5E03\u5C40\u6A21\u5F0F");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](58, "button", 34);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function CustomHotZoneComponent_Template_button_click_58_listener() { return ctx.addBtnClick(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](59, " \u65B0\u5EFA\u70ED\u533A ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](60, "button", 35);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function CustomHotZoneComponent_Template_button_click_60_listener() { return ctx.saveClick(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](61, " \u4FDD\u5B58 ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](62, "label", 36);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](63, "1");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
            }
            if (rf & 2) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](15);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.rightMenuSlecetHotZoneIndex);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx.hotZoneArr);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](8);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("picUrl", ctx.bgItem == null ? null : ctx.bgItem.url);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx.hotZoneArr);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](8);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzSize", "large");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵclassMap"](_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵpureFunction1"](12, _c7, ctx.toolBoxFixTop));
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.currentSetting.itemName);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.currentSetting.width);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.currentSetting.height);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.inLayoutMode);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.inLayoutMode);
            }
        }, directives: [ng_zorro_antd_select__WEBPACK_IMPORTED_MODULE_6__["NzSelectComponent"], _angular_forms__WEBPACK_IMPORTED_MODULE_7__["NgControlStatus"], _angular_forms__WEBPACK_IMPORTED_MODULE_7__["NgModel"], _angular_common__WEBPACK_IMPORTED_MODULE_8__["NgForOf"], ng_zorro_antd_button__WEBPACK_IMPORTED_MODULE_9__["NzButtonComponent"], ng_zorro_antd_grid__WEBPACK_IMPORTED_MODULE_10__["NzRowDirective"], ng_zorro_antd_grid__WEBPACK_IMPORTED_MODULE_10__["NzColDirective"], _upload_image_with_preview_upload_image_with_preview_component__WEBPACK_IMPORTED_MODULE_11__["UploadImageWithPreviewComponent"], ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_12__["NzIconDirective"], ng_zorro_antd_divider__WEBPACK_IMPORTED_MODULE_13__["NzDividerComponent"], _angular_forms__WEBPACK_IMPORTED_MODULE_7__["DefaultValueAccessor"], ng_zorro_antd_input__WEBPACK_IMPORTED_MODULE_14__["NzInputDirective"], _angular_common__WEBPACK_IMPORTED_MODULE_8__["NgIf"], ng_zorro_antd_checkbox__WEBPACK_IMPORTED_MODULE_15__["NzCheckboxComponent"], ng_zorro_antd_select__WEBPACK_IMPORTED_MODULE_6__["NzOptionComponent"], ng_zorro_antd_tooltip__WEBPACK_IMPORTED_MODULE_16__["NzTooltipDirective"]], styles: [".p-image-children-editor[_ngcontent-%COMP%] {\n  width: 100%;\n  height: 100%;\n  border-radius: 0.5rem;\n  border: 2px solid #ddd;\n}\n\n.p-image-children-editor[_ngcontent-%COMP%]   .preview-box[_ngcontent-%COMP%] {\n  margin: auto;\n  width: 95%;\n  height: 5000px;\n  position: relative;\n  border: 2px dashed #ddd;\n  border-radius: 0.5rem;\n  background-color: #fafafa;\n  text-align: center;\n  color: #aaa;\n}\n\n.p-image-children-editor[_ngcontent-%COMP%]   .preview-box[_ngcontent-%COMP%]   .preview-img[_ngcontent-%COMP%] {\n  height: 100%;\n  width: auto;\n}\n\n.p-image-children-editor[_ngcontent-%COMP%]   .bg-box[_ngcontent-%COMP%] {\n  margin-bottom: 1rem;\n}\n\n.p-image-children-editor[_ngcontent-%COMP%]   .img-box[_ngcontent-%COMP%] {\n  margin-bottom: 1rem;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.p-image-children-editor[_ngcontent-%COMP%]   .img-box-upload[_ngcontent-%COMP%] {\n  width: 80%;\n}\n\n.p-image-children-editor[_ngcontent-%COMP%]   .add-btn[_ngcontent-%COMP%] {\n  margin-top: 1rem;\n  width: 200px;\n  height: 90px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n.save-box[_ngcontent-%COMP%] {\n  width: 100%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  padding-bottom: 20px;\n}\n\n.save-box[_ngcontent-%COMP%]   .save-btn[_ngcontent-%COMP%] {\n  width: 160px;\n  height: 40px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\nh5[_ngcontent-%COMP%] {\n  margin-top: 1rem;\n}\n\n@font-face {\n  font-family: 'BRLNSR_1';\n  src: url(\"/assets/font/BRLNSR_1.TTF\");\n}\n\n.hotzone-toolbox[_ngcontent-%COMP%] {\n  background-color: #EEEEEE;\n  position: absolute;\n  top: 0;\n  left: 0;\n  width: 100%;\n  height: 50px;\n  display: flex;\n}\n\n.hotzone-toolbox.fix-top[_ngcontent-%COMP%] {\n  border-radius: 5px;\n  box-shadow: 0 2px 4px 0 #00000066;\n}\n\n.hotzone-toolbox[_ngcontent-%COMP%]   .tool-item[_ngcontent-%COMP%] {\n  width: 130px;\n  height: 50px;\n  display: flex;\n  justify-content: center;\n  align-items: center;\n}\n\n.hotzone-toolbox[_ngcontent-%COMP%]   .tool-item.right-btn[_ngcontent-%COMP%] {\n  width: initial;\n  position: absolute;\n  right: 30px;\n}\n\n.hotzone-toolbox[_ngcontent-%COMP%]   .tool-item[_ngcontent-%COMP%]   .item-name[_ngcontent-%COMP%] {\n  width: 50px;\n  text-align: right;\n}\n\n.hotzone-toolbox[_ngcontent-%COMP%]   .tool-item[_ngcontent-%COMP%]   .edit[_ngcontent-%COMP%] {\n  width: 80px;\n}\n\n.hotzone-toolbox[_ngcontent-%COMP%]   .tool-items[_ngcontent-%COMP%] {\n  width: 500px;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n}\n\n.hotzone-toolbox[_ngcontent-%COMP%]   .tool-items[_ngcontent-%COMP%]   .icon-btn[_ngcontent-%COMP%] {\n  display: flex;\n  justify-content: center;\n  align-items: center;\n  width: 42px;\n  cursor: pointer;\n}\n\n.hotzone-toolbox[_ngcontent-%COMP%]   .tool-items[_ngcontent-%COMP%]   .icon-btn[_ngcontent-%COMP%]   .icon[_ngcontent-%COMP%] {\n  color: #515151;\n}\n\n.hotzone-toolbox[_ngcontent-%COMP%]   .tool-items[_ngcontent-%COMP%]   .icon-btn[_ngcontent-%COMP%]:hover {\n  background-color: #ddd;\n}\n\n.hotzone-toolbox[_ngcontent-%COMP%]   .tool-items[_ngcontent-%COMP%]   .icon-btn[_ngcontent-%COMP%]:hover   .icon[_ngcontent-%COMP%] {\n  color: blueviolet;\n}\n\n.content-menu[_ngcontent-%COMP%] {\n  padding: 10px;\n  background-color: #EEEEEE;\n  color: #000000;\n  text-align: left;\n  display: none;\n  position: absolute;\n}\n\n.content-menu[_ngcontent-%COMP%]   .title[_ngcontent-%COMP%] {\n  margin-bottom: 10px;\n}\n\n.content-menu[_ngcontent-%COMP%]   .select[_ngcontent-%COMP%] {\n  margin-right: 10px;\n}\n\n@media (max-width: 1260px) {\n  .hotzone-toolbox[_ngcontent-%COMP%]   .tool-items[_ngcontent-%COMP%] {\n    width: 250px;\n  }\n  .hotzone-toolbox[_ngcontent-%COMP%]   .tool-items[_ngcontent-%COMP%]   .icon-btn[_ngcontent-%COMP%] {\n    width: 26px;\n  }\n}\n/*# sourceMappingURL=data:application/json;base64,  */"] });
    return CustomHotZoneComponent;
})();



/***/ }),

/***/ "./src/app/common/formula-input/formula-input.component.ts":
/*!*****************************************************************!*\
  !*** ./src/app/common/formula-input/formula-input.component.ts ***!
  \*****************************************************************/
/*! exports provided: FormulaInputComponent */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FormulaInputComponent", function() { return FormulaInputComponent; });
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/__ivy_ngcc__/fesm2015/core.js");
/* harmony import */ var ng_zorro_antd_input__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ng-zorro-antd/input */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-input.js");
/* harmony import */ var _angular_forms__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/forms */ "./node_modules/@angular/forms/__ivy_ngcc__/fesm2015/forms.js");
/* harmony import */ var ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ng-zorro-antd/icon */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-icon.js");





const _c0 = ["inputEl"];
function FormulaInputComponent_ng_template_3_Template(rf, ctx) {
    if (rf & 1) {
        const _r487 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "i", 4);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function FormulaInputComponent_ng_template_3_Template_i_click_0_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r487); const ctx_r486 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r486.showFormulaPad($event); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzType", "percentage");
    }
}
let FormulaInputComponent = /*@__PURE__*/ (() => {
    class FormulaInputComponent {
        constructor() {
            this.ngfModelChange = new _angular_core__WEBPACK_IMPORTED_MODULE_0__["EventEmitter"]();
            this.ngfBlur = new _angular_core__WEBPACK_IMPORTED_MODULE_0__["EventEmitter"]();
            this.FB_id = 'FormulaBoard';
            if (!window.__FormulaBoard_js_installed__) {
                window.__FormulaBoard_js_installed__ = true;
                const s = document.createElement('script');
                s.src = 'assets/formula-board/formula-board.js';
                document.head.append(s);
                s.addEventListener('load', () => {
                    this.FormulaBoardInit();
                });
            }
        }
        ngOnInit() {
        }
        ngOnChanges() {
        }
        ngOnDestroy() {
        }
        valueChanged(evt) {
            console.log('valueChanged', this.ngfModel, evt);
            this.ngfModelChange.emit(evt);
        }
        showFormulaPad(e) {
            // console.log('showFormulaPad', e);
            window.FBOARD.set(e.target.value);
            window.__tmp_fp_input_model__ = this;
            const rect = this.inputEl.nativeElement.getBoundingClientRect();
            const fb = document.getElementById(this.FB_id);
            fb.style.position = 'fixed';
            // @ts-ignore
            const padWidth = $('#' + this.FB_id).outerWidth() * .8;
            // @ts-ignore
            const padHeight = $('#' + this.FB_id).outerHeight() * .8;
            // @ts-ignore
            const ww = $(window).innerWidth();
            // @ts-ignore
            const hh = $(window).innerHeight();
            const left = (ww - padWidth) / 2;
            const top = (hh - padHeight) / 2;
            console.log('left', left);
            fb.style.left = left + 'px';
            fb.style.top = top + 'px';
            fb.style.visibility = 'visible';
        }
        updateValue(val) {
            this.ngfModel = val;
            this.ngfModelChange.emit(val);
        }
        ngAfterViewInit() { }
        FormulaBoardInit() {
            // if (window.__initfp__) {
            //   return;
            // }
            // window.__initfp__ = true;
            window.FBOARD = new window.FormulaBoard({
                // container: this.wrapperEl.nativeElement,
                id: this.FB_id,
                path: 'assets/formula-board/',
                options: {
                    width: 1920,
                    mode: 'pc',
                    bottom: false,
                }
            });
            document.addEventListener('documentMessage', (e) => {
                // @ts-ignore
                const { type } = e.detail;
                if (type === 'common.setFormula') {
                    // @ts-ignore
                    const { formula } = e.detail.data.body;
                    console.log(formula);
                    window.FBOARD.clear();
                    // @ts-ignore
                    window.__tmp_fp_input_model__.updateValue(formula);
                    window.FBOARD.editor.style.visibility = 'hidden';
                    this.ngfBlur.emit();
                }
                if (type === 'common.closeModal') {
                    window.FBOARD.editor.style.visibility = 'hidden';
                }
            });
        }
    }
    FormulaInputComponent.ɵfac = function FormulaInputComponent_Factory(t) { return new (t || FormulaInputComponent)(); };
    FormulaInputComponent.ɵcmp = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdefineComponent"]({ type: FormulaInputComponent, selectors: [["app-formula-input"]], viewQuery: function FormulaInputComponent_Query(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstaticViewQuery"](_c0, true);
            }
            if (rf & 2) {
                var _t;
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵqueryRefresh"](_t = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵloadQuery"]()) && (ctx.inputEl = _t.first);
            }
        }, inputs: { ngfModel: "ngfModel" }, outputs: { ngfModelChange: "ngfModelChange", ngfBlur: "ngfBlur" }, features: [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵNgOnChangesFeature"]], decls: 5, vars: 2, consts: [[3, "nzSuffix"], ["type", "text", "nz-input", "", 3, "ngModel", "focus", "ngModelChange"], ["inputEl", ""], ["suffixTemplate", ""], ["nz-icon", "", 3, "nzType", "click"]], template: function FormulaInputComponent_Template(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "nz-input-group", 0);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "input", 1, 2);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("focus", function FormulaInputComponent_Template_input_focus_1_listener($event) { return ctx.showFormulaPad($event); })("ngModelChange", function FormulaInputComponent_Template_input_ngModelChange_1_listener($event) { return ctx.ngfModel = $event; })("ngModelChange", function FormulaInputComponent_Template_input_ngModelChange_1_listener($event) { return ctx.valueChanged($event); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](3, FormulaInputComponent_ng_template_3_Template, 1, 1, "ng-template", null, 3, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplateRefExtractor"]);
            }
            if (rf & 2) {
                const _r484 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵreference"](4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzSuffix", _r484);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.ngfModel);
            }
        }, directives: [ng_zorro_antd_input__WEBPACK_IMPORTED_MODULE_1__["NzInputGroupComponent"], _angular_forms__WEBPACK_IMPORTED_MODULE_2__["DefaultValueAccessor"], ng_zorro_antd_input__WEBPACK_IMPORTED_MODULE_1__["NzInputDirective"], _angular_forms__WEBPACK_IMPORTED_MODULE_2__["NgControlStatus"], _angular_forms__WEBPACK_IMPORTED_MODULE_2__["NgModel"], ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_3__["NzIconDirective"]], styles: ["[_nghost-%COMP%] {\n  display: inline-block;\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc3R5bGUvY29tbW9uX21peGluLmNzcyIsIi9Vc2Vycy9saXdlaS9Eb2N1bWVudHMvR2l0SHViL0NvdXJzZXdhcmUvREdfRkFGL2Zvcm1fYW5ndWxhci9zcmMvYXBwL2NvbW1vbi9mb3JtdWxhLWlucHV0L2Zvcm11bGEtaW5wdXQuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbW1vbi9mb3JtdWxhLWlucHV0L2Zvcm11bGEtaW5wdXQuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0NBRUM7QUNERDtFQUNFLHFCQUFxQjtBQ0N2QiIsImZpbGUiOiJzcmMvYXBwL2NvbW1vbi9mb3JtdWxhLWlucHV0L2Zvcm11bGEtaW5wdXQuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuZ2xvYmFsIGNzcyB0byBtaXhpblxuKi9cblxuXG5cbiIsIkBpbXBvcnQgJy4uLy4uL3N0eWxlL2NvbW1vbl9taXhpbi5jc3MnO1xuOmhvc3R7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbiIsIkBpbXBvcnQgdXJsKC4uLy4uL3N0eWxlL2NvbW1vbl9taXhpbi5jc3MpO1xuOmhvc3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4iXX0= */"] });
    return FormulaInputComponent;
})();



/***/ }),

/***/ "./src/app/common/lesson-title-config/lesson-title-config.component.ts":
/*!*****************************************************************************!*\
  !*** ./src/app/common/lesson-title-config/lesson-title-config.component.ts ***!
  \*****************************************************************************/
/*! exports provided: LessonTitleConfigComponent */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "LessonTitleConfigComponent", function() { return LessonTitleConfigComponent; });
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/__ivy_ngcc__/fesm2015/core.js");
/* harmony import */ var ng_zorro_antd_select__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ng-zorro-antd/select */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-select.js");
/* harmony import */ var _angular_forms__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/forms */ "./node_modules/@angular/forms/__ivy_ngcc__/fesm2015/forms.js");
/* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @angular/common */ "./node_modules/@angular/common/__ivy_ngcc__/fesm2015/common.js");
/* harmony import */ var _fortawesome_angular_fontawesome__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @fortawesome/angular-fontawesome */ "./node_modules/@fortawesome/angular-fontawesome/__ivy_ngcc__/fesm2015/angular-fontawesome.js");
/* harmony import */ var ng_zorro_antd_popover__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ng-zorro-antd/popover */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-popover.js");
/* harmony import */ var ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ng-zorro-antd/icon */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-icon.js");
/* harmony import */ var _audio_recorder_audio_recorder_component__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../audio-recorder/audio-recorder.component */ "./src/app/common/audio-recorder/audio-recorder.component.ts");
/* harmony import */ var ng_zorro_antd_grid__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ng-zorro-antd/grid */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-grid.js");










const _c0 = ["titleEl"];
const _c1 = function (a0) { return { "font-family": a0 }; };
function LessonTitleConfigComponent_nz_option_6_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "span", 31);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const font_r380 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", font_r380)("nzLabel", font_r380);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngStyle", _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵpureFunction1"](4, _c1, font_r380));
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate"](font_r380);
    }
}
function LessonTitleConfigComponent_nz_option_8_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 32);
    }
    if (rf & 2) {
        const i_r381 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", i_r381)("nzLabel", "Size - " + i_r381);
    }
}
function LessonTitleConfigComponent_ng_template_36_div_1_Template(rf, ctx) {
    if (rf & 1) {
        const _r385 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 35);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function LessonTitleConfigComponent_ng_template_36_div_1_Template_div_click_0_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r385); const color_r383 = ctx.$implicit; const ctx_r384 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2); return ctx_r384.onSelectColor(color_r383); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const color_r383 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstyleProp"]("background-color", color_r383);
    }
}
function LessonTitleConfigComponent_ng_template_36_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 33);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](1, LessonTitleConfigComponent_ng_template_36_div_1_Template, 1, 2, "div", 34);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r379 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx_r379.colorList);
    }
}
const editorTpl = `<html lang="en"><head><meta charset="utf-8">
  <meta name="viewport"
          content="width=device-width,initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=no"/>
        <style>
@font-face{
  font-family: 'BRLNSDB';
  src: url("../../../assets/font/BRLNSDB.TTF") ;
}

@font-face{
  font-family: 'BRLNSB';
  src: url("../../../assets/font/BRLNSB.TTF") ;
}

@font-face{
  font-family: 'BRLNSR';
  src: url("../../../assets/font/BRLNSR.TTF") ;
}

@font-face{
  font-family: 'GOTHIC';
  src: url("../../../assets/font/GOTHIC.TTF") ;
}

@font-face{
  font-family: 'GOTHICB';
  src: url("../../../assets/font/GOTHICB.TTF") ;
}

@font-face{
  font-family: 'GOTHICBI';
  src: url("../../../assets/font/GOTHICBI.TTF") ;
}

@font-face{
  font-family: 'GOTHICI';
  src: url("../../../assets/font/GOTHICI.TTF") ;
}

@font-face{
  font-family: 'MMTextBook';
  src: url("../../../assets/font/MMTextBook.otf") ;
}

@font-face{
  font-family: 'MMTextBook-Bold';
  src: url("../../../assets/font/MMTextBook-Bold.otf") ;
}

@font-face{
  font-family: 'MMTextBook-BoldItalic';
  src: url("../../../assets/font/MMTextBook-BoldItalic.otf") ;
}

@font-face{
  font-family: 'MMTextBook-Italic';
  src: url("../../../assets/font/MMTextBook-Italic.otf") ;
}
html, body{
/*font-size: 30px;*/
}
body{
    height:48px;

  overflow: hidden;
  margin: 0;
  padding: 0 .5rem;
  font-family: 'BRLNSB, BRLNSDB, BRLNSR, GOTHIC, GOTHICB, MMTextBook';
  background: #FFF;
  line-height: 48px;
}
</style>
  </head>
  <body>{{content}}</body>
</html>`;
let LessonTitleConfigComponent = /*@__PURE__*/ (() => {
    class LessonTitleConfigComponent {
        constructor() {
            this.fontFamilyList = [
                'Arial',
                'BRLNSB',
                'BRLNSDB',
                'BRLNSR',
                'GOTHIC',
                'GOTHICB',
                // "GOTHICBI",
                // "GOTHICI",
                'MMTextBook',
            ];
            this.colorList = [
                '#000000',
                '#ffffff',
                '#595959',
                '#0075c2',
                '#c61c1e',
                '#9cbc3a',
                '#008000',
                '#FF0000',
                '#D2691E',
            ];
            this.MIN_FONT_SIZE = 1;
            this.MAX_FONT_SIZE = 7;
            this.isShowFontColorPane = false;
            this.isShowBGColorPane = false;
            this.fontSizeRange = [
            // {name: '1号', value: 9},
            // {name: '2号', value: 13},
            // {name: '3号', value: 16},
            // {name: '4号', value: 18},
            // {name: '5号', value: 24},
            // {name: '6号', value: 32},
            ];
            this.editorContent = '';
            this.__fontFamily = 'Arial';
            this.__fontColor = '';
            this.__fontSize = 3;
            this.loopCnt = 0;
            this.maxLoops = 20;
            this.titleEW = null;
            this.titleObj = {
                content: '',
                audio_url: ''
            };
            this.titleUpdated = new _angular_core__WEBPACK_IMPORTED_MODULE_0__["EventEmitter"]();
            this.shouldSave = () => {
                console.log('title shouldSave', this.titleObj);
                this.titleObj.content = this.titleEW.document.body.innerHTML.trim();
                this.titleUpdated.emit(this.titleObj);
            };
            this.fontSizeRange = [];
            for (let i = this.MIN_FONT_SIZE; i <= this.MAX_FONT_SIZE; ++i) {
                this.fontSizeRange.push(i);
            }
            this.__fontSize = 3;
            this.__fontColor = this.colorList[0];
        }
        ngOnChanges(vars) {
            if (!vars.titleObj.previousValue) { // 初始化，内容是空
                return;
            }
            let defObj = this.titleObj;
            if (!vars.titleObj.currentValue) {
                defObj = {
                    content: '',
                    audio_url: ''
                };
            }
            else {
                defObj = vars.titleObj.currentValue;
            }
            this.titleObj.content = defObj.content || '';
            this.titleObj.audio_url = defObj.audio_url || '';
            this.titleEW.document.body.innerHTML = this.titleObj.content;
        }
        ngOnInit() {
            if (!this.titleObj) {
                this.titleObj = {
                    content: '',
                    audio_url: ''
                };
            }
            this.titleObj.content = this.titleObj.content || '';
            this.titleObj.audio_url = this.titleObj.audio_url || '';
            this.editorContent = editorTpl.replace('{{content}}', this.titleObj.content);
            this.titleEW = this.titleEl.nativeElement.contentWindow;
            console.log('this.titleEW', this.titleEW);
            const tdoc = this.titleEW.document;
            tdoc.designMode = 'on';
            tdoc.open('text/html', 'replace');
            tdoc.write(this.editorContent);
            tdoc.close();
            tdoc.addEventListener('keypress', this.keyPress, true);
            tdoc.addEventListener('blur', () => {
                if (this.titleObj.content === this.titleEW.document.body.innerHTML.trim()) {
                    return;
                }
                this.shouldSave();
            }, true);
        }
        htmlEncode(text) {
            if (!text) {
                return '';
            }
            return text.replace(/\&/ig, '&amp;')
                .replace(/\</ig, '&lt;')
                .replace(/\>/ig, '&gt;')
                .replace(/\"/ig, '&quot;');
        }
        htmlDecode(text) {
            if (!text) {
                return '';
            }
            return text.replace(/\&amp\;/ig, '&')
                .replace(/\&lt\;/ig, '<')
                .replace(/\&gt\;/ig, '>')
                .replace(/\&quot\;/ig, '"');
        }
        ngOnDestroy() {
        }
        keyPress(evt) {
            try {
                if (evt.charCode === 13) {
                    evt.preventDefault();
                    evt.stopPropagation();
                    return;
                }
                if (evt.ctrlKey) {
                    const key = String.fromCharCode(evt.charCode).toLowerCase();
                    let cmd = '';
                    switch (key) {
                        case 'b':
                            cmd = 'bold';
                            break;
                        case 'i':
                            cmd = 'italic';
                            break;
                        case 'u':
                            cmd = 'underline';
                            break;
                    }
                    if (cmd) {
                        this.execEditorCommand(cmd);
                        // stop the event bubble
                        evt.preventDefault();
                        evt.stopPropagation();
                    }
                }
            }
            catch (e) {
                console.log(1, e);
                alert(e);
            }
        }
        execEditorCommand(command, option) {
            console.log('sssss');
            try {
                this.titleEW.focus();
                const result = this.titleEW.document.execCommand(command, false, option);
                console.log(result);
                this.loopCnt = 0;
                return false;
            }
            catch (e) {
                alert(e);
                if (this.loopCnt < this.maxLoops) {
                    setTimeout(() => {
                        this.execEditorCommand(command, option);
                    }, 100);
                    this.loopCnt += 1;
                }
                else {
                    alert('Error executing command.');
                }
            }
        }
        onSelectColor(color) {
            this.execEditorCommand('forecolor', color);
            this.__fontColor = color;
        }
        onChangeFontColor(val) {
            this.execEditorCommand('forecolor', this.__fontColor);
        }
        onChangeFontFamily(font) {
            this.execEditorCommand('fontName', font);
        }
        onChangeFontSize(size) {
            if (size) {
                size += this.__fontSize;
            }
            else {
                size = this.__fontSize;
            }
            size = Math.max(this.MIN_FONT_SIZE, size);
            size = Math.min(this.MAX_FONT_SIZE, size);
            this.execEditorCommand('fontsize', size);
        }
        onChangeBold() {
            this.execEditorCommand('bold');
        }
        onChangeItalic() {
            this.execEditorCommand('italic');
        }
        onChangeUnderline() {
            this.execEditorCommand('underline');
        }
        onChangeStrikethrough() {
            this.execEditorCommand('strikethrough');
        }
        titleAudioUploaded(res) {
            this.titleObj.audio_url = res.url;
            this.titleUpdated.emit(this.titleObj);
        }
    }
    LessonTitleConfigComponent.ɵfac = function LessonTitleConfigComponent_Factory(t) { return new (t || LessonTitleConfigComponent)(); };
    LessonTitleConfigComponent.ɵcmp = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdefineComponent"]({ type: LessonTitleConfigComponent, selectors: [["app-lesson-title-config"]], viewQuery: function LessonTitleConfigComponent_Query(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstaticViewQuery"](_c0, true);
            }
            if (rf & 2) {
                var _t;
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵqueryRefresh"](_t = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵloadQuery"]()) && (ctx.titleEl = _t.first);
            }
        }, inputs: { titleObj: "titleObj" }, outputs: { titleUpdated: "titleUpdated" }, features: [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵNgOnChangesFeature"]], decls: 38, vars: 10, consts: [[1, "title-config"], [1, "title-wrap"], [1, "row", 2, "margin", "5px"], [1, "p-content", 2, "width", "100%"], [1, "p-tool-box", "d-flex", 2, "background", "#fff"], ["nzPlaceHolder", "Font Family", 1, "ml-1", 2, "width", "120px", 3, "ngModel", "nzDropdownMatchSelectWidth", "ngModelChange"], ["nzCustomContent", "", 3, "nzValue", "nzLabel", 4, "ngFor", "ngForOf"], ["nzPlaceHolder", "Font Size", 1, "ml-1", 2, "width", "110px", 3, "ngModel", "ngModelChange"], [3, "nzValue", "nzLabel", 4, "ngFor", "ngForOf"], [1, "p-divider"], [1, "i-tool-font-btn", "d-flex", "mr-2"], [1, "position-relative", "fa-icon", 3, "click"], ["icon", "bold"], ["icon", "italic"], ["icon", "underline"], [1, "i-tool-font-btn", "d-flex"], ["icon", "strikethrough"], [1, "i-tool-font-color", "d-flex"], [1, "position-relative", "i-left", "flex-fill", 3, "click"], ["icon", "palette"], [1, "i-color"], ["nzPlacement", "bottom", "nz-popover", "", "nzTrigger", "click", 1, "i-dropdown-menu", 3, "nzVisible", "nzContent", "nzVisibleChange"], ["nz-icon", "", "type", "down", "theme", "outline"], [2, "background", "#fff", "display", "block"], [1, "position-relative"], [3, "audioUrl", "audioUploaded"], [1, "width-100", "d-flex"], ["id", "titleContentEgret", "frameborder", "0", 2, "overflow", "hidden", "width", "100%", "height", "48px", "margin", "0", "padding", "0"], ["titleEl", ""], ["colorPane", ""], ["nzCustomContent", "", 3, "nzValue", "nzLabel"], [3, "ngStyle"], [3, "nzValue", "nzLabel"], ["nz-row", "", "nzGutter", "16", "nzType", "flex", 1, "p-color-pane"], ["nz-col", "", "class", "p-color-item", 3, "background-color", "click", 4, "ngFor", "ngForOf"], ["nz-col", "", 1, "p-color-item", 3, "click"]], template: function LessonTitleConfigComponent_Template(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 0);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "div", 1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "div", 2);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "div", 3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "div", 4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](5, "nz-select", 5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function LessonTitleConfigComponent_Template_nz_select_ngModelChange_5_listener($event) { return ctx.__fontFamily = $event; })("ngModelChange", function LessonTitleConfigComponent_Template_nz_select_ngModelChange_5_listener($event) { return ctx.onChangeFontFamily($event); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](6, LessonTitleConfigComponent_nz_option_6_Template, 3, 6, "nz-option", 6);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](7, "nz-select", 7);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function LessonTitleConfigComponent_Template_nz_select_ngModelChange_7_listener($event) { return ctx.__fontSize = $event; })("ngModelChange", function LessonTitleConfigComponent_Template_nz_select_ngModelChange_7_listener() { return ctx.onChangeFontSize(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](8, LessonTitleConfigComponent_nz_option_8_Template, 1, 2, "nz-option", 8);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](9, "div", 9);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "div", 10);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](11, "div", 11);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function LessonTitleConfigComponent_Template_div_click_11_listener() { return ctx.onChangeBold(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](12, "fa-icon", 12);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](13, "div", 10);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](14, "div", 11);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function LessonTitleConfigComponent_Template_div_click_14_listener() { return ctx.onChangeItalic(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](15, "fa-icon", 13);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](16, "div", 10);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](17, "div", 11);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function LessonTitleConfigComponent_Template_div_click_17_listener() { return ctx.onChangeUnderline(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](18, "fa-icon", 14);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](19, "div", 15);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](20, "div", 11);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function LessonTitleConfigComponent_Template_div_click_20_listener() { return ctx.onChangeStrikethrough(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](21, "fa-icon", 16);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](22, "div", 9);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](23, "div", 17);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](24, "div", 18);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function LessonTitleConfigComponent_Template_div_click_24_listener($event) { return ctx.onChangeFontColor($event); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](25, "fa-icon", 19);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](26, "div", 20);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](27, "div", 21);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzVisibleChange", function LessonTitleConfigComponent_Template_div_nzVisibleChange_27_listener($event) { return ctx.isShowFontColorPane = $event; });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](28, "i", 22);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](29, "div", 9);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](30, "div", 23);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](31, "div", 24);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](32, "app-audio-recorder", 25);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("audioUploaded", function LessonTitleConfigComponent_Template_app_audio_recorder_audioUploaded_32_listener($event) { return ctx.titleAudioUploaded($event); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](33, "div", 26);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](34, "iframe", 27, 28);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](36, LessonTitleConfigComponent_ng_template_36_Template, 2, 1, "ng-template", null, 29, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplateRefExtractor"]);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
            }
            if (rf & 2) {
                const _r378 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵreference"](37);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.__fontFamily)("nzDropdownMatchSelectWidth", false);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx.fontFamilyList);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.__fontSize);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx.fontSizeRange);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](18);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstyleProp"]("background-color", ctx.__fontColor);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzVisible", ctx.isShowFontColorPane)("nzContent", _r378);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("audioUrl", ctx.titleObj && ctx.titleObj.audio_url);
            }
        }, directives: [ng_zorro_antd_select__WEBPACK_IMPORTED_MODULE_1__["NzSelectComponent"], _angular_forms__WEBPACK_IMPORTED_MODULE_2__["NgControlStatus"], _angular_forms__WEBPACK_IMPORTED_MODULE_2__["NgModel"], _angular_common__WEBPACK_IMPORTED_MODULE_3__["NgForOf"], _fortawesome_angular_fontawesome__WEBPACK_IMPORTED_MODULE_4__["FaIconComponent"], ng_zorro_antd_popover__WEBPACK_IMPORTED_MODULE_5__["NzPopoverDirective"], ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_6__["NzIconDirective"], _audio_recorder_audio_recorder_component__WEBPACK_IMPORTED_MODULE_7__["AudioRecorderComponent"], ng_zorro_antd_select__WEBPACK_IMPORTED_MODULE_1__["NzOptionComponent"], _angular_common__WEBPACK_IMPORTED_MODULE_3__["NgStyle"], ng_zorro_antd_grid__WEBPACK_IMPORTED_MODULE_8__["NzRowDirective"], ng_zorro_antd_grid__WEBPACK_IMPORTED_MODULE_8__["NzColDirective"]], styles: [".title-config[_ngcontent-%COMP%]   .letter-wrap[_ngcontent-%COMP%] {\n  width: 3rem;\n  flex: 0 0 3rem;\n}\n.title-config[_ngcontent-%COMP%]   .str-wrap[_ngcontent-%COMP%] {\n  margin-left: 1rem;\n  flex: 1 1;\n}\n.title-config[_ngcontent-%COMP%]   .type-row[_ngcontent-%COMP%] {\n  margin: 0;\n  padding-top: 1rem;\n}\n@font-face {\n  font-family: 'BRLNSDB';\n  src: url('BRLNSDB.TTF');\n}\n@font-face {\n  font-family: 'BRLNSB';\n  src: url('BRLNSB.TTF');\n}\n@font-face {\n  font-family: 'BRLNSR';\n  src: url('BRLNSR.TTF');\n}\n@font-face {\n  font-family: 'GOTHIC';\n  src: url('GOTHIC.TTF');\n}\n@font-face {\n  font-family: 'GOTHICB';\n  src: url('GOTHICB.TTF');\n}\n@font-face {\n  font-family: 'GOTHICBI';\n  src: url('GOTHICBI.TTF');\n}\n@font-face {\n  font-family: 'GOTHICI';\n  src: url('GOTHICI.TTF');\n}\n@font-face {\n  font-family: 'MMTextBook';\n  src: url('MMTextBook.otf');\n}\n@font-face {\n  font-family: 'MMTextBook-Bold';\n  src: url('MMTextBook-Bold.otf');\n}\n@font-face {\n  font-family: 'MMTextBook-BoldItalic';\n  src: url('MMTextBook-BoldItalic.otf');\n}\n@font-face {\n  font-family: 'MMTextBook-Italic';\n  src: url('MMTextBook-Italic.otf');\n}\n.d-flex[_ngcontent-%COMP%] {\n  display: flex;\n}\n.position-relative[_ngcontent-%COMP%] {\n  position: relative;\n}\n.flex-fill[_ngcontent-%COMP%] {\n  flex: 1 1 auto;\n  justify-content: center;\n  display: flex;\n}\n.i-dropdown-menu[_ngcontent-%COMP%] {\n  width: 15px;\n  font-size: 10px;\n  border-left: 1px solid #ddd;\n  display: flex;\n  align-items: center;\n  flex: 0;\n}\n.p-title-box[_ngcontent-%COMP%]   .p-title[_ngcontent-%COMP%] {\n  font-size: 20px;\n}\n.p-title-box[_ngcontent-%COMP%]   input[_ngcontent-%COMP%] {\n  width: 300px;\n  margin-left: 10px;\n}\n.p-content[_ngcontent-%COMP%] {\n  border: 1px solid #ddd;\n  box-shadow: 0 0 8px #eee;\n  margin-top: 10px;\n}\n.p-divider[_ngcontent-%COMP%] {\n  border-left: 1px solid #ccc;\n  margin: 5px 8px;\n  height: 85%;\n}\n.p-tool-box[_ngcontent-%COMP%] {\n  background-color: #efefef;\n  padding: 2px;\n  height: 37px;\n  display: flex;\n  align-items: center;\n  border-bottom: 1px solid #ddd;\n}\n.i-tool-save[_ngcontent-%COMP%] {\n  color: white;\n}\n.i-tool-save[_ngcontent-%COMP%]:disabled {\n  color: #555;\n}\n.i-tool-font-size[_ngcontent-%COMP%] {\n  width: 37px;\n}\n.i-tool-font-size[_ngcontent-%COMP%]:hover {\n  color: black;\n  border-color: #bbb;\n}\n.i-tool-font-color[_ngcontent-%COMP%], .i-tool-font-btn[_ngcontent-%COMP%] {\n  border: 1px solid #ddd;\n  border-radius: 6px;\n  width: 45px;\n  height: 31px;\n  background-color: white;\n  color: #555;\n}\n.i-tool-font-color[_ngcontent-%COMP%]     > span, .i-tool-font-btn[_ngcontent-%COMP%]     > span {\n  display: flex;\n  position: absolute;\n  left: 0;\n  right: 0;\n  top: 0;\n  bottom: 0;\n  padding: 3px 7px;\n}\n.i-tool-font-color[_ngcontent-%COMP%]   .i-left[_ngcontent-%COMP%]   .fa-font[_ngcontent-%COMP%], .i-tool-font-color[_ngcontent-%COMP%]   .i-left[_ngcontent-%COMP%]   .fa-bold[_ngcontent-%COMP%], .i-tool-font-color[_ngcontent-%COMP%]   .i-left[_ngcontent-%COMP%]   .fa-italic[_ngcontent-%COMP%], .i-tool-font-color[_ngcontent-%COMP%]   .i-left[_ngcontent-%COMP%]   .fa-strikethrough[_ngcontent-%COMP%], .i-tool-font-color[_ngcontent-%COMP%]   .i-left[_ngcontent-%COMP%]   .fa-underline[_ngcontent-%COMP%], .i-tool-font-btn[_ngcontent-%COMP%]   .i-left[_ngcontent-%COMP%]   .fa-font[_ngcontent-%COMP%], .i-tool-font-btn[_ngcontent-%COMP%]   .i-left[_ngcontent-%COMP%]   .fa-bold[_ngcontent-%COMP%], .i-tool-font-btn[_ngcontent-%COMP%]   .i-left[_ngcontent-%COMP%]   .fa-italic[_ngcontent-%COMP%], .i-tool-font-btn[_ngcontent-%COMP%]   .i-left[_ngcontent-%COMP%]   .fa-strikethrough[_ngcontent-%COMP%], .i-tool-font-btn[_ngcontent-%COMP%]   .i-left[_ngcontent-%COMP%]   .fa-underline[_ngcontent-%COMP%] {\n  font-size: 10px;\n  position: absolute;\n  color: #555;\n  left: 8px;\n  top: 7px;\n}\n.i-tool-font-color[_ngcontent-%COMP%]   .i-left[_ngcontent-%COMP%]   .i-color[_ngcontent-%COMP%], .i-tool-font-btn[_ngcontent-%COMP%]   .i-left[_ngcontent-%COMP%]   .i-color[_ngcontent-%COMP%] {\n  width: 68%;\n  height: 5px;\n  background-color: black;\n  position: absolute;\n  top: 21px;\n  left: 5px;\n}\n.i-tool-font-color[_ngcontent-%COMP%]   .i-dropdown-menu[_ngcontent-%COMP%], .i-tool-font-btn[_ngcontent-%COMP%]   .i-dropdown-menu[_ngcontent-%COMP%] {\n  width: 15px;\n  font-size: 10px;\n  border-left: 1px solid #ddd;\n  display: flex;\n  align-items: center;\n}\n.i-tool-font-color[_ngcontent-%COMP%]   .i-dropdown-menu[_ngcontent-%COMP%]   .anticon-down[_ngcontent-%COMP%], .i-tool-font-btn[_ngcontent-%COMP%]   .i-dropdown-menu[_ngcontent-%COMP%]   .anticon-down[_ngcontent-%COMP%] {\n  transform: scale(0.6);\n}\n.i-tool-font-btn[_ngcontent-%COMP%] {\n  width: 31px;\n}\n.fa-icon[_ngcontent-%COMP%] {\n  width: 100%;\n  height: 100%;\n  display: flex;\n  justify-content: center;\n  align-items: center;\n  cursor: pointer;\n}\n.i-tool-bg-color[_ngcontent-%COMP%] {\n  border: 1px solid #ddd;\n  display: flex;\n  justify-content: center;\n  align-items: center;\n  height: 100%;\n  outline: none;\n  border-radius: 6px;\n  color: #555;\n  padding: 0 9px;\n}\n.i-tool-bg-color[_ngcontent-%COMP%]     > span {\n  display: flex;\n  align-items: center;\n}\n.i-tool-bg-color[_ngcontent-%COMP%]   .i-color[_ngcontent-%COMP%] {\n  display: block;\n  width: 16px;\n  height: 16px;\n  background-color: white;\n  margin-left: 10px;\n}\n.i-tool-horizontal-center[_ngcontent-%COMP%] {\n  border: 1px solid #ddd;\n  display: flex;\n  justify-content: center;\n  align-items: center;\n  height: 100%;\n  outline: none;\n  border-radius: 6px;\n  color: #555;\n  width: 37px;\n}\n.p-box[_ngcontent-%COMP%] {\n  width: 1280px;\n  height: 720px;\n  left: 0;\n  top: 0;\n  transform-origin: top left;\n  overflow: hidden;\n}\n.p-animation-index-box[_ngcontent-%COMP%]   .i-animation-index[_ngcontent-%COMP%] {\n  position: absolute;\n  font-size: 34px;\n  font-family: Arial;\n  border: 1px solid #ddd;\n  border-radius: 4px;\n  min-width: 50px;\n  min-height: 50px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  background-color: darkorange;\n  color: white;\n}\n.p-edit[_ngcontent-%COMP%] {\n  background-color: white;\n  border: 1px solid black;\n  padding: 2px 15px;\n}\n.p-selected[_ngcontent-%COMP%] {\n  border: 1px solid darkorange;\n  box-shadow: 0 0 8px #ddd;\n}\n.p-tool-item-disable[_ngcontent-%COMP%] {\n  color: rgba(0, 0, 0, 0.25) !important;\n  background-color: transparent !important;\n  pointer-events: none;\n}\n.p-color-pane[_ngcontent-%COMP%] {\n  width: 80px;\n}\n.p-color-pane[_ngcontent-%COMP%]   .p-color-item[_ngcontent-%COMP%] {\n  width: 17px;\n  height: 17px;\n  cursor: pointer;\n  margin: 4px;\n  border: 1px solid #bbb;\n}\n.p-color-pane[_ngcontent-%COMP%]   .p-color-item-active[_ngcontent-%COMP%] {\n  border: 1px solid white;\n  transform: scale(1.1);\n}\n.p-user-guide[_ngcontent-%COMP%] {\n  font-size: 40px;\n  display: flex;\n  justify-content: center;\n  align-items: center;\n}\n.p-animation-box[_ngcontent-%COMP%] {\n  width: 400px;\n  background-color: #efefef;\n  border-left: 1px solid #ddd;\n  padding: 10px;\n  text-align: center;\n}\n.p-animation-box[_ngcontent-%COMP%]   .p-animation-label[_ngcontent-%COMP%] {\n  z-index: 1;\n  position: relative;\n}\n.p-animation-box[_ngcontent-%COMP%]     .ant-radio-button-wrapper {\n  padding: 0 10px;\n}\n.p-animation-box[_ngcontent-%COMP%]   .i-toolbox[_ngcontent-%COMP%]    > div[_ngcontent-%COMP%] {\n  font-size: 20px;\n  cursor: pointer;\n  color: #555;\n  padding: 0 3px;\n  margin: 0 5px;\n}\n.p-animation-box[_ngcontent-%COMP%]   .i-toolbox[_ngcontent-%COMP%]    > div[_ngcontent-%COMP%]:hover {\n  color: #1585ff;\n  transform: scale(1.1);\n}\n.p-animation-box[_ngcontent-%COMP%]   .p-animation-list[_ngcontent-%COMP%] {\n  background-color: white;\n  border-radius: 10px;\n  height: calc(100% - 86px);\n  overflow-y: auto;\n}\n.p-animation-box[_ngcontent-%COMP%]   .p-animation-list[_ngcontent-%COMP%]   .p-animation-item[_ngcontent-%COMP%] {\n  padding: 0 20px;\n  background-color: aliceblue;\n  margin-top: 6px;\n  border-top: 1px solid #ddd;\n  border-bottom: 1px solid #ddd;\n  cursor: pointer;\n  text-align: left;\n  display: flex;\n}\n.p-animation-box[_ngcontent-%COMP%]   .p-animation-list[_ngcontent-%COMP%]   .i-active[_ngcontent-%COMP%] {\n  background-color: antiquewhite;\n}\n/*# sourceMappingURL=data:application/json;base64,  */"] });
    return LessonTitleConfigComponent;
})();



/***/ }),

/***/ "./src/app/common/mult-rect/mult-rect.component.ts":
/*!*********************************************************!*\
  !*** ./src/app/common/mult-rect/mult-rect.component.ts ***!
  \*********************************************************/
/*! exports provided: MultRectComponent */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MultRectComponent", function() { return MultRectComponent; });
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/__ivy_ngcc__/fesm2015/core.js");
/* harmony import */ var ng_zorro_antd__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ng-zorro-antd */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd.js");
/* harmony import */ var ng_zorro_antd_button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ng-zorro-antd/button */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-button.js");
/* harmony import */ var ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ng-zorro-antd/icon */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-icon.js");
/* harmony import */ var ng_zorro_antd_modal__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ng-zorro-antd/modal */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-modal.js");
/* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @angular/common */ "./node_modules/@angular/common/__ivy_ngcc__/fesm2015/common.js");
/* harmony import */ var ng_zorro_antd_radio__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ng-zorro-antd/radio */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-radio.js");
/* harmony import */ var _angular_forms__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @angular/forms */ "./node_modules/@angular/forms/__ivy_ngcc__/fesm2015/forms.js");









function MultRectComponent_div_5_div_6_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 12);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "label", 13);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const colorData_r492 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵpropertyInterpolate"]("nzValue", colorData_r492.color);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate"](colorData_r492.name);
    }
}
function MultRectComponent_div_5_Template(rf, ctx) {
    if (rf & 1) {
        const _r495 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 7);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "div");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "span", 8);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "div");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](5, "nz-radio-group", 9);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function MultRectComponent_div_5_Template_nz_radio_group_ngModelChange_5_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r495); const r_r489 = ctx.$implicit; const ctx_r494 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r494.radioChange($event, r_r489); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](6, MultRectComponent_div_5_div_6_Template, 3, 2, "div", 10);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](7, "div");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "button", 11);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function MultRectComponent_div_5_Template_button_click_8_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r495); const r_r489 = ctx.$implicit; const ctx_r496 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r496.deleteRect(r_r489); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](9, " X ");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const r_r489 = ctx.$implicit;
        const i_r490 = ctx.index;
        const ctx_r488 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate1"](" ", "rect-" + (i_r490 + 1), " ");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", r_r489.color);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx_r488.colorArr);
    }
}
let MultRectComponent = /*@__PURE__*/ (() => {
    class MultRectComponent {
        constructor(appRef, nzMessageService) {
            // this.uploadUrl = (<any> window).courseware.uploadUrl();
            // this.uploadData = (<any> window).courseware.uploadData();
            this.appRef = appRef;
            this.nzMessageService = nzMessageService;
            this.uploading = false;
            this.progress = 0;
            this.btnName = '配置多矩形集合';
            this.animaNames = [];
            this.rectArr = [];
            this.save = new _angular_core__WEBPACK_IMPORTED_MODULE_0__["EventEmitter"]();
            this.refreshEmitter = new _angular_core__WEBPACK_IMPORTED_MODULE_0__["EventEmitter"]();
            this.panelVisible = false;
            this.colorArr = [
                { name: 'red', color: '#ff0000' },
                { name: 'green', color: '#00ff00' },
                { name: 'blue', color: '#0000ff' },
                { name: 'black', color: '#000000' },
            ];
            // window['air'].getUploadCallback = (url, data) => {
            //   this.uploadUrl = url;
            //   this.uploadData = data;
            // };
        }
        ngOnChanges() {
        }
        radioChange(e, item) {
            console.log('e: ', e);
            item.color = e;
        }
        addRect() {
            this.rectArr.push({
                color: this.colorArr[0].color,
                width: 100,
                height: 100,
                x: -1,
                y: -1,
            });
        }
        deleteRect(item) {
            const index = this.rectArr.indexOf(item);
            if (index != -1) {
                this.rectArr.splice(index, 1);
            }
        }
        /**
         * 刷新 渲染页面
         */
        refresh() {
            // this.refreshEmitter.emit();
            setTimeout(() => {
                this.appRef.tick();
            }, 1);
        }
        setRectBtnClick() {
            this.panelVisible = true;
        }
        panelOk() {
            this.save.emit(this.rectArr);
            this.panelVisible = false;
        }
        panelCancel() {
            this.panelVisible = false;
            this.refresh();
        }
        ngOnDestroy() {
        }
    }
    MultRectComponent.ɵfac = function MultRectComponent_Factory(t) { return new (t || MultRectComponent)(_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdirectiveInject"](_angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdirectiveInject"](ng_zorro_antd__WEBPACK_IMPORTED_MODULE_1__["NzMessageService"])); };
    MultRectComponent.ɵcmp = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdefineComponent"]({ type: MultRectComponent, selectors: [["app-mult-rect"]], inputs: { btnName: "btnName", animaNames: "animaNames", rectArr: "rectArr" }, outputs: { save: "save", refreshEmitter: "refreshEmitter" }, features: [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵNgOnChangesFeature"]], decls: 10, vars: 3, consts: [["nz-button", "", 2, "border-radius", "0.5rem", "border", "1px solid #ddd", 3, "click"], ["nz-icon", "", "nzType", "tool", "nzTheme", "outline"], ["nzTitle", "\u914D\u7F6E\u591A\u77E9\u5F62\u96C6\u5408", "nzOkText", "\u4FDD\u5B58", 3, "nzVisible", "nzVisibleChange", "nzAfterClose", "nzOnCancel", "nzOnOk"], ["style", "margin-top:5px; width:100%; height:40px; border-radius: 0.5rem; border: solid 2px #ccc;\n      display: flex; align-items:center; justify-content:space-between", 4, "ngFor", "ngForOf"], ["nz-button", "", "nzType", "dashed", 2, "margin-top", "20px", 3, "click"], ["nz-icon", "", "nzType", "plus-circle", "nzTheme", "outline"], [2, "justify-content", "space-between"], [2, "margin-top", "5px", "width", "100%", "height", "40px", "border-radius", "0.5rem", "border", "solid 2px #ccc", "display", "flex", "align-items", "center", "justify-content", "space-between"], [2, "margin-left", "10px", "font-weight", "600", "font-size", "16px"], [2, "display", "flex", "align-items", "center", "justify-content", "center", "flex-wrap", "wrap", 3, "ngModel", "ngModelChange"], ["style", "display: flex; ", 4, "ngFor", "ngForOf"], ["nz-button", "", "nzType", "danger", 2, "margin-right", "5px", 3, "click"], [2, "display", "flex"], ["nz-radio", "", 3, "nzValue"]], template: function MultRectComponent_Template(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "button", 0);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function MultRectComponent_Template_button_click_1_listener() { return ctx.setRectBtnClick(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](2, "i", 1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "nz-modal", 2);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzVisibleChange", function MultRectComponent_Template_nz_modal_nzVisibleChange_4_listener($event) { return ctx.panelVisible = $event; })("nzAfterClose", function MultRectComponent_Template_nz_modal_nzAfterClose_4_listener() { return ctx.panelCancel(); })("nzOnCancel", function MultRectComponent_Template_nz_modal_nzOnCancel_4_listener() { return ctx.panelCancel(); })("nzOnOk", function MultRectComponent_Template_nz_modal_nzOnOk_4_listener() { return ctx.panelOk(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](5, MultRectComponent_div_5_Template, 10, 3, "div", 3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "button", 4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function MultRectComponent_Template_button_click_6_listener() { return ctx.addRect(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](7, "i", 5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](8, " \u6DFB\u52A0\u77E9\u5F62 ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](9, "div", 6);
            }
            if (rf & 2) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate1"](" ", ctx.btnName, " ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzVisible", ctx.panelVisible);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx.rectArr);
            }
        }, directives: [ng_zorro_antd_button__WEBPACK_IMPORTED_MODULE_2__["NzButtonComponent"], ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_3__["NzIconDirective"], ng_zorro_antd_modal__WEBPACK_IMPORTED_MODULE_4__["NzModalComponent"], _angular_common__WEBPACK_IMPORTED_MODULE_5__["NgForOf"], ng_zorro_antd_radio__WEBPACK_IMPORTED_MODULE_6__["NzRadioGroupComponent"], _angular_forms__WEBPACK_IMPORTED_MODULE_7__["NgControlStatus"], _angular_forms__WEBPACK_IMPORTED_MODULE_7__["NgModel"], ng_zorro_antd_radio__WEBPACK_IMPORTED_MODULE_6__["NzRadioComponent"]], styles: ["\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbW1vbi9tdWx0LXJlY3QvbXVsdC1yZWN0LmNvbXBvbmVudC5zY3NzIn0= */"] });
    return MultRectComponent;
})();



/***/ }),

/***/ "./src/app/common/player-content-wrapper/player-content-wrapper.component.ts":
/*!***********************************************************************************!*\
  !*** ./src/app/common/player-content-wrapper/player-content-wrapper.component.ts ***!
  \***********************************************************************************/
/*! exports provided: PlayerContentWrapperComponent */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PlayerContentWrapperComponent", function() { return PlayerContentWrapperComponent; });
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/__ivy_ngcc__/fesm2015/core.js");


const _c0 = ["wrapperEl"];
const _c1 = ["*"];
let PlayerContentWrapperComponent = /*@__PURE__*/ (() => {
    class PlayerContentWrapperComponent {
        constructor() {
            if (window.innerHeight < window.innerWidth) {
                this._h = '100%';
                this._w = 'auto';
            }
            else {
                this._w = '100%';
                this._h = 'auto';
            }
        }
        ngOnInit() {
            if (!this.ratio) {
                this.ratio = '20-9';
            }
        }
        ngOnChanges() {
        }
        ngOnDestroy() {
        }
        ngAfterViewInit() {
        }
    }
    PlayerContentWrapperComponent.ɵfac = function PlayerContentWrapperComponent_Factory(t) { return new (t || PlayerContentWrapperComponent)(); };
    PlayerContentWrapperComponent.ɵcmp = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdefineComponent"]({ type: PlayerContentWrapperComponent, selectors: [["app-player-content-wrapper"]], viewQuery: function PlayerContentWrapperComponent_Query(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstaticViewQuery"](_c0, true);
            }
            if (rf & 2) {
                var _t;
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵqueryRefresh"](_t = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵloadQuery"]()) && (ctx.wrapperEl = _t.first);
            }
        }, inputs: { ratio: "ratio" }, features: [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵNgOnChangesFeature"]], ngContentSelectors: _c1, decls: 6, vars: 1, consts: [[1, "cmp-player-content-wrapper"], ["wrapperEl", ""], [1, "cmp-cnt-box"], ["alt", "", 3, "src"], [1, "cmp-cnt-main"]], template: function PlayerContentWrapperComponent_Template(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵprojectionDef"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 0, 1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "div", 2);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](3, "img", 3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "div", 4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵprojection"](5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
            }
            if (rf & 2) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("src", "assets/" + ctx.ratio + ".png", _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵsanitizeUrl"]);
            }
        }, styles: [".cmp-player-content-wrapper[_ngcontent-%COMP%] {\n  max-height: 100%;\n  display: block;\n  position: relative;\n  height: 100%;\n}\n.cmp-player-content-wrapper[_ngcontent-%COMP%]   .cmp-cnt-box[_ngcontent-%COMP%] {\n  display: inline-block;\n  max-width: 100%;\n  max-height: 100%;\n  width: auto;\n  height: 100%;\n  position: relative;\n}\n.cmp-player-content-wrapper[_ngcontent-%COMP%]   .cmp-cnt-box[_ngcontent-%COMP%]   img[_ngcontent-%COMP%] {\n  height: 100%;\n  width: auto;\n}\n.cmp-player-content-wrapper[_ngcontent-%COMP%]   .cmp-cnt-main[_ngcontent-%COMP%] {\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  display: flex;\n  flex-direction: column;\n}\n[style*=\"--aspect-ratio\"][_ngcontent-%COMP%]    > [_ngcontent-%COMP%]:first-child {\n  width: 100%;\n}\n[style*=\"--aspect-ratio\"][_ngcontent-%COMP%]    > img[_ngcontent-%COMP%] {\n  height: auto;\n}\n@supports (--custom: property) {\n  [style*=\"--aspect-ratio\"][_ngcontent-%COMP%] {\n    position: relative;\n  }\n  [style*=\"--aspect-ratio\"][_ngcontent-%COMP%]::before {\n    content: \"\";\n    display: block;\n    padding-bottom: calc(100% / (var(--aspect-ratio)));\n  }\n  [style*=\"--aspect-ratio\"][_ngcontent-%COMP%]    > [_ngcontent-%COMP%]:first-child {\n    position: absolute;\n    top: 0;\n    left: 0;\n    height: 100%;\n  }\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc3R5bGUvY29tbW9uX21peGluLmNzcyIsIi9Vc2Vycy9saXdlaS9Eb2N1bWVudHMvR2l0SHViL0NvdXJzZXdhcmUvREdfRkFGL2Zvcm1fYW5ndWxhci9zcmMvYXBwL2NvbW1vbi9wbGF5ZXItY29udGVudC13cmFwcGVyL3BsYXllci1jb250ZW50LXdyYXBwZXIuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbW1vbi9wbGF5ZXItY29udGVudC13cmFwcGVyL3BsYXllci1jb250ZW50LXdyYXBwZXIuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0NBRUM7QUNBRDtFQUNFLGdCQUFnQjtFQUNoQixjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLFlBQVk7QUNBZDtBREpBO0VBTUkscUJBQXFCO0VBQ3JCLGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLFlBQVk7RUFDWixrQkFBa0I7QUNFdEI7QURiQTtFQWFNLFlBQVk7RUFDWixXQUFXO0FDSWpCO0FEbEJBO0VBbUJJLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sUUFBUTtFQUNSLFNBQVM7RUFDVCxPQUFPO0VBQ1AsYUFBYTtFQUNiLHNCQUFzQjtBQ0cxQjtBQUVBO0VEQ0UsV0FBVztBQ0NiO0FBRUE7RURBRSxZQUFZO0FDRWQ7QURBNkI7RUNHM0I7SURERSxrQkFBa0I7RUNHcEI7RUFDQTtJRERFLFdBQVc7SUFDWCxjQUFjO0lBQ2Qsa0RBQWtEO0VDR3BEO0VBQ0E7SURERSxrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLE9BQU87SUFDUCxZQUFZO0VDR2Q7QUFDRiIsImZpbGUiOiJzcmMvYXBwL2NvbW1vbi9wbGF5ZXItY29udGVudC13cmFwcGVyL3BsYXllci1jb250ZW50LXdyYXBwZXIuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuZ2xvYmFsIGNzcyB0byBtaXhpblxuKi9cblxuXG5cbiIsIkBpbXBvcnQgJy4uLy4uL3N0eWxlL2NvbW1vbl9taXhpbi5jc3MnO1xuXG4uY21wLXBsYXllci1jb250ZW50LXdyYXBwZXJ7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTtcbiAgLmNtcC1jbnQtYm94e1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGltZ3tcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICB9XG4gIC5jbXAtY250LW1haW57XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cblxuXG5bc3R5bGUqPVwiLS1hc3BlY3QtcmF0aW9cIl0gPiA6Zmlyc3QtY2hpbGQge1xuICB3aWR0aDogMTAwJTtcbn1cbltzdHlsZSo9XCItLWFzcGVjdC1yYXRpb1wiXSA+IGltZyB7XG4gIGhlaWdodDogYXV0bztcbn1cbkBzdXBwb3J0cyAoLS1jdXN0b206cHJvcGVydHkpIHtcbiAgW3N0eWxlKj1cIi0tYXNwZWN0LXJhdGlvXCJdIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgW3N0eWxlKj1cIi0tYXNwZWN0LXJhdGlvXCJdOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGMoMTAwJSAvICh2YXIoLS1hc3BlY3QtcmF0aW8pKSk7XG4gIH1cbiAgW3N0eWxlKj1cIi0tYXNwZWN0LXJhdGlvXCJdID4gOmZpcnN0LWNoaWxkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG4iLCJAaW1wb3J0IHVybCguLi8uLi9zdHlsZS9jb21tb25fbWl4aW4uY3NzKTtcbi5jbXAtcGxheWVyLWNvbnRlbnQtd3JhcHBlciB7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmNtcC1wbGF5ZXItY29udGVudC13cmFwcGVyIC5jbXAtY250LWJveCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jbXAtcGxheWVyLWNvbnRlbnQtd3JhcHBlciAuY21wLWNudC1ib3ggaW1nIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogYXV0bztcbn1cblxuLmNtcC1wbGF5ZXItY29udGVudC13cmFwcGVyIC5jbXAtY250LW1haW4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuW3N0eWxlKj1cIi0tYXNwZWN0LXJhdGlvXCJdID4gOmZpcnN0LWNoaWxkIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbltzdHlsZSo9XCItLWFzcGVjdC1yYXRpb1wiXSA+IGltZyB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuQHN1cHBvcnRzICgtLWN1c3RvbTogcHJvcGVydHkpIHtcbiAgW3N0eWxlKj1cIi0tYXNwZWN0LXJhdGlvXCJdIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgW3N0eWxlKj1cIi0tYXNwZWN0LXJhdGlvXCJdOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGMoMTAwJSAvICh2YXIoLS1hc3BlY3QtcmF0aW8pKSk7XG4gIH1cbiAgW3N0eWxlKj1cIi0tYXNwZWN0LXJhdGlvXCJdID4gOmZpcnN0LWNoaWxkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG4iXX0= */"] });
    return PlayerContentWrapperComponent;
})();



/***/ }),

/***/ "./src/app/common/sub-template/sub-template.component.ts":
/*!***************************************************************!*\
  !*** ./src/app/common/sub-template/sub-template.component.ts ***!
  \***************************************************************/
/*! exports provided: SubTemplateComponent */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SubTemplateComponent", function() { return SubTemplateComponent; });
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/__ivy_ngcc__/fesm2015/core.js");
/* harmony import */ var ng_zorro_antd__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ng-zorro-antd */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd.js");
/* harmony import */ var _angular_platform_browser__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @angular/platform-browser */ "./node_modules/@angular/platform-browser/__ivy_ngcc__/fesm2015/platform-browser.js");
/* harmony import */ var ng_zorro_antd_button__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ng-zorro-antd/button */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-button.js");
/* harmony import */ var ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ng-zorro-antd/icon */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-icon.js");
/* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @angular/common */ "./node_modules/@angular/common/__ivy_ngcc__/fesm2015/common.js");
/* harmony import */ var ng_zorro_antd_modal__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ng-zorro-antd/modal */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-modal.js");









const _c0 = ["iframe"];
function SubTemplateComponent_h2_5_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementStart"](0, "h2", 12);
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵtext"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r477 = _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵtextInterpolate1"](" ", ctx_r477._item.template.description, " ");
    }
}
function SubTemplateComponent_div_13_Template(rf, ctx) {
    if (rf & 1) {
        const _r482 = _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementStart"](0, "div");
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementStart"](1, "div", 13);
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵlistener"]("click", function SubTemplateComponent_div_13_Template_div_click_1_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵrestoreView"](_r482); const template_r480 = ctx.$implicit; const ctx_r481 = _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵnextContext"](); return ctx_r481.templateClick(template_r480); });
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementStart"](2, "div", 14);
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelement"](3, "img", 15);
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementStart"](4, "div", 16);
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementStart"](5, "label", 17);
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵtext"](6);
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const template_r480 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵadvance"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵproperty"]("src", template_r480.cover, _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵsanitizeUrl"]);
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵadvance"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵtextInterpolate"](template_r480.description);
    }
}
let SubTemplateComponent = /*@__PURE__*/ (() => {
    class SubTemplateComponent {
        constructor(el, appRef, nzMessageService, sanitizer) {
            this.el = el;
            this.appRef = appRef;
            this.nzMessageService = nzMessageService;
            this.sanitizer = sanitizer;
            this.uploading = false;
            this.progress = 0;
            this.save = new _angular_core__WEBPACK_IMPORTED_MODULE_1__["EventEmitter"]();
            this.deleteFunc = new _angular_core__WEBPACK_IMPORTED_MODULE_1__["EventEmitter"]();
            this.refreshEmitter = new _angular_core__WEBPACK_IMPORTED_MODULE_1__["EventEmitter"]();
            this.key = '';
            this.isShowTemplate = false;
            this.isInit = false;
            this.templateArr = [];
            console.log(' in constructor 1111:', window['air']);
            this.uploadUrl = window.courseware.uploadUrl();
            this.uploadData = window.courseware.uploadData();
            window['air'].getUploadCallback = (url, data) => {
                this.uploadUrl = url;
                this.uploadData = data;
            };
            this.setUploadUrl();
        }
        set item(v) {
            console.log('set item: ', v);
            if (this.uploadUrl) {
                this._item = v;
                console.log(' __  refreshSafeUrl 3');
                this.refreshSafeUrl();
            }
            this._data = v;
        }
        get item() {
            return this._data;
        }
        setUploadUrl() {
            if (!this.uploadUrl) {
                setTimeout(() => {
                    this.setUploadUrl();
                }, 500);
            }
            else {
                if (this._data) {
                    this._item = this._data;
                    this.refreshSafeUrl();
                }
            }
        }
        refreshSafeUrl(formUrl = null) {
            if (!formUrl) {
                formUrl = this._item.formUrl || '';
            }
            this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl(formUrl);
        }
        ngOnChanges() {
        }
        ngOnInit() {
            console.log(' in ngOnInit ');
            if (!this._item) {
                this._item = {};
            }
            this.initListener();
        }
        selectSubTemplate() {
            return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(this, void 0, void 0, function* () {
                if (this.templateArr.length == 0) {
                    yield this.getAllTemplateData().then((data) => {
                        this.templateArr = data;
                    });
                }
                this.isShowTemplate = true;
            });
        }
        deleteSubTemplate() {
            console.log('in deleteFunc');
            this.refreshSafeUrl('');
            this.deleteFunc.emit({});
        }
        templateClick(template) {
            console.log("template: ", template);
            this._item = {};
            const { name, last_version, form_url } = template;
            const formUrl = `http://staging-teach.cdn.ireadabc.com/h5template/${name}/v${last_version}/${form_url}&key=${this.key}`;
            this._item.formUrl = formUrl;
            this._item.template = template;
            console.log('formUrl: ', formUrl);
            this.refreshSafeUrl();
            this.closePanel();
            this.sendData();
            console.log('this.safeUrl 2 : ', this.safeUrl);
            // const key = this.getQueryVariable(formUrl, 'key');
            // console.log("key: ", key);
            // console.log("url: ",  this._item['safeUrl']);
        }
        sendData() {
            this.save.emit(this._item);
        }
        getQueryVariable(url, variable) {
            var query = url.substring(1);
            var vars = query.split("&");
            for (var i = 0; i < vars.length; i++) {
                var pair = vars[i].split("=");
                if (pair[0] == variable) {
                    return pair[1];
                }
            }
            return (false);
        }
        saveSubTemplate() {
        }
        initListener() {
            var _a, _b;
            const msgFunc = (e) => {
                if (!this.iframe || !this.iframe.nativeElement || !this.iframe.nativeElement.contentWindow) {
                    console.log('this.iframe not exist');
                    window.removeEventListener('message', msgFunc);
                    return;
                }
                let msgData = e.data;
                if (msgData.action === "getData") {
                    console.log("getData e: ", e);
                    if (this.iframe) {
                        console.log('ifram exist: ', this.iframe);
                    }
                    if (!msgData.urlParams) {
                        console.log(' !msgData.urlParams: ', msgData);
                        return;
                    }
                    const key = this.getQueryVariable(msgData.urlParams, 'key');
                    if (key != this.key) {
                        console.log(' key != this.key ');
                        return;
                    }
                    const data = { msg: 'success', data: JSON.stringify(this._item.data) };
                    //  iframeContent.postMessage( { action: 'getData', data: JSON.stringify(data) }, '*');
                    this.iframe.nativeElement.contentWindow.postMessage({ action: 'getData', data: JSON.stringify(data) }, '*');
                }
                if (msgData.action === "setData") {
                    if (!msgData.urlParams) {
                        console.log(' !msgData.urlParams: ', msgData);
                        return;
                    }
                    const key = this.getQueryVariable(msgData.urlParams, 'key');
                    if (key != this.key) {
                        console.log(' key != this.key ');
                        return;
                    }
                    console.log("setData e: ", e);
                    if (typeof (msgData.data) === "string") {
                        console.log('msgData is string');
                        msgData.data = JSON.parse(msgData.data);
                        console.log('msgData.data: ', msgData.data);
                    }
                    this._item.data = msgData.data;
                    this.sendData();
                }
                if (msgData.action === "getUpload") {
                    console.log(' in getUpload');
                    // const iframeContent = this.el.nativeElement.querySelector('#iframe').contentWindow;
                    this.iframe.nativeElement.contentWindow.postMessage({
                        action: 'getUpload',
                        uploadUrl: this.uploadUrl,
                        uploadData: this.uploadData
                    }, '*');
                }
            };
            if ((_b = (_a = this.iframe) === null || _a === void 0 ? void 0 : _a.nativeElement) === null || _b === void 0 ? void 0 : _b.contentWindow) {
                console.log(' init Listener !');
                window.addEventListener('message', msgFunc);
            }
        }
        getAllTemplateData() {
            return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(this, void 0, void 0, function* () {
                return new Promise((resolve, reject) => {
                    const c = window['courseware'];
                    try {
                        if (c && c.getTemplates) {
                            c.getTemplates((data) => {
                                // data =
                                // [
                                //   {"id": 26, "uuid":"c94fb1b0-3395-42ca-9ae3-03ca7c242d3f", "name": "hw_001", "description": "音频课件", "cover": "http://iplayabc-teach-yun.oss-cn-beijing.aliyuncs.com/3feddb01-4350-42ad-909f-236ad052fbb2.jpg", "type": 1, "t_type": 2, "form_url": "index.html?type=form", "play_url": "index.html", "last_version": 16},
                                //   {"id": 27, "uuid":"b8bedc68-9ef6-42a6-ba99-513daa244a6d", "name": "hw_002", "description": "视频课件", "cover": "http://iplayabc-teach-yun.oss-cn-beijing.aliyuncs.com/1b11d370-9d8b-4358-98d3-4757f825d2a4.jpg", "type": 1, "t_type": 2, "form_url": "index.html?type=form", "play_url": "index.html", "last_version": 16},
                                //   {"id": 28, "uuid":"068fcffb-4e99-4148-bc8e-2a89ee9bfe7c", "name": "hw_003", "description": "转盘课件", "cover": "http://iplayabc-teach-yun.oss-cn-beijing.aliyuncs.com/de3d8498-7523-4601-934e-932ac219a408.jpg", "type": 1, "t_type": 2, "form_url": "index.html?type=form", "play_url": "index.html", "last_version": 17},
                                //   {"id": 29, "uuid":"b2bfd8df-e0e4-41c9-b65f-12160628e1a3", "name": "hw_004", "description": "连线课件", "cover": "http://iplayabc-teach-yun.oss-cn-beijing.aliyuncs.com/824989ac-78fb-4db7-848a-790cba00effe.jpg", "type": 1, "t_type": 2, "form_url": "index.html?type=form", "play_url": "index.html", "last_version": 9 },
                                //   {"id": 30, "uuid":"d7be3c21-fc25-482d-a4a6-1a371970457a", "name": "hw_005", "description": "分类课件", "cover": "http://iplayabc-teach-yun.oss-cn-beijing.aliyuncs.com/aa69d85a-3430-48b2-91bf-a804dee1826d.jpg", "type": 1, "t_type": 2, "form_url": "index.html?type=form", "play_url": "index.html", "last_version": 19},
                                //   {"id": 31, "uuid":"34e98c65-f3f0-46e4-a7b8-5caf72954847", "name": "hw_006", "description": "翻卡游戏", "cover": "http://iplayabc-teach-yun.oss-cn-beijing.aliyuncs.com/fe54031b-7879-4c65-8de7-102fa5e5e9f5.png", "type": 1, "t_type": 2, "form_url": "index.html?type=form", "play_url": "index.html", "last_version": 5 }
                                // ]
                                // resolve(data);
                                // return
                                if (data) {
                                    console.log('data~~~:', data);
                                    resolve(JSON.parse(data));
                                }
                                else {
                                    console.log('data none');
                                    resolve([]);
                                }
                            });
                        }
                    }
                    catch (error) {
                        reject(error);
                    }
                });
                // const data =
                // [
                //   {"id": 26, "uuid":"c94fb1b0-3395-42ca-9ae3-03ca7c242d3f", "name": "hw_001", "description": "音频课件", "cover": "http://iplayabc-teach-yun.oss-cn-beijing.aliyuncs.com/3feddb01-4350-42ad-909f-236ad052fbb2.jpg", "type": 1, "t_type": 2, "form_url": "index.html?type=form", "play_url": "index.html", "last_version": 16},
                //   {"id": 27, "uuid":"b8bedc68-9ef6-42a6-ba99-513daa244a6d", "name": "hw_002", "description": "视频课件", "cover": "http://iplayabc-teach-yun.oss-cn-beijing.aliyuncs.com/1b11d370-9d8b-4358-98d3-4757f825d2a4.jpg", "type": 1, "t_type": 2, "form_url": "index.html?type=form", "play_url": "index.html", "last_version": 16},
                //   {"id": 28, "uuid":"068fcffb-4e99-4148-bc8e-2a89ee9bfe7c", "name": "hw_003", "description": "转盘课件", "cover": "http://iplayabc-teach-yun.oss-cn-beijing.aliyuncs.com/de3d8498-7523-4601-934e-932ac219a408.jpg", "type": 1, "t_type": 2, "form_url": "index.html?type=form", "play_url": "index.html", "last_version": 17},
                //   {"id": 29, "uuid":"b2bfd8df-e0e4-41c9-b65f-12160628e1a3", "name": "hw_004", "description": "连线课件", "cover": "http://iplayabc-teach-yun.oss-cn-beijing.aliyuncs.com/824989ac-78fb-4db7-848a-790cba00effe.jpg", "type": 1, "t_type": 2, "form_url": "index.html?type=form", "play_url": "index.html", "last_version": 9 },
                //   {"id": 30, "uuid":"d7be3c21-fc25-482d-a4a6-1a371970457a", "name": "hw_005", "description": "分类课件", "cover": "http://iplayabc-teach-yun.oss-cn-beijing.aliyuncs.com/aa69d85a-3430-48b2-91bf-a804dee1826d.jpg", "type": 1, "t_type": 2, "form_url": "index.html?type=form", "play_url": "index.html", "last_version": 19},
                //   {"id": 31, "uuid":"34e98c65-f3f0-46e4-a7b8-5caf72954847", "name": "hw_006", "description": "翻卡游戏", "cover": "http://iplayabc-teach-yun.oss-cn-beijing.aliyuncs.com/fe54031b-7879-4c65-8de7-102fa5e5e9f5.png", "type": 1, "t_type": 2, "form_url": "index.html?type=form", "play_url": "index.html", "last_version": 5 }
                // ]
                // return data;
            });
        }
        /**
         * 刷新 渲染页面
         */
        refresh() {
            // this.refreshEmitter.emit();
            setTimeout(() => {
                this.appRef.tick();
            }, 1);
        }
        closePanel() {
            console.log(' in closePanel ');
            // this.refresh();
            this.isShowTemplate = false;
        }
        panelCancelClicked() {
            this.isShowTemplate = false;
        }
        panelOkClicked() {
            this.isShowTemplate = false;
        }
        ngOnDestroy() {
        }
    }
    SubTemplateComponent.ɵfac = function SubTemplateComponent_Factory(t) { return new (t || SubTemplateComponent)(_angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵdirectiveInject"](_angular_core__WEBPACK_IMPORTED_MODULE_1__["ElementRef"]), _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵdirectiveInject"](_angular_core__WEBPACK_IMPORTED_MODULE_1__["ApplicationRef"]), _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵdirectiveInject"](ng_zorro_antd__WEBPACK_IMPORTED_MODULE_2__["NzMessageService"]), _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵdirectiveInject"](_angular_platform_browser__WEBPACK_IMPORTED_MODULE_3__["DomSanitizer"])); };
    SubTemplateComponent.ɵcmp = _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵdefineComponent"]({ type: SubTemplateComponent, selectors: [["app-sub-template"]], viewQuery: function SubTemplateComponent_Query(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵstaticViewQuery"](_c0, true);
            }
            if (rf & 2) {
                var _t;
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵqueryRefresh"](_t = _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵloadQuery"]()) && (ctx.iframe = _t.first);
            }
        }, inputs: { item: "item", key: "key" }, outputs: { save: "save", deleteFunc: "deleteFunc", refreshEmitter: "refreshEmitter" }, features: [_angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵNgOnChangesFeature"]], decls: 14, vars: 5, consts: [[1, "content"], [2, "display", "flex", "margin-bottom", "5px"], ["nz-button", "", "nzType", "dashed", 2, "border-radius", "0.5rem", "border", "1px solid #ddd", 3, "click"], ["nz-icon", "", "nzType", "appstore", "nzTheme", "outline"], ["style", "margin-left: 10px; margin-top: 1px;", 4, "ngIf"], ["nz-button", "", "nzType", "danger", 2, "position", "absolute", "right", "30px", "border-radius", "0.5rem", "border", "1px solid #ddd", 3, "click"], ["nz-icon", "", "nzType", "delete", "nzTheme", "outline"], ["id", "iframe", "frameborder", "0", 2, "width", "98%", "height", "70vh", "border", "1px solid #ccc", "padding", "5px", 3, "src"], ["iframe", ""], ["nzTitle", "\u9009\u62E9\u5B50\u6A21\u677F", "nzWidth", "80%", "nzHeight", "80%", 3, "nzVisible", "nzFooter", "nzVisibleChange", "nzAfterClose", "nzOnCancel"], [1, "template-container"], [4, "ngFor", "ngForOf"], [2, "margin-left", "10px", "margin-top", "1px"], [2, "width", "150px", "height", "100px", "border", "1px solid #ccc", "margin", "5px", "cursor", "pointer", "user-select", "none", 3, "click"], [2, "width", "100%", "height", "70%", "border-bottom", "1px solid #ccc", "overflow", "hidden"], [2, "width", "100%", "height", "auto", 3, "src"], [2, "width", "100%", "height", "30%", "display", "flex", "align-items", "center", "justify-content", "center"], [2, "width", "90%", "text-align", "center", "text-overflow", "ellipsis", "white-space", "nowrap", "overflow", "hidden"]], template: function SubTemplateComponent_Template(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementStart"](0, "div", 0);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementStart"](1, "div", 1);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementStart"](2, "button", 2);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵlistener"]("click", function SubTemplateComponent_Template_button_click_2_listener() { return ctx.selectSubTemplate(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelement"](3, "i", 3);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵtext"](4, " \u9009\u62E9\u5B50\u6A21\u677F\u7C7B\u578B ");
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵtemplate"](5, SubTemplateComponent_h2_5_Template, 2, 1, "h2", 4);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementStart"](6, "button", 5);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵlistener"]("click", function SubTemplateComponent_Template_button_click_6_listener() { return ctx.deleteSubTemplate(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelement"](7, "i", 6);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵtext"](8, " \u5220\u9664 ");
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelement"](9, "iframe", 7, 8);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementStart"](11, "nz-modal", 9);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵlistener"]("nzVisibleChange", function SubTemplateComponent_Template_nz_modal_nzVisibleChange_11_listener($event) { return ctx.isShowTemplate = $event; })("nzAfterClose", function SubTemplateComponent_Template_nz_modal_nzAfterClose_11_listener() { return ctx.closePanel(); })("nzOnCancel", function SubTemplateComponent_Template_nz_modal_nzOnCancel_11_listener() { return ctx.panelCancelClicked(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementStart"](12, "div", 10);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵtemplate"](13, SubTemplateComponent_div_13_Template, 7, 2, "div", 11);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementEnd"]();
            }
            if (rf & 2) {
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵadvance"](5);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵproperty"]("ngIf", ctx._item.template);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵadvance"](4);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵproperty"]("src", ctx.safeUrl, _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵsanitizeResourceUrl"]);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵadvance"](2);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵproperty"]("nzVisible", ctx.isShowTemplate)("nzFooter", null);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵadvance"](2);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵproperty"]("ngForOf", ctx.templateArr);
            }
        }, directives: [ng_zorro_antd_button__WEBPACK_IMPORTED_MODULE_4__["NzButtonComponent"], ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_5__["NzIconDirective"], _angular_common__WEBPACK_IMPORTED_MODULE_6__["NgIf"], ng_zorro_antd_modal__WEBPACK_IMPORTED_MODULE_7__["NzModalComponent"], _angular_common__WEBPACK_IMPORTED_MODULE_6__["NgForOf"]], styles: [".content[_ngcontent-%COMP%] {\n  height: 100%;\n  border: 2px solid #ccc;\n  padding: 10px;\n  border-radius: 5px;\n}\n.template-container[_ngcontent-%COMP%] {\n  width: 100%;\n  display: flex;\n  flex-wrap: wrap;\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc3R5bGUvY29tbW9uX21peGluLmNzcyIsIi9Vc2Vycy9saXdlaS9Eb2N1bWVudHMvR2l0SHViL0NvdXJzZXdhcmUvREdfRkFGL2Zvcm1fYW5ndWxhci9zcmMvYXBwL2NvbW1vbi9zdWItdGVtcGxhdGUvc3ViLXRlbXBsYXRlLmNvbXBvbmVudC5zY3NzIiwic3JjL2FwcC9jb21tb24vc3ViLXRlbXBsYXRlL3N1Yi10ZW1wbGF0ZS5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Q0FFQztBQ0FEO0VBRUUsWUFBWTtFQUNaLHNCQUFzQjtFQUN0QixhQUFhO0VBQ2Isa0JBQWtCO0FDRHBCO0FESUE7RUFDRSxXQUFXO0VBQ1gsYUFBYTtFQUdiLGVBQWU7QUNIakIiLCJmaWxlIjoic3JjL2FwcC9jb21tb24vc3ViLXRlbXBsYXRlL3N1Yi10ZW1wbGF0ZS5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG5nbG9iYWwgY3NzIHRvIG1peGluXG4qL1xuXG5cblxuIiwiQGltcG9ydCAnLi4vLi4vc3R5bGUvY29tbW9uX21peGluLmNzcyc7XG5cbi5jb250ZW50IHtcbiAgLy8gd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyOiAycHggc29saWQgI2NjYztcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xufVxuXG4udGVtcGxhdGUtY29udGFpbmVye1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgLy8gYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLy8ganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIGZsZXgtd3JhcDogd3JhcDtcblxufSIsIkBpbXBvcnQgdXJsKC4uLy4uL3N0eWxlL2NvbW1vbl9taXhpbi5jc3MpO1xuLmNvbnRlbnQge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNjY2M7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbn1cblxuLnRlbXBsYXRlLWNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4iXX0= */"] });
    return SubTemplateComponent;
})();



/***/ }),

/***/ "./src/app/common/upload-dragon-bone/upload-dragon-bone.component.ts":
/*!***************************************************************************!*\
  !*** ./src/app/common/upload-dragon-bone/upload-dragon-bone.component.ts ***!
  \***************************************************************************/
/*! exports provided: UploadDragonBoneComponent */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "UploadDragonBoneComponent", function() { return UploadDragonBoneComponent; });
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/__ivy_ngcc__/fesm2015/core.js");
/* harmony import */ var ng_zorro_antd__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ng-zorro-antd */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd.js");
/* harmony import */ var ng_zorro_antd_button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ng-zorro-antd/button */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-button.js");
/* harmony import */ var ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ng-zorro-antd/icon */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-icon.js");
/* harmony import */ var ng_zorro_antd_modal__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ng-zorro-antd/modal */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-modal.js");
/* harmony import */ var ng_zorro_antd_upload__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ng-zorro-antd/upload */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-upload.js");
/* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @angular/common */ "./node_modules/@angular/common/__ivy_ngcc__/fesm2015/common.js");








function UploadDragonBoneComponent_i_13_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "i", 13);
    }
    if (rf & 2) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzType", "loading");
    }
}
function UploadDragonBoneComponent_span_14_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "span", 14);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "u");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r471 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate1"](" ", ctx_r471.skeJsonData["name"], " ");
    }
}
function UploadDragonBoneComponent_i_23_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "i", 13);
    }
    if (rf & 2) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzType", "loading");
    }
}
function UploadDragonBoneComponent_span_24_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "span", 14);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "u");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r473 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate1"](" ", ctx_r473.texJsonData["name"], " ");
    }
}
function UploadDragonBoneComponent_i_33_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "i", 13);
    }
    if (rf & 2) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzType", "loading");
    }
}
function UploadDragonBoneComponent_span_34_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "span", 14);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "u");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r475 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate1"](" ", ctx_r475.texPngData["name"], " ");
    }
}
function UploadDragonBoneComponent_div_35_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 4);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r476 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate1"](" \u63D0\u793A\uFF1A\u9700\u5305\u542B\u52A8\u753B: ", ctx_r476.animaNames.toString(), ". ");
    }
}
let UploadDragonBoneComponent = /*@__PURE__*/ (() => {
    class UploadDragonBoneComponent {
        constructor(appRef, nzMessageService) {
            this.appRef = appRef;
            this.nzMessageService = nzMessageService;
            this.uploading = false;
            this.progress = 0;
            this.btnName = '配置龙骨动画';
            this.animaNames = [];
            this.skeJsonData = {};
            this.texJsonData = {};
            this.texPngData = {};
            this.save = new _angular_core__WEBPACK_IMPORTED_MODULE_0__["EventEmitter"]();
            this.refreshEmitter = new _angular_core__WEBPACK_IMPORTED_MODULE_0__["EventEmitter"]();
            this.animaPanelVisible = false;
            this.isSkeJsonLoading = false;
            this.isTexJsonLoading = false;
            this.isTexPngLoading = false;
            this.uploadUrl = window.courseware.uploadUrl();
            this.uploadData = window.courseware.uploadData();
            window['air'].getUploadCallback = (url, data) => {
                this.uploadUrl = url;
                this.uploadData = data;
            };
        }
        ngOnChanges() {
        }
        setAnimaBtnClick() {
            this.animaPanelVisible = true;
            this.refresh();
        }
        animaPanelCancel() {
            this.animaPanelVisible = false;
            this.refresh();
        }
        animaPanelOk() {
            this.sendItemDragonBoneData();
            this.animaPanelVisible = false;
            this.refresh();
        }
        sendItemDragonBoneData() {
            const data = {};
            data['skeJsonData'] = this.skeJsonData;
            data['texJsonData'] = this.texJsonData;
            data['texPngData'] = this.texPngData;
            this.save.emit(data);
        }
        skeJsonHandleChange(e) {
            console.log('e: ', e);
            switch (e.type) {
                case 'start':
                    this.isSkeJsonLoading = true;
                    break;
                case 'success':
                    this.skeJsonData['url'] = e.file.response.url;
                    this.skeJsonData['name'] = e.file.name;
                    this.nzMessageService.success('上传成功');
                    this.isSkeJsonLoading = false;
                    break;
                case 'progress':
                    break;
            }
        }
        texJsonHandleChange(e) {
            console.log('e: ', e);
            switch (e.type) {
                case 'start':
                    this.isTexJsonLoading = true;
                    break;
                case 'success':
                    this.texJsonData['url'] = e.file.response.url;
                    this.texJsonData['name'] = e.file.name;
                    this.nzMessageService.success('上传成功');
                    this.isTexJsonLoading = false;
                    break;
                case 'progress':
                    break;
            }
        }
        texPngHandleChange(e) {
            console.log('e: ', e);
            switch (e.type) {
                case 'start':
                    this.isTexPngLoading = true;
                    break;
                case 'success':
                    this.texPngData['url'] = e.file.response.url;
                    this.texPngData['name'] = e.file.name;
                    this.nzMessageService.success('上传成功');
                    this.isTexPngLoading = false;
                    break;
                case 'progress':
                    break;
            }
        }
        /**
         * 刷新 渲染页面
         */
        refresh() {
            // this.refreshEmitter.emit();
            setTimeout(() => {
                this.appRef.tick();
            }, 1);
        }
        closePanel() {
            console.log(' in closePanel ');
            this.refresh();
        }
        ngOnDestroy() {
        }
    }
    UploadDragonBoneComponent.ɵfac = function UploadDragonBoneComponent_Factory(t) { return new (t || UploadDragonBoneComponent)(_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdirectiveInject"](_angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdirectiveInject"](ng_zorro_antd__WEBPACK_IMPORTED_MODULE_1__["NzMessageService"])); };
    UploadDragonBoneComponent.ɵcmp = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdefineComponent"]({ type: UploadDragonBoneComponent, selectors: [["app-upload-dragon-bone"]], inputs: { btnName: "btnName", animaNames: "animaNames", skeJsonData: "skeJsonData", texJsonData: "texJsonData", texPngData: "texPngData" }, outputs: { save: "save", refreshEmitter: "refreshEmitter" }, features: [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵNgOnChangesFeature"]], decls: 36, vars: 18, consts: [[1, "position-relative"], ["nz-button", "", 2, "border-radius", "0.5rem", "border", "1px solid #ddd", 3, "click"], ["nz-icon", "", "nzType", "tool", "nzTheme", "outline"], ["nzTitle", "\u914D\u7F6E\u8D44\u6E90\u6587\u4EF6", "nzOkText", "\u4FDD\u5B58", 3, "nzVisible", "nzVisibleChange", "nzAfterClose", "nzOnCancel", "nzOnOk"], [1, "anima-upload-btn"], [2, "margin-right", "10px"], ["nzAccept", "application/json", 3, "nzShowUploadList", "nzAction", "nzData", "nzChange"], ["nz-button", ""], ["nz-icon", "", "nzType", "upload"], ["style", "margin-left: 10px;", "nz-icon", "", 3, "nzType", 4, "ngIf"], ["style", "margin-left: 10px", 4, "ngIf"], ["nzAccept", "image/*", 3, "nzShowUploadList", "nzAction", "nzData", "nzChange"], ["class", "anima-upload-btn", 4, "ngIf"], ["nz-icon", "", 2, "margin-left", "10px", 3, "nzType"], [2, "margin-left", "10px"]], template: function UploadDragonBoneComponent_Template(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 0);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "button", 1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function UploadDragonBoneComponent_Template_button_click_1_listener() { return ctx.setAnimaBtnClick(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](2, "i", 2);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "nz-modal", 3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzVisibleChange", function UploadDragonBoneComponent_Template_nz_modal_nzVisibleChange_4_listener($event) { return ctx.animaPanelVisible = $event; })("nzAfterClose", function UploadDragonBoneComponent_Template_nz_modal_nzAfterClose_4_listener() { return ctx.closePanel(); })("nzOnCancel", function UploadDragonBoneComponent_Template_nz_modal_nzOnCancel_4_listener() { return ctx.animaPanelCancel(); })("nzOnOk", function UploadDragonBoneComponent_Template_nz_modal_nzOnOk_4_listener() { return ctx.animaPanelOk(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](5, "div", 4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "span", 5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](7, "\u4E0A\u4F20 ske_json \u6587\u4EF6: ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "nz-upload", 6);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzChange", function UploadDragonBoneComponent_Template_nz_upload_nzChange_8_listener($event) { return ctx.skeJsonHandleChange($event); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](9, "button", 7);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](10, "i", 8);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](11, "span");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](12, "Upload");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](13, UploadDragonBoneComponent_i_13_Template, 1, 1, "i", 9);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](14, UploadDragonBoneComponent_span_14_Template, 3, 1, "span", 10);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](15, "div", 4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](16, "span", 5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](17, "\u4E0A\u4F20 tex_json \u6587\u4EF6: ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](18, "nz-upload", 6);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzChange", function UploadDragonBoneComponent_Template_nz_upload_nzChange_18_listener($event) { return ctx.texJsonHandleChange($event); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](19, "button", 7);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](20, "i", 8);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](21, "span");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](22, "Upload");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](23, UploadDragonBoneComponent_i_23_Template, 1, 1, "i", 9);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](24, UploadDragonBoneComponent_span_24_Template, 3, 1, "span", 10);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](25, "div", 4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](26, "span", 5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](27, "\u4E0A\u4F20 tex_png \u6587\u4EF6: ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](28, "nz-upload", 11);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzChange", function UploadDragonBoneComponent_Template_nz_upload_nzChange_28_listener($event) { return ctx.texPngHandleChange($event); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](29, "button", 7);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](30, "i", 8);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](31, "span");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](32, "Upload");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](33, UploadDragonBoneComponent_i_33_Template, 1, 1, "i", 9);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](34, UploadDragonBoneComponent_span_34_Template, 3, 1, "span", 10);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](35, UploadDragonBoneComponent_div_35_Template, 2, 1, "div", 12);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
            }
            if (rf & 2) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate1"](" ", ctx.btnName, " ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzVisible", ctx.animaPanelVisible);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzShowUploadList", false)("nzAction", ctx.uploadUrl)("nzData", ctx.uploadData);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.isSkeJsonLoading);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.skeJsonData && ctx.skeJsonData["name"]);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzShowUploadList", false)("nzAction", ctx.uploadUrl)("nzData", ctx.uploadData);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.isTexJsonLoading);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.texJsonData && ctx.texJsonData["name"]);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzShowUploadList", false)("nzAction", ctx.uploadUrl)("nzData", ctx.uploadData);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.isTexPngLoading);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.texPngData && ctx.texPngData["name"]);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.animaNames && ctx.animaNames.length > 0);
            }
        }, directives: [ng_zorro_antd_button__WEBPACK_IMPORTED_MODULE_2__["NzButtonComponent"], ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_3__["NzIconDirective"], ng_zorro_antd_modal__WEBPACK_IMPORTED_MODULE_4__["NzModalComponent"], ng_zorro_antd_upload__WEBPACK_IMPORTED_MODULE_5__["NzUploadComponent"], _angular_common__WEBPACK_IMPORTED_MODULE_6__["NgIf"]], styles: [".p-image-uploader[_ngcontent-%COMP%] {\n  position: relative;\n  display: block;\n  width: 100%;\n  height: 0;\n  padding-bottom: 56.25%;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%] {\n  position: absolute;\n  left: 0;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  border: 2px dashed #ddd;\n  border-radius: 0.5rem;\n  background-color: #fafafa;\n  text-align: center;\n  color: #aaa;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%]   .p-upload-icon[_ngcontent-%COMP%] {\n  text-align: center;\n  margin: auto;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%]   .p-upload-icon[_ngcontent-%COMP%]   .anticon-upload[_ngcontent-%COMP%] {\n  color: #888;\n  font-size: 5rem;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%]   .p-upload-icon[_ngcontent-%COMP%]   .p-progress-bar[_ngcontent-%COMP%] {\n  position: relative;\n  width: 20rem;\n  height: 1.5rem;\n  border: 1px solid #ccc;\n  border-radius: 1rem;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%]   .p-upload-icon[_ngcontent-%COMP%]   .p-progress-bar[_ngcontent-%COMP%]   .p-progress-bg[_ngcontent-%COMP%] {\n  background-color: #1890ff;\n  border-radius: 1rem;\n  height: 100%;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%]   .p-upload-icon[_ngcontent-%COMP%]   .p-progress-bar[_ngcontent-%COMP%]   .p-progress-value[_ngcontent-%COMP%] {\n  position: absolute;\n  top: 0;\n  left: 0;\n  width: 100%;\n  height: 100%;\n  text-shadow: 0 0 4px #000;\n  color: white;\n  text-align: center;\n  font-size: 0.9rem;\n  line-height: 1.5rem;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%]   .p-preview[_ngcontent-%COMP%] {\n  width: 100%;\n  height: 100%;\n  background-size: contain;\n  background-repeat: no-repeat;\n  background-position: 50% 50%;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .d-flex[_ngcontent-%COMP%] {\n  display: flex;\n}\n.p-btn-delete[_ngcontent-%COMP%] {\n  position: absolute;\n  right: -0.5rem;\n  top: -0.5rem;\n  width: 2rem;\n  height: 2rem;\n  border: 0.2rem solid white;\n  border-radius: 50%;\n  font-size: 1.2rem;\n  background-color: #fb781a;\n  color: white;\n  text-align: center;\n}\n.p-upload-progress-bg[_ngcontent-%COMP%] {\n  position: absolute;\n  width: 100%;\n  height: 100%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n.p-upload-progress-bg[_ngcontent-%COMP%]   .i-text[_ngcontent-%COMP%] {\n  position: absolute;\n  text-align: center;\n  color: white;\n  text-shadow: 0 0 2px rgba(0, 0, 0, 0.85);\n}\n.p-upload-progress-bg[_ngcontent-%COMP%]   .i-bg[_ngcontent-%COMP%] {\n  position: absolute;\n  left: 0;\n  top: 0;\n  height: 100%;\n  background-color: #27b43f;\n  border-radius: 0.5rem;\n}\n.anima-upload-btn[_ngcontent-%COMP%] {\n  padding: 10px;\n}\n[_nghost-%COMP%]     .ant-upload {\n  display: block;\n}\n/*# sourceMappingURL=data:application/json;base64,  */"] });
    return UploadDragonBoneComponent;
})();



/***/ }),

/***/ "./src/app/common/upload-image-with-preview/upload-image-with-preview.component.ts":
/*!*****************************************************************************************!*\
  !*** ./src/app/common/upload-image-with-preview/upload-image-with-preview.component.ts ***!
  \*****************************************************************************************/
/*! exports provided: UploadImageWithPreviewComponent */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "UploadImageWithPreviewComponent", function() { return UploadImageWithPreviewComponent; });
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/__ivy_ngcc__/fesm2015/core.js");
/* harmony import */ var ng_zorro_antd__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ng-zorro-antd */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd.js");
/* harmony import */ var ng_zorro_antd_upload__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ng-zorro-antd/upload */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-upload.js");
/* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @angular/common */ "./node_modules/@angular/common/__ivy_ngcc__/fesm2015/common.js");
/* harmony import */ var ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ng-zorro-antd/icon */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-icon.js");
/* harmony import */ var _fortawesome_angular_fontawesome__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @fortawesome/angular-fontawesome */ "./node_modules/@fortawesome/angular-fontawesome/__ivy_ngcc__/fesm2015/angular-fontawesome.js");
/* harmony import */ var ng_zorro_antd_popconfirm__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ng-zorro-antd/popconfirm */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-popconfirm.js");
/* harmony import */ var _pipes_background_image_pipe__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../pipes/background-image.pipe */ "./src/app/pipes/background-image.pipe.ts");









function UploadImageWithPreviewComponent_div_3_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 7);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](1, "i", 8);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](2, "div", 9);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "span");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](4);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r386 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstyleProp"]("font-size", ctx_r386.iconSize + "em");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate"](ctx_r386.TIP);
    }
}
function UploadImageWithPreviewComponent_div_4_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 10);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](1, "div", 11);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "div", 12);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](3, "fa-icon", 13);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](4, " Uploading... ");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r387 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstyleProp"]("width", ctx_r387.progress + "%");
    }
}
function UploadImageWithPreviewComponent_div_5_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 14);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵpipe"](1, "backgroundImage");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r388 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstyleProp"]("background-image", _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵpipeBind1"](1, 2, ctx_r388.picUrl), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdefaultStyleSanitizer"]);
    }
}
function UploadImageWithPreviewComponent_div_6_Template(rf, ctx) {
    if (rf & 1) {
        const _r391 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 15);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzOnConfirm", function UploadImageWithPreviewComponent_div_6_Template_div_nzOnConfirm_0_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r391); const ctx_r390 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r390.onDelete(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](1, "i", 16);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
}
let UploadImageWithPreviewComponent = /*@__PURE__*/ (() => {
    class UploadImageWithPreviewComponent {
        constructor(nzMessageService) {
            this.nzMessageService = nzMessageService;
            this.uploading = false;
            this.progress = 0;
            this.canDelete = false;
            this.imageUploaded = new _angular_core__WEBPACK_IMPORTED_MODULE_0__["EventEmitter"]();
            this.imageUploadFailure = new _angular_core__WEBPACK_IMPORTED_MODULE_0__["EventEmitter"]();
            this.delete = new _angular_core__WEBPACK_IMPORTED_MODULE_0__["EventEmitter"]();
            this.picItem = null;
            this.iconSize = 2;
            this.TIP = 'Click here to upload image';
            this.disableUpload = false;
            this.uploadSuccess = (file) => {
                this.nzMessageService.info('Upload Success');
                this.uploading = false;
                this.picUrl = file.response.url;
                // this.uploadFinished(url);
                // if (!inOSS) {
                const img = new Image();
                img.addEventListener('load', () => {
                    const height = img.naturalHeight;
                    const width = img.naturalWidth;
                    file['height'] = height;
                    file['width'] = width;
                    img.remove();
                    this.imageUploaded.emit(file.response);
                    // this.resService.updateImage(id, {width, height}).then( () => {
                    //   this.imageUploaded.emit({res_id: id, id, name, hash, url});
                    // });
                });
                img.src = file.response.url;
                // } else {
                //   this.imageUploaded.emit({res_id: id, id, name, hash, url});
                // }
            };
            this.uploadFailure = (err, file) => {
                this.uploading = false;
                if (err.name && err.name === 'cancel') {
                    return;
                }
                console.log(err);
                this.nzMessageService.error('Upload Error ' + err.message);
                this.imageUploadFailure.emit(file);
            };
            this.doProgress = function (p) {
                if (p > 1) {
                    p = 1;
                }
                if (p < 0) {
                    p = 0;
                }
                // console.log(Math.floor(p * 100));
                this.progress = Math.floor(p * 100);
            };
            this.uploadUrl = window.courseware.uploadUrl();
            this.uploadData = window.courseware.uploadData();
            window['air'].getUploadCallback = (url, data) => {
                this.uploadUrl = url;
                this.uploadData = data;
            };
            this.setUploadUrl();
        }
        setUploadUrl() {
            if (!this.uploadUrl) {
                console.log('this.uploadUrl -=- 1 : ', this.uploadUrl);
                this.uploadUrl = window.courseware.uploadUrl();
                this.uploadData = window.courseware.uploadData();
                console.log('this.uploadUrl -=- 2 : ', this.uploadUrl);
                setTimeout(() => {
                    this.setUploadUrl();
                }, 500);
            }
            console.log('this.uploadUrl -=- 3 : ', this.uploadUrl);
        }
        ngOnChanges() {
            if (!this.picItem) {
                return;
            }
        }
        handleChange(info) {
            console.log('info:', info);
            switch (info.type) {
                case 'start':
                    // this.isUploading = true;
                    // this.progress = 0;
                    this.picUrl = null;
                    // this.beforeUpload(item.file as any);
                    if (!this.checkSelectFile(info.file)) {
                        return;
                    }
                    this.uploading = true;
                    this.progress = 0;
                    break;
                case 'success':
                    // this.isUploading = false;
                    // this.uploadSuccess(info.file.response);
                    // this.audioUploaded.emit(info.file.response);
                    this.uploadSuccess(info.file);
                    break;
                case 'progress':
                    this.progress = parseInt(info.event.percent, 10);
                    this.doProgress(this.progress);
                    break;
            }
        }
        onDelete() {
            this.delete.emit();
        }
        checkSelectFile(file) {
            const isImg = ['image/jpeg', 'image/png', 'image/jpeg', 'image/gif', 'image/bmp'].includes(file.type);
            if (!isImg) {
                this.nzMessageService.error('You can only upload Image file (jpg|gif|png|bmp)');
                return false;
            }
            const isGif = !['image/jpeg', 'image/png', 'image/jpeg', 'image/bmp'].includes(file.type);
            const delta = isGif ? 20 : 5;
            const isOverSize = file.size / 1024 / 1024 < delta;
            if (!isOverSize) {
                this.nzMessageService.error(`${isGif ? 'Gif' : 'Image'} must smaller than ${delta}MB!`);
                return false;
            }
            return true;
        }
        ngOnDestroy() {
        }
    }
    UploadImageWithPreviewComponent.ɵfac = function UploadImageWithPreviewComponent_Factory(t) { return new (t || UploadImageWithPreviewComponent)(_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdirectiveInject"](ng_zorro_antd__WEBPACK_IMPORTED_MODULE_1__["NzMessageService"])); };
    UploadImageWithPreviewComponent.ɵcmp = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdefineComponent"]({ type: UploadImageWithPreviewComponent, selectors: [["app-upload-image-with-preview"]], inputs: { picUrl: "picUrl", canDelete: "canDelete", picItem: "picItem", iconSize: "iconSize", TIP: "TIP", disableUpload: "disableUpload" }, outputs: { imageUploaded: "imageUploaded", imageUploadFailure: "imageUploadFailure", delete: "delete" }, features: [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵNgOnChangesFeature"]], decls: 7, vars: 8, consts: [[1, "position-relative"], ["nzAccept", "image/*", 1, "p-image-uploader", 3, "nzDisabled", "nzShowUploadList", "nzAction", "nzData", "nzChange"], [1, "p-box", "d-flex", "align-items-center"], ["class", "p-upload-icon", 4, "ngIf"], ["class", "p-upload-progress-bg", 4, "ngIf"], ["class", "p-preview", 3, "background-image", 4, "ngIf"], ["class", "p-btn-delete", "nz-popconfirm", "", "nzTitle", "Are you sure ?", 3, "nzOnConfirm", 4, "ngIf"], [1, "p-upload-icon"], ["nz-icon", "", "nzType", "cloud-upload", "nzTheme", "outline"], [1, "m-3"], [1, "p-upload-progress-bg"], [1, "i-bg"], [1, "i-text"], ["icon", "cloud-upload-alt"], [1, "p-preview"], ["nz-popconfirm", "", "nzTitle", "Are you sure ?", 1, "p-btn-delete", 3, "nzOnConfirm"], ["nz-icon", "", "nzType", "close", "nzTheme", "outline"]], template: function UploadImageWithPreviewComponent_Template(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 0);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "nz-upload", 1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzChange", function UploadImageWithPreviewComponent_Template_nz_upload_nzChange_1_listener($event) { return ctx.handleChange($event); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "div", 2);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](3, UploadImageWithPreviewComponent_div_3_Template, 5, 3, "div", 3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](4, UploadImageWithPreviewComponent_div_4_Template, 5, 2, "div", 4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](5, UploadImageWithPreviewComponent_div_5_Template, 2, 4, "div", 5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](6, UploadImageWithPreviewComponent_div_6_Template, 2, 0, "div", 6);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
            }
            if (rf & 2) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzDisabled", ctx.disableUpload)("nzShowUploadList", false)("nzAction", ctx.uploadUrl)("nzData", ctx.uploadData);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", !ctx.picUrl && !ctx.uploading);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.uploading);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", !ctx.uploading && ctx.picUrl);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.canDelete);
            }
        }, directives: [ng_zorro_antd_upload__WEBPACK_IMPORTED_MODULE_2__["NzUploadComponent"], _angular_common__WEBPACK_IMPORTED_MODULE_3__["NgIf"], ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_4__["NzIconDirective"], _fortawesome_angular_fontawesome__WEBPACK_IMPORTED_MODULE_5__["FaIconComponent"], ng_zorro_antd_popconfirm__WEBPACK_IMPORTED_MODULE_6__["NzPopconfirmDirective"]], pipes: [_pipes_background_image_pipe__WEBPACK_IMPORTED_MODULE_7__["BackgroundImagePipe"]], styles: [".p-image-uploader[_ngcontent-%COMP%] {\n  position: relative;\n  display: block;\n  width: 100%;\n  height: 0;\n  padding-bottom: 56.25%;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%] {\n  position: absolute;\n  left: 0;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  border: 2px dashed #ddd;\n  border-radius: 0.5rem;\n  background-color: #fafafa;\n  text-align: center;\n  color: #aaa;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%]   .p-upload-icon[_ngcontent-%COMP%] {\n  text-align: center;\n  margin: auto;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%]   .p-upload-icon[_ngcontent-%COMP%]   .anticon-upload[_ngcontent-%COMP%] {\n  color: #888;\n  font-size: 5rem;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%]   .p-upload-icon[_ngcontent-%COMP%]   .p-progress-bar[_ngcontent-%COMP%] {\n  position: relative;\n  width: 20rem;\n  height: 1.5rem;\n  border: 1px solid #ccc;\n  border-radius: 1rem;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%]   .p-upload-icon[_ngcontent-%COMP%]   .p-progress-bar[_ngcontent-%COMP%]   .p-progress-bg[_ngcontent-%COMP%] {\n  background-color: #1890ff;\n  border-radius: 1rem;\n  height: 100%;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%]   .p-upload-icon[_ngcontent-%COMP%]   .p-progress-bar[_ngcontent-%COMP%]   .p-progress-value[_ngcontent-%COMP%] {\n  position: absolute;\n  top: 0;\n  left: 0;\n  width: 100%;\n  height: 100%;\n  text-shadow: 0 0 4px #000;\n  color: white;\n  text-align: center;\n  font-size: 0.9rem;\n  line-height: 1.5rem;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%]   .p-preview[_ngcontent-%COMP%] {\n  width: 100%;\n  height: 100%;\n  background-size: contain;\n  background-repeat: no-repeat;\n  background-position: 50% 50%;\n}\n.p-image-uploader[_ngcontent-%COMP%]   .d-flex[_ngcontent-%COMP%] {\n  display: flex;\n}\n.p-btn-delete[_ngcontent-%COMP%] {\n  position: absolute;\n  right: -0.5rem;\n  top: -0.5rem;\n  width: 2rem;\n  height: 2rem;\n  border: 0.2rem solid white;\n  border-radius: 50%;\n  font-size: 1.2rem;\n  background-color: #fb781a;\n  color: white;\n  text-align: center;\n}\n.p-upload-progress-bg[_ngcontent-%COMP%] {\n  position: absolute;\n  width: 100%;\n  height: 100%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n.p-upload-progress-bg[_ngcontent-%COMP%]   .i-text[_ngcontent-%COMP%] {\n  position: absolute;\n  text-align: center;\n  color: white;\n  text-shadow: 0 0 2px rgba(0, 0, 0, 0.85);\n}\n.p-upload-progress-bg[_ngcontent-%COMP%]   .i-bg[_ngcontent-%COMP%] {\n  position: absolute;\n  left: 0;\n  top: 0;\n  height: 100%;\n  background-color: #27b43f;\n  border-radius: 0.5rem;\n}\n[_nghost-%COMP%]     .ant-upload {\n  display: block;\n}\n/*# sourceMappingURL=data:application/json;base64,  */"] });
    return UploadImageWithPreviewComponent;
})();



/***/ }),

/***/ "./src/app/common/upload-video/upload-video.component.ts":
/*!***************************************************************!*\
  !*** ./src/app/common/upload-video/upload-video.component.ts ***!
  \***************************************************************/
/*! exports provided: UploadVideoComponent */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "UploadVideoComponent", function() { return UploadVideoComponent; });
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/__ivy_ngcc__/fesm2015/core.js");
/* harmony import */ var ng_zorro_antd__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ng-zorro-antd */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd.js");
/* harmony import */ var _angular_platform_browser__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/platform-browser */ "./node_modules/@angular/platform-browser/__ivy_ngcc__/fesm2015/platform-browser.js");
/* harmony import */ var ng_zorro_antd_upload__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ng-zorro-antd/upload */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-upload.js");
/* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @angular/common */ "./node_modules/@angular/common/__ivy_ngcc__/fesm2015/common.js");
/* harmony import */ var ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ng-zorro-antd/icon */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-icon.js");
/* harmony import */ var ng_zorro_antd_button__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ng-zorro-antd/button */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-button.js");
/* harmony import */ var _fortawesome_angular_fontawesome__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @fortawesome/angular-fontawesome */ "./node_modules/@fortawesome/angular-fontawesome/__ivy_ngcc__/fesm2015/angular-fontawesome.js");









const _c0 = ["videoNode"];
function UploadVideoComponent_button_3_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "button", 10);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](1, "i", 11);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "span");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r421 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("disabled", ctx_r421.uploading)("nzLoading", ctx_r421.uploading);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate"](ctx_r421.uploading ? "Uploading" : "Select Video");
    }
}
function UploadVideoComponent_div_5_div_5_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 16);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](1, "div", 17);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "div", 18);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r426 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstyleProp"]("width", ctx_r426.progress * 0.2 + "rem");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate1"]("", ctx_r426.progress, "%");
    }
}
function UploadVideoComponent_div_5_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 12);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](1, "i", 13);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](2, "div", 14);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "span");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](4, "Click here to upload video");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](5, UploadVideoComponent_div_5_div_5_Template, 4, 3, "div", 15);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r422 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](5);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx_r422.uploading);
    }
}
const _c1 = function (a0) { return { "smart-bar": a0 }; };
function UploadVideoComponent_div_6_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 19);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](1, "div", 20);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "div", 21);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](3, "fa-icon", 22);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](4, " Uploading... ");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r423 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngClass", _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵpureFunction1"](3, _c1, ctx_r423.showUploadBtn));
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstyleProp"]("width", ctx_r423.progress + "%");
    }
}
function UploadVideoComponent_div_7_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 23);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](1, "div", 20);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "div", 21);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](3, "fa-icon", 22);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](4, "i", 9);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](5, "Checking... ");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r424 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstyleProp"]("width", ctx_r424.progress + "%");
    }
}
function UploadVideoComponent_div_8_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 24);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](1, "video", 25, 26);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const ctx_r425 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("src", ctx_r425.safeVideoUrl(ctx_r425.videoUrl), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵsanitizeUrl"]);
    }
}
let UploadVideoComponent = /*@__PURE__*/ (() => {
    class UploadVideoComponent {
        constructor(nzMessageService, sanitization
        // private cwService: _coursewareService,
        // private resService: ResourceService
        ) {
            this.nzMessageService = nzMessageService;
            this.sanitization = sanitization;
            this.uploading = false;
            this.checking = false;
            this.checkVideoExists = false;
            this.uploadClicked = false;
            this.videoFile = null;
            this.uploaderInst = null;
            this.progress = 0;
            // @Input()
            // setCovering = false;
            this.videoUrl = '';
            // @Input()
            // extractCoverFunc = null;
            this.videoUploaded = new _angular_core__WEBPACK_IMPORTED_MODULE_0__["EventEmitter"]();
            this.videoUploadFailure = new _angular_core__WEBPACK_IMPORTED_MODULE_0__["EventEmitter"]();
            this.extractVideoCover = new _angular_core__WEBPACK_IMPORTED_MODULE_0__["EventEmitter"]();
            this.showUploadBtn = true;
            this.checkHashFinish = (hash) => {
                this.checking = false;
                this.uploading = true;
            };
            this.uploadSuccess = (file) => {
                this.nzMessageService.info('Upload Success');
                // this.updateStatus(false);
                this.uploading = false;
                this.videoFile = null;
                // this.updateSource(url);
                this.videoUrl = file.response.url;
                // console.log(this.picUrl)
                // this.uploadFinished(url);
                // if (!inOSS) {
                const vid = document.createElement('video');
                vid.addEventListener('loadedmetadata', () => {
                    const height = vid.videoHeight;
                    const width = vid.videoWidth;
                    let duration = vid.duration;
                    if (duration) {
                        duration = duration * 1000;
                    }
                    file.height = height;
                    file.width = width;
                    file.duration = duration;
                    vid.preload = 'none';
                    vid.src = '';
                    vid.remove();
                    this.videoUploaded.emit(file.response);
                    // this.resService.updateVideo(id, {width, height, duration}).then( () => {
                    //   this.videoUploaded.emit({res_id: id, id, name, hash, url});
                    // });
                });
                vid.src = file.response.url;
                // } else {
                //   this.videoUploaded.emit(file.response);
                // }
            };
            this.uploadFailure = (err, file) => {
                this.uploading = false;
                if (err.name && err.name === 'cancel') {
                    return;
                }
                console.log(err);
                this.nzMessageService.error('Upload Error ' + err.message);
                this.videoUploadFailure.emit(file);
            };
            this.doProgress = (p) => {
                if (p > 1) {
                    p = 1;
                }
                if (p < 0) {
                    p = 0;
                }
                // console.log(Math.floor(p * 100));
                this.progress = Math.floor(p * 100);
            };
            this.uploading = false;
            this.videoFile = null;
            this.uploadUrl = window.courseware.uploadVideoUrl();
            this.uploadData = window.courseware.uploadData();
            window['air'].getUploadVideoCallback = (url, data) => {
                this.uploadUrl = url;
                this.uploadData = data;
            };
        }
        ngOnChanges() {
            // if (!this.videoFile || this.showUploadBtn) {
            //   return;
            // }
            // this.beforeUpload(this.videoFile);
            // this.handleUpload();
        }
        ngOnDestroy() {
            URL.revokeObjectURL(this.videoUrl);
        }
        safeVideoUrl(url) {
            // console.log(this.sanitization.bypassSecurityTrustResourceUrl(url));
            return this.sanitization.bypassSecurityTrustResourceUrl(url)['changingThisBreaksApplicationSecurity']; // `${url}`;
        }
        videoLoadedMetaData() {
        }
        handleChange(info /* { type: string, file: UploadFile, event: any }*/) {
            console.log('info:', info);
            switch (info.type) {
                case 'start':
                    // this.beforeUpload(info.file);
                    if (!this.checkSelectFile(info.file)) {
                        return;
                    }
                    this.uploading = true;
                    this.progress = 0;
                    break;
                case 'success':
                    this.uploadSuccess(info.file);
                    // this.beforeUpload(info.file);
                    // this.uploadSuccess(info.file);
                    break;
                case 'progress':
                    this.progress = info.event.percent;
                    this.doProgress(this.progress);
                    break;
            }
        }
        checkSelectFile(file) {
            if (!file.lastModified) {
                return false;
            }
            const delta = 500;
            const isOverSize = (file.size / 1024 / 1024) < delta;
            if (!isOverSize) {
                this.nzMessageService.error(`video must smaller than ${delta}MB!`);
                return false;
            }
            return true;
        }
    }
    UploadVideoComponent.ɵfac = function UploadVideoComponent_Factory(t) { return new (t || UploadVideoComponent)(_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdirectiveInject"](ng_zorro_antd__WEBPACK_IMPORTED_MODULE_1__["NzMessageService"]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdirectiveInject"](_angular_platform_browser__WEBPACK_IMPORTED_MODULE_2__["DomSanitizer"])); };
    UploadVideoComponent.ɵcmp = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdefineComponent"]({ type: UploadVideoComponent, selectors: [["app-upload-video"]], viewQuery: function UploadVideoComponent_Query(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstaticViewQuery"](_c0, true);
            }
            if (rf & 2) {
                var _t;
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵqueryRefresh"](_t = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵloadQuery"]()) && (ctx.videoNode = _t.first);
            }
        }, inputs: { videoFile: "videoFile", videoUrl: "videoUrl", showUploadBtn: "showUploadBtn", item: "item" }, outputs: { videoUploaded: "videoUploaded", videoUploadFailure: "videoUploadFailure", extractVideoCover: "extractVideoCover" }, features: [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵNgOnChangesFeature"]], decls: 13, vars: 11, consts: [[1, "p-video-box"], [1, "up-video", 2, "display", "flex"], ["nzAccept", ".mp4", 1, "p-image-uploader", 2, "margin-right", "1rem", 3, "nzDisabled", "nzShowUploadList", "nzAction", "nzData", "nzChange"], ["type", "button", "nz-button", "", "nzType", "default", 3, "disabled", "nzLoading", 4, "ngIf"], [1, "p-box", "d-flex", "align-items-center", "p-video-uploader"], ["class", "p-upload-icon", 4, "ngIf"], ["class", "p-upload-progress-bg dddd ", 3, "ngClass", 4, "ngIf"], ["class", "p-upload-check-bg", 4, "ngIf"], ["class", "p-preview", 4, "ngIf"], ["nz-icon", "", "nzType", "loading", "nzTheme", "outline"], ["type", "button", "nz-button", "", "nzType", "default", 3, "disabled", "nzLoading"], ["nz-icon", "", "nzType", "plus", "nzTheme", "outline"], [1, "p-upload-icon"], ["nz-icon", "", "nzType", "upload", "nzTheme", "outline"], [1, "m-3"], ["class", "mt-5 p-progress-bar", 4, "ngIf"], [1, "mt-5", "p-progress-bar"], [1, "p-progress-bg"], [1, "p-progress-value"], [1, "p-upload-progress-bg", "dddd", 3, "ngClass"], [1, "i-bg"], [1, "i-text"], ["icon", "cloud-upload-alt"], [1, "p-upload-check-bg"], [1, "p-preview"], ["controls", "", 3, "src"], ["videoNode", ""]], template: function UploadVideoComponent_Template(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 0);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "div", 1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "nz-upload", 2);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzChange", function UploadVideoComponent_Template_nz_upload_nzChange_2_listener($event) { return ctx.handleChange($event); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](3, UploadVideoComponent_button_3_Template, 4, 3, "button", 3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "div", 4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](5, UploadVideoComponent_div_5_Template, 6, 1, "div", 5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](6, UploadVideoComponent_div_6_Template, 5, 5, "div", 6);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](7, UploadVideoComponent_div_7_Template, 6, 2, "div", 7);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](8, UploadVideoComponent_div_8_Template, 3, 1, "div", 8);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](9, "div");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "span");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](11, "i", 9);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](12, " checking file to upload");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
            }
            if (rf & 2) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzDisabled", ctx.uploading)("nzShowUploadList", false)("nzAction", ctx.uploadUrl)("nzData", ctx.uploadData);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.showUploadBtn);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", !ctx.showUploadBtn && !ctx.videoUrl && !ctx.uploading);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.uploading);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", ctx.checking);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", !ctx.uploading && ctx.videoUrl);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstyleProp"]("display", !ctx.checkVideoExists ? "none" : "");
            }
        }, directives: [ng_zorro_antd_upload__WEBPACK_IMPORTED_MODULE_3__["NzUploadComponent"], _angular_common__WEBPACK_IMPORTED_MODULE_4__["NgIf"], ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_5__["NzIconDirective"], ng_zorro_antd_button__WEBPACK_IMPORTED_MODULE_6__["NzButtonComponent"], _angular_common__WEBPACK_IMPORTED_MODULE_4__["NgClass"], _fortawesome_angular_fontawesome__WEBPACK_IMPORTED_MODULE_7__["FaIconComponent"]], styles: [".p-video-uploader[_ngcontent-%COMP%] {\n  position: relative;\n  display: block;\n  height: 200px;\n}\n.p-video-uploader[_ngcontent-%COMP%]   .p-box[_ngcontent-%COMP%] {\n  position: absolute;\n  left: 0;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  border: 2px dashed #ddd;\n  background-color: #fafafa;\n  text-align: center;\n  color: #aaa;\n}\n.p-upload-icon[_ngcontent-%COMP%] {\n  text-align: center;\n  margin: auto;\n}\n.p-upload-icon[_ngcontent-%COMP%]   .anticon-upload[_ngcontent-%COMP%] {\n  color: #888;\n  font-size: 5rem;\n}\np-progress-bar[_ngcontent-%COMP%] {\n  position: relative;\n  width: 20rem;\n  height: 1.5rem;\n  border: 1px solid #ccc;\n  border-radius: 1rem;\n}\n.p-progress-bar[_ngcontent-%COMP%]   .p-progress-bg[_ngcontent-%COMP%] {\n  background-color: #1890ff;\n  border-radius: 1rem;\n  height: 100%;\n}\n.p-progress-bar[_ngcontent-%COMP%]   .p-progress-value[_ngcontent-%COMP%] {\n  position: absolute;\n  top: 0;\n  left: 0;\n  width: 100%;\n  height: 100%;\n  text-shadow: 0 0 4px #000;\n  color: white;\n  text-align: center;\n  font-size: 0.9rem;\n  line-height: 1.5rem;\n}\n.p-preview[_ngcontent-%COMP%] {\n  width: 100%;\n  height: 100%;\n}\n.p-preview[_ngcontent-%COMP%]   video[_ngcontent-%COMP%] {\n  max-height: 100%;\n  max-width: 100%;\n  position: absolute;\n  display: flex;\n}\n.p-btn-delete[_ngcontent-%COMP%] {\n  position: absolute;\n  right: -0.5rem;\n  top: -0.5rem;\n  width: 2rem;\n  height: 2rem;\n  border: 0.2rem solid white;\n  border-radius: 50%;\n  font-size: 1.2rem;\n  background-color: #fb781a;\n  color: white;\n  text-align: center;\n}\n.p-upload-progress-bg[_ngcontent-%COMP%], .p-upload-check-bg[_ngcontent-%COMP%] {\n  position: absolute;\n  width: 100%;\n  height: 100%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n.p-upload-progress-bg[_ngcontent-%COMP%]   .i-text[_ngcontent-%COMP%], .p-upload-check-bg[_ngcontent-%COMP%]   .i-text[_ngcontent-%COMP%] {\n  position: absolute;\n  text-align: center;\n  color: white;\n  text-shadow: 0 0 2px rgba(0, 0, 0, 0.85);\n}\n.p-upload-progress-bg[_ngcontent-%COMP%]   .i-bg[_ngcontent-%COMP%], .p-upload-check-bg[_ngcontent-%COMP%]   .i-bg[_ngcontent-%COMP%] {\n  position: absolute;\n  left: 0;\n  top: 0;\n  height: 100%;\n  background-color: #1890ff;\n}\n.p-upload-progress-bg.smart-bar[_ngcontent-%COMP%] {\n  height: 50px !important;\n  margin-top: 20px !important;\n}\n.p-upload-check-bg[_ngcontent-%COMP%] {\n  position: absolute;\n  width: 100%;\n  height: 100%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n.p-upload-check-bg[_ngcontent-%COMP%]   .i-text[_ngcontent-%COMP%] {\n  position: absolute;\n  text-align: center;\n  color: white;\n  text-shadow: 0 0 2px rgba(0, 0, 0, 0.85);\n}\n.p-upload-check-bg[_ngcontent-%COMP%]   .i-bg[_ngcontent-%COMP%] {\n  position: absolute;\n  left: 0;\n  top: 0;\n  height: 100%;\n  background-color: #17a2b8;\n}\n/*# sourceMappingURL=data:application/json;base64,  */"] });
    return UploadVideoComponent;
})();



/***/ }),

/***/ "./src/app/form/form.component.ts":
/*!****************************************!*\
  !*** ./src/app/form/form.component.ts ***!
  \****************************************/
/*! exports provided: FormComponent */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FormComponent", function() { return FormComponent; });
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/__ivy_ngcc__/fesm2015/core.js");
/* harmony import */ var uuid__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! uuid */ "./node_modules/uuid/dist/esm-browser/index.js");
/* harmony import */ var ng_zorro_antd__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ng-zorro-antd */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd.js");
/* harmony import */ var ng_zorro_antd_modal__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ng-zorro-antd/modal */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-modal.js");
/* harmony import */ var ng_zorro_antd_button__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ng-zorro-antd/button */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-button.js");
/* harmony import */ var ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ng-zorro-antd/icon */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-icon.js");
/* harmony import */ var _common_upload_image_with_preview_upload_image_with_preview_component__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../common/upload-image-with-preview/upload-image-with-preview.component */ "./src/app/common/upload-image-with-preview/upload-image-with-preview.component.ts");
/* harmony import */ var ng_zorro_antd_select__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ng-zorro-antd/select */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-select.js");
/* harmony import */ var _angular_forms__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @angular/forms */ "./node_modules/@angular/forms/__ivy_ngcc__/fesm2015/forms.js");
/* harmony import */ var _common_custom_hot_zone_custom_hot_zone_component__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../common/custom-hot-zone/custom-hot-zone.component */ "./src/app/common/custom-hot-zone/custom-hot-zone.component.ts");
/* harmony import */ var ng_zorro_antd_input__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ng-zorro-antd/input */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-input.js");
/* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @angular/common */ "./node_modules/@angular/common/__ivy_ngcc__/fesm2015/common.js");
/* harmony import */ var ng_zorro_antd_checkbox__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ng-zorro-antd/checkbox */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-checkbox.js");
/* harmony import */ var ng_zorro_antd_popconfirm__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ng-zorro-antd/popconfirm */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-popconfirm.js");
/* harmony import */ var ng_zorro_antd_table__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ng-zorro-antd/table */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-table.js");
/* harmony import */ var _common_audio_recorder_audio_recorder_component__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../common/audio-recorder/audio-recorder.component */ "./src/app/common/audio-recorder/audio-recorder.component.ts");
/* harmony import */ var _common_upload_video_upload_video_component__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../common/upload-video/upload-video.component */ "./src/app/common/upload-video/upload-video.component.ts");
/* harmony import */ var ng_zorro_antd_radio__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ng-zorro-antd/radio */ "./node_modules/ng-zorro-antd/__ivy_ngcc__/fesm2015/ng-zorro-antd-radio.js");



















const _c0 = ["customHotZone"];
function FormComponent_div_38_label_22_Template(rf, ctx) {
    if (rf & 1) {
        const _r25 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "label", 69);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_label_22_Template_label_ngModelChange_0_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r25); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return it_r8.useSelectOptionList = $event; })("ngModelChange", function FormComponent_div_38_label_22_Template_label_ngModelChange_0_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r25); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; const ctx_r26 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r26.handleUserSelectOptionListChange(it_r8); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](1, "\u4F7F\u7528\u72EC\u7ACB\u9009\u9879\u6E05\u5355");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r8.useSelectOptionList);
    }
}
function FormComponent_div_38_div_23_tr_22_nz_option_9_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const itOption_r34 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", itOption_r34.index)("nzLabel", itOption_r34.itemName);
    }
}
function FormComponent_div_38_div_23_tr_22_Template(rf, ctx) {
    if (rf & 1) {
        const _r36 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "td", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "input", 81);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_23_tr_22_Template_input_ngModelChange_4_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r36); const data_r31 = ctx.$implicit; return data_r31.text = $event; })("blur", function FormComponent_div_38_div_23_tr_22_Template_input_blur_4_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r36); const ctx_r37 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](3); return ctx_r37.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](5, "td", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "input", 81);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_23_tr_22_Template_input_ngModelChange_6_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r36); const data_r31 = ctx.$implicit; return data_r31.optionShowText = $event; })("blur", function FormComponent_div_38_div_23_tr_22_Template_input_blur_6_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r36); const ctx_r39 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](3); return ctx_r39.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](7, "td", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "nz-select", 29);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_23_tr_22_Template_nz_select_ngModelChange_8_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r36); const data_r31 = ctx.$implicit; return data_r31.selectStrikeOutHotZoneIndex = $event; })("ngModelChange", function FormComponent_div_38_div_23_tr_22_Template_nz_select_ngModelChange_8_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r36); const ctx_r41 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](3); return ctx_r41.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](9, FormComponent_div_38_div_23_tr_22_nz_option_9_Template, 1, 2, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "td", 79);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](11, "a", 82);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzOnConfirm", function FormComponent_div_38_div_23_tr_22_Template_a_nzOnConfirm_11_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r36); const i_r32 = ctx.index; const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2).$implicit; const ctx_r42 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r42.deleteHotzoneSelectOption(it_r8, i_r32); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](12, "\u5220\u9664");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const data_r31 = ctx.$implicit;
        const i_r32 = ctx.index;
        const ctx_r30 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate"](i_r32 + 1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r31.text);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r31.optionShowText);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r31.selectStrikeOutHotZoneIndex);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx_r30.item.hotZoneItemArr);
    }
}
function FormComponent_div_38_div_23_Template(rf, ctx) {
    if (rf & 1) {
        const _r46 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 70);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "div", 71);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "span", 72);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](3, "\u9009\u9879\u6E05\u5355");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "button", 73);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function FormComponent_div_38_div_23_Template_button_click_4_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r46); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; const ctx_r44 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r44.addHotzoneSelectOption(it_r8); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](5, "span", 74);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](6, " \u6DFB\u52A0\u9009\u9879 ");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](7, "nz-table", 75, 76);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](9, "thead");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](11, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](12, "\u5E8F\u53F7");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](13, "th", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](14, "\u6587\u5B57");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](15, "th", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](16, "\u5C55\u793A\u6587\u5B57");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](17, "th", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](18, "\u9009\u62E9\u540E\u5212\u6389\u70ED\u533A(\u53EF\u9009)");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](19, "th", 79);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](20, "\u64CD\u4F5C");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](21, "tbody");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](22, FormComponent_div_38_div_23_tr_22_Template, 13, 5, "tr", 80);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const _r29 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵreference"](8);
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](7);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzData", it_r8.selectOptionList)("nzFrontPagination", false)("nzShowPagination", false);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](15);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", _r29.data);
    }
}
function FormComponent_div_38_div_24_nz_table_7_th_8_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "th", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](1, "\u6240\u5C5E\u7EC4");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
}
function FormComponent_div_38_div_24_nz_table_7_th_9_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "th", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](1, "\u6B63\u786E\u9009\u9879");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
}
function FormComponent_div_38_div_24_nz_table_7_th_10_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "th", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](1, "\u6587\u5B57");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
}
function FormComponent_div_38_div_24_nz_table_7_th_11_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "th", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](1, "\u5C55\u793A\u6587\u5B57");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
}
function FormComponent_div_38_div_24_nz_table_7_th_14_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "th", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](1, "\u9009\u62E9\u540E\u5212\u6389\u70ED\u533A(\u53EF\u9009)");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
}
function FormComponent_div_38_div_24_nz_table_7_tr_18_td_5_nz_option_2_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const i_r75 = ctx.index;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", i_r75)("nzLabel", i_r75 + 1);
    }
}
function FormComponent_div_38_div_24_nz_table_7_tr_18_td_5_Template(rf, ctx) {
    if (rf & 1) {
        const _r78 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "nz-select", 29);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_7_tr_18_td_5_Template_nz_select_ngModelChange_1_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r78); const data_r65 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return data_r65.optionGroupsIndex = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_7_tr_18_td_5_Template_nz_select_ngModelChange_1_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r78); const ctx_r79 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](5); return ctx_r79.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](2, FormComponent_div_38_div_24_nz_table_7_tr_18_td_5_nz_option_2_Template, 1, 2, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const data_r65 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        const _r58 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵreference"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r65.optionGroupsIndex);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", _r58.data);
    }
}
function FormComponent_div_38_div_24_nz_table_7_tr_18_td_6_nz_option_2_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const itOption_r82 = ctx.$implicit;
        const i_r83 = ctx.index;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", i_r83)("nzLabel", itOption_r82.text);
    }
}
function FormComponent_div_38_div_24_nz_table_7_tr_18_td_6_Template(rf, ctx) {
    if (rf & 1) {
        const _r86 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "td", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "nz-select", 29);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_7_tr_18_td_6_Template_nz_select_ngModelChange_1_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r86); const data_r65 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return data_r65.selectOptionListIndex = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_7_tr_18_td_6_Template_nz_select_ngModelChange_1_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r86); const ctx_r87 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](5); return ctx_r87.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](2, FormComponent_div_38_div_24_nz_table_7_tr_18_td_6_nz_option_2_Template, 1, 2, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const data_r65 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit;
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](3).$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r65.selectOptionListIndex);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", it_r8.selectOptionList);
    }
}
function FormComponent_div_38_div_24_nz_table_7_tr_18_td_7_Template(rf, ctx) {
    if (rf & 1) {
        const _r92 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "td", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "input", 81);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_7_tr_18_td_7_Template_input_ngModelChange_1_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r92); const data_r65 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return data_r65.text = $event; })("blur", function FormComponent_div_38_div_24_nz_table_7_tr_18_td_7_Template_input_blur_1_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r92); const ctx_r93 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](5); return ctx_r93.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const data_r65 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r65.text);
    }
}
function FormComponent_div_38_div_24_nz_table_7_tr_18_td_8_Template(rf, ctx) {
    if (rf & 1) {
        const _r97 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "td", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "input", 81);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_7_tr_18_td_8_Template_input_ngModelChange_1_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r97); const data_r65 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return data_r65.optionShowText = $event; })("blur", function FormComponent_div_38_div_24_nz_table_7_tr_18_td_8_Template_input_blur_1_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r97); const ctx_r98 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](5); return ctx_r98.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const data_r65 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r65.optionShowText);
    }
}
function FormComponent_div_38_div_24_nz_table_7_tr_18_nz_option_11_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const itOption_r100 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", itOption_r100.index)("nzLabel", itOption_r100.itemName);
    }
}
function FormComponent_div_38_div_24_nz_table_7_tr_18_td_12_nz_option_2_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const itOption_r102 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", itOption_r102.index)("nzLabel", itOption_r102.itemName);
    }
}
function FormComponent_div_38_div_24_nz_table_7_tr_18_td_12_Template(rf, ctx) {
    if (rf & 1) {
        const _r105 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "td", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "nz-select", 29);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_7_tr_18_td_12_Template_nz_select_ngModelChange_1_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r105); const data_r65 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return data_r65.selectStrikeOutHotZoneIndex = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_7_tr_18_td_12_Template_nz_select_ngModelChange_1_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r105); const ctx_r106 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](5); return ctx_r106.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](2, FormComponent_div_38_div_24_nz_table_7_tr_18_td_12_nz_option_2_Template, 1, 2, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const data_r65 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit;
        const ctx_r72 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r65.selectStrikeOutHotZoneIndex);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx_r72.item.hotZoneItemArr);
    }
}
function FormComponent_div_38_div_24_nz_table_7_tr_18_Template(rf, ctx) {
    if (rf & 1) {
        const _r109 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "input", 81);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_7_tr_18_Template_input_ngModelChange_4_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r109); const data_r65 = ctx.$implicit; return data_r65.score = $event; })("blur", function FormComponent_div_38_div_24_nz_table_7_tr_18_Template_input_blur_4_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r109); const ctx_r110 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r110.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](5, FormComponent_div_38_div_24_nz_table_7_tr_18_td_5_Template, 3, 2, "td", 86);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](6, FormComponent_div_38_div_24_nz_table_7_tr_18_td_6_Template, 3, 2, "td", 85);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](7, FormComponent_div_38_div_24_nz_table_7_tr_18_td_7_Template, 2, 1, "td", 85);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](8, FormComponent_div_38_div_24_nz_table_7_tr_18_td_8_Template, 2, 1, "td", 85);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](9, "td", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "nz-select", 29);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_7_tr_18_Template_nz_select_ngModelChange_10_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r109); const data_r65 = ctx.$implicit; return data_r65.selectHotZoneIndex = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_7_tr_18_Template_nz_select_ngModelChange_10_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r109); const ctx_r112 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r112.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](11, FormComponent_div_38_div_24_nz_table_7_tr_18_nz_option_11_Template, 1, 2, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](12, FormComponent_div_38_div_24_nz_table_7_tr_18_td_12_Template, 3, 2, "td", 85);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](13, "td", 79);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](14, "a", 82);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzOnConfirm", function FormComponent_div_38_div_24_nz_table_7_tr_18_Template_a_nzOnConfirm_14_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r109); const i_r66 = ctx.index; const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](3).$implicit; const ctx_r113 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r113.deleteHotZoneConfigItem(it_r8, i_r66); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](15, "\u5220\u9664");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const data_r65 = ctx.$implicit;
        const i_r66 = ctx.index;
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](3).$implicit;
        const ctx_r64 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate"](i_r66 + 1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r65.score);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.useSelectOptionList);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.useSelectOptionList);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", !it_r8.useSelectOptionList);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", !it_r8.useSelectOptionList);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r65.selectHotZoneIndex);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx_r64.item.hotZoneItemArr);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", !it_r8.useSelectOptionList);
    }
}
function FormComponent_div_38_div_24_nz_table_7_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "nz-table", 75, 76);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "thead");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](5, "\u5E8F\u53F7");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](7, "\u5206\u6570");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](8, FormComponent_div_38_div_24_nz_table_7_th_8_Template, 2, 0, "th", 85);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](9, FormComponent_div_38_div_24_nz_table_7_th_9_Template, 2, 0, "th", 85);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](10, FormComponent_div_38_div_24_nz_table_7_th_10_Template, 2, 0, "th", 85);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](11, FormComponent_div_38_div_24_nz_table_7_th_11_Template, 2, 0, "th", 85);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](12, "th", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](13, "\u6B63\u786E\u70ED\u533A");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](14, FormComponent_div_38_div_24_nz_table_7_th_14_Template, 2, 0, "th", 85);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](15, "th", 79);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](16, "\u64CD\u4F5C");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](17, "tbody");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](18, FormComponent_div_38_div_24_nz_table_7_tr_18_Template, 16, 9, "tr", 80);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const _r58 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵreference"](1);
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2).$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzData", it_r8.contentList)("nzFrontPagination", false)("nzShowPagination", false);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](8);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.useSelectOptionList);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.useSelectOptionList);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", !it_r8.useSelectOptionList);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", !it_r8.useSelectOptionList);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", !it_r8.useSelectOptionList);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](4);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", _r58.data);
    }
}
function FormComponent_div_38_div_24_nz_table_8_tr_15_nz_option_9_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const itOption_r122 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", itOption_r122.index)("nzLabel", itOption_r122.itemName);
    }
}
function FormComponent_div_38_div_24_nz_table_8_tr_15_Template(rf, ctx) {
    if (rf & 1) {
        const _r124 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "label", 33);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_8_tr_15_Template_label_ngModelChange_4_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r124); const data_r119 = ctx.$implicit; return data_r119.isCorrect = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_8_tr_15_Template_label_ngModelChange_4_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r124); const ctx_r125 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r125.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](5, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "input", 81);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_8_tr_15_Template_input_ngModelChange_6_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r124); const data_r119 = ctx.$implicit; return data_r119.score = $event; })("blur", function FormComponent_div_38_div_24_nz_table_8_tr_15_Template_input_blur_6_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r124); const ctx_r127 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r127.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](7, "td");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "nz-select", 29);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_8_tr_15_Template_nz_select_ngModelChange_8_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r124); const data_r119 = ctx.$implicit; return data_r119.selectHotZoneIndex = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_8_tr_15_Template_nz_select_ngModelChange_8_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r124); const ctx_r129 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r129.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](9, FormComponent_div_38_div_24_nz_table_8_tr_15_nz_option_9_Template, 1, 2, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "td", 87);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](11, "a", 82);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzOnConfirm", function FormComponent_div_38_div_24_nz_table_8_tr_15_Template_a_nzOnConfirm_11_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r124); const i_r120 = ctx.index; const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](3).$implicit; const ctx_r130 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r130.deleteHotZoneConfigItem(it_r8, i_r120); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](12, "\u5220\u9664");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const data_r119 = ctx.$implicit;
        const i_r120 = ctx.index;
        const ctx_r118 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate"](i_r120 + 1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r119.isCorrect);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r119.score);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r119.selectHotZoneIndex);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx_r118.item.hotZoneItemArr);
    }
}
function FormComponent_div_38_div_24_nz_table_8_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "nz-table", 75, 76);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "thead");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](5, "\u5E8F\u53F7");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](7, "\u6B63\u8BEF");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](9, "\u5206\u6570");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "th");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](11, "\u70ED\u533A\u7D22\u5F15");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](12, "th", 79);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](13, "\u64CD\u4F5C");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](14, "tbody");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](15, FormComponent_div_38_div_24_nz_table_8_tr_15_Template, 13, 5, "tr", 80);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const _r117 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵreference"](1);
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2).$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzData", it_r8.contentList)("nzFrontPagination", false)("nzShowPagination", false);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](15);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", _r117.data);
    }
}
function FormComponent_div_38_div_24_nz_table_9_tr_13_Template(rf, ctx) {
    if (rf & 1) {
        const _r138 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "label", 33);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_9_tr_13_Template_label_ngModelChange_4_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r138); const data_r135 = ctx.$implicit; return data_r135.isCorrect = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_9_tr_13_Template_label_ngModelChange_4_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r138); const ctx_r139 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r139.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](5, "td");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "div", 88);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](7, "app-upload-image-with-preview", 8);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("imageUploaded", function FormComponent_div_38_div_24_nz_table_9_tr_13_Template_app_upload_image_with_preview_imageUploaded_7_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r138); const data_r135 = ctx.$implicit; const ctx_r140 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r140.onImageUploadSuccess($event, "image_url", data_r135); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "td", 89);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](9, "a", 82);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzOnConfirm", function FormComponent_div_38_div_24_nz_table_9_tr_13_Template_a_nzOnConfirm_9_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r138); const i_r136 = ctx.index; const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](3).$implicit; const ctx_r141 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r141.deleteHotZoneConfigItem(it_r8, i_r136); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](10, "\u5220\u9664");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const data_r135 = ctx.$implicit;
        const i_r136 = ctx.index;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate"](i_r136 + 1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r135.isCorrect);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("picUrl", data_r135.image_url);
    }
}
function FormComponent_div_38_div_24_nz_table_9_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "nz-table", 75, 76);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "thead");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](5, "\u5E8F\u53F7");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](7, "\u6B63\u786E\u7B54\u6848");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "th");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](9, "\u56FE\u7247");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "th", 79);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](11, "\u64CD\u4F5C");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](12, "tbody");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](13, FormComponent_div_38_div_24_nz_table_9_tr_13_Template, 11, 3, "tr", 80);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const _r133 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵreference"](1);
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2).$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzData", it_r8.contentList)("nzFrontPagination", false)("nzShowPagination", false);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](13);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", _r133.data);
    }
}
function FormComponent_div_38_div_24_nz_table_10_tr_13_nz_option_7_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const itOption_r149 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", itOption_r149.index)("nzLabel", itOption_r149.itemName);
    }
}
function FormComponent_div_38_div_24_nz_table_10_tr_13_Template(rf, ctx) {
    if (rf & 1) {
        const _r151 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "label", 33);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_10_tr_13_Template_label_ngModelChange_4_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r151); const data_r146 = ctx.$implicit; return data_r146.isCorrect = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_10_tr_13_Template_label_ngModelChange_4_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r151); const ctx_r152 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r152.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](5, "td");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "nz-select", 29);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_10_tr_13_Template_nz_select_ngModelChange_6_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r151); const data_r146 = ctx.$implicit; return data_r146.selectHotZoneIndex = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_10_tr_13_Template_nz_select_ngModelChange_6_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r151); const ctx_r154 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r154.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](7, FormComponent_div_38_div_24_nz_table_10_tr_13_nz_option_7_Template, 1, 2, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "td", 87);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](9, "a", 82);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzOnConfirm", function FormComponent_div_38_div_24_nz_table_10_tr_13_Template_a_nzOnConfirm_9_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r151); const i_r147 = ctx.index; const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](3).$implicit; const ctx_r155 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r155.deleteHotZoneConfigItem(it_r8, i_r147); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](10, "\u5220\u9664");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const data_r146 = ctx.$implicit;
        const i_r147 = ctx.index;
        const ctx_r145 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate"](i_r147 + 1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r146.isCorrect);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r146.selectHotZoneIndex);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx_r145.item.hotZoneItemArr);
    }
}
function FormComponent_div_38_div_24_nz_table_10_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "nz-table", 75, 76);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "thead");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](5, "\u5E8F\u53F7");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](7, "\u6B63\u786E\u7B54\u6848");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "th");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](9, "\u70ED\u533A\u7D22\u5F15");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "th", 79);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](11, "\u64CD\u4F5C");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](12, "tbody");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](13, FormComponent_div_38_div_24_nz_table_10_tr_13_Template, 11, 4, "tr", 80);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const _r144 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵreference"](1);
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2).$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzData", it_r8.contentList)("nzFrontPagination", false)("nzShowPagination", false);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](13);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", _r144.data);
    }
}
function FormComponent_div_38_div_24_nz_table_11_tr_15_nz_option_9_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const itOption_r163 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", itOption_r163.index)("nzLabel", itOption_r163.itemName);
    }
}
function FormComponent_div_38_div_24_nz_table_11_tr_15_Template(rf, ctx) {
    if (rf & 1) {
        const _r165 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "label", 33);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_11_tr_15_Template_label_ngModelChange_4_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r165); const data_r160 = ctx.$implicit; return data_r160.isCheck = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_11_tr_15_Template_label_ngModelChange_4_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r165); const ctx_r166 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r166.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](5, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "input", 81);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_11_tr_15_Template_input_ngModelChange_6_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r165); const data_r160 = ctx.$implicit; return data_r160.score = $event; })("blur", function FormComponent_div_38_div_24_nz_table_11_tr_15_Template_input_blur_6_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r165); const ctx_r168 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r168.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](7, "td");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "nz-select", 29);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_11_tr_15_Template_nz_select_ngModelChange_8_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r165); const data_r160 = ctx.$implicit; return data_r160.selectHotZoneIndex = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_11_tr_15_Template_nz_select_ngModelChange_8_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r165); const ctx_r170 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r170.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](9, FormComponent_div_38_div_24_nz_table_11_tr_15_nz_option_9_Template, 1, 2, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "td", 79);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](11, "a", 82);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzOnConfirm", function FormComponent_div_38_div_24_nz_table_11_tr_15_Template_a_nzOnConfirm_11_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r165); const i_r161 = ctx.index; const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](3).$implicit; const ctx_r171 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r171.deleteHotZoneConfigItem(it_r8, i_r161); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](12, "\u5220\u9664");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const data_r160 = ctx.$implicit;
        const i_r161 = ctx.index;
        const ctx_r159 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate"](i_r161 + 1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r160.isCheck);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r160.score);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r160.selectHotZoneIndex);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx_r159.item.hotZoneItemArr);
    }
}
function FormComponent_div_38_div_24_nz_table_11_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "nz-table", 75, 76);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "thead");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](5, "\u5E8F\u53F7");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](7, "\u6B63\u786E\u7B54\u6848");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](9, "\u5206\u6570");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "th");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](11, "\u70ED\u533A\u7D22\u5F15");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](12, "th", 79);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](13, "\u64CD\u4F5C");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](14, "tbody");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](15, FormComponent_div_38_div_24_nz_table_11_tr_15_Template, 13, 5, "tr", 80);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const _r158 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵreference"](1);
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2).$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzData", it_r8.contentList)("nzFrontPagination", false)("nzShowPagination", false);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](15);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", _r158.data);
    }
}
function FormComponent_div_38_div_24_nz_table_12_tr_19_nz_option_7_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const itOption_r181 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", itOption_r181.index)("nzLabel", itOption_r181.itemName);
    }
}
function FormComponent_div_38_div_24_nz_table_12_tr_19_nz_option_10_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const itOption_r182 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", itOption_r182.index)("nzLabel", itOption_r182.itemName);
    }
}
function FormComponent_div_38_div_24_nz_table_12_tr_19_nz_option_13_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const itOption_r183 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", itOption_r183.index)("nzLabel", itOption_r183.itemName);
    }
}
function FormComponent_div_38_div_24_nz_table_12_tr_19_Template(rf, ctx) {
    if (rf & 1) {
        const _r185 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "td", 90);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "input", 81);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_12_tr_19_Template_input_ngModelChange_4_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r185); const data_r176 = ctx.$implicit; return data_r176.score = $event; })("blur", function FormComponent_div_38_div_24_nz_table_12_tr_19_Template_input_blur_4_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r185); const ctx_r186 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r186.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](5, "td");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "nz-select", 29);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_12_tr_19_Template_nz_select_ngModelChange_6_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r185); const data_r176 = ctx.$implicit; return data_r176.selectStartHotZoneIndex = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_12_tr_19_Template_nz_select_ngModelChange_6_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r185); const ctx_r188 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r188.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](7, FormComponent_div_38_div_24_nz_table_12_tr_19_nz_option_7_Template, 1, 2, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "td");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](9, "nz-select", 29);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_12_tr_19_Template_nz_select_ngModelChange_9_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r185); const data_r176 = ctx.$implicit; return data_r176.selectEndHotZoneIndex = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_12_tr_19_Template_nz_select_ngModelChange_9_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r185); const ctx_r190 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r190.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](10, FormComponent_div_38_div_24_nz_table_12_tr_19_nz_option_10_Template, 1, 2, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](11, "td");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](12, "nz-select", 29);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_12_tr_19_Template_nz_select_ngModelChange_12_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r185); const data_r176 = ctx.$implicit; return data_r176.selectEndHotZoneShowIndex = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_12_tr_19_Template_nz_select_ngModelChange_12_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r185); const ctx_r192 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r192.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](13, FormComponent_div_38_div_24_nz_table_12_tr_19_nz_option_13_Template, 1, 2, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](14, "td");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](15, "input", 81);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_12_tr_19_Template_input_ngModelChange_15_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r185); const data_r176 = ctx.$implicit; return data_r176.linkedShowText = $event; })("blur", function FormComponent_div_38_div_24_nz_table_12_tr_19_Template_input_blur_15_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r185); const ctx_r194 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r194.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](16, "td", 79);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](17, "a", 82);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzOnConfirm", function FormComponent_div_38_div_24_nz_table_12_tr_19_Template_a_nzOnConfirm_17_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r185); const i_r177 = ctx.index; const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](3).$implicit; const ctx_r195 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r195.deleteHotZoneConfigItem(it_r8, i_r177); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](18, "\u5220\u9664");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const data_r176 = ctx.$implicit;
        const i_r177 = ctx.index;
        const ctx_r175 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate"](i_r177 + 1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r176.score);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r176.selectStartHotZoneIndex);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx_r175.item.hotZoneItemArr);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r176.selectEndHotZoneIndex);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx_r175.item.hotZoneItemArr);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r176.selectEndHotZoneShowIndex);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx_r175.item.hotZoneItemArr);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r176.linkedShowText);
    }
}
function FormComponent_div_38_div_24_nz_table_12_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "nz-table", 75, 76);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "thead");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](5, "\u5E8F\u53F7");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](7, "\u5206\u6570");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "th", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](9, "\u70ED\u533A\u8D77\u70B9");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "th", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](11, "\u70ED\u533A\u7EC8\u70B9");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](12, "th", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](13, "\u88AB\u8FDE\u63A5\u663E\u793A\u70ED\u533A(\u53EF\u9009)");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](14, "th", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](15, "\u88AB\u8FDE\u63A5\u663E\u793A\u5185\u5BB9(\u53EF\u9009)");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](16, "th", 79);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](17, "\u64CD\u4F5C");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](18, "tbody");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](19, FormComponent_div_38_div_24_nz_table_12_tr_19_Template, 19, 9, "tr", 80);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const _r174 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵreference"](1);
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2).$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzData", it_r8.contentList)("nzFrontPagination", false)("nzShowPagination", false);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](19);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", _r174.data);
    }
}
function FormComponent_div_38_div_24_nz_table_13_tr_13_nz_option_7_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const itOption_r203 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", itOption_r203.index)("nzLabel", itOption_r203.itemName);
    }
}
function FormComponent_div_38_div_24_nz_table_13_tr_13_Template(rf, ctx) {
    if (rf & 1) {
        const _r205 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "input", 81);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_13_tr_13_Template_input_ngModelChange_4_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r205); const data_r200 = ctx.$implicit; return data_r200.letter = $event; })("blur", function FormComponent_div_38_div_24_nz_table_13_tr_13_Template_input_blur_4_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r205); const ctx_r206 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r206.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](5, "td", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "nz-select", 29);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_13_tr_13_Template_nz_select_ngModelChange_6_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r205); const data_r200 = ctx.$implicit; return data_r200.selectHotZoneIndex = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_13_tr_13_Template_nz_select_ngModelChange_6_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r205); const ctx_r208 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r208.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](7, FormComponent_div_38_div_24_nz_table_13_tr_13_nz_option_7_Template, 1, 2, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "td", 79);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](9, "a", 82);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzOnConfirm", function FormComponent_div_38_div_24_nz_table_13_tr_13_Template_a_nzOnConfirm_9_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r205); const i_r201 = ctx.index; const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](3).$implicit; const ctx_r209 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r209.deleteHotZoneConfigItem(it_r8, i_r201); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](10, "\u5220\u9664");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const data_r200 = ctx.$implicit;
        const i_r201 = ctx.index;
        const ctx_r199 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate"](i_r201 + 1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r200.letter);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r200.selectHotZoneIndex);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx_r199.item.hotZoneItemArr);
    }
}
function FormComponent_div_38_div_24_nz_table_13_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "nz-table", 75, 76);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "thead");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](5, "\u5E8F\u53F7");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](7, "\u6B63\u786E\u5B57\u6BCD");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "th", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](9, "\u5173\u8054\u70ED\u533A");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "th", 79);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](11, "\u64CD\u4F5C");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](12, "tbody");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](13, FormComponent_div_38_div_24_nz_table_13_tr_13_Template, 11, 4, "tr", 80);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const _r198 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵreference"](1);
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2).$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzData", it_r8.contentList)("nzFrontPagination", false)("nzShowPagination", false);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](13);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", _r198.data);
    }
}
function FormComponent_div_38_div_24_nz_table_14_tr_13_Template(rf, ctx) {
    if (rf & 1) {
        const _r217 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "td", 90);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "input", 81);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_14_tr_13_Template_input_ngModelChange_4_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r217); const data_r214 = ctx.$implicit; return data_r214.sortIndex = $event; })("blur", function FormComponent_div_38_div_24_nz_table_14_tr_13_Template_input_blur_4_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r217); const ctx_r218 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r218.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](5, "td");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "input", 81);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_14_tr_13_Template_input_ngModelChange_6_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r217); const data_r214 = ctx.$implicit; return data_r214.text = $event; })("blur", function FormComponent_div_38_div_24_nz_table_14_tr_13_Template_input_blur_6_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r217); const ctx_r220 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r220.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](7, "td", 79);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "a", 82);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzOnConfirm", function FormComponent_div_38_div_24_nz_table_14_tr_13_Template_a_nzOnConfirm_8_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r217); const i_r215 = ctx.index; const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](3).$implicit; const ctx_r221 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r221.deleteHotZoneConfigItem(it_r8, i_r215); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](9, "\u5220\u9664");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const data_r214 = ctx.$implicit;
        const i_r215 = ctx.index;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate"](i_r215 + 1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r214.sortIndex);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r214.text);
    }
}
function FormComponent_div_38_div_24_nz_table_14_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "nz-table", 75, 76);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "thead");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](5, "\u5E8F\u53F7");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "th", 90);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](7, "\u6B63\u786E\u5E8F\u53F7");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "th");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](9, "\u6587\u5B57");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "th", 79);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](11, "\u64CD\u4F5C");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](12, "tbody");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](13, FormComponent_div_38_div_24_nz_table_14_tr_13_Template, 10, 3, "tr", 80);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const _r212 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵreference"](1);
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2).$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzData", it_r8.contentList)("nzFrontPagination", false)("nzShowPagination", false);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](13);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", _r212.data);
    }
}
function FormComponent_div_38_div_24_nz_table_15_tr_15_nz_option_7_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const itOption_r229 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", itOption_r229.index)("nzLabel", itOption_r229.itemName);
    }
}
function FormComponent_div_38_div_24_nz_table_15_tr_15_Template(rf, ctx) {
    if (rf & 1) {
        const _r231 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "label", 33);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_15_tr_15_Template_label_ngModelChange_4_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r231); const data_r226 = ctx.$implicit; return data_r226.isCorrect = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_15_tr_15_Template_label_ngModelChange_4_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r231); const ctx_r232 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r232.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](5, "td");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "nz-select", 29);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_15_tr_15_Template_nz_select_ngModelChange_6_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r231); const data_r226 = ctx.$implicit; return data_r226.selectHotZoneIndex = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_15_tr_15_Template_nz_select_ngModelChange_6_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r231); const ctx_r234 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r234.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](7, FormComponent_div_38_div_24_nz_table_15_tr_15_nz_option_7_Template, 1, 2, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "td");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](9, "input", 81);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_15_tr_15_Template_input_ngModelChange_9_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r231); const data_r226 = ctx.$implicit; return data_r226.linkedShowText = $event; })("blur", function FormComponent_div_38_div_24_nz_table_15_tr_15_Template_input_blur_9_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r231); const ctx_r236 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r236.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "td", 87);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](11, "a", 82);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzOnConfirm", function FormComponent_div_38_div_24_nz_table_15_tr_15_Template_a_nzOnConfirm_11_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r231); const i_r227 = ctx.index; const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](3).$implicit; const ctx_r237 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r237.deleteHotZoneConfigItem(it_r8, i_r227); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](12, "\u5220\u9664");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const data_r226 = ctx.$implicit;
        const i_r227 = ctx.index;
        const ctx_r225 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate"](i_r227 + 1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r226.isCorrect);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r226.selectHotZoneIndex);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx_r225.item.hotZoneItemArr);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r226.linkedShowText);
    }
}
function FormComponent_div_38_div_24_nz_table_15_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "nz-table", 75, 76);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "thead");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](5, "\u5E8F\u53F7");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](7, "\u6B63\u786E\u7B54\u6848");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "th");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](9, "\u70ED\u533A\u7D22\u5F15");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "th", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](11, "\u88AB\u8FDE\u63A5\u663E\u793A\u5185\u5BB9(\u53EF\u9009)");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](12, "th", 79);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](13, "\u64CD\u4F5C");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](14, "tbody");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](15, FormComponent_div_38_div_24_nz_table_15_tr_15_Template, 13, 5, "tr", 80);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const _r224 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵreference"](1);
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2).$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzData", it_r8.contentList)("nzFrontPagination", false)("nzShowPagination", false);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](15);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", _r224.data);
    }
}
function FormComponent_div_38_div_24_nz_table_16_tr_15_nz_option_24_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const itOption_r245 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", itOption_r245.index)("nzLabel", itOption_r245.itemName);
    }
}
function FormComponent_div_38_div_24_nz_table_16_tr_15_Template(rf, ctx) {
    if (rf & 1) {
        const _r247 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "td", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "td", 90);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "input", 81);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_input_ngModelChange_4_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const data_r242 = ctx.$implicit; return data_r242.score = $event; })("blur", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_input_blur_4_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const ctx_r248 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r248.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](5, "td", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "input", 91);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_input_ngModelChange_6_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const data_r242 = ctx.$implicit; return data_r242.inputText = $event; })("blur", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_input_blur_6_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const ctx_r250 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r250.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](7, "div");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "label", 69);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_label_ngModelChange_8_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const data_r242 = ctx.$implicit; return data_r242.keyWordMatch = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_label_ngModelChange_8_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const ctx_r252 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r252.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](9, "\u5173\u952E\u8BCD\u5339\u914D");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "label", 69);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_label_ngModelChange_10_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const data_r242 = ctx.$implicit; return data_r242.keyWordMatchInOrder = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_label_ngModelChange_10_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const ctx_r254 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r254.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](11, "\u6709\u5E8F\u5173\u952E\u8BCD");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](12, "label", 69);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_label_ngModelChange_12_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const data_r242 = ctx.$implicit; return data_r242.isCaseInsensitive = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_label_ngModelChange_12_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const ctx_r256 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r256.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](13, "\u4E0D\u533A\u5206\u5927\u5C0F\u5199");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](14, "label", 69);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_label_ngModelChange_14_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const data_r242 = ctx.$implicit; return data_r242.openAnswer = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_label_ngModelChange_14_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const ctx_r258 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r258.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](15, "\u5F00\u653E\u6027\u7B54\u6848");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](16, "label", 69);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_label_ngModelChange_16_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const data_r242 = ctx.$implicit; return data_r242.capitalizedFirstLetter = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_label_ngModelChange_16_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const ctx_r260 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r260.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](17, "\u9996\u5B57\u6BCD\u5927\u5199");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](18, "label", 69);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_label_ngModelChange_18_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const data_r242 = ctx.$implicit; return data_r242.notAdaptContraction = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_label_ngModelChange_18_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const ctx_r262 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r262.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](19, "\u4E0D\u8FDB\u884C\u7F29\u5199\u9002\u914D");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](20, "label", 69);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_label_ngModelChange_20_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const data_r242 = ctx.$implicit; return data_r242.textAlignLeft = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_label_ngModelChange_20_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const ctx_r264 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r264.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](21, "\u6587\u5B57\u9760\u5DE6\u5BF9\u9F50");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](22, "td", 90);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](23, "nz-select", 29);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_nz_select_ngModelChange_23_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const data_r242 = ctx.$implicit; return data_r242.selectHotZoneIndex = $event; })("ngModelChange", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_nz_select_ngModelChange_23_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const ctx_r266 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4); return ctx_r266.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](24, FormComponent_div_38_div_24_nz_table_16_tr_15_nz_option_24_Template, 1, 2, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](25, "td", 87);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](26, "a", 82);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzOnConfirm", function FormComponent_div_38_div_24_nz_table_16_tr_15_Template_a_nzOnConfirm_26_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r247); const i_r243 = ctx.index; const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](3).$implicit; const ctx_r267 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r267.deleteHotZoneConfigItem(it_r8, i_r243); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](27, "\u5220\u9664");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const data_r242 = ctx.$implicit;
        const i_r243 = ctx.index;
        const ctx_r241 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](4);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate"](i_r243 + 1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r242.score);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r242.inputText);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r242.keyWordMatch);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r242.keyWordMatchInOrder);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r242.isCaseInsensitive);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r242.openAnswer);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r242.capitalizedFirstLetter);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r242.notAdaptContraction);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r242.textAlignLeft);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", data_r242.selectHotZoneIndex);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx_r241.item.hotZoneItemArr);
    }
}
function FormComponent_div_38_div_24_nz_table_16_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "nz-table", 75, 76);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "thead");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "tr");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](5, "\u5E8F\u53F7");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "th", 77);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](7, "\u5206\u6570");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "th", 78);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](9, "\u6587\u5B57");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "th", 90);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](11, "\u70ED\u533A\u7D22\u5F15");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](12, "th", 79);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](13, "\u64CD\u4F5C");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](14, "tbody");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](15, FormComponent_div_38_div_24_nz_table_16_tr_15_Template, 28, 12, "tr", 80);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const _r240 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵreference"](1);
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2).$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzData", it_r8.contentList)("nzFrontPagination", false)("nzShowPagination", false);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](15);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", _r240.data);
    }
}
function FormComponent_div_38_div_24_Template(rf, ctx) {
    if (rf & 1) {
        const _r272 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 70);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "div", 71);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "span", 72);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](3, "\u5185\u5BB9\u6E05\u5355");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "button", 73);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function FormComponent_div_38_div_24_Template_button_click_4_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r272); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; const ctx_r270 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r270.addHotZoneConfigItem(it_r8); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](5, "span", 74);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](6, " \u6DFB\u52A0\u5185\u5BB9 ");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](7, FormComponent_div_38_div_24_nz_table_7_Template, 19, 9, "nz-table", 84);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](8, FormComponent_div_38_div_24_nz_table_8_Template, 16, 4, "nz-table", 84);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](9, FormComponent_div_38_div_24_nz_table_9_Template, 14, 4, "nz-table", 84);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](10, FormComponent_div_38_div_24_nz_table_10_Template, 14, 4, "nz-table", 84);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](11, FormComponent_div_38_div_24_nz_table_11_Template, 16, 4, "nz-table", 84);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](12, FormComponent_div_38_div_24_nz_table_12_Template, 20, 4, "nz-table", 84);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](13, FormComponent_div_38_div_24_nz_table_13_Template, 14, 4, "nz-table", 84);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](14, FormComponent_div_38_div_24_nz_table_14_Template, 14, 4, "nz-table", 84);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](15, FormComponent_div_38_div_24_nz_table_15_Template, 16, 4, "nz-table", 84);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](16, FormComponent_div_38_div_24_nz_table_16_Template, 16, 4, "nz-table", 84);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit;
        const ctx_r12 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](7);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r12.TEXT_SELECT);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r12.RIGHT_OR_WRONG);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r12.IMAGE_SELECT);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r12.HOT_ZONE_RADIO);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r12.HOT_ZONE_CHECKBOX);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r12.CONNECTION);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r12.CROSSWORD_PUZZLE);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r12.SORT_WORDS);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r12.CONNECTION_CHOICE);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r12.TEXTINPUT_GROUP);
    }
}
function FormComponent_div_38_div_25_Template(rf, ctx) {
    if (rf & 1) {
        const _r275 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 92);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "app-audio-recorder", 93);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("audioUploaded", function FormComponent_div_38_div_25_Template_app_audio_recorder_audioUploaded_1_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r275); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; const ctx_r274 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r274.onAudioUploadSuccess($event, "audio_url", it_r8); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("audioUrl", it_r8.audio_url);
    }
}
function FormComponent_div_38_div_26_Template(rf, ctx) {
    if (rf & 1) {
        const _r279 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 92);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "app-upload-video", 94);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("videoUploaded", function FormComponent_div_38_div_26_Template_app_upload_video_videoUploaded_1_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r279); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; const ctx_r278 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r278.onVideoUploadSuccess($event, "video_url", it_r8); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("videoUrl", it_r8.video_url);
    }
}
function FormComponent_div_38_div_27_Template(rf, ctx) {
    if (rf & 1) {
        const _r284 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 26);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "span", 46);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2, "\u5F85\u9009\u9879\u6837\u5F0F\uFF1A");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "nz-radio-group", 95);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_27_Template_nz_radio_group_ngModelChange_3_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r284); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return it_r8.unselectedStyle = $event; })("ngModelChange", function FormComponent_div_38_div_27_Template_nz_radio_group_ngModelChange_3_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r284); const ctx_r285 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2); return ctx_r285.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "label", 96);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](5, "\u65E0\u6837\u5F0F");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "label", 97);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](7, "\u7070\u8272\u906E\u7F69");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "label", 98);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](9, "\u8FB9\u6846");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r8.unselectedStyle);
    }
}
function FormComponent_div_38_div_28_Template(rf, ctx) {
    if (rf & 1) {
        const _r289 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 26);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "span", 46);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2, "\u9009\u4E2D\u6837\u5F0F\uFF1A");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "nz-radio-group", 95);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_28_Template_nz_radio_group_ngModelChange_3_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r289); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return it_r8.selectedStyle = $event; })("ngModelChange", function FormComponent_div_38_div_28_Template_nz_radio_group_ngModelChange_3_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r289); const ctx_r290 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2); return ctx_r290.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "label", 98);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](5, "\u8FB9\u6846");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "label", 99);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](7, "\u5BF9\u53F7");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r8.selectedStyle);
    }
}
function FormComponent_div_38_div_29_Template(rf, ctx) {
    if (rf & 1) {
        const _r294 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 26);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "span", 46);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2, "\u9009\u4E2D\u6837\u5F0F\uFF1A");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "nz-radio-group", 95);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_29_Template_nz_radio_group_ngModelChange_3_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r294); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return it_r8.rightOrWrongStyleType = $event; })("ngModelChange", function FormComponent_div_38_div_29_Template_nz_radio_group_ngModelChange_3_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r294); const ctx_r295 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2); return ctx_r295.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "label", 100);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](5, "\u5BF9/\u9519\u53F7");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "label", 101);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](7, "\u7B11/\u54ED\u8138");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "label", 102);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](9, "T/F");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "label", 103);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](11, "Yes/No");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r8.rightOrWrongStyleType);
    }
}
function FormComponent_div_38_div_30_Template(rf, ctx) {
    if (rf & 1) {
        const _r299 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 26);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "span", 46);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2, "\u6B63\u786E\u6587\u5B57\uFF1A");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "input", 104);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_30_Template_input_ngModelChange_3_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r299); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return it_r8.inputText = $event; })("blur", function FormComponent_div_38_div_30_Template_input_blur_3_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r299); const ctx_r300 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2); return ctx_r300.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "label", 69);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_30_Template_label_ngModelChange_4_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r299); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return it_r8.keyWordMatch = $event; })("ngModelChange", function FormComponent_div_38_div_30_Template_label_ngModelChange_4_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r299); const ctx_r303 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2); return ctx_r303.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](5, "\u5173\u952E\u8BCD\u5339\u914D");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "label", 69);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_30_Template_label_ngModelChange_6_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r299); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return it_r8.keyWordMatchInOrder = $event; })("ngModelChange", function FormComponent_div_38_div_30_Template_label_ngModelChange_6_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r299); const ctx_r306 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2); return ctx_r306.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](7, "\u6709\u5E8F\u5173\u952E\u8BCD");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "label", 69);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_30_Template_label_ngModelChange_8_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r299); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return it_r8.isCaseInsensitive = $event; })("ngModelChange", function FormComponent_div_38_div_30_Template_label_ngModelChange_8_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r299); const ctx_r309 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2); return ctx_r309.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](9, "\u4E0D\u533A\u5206\u5927\u5C0F\u5199");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "label", 69);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_30_Template_label_ngModelChange_10_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r299); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return it_r8.openAnswer = $event; })("ngModelChange", function FormComponent_div_38_div_30_Template_label_ngModelChange_10_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r299); const ctx_r312 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2); return ctx_r312.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](11, "\u5F00\u653E\u6027\u7B54\u6848");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](12, "label", 69);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_30_Template_label_ngModelChange_12_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r299); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return it_r8.capitalizedFirstLetter = $event; })("ngModelChange", function FormComponent_div_38_div_30_Template_label_ngModelChange_12_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r299); const ctx_r315 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2); return ctx_r315.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](13, "\u9996\u5B57\u6BCD\u5927\u5199");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](14, "label", 69);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_30_Template_label_ngModelChange_14_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r299); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return it_r8.notAdaptContraction = $event; })("ngModelChange", function FormComponent_div_38_div_30_Template_label_ngModelChange_14_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r299); const ctx_r318 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2); return ctx_r318.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](15, "\u4E0D\u8FDB\u884C\u7F29\u5199\u9002\u914D");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](16, "label", 69);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_30_Template_label_ngModelChange_16_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r299); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return it_r8.textAlignLeft = $event; })("ngModelChange", function FormComponent_div_38_div_30_Template_label_ngModelChange_16_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r299); const ctx_r321 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2); return ctx_r321.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](17, "\u6587\u5B57\u9760\u5DE6\u5BF9\u9F50");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r8.inputText);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r8.keyWordMatch);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r8.keyWordMatchInOrder);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r8.isCaseInsensitive);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r8.openAnswer);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r8.capitalizedFirstLetter);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r8.notAdaptContraction);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r8.textAlignLeft);
    }
}
function FormComponent_div_38_div_31_nz_option_4_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const itOption_r324 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", itOption_r324.index)("nzLabel", itOption_r324.itemName);
    }
}
function FormComponent_div_38_div_31_Template(rf, ctx) {
    if (rf & 1) {
        const _r327 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 26);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "span", 46);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2, "\u5173\u8054\u70ED\u533A\uFF1A");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "nz-select", 105);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_31_Template_nz_select_ngModelChange_3_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r327); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return it_r8.linkHotZoneIndex = $event; })("ngModelChange", function FormComponent_div_38_div_31_Template_nz_select_ngModelChange_3_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r327); const ctx_r328 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2); return ctx_r328.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](4, FormComponent_div_38_div_31_nz_option_4_Template, 1, 2, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit;
        const ctx_r19 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r8.linkHotZoneIndex);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx_r19.item.hotZoneItemArr);
    }
}
function FormComponent_div_38_div_32_nz_option_4_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const itOption_r331 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", itOption_r331.index)("nzLabel", itOption_r331.itemName);
    }
}
function FormComponent_div_38_div_32_Template(rf, ctx) {
    if (rf & 1) {
        const _r334 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 26);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "span", 46);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2, "\u5DF2\u586B\u663E\u793A\u70ED\u533A\uFF1A");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "nz-select", 105);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_32_Template_nz_select_ngModelChange_3_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r334); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return it_r8.linkHotZoneShowIndex = $event; })("ngModelChange", function FormComponent_div_38_div_32_Template_nz_select_ngModelChange_3_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r334); const ctx_r335 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2); return ctx_r335.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](4, FormComponent_div_38_div_32_nz_option_4_Template, 1, 2, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit;
        const ctx_r20 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r8.linkHotZoneShowIndex);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx_r20.item.hotZoneItemArr);
    }
}
function FormComponent_div_38_div_33_nz_option_4_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const itOption_r338 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", itOption_r338.index)("nzLabel", itOption_r338.itemName);
    }
}
function FormComponent_div_38_div_33_Template(rf, ctx) {
    if (rf & 1) {
        const _r341 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 26);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "span", 46);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2, "\u68C0\u67E5\u7ED3\u679C\u663E\u793A\u70ED\u533A\uFF1A");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "nz-select", 105);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_33_Template_nz_select_ngModelChange_3_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r341); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return it_r8.linkResultShowHotZoneIndex = $event; })("ngModelChange", function FormComponent_div_38_div_33_Template_nz_select_ngModelChange_3_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r341); const ctx_r342 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2); return ctx_r342.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](4, FormComponent_div_38_div_33_nz_option_4_Template, 1, 2, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit;
        const ctx_r21 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r8.linkResultShowHotZoneIndex);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx_r21.item.hotZoneItemArr);
    }
}
function FormComponent_div_38_div_34_Template(rf, ctx) {
    if (rf & 1) {
        const _r346 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 26);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "span", 46);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2, "\u5206\u6570\uFF1A");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "input", 104);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_div_34_Template_input_ngModelChange_3_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r346); const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit; return it_r8.score = $event; })("blur", function FormComponent_div_38_div_34_Template_input_blur_3_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r346); const ctx_r347 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](2); return ctx_r347.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const it_r8 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]().$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r8.score);
    }
}
function FormComponent_div_38_Template(rf, ctx) {
    if (rf & 1) {
        const _r350 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 44);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "span", 45);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "div", 26);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "span", 46);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](5, "\u70ED\u533A\u5185\u5BB9\u7C7B\u578B\uFF1A");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "nz-select", 47);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_38_Template_nz_select_ngModelChange_6_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r350); const it_r8 = ctx.$implicit; return it_r8.hotZoneType = $event; })("ngModelChange", function FormComponent_div_38_Template_nz_select_ngModelChange_6_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r350); const ctx_r351 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r351.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](7, "nz-option", 48);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](8, "nz-option", 49);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](9, "nz-option", 50);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](10, "nz-option", 51);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](11, "nz-option", 52);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](12, "nz-option", 53);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](13, "nz-option", 54);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](14, "nz-option", 55);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](15, "nz-option", 56);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](16, "nz-option", 57);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](17, "nz-option", 58);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](18, "nz-option", 59);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](19, "nz-option", 60);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](20, "nz-option", 61);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](21, "nz-option", 62);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](22, FormComponent_div_38_label_22_Template, 2, 1, "label", 63);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](23, FormComponent_div_38_div_23_Template, 23, 4, "div", 64);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](24, FormComponent_div_38_div_24_Template, 17, 10, "div", 64);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](25, FormComponent_div_38_div_25_Template, 2, 1, "div", 65);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](26, FormComponent_div_38_div_26_Template, 2, 1, "div", 65);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](27, FormComponent_div_38_div_27_Template, 10, 1, "div", 66);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](28, FormComponent_div_38_div_28_Template, 8, 1, "div", 66);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](29, FormComponent_div_38_div_29_Template, 12, 1, "div", 66);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](30, FormComponent_div_38_div_30_Template, 18, 8, "div", 66);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](31, FormComponent_div_38_div_31_Template, 5, 2, "div", 66);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](32, FormComponent_div_38_div_32_Template, 5, 2, "div", 66);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](33, FormComponent_div_38_div_33_Template, 5, 2, "div", 66);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](34, FormComponent_div_38_div_34_Template, 4, 1, "div", 66);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](35, "button", 67);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzOnConfirm", function FormComponent_div_38_Template_button_nzOnConfirm_35_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r350); const i_r9 = ctx.index; const ctx_r352 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r352.copyHotZoneConfig(i_r9); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](36, "\u590D\u5236");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](37, "button", 68);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzOnConfirm", function FormComponent_div_38_Template_button_nzOnConfirm_37_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r350); const i_r9 = ctx.index; const ctx_r353 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r353.deleteHotZoneConfig(i_r9); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](38, "\u5220\u9664");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const it_r8 = ctx.$implicit;
        const i_r9 = ctx.index;
        const ctx_r3 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtextInterpolate"](i_r9 + 1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](4);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r8.hotZoneType);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", ctx_r3.TEXT_SELECT);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", ctx_r3.AUDIO_PLAY);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", ctx_r3.VIDEO_PLAY);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", ctx_r3.HOT_ZONE_RADIO);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", ctx_r3.HOT_ZONE_CHECKBOX);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", ctx_r3.TEXTINPUT);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", ctx_r3.CONNECTION);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", ctx_r3.RIGHT_OR_WRONG);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", ctx_r3.CROSSWORD_PUZZLE);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", ctx_r3.SORT_WORDS);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", ctx_r3.PRONUNCIATION_ASSESSMENT);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", ctx_r3.CONNECTION_CHOICE);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", ctx_r3.TEXTINPUT_GROUP);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", ctx_r3.DRAWING);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", ctx_r3.IMAGE_SELECT);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r3.TEXT_SELECT);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r3.TEXT_SELECT && it_r8.useSelectOptionList);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType != "" && it_r8.hotZoneType != ctx_r3.AUDIO_PLAY && it_r8.hotZoneType != ctx_r3.VIDEO_PLAY && it_r8.hotZoneType != ctx_r3.DRAWING && it_r8.hotZoneType != ctx_r3.TEXTINPUT && it_r8.hotZoneType != ctx_r3.PRONUNCIATION_ASSESSMENT);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r3.AUDIO_PLAY);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r3.VIDEO_PLAY);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r3.HOT_ZONE_RADIO || it_r8.hotZoneType == ctx_r3.HOT_ZONE_CHECKBOX);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r3.HOT_ZONE_RADIO || it_r8.hotZoneType == ctx_r3.HOT_ZONE_CHECKBOX);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r3.RIGHT_OR_WRONG);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r3.TEXTINPUT || it_r8.hotZoneType == ctx_r3.PRONUNCIATION_ASSESSMENT);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType != "" && it_r8.hotZoneType != ctx_r3.CROSSWORD_PUZZLE && it_r8.hotZoneType != ctx_r3.HOT_ZONE_RADIO && it_r8.hotZoneType != ctx_r3.HOT_ZONE_CHECKBOX && it_r8.hotZoneType != ctx_r3.CONNECTION && it_r8.hotZoneType != ctx_r3.TEXT_SELECT && it_r8.hotZoneType != ctx_r3.RIGHT_OR_WRONG && it_r8.hotZoneType != ctx_r3.TEXTINPUT_GROUP);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r3.CROSSWORD_PUZZLE || it_r8.hotZoneType == ctx_r3.CONNECTION_CHOICE);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType == ctx_r3.HOT_ZONE_RADIO || it_r8.hotZoneType == ctx_r3.HOT_ZONE_CHECKBOX || it_r8.hotZoneType == ctx_r3.CONNECTION || it_r8.hotZoneType == ctx_r3.RIGHT_OR_WRONG || it_r8.hotZoneType == ctx_r3.CROSSWORD_PUZZLE || it_r8.hotZoneType == ctx_r3.SORT_WORDS || it_r8.hotZoneType == ctx_r3.PRONUNCIATION_ASSESSMENT || it_r8.hotZoneType == ctx_r3.CONNECTION_CHOICE);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngIf", it_r8.hotZoneType != "" && it_r8.hotZoneType != ctx_r3.AUDIO_PLAY && it_r8.hotZoneType != ctx_r3.VIDEO_PLAY && it_r8.hotZoneType != ctx_r3.DRAWING && it_r8.hotZoneType != ctx_r3.HOT_ZONE_CHECKBOX && it_r8.hotZoneType != ctx_r3.CONNECTION && it_r8.hotZoneType != ctx_r3.TEXT_SELECT && it_r8.hotZoneType != ctx_r3.RIGHT_OR_WRONG && it_r8.hotZoneType != ctx_r3.TEXTINPUT_GROUP);
    }
}
function FormComponent_div_45_nz_option_5_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const itOPtion_r358 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", itOPtion_r358.index)("nzLabel", itOPtion_r358.itemName);
    }
}
function FormComponent_div_45_nz_option_10_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const i_r360 = ctx.index;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", i_r360)("nzLabel", i_r360 + 1);
    }
}
function FormComponent_div_45_Template(rf, ctx) {
    if (rf & 1) {
        const _r362 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵgetCurrentView"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 106);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "div", 26);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](2, "span", 107);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](3, "\u5206\u6570\u663E\u793A\u70ED\u533A\uFF1A");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](4, "nz-select", 105);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_45_Template_nz_select_ngModelChange_4_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r362); const it_r354 = ctx.$implicit; return it_r354.linkHotZoneIndex = $event; })("ngModelChange", function FormComponent_div_45_Template_nz_select_ngModelChange_4_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r362); const ctx_r363 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r363.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](5, FormComponent_div_45_nz_option_5_Template, 1, 2, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "div", 26);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](7, "span", 107);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](8, "\u5305\u542B\u7684\u9898\u76EE\u5185\u5BB9(\u5E8F\u53F7)\uFF1A");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](9, "nz-select", 108);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_div_45_Template_nz_select_ngModelChange_9_listener($event) { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r362); const it_r354 = ctx.$implicit; return it_r354.linkHotZoneIndexArr = $event; })("ngModelChange", function FormComponent_div_45_Template_nz_select_ngModelChange_9_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r362); const ctx_r365 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r365.save(); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](10, FormComponent_div_45_nz_option_10_Template, 1, 2, "nz-option", 30);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](11, "button", 109);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzOnConfirm", function FormComponent_div_45_Template_button_nzOnConfirm_11_listener() { _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵrestoreView"](_r362); const i_r355 = ctx.index; const ctx_r366 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"](); return ctx_r366.deleteScoreConfig(i_r355); });
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](12, "\u5220\u9664");
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
    }
    if (rf & 2) {
        const it_r354 = ctx.$implicit;
        const ctx_r4 = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵnextContext"]();
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](4);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r354.linkHotZoneIndex);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx_r4.item.hotZoneItemArr);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](4);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", it_r354.linkHotZoneIndexArr);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx_r4.item.hotZoneConfigArr);
    }
}
function FormComponent_nz_option_54_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const item_r367 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", item_r367.value)("nzLabel", item_r367.label);
    }
}
function FormComponent_nz_option_59_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const itOPtion_r368 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", itOPtion_r368.index)("nzLabel", itOPtion_r368.itemName);
    }
}
function FormComponent_nz_option_64_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](0, "nz-option", 83);
    }
    if (rf & 2) {
        const itOPtion_r369 = ctx.$implicit;
        _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzValue", itOPtion_r369.index)("nzLabel", itOPtion_r369.itemName);
    }
}
let FormComponent = /*@__PURE__*/ (() => {
    class FormComponent {
        constructor(appRef, changeDetectorRef, nzMessageService, modal) {
            this.appRef = appRef;
            this.changeDetectorRef = changeDetectorRef;
            this.nzMessageService = nzMessageService;
            this.modal = modal;
            // 储存数据用
            this.saveKey = "OP72";
            // JSON粘贴数据模态框
            this.showPasteModal = false;
            // 直接设置JSON数据
            this.jsonData = "";
            // 不覆盖背景数据
            this.withoutBgData = false;
            // 快速创建热区的字符串
            this.fastHotZoneStr = "";
            // 显示配置检查模态框
            this.showConfigCheckModal = false;
            // 配置检查结果
            this.configCheckResult = "";
            // 题目类型
            this.TEXT_SELECT = "0";
            this.IMAGE_SELECT = "1";
            this.AUDIO_PLAY = "2";
            this.HOT_ZONE_RADIO = "3";
            this.HOT_ZONE_CHECKBOX = "4";
            this.TEXTINPUT = "5";
            this.CONNECTION = "6";
            this.PRONUNCIATION_ASSESSMENT = "7";
            this.RIGHT_OR_WRONG = "8";
            this.CROSSWORD_PUZZLE = "9";
            this.SORT_WORDS = "10";
            this.CONNECTION_CHOICE = "11";
            this.TEXTINPUT_GROUP = "12";
            this.VIDEO_PLAY = "13";
            this.DRAWING = "14";
            // 评分体系
            this.RS_15_5L_FAF = "0";
            this.RS_20_5L_FAF = "4";
            this.RS_25_5L_FAF = "1";
            this.RS_30_5L_FAF = "2";
            this.RS_40_5L_FAF = "5";
            this.RS_100_3L_FAF = "3";
            this.RS_120_3L_FAF = "6";
            // 评分体系 清单
            this.ratingSystemList = [
                { label: "15分 5段 - FAF", value: this.RS_15_5L_FAF },
                { label: "20分 5段 - FAF", value: this.RS_20_5L_FAF },
                { label: "25分 5段 - FAF", value: this.RS_25_5L_FAF },
                { label: "30分 5段 - FAF", value: this.RS_30_5L_FAF },
                { label: "40分 5段 - FAF", value: this.RS_40_5L_FAF },
                { label: "100分 3段 - FAF", value: this.RS_100_3L_FAF },
                { label: "120分 3段 - FAF", value: this.RS_120_3L_FAF },
            ];
            // 保存锁
            this.saveLock = true;
        }
        ngOnInit() {
            this.item = {};
            // 获取存储的数据
            window.courseware.getData((data) => {
                if (data) {
                    this.item = data;
                }
                this.changeDetectorRef.markForCheck();
                this.changeDetectorRef.detectChanges();
                this.refresh();
            }, this.saveKey);
        }
        saveHotZone(group, e) {
            const { bgItem, hotZoneItemArr } = e;
            group.bgItem = bgItem;
            group.hotZoneItemArr = hotZoneItemArr;
            this.save();
            this.nzMessageService.success('热区数据已保存');
        }
        // 快速创建热区
        handleFastCreatHotZoneItems() {
            this.fastHotZoneStr = this.fastHotZoneStr.replace(/，/g, ",");
            const hotZoneNames = this.fastHotZoneStr.split(",");
            hotZoneNames.forEach((hotZoneName, index) => {
                this.customHotZone["addHotZone"](hotZoneName);
            });
            this.fastHotZoneStr = "";
            this.nzMessageService.success('创建成功，需要保存热区');
        }
        // 添加热区配置
        addHotZoneConfig() {
            if (!this.item.hotZoneConfigArr) {
                this.item.hotZoneConfigArr = [];
            }
            this.item.hotZoneConfigArr.push({
                hotZoneType: "",
                linkHotZoneIndex: -1,
                audio_url: "",
                video_url: "",
                score: "0",
                unselectedStyle: "none",
                selectedStyle: "border",
                rightOrWrongStyleType: "symbol",
                inputText: "",
                keyWordMatch: false,
                isCaseInsensitive: false,
                openAnswer: false,
                useSelectOptionList: false,
                keyWordMatchInOrder: false,
                capitalizedFirstLetter: false,
                notAdaptContraction: false,
                textAlignLeft: false,
                selectOptionList: [],
                contentList: []
            });
            this.save();
        }
        // 添加热区配置
        deleteHotZoneConfig(index) {
            if (!this.item.hotZoneConfigArr) {
                this.item.hotZoneConfigArr = [];
                return;
            }
            this.item.hotZoneConfigArr.splice(index, 1);
            this.save();
        }
        // 复制一个内容配置
        copyHotZoneConfig(index) {
            const copyItem = JSON.parse(JSON.stringify(this.item.hotZoneConfigArr[index]));
            this.item.hotZoneConfigArr.splice(index, 0, copyItem);
            this.save();
        }
        // 添加热区内容配置
        addHotZoneConfigItem(it) {
            if (!it.contentList) {
                it.contentList = [];
            }
            it.contentList = [
                ...it.contentList,
                this.getDefaultConfigContentItem()
            ];
            this.save();
        }
        // 删除热区内容配置
        deleteHotZoneConfigItem(it, index) {
            if (!it.contentList) {
                it.contentList = [];
            }
            it.contentList.splice(index, 1);
            it.contentList = [
                ...it.contentList
            ];
            this.save();
        }
        // 添加文字选项
        addHotzoneSelectOption(it) {
            if (!it.selectOptionList) {
                it.selectOptionList = [];
            }
            it.selectOptionList = [
                ...it.selectOptionList,
                {
                    text: "", optionShowText: ""
                }
            ];
            this.save();
        }
        // 删除文字选项
        deleteHotzoneSelectOption(it, index) {
            if (!it.selectOptionList) {
                it.selectOptionList = [];
            }
            it.selectOptionList.splice(index, 1);
            it.selectOptionList = [
                ...it.selectOptionList
            ];
            this.save();
        }
        // 获取默认热区内容配置
        getDefaultConfigContentItem() {
            return {
                uuid: Object(uuid__WEBPACK_IMPORTED_MODULE_1__["v4"])(),
                text: "",
                optionShowText: "",
                image_url: "",
                hotZoneIndex: null,
                score: 0,
                isCorrect: false,
                isCheck: false,
                linkedShowText: "",
                selectStartHotZoneIndex: null,
                selectEndHotZoneIndex: null,
                selectEndHotZoneShowIndex: null,
                inputText: "",
                keyWordMatch: false,
                keyWordMatchInOrder: false,
                isCaseInsensitive: false,
                openAnswer: false,
                capitalizedFirstLetter: false,
                notAdaptContraction: false,
                textAlignLeft: false,
            };
        }
        // 文字选择题 是否 使用独立选项配置
        handleUserSelectOptionListChange(it) {
            // 新增的配置 修复已有模板缺少这个字段的问题 
            if (!it.selectOptionList) {
                it.selectOptionList = [];
            }
            this.save();
        }
        // 添加分数组
        addScoreConfig() {
            if (!this.item.scoreConfigArr) {
                this.item.scoreConfigArr = [];
            }
            this.item.scoreConfigArr.push({
                linkHotZoneIndex: -1
            });
            this.save();
        }
        // 删除分数组
        deleteScoreConfig(index) {
            if (!this.item.scoreConfigArr) {
                this.item.scoreConfigArr = [];
                return;
            }
            this.item.scoreConfigArr.splice(index, 1);
            this.save();
        }
        // 复制数据
        copyChangeData() {
            const jsonData = this.item;
            const oInput = document.createElement('input');
            oInput.value = JSON.stringify(jsonData);
            document.body.appendChild(oInput);
            oInput.select(); // 选择对象
            document.execCommand('Copy'); // 执行浏览器复制命令
            document.body.removeChild(oInput);
            this.nzMessageService.success('复制成功');
        }
        // 直接从JSON设置数据
        handlePasteData() {
            try {
                const data = JSON.parse(this.jsonData);
                if (this.withoutBgData) {
                    const bgItem = JSON.parse(JSON.stringify(this.item.bgItem));
                    data.bgItem = bgItem;
                }
                this.item = data;
                this.showPasteModal = false;
                this.nzMessageService.success('数据导入成功');
                this.save();
            }
            catch (e) {
                this.nzMessageService.error('导入失败，请检查是否是标准的JSON格式');
            }
        }
        // 点击检查配置
        handleConfigCheck() {
            this.configCheckResult = "";
            const hotZoneIndexErr = [];
            const scoreConfigErr = [];
            const otherInfo = [];
            let allScoreIndex = [];
            let totalScore = 0;
            this.item.scoreConfigArr.forEach(config => {
                if (Array.isArray(config.linkHotZoneIndexArr)) {
                    // 检查内容配置序号配置是否正确
                    allScoreIndex = allScoreIndex.concat(config.linkHotZoneIndexArr);
                    config.linkHotZoneIndexArr.forEach(hotZoneConfigIndex => {
                        const hotZoneConfg = this.item.hotZoneConfigArr[hotZoneConfigIndex];
                        if (hotZoneConfg != undefined) {
                            switch (hotZoneConfg.hotZoneType) {
                                // 文字选项检查
                                case this.TEXT_SELECT:
                                    hotZoneConfg.contentList.forEach((contentItem, contentIndex) => {
                                        // 分数检查
                                        if (contentItem.score != null && !isNaN(Number(contentItem.score)) && Number(contentItem.score) > 0) {
                                            totalScore += Number(contentItem.score);
                                        }
                                        else {
                                            scoreConfigErr.push(`内容${hotZoneConfigIndex + 1} - 内容清单${contentIndex + 1}: 分数配置为0或者有异常`);
                                        }
                                        // 热区配置检查
                                        if (contentItem.selectHotZoneIndex == null || contentItem.selectHotZoneIndex == undefined || contentItem.selectHotZoneIndex < 0) {
                                            hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1} - 内容清单${contentIndex + 1}: 关联热区为空`);
                                        }
                                    });
                                    break;
                                // 热区单选
                                case this.HOT_ZONE_RADIO:
                                    hotZoneConfg.contentList.forEach((contentItem, contentIndex) => {
                                        // 热区配置检查
                                        if (contentItem.selectHotZoneIndex == null || contentItem.selectHotZoneIndex == undefined || contentItem.selectHotZoneIndex < 0) {
                                            hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1} - 内容清单${contentIndex + 1}: 关联热区为空`);
                                        }
                                    });
                                    // 分数检查
                                    if (hotZoneConfg.score != null && !isNaN(Number(hotZoneConfg.score)) && Number(hotZoneConfg.score) > 0) {
                                        totalScore += Number(hotZoneConfg.score);
                                    }
                                    else {
                                        scoreConfigErr.push(`内容${hotZoneConfigIndex + 1}: 分数配置为0或者有异常`);
                                    }
                                    // 结果显示热区配置检查
                                    if (hotZoneConfg.linkResultShowHotZoneIndex == null || hotZoneConfg.linkResultShowHotZoneIndex == undefined || hotZoneConfg.linkResultShowHotZoneIndex < 0) {
                                        hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1}: 结果显示热区为空`);
                                    }
                                    break;
                                // 热区多选
                                case this.HOT_ZONE_CHECKBOX:
                                    hotZoneConfg.contentList.forEach((contentItem, contentIndex) => {
                                        // 分数检查
                                        if (contentItem.score != null && !isNaN(Number(contentItem.score)) && Number(contentItem.score) > 0) {
                                            totalScore += Number(contentItem.score);
                                        }
                                        else {
                                            scoreConfigErr.push(`内容${hotZoneConfigIndex + 1} - 内容清单${contentIndex + 1}: 分数配置为0或者有异常`);
                                        }
                                        // 热区配置检查
                                        if (contentItem.selectHotZoneIndex == null || contentItem.selectHotZoneIndex == undefined || contentItem.selectHotZoneIndex < 0) {
                                            hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1} - 内容清单${contentIndex + 1}: 关联热区为空`);
                                        }
                                    });
                                    // 结果显示热区配置检查
                                    if (hotZoneConfg.linkResultShowHotZoneIndex == null || hotZoneConfg.linkResultShowHotZoneIndex == undefined || hotZoneConfg.linkResultShowHotZoneIndex < 0) {
                                        hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1}: 结果显示热区为空`);
                                    }
                                    break;
                                // 文字输入
                                case this.TEXTINPUT:
                                    // 热区配置检查
                                    if (hotZoneConfg.linkHotZoneIndex == null || hotZoneConfg.linkHotZoneIndex == undefined || hotZoneConfg.linkHotZoneIndex < 0) {
                                        hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1}: 关联热区为空`);
                                    }
                                    // 分数检查
                                    if (hotZoneConfg.score != null && !isNaN(Number(hotZoneConfg.score)) && Number(hotZoneConfg.score) > 0) {
                                        totalScore += Number(hotZoneConfg.score);
                                    }
                                    else {
                                        scoreConfigErr.push(`内容${hotZoneConfigIndex + 1}: 分数配置为0或者有异常`);
                                    }
                                    break;
                                // 连线组
                                case this.CONNECTION:
                                    hotZoneConfg.contentList.forEach((contentItem, contentIndex) => {
                                        // 分数检查
                                        if (contentItem.score != null && !isNaN(Number(contentItem.score)) && Number(contentItem.score) > 0) {
                                            totalScore += Number(contentItem.score);
                                        }
                                        else {
                                            scoreConfigErr.push(`内容${hotZoneConfigIndex + 1} - 内容清单${contentIndex + 1}: 分数配置为0或者有异常`);
                                        }
                                        // 起点热区配置检查
                                        if (contentItem.selectStartHotZoneIndex == null || contentItem.selectStartHotZoneIndex == undefined || contentItem.selectStartHotZoneIndex < 0) {
                                            hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1} - 内容清单${contentIndex + 1}: 连线起点热区为空`);
                                        }
                                        // 终点热区配置检查
                                        if (contentItem.selectEndHotZoneIndex == null || contentItem.selectEndHotZoneIndex == undefined || contentItem.selectEndHotZoneIndex < 0) {
                                            hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1} - 内容清单${contentIndex + 1}: 连线终点热区为空`);
                                        }
                                    });
                                    // 结果显示热区配置检查
                                    if (hotZoneConfg.linkResultShowHotZoneIndex == null || hotZoneConfg.linkResultShowHotZoneIndex == undefined || hotZoneConfg.linkResultShowHotZoneIndex < 0) {
                                        hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1}: 结果显示热区为空`);
                                    }
                                    break;
                                // 判断对错
                                case this.RIGHT_OR_WRONG:
                                    hotZoneConfg.contentList.forEach((contentItem, contentIndex) => {
                                        // 分数检查
                                        if (contentItem.score != null && !isNaN(Number(contentItem.score)) && Number(contentItem.score) > 0) {
                                            totalScore += Number(contentItem.score);
                                        }
                                        else {
                                            scoreConfigErr.push(`内容${hotZoneConfigIndex + 1} - 内容清单${contentIndex + 1}: 分数配置为0或者有异常`);
                                        }
                                        // 热区配置检查
                                        if (contentItem.selectHotZoneIndex == null || contentItem.selectHotZoneIndex == undefined || contentItem.selectHotZoneIndex < 0) {
                                            hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1} - 内容清单${contentIndex + 1}: 关联热区为空`);
                                        }
                                    });
                                    // 结果显示热区配置检查
                                    if (hotZoneConfg.linkResultShowHotZoneIndex == null || hotZoneConfg.linkResultShowHotZoneIndex == undefined || hotZoneConfg.linkResultShowHotZoneIndex < 0) {
                                        hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1}: 结果显示热区为空`);
                                    }
                                    break;
                                // 纵横字谜
                                case this.CROSSWORD_PUZZLE:
                                    hotZoneConfg.contentList.forEach((contentItem, contentIndex) => {
                                        // 热区配置检查
                                        if (contentItem.selectHotZoneIndex == null || contentItem.selectHotZoneIndex == undefined || contentItem.selectHotZoneIndex < 0) {
                                            hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1} - 内容清单${contentIndex + 1}: 关联热区为空`);
                                        }
                                    });
                                    // 分数检查
                                    if (hotZoneConfg.score != null && !isNaN(Number(hotZoneConfg.score)) && Number(hotZoneConfg.score) > 0) {
                                        totalScore += Number(hotZoneConfg.score);
                                    }
                                    else {
                                        scoreConfigErr.push(`内容${hotZoneConfigIndex + 1}: 分数配置为0或者有异常`);
                                    }
                                    // 结果显示热区配置检查
                                    if (hotZoneConfg.linkResultShowHotZoneIndex == null || hotZoneConfg.linkResultShowHotZoneIndex == undefined || hotZoneConfg.linkResultShowHotZoneIndex < 0) {
                                        hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1}: 结果显示热区为空`);
                                    }
                                    break;
                                // 单词排序
                                case this.SORT_WORDS:
                                    // 分数检查
                                    if (hotZoneConfg.score != null && !isNaN(Number(hotZoneConfg.score)) && Number(hotZoneConfg.score) > 0) {
                                        totalScore += Number(hotZoneConfg.score);
                                    }
                                    else {
                                        scoreConfigErr.push(`内容${hotZoneConfigIndex + 1}: 分数配置为0或者有异常`);
                                    }
                                    // 关联热区配置检查
                                    if (hotZoneConfg.linkHotZoneIndex == null || hotZoneConfg.linkHotZoneIndex == undefined || hotZoneConfg.linkHotZoneIndex < 0) {
                                        hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1}: 关联热区为空`);
                                    }
                                    // 结果显示热区配置检查
                                    if (hotZoneConfg.linkResultShowHotZoneIndex == null || hotZoneConfg.linkResultShowHotZoneIndex == undefined || hotZoneConfg.linkResultShowHotZoneIndex < 0) {
                                        hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1}: 结果显示热区为空`);
                                    }
                                    break;
                                // 语音评测
                                case this.PRONUNCIATION_ASSESSMENT:
                                    // 分数检查
                                    if (hotZoneConfg.score != null && !isNaN(Number(hotZoneConfg.score)) && Number(hotZoneConfg.score) > 0) {
                                        totalScore += Number(hotZoneConfg.score);
                                    }
                                    else {
                                        scoreConfigErr.push(`内容${hotZoneConfigIndex + 1}: 分数配置为0或者有异常`);
                                    }
                                    // 关联热区配置检查
                                    if (hotZoneConfg.linkHotZoneIndex == null || hotZoneConfg.linkHotZoneIndex == undefined || hotZoneConfg.linkHotZoneIndex < 0) {
                                        hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1}: 关联热区为空`);
                                    }
                                    // 结果显示热区配置检查
                                    if (hotZoneConfg.linkResultShowHotZoneIndex == null || hotZoneConfg.linkResultShowHotZoneIndex == undefined || hotZoneConfg.linkResultShowHotZoneIndex < 0) {
                                        hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1}: 结果显示热区为空`);
                                    }
                                    break;
                                // 连线选择
                                case this.CONNECTION_CHOICE:
                                    // 分数检查
                                    if (hotZoneConfg.score != null && !isNaN(Number(hotZoneConfg.score)) && Number(hotZoneConfg.score) > 0) {
                                        totalScore += Number(hotZoneConfg.score);
                                    }
                                    else {
                                        scoreConfigErr.push(`内容${hotZoneConfigIndex + 1}: 分数配置为0或者有异常`);
                                    }
                                    // 关联热区配置检查
                                    if (hotZoneConfg.linkHotZoneIndex == null || hotZoneConfg.linkHotZoneIndex == undefined || hotZoneConfg.linkHotZoneIndex < 0) {
                                        hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1}: 关联热区为空`);
                                    }
                                    // 结果显示热区配置检查
                                    if (hotZoneConfg.linkResultShowHotZoneIndex == null || hotZoneConfg.linkResultShowHotZoneIndex == undefined || hotZoneConfg.linkResultShowHotZoneIndex < 0) {
                                        hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1}: 结果显示热区为空`);
                                    }
                                    hotZoneConfg.contentList.forEach((contentItem, contentIndex) => {
                                        // 热区配置检查
                                        if (contentItem.selectHotZoneIndex == null || contentItem.selectHotZoneIndex == undefined || contentItem.selectHotZoneIndex < 0) {
                                            hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1} - 内容清单${contentIndex + 1}: 关联热区为空`);
                                        }
                                    });
                                    break;
                                // 文字输入组
                                case this.TEXTINPUT_GROUP:
                                    hotZoneConfg.contentList.forEach((contentItem, contentIndex) => {
                                        // 分数检查
                                        if (contentItem.score != null && !isNaN(Number(contentItem.score)) && Number(contentItem.score) > 0) {
                                            totalScore += Number(contentItem.score);
                                        }
                                        else {
                                            scoreConfigErr.push(`内容${hotZoneConfigIndex + 1} - 内容清单${contentIndex + 1}: 分数配置为0或者有异常`);
                                        }
                                        // 热区配置检查
                                        if (contentItem.selectHotZoneIndex == null || contentItem.selectHotZoneIndex == undefined || contentItem.selectHotZoneIndex < 0) {
                                            hotZoneIndexErr.push(`内容${hotZoneConfigIndex + 1} - 内容清单${contentIndex + 1}: 关联热区为空`);
                                        }
                                    });
                                    break;
                                default: ;
                            }
                        }
                    });
                }
            });
            if (this.item.basicScore != null && !isNaN(Number(this.item.basicScore)) && Number(this.item.basicScore) > 0) {
                totalScore += Number(this.item.basicScore);
                otherInfo.push(`配置了基础分: ${this.item.basicScore}`);
            }
            if (this.item.ratingSystem) {
                const ratingSys = this.ratingSystemList.find(item => item.value == this.item.ratingSystem);
                if (ratingSys == undefined) {
                    otherInfo.push(`评分体系: 未知错误`);
                }
                else {
                    otherInfo.push(`评分体系: ${ratingSys.label}`);
                }
            }
            else {
                otherInfo.push(`评分体系: 空`);
            }
            // 取整 防止有很长的小数 - 有的分值是5.000000000000004这种
            let _totalScore = Math.floor(totalScore * 100) / 100;
            totalScore = parseFloat(_totalScore + "");
            this.item.hotZoneConfigArr.forEach((content, contentIndex) => {
                if (content.hotZoneType != this.AUDIO_PLAY && content.hotZoneType != this.VIDEO_PLAY && content.hotZoneType != this.DRAWING) {
                    if (allScoreIndex.indexOf(contentIndex) == -1) {
                        scoreConfigErr.push((`内容${contentIndex + 1}: 没有被配置到题目内容中，请检查分数配置`));
                    }
                }
            });
            if (hotZoneIndexErr.length == 0) {
                this.configCheckResult += "【热区配置检查】通过\n";
            }
            else {
                this.configCheckResult += `【热区配置检查】${hotZoneIndexErr.length}处\n`;
                this.configCheckResult += hotZoneIndexErr.join("\n");
            }
            if (scoreConfigErr.length == 0) {
                this.configCheckResult += "\n\n【分数配置检查】通过\n";
            }
            else {
                this.configCheckResult += `\n\n【分数配置检查】${scoreConfigErr.length}处\n`;
                this.configCheckResult += scoreConfigErr.join("\n");
            }
            if (otherInfo.length == 0) {
                this.configCheckResult += "\n\n【其他信息】无\n";
            }
            else {
                this.configCheckResult += `\n\n【其他信息】${otherInfo.length}条\n`;
                this.configCheckResult += otherInfo.join("\n");
            }
            this.configCheckResult += `\n\n总分：【${totalScore}】`;
        }
        // 点击跳转到页面底部
        handleClickScrollBottom() {
            window.scrollTo(0, document.documentElement.scrollHeight);
        }
        ngAfterViewInit() {
        }
        ngOnChanges() {
        }
        ngOnDestroy() {
        }
        /**
         * 储存图片数据
         * @param e
         */
        onImageUploadSuccess(e, key, item = null) {
            if (!item) {
                item = this.item;
            }
            item[key] = e.url;
            this.save();
        }
        /**
         * 储存音频数据
         * @param e
         */
        onAudioUploadSuccess(e, key, item = null) {
            if (item == null) {
                item = this.item;
            }
            item[key] = e.url;
            this.save();
        }
        onVideoUploadSuccess(e, key, item = null) {
            if (!item) {
                item = this.item;
            }
            item[key] = e.url;
            this.save();
        }
        /**
         * 储存数据
         */
        save() {
            if (this.saveLock) {
                console.warn("数据锁开启，修改未保存");
            }
            else {
                window.courseware.setData(this.item, null, this.saveKey);
                this.refresh();
                console.log(this.item);
            }
        }
        /**
         * 刷新 渲染页面
         */
        refresh() {
            setTimeout(() => {
                this.appRef.tick();
            }, 1);
        }
    }
    FormComponent.ɵfac = function FormComponent_Factory(t) { return new (t || FormComponent)(_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdirectiveInject"](_angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdirectiveInject"](_angular_core__WEBPACK_IMPORTED_MODULE_0__["ChangeDetectorRef"]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdirectiveInject"](ng_zorro_antd__WEBPACK_IMPORTED_MODULE_2__["NzMessageService"]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdirectiveInject"](ng_zorro_antd_modal__WEBPACK_IMPORTED_MODULE_3__["NzModalService"])); };
    FormComponent.ɵcmp = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdefineComponent"]({ type: FormComponent, selectors: [["app-form"]], viewQuery: function FormComponent_Query(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵstaticViewQuery"](_c0, true);
            }
            if (rf & 2) {
                var _t;
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵqueryRefresh"](_t = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵloadQuery"]()) && (ctx.customHotZone = _t.first);
            }
        }, features: [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵNgOnChangesFeature"]], decls: 90, vars: 23, consts: [[1, "model-content"], [2, "padding", "20px"], [2, "margin", "30px"], ["nz-button", "", "nzType", "primary", 3, "click"], ["nz-icon", "", "nzType", "vertical-align-bottom"], [2, "margin-top", "10px"], [2, "font-size", "16px", "border", "2px solid #ccc", "border-radius", "10px", "padding", "10px", "display", "flex", "height", "220px"], [2, "width", "200px", "height", "152px"], [3, "picUrl", "imageUploaded"], [2, "padding-left", "20px", "position", "relative", "height", "32px", "text-align", "center", "margin-top", "10px"], [2, "position", "absolute", "left", "5px", "height", "32px", "line-height", "32px"], [2, "display", "inline-block", "width", "100px", 3, "ngModel", "ngModelChange"], ["nzValue", "middle", "nzLabel", "\u5C45\u4E2D"], ["nzValue", "left", "nzLabel", "\u9760\u5DE6"], [2, "width", "200px", "height", "152px", "margin-left", "20px"], [3, "bgItem", "hotZoneItemArr", "save"], ["customHotZone", ""], [2, "font-size", "16px", "border", "2px solid #ccc", "border-radius", "10px", "padding", "10px 150px 10px 10px"], ["type", "text", "nz-input", "", 3, "ngModel", "ngModelChange"], ["nz-button", "", "nzType", "danger", 2, "position", "absolute", "right", "30px", "margin-right", "10px", 3, "disabled", "click"], ["nz-icon", "", "nzType", "import"], [2, "font-size", "16px", "border", "2px solid #ccc", "border-radius", "10px", "padding", "10px"], ["style", "border: 2px dashed #ddd; border-radius: 5px; padding: 10px 10px 50px 10px; margin-bottom: 10px; position: relative;", 4, "ngFor", "ngForOf"], ["nz-button", "", "nzType", "dashed", 1, "add-btn", 3, "click"], ["nz-icon", "", "nzType", "plus-circle", "nzTheme", "outline"], ["style", "border: 2px dashed #ddd; border-radius: 5px; padding: 10px; margin-bottom: 10px; position: relative;", 4, "ngFor", "ngForOf"], [2, "margin", "10px 10px"], [2, "display", "inline-block", "text-align", "right", "width", "100px"], ["type", "text", "nz-input", "", 2, "display", "inline-block", "width", "180px", 3, "ngModel", "ngModelChange", "blur"], ["nzShowSearch", "", "nzAllowClear", "", 2, "width", "180px", 3, "ngModel", "ngModelChange"], [3, "nzValue", "nzLabel", 4, "ngFor", "ngForOf"], [2, "margin-top", "50px", "padding-bottom", "100px"], [2, "width", "200px", "height", "50px", "border", "1px solid #ccc", "border-radius", "5px", "display", "flex", "align-items", "center", "justify-content", "center", "float", "left"], ["nz-checkbox", "", 3, "ngModel", "ngModelChange"], [2, "width", "200px", "height", "50px", "border", "1px solid #ccc", "border-radius", "5px", "display", "flex", "align-items", "center", "justify-content", "center", "float", "left", "margin-left", "10px"], ["nz-button", "", "nzType", "primary", 2, "float", "right", 3, "click"], ["nz-icon", "", "nzType", "copy"], ["nz-button", "", "nzType", "danger", 2, "float", "right", "margin-right", "10px", 3, "click"], ["nz-button", "", "nzType", "default", 2, "float", "right", "margin-right", "10px", 3, "click"], ["nz-icon", "", "nzType", "carry-out"], ["nzTitle", "\u4ECEJSON\u5BFC\u5165\u914D\u7F6E", 3, "nzVisible", "nzVisibleChange", "nzOnCancel", "nzOnOk"], ["nz-input", "", "rows", "20", "placeholder", "\u8BF7\u7C98\u8D34JSON\u6570\u636E", 3, "ngModel", "ngModelChange"], ["nzTitle", "\u914D\u7F6E\u68C0\u67E5", "nzOkText", "\u68C0\u67E5", "nzCancelText", "\u9000\u51FA", 3, "nzVisible", "nzVisibleChange", "nzOnCancel", "nzOnOk"], ["nz-input", "", "rows", "20", "placeholder", "", 3, "ngModel", "ngModelChange"], [2, "border", "2px dashed #ddd", "border-radius", "5px", "padding", "10px 10px 50px 10px", "margin-bottom", "10px", "position", "relative"], [2, "position", "absolute", "right", "50px", "top", "0px", "font-size", "42px", "font-weight", "bold"], [2, "display", "inline-block", "text-align", "right", "width", "150px"], [2, "width", "300px", 3, "ngModel", "ngModelChange"], ["nzLabel", "\u6587\u5B57\u9009\u9879", 3, "nzValue"], ["nzLabel", "\u64AD\u653E\u97F3\u9891", 3, "nzValue"], ["nzLabel", "\u64AD\u653E\u89C6\u9891(\u5F00\u53D1\u4E2D)", 3, "nzValue"], ["nzLabel", "\u70ED\u533A\u9009\u9879(\u5355\u9009)", 3, "nzValue"], ["nzLabel", "\u70ED\u533A\u9009\u9879(\u591A\u9009)", 3, "nzValue"], ["nzLabel", "\u6587\u5B57\u8F93\u5165", 3, "nzValue"], ["nzLabel", "\u8FDE\u7EBF\u7EC4", 3, "nzValue"], ["nzLabel", "\u5224\u65AD\u5BF9\u9519", 3, "nzValue"], ["nzLabel", "\u7EB5\u6A2A\u5B57\u8C1C", 3, "nzValue"], ["nzLabel", "\u5355\u8BCD\u6392\u5E8F", 3, "nzValue"], ["nzLabel", "\u8BED\u97F3\u8BC4\u6D4B", 3, "nzValue"], ["nzLabel", "\u8FDE\u7EBF\u9009\u62E9\u9898", 3, "nzValue"], ["nzLabel", "\u6587\u5B57\u8F93\u5165\u7EC4", 3, "nzValue"], ["nzLabel", "\u6D82\u8272\u9898(\u5F00\u53D1\u4E2D)", 3, "nzValue"], ["nzLabel", "\u56FE\u7247\u9009\u9879", "nzDisabled", "", 3, "nzValue"], ["nz-checkbox", "", "style", "margin-left: 10px;", 3, "ngModel", "ngModelChange", 4, "ngIf"], ["style", "padding: 10px 0 10px 150px;", 4, "ngIf"], ["style", "padding: 20px 0 10px 150px;", 4, "ngIf"], ["style", "margin: 10px 10px;", 4, "ngIf"], ["nz-button", "", "nzType", "primary", "nz-popconfirm", "", "nzPopconfirmTitle", "\u786E\u5B9A\u590D\u5236\u4E00\u4E2A\u5F53\u524D\u914D\u7F6E\u5417\uFF1F", "nzPopconfirmPlacement", "bottom", 2, "position", "absolute", "right", "80px", "bottom", "10px", 3, "nzOnConfirm"], ["nz-button", "", "nzType", "danger", "nz-popconfirm", "", "nzPopconfirmTitle", "\u5220\u9664\u540E\u4E0D\u53EF\u6062\u590D\uFF0C\u786E\u5B9A\u5220\u9664\u5417\uFF1F", "nzPopconfirmPlacement", "bottom", 2, "position", "absolute", "right", "10px", "bottom", "10px", 3, "nzOnConfirm"], ["nz-checkbox", "", 2, "margin-left", "10px", 3, "ngModel", "ngModelChange"], [2, "padding", "10px 0 10px 150px"], [2, "margin-bottom", "16px"], [2, "font-size", "14px", "color", "#000000d9"], ["nz-button", "", "nzSize", "small", "nzType", "primary", 2, "float", "right", 3, "click"], ["nz-icon", "", "nzType", "plus-circle"], [3, "nzData", "nzFrontPagination", "nzShowPagination"], ["contentTable", ""], ["nzWidth", "100px", "nzAlign", "center"], ["nzAlign", "center"], ["nzWidth", "150px", "nzAlign", "center"], [4, "ngFor", "ngForOf"], ["type", "text", "nz-input", "", 3, "ngModel", "ngModelChange", "blur"], ["nz-popconfirm", "", "nzPopconfirmTitle", "\u5220\u9664\u540E\u4E0D\u53EF\u6062\u590D\uFF0C\u786E\u5B9A\u5220\u9664\u5417?", 3, "nzOnConfirm"], [3, "nzValue", "nzLabel"], [3, "nzData", "nzFrontPagination", "nzShowPagination", 4, "ngIf"], ["nzAlign", "center", 4, "ngIf"], ["nzWidth", "100px", "nzAlign", "center", 4, "ngIf"], ["nzWidth", "10%", "nzAlign", "center"], [2, "width", "200px", "height", "112px"], ["nzWidth", "10%"], ["nzWidth", "100px"], ["type", "text", "nz-input", "", 2, "display", "inline-block", 3, "ngModel", "ngModelChange", "blur"], [2, "padding", "20px 0 10px 150px"], [3, "audioUrl", "audioUploaded"], [3, "videoUrl", "videoUploaded"], [3, "ngModel", "ngModelChange"], ["nz-radio", "", "nzValue", "none"], ["nz-radio", "", "nzValue", "mask"], ["nz-radio", "", "nzValue", "border"], ["nz-radio", "", "nzValue", "right"], ["nz-radio", "", "nzValue", "symbol"], ["nz-radio", "", "nzValue", "iconFace"], ["nz-radio", "", "nzValue", "textTF"], ["nz-radio", "", "nzValue", "textYesNo"], ["type", "text", "nz-input", "", 2, "display", "inline-block", "width", "300px", 3, "ngModel", "ngModelChange", "blur"], ["nzShowSearch", "", "nzAllowClear", "", 2, "width", "300px", 3, "ngModel", "ngModelChange"], [2, "border", "2px dashed #ddd", "border-radius", "5px", "padding", "10px", "margin-bottom", "10px", "position", "relative"], [2, "display", "inline-block", "text-align", "right", "width", "200px"], ["nzShowSearch", "", "nzAllowClear", "", "nzMode", "multiple", 2, "width", "300px", 3, "ngModel", "ngModelChange"], ["nz-button", "", "nzType", "danger", "nzDanger", "", "nz-popconfirm", "", "nzPopconfirmTitle", "\u5220\u9664\u540E\u4E0D\u53EF\u6062\u590D\uFF0C\u786E\u5B9A\u5220\u9664\u5417\uFF1F", "nzPopconfirmPlacement", "bottom", 2, "position", "absolute", "right", "10px", "bottom", "10px", 3, "nzOnConfirm"]], template: function FormComponent_Template(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](0, "div", 0);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](1, "div", 1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](2, "div", 2);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](3, "button", 3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function FormComponent_Template_button_click_3_listener() { return ctx.handleClickScrollBottom(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](4, "span", 4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](5, "\u5230\u9875\u9762\u5E95\u90E8");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](6, "h2", 5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](7, "\u9875\u5934-\u9875\u5C3E\u914D\u7F6E");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](8, "div", 6);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](9, "div", 7);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](10, "h5");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](11, "\u9875\u5934\u56FE\u7247:");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](12, "app-upload-image-with-preview", 8);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("imageUploaded", function FormComponent_Template_app_upload_image_with_preview_imageUploaded_12_listener($event) { return ctx.onImageUploadSuccess($event, "header_image_url", ctx.item); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](13, "div");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](14, "p", 9);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](15, "span", 10);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](16, "\u5BF9\u9F50:");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](17, "nz-select", 11);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_Template_nz_select_ngModelChange_17_listener($event) { return ctx.item.alignMode = $event; })("ngModelChange", function FormComponent_Template_nz_select_ngModelChange_17_listener() { return ctx.save(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](18, "nz-option", 12);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](19, "nz-option", 13);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](20, "div", 14);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](21, "h5");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](22, "\u9875\u5C3E\u56FE\u7247:");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](23, "app-upload-image-with-preview", 8);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("imageUploaded", function FormComponent_Template_app_upload_image_with_preview_imageUploaded_23_listener($event) { return ctx.onImageUploadSuccess($event, "footer_image_url", ctx.item); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](24, "h2");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](25, "\u70ED\u533A\u4F4D\u7F6E\u914D\u7F6E\uFF1A");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](26, "app-custom-hot-zone", 15, 16);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("save", function FormComponent_Template_app_custom_hot_zone_save_26_listener($event) { return ctx.saveHotZone(ctx.item, $event); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](28, "h2", 5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](29, "\u5FEB\u901F\u521B\u5EFA\u70ED\u533A\uFF1A");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](30, "div", 17);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](31, "input", 18);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_Template_input_ngModelChange_31_listener($event) { return ctx.fastHotZoneStr = $event; });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](32, "button", 19);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function FormComponent_Template_button_click_32_listener() { return ctx.handleFastCreatHotZoneItems(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](33, "i", 20);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](34, "\u521B\u5EFA");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](35, "h2", 5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](36, "\u70ED\u533A\u5185\u5BB9\u914D\u7F6E\uFF1A");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](37, "div", 21);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](38, FormComponent_div_38_Template, 39, 30, "div", 22);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](39, "button", 23);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function FormComponent_Template_button_click_39_listener() { return ctx.addHotZoneConfig(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](40, "i", 24);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](41, " \u6DFB\u52A0\u70ED\u533A\u5185\u5BB9\u914D\u7F6E ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](42, "h2", 5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](43, "\u5206\u6570\u914D\u7F6E\uFF1A");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](44, "div", 21);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](45, FormComponent_div_45_Template, 13, 4, "div", 25);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](46, "div", 26);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](47, "span", 27);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](48, "\u57FA\u7840\u5206\uFF1A");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](49, "input", 28);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_Template_input_ngModelChange_49_listener($event) { return ctx.item.basicScore = $event; })("blur", function FormComponent_Template_input_blur_49_listener() { return ctx.save(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](50, "div", 26);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](51, "span", 27);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](52, "\u8BC4\u5206\u4F53\u7CFB\uFF1A");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](53, "nz-select", 29);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_Template_nz_select_ngModelChange_53_listener($event) { return ctx.item.ratingSystem = $event; })("ngModelChange", function FormComponent_Template_nz_select_ngModelChange_53_listener() { return ctx.save(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](54, FormComponent_nz_option_54_Template, 1, 2, "nz-option", 30);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](55, "div", 26);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](56, "span", 27);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](57, "\u603B\u5206\u663E\u793A\uFF1A");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](58, "nz-select", 29);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_Template_nz_select_ngModelChange_58_listener($event) { return ctx.item.totalScoreHotZoneIndex = $event; })("ngModelChange", function FormComponent_Template_nz_select_ngModelChange_58_listener() { return ctx.save(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](59, FormComponent_nz_option_59_Template, 1, 2, "nz-option", 30);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](60, "div", 26);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](61, "span", 27);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](62, "\u63D0\u4EA4\u6309\u94AE\uFF1A");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](63, "nz-select", 29);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_Template_nz_select_ngModelChange_63_listener($event) { return ctx.item.submitHotZoneIndex = $event; })("ngModelChange", function FormComponent_Template_nz_select_ngModelChange_63_listener() { return ctx.save(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtemplate"](64, FormComponent_nz_option_64_Template, 1, 2, "nz-option", 30);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](65, "button", 23);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function FormComponent_Template_button_click_65_listener() { return ctx.addScoreConfig(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](66, "i", 24);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](67, " \u6DFB\u52A0\u5206\u6570\u7EC4\u914D\u7F6E ");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](68, "div", 31);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](69, "div", 32);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](70, "label", 33);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_Template_label_ngModelChange_70_listener($event) { return ctx.item.isDebug = $event; })("ngModelChange", function FormComponent_Template_label_ngModelChange_70_listener() { return ctx.save(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](71, "\u8C03\u8BD5\u6A21\u5F0F");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](72, "div", 34);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](73, "label", 33);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_Template_label_ngModelChange_73_listener($event) { return ctx.saveLock = $event; });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](74, "\u6570\u636E\u9501");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](75, "button", 35);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function FormComponent_Template_button_click_75_listener() { return ctx.copyChangeData(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](76, "i", 36);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](77, "\u590D\u5236\u6570\u636E\u8868\u5355");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](78, "button", 37);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function FormComponent_Template_button_click_78_listener() { return ctx.showPasteModal = true; });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](79, "i", 20);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](80, "\u4ECEJSON\u5BFC\u5165\u914D\u7F6E");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](81, "button", 38);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("click", function FormComponent_Template_button_click_81_listener() { return ctx.showConfigCheckModal = true; });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelement"](82, "i", 39);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](83, "\u914D\u7F6E\u68C0\u67E5");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](84, "nz-modal", 40);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzVisibleChange", function FormComponent_Template_nz_modal_nzVisibleChange_84_listener($event) { return ctx.showPasteModal = $event; })("nzOnCancel", function FormComponent_Template_nz_modal_nzOnCancel_84_listener() { return ctx.showPasteModal = false; })("nzOnOk", function FormComponent_Template_nz_modal_nzOnOk_84_listener() { return ctx.handlePasteData(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](85, "textarea", 41);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_Template_textarea_ngModelChange_85_listener($event) { return ctx.jsonData = $event; });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](86, "label", 33);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_Template_label_ngModelChange_86_listener($event) { return ctx.withoutBgData = $event; });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵtext"](87, "\u4E0D\u7C98\u8D34\u70ED\u533A\u80CC\u666F\u6570\u636E");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](88, "nz-modal", 42);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("nzVisibleChange", function FormComponent_Template_nz_modal_nzVisibleChange_88_listener($event) { return ctx.showConfigCheckModal = $event; })("nzOnCancel", function FormComponent_Template_nz_modal_nzOnCancel_88_listener() { return ctx.showConfigCheckModal = false; })("nzOnOk", function FormComponent_Template_nz_modal_nzOnOk_88_listener() { return ctx.handleConfigCheck(); });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementStart"](89, "textarea", 43);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵlistener"]("ngModelChange", function FormComponent_Template_textarea_ngModelChange_89_listener($event) { return ctx.configCheckResult = $event; });
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵelementEnd"]();
            }
            if (rf & 2) {
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](12);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("picUrl", ctx.item.header_image_url);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.item.alignMode);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](6);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("picUrl", ctx.item.footer_image_url);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("bgItem", ctx.item.bgItem)("hotZoneItemArr", ctx.item.hotZoneItemArr);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](5);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.fastHotZoneStr);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("disabled", ctx.fastHotZoneStr == "");
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](6);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx.item.hotZoneConfigArr);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](7);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx.item.scoreConfigArr);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.item.basicScore);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.item.ratingSystem);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx.ratingSystemList);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.item.totalScoreHotZoneIndex);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx.item.hotZoneItemArr);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](4);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.item.submitHotZoneIndex);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngForOf", ctx.item.hotZoneItemArr);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](6);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.item.isDebug);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](3);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.saveLock);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](11);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzVisible", ctx.showPasteModal);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.jsonData);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.withoutBgData);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](2);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("nzVisible", ctx.showConfigCheckModal);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵadvance"](1);
                _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵproperty"]("ngModel", ctx.configCheckResult);
            }
        }, directives: [ng_zorro_antd_button__WEBPACK_IMPORTED_MODULE_4__["NzButtonComponent"], ng_zorro_antd_icon__WEBPACK_IMPORTED_MODULE_5__["NzIconDirective"], _common_upload_image_with_preview_upload_image_with_preview_component__WEBPACK_IMPORTED_MODULE_6__["UploadImageWithPreviewComponent"], ng_zorro_antd_select__WEBPACK_IMPORTED_MODULE_7__["NzSelectComponent"], _angular_forms__WEBPACK_IMPORTED_MODULE_8__["NgControlStatus"], _angular_forms__WEBPACK_IMPORTED_MODULE_8__["NgModel"], ng_zorro_antd_select__WEBPACK_IMPORTED_MODULE_7__["NzOptionComponent"], _common_custom_hot_zone_custom_hot_zone_component__WEBPACK_IMPORTED_MODULE_9__["CustomHotZoneComponent"], _angular_forms__WEBPACK_IMPORTED_MODULE_8__["DefaultValueAccessor"], ng_zorro_antd_input__WEBPACK_IMPORTED_MODULE_10__["NzInputDirective"], _angular_common__WEBPACK_IMPORTED_MODULE_11__["NgForOf"], ng_zorro_antd_checkbox__WEBPACK_IMPORTED_MODULE_12__["NzCheckboxComponent"], ng_zorro_antd_modal__WEBPACK_IMPORTED_MODULE_3__["NzModalComponent"], _angular_common__WEBPACK_IMPORTED_MODULE_11__["NgIf"], ng_zorro_antd_popconfirm__WEBPACK_IMPORTED_MODULE_13__["NzPopconfirmDirective"], ng_zorro_antd_table__WEBPACK_IMPORTED_MODULE_14__["NzTableComponent"], ng_zorro_antd_table__WEBPACK_IMPORTED_MODULE_14__["NzTheadComponent"], ng_zorro_antd_table__WEBPACK_IMPORTED_MODULE_14__["NzTrDirective"], ng_zorro_antd_table__WEBPACK_IMPORTED_MODULE_14__["NzThComponent"], ng_zorro_antd_table__WEBPACK_IMPORTED_MODULE_14__["NzTbodyDirective"], ng_zorro_antd_table__WEBPACK_IMPORTED_MODULE_14__["NzTdComponent"], _common_audio_recorder_audio_recorder_component__WEBPACK_IMPORTED_MODULE_15__["AudioRecorderComponent"], _common_upload_video_upload_video_component__WEBPACK_IMPORTED_MODULE_16__["UploadVideoComponent"], ng_zorro_antd_radio__WEBPACK_IMPORTED_MODULE_17__["NzRadioGroupComponent"], ng_zorro_antd_radio__WEBPACK_IMPORTED_MODULE_17__["NzRadioComponent"]], styles: [".FormulaBoardContainer[_ngcontent-%COMP%]{\n  display: inline-block;\n}\n\n.model-content[_ngcontent-%COMP%] {\n  width: 100%;\n  height: 100%;\n\n}\n\n.radioPaire[_ngcontent-%COMP%] {\n  float: left;\n  margin: 3px;\n  border-style: dashed;\n  border-color: #000;\n  border-width: 1px;\n}\n\n.border[_ngcontent-%COMP%] {\n  border-radius: 20px;\n  border-style: dashed;\n  padding: 20px;\n  margin: 20px;\n  \n  \n  \n  \n}\n\n.border-lite[_ngcontent-%COMP%] {\n  border: 2px dashed #ddd;\n  border-radius: 0.5rem;\n  padding: 10px;\n  margin: 10px;\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc3R5bGUvY29tbW9uX21peGluLmNzcyIsInNyYy9hcHAvZm9ybS9mb3JtLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0NBRUM7O0FDQUQ7RUFDRSxxQkFBcUI7QUFDdkI7O0FBQ0E7RUFDRSxXQUFXO0VBQ1gsWUFBWTs7QUFFZDs7QUFFQTtFQUNFLFdBQVc7RUFDWCxXQUFXO0VBQ1gsb0JBQW9CO0VBQ3BCLGtCQUFrQjtFQUNsQixpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLGFBQWE7RUFDYixZQUFZO0VBQ1osaUJBQWlCO0VBQ2pCLHlCQUF5QjtFQUN6Qix1QkFBdUI7RUFDdkIsMkJBQTJCO0FBQzdCOztBQUdBO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFCQUFxQjtFQUNyQixhQUFhO0VBQ2IsWUFBWTtBQUNkIiwiZmlsZSI6InNyYy9hcHAvZm9ybS9mb3JtLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuZ2xvYmFsIGNzcyB0byBtaXhpblxuKi9cblxuXG5cbiIsIkBpbXBvcnQgJy4uL3N0eWxlL2NvbW1vbl9taXhpbi5jc3MnO1xuXG4uRm9ybXVsYUJvYXJkQ29udGFpbmVye1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4ubW9kZWwtY29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG5cbn1cblxuLnJhZGlvUGFpcmUge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAzcHg7XG4gIGJvcmRlci1zdHlsZTogZGFzaGVkO1xuICBib3JkZXItY29sb3I6ICMwMDA7XG4gIGJvcmRlci13aWR0aDogMXB4O1xufVxuXG4uYm9yZGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgYm9yZGVyLXN0eWxlOiBkYXNoZWQ7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIG1hcmdpbjogMjBweDtcbiAgLyp3aWR0aDogNTAwcHg7ICovXG4gIC8qLy9ib3JkZXItcmFkaXVzOiAyMHB4OyovXG4gIC8qLy9ib3JkZXItd2lkdGg6IDJweDsqL1xuICAvKi8vYm9yZGVyLWNvbG9yOiAjMDAwMDAwOyovXG59XG5cblxuLmJvcmRlci1saXRlIHtcbiAgYm9yZGVyOiAycHggZGFzaGVkICNkZGQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgcGFkZGluZzogMTBweDtcbiAgbWFyZ2luOiAxMHB4O1xufVxuIl19 */"] });
    return FormComponent;
})();



/***/ }),

/***/ "./src/app/pipes/background-image.pipe.ts":
/*!************************************************!*\
  !*** ./src/app/pipes/background-image.pipe.ts ***!
  \************************************************/
/*! exports provided: BackgroundImagePipe */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BackgroundImagePipe", function() { return BackgroundImagePipe; });
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/__ivy_ngcc__/fesm2015/core.js");


// const isInElectron = localStorage.getItem('electron');
let BackgroundImagePipe = /*@__PURE__*/ (() => {
    class BackgroundImagePipe {
        transform(value, coursewareSid) {
            // const ret = value ? `url(${value})` : '';
            const ret = value ? `url(${value})` : '';
            return ret;
            // let ret = value > 0 ? `url(/api/media-resource/${value}/file)` : '';
            // if (isInElectron && ElectronUtil.hasCached(coursewareSid, value)) {
            //   ret = `url(file://${APP_PATH}/courseware_cache/${coursewareSid}/${value})`;
            // }
            // return ret;
        }
    }
    BackgroundImagePipe.ɵfac = function BackgroundImagePipe_Factory(t) { return new (t || BackgroundImagePipe)(); };
    BackgroundImagePipe.ɵpipe = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdefinePipe"]({ name: "backgroundImage", type: BackgroundImagePipe, pure: true });
    return BackgroundImagePipe;
})();



/***/ }),

/***/ "./src/app/pipes/resource.pipe.ts":
/*!****************************************!*\
  !*** ./src/app/pipes/resource.pipe.ts ***!
  \****************************************/
/*! exports provided: ResourcePipe */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ResourcePipe", function() { return ResourcePipe; });
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/__ivy_ngcc__/fesm2015/core.js");


// const isInElectron = localStorage.getItem('electron');
let ResourcePipe = /*@__PURE__*/ (() => {
    class ResourcePipe {
        transform(pic_url, coursewareSid) {
            // return pic_url;
            if (pic_url && typeof pic_url === 'object') {
                return pic_url;
            }
            // console.log('resource', pic_url)
            return `${pic_url}?t=${Math.random()}`;
            // let ret = value ? `/api/resource/${value}/file` : '';
            // let ret = res_id ? `/resource/audio/${res_id}` : '';
            // if (isInElectron && ElectronUtil.hasCached(coursewareSid, res_id)) {
            //   ret = `file://${APP_PATH}/courseware_cache/${coursewareSid}/${res_id}`;
            // }
            // return ret;
        }
    }
    ResourcePipe.ɵfac = function ResourcePipe_Factory(t) { return new (t || ResourcePipe)(); };
    ResourcePipe.ɵpipe = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdefinePipe"]({ name: "resource", type: ResourcePipe, pure: true });
    return ResourcePipe;
})();



/***/ }),

/***/ "./src/app/pipes/time.pipe.ts":
/*!************************************!*\
  !*** ./src/app/pipes/time.pipe.ts ***!
  \************************************/
/*! exports provided: TimePipe */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TimePipe", function() { return TimePipe; });
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/__ivy_ngcc__/fesm2015/core.js");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash */ "./node_modules/lodash/lodash.js");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_1__);



let TimePipe = /*@__PURE__*/ (() => {
    class TimePipe {
        transform(value, args) {
            let ret = '00:00';
            if (lodash__WEBPACK_IMPORTED_MODULE_1__["isNumber"](value) && value > 0) {
                const minutes = Math.floor(value / 60);
                const seconds = Math.floor(value % 60);
                ret = lodash__WEBPACK_IMPORTED_MODULE_1__["padStart"](minutes, 2, '0') + ':' + lodash__WEBPACK_IMPORTED_MODULE_1__["padStart"](seconds, 2, '0');
            }
            return ret;
        }
    }
    TimePipe.ɵfac = function TimePipe_Factory(t) { return new (t || TimePipe)(); };
    TimePipe.ɵpipe = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵɵdefinePipe"]({ name: "time", type: TimePipe, pure: true });
    return TimePipe;
})();



/***/ }),

/***/ "./src/app/play/Unit.ts":
/*!******************************!*\
  !*** ./src/app/play/Unit.ts ***!
  \******************************/
/*! exports provided: MySprite, ColorSpr, GrayscaleSpr, BitMapLabel, Label, RichTextOld, RichText, LineRect, ShapeRect, ShapeCircle, ShapeRectNew, MyAnimation, tweenChange, createTween, tweenQueue, rotateItem, scaleItem, moveItem, endShow, hideItem, showItem, alphaItem, showStar, randomSortByArr, radianToAngle, angleToRadian, getPosByAngle, getAngleByPos, removeItemFromArr, circleMove, getPosDistance, delayCall, formatTime, getMinScale, jelly, jellyPop, showPopParticle, RandomInt, showShapeParticle, shake, getMaxScale, createSprite, MyVideo, InputView, ScrollView, between */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MySprite", function() { return MySprite; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ColorSpr", function() { return ColorSpr; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "GrayscaleSpr", function() { return GrayscaleSpr; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BitMapLabel", function() { return BitMapLabel; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Label", function() { return Label; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "RichTextOld", function() { return RichTextOld; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "RichText", function() { return RichText; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "LineRect", function() { return LineRect; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ShapeRect", function() { return ShapeRect; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ShapeCircle", function() { return ShapeCircle; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ShapeRectNew", function() { return ShapeRectNew; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MyAnimation", function() { return MyAnimation; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "tweenChange", function() { return tweenChange; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "createTween", function() { return createTween; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "tweenQueue", function() { return tweenQueue; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "rotateItem", function() { return rotateItem; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "scaleItem", function() { return scaleItem; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "moveItem", function() { return moveItem; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "endShow", function() { return endShow; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "hideItem", function() { return hideItem; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "showItem", function() { return showItem; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "alphaItem", function() { return alphaItem; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "showStar", function() { return showStar; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "randomSortByArr", function() { return randomSortByArr; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "radianToAngle", function() { return radianToAngle; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "angleToRadian", function() { return angleToRadian; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getPosByAngle", function() { return getPosByAngle; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getAngleByPos", function() { return getAngleByPos; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "removeItemFromArr", function() { return removeItemFromArr; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "circleMove", function() { return circleMove; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getPosDistance", function() { return getPosDistance; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "delayCall", function() { return delayCall; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "formatTime", function() { return formatTime; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getMinScale", function() { return getMinScale; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "jelly", function() { return jelly; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "jellyPop", function() { return jellyPop; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "showPopParticle", function() { return showPopParticle; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "RandomInt", function() { return RandomInt; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "showShapeParticle", function() { return showShapeParticle; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "shake", function() { return shake; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getMaxScale", function() { return getMaxScale; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "createSprite", function() { return createSprite; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MyVideo", function() { return MyVideo; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "InputView", function() { return InputView; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ScrollView", function() { return ScrollView; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "between", function() { return between; });
/* harmony import */ var _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tweenjs/tween.js */ "./node_modules/@tweenjs/tween.js/dist/tween.esm.js");

class Sprite {
    constructor(ctx = null) {
        this.x = 0;
        this.y = 0;
        this.color = '';
        this.radius = 0;
        this.alive = false;
        this.margin = 0;
        this.angle = 0;
        if (!ctx) {
            this.ctx = window.curCtx;
        }
        else {
            this.ctx = ctx;
        }
    }
    update($event) {
        this.draw();
    }
    draw() {
    }
}
class MySprite extends Sprite {
    constructor() {
        super(...arguments);
        this._width = 0;
        this._height = 0;
        this._anchorX = 0;
        this._anchorY = 0;
        this._offX = 0;
        this._offY = 0;
        this.scaleX = 1;
        this.scaleY = 1;
        this._alpha = 1;
        this.rotation = 0;
        this.visible = true;
        this.skewX = 0;
        this.skewY = 0;
        this._shadowFlag = false;
        this._shadowOffsetX = 0;
        this._shadowOffsetY = 0;
        this._shadowBlur = 5;
        this._radius = 0;
        this.children = [this];
        this.childDepandVisible = true;
        this.childDepandAlpha = false;
        this._z = 0;
        this._bitmapFlag = false;
        this.isCircleStyle = false; // 切成圆形
        this._maskSprArr = [];
        this._maskType = "destination-in"; // destination-out
    }
    init(imgObj = null, anchorX = 0.5, anchorY = 0.5) {
        if (imgObj) {
            this.img = imgObj;
            this.width = this.img.width;
            this.height = this.img.height;
            // this.img.setAttribute("crossOrigin",'Anonymous')
        }
        this.anchorX = anchorX;
        this.anchorY = anchorY;
    }
    setShowRect(rect) {
        this._showRect = rect;
    }
    setShadow(offX, offY, blur, color = 'rgba(0, 0, 0, 0.3)') {
        this._shadowFlag = true;
        this._shadowColor = color;
        this._shadowOffsetX = offX;
        this._shadowOffsetY = offY;
        this._shadowBlur = blur;
    }
    setRadius(r) {
        this._radius = r;
    }
    addMaskSpr(spr) {
        this._maskSprArr.push(spr);
        this._createOffCtx();
    }
    setMaskType(t) {
        this._maskType = t;
    }
    _createOffCtx() {
        if (!this._offCtx) {
            this._offCanvas = document.createElement('canvas'); // 创建一个新的canvas
            this._offCanvas.width = this.width; // 创建一个正好包裹住一个粒子canvas
            this._offCanvas.height = this.height;
            this._offCtx = this._offCanvas.getContext('2d');
        }
    }
    update($event = null) {
        if (!this.visible && this.childDepandVisible) {
            return;
        }
        this.draw();
    }
    draw() {
        this.ctx.save();
        this.drawInit();
        this.updateChildren();
        this.ctx.restore();
    }
    drawInit() {
        this.ctx.translate(this.x, this.y);
        this.ctx.rotate(this.rotation * Math.PI / 180);
        this.ctx.scale(this.scaleX, this.scaleY);
        this.ctx.globalAlpha = this.alpha;
        this.ctx.transform(1, this.skewX, this.skewY, 1, 0, 0);
    }
    drawSelf() {
        if (this._shadowFlag) {
            this.ctx.shadowOffsetX = this._shadowOffsetX;
            this.ctx.shadowOffsetY = this._shadowOffsetY;
            this.ctx.shadowBlur = this._shadowBlur;
            this.ctx.shadowColor = this._shadowColor;
        }
        else {
            this.ctx.shadowOffsetX = 0;
            this.ctx.shadowOffsetY = 0;
            this.ctx.shadowBlur = null;
            this.ctx.shadowColor = null;
        }
        if (this._radius) {
            const r = this._radius;
            const w = this.width;
            const h = this.height;
            this.ctx.beginPath();
            this._roundRect(-w / 2, -h / 2, w, h, r * 1 || 0);
            this.ctx.clip();
        }
        if (this.isCircleStyle) {
            this.ctx.beginPath();
            this.ctx.arc(0, 0, Math.max(this.width, this.height) / 2, 0, Math.PI * 2, false); // 圆形
            this.ctx.clip();
        }
        if (this.img) {
            if (this._showRect) {
                const rect = this._showRect;
                this.ctx.drawImage(this.img, rect.x, rect.y, rect.width, rect.height, this._offX + rect.x, this._offY + rect.y, rect.width, rect.height);
            }
            else {
                if (this._offCtx) {
                    this._offScreenRender();
                }
                else {
                    this.ctx.drawImage(this.img, this._offX, this._offY);
                }
            }
        }
    }
    _offScreenRender() {
        this._offCtx.save();
        this._offCtx.clearRect(0, 0, this.width, this.height);
        this._offCtx.drawImage(this.img, 0, 0);
        this._offCtx.globalCompositeOperation = this._maskType;
        if (this._maskSprArr && this._maskSprArr.length > 0) {
            for (let i = 0; i < this._maskSprArr.length; i++) {
                this._maskSprArr[i].ctx = this._offCtx;
                this._maskSprArr[i].update();
            }
        }
        this.ctx.drawImage(this._offCanvas, this._offX, this._offY);
        this._offCtx.restore();
    }
    _roundRect(x, y, w, h, r) {
        const min_size = Math.min(w, h);
        if (r > min_size / 2)
            r = min_size / 2;
        // 开始绘制
        const ctx = this.ctx;
        ctx.beginPath();
        ctx.moveTo(x + r, y);
        ctx.arcTo(x + w, y, x + w, y + h, r);
        ctx.arcTo(x + w, y + h, x, y + h, r);
        ctx.arcTo(x, y + h, x, y, r);
        ctx.arcTo(x, y, x + w, y, r);
        ctx.closePath();
    }
    updateChildren() {
        if (this.children.length <= 0) {
            return;
        }
        for (const child of this.children) {
            if (child === this) {
                if (this.visible) {
                    this.drawSelf();
                }
            }
            else {
                child.update();
            }
        }
    }
    load(url, anchorX = 0.5, anchorY = 0.5) {
        return new Promise((resolve, reject) => {
            const img = new Image();
            img.onload = () => resolve(img);
            img.onerror = reject;
            img.src = url;
        }).then(img => {
            this.init(img, anchorX, anchorY);
            return img;
        });
    }
    addChild(child, z = 1) {
        if (this.children.indexOf(child) === -1) {
            this.children.push(child);
            child._z = z;
            child.parent = this;
        }
        this.children.sort((a, b) => {
            return a._z - b._z;
        });
        if (this.childDepandAlpha) {
            child.alpha = this.alpha;
        }
        child.ctx = this.ctx;
    }
    removeChild(child) {
        const index = this.children.indexOf(child);
        if (index !== -1) {
            this.children.splice(index, 1);
        }
    }
    removeChildren() {
        for (let i = 0; i < this.children.length; i++) {
            if (this.children[i]) {
                if (this.children[i] !== this) {
                    this.children.splice(i, 1);
                    i--;
                }
            }
        }
    }
    _changeChildAlpha(alpha) {
        for (const child of this.children) {
            if (child !== this) {
                child.alpha = alpha;
            }
        }
    }
    set bitmapFlag(v) {
        this._bitmapFlag = v;
    }
    get bitmapFlag() {
        return this._bitmapFlag;
    }
    set alpha(v) {
        this._alpha = v;
        if (this.childDepandAlpha) {
            this._changeChildAlpha(v);
        }
    }
    get alpha() {
        return this._alpha;
    }
    set width(v) {
        this._width = v;
        this.refreshAnchorOff();
    }
    get width() {
        return this._width;
    }
    set height(v) {
        this._height = v;
        this.refreshAnchorOff();
    }
    get height() {
        return this._height;
    }
    set anchorX(value) {
        this._anchorX = value;
        this.refreshAnchorOff();
    }
    get anchorX() {
        return this._anchorX;
    }
    set anchorY(value) {
        this._anchorY = value;
        this.refreshAnchorOff();
    }
    get anchorY() {
        return this._anchorY;
    }
    refreshAnchorOff() {
        this._offX = -this._width * this.anchorX;
        this._offY = -this._height * this.anchorY;
    }
    setScaleXY(value) {
        this.scaleX = this.scaleY = value;
    }
    getBoundingBox() {
        const getParentData = (item) => {
            let px = item.x;
            let py = item.y;
            let sx = item.scaleX;
            let sy = item.scaleY;
            const parent = item.parent;
            if (parent) {
                const obj = getParentData(parent);
                const _x = obj.px;
                const _y = obj.py;
                const _sx = obj.sx;
                const _sy = obj.sy;
                px = _x + item.x * _sx;
                py = _y + item.y * _sy;
                sx *= _sx;
                sy *= _sy;
            }
            return { px, py, sx, sy };
        };
        const data = getParentData(this);
        const x = data.px + this._offX * Math.abs(data.sx);
        const y = data.py + this._offY * Math.abs(data.sy);
        const width = this.width * Math.abs(data.sx);
        const height = this.height * Math.abs(data.sy);
        return { x, y, width, height };
    }
}
class ColorSpr extends MySprite {
    constructor() {
        super(...arguments);
        this.r = 0;
        this.g = 0;
        this.b = 0;
    }
    createGSCanvas() {
        if (!this.img) {
            return;
        }
        const rect = this.getBoundingBox();
        if (rect.width <= 1 || rect.height <= 1) {
            return;
        }
        const c = this.ctx.getImageData(rect.x, rect.y, rect.width, rect.height);
        for (let i = 0; i < c.height; i++) {
            for (let j = 0; j < c.width; j++) {
                const x = (i * 4) * c.width + (j * 4);
                const r = c.data[x];
                const g = c.data[x + 1];
                const b = c.data[x + 2];
                c.data[x] = this.r;
                c.data[x + 1] = this.g;
                c.data[x + 2] = this.b;
                // c.data[x] = c.data[x + 1] = c.data[x + 2] = (r + g + b) / 3 ;
                // // c.data[x + 3] = 255;
            }
        }
        this.ctx.putImageData(c, rect.x, rect.y, 0, 0, rect.width, rect.height);
    }
    drawSelf() {
        super.drawSelf();
        this.createGSCanvas();
    }
}
class GrayscaleSpr extends MySprite {
    constructor() {
        super(...arguments);
        this.grayScale = 120;
    }
    createGSCanvas() {
        if (!this.img) {
            return;
        }
        const rect = this.getBoundingBox();
        const c = this.ctx.getImageData(rect.x, rect.y, rect.width, rect.height);
        for (let i = 0; i < c.height; i++) {
            for (let j = 0; j < c.width; j++) {
                const x = (i * 4) * c.width + (j * 4);
                const r = c.data[x];
                const g = c.data[x + 1];
                const b = c.data[x + 2];
                // const a = c.data[x + 3];
                c.data[x] = c.data[x + 1] = c.data[x + 2] = this.grayScale; // (r + g + b) / 3;
                // c.data[x + 3] = 255;
            }
        }
        this.ctx.putImageData(c, rect.x, rect.y, 0, 0, rect.width, rect.height);
    }
    drawSelf() {
        super.drawSelf();
        this.createGSCanvas();
    }
}
class BitMapLabel extends MySprite {
    setText(data, text) {
        this.labelArr = [];
        const labelArr = [];
        const tmpArr = text.split('');
        let totalW = 0;
        let h = 0;
        for (const tmp of tmpArr) {
            const label = new MySprite(this.ctx);
            label.init(data[tmp], 0);
            this.addChild(label);
            labelArr.push(label);
            totalW += label.width;
            h = label.height;
        }
        this.width = totalW;
        this.height = h;
        let offX = -totalW / 2;
        for (const label of labelArr) {
            label.x = offX;
            offX += label.width;
        }
        this.labelArr = labelArr;
    }
}
class Label extends MySprite {
    constructor(ctx = null) {
        super(ctx);
        // fontSize:String = '40px';
        this.fontName = 'Verdana';
        this.textAlign = 'left';
        this.textBaseline = 'middle';
        this.fontSize = 40;
        this.fontColor = '#000000';
        this.fontWeight = 900;
        this.outline = 0;
        this.outlineColor = '#ffffff';
        // _shadowFlag = false;
        // _shadowColor;
        // _shadowOffsetX;
        // _shadowOffsetY;
        // _shadowBlur;
        this._outlineFlag = false;
        this.init();
    }
    refreshSize() {
        this.ctx.save();
        this.ctx.font = `${this.fontSize}px ${this.fontName}`;
        this.ctx.textAlign = this.textAlign;
        this.ctx.textBaseline = this.textBaseline;
        this.ctx.fontWeight = this.fontWeight;
        this._width = this.ctx.measureText(this.text).width;
        this._height = this.fontSize;
        this.refreshAnchorOff();
        this.ctx.restore();
    }
    setMaxSize(w) {
        this._maxWidth = w;
        this.refreshSize();
        if (this.width >= w) {
            this.scaleX *= w / this.width;
            this.scaleY *= w / this.width;
        }
    }
    show(callBack = null) {
        this.visible = true;
        if (this.alpha >= 1) {
            return;
        }
        const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(this)
            .to({ alpha: 1 }, 800)
            // .easing(TWEEN.Easing.Quadratic.Out) // Use an easing function to make the animation smooth.
            .onComplete(() => {
            if (callBack) {
                callBack();
            }
        })
            .start(); // Start the tween immediately.
    }
    // setShadow(offX = 0, offY = 2, blur = 2, color = 'rgba(0, 0, 0, 0.2)') {
    //
    //   this._shadowFlag = true;
    //   this._shadowColor = color;
    //   // 将阴影向右移动15px，向上移动10px
    //   this._shadowOffsetX = 5;
    //   this._shadowOffsetY = 5;
    //   // 轻微模糊阴影
    //   this._shadowBlur = 5;
    // }
    setOutline(width = 5, color = '#ffffff') {
        this._outlineFlag = true;
        this._outLineWidth = width;
        this._outLineColor = color;
    }
    drawText() {
        // console.log('in drawText', this.text);
        if (!this.text) {
            return;
        }
        // if (this._shadowFlag) {
        //
        //   this.ctx.shadowColor = this._shadowColor;
        //   // 将阴影向右移动15px，向上移动10px
        //   this.ctx.shadowOffsetX = this._shadowOffsetX;
        //   this.ctx.shadowOffsetY = this._shadowOffsetY;
        //   // 轻微模糊阴影
        //   this.ctx.shadowBlur = this._shadowBlur;
        // }
        this.ctx.font = `${this.fontSize}px ${this.fontName}`;
        this.ctx.textAlign = this.textAlign;
        this.ctx.textBaseline = 'middle';
        this.ctx.fontWeight = this.fontWeight;
        if (this._outlineFlag) {
            this.ctx.lineWidth = this._outLineWidth;
            this.ctx.strokeStyle = this._outLineColor;
            this.ctx.strokeText(this.text, 0, 0);
        }
        this.ctx.fillStyle = this.fontColor;
        if (this.outline > 0) {
            this.ctx.lineWidth = this.outline;
            this.ctx.strokeStyle = this.outlineColor;
            this.ctx.strokeText(this.text, 0, 0);
        }
        this.ctx.fillText(this.text, 0, 0);
    }
    drawSelf() {
        super.drawSelf();
        this.drawText();
    }
}
class RichTextOld extends Label {
    constructor() {
        super(...arguments);
        this.textArr = [];
        this.fontSize = 40;
    }
    setText(text, words) {
        let newText = text;
        for (const word of words) {
            const re = new RegExp(word, 'g');
            newText = newText.replace(re, `#${word}#`);
            // newText = newText.replace(word, `#${word}#`);
        }
        this.textArr = newText.split('#');
        this.text = newText;
        // this.setSize();
    }
    refreshSize() {
        this.ctx.save();
        this.ctx.font = `${this.fontSize}px ${this.fontName}`;
        this.ctx.textAlign = this.textAlign;
        this.ctx.textBaseline = 'middle';
        this.ctx.fontWeight = this.fontWeight;
        let curX = 0;
        for (const text of this.textArr) {
            const w = this.ctx.measureText(text).width;
            curX += w;
        }
        this.width = curX;
        this.height = this.fontSize;
        this.refreshAnchorOff();
        this.ctx.restore();
    }
    show(callBack = null) {
        // console.log(' in show ');
        this.visible = true;
        // this.alpha = 0;
        const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(this)
            .to({ alpha: 1 }, 800)
            // .easing(TWEEN.Easing.Quadratic.Out) // Use an easing function to make the animation smooth.
            .onComplete(() => {
            if (callBack) {
                callBack();
            }
        })
            .start(); // Start the tween immediately.
    }
    drawText() {
        // console.log('in drawText', this.text);
        if (!this.text) {
            return;
        }
        this.ctx.font = `${this.fontSize}px ${this.fontName}`;
        this.ctx.textAlign = this.textAlign;
        this.ctx.textBaseline = 'middle';
        this.ctx.fontWeight = 900;
        this.ctx.lineWidth = 5;
        this.ctx.strokeStyle = '#ffffff';
        // this.ctx.strokeText(this.text, 0, 0);
        this.ctx.fillStyle = '#000000';
        // this.ctx.fillText(this.text, 0, 0);
        let curX = 0;
        for (let i = 0; i < this.textArr.length; i++) {
            const w = this.ctx.measureText(this.textArr[i]).width;
            if ((i + 1) % 2 === 0) {
                this.ctx.fillStyle = '#c8171e';
            }
            else {
                this.ctx.fillStyle = '#000000';
            }
            this.ctx.fillText(this.textArr[i], curX, 0);
            curX += w;
        }
    }
}
class RichText extends Label {
    constructor(ctx) {
        super(ctx);
        this.topH = 0;
        this.disH = 10;
        this.offW = 10;
        this.row = 1;
        this.textBaseline = "middle";
        this.isShowWordBg = false;
        // this.dataArr = dataArr;
    }
    getLineNum() {
        this.drawSelf();
        return this.row;
    }
    getAreaHeight() {
        this.drawSelf();
        const tmpTextH = this.row * this.fontSize;
        const tmpDisH = (this.row - 1) * this.disH;
        return tmpTextH + tmpDisH;
    }
    getSubTextRectGroup(text, targetIndex = 0) {
        console.log('!!!wordBgData: ', this.wordBgData);
        const rectGroup = [];
        const subTextArr = text.split(' ');
        let baseIndex = targetIndex;
        console.log('subTextArr: ', subTextArr);
        for (let i = 0; i < subTextArr.length; i++) {
            const subText = subTextArr[i];
            if (!subText) {
                continue;
            }
            const subData = this.getSubTextRect(subText, baseIndex);
            if (subData) {
                console.log('baseIndex1 : ', baseIndex);
                rectGroup.push(subData);
                baseIndex = Number(subData.index) + subData.text.length;
                console.log('baseIndex2 : ', baseIndex);
            }
        }
        return rectGroup;
    }
    getSubTextRect(subText, targetIndex = 0) {
        subText = subText.trim();
        if (!subText) {
            return;
        }
        this.isShowWordBg = true;
        this.update();
        const tmpLabel = new RichText();
        tmpLabel.fontSize = this.fontSize;
        tmpLabel.fontName = this.fontName;
        tmpLabel.textAlign = this.textAlign;
        tmpLabel.textBaseline = this.textBaseline;
        tmpLabel.fontWeight = this.fontWeight;
        tmpLabel.width = this.width;
        tmpLabel.height = this.height;
        // console.log('subText: ', subText);
        // console.log('this.text: ', this.text);
        // console.log('targetIndex: ', targetIndex);
        // const indexArr = searchSubStr(this.text, subText);
        // console.log('indexArr: ', indexArr);
        // const index = indexArr[targetIndex];
        const index = this.text.indexOf(subText, targetIndex);
        // console.log('index: ', index);
        if (index == -1) {
            return;
        }
        // console.log('this.wordBgData: ', this.wordBgData);
        // const index = this.text.indexOf(subText);
        // console.log('!!!index: ', index);
        const data = this.wordBgData[index.toString()];
        // console.log('!!!wordBgData: ', this.wordBgData);
        console.log('!!!data: ', data);
        return data;
    }
    drawText() {
        if (!this.text) {
            return;
        }
        let curCtx = this.ctx;
        if (this._offCtx) {
            this._offCtx.save();
            this._offCtx.clearRect(0, 0, this.width, this.height);
            curCtx = this._offCtx;
        }
        curCtx.font = `${this.fontSize}px ${this.fontName}`;
        curCtx.textAlign = this.textAlign;
        curCtx.textBaseline = this.textBaseline;
        curCtx.fontWeight = this.fontWeight;
        curCtx.fillStyle = this.fontColor;
        const selfW = this.width * this.scaleX;
        const chr = this.text.split(' ');
        let temp = '';
        const row = [];
        const w = selfW - this.offW * 2;
        const disH = (this.fontSize + this.disH) * this.scaleY;
        let isPushWordData = false;
        if (this.isShowWordBg && !this.wordBgData) {
            this.wordBgData = {};
            isPushWordData = true;
        }
        let wordIndex = -1;
        for (const c of chr) {
            if (isPushWordData) {
            }
            if (c == '\n') {
                row.push(temp);
                temp = '';
            }
            else if (curCtx.measureText(temp).width < w && curCtx.measureText(temp + (c)).width <= w) {
                temp += ' ' + c;
            }
            else {
                row.push(temp);
                temp = ' ' + c;
            }
            if (isPushWordData) {
                wordIndex = this.text.indexOf(c, wordIndex + 1);
                const key = wordIndex.toString();
                const rectX = curCtx.measureText(temp).width;
                const rectY = (row.length) * disH / this.scaleY;
                const rectW = curCtx.measureText(c).width;
                const rectH = this.fontSize;
                this.wordBgData[key] = { rect: { x: rectX, y: rectY, width: rectW, height: rectH }, text: c, index: wordIndex };
            }
        }
        row.push(temp);
        this.row = row.length;
        const x = 0;
        const y = this.topH; //-row.length * disH / 2;
        // for (let b = 0 ; b < row.length; b++) {
        //   curCtx.strokeText(row[b], x, y + ( b + 1 ) * disH ); // 每行字体y坐标间隔20
        // }
        if (this._outlineFlag) {
            curCtx.lineWidth = this._outLineWidth;
            curCtx.strokeStyle = this._outLineColor;
            for (let b = 0; b < row.length; b++) {
                curCtx.strokeText(row[b], x, y + (b + 0) * disH / this.scaleY); // 每行字体y坐标间隔20
            }
            // curCtx.strokeText(this.text, 0, 0);
        }
        // curCtx.fillStyle = '#ff7600';
        for (let b = 0; b < row.length; b++) {
            curCtx.fillText(row[b], x, y + (b + 0) * disH / this.scaleY); // 每行字体y坐标间隔20
        }
        if (this._offCtx) {
            this._offCtx.globalCompositeOperation = this._maskType;
            if (this._maskSprArr && this._maskSprArr.length > 0) {
                for (let i = 0; i < this._maskSprArr.length; i++) {
                    this._maskSprArr[i].ctx = this._offCtx;
                    this._maskSprArr[i].update();
                }
                // console.log('aaaaa1');
            }
            this.ctx.drawImage(this._offCanvas, this._offX, this._offY);
            this._offCtx.restore();
        }
    }
    drawSelf() {
        super.drawSelf();
        this.drawText();
    }
}
class LineRect extends MySprite {
    constructor() {
        super(...arguments);
        this.lineColor = '#ffffff';
        this.lineWidth = 10;
    }
    setSize(w, h) {
        this.width = w;
        this.height = h;
    }
    drawLine() {
        this.ctx.beginPath();
        this.ctx.moveTo(this._offX, this._offY);
        this.ctx.lineTo(this._offX + this.width, this._offY);
        this.ctx.lineTo(this._offX + this.width, this._offY + this.height);
        this.ctx.lineTo(this._offX, this._offY + this.height);
        this.ctx.closePath();
        this.ctx.lineWidth = this.lineWidth;
        // this.ctx.fillStyle = "rgb(2,33,42)";  //指定填充颜色
        // this.ctx.fill();   //对多边形进行填充
        this.ctx.strokeStyle = this.lineColor; // "#ffffff";
        this.ctx.stroke();
    }
    drawSelf() {
        super.drawSelf();
        this.drawLine();
    }
}
class ShapeRect extends MySprite {
    constructor() {
        super(...arguments);
        this.fillColor = '#FF0000';
    }
    setSize(w, h) {
        this.width = w;
        this.height = h;
        // console.log('w:', w);
        // console.log('h:', h);
    }
    drawShape() {
        if (this._offCtx) {
            this._offCtx.save();
            this._offCtx.clearRect(0, 0, this.width, this.height);
            this._offCtx.fillStyle = this.fillColor;
            this._offCtx.fillRect(this._offX, this._offY, this.width, this.height);
            this._offCtx.globalCompositeOperation = this._maskType;
            if (this._maskSprArr && this._maskSprArr.length > 0) {
                for (let i = 0; i < this._maskSprArr.length; i++) {
                    this._maskSprArr[i].ctx = this._offCtx;
                    this._maskSprArr[i].update();
                }
            }
            this.ctx.drawImage(this._offCanvas, this._offX, this._offY);
            this._offCtx.restore();
        }
        else {
            this.ctx.fillStyle = this.fillColor;
            this.ctx.fillRect(this._offX, this._offY, this.width, this.height);
        }
    }
    drawSelf() {
        super.drawSelf();
        this.drawShape();
    }
}
class ShapeCircle extends MySprite {
    constructor() {
        super(...arguments);
        this.fillColor = '#FF0000';
        this.radius = 0;
    }
    setRadius(r) {
        this.anchorX = this.anchorY = 0.5;
        this.radius = r;
        this.width = r * 2;
        this.height = r * 2;
    }
    drawShape() {
        this.ctx.beginPath();
        this.ctx.fillStyle = this.fillColor;
        this.ctx.arc(0, 0, this.radius, 0, angleToRadian(360));
        this.ctx.fill();
    }
    drawSelf() {
        super.drawSelf();
        this.drawShape();
    }
}
class ShapeRectNew extends MySprite {
    constructor() {
        super(...arguments);
        this.radius = 0;
        this.fillColor = '#ffffff';
        this.strokeColor = '#000000';
        this.fill = true;
        this.stroke = false;
        this.lineWidth = 1;
    }
    setSize(w, h, r) {
        this.width = w;
        this.height = h;
        this.radius = r;
    }
    setOutLine(color, lineWidth) {
        this.stroke = true;
        this.strokeColor = color;
        this.lineWidth = lineWidth;
    }
    drawShape() {
        const ctx = this.ctx;
        const width = this.width;
        const height = this.height;
        const radius = this.radius;
        ctx.save();
        ctx.beginPath(0);
        // 从右下角顺时针绘制，弧度从0到1/2PI
        ctx.arc(width - radius + this._offX, height - radius + this._offY, radius, 0, Math.PI / 2);
        // 矩形下边线
        ctx.lineTo(radius + this._offX, height + this._offY);
        // 左下角圆弧，弧度从1/2PI到PI
        ctx.arc(radius + this._offX, height - radius + this._offY, radius, Math.PI / 2, Math.PI);
        // 矩形左边线
        ctx.lineTo(0 + this._offX, radius + this._offY);
        // 左上角圆弧，弧度从PI到3/2PI
        ctx.arc(radius + this._offX, radius + this._offY, radius, Math.PI, Math.PI * 3 / 2);
        // 上边线
        ctx.lineTo(width - radius + this._offX, 0 + this._offY);
        // 右上角圆弧
        ctx.arc(width - radius + this._offX, radius + this._offY, radius, Math.PI * 3 / 2, Math.PI * 2);
        // 右边线
        ctx.lineTo(width + this._offX, height - radius + this._offY);
        ctx.closePath();
        if (this.fill) {
            ctx.fillStyle = this.fillColor;
            ctx.fill();
        }
        if (this.stroke) {
            ctx.lineWidth = this.lineWidth;
            ctx.strokeStyle = this.strokeColor;
            ctx.stroke();
        }
        ctx.restore();
    }
    drawSelf() {
        super.drawSelf();
        this.drawShape();
    }
}
class MyAnimation extends MySprite {
    constructor() {
        super(...arguments);
        this.frameArr = [];
        this.frameIndex = 0;
        this.playFlag = false;
        this.curDelay = 0;
        this.loop = false;
        this.delayPerUnit = 0.07;
        this.restartFlag = false;
        this.reverseFlag = false;
    }
    addFrameByImg(img) {
        const spr = new MySprite(this.ctx);
        spr.init(img);
        this._refreshSize(img);
        spr.visible = false;
        this.addChild(spr);
        this.frameArr.push(spr);
        this.frameArr[this.frameIndex].visible = true;
    }
    addFrameByUrl(url) {
        const spr = new MySprite(this.ctx);
        spr.load(url).then(img => {
            this._refreshSize(img);
        });
        spr.visible = false;
        this.addChild(spr);
        this.frameArr.push(spr);
        this.frameArr[this.frameIndex].visible = true;
    }
    _refreshSize(img) {
        if (this.width < img.width) {
            this.width = img.width;
        }
        if (this.height < img.height) {
            this.height = img.height;
        }
    }
    play() {
        this.playFlag = true;
        this.lastDateTime = new Date().getTime();
    }
    stop() {
        this.playFlag = false;
    }
    replay() {
        this.restartFlag = true;
        this.play();
    }
    reverse() {
        this.reverseFlag = !this.reverseFlag;
        this.frameArr.reverse();
        this.frameIndex = 0;
    }
    showAllFrame() {
        for (const frame of this.frameArr) {
            frame.alpha = 1;
        }
    }
    hideAllFrame() {
        for (const frame of this.frameArr) {
            frame.alpha = 0;
        }
    }
    playEnd() {
        this.playFlag = false;
        this.curDelay = 0;
        this.frameArr[this.frameIndex].visible = true;
        if (this.playEndFunc) {
            const func = this.playEndFunc;
            this.playEndFunc = null;
            func();
        }
    }
    updateFrame() {
        if (this.frameArr[this.frameIndex]) {
            this.frameArr[this.frameIndex].visible = false;
        }
        this.frameIndex++;
        if (this.frameIndex >= this.frameArr.length) {
            if (this.loop) {
                this.frameIndex = 0;
            }
            else if (this.restartFlag) {
                this.restartFlag = false;
                this.frameIndex = 0;
            }
            else {
                this.frameIndex--;
                this.playEnd();
                return;
            }
        }
        this.frameArr[this.frameIndex].visible = true;
    }
    _updateDelay(delay) {
        this.curDelay += delay;
        if (this.curDelay < this.delayPerUnit) {
            return;
        }
        this.curDelay -= this.delayPerUnit;
        this.updateFrame();
    }
    _updateLastDate() {
        if (!this.playFlag) {
            return;
        }
        let delay = 0;
        if (this.lastDateTime) {
            delay = (new Date().getTime() - this.lastDateTime) / 1000;
        }
        this.lastDateTime = new Date().getTime();
        this._updateDelay(delay);
    }
    update($event = null) {
        super.update($event);
        this._updateLastDate();
    }
}
// --------===========  util func  =============-------------
function tweenChange(item, obj, time = 0.8, callBack = null, easing = null, update = null) {
    const tween = createTween(item, obj, time, callBack, easing, update);
    tween.start();
    return tween;
}
function createTween(item, obj, time = 0.8, callBack = null, easing = null, update = null) {
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item).to(obj, time * 1000);
    if (callBack) {
        tween.onComplete(() => {
            callBack();
        });
    }
    if (easing) {
        tween.easing(easing);
    }
    if (update) {
        tween.onUpdate((a, b) => {
            update(a, b);
        });
    }
    return tween;
}
function tweenQueue(arr) {
    const showOneTween = () => {
        const tween = arr.shift();
        if (arr.length > 0) {
            tween.onComplete(() => {
                showOneTween();
            });
        }
        tween.start();
    };
    showOneTween();
}
function rotateItem(item, rotation, time = 0.8, callBack = null, easing = null, loop = false) {
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item).to({ rotation }, time * 1000);
    if (callBack) {
        tween.onComplete(() => {
            callBack();
        });
    }
    else if (loop) {
        const speed = (rotation - item.rotation) / time;
        tween.onComplete(() => {
            item.rotation %= 360;
            rotateItem(item, item.rotation + speed * time, time, null, easing, true);
        });
    }
    if (easing) {
        tween.easing(easing);
    }
    tween.start();
}
function scaleItem(item, scale, time = 0.8, callBack = null, easing = null) {
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item).to({ scaleX: scale, scaleY: scale }, time * 1000);
    if (callBack) {
        tween.onComplete(() => {
            callBack();
        });
    }
    if (easing) {
        tween.easing(easing);
    }
    tween.start();
    return tween;
}
function moveItem(item, x, y, time = 0.8, callBack = null, easing = null) {
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item).to({ x, y }, time * 1000);
    if (callBack) {
        tween.onComplete(() => {
            callBack();
        });
    }
    if (easing) {
        tween.easing(easing);
    }
    tween.start();
    return tween;
}
function endShow(item, s = 1) {
    item.scaleX = item.scaleY = 0;
    item.alpha = 0;
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item)
        .to({ alpha: 1, scaleX: s, scaleY: s }, 800)
        .easing(_tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Easing.Elastic.Out) // Use an easing function to make the animation smooth.
        .onComplete(() => {
    })
        .start();
}
function hideItem(item, time = 0.8, callBack = null, easing = null) {
    if (item.alpha === 0) {
        return;
    }
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item)
        .to({ alpha: 0 }, time * 1000)
        // .easing(TWEEN.Easing.Quadratic.Out) // Use an easing function to make the animation smooth.
        .onComplete(() => {
        if (callBack) {
            callBack();
        }
    });
    if (easing) {
        tween.easing(easing);
    }
    tween.start();
}
function showItem(item, time = 0.8, callBack = null, easing = null) {
    if (item.alpha === 1) {
        if (callBack) {
            callBack();
        }
        return;
    }
    item.visible = true;
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item)
        .to({ alpha: 1 }, time * 1000)
        // .easing(TWEEN.Easing.Quadratic.Out) // Use an easing function to make the animation smooth.
        .onComplete(() => {
        if (callBack) {
            callBack();
        }
    });
    if (easing) {
        tween.easing(easing);
    }
    tween.start();
}
function alphaItem(item, alpha, time = 0.8, callBack = null, easing = null) {
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item)
        .to({ alpha }, time * 1000)
        // .easing(TWEEN.Easing.Quadratic.Out) // Use an easing function to make the animation smooth.
        .onComplete(() => {
        if (callBack) {
            callBack();
        }
    });
    if (easing) {
        tween.easing(easing);
    }
    tween.start();
}
function showStar(item, time = 0.8, callBack = null, easing = null) {
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item)
        .to({ alpha: 1, scale: 1 }, time * 1000)
        // .easing(TWEEN.Easing.Quadratic.Out) // Use an easing function to make the animation smooth.
        .onComplete(() => {
        if (callBack) {
            callBack();
        }
    });
    if (easing) {
        tween.easing(easing);
    }
    tween.start();
}
function randomSortByArr(arr) {
    const newArr = [];
    const tmpArr = arr.concat();
    while (tmpArr.length > 0) {
        const randomIndex = Math.floor(tmpArr.length * Math.random());
        newArr.push(tmpArr[randomIndex]);
        tmpArr.splice(randomIndex, 1);
    }
    return newArr;
}
function radianToAngle(radian) {
    return radian * 180 / Math.PI;
    // 角度 = 弧度 * 180 / Math.PI;
}
function angleToRadian(angle) {
    return angle * Math.PI / 180;
    // 弧度= 角度 * Math.PI / 180;
}
function getPosByAngle(angle, len) {
    const radian = angle * Math.PI / 180;
    const x = Math.sin(radian) * len;
    const y = Math.cos(radian) * len;
    return { x, y };
}
function getAngleByPos(px, py, mx, my) {
    const x = Math.abs(px - mx);
    const y = Math.abs(py - my);
    const z = Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2));
    const cos = y / z;
    const radina = Math.acos(cos); // 用反三角函数求弧度
    let angle = Math.floor(180 / (Math.PI / radina) * 100) / 100; // 将弧度转换成角度
    if (mx > px && my > py) { // 鼠标在第四象限
        angle = 180 - angle;
    }
    if (mx === px && my > py) { // 鼠标在y轴负方向上
        angle = 180;
    }
    if (mx > px && my === py) { // 鼠标在x轴正方向上
        angle = 90;
    }
    if (mx < px && my > py) { // 鼠标在第三象限
        angle = 180 + angle;
    }
    if (mx < px && my === py) { // 鼠标在x轴负方向
        angle = 270;
    }
    if (mx < px && my < py) { // 鼠标在第二象限
        angle = 360 - angle;
    }
    // console.log('angle: ', angle);
    return angle;
}
function removeItemFromArr(arr, item) {
    if (!arr || !item) {
        return;
    }
    const index = arr.indexOf(item);
    if (index !== -1) {
        arr.splice(index, 1);
    }
}
function circleMove(item, x0, y0, time = 2, addR = 360, xPer = 1, yPer = 1, callBack = null, easing = null) {
    const r = getPosDistance(item.x, item.y, x0, y0);
    let a = getAngleByPos(item.x, item.y, x0, y0);
    a += 90;
    const obj = { r, a };
    item._circleAngle = a;
    const targetA = a + addR;
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(item).to({ _circleAngle: targetA }, time * 1000);
    if (callBack) {
        tween.onComplete(() => {
            callBack();
        });
    }
    if (easing) {
        tween.easing(easing);
    }
    tween.onUpdate((item, progress) => {
        // console.log(item._circleAngle);
        const r = obj.r;
        const a = item._circleAngle;
        const x = x0 + r * xPer * Math.cos(a * Math.PI / 180);
        const y = y0 + r * yPer * Math.sin(a * Math.PI / 180);
        item.x = x;
        item.y = y;
        // obj.a ++;
    });
    tween.start();
}
function getPosDistance(sx, sy, ex, ey) {
    const _x = ex - sx;
    const _y = ey - sy;
    const len = Math.sqrt(Math.pow(_x, 2) + Math.pow(_y, 2));
    return len;
}
function delayCall(second, callback) {
    const tween = new _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Tween(this)
        .delay(second * 1000)
        .onComplete(() => {
        if (callback) {
            callback();
        }
    })
        .start();
}
function formatTime(fmt, date) {
    // "yyyy-MM-dd HH:mm:ss";
    const o = {
        'M+': date.getMonth() + 1,
        'd+': date.getDate(),
        'h+': date.getHours(),
        'm+': date.getMinutes(),
        's+': date.getSeconds(),
        'q+': Math.floor((date.getMonth() + 3) / 3),
        S: date.getMilliseconds() // 毫秒
    };
    if (/(y+)/.test(fmt)) {
        fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
    }
    for (const k in o) {
        if (new RegExp('(' + k + ')').test(fmt)) {
            fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1)
                ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length)));
        }
    }
    return fmt;
}
function getMinScale(item, maxW, maxH = null) {
    if (!maxH) {
        maxH = maxW;
    }
    const sx = maxW / item.width;
    const sy = maxH / item.height;
    const minS = Math.min(sx, sy);
    return minS;
}
function jelly(item, time = 0.7) {
    if (item.jellyTween) {
        _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].remove(item.jellyTween);
    }
    const t = time / 9;
    const baseSX = item.scaleX;
    const baseSY = item.scaleY;
    let index = 0;
    const run = () => {
        if (index >= arr.length) {
            item.jellyTween = null;
            return;
        }
        const data = arr[index];
        const t = tweenChange(item, { scaleX: data[0], scaleY: data[1] }, data[2], () => {
            index++;
            run();
        }, _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Easing.Sinusoidal.InOut);
        item.jellyTween = t;
    };
    const arr = [
        [baseSX * 1.1, baseSY * 0.9, t],
        [baseSX * 0.98, baseSY * 1.02, t * 2],
        [baseSX * 1.02, baseSY * 0.98, t * 2],
        [baseSX * 0.99, baseSY * 1.01, t * 2],
        [baseSX * 1.0, baseSY * 1.0, t * 2],
    ];
    run();
}
function jellyPop(item, time) {
    if (item.jellyTween) {
        _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].remove(item.jellyTween);
    }
    const t = time / 6;
    const baseSX = item.scaleX;
    const baseSY = item.scaleY;
    let index = 0;
    const run = () => {
        if (index >= arr.length) {
            item.jellyTween = null;
            return;
        }
        const data = arr[index];
        const t = tweenChange(item, { scaleX: data[0], scaleY: data[1] }, data[2], () => {
            index++;
            run();
        }, _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Easing.Sinusoidal.InOut);
        item.jellyTween = t;
    };
    const arr = [
        [baseSX * 1.3, baseSY * 1.3, t],
        [baseSX * 0.85, baseSY * 0.85, t * 1],
        [baseSX * 1.1, baseSY * 1.1, t * 1],
        [baseSX * 0.95, baseSY * 0.95, t * 1],
        [baseSX * 1.02, baseSY * 1.02, t * 1],
        [baseSX * 1, baseSY * 1, t * 1],
    ];
    item.setScaleXY(0);
    run();
}
function showPopParticle(img, pos, parent, num = 20, minLen = 40, maxLen = 80, showTime = 0.4) {
    for (let i = 0; i < num; i++) {
        const particle = new MySprite();
        particle.init(img);
        particle.x = pos.x;
        particle.y = pos.y;
        parent.addChild(particle);
        const randomR = 360 * Math.random();
        particle.rotation = randomR;
        const randomS = 0.3 + Math.random() * 0.7;
        particle.setScaleXY(randomS * 0.3);
        const randomX = Math.random() * 20 - 10;
        particle.x += randomX;
        const randomY = Math.random() * 20 - 10;
        particle.y += randomY;
        const randomL = minLen + Math.random() * (maxLen - minLen);
        const randomA = 360 * Math.random();
        const randomT = getPosByAngle(randomA, randomL);
        moveItem(particle, particle.x + randomT.x, particle.y + randomT.y, showTime, () => {
        }, _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Easing.Exponential.Out);
        // scaleItem(particle, 0, 0.6, () => {
        //
        // });
        scaleItem(particle, randomS, 0.6, () => {
        }, _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Easing.Exponential.Out);
        setTimeout(() => {
            hideItem(particle, 0.4, () => {
            }, _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Easing.Cubic.In);
        }, showTime * 0.5 * 1000);
    }
}
function RandomInt(a, b = 0) {
    let max = Math.max(a, b);
    let min = Math.min(a, b);
    return Math.floor(Math.random() * (max - min) + min);
}
function showShapeParticle(shapeType, shapeW, shapeH, pos, parent, num = 20, minLen = 40, maxLen = 80, showTime = 0.4) {
    const randomColorArr = [
        '#6996af',
        '#4da940',
        '#911b40',
    ];
    for (let i = 0; i < num; i++) {
        let particle;
        switch (shapeType) {
            case 'rect':
                particle = new ShapeRectNew();
                particle.setSize(shapeW, shapeH, 0);
                particle.fillColor = randomColorArr[RandomInt(0, randomColorArr.length)];
                break;
        }
        particle.x = pos.x;
        particle.y = pos.y;
        parent.addChild(particle);
        const randomR = 360 * Math.random();
        // particle.rotation = randomR;
        const randomS = 0.3 + Math.random() * 0.7;
        particle.setScaleXY(randomS * 0.3);
        const randomX = Math.random() * 20 - 10;
        particle.x += randomX;
        const randomY = Math.random() * 20 - 10;
        particle.y += randomY;
        const randomL = minLen + Math.random() * (maxLen - minLen);
        const randomA = 360 * Math.random();
        const randomT = getPosByAngle(randomA, randomL);
        moveItem(particle, particle.x + randomT.x, particle.y + randomT.y, showTime, () => {
        }, _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Easing.Exponential.Out);
        // scaleItem(particle, 0, 0.6, () => {
        //
        // });
        scaleItem(particle, randomS, 0.6, () => {
        }, _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Easing.Exponential.Out);
        setTimeout(() => {
            hideItem(particle, 0.4, () => {
            }, _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Easing.Cubic.In);
        }, showTime * 0.5 * 1000);
    }
}
function shake(item, time = 0.5, callback = null, rate = 1) {
    if (item.shakeTween) {
        return;
    }
    item.shakeTween = true;
    const offX = 15 * item.scaleX * rate;
    const offY = 15 * item.scaleX * rate;
    const baseX = item.x;
    const baseY = item.y;
    const easing = _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_0__["default"].Easing.Sinusoidal.InOut;
    const move4 = () => {
        moveItem(item, baseX, baseY, time / 4, () => {
            item.shakeTween = false;
            if (callback) {
                callback();
            }
        }, easing);
    };
    const move3 = () => {
        moveItem(item, baseX + offX / 4, baseY + offY / 4, time / 4, () => {
            move4();
        }, easing);
    };
    const move2 = () => {
        moveItem(item, baseX - offX / 4 * 3, baseY - offY / 4 * 3, time / 4, () => {
            move3();
        }, easing);
    };
    const move1 = () => {
        moveItem(item, baseX + offX, baseY + offY, time / 7.5, () => {
            move2();
        }, easing);
    };
    move1();
}
function getMaxScale(item, maxW, maxH) {
    const sx = maxW / item.width;
    const sy = maxH / item.height;
    const maxS = Math.max(sx, sy);
    return maxS;
}
function createSprite(key) {
    const image = window.curImages;
    const spr = new MySprite();
    spr.init(image.get(key));
    return spr;
}
class MyVideo extends MySprite {
    initVideoElement(videoElement) {
        this.element = videoElement;
        this.width = this.element.videoWidth;
        this.height = this.element.videoHeight;
        console.log('this.width: ', this.width);
        console.log('this.height: ', this.height);
        this.element.currentTime = 0.01;
    }
    drawSelf() {
        super.drawSelf();
        this.ctx.drawImage(this.element, 0, 0, this.width, this.height);
    }
}
class InputView extends MySprite {
    constructor(ctx = null) {
        super(ctx);
        this._isShowScroll = false;
        this._createInput();
    }
    set isShowScroll(v) {
        this._isShowScroll = v;
        if (!v) {
            this.element.style.overflow = 'hidden';
        }
    }
    get isShowScroll() {
        return this._isShowScroll;
    }
    _createInput() {
        const input = document.createElement('textarea');
        input.style.resize = 'none';
        input.style.border = 'none';
        input.style.position = 'absolute';
        input.onblur = this.onblur.bind(this);
        const div = document.getElementById('div_input');
        div.appendChild(input);
        this.element = input;
    }
    onblur() {
        if (this.callback) {
            this.callback(this.element.value);
        }
        this.callback = null;
        this.hide();
    }
    set text(v) {
        this.element.value = v;
    }
    show() {
        this.element.hidden = false;
        setTimeout(() => {
            this.element.focus();
        }, 1);
    }
    hide() {
        this.element.hidden = true;
    }
    setStyle(style) {
        for (let key in style) {
            console.log('key: ', key);
            console.log('value: ', style[key]);
            this.element.style[key] = style[key];
        }
        console.log('this.element: ``````', this.element);
    }
    refreshInputStyle() {
        this.element.style.left = this.x + 'px';
        this.element.style.top = this.y + 'px';
        this.element.style.width = this.width + 'px';
        this.element.style.height = this.height + 'px';
    }
}
let ScrollView = /*@__PURE__*/ (() => {
    class ScrollView extends MySprite {
        constructor(ctx = null) {
            super(ctx);
            this.barColor = '#fbe9b7';
            this.scrollSide = ScrollView.ScrollSideType.VERTICAL;
            this.itemArr = [];
            this._createOffCtx();
            this._createScrollBar();
        }
        _createOffCtx() {
            if (!this._offCtx) {
                this._offCanvas = document.createElement('canvas'); // 创建一个新的canvas
                this._offCanvas.width = this.width; // 创建一个正好包裹住一个粒子canvas
                this._offCanvas.height = this.height;
                this._offCtx = this._offCanvas.getContext('2d');
                this.content = new MySprite(this._offCtx);
            }
        }
        _createScrollBar() {
            this._scrollBar = new ShapeRectNew();
            this._scrollBar.anchorY = 0;
            this._scrollBar.anchorX = 1;
            this._scrollBar.setSize(10, 100, 5);
            this._scrollBar.fillColor = this.barColor;
            this.addChild(this._scrollBar);
        }
        setBgColor(color) {
            this.bgColor = color;
        }
        setShowSize(w, h) {
            this.width = w;
            this.height = h;
            if (this.content.width < this.width) {
                this.content.width = this._offCanvas.width = this.width;
            }
            if (this.content.height < this.height) {
                this.content.height = this._offCanvas.height = this.height;
            }
            this.refreshScrollBar();
        }
        setContentSize(w, h) {
            this.content.width = w;
            this.content.height = h;
            this._offCanvas.width = w;
            this._offCanvas.height = h;
        }
        addItem(sprite) {
            this.itemArr.push(sprite);
            this.content.addChild(sprite);
            sprite.ctx = this._offCtx;
            this.refreshContentSize();
        }
        refreshContentSize() {
            const children = this.itemArr;
            // console.log('children: ', children);
            let maxW = 0;
            let maxH = 0;
            for (let i = 0; i < children.length; i++) {
                const box = children[i].getBoundingBox();
                const curChild = children[i];
                // console.log('box: ', box);
                const boxEdgeX = curChild.x + (1 - curChild.anchorX) * curChild.width * curChild.scaleX;
                const boxEdgeY = curChild.y + (1 - curChild.anchorY) * curChild.height * curChild.scaleY;
                if (!children[i].colorRect) {
                    // const rect = new ShapeRectNew();
                    // rect.fillColor = '#ff0000';
                    // rect.setSize(curChild.width * curChild.scaleX, curChild.height * curChild.scaleY, 0);
                    // rect.alpha = 0.3;
                    // rect.x =  boxEdgeX - curChild.width * curChild.scaleX;
                    // rect.y =  boxEdgeY - curChild.height * curChild.scaleY;
                    // this.content.addChild(rect);
                    // children[i].colorRect = rect;
                }
                // console.log('boxEdgeY: ', boxEdgeY);
                if (boxEdgeX > maxW) {
                    maxW = boxEdgeX;
                }
                if (boxEdgeY > maxH) {
                    maxH = boxEdgeY;
                }
            }
            // console.log('maxW: ', maxW);s
            // console.log('maxH: ', maxH);
            // console.log('this.y: ', this.y);
            // console.log(this.getBoundingBox().height);
            // const box = this.getBoundingBox();
            this.content.width = maxW;
            this.content.height = maxH + 10; //+ 500;
            this.refreshScrollBar();
        }
        setScrollBarSize(w, h) {
            this.scorllBarWidth = w;
            this.scrollBarHeight = h;
        }
        setContentScale(s) {
            this.content.setScaleXY(1 / s);
            this.refreshScrollBar();
        }
        refreshScrollBar() {
            let w = this.scorllBarWidth;
            if (!w) {
                w = this.width / 50;
            }
            const rect1 = this.getBoundingBox();
            const rect2 = this.content.getBoundingBox();
            const sRate = rect1.height / this.height;
            let rate = rect1.height / rect2.height;
            // let rate = this.height / this.content.height;
            // let rate = this.height * this.scaleY / this.content.height / this.content.scaleY;
            if (rate >= 1) {
                this._scrollBar.visible = false;
                rate = 1;
            }
            else {
                this._scrollBar.visible = true;
            }
            const h = rate * this.height / sRate;
            const r = w / 2;
            this._scrollBar.setSize(w, h, r);
            this._scrollBar.x = this.width;
        }
        refreshScrollBarPos() {
            const rect1 = this.getBoundingBox();
            const rect2 = this.content.getBoundingBox();
            let rate = this.height / this.content.height;
            this._scrollBar.y = -this.content.y * (rate);
        }
        drawSelf() {
            super.drawSelf();
            this._offScreenRender();
        }
        onTouchStart(x, y) {
            if (!this._scrollBar.visible) {
                return;
            }
            this.touchStartPos = { x, y };
            this.touchStartContentPos = { x: this.content.x, y: this.content.y };
        }
        onTouchMove(x, y) {
            if (!this.touchStartPos) {
                return;
            }
            if (!this.touchStartContentPos) {
                return;
            }
            const offsetX = x - this.touchStartPos.x;
            const offsetY = y - this.touchStartPos.y;
            const rect = this.getBoundingBox();
            const rect2 = this.content.getBoundingBox();
            if (this.scrollSide == ScrollView.ScrollSideType.VERTICAL) {
                this.content.y = between(this.touchStartContentPos.y + offsetY, 0, this.height - this.content.height);
            }
            else {
                this.content.x = between(this.touchStartContentPos.x + offsetX, 0, this.width - this.content.width);
            }
            this.refreshScrollBarPos();
        }
        onTouchEnd(x, y) {
            this.touchStartPos = null;
            this.touchStartContentPos = null;
        }
        onWheelUp(offsetY) {
            if (!this._scrollBar.visible) {
                return;
            }
            const rect = this.getBoundingBox();
            if (this.scrollSide == ScrollView.ScrollSideType.VERTICAL) {
                this.content.y = between(this.content.y + 40, 0, this.height - this.content.height);
            }
            else {
                this.content.x = between(this.content.x + 40, 0, this.width - this.content.width);
            }
            this.refreshScrollBarPos();
        }
        onWheelDown(offsetY) {
            if (!this._scrollBar.visible) {
                return;
            }
            const rect = this.getBoundingBox();
            if (this.scrollSide == ScrollView.ScrollSideType.VERTICAL) {
                this.content.y = between(this.content.y - 40, 0, this.height - this.content.height);
            }
            else {
                this.content.x = between(this.content.x - 40, 0, this.width - this.content.width);
            }
            this.refreshScrollBarPos();
        }
        setContentSpr() {
        }
        _offScreenRender() {
            this._offCtx.save();
            this._offCtx.clearRect(0, 0, this._offCanvas.width, this._offCanvas.height);
            if (this.bgColor) {
                this._offCtx.fillStyle = this.bgColor;
                this._offCtx.fillRect(this._offX, this._offY, this.width, this.height);
                this._offCtx.globalCompositeOperation = "source-atop";
            }
            else {
                this._offCtx.fillStyle = '#ffffff';
                this._offCtx.fillRect(this._offX, this._offY, this.width, this.height);
                this._offCtx.globalCompositeOperation = "xor";
            }
            this.content.update();
            this.ctx.drawImage(this._offCanvas, this._offX, this._offY);
            // this.ctx.drawImage(this._offCanvas, this._offX, this._offY);
            // this.ctx.drawImage(this._offCanvas, this._offX, this._offY, this.content.width, this.content.height, this._offX + this.content.x, this._offY + this.content.y, this.width, this.height);
            this._offCtx.restore();
        }
    }
    ScrollView.ScrollSideType = {
        VERTICAL: 'VERTICAL',
        HORIZONTAL: 'HORIZONTAL',
    };
    return ScrollView;
})();
function between(a, b, c) {
    return [a, b, c].sort((x, y) => x - y)[1];
}
// --------------- custom class --------------------



/***/ }),

/***/ "./src/app/play/Util.js":
/*!******************************!*\
  !*** ./src/app/play/Util.js ***!
  \******************************/
/*! exports provided: loadFonts */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "loadFonts", function() { return loadFonts; });




async function loadFonts (fontName, fontFile) {


  // const font = new FontFace(
  //   "DroidSansFallback",
  //   "url(" + "../../assets/play/font/DroidSansFallback.ttf" + ")"
  // );
  
  try {
    console.log(location.href.split("#")[0] + "assets/play/font/" + fontFile);
    const font = new FontFace(
      fontName,
      "url(" + location.href.split("#")[0] + "../../assets/play/font/" + fontFile + ")"
    );
    
    console.log('start: ', new Date().getTime())
    await font.load();
    console.log('end: ', new Date().getTime())
    document.fonts.add(font);
    document.body.classList.add("fonts-loaded");

  } catch (error) {
    console.log(error);
  }
  
}


// --------------- custom class --------------------



/***/ }),

/***/ "./src/app/play/play.component.ts":
/*!****************************************!*\
  !*** ./src/app/play/play.component.ts ***!
  \****************************************/
/*! exports provided: PlayComponent */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PlayComponent", function() { return PlayComponent; });
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/__ivy_ngcc__/fesm2015/core.js");
/* harmony import */ var _Unit__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Unit */ "./src/app/play/Unit.ts");
/* harmony import */ var _resources__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./resources */ "./src/app/play/resources.js");
/* harmony import */ var rxjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! rxjs */ "./node_modules/rxjs/_esm2015/index.js");
/* harmony import */ var rxjs_operators__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! rxjs/operators */ "./node_modules/rxjs/_esm2015/operators/index.js");
/* harmony import */ var _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @tweenjs/tween.js */ "./node_modules/@tweenjs/tween.js/dist/tween.esm.js");
/* harmony import */ var _Util__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Util */ "./src/app/play/Util.js");
/* harmony import */ var _angular_common_http__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @angular/common/http */ "./node_modules/@angular/common/__ivy_ngcc__/fesm2015/http.js");
/* harmony import */ var _angular_platform_browser__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @angular/platform-browser */ "./node_modules/@angular/platform-browser/__ivy_ngcc__/fesm2015/platform-browser.js");











const _c0 = ["canvas"];
const _c1 = ["wrap"];
const _c2 = ["iframeContent"];
const _c3 = ["videoNode"];
const _c4 = ["tpl"];
const _c5 = ["videoContainer"];
function PlayComponent_ng_template_3_Template(rf, ctx) {
    if (rf & 1) {
        _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelement"](0, "video");
    }
}
let PlayComponent = /*@__PURE__*/ (() => {
    class PlayComponent {
        constructor(http, sanitizer, appRef, container) {
            this.http = http;
            this.sanitizer = sanitizer;
            this.appRef = appRef;
            this.container = container;
            this.canvasScale = 2;
            this.canvasWidth = 2388;
            this.canvasHeight = 1688;
            this.canvasBaseW = 2388;
            this.canvasBaseH = 1688;
            this.fps = 0;
            this.frametime = 0; // 上一帧动画的时间，   两帧时间差
            // 资源
            this.rawImages = new Map(_resources__WEBPACK_IMPORTED_MODULE_3__["res"]);
            this.rawAudios = new Map(_resources__WEBPACK_IMPORTED_MODULE_3__["resAudio"]);
            this.images = new Map();
            this.winResizeEventStream = new rxjs__WEBPACK_IMPORTED_MODULE_4__["Subject"]();
            this.audioObj = {};
            this.mapScale = 1;
            this.mapScaleMax = 1;
            this.canTouch = true;
            this.KEY = 'JM_MATH01';
            this.picIndex = 0;
            this.isTeacher = false;
            this.sentenceArr = [];
            this.submitCount = 0;
            this.TYPE_SHORT_ANSWER = 'short_answer';
            this.TYPE_SINGLE_CHOICE = 'single_choice';
            this.localStartTime = new Date().getTime();
            this.btnArr = [];
            this.btnDisH = 120;
            this.curMoveItem = null;
            this.downFlag = false;
            this.inputFontSize = 40;
            this.resultTextArr = [];
            this.templateArr = [];
            this.isUpdateStop = false;
        }
        set data(data) {
            this._data = data;
        }
        get data() {
            return this._data;
        }
        onResize(event) {
            this.winResizeEventStream.next();
        }
        ngOnInit() {
            return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(this, void 0, void 0, function* () {
                yield Object(_Util__WEBPACK_IMPORTED_MODULE_7__["loadFonts"])('DroidSansFallback', 'DroidSansFallback.ttf');
                yield Object(_Util__WEBPACK_IMPORTED_MODULE_7__["loadFonts"])('Aileron-Black', 'Aileron-Black.ttf');
                yield Object(_Util__WEBPACK_IMPORTED_MODULE_7__["loadFonts"])('Aileron-Bold', 'Aileron-Bold.ttf');
                const getData = window.courseware.getData;
                getData((data, aspect) => {
                    var _a, _b, _c;
                    if (((_c = (_b = (_a = window['air']) === null || _a === void 0 ? void 0 : _a.airClassInfo) === null || _b === void 0 ? void 0 : _b.user) === null || _c === void 0 ? void 0 : _c.classRole) == 'tea') {
                        this.isTeacher = true;
                    }
                    if (aspect) {
                        console.log('aspect : ', aspect);
                        this.initPageData(aspect);
                        this.initStoreData(aspect);
                    }
                    if (data && typeof data == 'object') {
                        this.data = { contentObj: data };
                    }
                    else {
                        this.initDefaultData();
                    }
                    console.log('data:', data);
                    if (!this.data) {
                        this.data.contentObj = {};
                    }
                    this.initAudio();
                    this.initImg();
                    this.preloadVideo();
                    this.initListener();
                }, this.KEY);
            });
        }
        initStoreData(aspect) {
            var _a;
            const storeDataStr = (_a = aspect) === null || _a === void 0 ? void 0 : _a.user_aspect;
            if (!storeDataStr) {
                this.storeData = {};
            }
            else {
                this.storeData = JSON.parse(storeDataStr);
            }
            console.log('this.storeData: ', this.storeData);
        }
        setStoreData(key, value, isSend = true) {
            if (this.storeData) {
                console.log('this.storeData: ', this.storeData);
                this.storeData[key] = value;
                if (isSend) {
                    this.sendStoreData();
                }
            }
        }
        getStoreData(key) {
            return this.storeData && this.storeData[key];
        }
        sendStoreData() {
            const data = this.storeData;
            if (window && window['courseware']) {
                let storeAspect = window['courseware'].storeAspect;
                if (storeAspect) {
                    storeAspect(data);
                }
            }
        }
        initPageData(aspect) {
            var _a, _b;
            const pageDataStr = (_b = (_a = aspect) === null || _a === void 0 ? void 0 : _a.page_aspect) === null || _b === void 0 ? void 0 : _b.pagedata;
            if (!pageDataStr) {
                this.pageData = {};
            }
            else {
                this.pageData = JSON.parse(pageDataStr);
            }
            console.log('this.pageData: ', this.pageData);
        }
        setPageData(key, value, isSend = true) {
            if (this.pageData) {
                console.log('this.pageData: ', this.pageData);
                this.pageData[key] = value;
                if (isSend) {
                    this.sendPageData();
                }
            }
        }
        getPageData(key) {
            if (this.pageData && this.pageData[key] != null) {
                return this.pageData[key];
            }
        }
        sendPageData() {
            const data = this.pageData;
            if (window && window['courseware']) {
                let storePageAspect = window['courseware'].storePageAspect;
                if (storePageAspect) {
                    storePageAspect(data);
                }
            }
        }
        initDefaultData() {
            const data = { "sentenceArr": [], "templateArr": [], "bg_url": "http://staging-teach.cdn.ireadabc.com/1aaccbaa8f3a32df099f3308feac49e7.png", "title": "new word", "bgItem": { "url": "http://staging-teach.cdn.ireadabc.com/e3672206ffa9736c449b64d05f688b30.png", "rect": { "x": 102.83, "y": 0, "width": 485.33, "height": 273 } }, "hotZoneItemArr": [{ "id": "1634265930328", "index": 0, "itemType": "rect", "fontScale": 0.53984375, "imgScale": 1, "imgSizeW": 0, "imgSizeH": 0, "mapScale": 0.53984375, "dragDot": { "x": 345.5, "y": 133.26904532304724 }, "gIdx": "0", "selectType": "JJ", "posX": 282.5, "posY": 52, "rect": { "x": 13.35, "y": 22.52, "width": 136.5, "height": 25.94 } }, { "id": "1634265945079", "index": 1, "itemType": "rect", "fontScale": 0.53984375, "imgScale": 1, "imgSizeW": 0, "imgSizeH": 0, "mapScale": 0.53984375, "dragDot": { "x": 345.5, "y": 133.26904532304724 }, "gIdx": "0", "selectType": "RB", "posX": 552.5, "posY": 59, "rect": { "x": 197.63, "y": 27.98, "width": 136.5, "height": 24.57 } }, { "id": "1634265955820", "index": 2, "itemType": "rect", "fontScale": 0.53984375, "imgScale": 1, "imgSizeW": 0, "imgSizeH": 0, "mapScale": 0.53984375, "dragDot": { "x": 345.5, "y": 133.26904532304724 }, "gIdx": "0", "selectType": "WP", "posX": 281.5, "posY": 129, "rect": { "x": 12.67, "y": 73.71, "width": 136.5, "height": 28.67 } }, { "id": "1634265962408", "index": 3, "itemType": "rect", "fontScale": 0.53984375, "imgScale": 1, "imgSizeW": 0, "imgSizeH": 0, "mapScale": 0.53984375, "dragDot": { "x": 345.5, "y": 133.26904532304724 }, "gIdx": "0", "selectType": "CD", "posX": 548.5, "posY": 132, "rect": { "x": 194.9, "y": 75.08, "width": 136.5, "height": 30.03 } }, { "id": "1634265967558", "index": 4, "itemType": "rect", "fontScale": 0.53984375, "imgScale": 1, "imgSizeW": 0, "imgSizeH": 0, "mapScale": 0.53984375, "dragDot": { "x": 345.5, "y": 133.26904532304724 }, "gIdx": "0", "selectType": "IN", "posX": 284.5, "posY": 213, "rect": { "x": 14.72, "y": 131.72, "width": 136.5, "height": 27.3 } }, { "id": "1634266027751", "index": 5, "itemType": "rect", "fontScale": 0.53984375, "imgScale": 1, "imgSizeW": 0, "imgSizeH": 0, "mapScale": 0.53984375, "dragDot": { "x": 345.5, "y": 133.26904532304724 }, "gIdx": "0", "selectType": "VB", "posX": 292.5, "posY": 320, "rect": { "x": 20.18, "y": 202.7, "width": 136.5, "height": 31.4 } }, { "id": "1634266044165", "index": 6, "itemType": "rect", "fontScale": 0.53984375, "imgScale": 1, "imgSizeW": 0, "imgSizeH": 0, "mapScale": 0.53984375, "dragDot": { "x": 345.5, "y": 133.26904532304724 }, "gIdx": "0", "selectType": "NN", "posX": 544.5, "posY": 308, "rect": { "x": 192.17, "y": 194.51, "width": 136.5, "height": 31.4 } }, { "id": "1634266050496", "index": 7, "itemType": "rect", "fontScale": 0.53984375, "imgScale": 1, "imgSizeW": 0, "imgSizeH": 0, "mapScale": 0.53984375, "dragDot": { "x": 345.5, "y": 133.26904532304724 }, "gIdx": "0", "selectType": "NN", "posX": 759.5, "posY": 323, "rect": { "x": 338.91, "y": 204.75, "width": 136.5, "height": 31.4 } }] };
            this.data = { contentObj: data };
        }
        ngOnDestroy() {
            window['curCtx'] = null;
            window.cancelAnimationFrame(this.animationId);
            this.gameEndFlag = true;
        }
        initData() {
            this.canvasWidth = this.wrap.nativeElement.clientWidth * this.canvasScale;
            this.canvasHeight = this.wrap.nativeElement.clientHeight * this.canvasScale;
            this.canvas.nativeElement.width = this.wrap.nativeElement.clientWidth * this.canvasScale;
            this.canvas.nativeElement.height = this.wrap.nativeElement.clientHeight * this.canvasScale;
            const sx = this.canvasWidth / this.canvasBaseW;
            const sy = this.canvasHeight / this.canvasBaseH;
            const s = Math.min(sx, sy);
            this.mapScale = s;
            console.log('this.mapScale: ', this.mapScale);
            this.mapScaleMax = Math.max(sx, sy);
            this.renderArr = [];
            this.topArr = [];
            this.isFirstQues = true;
            console.log(' in initData', this.data);
            this.userResultPic = null;
            this.userResultData = null;
            this.templateQuesType = this.data.contentObj.ques_type;
            this.quesNum = 0;
            this.uploadUrl = window.courseware.uploadUrl();
            window['air'].getUploadCallback = (url, data) => {
                this.uploadUrl = url;
            };
            this.canTouch = true;
            this.submitCount = 0;
            this.replaceSentenceText();
            this.safeDefaultUrl = this.sanitizer.bypassSecurityTrustResourceUrl('');
            this.resultAnswerArr = [];
            this.resultSv = null;
        }
        replaceSentenceText() {
            const arr = this.data.contentObj.sentenceArr;
            if (!arr) {
                console.error('没有数据');
                return;
            }
            this.sentenceArr = JSON.parse(JSON.stringify(arr));
            for (let i = 0; i < this.sentenceArr.length; i++) {
                const text = this.sentenceArr[i].text;
                this.sentenceArr[i].text = text.replace(/_/, "____________________");
            }
        }
        initAudio() {
            const contentObj = this.data.contentObj;
            if (!contentObj) {
                return;
            }
            // const addAudio = (key) => {
            //   const audioUrl = contentObj[key];
            //   if (audioUrl) {
            //     const audio = new Audio();
            //     audio.src = audioUrl;
            //     audio.load();
            //     this.audioObj[key] = audio;
            //   }
            // }
            //
            // for (let i = 0; i < 4; i ++) {
            //   const key = i + '_audio_url';
            //   addAudio(key);
            // }
            //
            // addAudio('audio_url');
            //
            const addUrlToAudioObj = (audioUrl) => {
                if (audioUrl) {
                    // console.log('audioUrl:', audioUrl);
                    const audio = new Audio();
                    audio.src = audioUrl;
                    audio.load();
                    this.audioObj[audioUrl] = audio;
                }
            };
            let arr = contentObj.hotZoneItemArr;
            addUrlToAudioObj(contentObj.title_audio_url);
            addUrlToAudioObj(contentObj.answer_obj.title_audio_url);
            addUrlToAudioObj(contentObj.choice_obj.title_audio_url);
            if (arr) {
                // console.log('arr: ', arr);
                for (let i = 0; i < arr.length; i++) {
                    addUrlToAudioObj(arr[i].audio_url);
                }
            }
            const optionArr = contentObj.optionArr;
            for (let i = 0; i < optionArr.length; i++) {
                addUrlToAudioObj(arr[i].audio_url);
            }
            const choiceQuesArr = contentObj.choiceQuesArr;
            if (choiceQuesArr) {
                for (let i = 0; i < choiceQuesArr.length; i++) {
                    addUrlToAudioObj(choiceQuesArr[i].title_audio_url);
                }
            }
            const audioObj = this.audioObj;
            const addOneAudio = (key, url, vlomue = 1, loop = false, callback = null) => {
                const audio = new Audio();
                audio.src = url;
                audio.load();
                audio.loop = loop;
                audio.volume = vlomue;
                audioObj[key] = audio;
                if (callback) {
                    audio.onended = () => {
                        callback();
                    };
                }
            };
            addOneAudio('click', this.rawAudios.get('click'), 1);
            addOneAudio('more', this.rawAudios.get('more'), 0.8);
            addOneAudio('submit', this.rawAudios.get('submit'), 0.8);
            // addOneAudio('cow_start', this.rawAudios.get('cow_start'), 1);
            // addOneAudio('eat', this.rawAudios.get('eat'), 1);
            // addOneAudio('grass', this.rawAudios.get('grass'), 1);
            // addOneAudio('happy', this.rawAudios.get('happy'), 1);
            // addOneAudio('right', this.rawAudios.get('right'), 1);
            // addOneAudio('wrong', this.rawAudios.get('wrong'), 1);
            //
            // const titleUrl = this.data.contentObj.title_audio_url;
            // if (titleUrl) {
            //
            //   this.titleAudio.src = titleUrl;
            //   this.titleAudio.load();
            // }
            // this.bgAudio.src = 'assets/bat-mail/music/bg.mp3';
            // this.bgAudio.load();
            // this.bgAudio.loop = true;
            // this.bgAudio.volume = 0.5;
            //
            // this.wrongAudio.src = 'assets/common/music/wrong.mp3';
            // this.wrongAudio.load();
            //
            // this.rightAudio.src = 'assets/common/music/right.mp3';
            // this.rightAudio.load();
            //
            // this.successAudio.src = 'assets/magic-hat/music/finish.mp3';
            // this.successAudio.load();
            //
            // this.successAudio.onended = () => {
            //   // this.showSuccessAudio();
            // };
        }
        preloadVideo() {
            this.videoObj = {};
            const addVideoUrl = (video_url) => {
                if (!video_url) {
                    return;
                }
                const videoElement = document.createElement('video');
                videoElement.src = video_url;
                this.videoContainer.nativeElement.appendChild(videoElement);
                console.log('tmpV: ', videoElement);
                const video = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MyVideo"]();
                video.initVideoElement(videoElement);
                video.setScaleXY(this.mapScale);
                video.element.src = video_url;
                video.element.load();
                this.videoObj[video_url] = video;
                video.element.addEventListener('canplaythrough', () => {
                    this.refreshVideoSize(video);
                });
            };
            const optionArr = this.data.contentObj.optionArr;
            for (let i = 0; i < optionArr.length; i++) {
                addVideoUrl(optionArr[i].video_url || '');
                const op2Arr = optionArr[i];
                for (let j = 0; j < op2Arr.length; j++) {
                    addVideoUrl(op2Arr[j].pic_url || '');
                }
            }
            const choiceQuesArr = this.data.contentObj.choiceQuesArr;
            for (let i = 0; i < choiceQuesArr.length; i++) {
                addVideoUrl(choiceQuesArr[i].video_url || '');
            }
        }
        initImg() {
            var _a;
            const contentObj = this.data.contentObj;
            if (contentObj) {
                const addPicUrl = (url) => {
                    if (url) {
                        this.rawImages.set(url, url);
                    }
                };
                let arr = contentObj.hotZoneItemArr;
                if (arr) {
                    for (let i = 0; i < arr.length; i++) {
                        console.log('arr[i].pic_url: ', arr[i].pic_url);
                        addPicUrl(arr[i].pic_url);
                    }
                }
                addPicUrl(((_a = contentObj.bgItem) === null || _a === void 0 ? void 0 : _a.url) || '');
                addPicUrl(contentObj.bg_url || '');
                addPicUrl(contentObj.ques_pic_url || '');
                addPicUrl(contentObj.title_pic_url || '');
                addPicUrl(contentObj.answer_obj.ques_pic_url || '');
                addPicUrl(contentObj.answer_obj.title_pic_url || '');
                addPicUrl(contentObj.choice_obj.ques_pic_url || '');
                addPicUrl(contentObj.choice_obj.title_pic_url || '');
                const choiceOptionArr = contentObj.choice_obj.optionArr;
                for (let i = 0; i < choiceOptionArr.length; i++) {
                    addPicUrl(choiceOptionArr[i].pic_url || '');
                    addPicUrl(choiceOptionArr[i].title_pic_url || '');
                    addPicUrl(choiceOptionArr[i].ques_pic_url);
                }
                const optionArr = contentObj.optionArr;
                for (let i = 0; i < optionArr.length; i++) {
                    addPicUrl(optionArr[i].pic_url || '');
                    addPicUrl(optionArr[i].title_pic_url || '');
                    addPicUrl(optionArr[i].ques_pic_url);
                    const optionArr2 = optionArr[i].optionArr;
                    for (let j = 0; j < optionArr2.length; j++) {
                        addPicUrl(optionArr2[j].pic_url || '');
                    }
                }
                const choiceQuesArr = this.data.contentObj.choiceQuesArr;
                for (let i = 0; i < choiceQuesArr.length; i++) {
                    addPicUrl(choiceQuesArr[i].title_pic_url || '');
                    addPicUrl(choiceQuesArr[i].ques_pic_url || '');
                    const optionArr2 = choiceQuesArr[i].optionArr;
                    for (let j = 0; j < optionArr2.length; j++) {
                        addPicUrl(optionArr2[j].pic_url || '');
                    }
                }
            }
            // this.initFontImg();
            // 预加载资源
            this.loadResources().then(() => {
                // this.setfontData();
                this.addServerListener();
                window['air'].hideAirClassLoading(this.KEY, this.data);
            });
        }
        loadEnd(cb) {
            this.init();
            this.update();
            cb();
        }
        addServerListener() {
            console.log(' in addServerListener');
            const air = window['air'];
            if (air) {
                air.onCourseInScreen = (next) => {
                    //各种逻辑
                    // this.showTemplateStartAnima();
                    console.log('in onCourseInScreen');
                    this.loadEnd(() => {
                        next();
                    });
                };
            }
            const c = window['courseware'];
            if (!c) {
                console.log(' window.courseware not exist !!!!!!!!');
                return;
            }
            c.onEvent('game_start', (data, next) => {
                this.loadEnd(_ => { });
                if (next) {
                    next();
                }
            });
        }
        sendServerEvent(key, data) {
            const c = window['courseware'];
            if (c) {
                c.sendEvent(key, data);
            }
        }
        gameStart() {
            // this.localStartTime = new Date().getTime();
            // console.log(' in gameStart ');
            // if (this.isTeacher) {
            //   this.sendBtn.visible = false;
            //   this.sendBtn.shadowSpr.visible = false;
            //   this.maskPic.visible = true;
            // } else {
            //   // this.changeBtnOn();
            //   this.maskPic.visible = false;
            // }
        }
        init() {
            this.initData();
            this.initCtx();
            this.initView();
        }
        initCtx() {
            this.ctx = this.canvas.nativeElement.getContext('2d');
            this.canvas.nativeElement.width = this.canvasWidth;
            this.canvas.nativeElement.height = this.canvasHeight;
            window['curCtx'] = this.ctx;
        }
        initView() {
            this.initBg();
            this.initHotZone();
            // this.setOneBtn();
            // this.initMaskPic();
            // this.relink();
            // this.checkShowSubmit();
            this.initVideo();
            if (this.data.contentObj.ques_type == this.TYPE_SINGLE_CHOICE) {
                this.playHotZoneItemSC();
            }
            else {
                this.playHotZoneItemSA();
            }
        }
        initVideo() {
            const videoMask = new _Unit__WEBPACK_IMPORTED_MODULE_2__["ShapeRect"]();
            videoMask.setSize(this.canvasWidth, this.canvasHeight);
            videoMask.fillColor = '#f4ecd8';
            videoMask.alpha = 0.7;
            this.topArr.push(videoMask);
            this.videoMask = videoMask;
            videoMask.visible = false;
            const videoBg = this.getMySprite('video_bg');
            videoBg.setScaleXY(this.mapScale);
            videoBg.visible = false;
            // videoBg.anchorX = 1;
            videoBg.x = this.canvasWidth / 2 - videoBg.width / 2 * videoBg.scaleX;
            videoBg.y = this.canvasHeight / 2;
            this.topArr.push(videoBg);
            this.videoBg = videoBg;
            const videoCloseBtn = this.getMySprite('btn_close');
            videoCloseBtn.x = videoBg.width / 2 - 100;
            videoCloseBtn.y = -videoBg.height / 2 + 53;
            videoBg.addChild(videoCloseBtn);
            this.videoCloseBtn = videoCloseBtn;
            const replayBtn = this.getMySprite('btn_replay');
            this.videoBg.addChild(replayBtn);
            replayBtn.y = this.videoBg.height / 2 - 130;
            replayBtn.visible = false;
            this.replayBtn = replayBtn;
        }
        initVideoPlayer(data) {
            if (this.curVideo) {
                this.curVideo.parent.removeChild(this.curVideo);
                this.curVideo = null;
            }
            const video = this.videoObj[data.video_url];
            if (video) {
                this.videoBg.addChild(video);
                this.refreshVideoSize(video);
                video.element.currentTime = 0.01;
                video.element.play();
                this.curVideo = video;
                this.replayBtn.visible = false;
                video.element.onended = () => {
                    this.replayBtn.visible = true;
                };
            }
        }
        refreshVideoSize(video) {
            if (!video.parent) {
                return;
            }
            video.width = video.element.videoWidth;
            video.height = video.element.videoHeight;
            const sx = video.parent.width / video.element.videoWidth;
            const sy = video.parent.height / 2 / video.element.videoHeight;
            console.log('sx: ', sx);
            console.log('sy: ', sy);
            video.setScaleXY(Math.min(sx, sy));
            video.x = -video.width / 2 * video.scaleX;
            video.y = -video.height / 2 * video.scaleY;
        }
        playHotZoneItemSA() {
            const arr = this.hotZoneArr;
            console.log('in showHotZonePic arr: ', arr);
            if (!arr || arr.length == 0) {
                return;
            }
            console.log('in showHotZonePic 1');
            let index = 0;
            const showOneHotZone = () => {
                console.log(' in showOneHotZone');
                if (index > arr.length - 1) {
                    this.showWriteBtn();
                    return;
                }
                const { data } = arr[index];
                if (data.gIdx == '0' || data.gIdx == '2') {
                    this.showHotZonePic(arr[index]);
                    if (data.gIdx == '0') {
                        this.lastHotZoneItem = arr[index]; //记录最后一个显示item 后面要替换
                    }
                    if (data.audio_url) {
                        this.playAudio(data.audio_url, true, () => {
                            index++;
                            showOneHotZone();
                        });
                    }
                    else {
                        index++;
                        showOneHotZone();
                    }
                }
                else {
                    index++;
                    showOneHotZone();
                }
            };
            showOneHotZone();
        }
        playHotZoneItemSC() {
            const arr = this.hotZoneArr;
            console.log('in showHotZonePic arr: ', arr);
            if (!arr || arr.length == 0) {
                return;
            }
            console.log('in showHotZonePic 1');
            let index = 0;
            const showOneHotZone = () => {
                console.log(' in showOneHotZone');
                if (index > arr.length - 1) {
                    return;
                }
                const { data } = arr[index];
                if (data.gIdx == '0' || data.gIdx == '1') {
                    this.showHotZonePic(arr[index]);
                    if (data.gIdx == '0') {
                        this.lastHotZoneItem = arr[index]; //记录最后一个显示item 后面要替换
                    }
                    if (data.audio_url) {
                        this.playAudio(data.audio_url, true, () => {
                            index++;
                            showOneHotZone();
                        });
                    }
                    else {
                        index++;
                        showOneHotZone();
                    }
                }
                else {
                    index++;
                    showOneHotZone();
                }
            };
            showOneHotZone();
        }
        showWriteBtn() {
            console.log(' in showWriteBtn');
            if (this.writeBtn) {
                this.writeBtn.visible = true;
                this.writeBtn.alpha = 0;
                Object(_Unit__WEBPACK_IMPORTED_MODULE_2__["tweenChange"])(this.writeBtn, { alpha: 1 }, 1);
            }
        }
        showSmallTitle(data) {
            const imgObj = this.images.get(data.title_pic_url);
            this.lastHotZoneItem.init(imgObj);
            this.showHotZonePic(this.lastHotZoneItem);
            if (data.title_audio_url) {
                this.playAudio(data.title_audio_url, true);
            }
        }
        showHotZonePic(item) {
            console.log('item: ', item);
            item.visible = true;
            item.alpha = 0;
            Object(_Unit__WEBPACK_IMPORTED_MODULE_2__["tweenChange"])(item, { alpha: 1 }, 0.5);
        }
        showSubmit() {
            if (this.submitBtn) {
                this.submitBtn.visible = true;
                this.submitBtn.alpha = 1;
                this.submitBtn.shadowSpr.visible = true;
                this.submitBtn.shadowSpr.alpha = 1;
            }
        }
        hideSubmit() {
            if (this.submitBtn) {
                this.submitBtn.visible = false;
                this.submitBtn.alpha = 0;
                this.submitBtn.shadowSpr.visible = false;
                this.submitBtn.shadowSpr.alpha = 0;
            }
        }
        removeSubmit() {
            if (this.submitBtn) {
                this.submitBtn.parent.removeChild(this.submitBtn);
                this.submitBtn.shadowSpr.parent.removeChild(this.submitBtn.shadowSpr);
                this.submitBtn = null;
            }
        }
        testInput() {
            const tmpRect = this.sentenceEmptyArr[0].getBoundingBox();
            const svBox = this.scrollView.getBoundingBox();
            const x = svBox.x + tmpRect.x * this.mapScale;
            const y = svBox.y + tmpRect.y * this.mapScale;
            const width = tmpRect.width * this.mapScale;
            const height = tmpRect.height * this.mapScale;
            const rect = { x, y, width, height };
            console.log('rect: ', rect);
            // const shape = new ShapeRectNew();
            // shape.setSize(200, 200, 1);
            // shape.fillColor = '#0000ff'
            // shape.x = 500;
            // shape.y = 500;
            // this.topArr.push(shape);
        }
        showInputView(style, rect, value, cb) {
            if (!this.inputView) {
                this.inputView = new _Unit__WEBPACK_IMPORTED_MODULE_2__["InputView"]();
                this.inputView.isShowScroll = true;
            }
            const inputView = this.inputView;
            if (inputView.callback) {
                inputView.onblur();
            }
            inputView.show();
            inputView.x = rect.x / this.canvasScale; // this.canvasWidth / 2;
            inputView.y = rect.y / this.canvasScale; // this.canvasHeight / 2;
            inputView.width = rect.width / this.canvasScale;
            inputView.height = rect.height / this.canvasScale;
            inputView.text = value;
            inputView.callback = cb;
            inputView.setStyle(style);
            inputView.refreshInputStyle();
        }
        hideInputView() {
            if (!this.inputView) {
                return;
            }
            this.inputView.hide();
        }
        relink() {
            const progress = this.getPageData('progress');
            if (this.isTeacher) {
                if (progress != null) {
                    this.gameStart();
                    return;
                }
                return;
            }
            if (progress == '1') {
                this.gameStart();
                const resultData = this.getStoreData('resultData');
                if (resultData) {
                    this.initResultView(resultData);
                    return;
                }
                return;
            }
            // if (progress == '2' || progress == '3') {
            //   const submitCount = this.getPageData('submitCount')
            //   this.submitCount = submitCount;
            //   this.checkShowSubTemplateOne();
            //   return;
            // }
        }
        initMaskPic() {
            const bgUrl = this.data.contentObj.bg_url;
            console.log('bgUrl', bgUrl);
            const maskPic = this.getMySprite(bgUrl);
            const sx = this.canvasWidth / maskPic.width;
            const sy = this.canvasHeight / maskPic.height;
            const s = Math.max(sx, sy);
            maskPic.setScaleXY(s);
            maskPic.x = this.canvasWidth / 2;
            maskPic.y = this.canvasHeight / 2;
            if (this.isTeacher) {
                maskPic.visible = false;
            }
            this.maskPic = maskPic;
        }
        getMySprite(resName, isSetScale = true) {
            const spr = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            spr.init(this.images.get(resName));
            if (isSetScale) {
                spr.setScaleXY(this.mapScale);
            }
            return spr;
        }
        setRectRight(data) {
            console.log("in setRectRight : ", data);
            for (let i = 0; i < this.hotZoneArr.length; i++) {
                this.hotZoneArr[i].result = data[i];
                if (data[i] && data[i].right) {
                    this.hotZoneArr[i].isRight = true;
                }
                else {
                    this.hotZoneArr[i].isRight = false;
                }
            }
        }
        initResultView(data = null) {
            if (data) {
                console.log('initResultView data : ', data);
                this.setRectRight(data);
            }
            else {
                const resultData = this.getResultData();
                this.userResultData = resultData;
                this.sendResult();
                this.setStoreData('resultData', resultData);
            }
            const resultLayer = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            resultLayer.x = this.canvasWidth / 2;
            resultLayer.y = this.canvasHeight / 2;
            const bg = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            bg.init(this.images.get("result_bg"));
            bg.x = 0;
            bg.y = 0;
            bg.setScaleXY(this.mapScaleMax);
            resultLayer.addChild(bg);
            const bgItem = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            bgItem.init(this.images.get("result_bg_item"));
            bg.addChild(bgItem);
            const panelOffY = 0; //-50 * this.mapScale;
            const panel = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            panel.init(this.images.get("result_panel"));
            panel.setScaleXY(this.mapScale);
            panel.y = panelOffY;
            resultLayer.addChild(panel, 1);
            const panelItem = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            panelItem.init(this.images.get("result_panel_item"));
            panelItem.y = -600;
            panel.addChild(panelItem);
            const itemLabel = new _Unit__WEBPACK_IMPORTED_MODULE_2__["RichText"]();
            itemLabel.fontSize = 52;
            // itemLabel.y = 5;
            itemLabel.width = panelItem.width;
            itemLabel.fontColor = '#ffffff';
            itemLabel.fontName = 'Aileron-Black';
            itemLabel.text = 'Check';
            itemLabel.y = 10;
            itemLabel.textAlign = 'center';
            panelItem.addChild(itemLabel, 5);
            const panelShadow = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            panelShadow.init(this.images.get("result_panel_shadow"));
            // panelShadow.setScaleXY(this.mapScale);
            panelShadow.y = (panel.height / 2 - 20);
            panel.addChild(panelShadow);
            const btn = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            btn.init(this.images.get("big_btn"));
            btn.setScaleXY(this.mapScale);
            btn.y = panel.y + (panel.height / 2 + 120) * panel.scaleY;
            // resultLayer.addChild(btn, 2);
            // this.moreBtn = btn;
            const btnShadow = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            btnShadow.init(this.images.get("big_btn_shadow"));
            btnShadow.setScaleXY(this.mapScale);
            btnShadow.y = btn.y + 30 * this.mapScale;
            // resultLayer.addChild(btnShadow);
            const btnLabel = new _Unit__WEBPACK_IMPORTED_MODULE_2__["Label"]();
            btnLabel.fontSize = 64;
            btnLabel.fontName = 'Aileron-Black';
            btnLabel.textAlign = 'center';
            btnLabel.text = '更多练习';
            btnLabel.y = 5;
            btnLabel.fontColor = '#ffffff';
            btn.addChild(btnLabel, 3);
            this.topArr.push(resultLayer);
            this.resultPanel = panel;
            this.resultLayer = resultLayer;
            this.initResultSentence();
        }
        getResultData() {
            var _a;
            const dataArr = [];
            for (let i = 0; i < this.hotZoneArr.length; i++) {
                const result = this.hotZoneArr[i].result;
                result.userAnswer = ((_a = this.hotZoneArr[i].label) === null || _a === void 0 ? void 0 : _a.text) || '';
                dataArr.push(result);
            }
            return dataArr;
        }
        initResultSentence() {
            var _a, _b;
            const resultSv = new _Unit__WEBPACK_IMPORTED_MODULE_2__["ScrollView"]();
            resultSv.setShowSize(this.resultPanel.width, this.resultPanel.height * 0.85);
            resultSv.setBgColor("#3e9e33");
            resultSv.x = -this.resultPanel.width / 2;
            resultSv.y = -this.resultPanel.height / 2 + 120;
            resultSv.setScrollBarSize(20 * this.mapScale, 5);
            // resultSv.setContentScale(this.mapScale);
            this.resultPanel.addChild(resultSv);
            this.resultSv = resultSv;
            console.log('hotZoneArr: ', this.hotZoneArr);
            const tmpLabel = new _Unit__WEBPACK_IMPORTED_MODULE_2__["Label"]();
            tmpLabel.fontSize = 48;
            tmpLabel.fontColor = '#ffffff';
            tmpLabel.fontName = 'DroidSansFallback';
            let baseY = 0; //-500;
            for (let i = 0; i < this.hotZoneArr.length; i++) {
                const result = this.hotZoneArr[i].result;
                const richText = new _Unit__WEBPACK_IMPORTED_MODULE_2__["RichText"]();
                richText.disH = 5;
                // richText.x = -this.panel.width / 2 * 0.9
                richText.x = 0.05 * this.resultPanel.width;
                richText.y = baseY + 80;
                richText.fontSize = 48;
                richText.width = this.resultPanel.width * 0.9;
                richText.fontColor = '#ffffff';
                richText.fontName = 'DroidSansFallback';
                richText.text = result.userAnswer;
                // this.resultPanel.addChild(richText, 1)
                // const rect = richText.getBoundingBox();
                // richText.refreshSize();
                tmpLabel.text = richText.text;
                tmpLabel.refreshSize();
                let rectW = tmpLabel.width < 100 ? 100 : tmpLabel.width;
                const rect = { x: richText.x, y: richText.y, width: rectW, height: richText.fontSize };
                const addW = 18;
                rect.width += addW;
                rect.height += 16;
                // rect.x += addW / 2;
                const colorRect = new _Unit__WEBPACK_IMPORTED_MODULE_2__["ShapeRectNew"]();
                colorRect.setSize(rect.width, rect.height, 10);
                // colorRect.alpha = 0.3;
                colorRect.fillColor = '#007b3e';
                const offX = 9;
                colorRect.x = rect.x; // + offX;
                colorRect.y = rect.y - rect.height / 2;
                // colorRect.alpha = 0.5;
                resultSv.addItem(colorRect);
                resultSv.addItem(richText);
                baseY = richText.y + richText.getAreaHeight();
                if (result.isAi) {
                    colorRect.alpha = 0;
                    const infoBg = new _Unit__WEBPACK_IMPORTED_MODULE_2__["ShapeRectNew"]();
                    // infoBg.init(this.images.get("info_bg"));
                    infoBg.setSize(1838, 120, 60);
                    infoBg.fillColor = '#3b962e';
                    infoBg.y = baseY; //+ 50;
                    infoBg.x = (this.resultPanel.width - infoBg.width) / 2; //* this.mapScale;
                    // infoBg.x = this.resultPanel.width / 2 //* this.mapScale;
                    resultSv.addItem(infoBg);
                    // this.resultPanel.addChild(infoBg);
                    // baseY += 130;
                    const infoIcon = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
                    infoIcon.init(this.images.get("ai_icon"));
                    infoIcon.x = 100;
                    infoIcon.y = 60;
                    infoBg.addChild(infoIcon);
                    this.addResultLabelCircle(richText, result);
                    const tmpH = this.getInfoLabelLayer(infoBg, result);
                    if (tmpH < 60) {
                        infoBg.visible = false;
                    }
                    else {
                        baseY += tmpH;
                        infoBg.height = tmpH;
                        resultSv.refreshContentSize();
                    }
                }
                else if (!this.hotZoneArr[i].isRight) {
                    colorRect.fillColor = '#d71818';
                    const infoBg = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
                    infoBg.init(this.images.get("info_bg"));
                    infoBg.y = baseY + 50;
                    infoBg.x = this.resultPanel.width / 2; //* this.mapScale;
                    resultSv.addItem(infoBg);
                    // this.resultPanel.addChild(infoBg);
                    baseY += 130;
                    const infoIcon = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
                    infoIcon.init(this.images.get("info_icon"));
                    infoIcon.x = -infoBg.width / 2 + 100;
                    infoBg.addChild(infoIcon);
                    const infoLabel = new _Unit__WEBPACK_IMPORTED_MODULE_2__["RichText"]();
                    infoLabel.x = infoIcon.x + 50;
                    infoLabel.fontSize = 48;
                    infoLabel.y = 5;
                    infoLabel.width = infoBg.width;
                    infoLabel.fontColor = '#ffe9b1';
                    infoLabel.fontName = 'Aileron-Black';
                    infoLabel.text = ((_a = this.hotZoneArr[i].result) === null || _a === void 0 ? void 0 : _a.info) || '';
                    infoBg.addChild(infoLabel);
                }
                else {
                    const labelAnswer = this.getFillLabel();
                    labelAnswer.fontSize = 48;
                    labelAnswer.fontColor = '#ffffff';
                    labelAnswer.fontName = 'Aileron-Black';
                    labelAnswer.text = ((_b = this.hotZoneArr[i].result) === null || _b === void 0 ? void 0 : _b.info) || '';
                    labelAnswer.setScaleXY(1);
                    labelAnswer.textAlign = 'center';
                    labelAnswer.refreshSize();
                    labelAnswer.x = colorRect.width / 2;
                    labelAnswer.y = colorRect.height / 2;
                    // colorRect.addChild(labelAnswer);
                }
                if (i != this.hotZoneArr.length - 1) {
                    const line = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
                    line.init(this.images.get("line"));
                    line.x = this.resultPanel.width / 2;
                    line.y = baseY + 30;
                    resultSv.addItem(line);
                    // this.resultPanel.addChild(line);
                    baseY = line.y;
                }
            }
            console.log('this.resultSv.height: ', this.resultSv.heigth);
            console.log('this.resultSv.box height: ', this.resultSv.getBoundingBox().height);
        }
        getInfoLabelLayer(infoBg, result) {
            const { resultTextArr, iconData } = result;
            const arr = [];
            for (let k in iconData) {
                iconData[k].index = k;
                arr.push(iconData[k]);
            }
            const layer = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            let baseIndex = 0;
            let tmpH = 40;
            for (let i = 0; i < arr.length; i++) {
                const circle = new _Unit__WEBPACK_IMPORTED_MODULE_2__["ShapeCircle"]();
                circle.setRadius(30);
                circle.x = 200;
                circle.y = tmpH + 20;
                circle.fillColor = '#dcc077';
                infoBg.addChild(circle);
                const label = new _Unit__WEBPACK_IMPORTED_MODULE_2__["Label"]();
                label.text = (i + 1).toString();
                label.fontColor = '#ffffff';
                label.textAlign = 'center';
                label.fontName = 'Aileron-Bold';
                label.y = 3;
                circle.addChild(label);
                const infoLabel = new _Unit__WEBPACK_IMPORTED_MODULE_2__["RichText"]();
                infoLabel.topH = 0;
                infoBg.addChild(infoLabel);
                infoLabel.x = 230;
                infoLabel.fontSize = 48;
                infoLabel.y = tmpH + 20;
                infoLabel.width = infoBg.width * 0.8;
                infoLabel.fontColor = '#ffe9b1';
                infoLabel.fontName = 'Aileron-Black';
                infoLabel.text = arr[i].dataArr[0].reason;
                tmpH = infoLabel.y + infoLabel.getAreaHeight();
                // const rect = lastRect.rect;
                // rect.x -= rect.width;
                // rect.y -= rect.height / 2;
                // const colorRect = this.getColorRect(rect);
                // colorRect.alpha = 0.5;
                // // colorRect.y -= rect.height;
                // // infoLabel.addChild(colorRect);
                // const circle = new ShapeCircle();
                // circle.setRadius(20);
                // circle.fillColor = '#dcc077';
                // circle.x = rect.x + rect.width;
                // circle.y = rect.y;
                // infoLabel.addChild(circle);
                // const label = new Label();
                // label.textAlign = 'center';
                // label.fontColor = '#ffffff';
                // label.fontSize = 30;
                // label.text = (i + 1).toString()
                // circle.addChild(label);
            }
            return tmpH;
            // const infoLabel = new RichText();
            // infoBg.addChild(infoLabel);
            // infoLabel.x = infoIcon.x + 50;
            // infoLabel.fontSize = 48;
            // infoLabel.y = 5;
            // infoLabel.width = infoBg.width;
            // infoLabel.fontColor = '#ffe9b1'
            // infoLabel.fontName = 'Aileron-Black';
            // infoLabel.text = this.getOneAiResultText(result);//  this.hotZoneArr[i].result?.info || '';
            // this.addResultLabelCircle(infoLabel, result);
        }
        getOneAiResultText(result) {
            const { resultTextArr } = result;
            let curText = '';
            for (let i = 0; i < resultTextArr.length; i++) {
                curText += resultTextArr[i].text + '';
            }
            console.log(' in getOneAiResultText ', resultTextArr);
            return curText;
        }
        addResultLabelCircle(infoLabel, result) {
            const { resultTextArr, iconData } = result;
            let baseIndex = 0;
            for (let i = 0; i < resultTextArr.length; i++) {
                const curText = resultTextArr[i].text;
                // const rect = infoLabel.getSubTextRect(curText)?.rect;
                const rectGroup = infoLabel.getSubTextRectGroup(curText, baseIndex);
                if (!rectGroup) {
                    continue;
                }
                console.log('~rectGroup: ', rectGroup);
                // const rectFirst = rectGroup[0];
                if (!rectGroup || rectGroup.length == 0) {
                    continue;
                }
                const lastRect = rectGroup[rectGroup.length - 1];
                const key = lastRect.index + lastRect.text.length;
                console.log('~key: ', key);
                console.log('~rect: ', lastRect);
                console.log('iconData: ', iconData);
                if (!iconData[key]) {
                    continue;
                }
                const rect = lastRect.rect;
                rect.x -= rect.width;
                rect.y -= rect.height / 2;
                const colorRect = this.getColorRect(rect);
                colorRect.alpha = 0.5;
                // colorRect.y -= rect.height;
                // infoLabel.addChild(colorRect);
                const circle = new _Unit__WEBPACK_IMPORTED_MODULE_2__["ShapeCircle"]();
                circle.setRadius(20);
                circle.fillColor = '#dcc077';
                circle.x = rect.x + rect.width;
                circle.y = rect.y;
                infoLabel.addChild(circle);
                const label = new _Unit__WEBPACK_IMPORTED_MODULE_2__["Label"]();
                label.fontName = 'Aileron-Bold';
                label.textAlign = 'center';
                label.fontColor = '#ffffff';
                label.fontSize = 30;
                label.text = (i + 1).toString();
                label.y = 3;
                circle.addChild(label);
                // colorRect.addChild(circle);
            }
        }
        getColorRect(rect) {
            const colorRect = new _Unit__WEBPACK_IMPORTED_MODULE_2__["ShapeRectNew"]();
            colorRect.setSize(rect.width, rect.height, 1);
            colorRect.fillColor = Math.random() < 0.5 ? '#ff0000' : '#00ff00';
            // const offX = 13; 
            colorRect.x = rect.x; // + offX;
            colorRect.y = rect.y; // -rect.height / 2;
            // console.log('rect.height: ', rect.height);
            // colorRect.alpha = 0;
            return colorRect;
        }
        initBtn() {
            this.topArr = [];
            const btnArr = [];
            let arr = JSON.parse(JSON.stringify(this.sentenceArr));
            arr = Object(_Unit__WEBPACK_IMPORTED_MODULE_2__["randomSortByArr"])(arr);
            if (!arr) {
                return;
            }
            const disW = 400 * this.mapScale;
            const disH = this.btnDisH * this.mapScale;
            const tmpLen = arr.length > 5 ? 5 : arr.length;
            let baseX = this.canvasWidth / 2 - (tmpLen - 1) * disW / 2;
            let baseY = this.canvasHeight / 2 - 380 * this.mapScale;
            let col = 0;
            for (let i = 0; i < arr.length; i++) {
                const btn = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
                btn.init(this.images.get("btn"));
                btn.x = baseX + disW * col;
                btn.y = baseY;
                btn['baseX'] = btn.x;
                btn['baseY'] = btn.y;
                btn.setScaleXY(this.mapScale * 0.8);
                const btnBg = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
                btnBg.init(this.images.get("btn_bg"));
                btnBg.x = btn.x;
                btnBg.y = btn.y;
                btnBg.setScaleXY(this.mapScale * 0.8);
                this.renderArr.push(btnBg);
                this.topArr.push(btn);
                this.addBtnLabel(btn, arr[i].answer);
                btnArr.push(btn);
                col++;
                if (col % 5 == 0) {
                    col = 0;
                    baseY += disH;
                }
            }
            this.btnArr = btnArr;
            if (this.isTeacher) {
                this.initsendBtn();
                return;
            }
            const submitBtn = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            submitBtn.init(this.images.get("submit"));
            submitBtn.setScaleXY(this.mapScale);
            submitBtn.x = this.canvasWidth / 2 + 650 * this.mapScale;
            submitBtn.y = this.canvasHeight / 2 + 650 * this.mapScale;
            const submitShadow = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            submitShadow.init(this.images.get("submit_shadow"));
            submitShadow.setScaleXY(this.mapScale);
            submitShadow.x = submitBtn.x;
            submitShadow.y = submitBtn.y + 20 * this.mapScale;
            const submitOff = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            submitOff.init(this.images.get("submit_off"));
            submitOff.setScaleXY(this.mapScale);
            submitOff.x = submitBtn.x;
            submitOff.y = submitBtn.y + 5 * this.mapScale;
            submitBtn['baseY'] = submitBtn.y;
            submitBtn['offBtn'] = submitOff;
            submitBtn['shadowSpr'] = submitShadow;
            submitShadow['baseY'] = submitShadow.y;
            this.renderArr.push(submitShadow);
            this.renderArr.push(submitBtn);
            this.renderArr.push(submitOff);
            this.submitBtn = submitBtn;
            this.submitOff();
        }
        initsendBtn() {
            const panel = this.panel;
            const btn = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            btn.init(this.images.get("big_btn"));
            btn.setScaleXY(this.mapScale);
            btn.x = this.canvasWidth / 2;
            btn.y = panel.y + (panel.height / 2 - 120) * panel.scaleY;
            this.sendBtn = btn;
            const btnShadow = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            btnShadow.init(this.images.get("big_btn_shadow"));
            btnShadow.setScaleXY(this.mapScale);
            btnShadow.x = btn.x;
            btnShadow.y = btn.y + 20 * this.mapScale;
            this.sendBtn.shadowSpr = btnShadow;
            const btnLabel = new _Unit__WEBPACK_IMPORTED_MODULE_2__["Label"]();
            btnLabel.fontSize = 64;
            btnLabel.fontName = 'Aileron-Black';
            btnLabel.textAlign = 'center';
            btnLabel.text = 'Send';
            btnLabel.y = 5;
            btnLabel.fontColor = '#ffffff';
            btn.addChild(btnLabel, 3);
            this.renderArr.push(btnShadow);
            this.renderArr.push(btn);
        }
        submitOff() {
            this.submitBtn.offBtn.visible = true;
            this.submitBtn.visible = false;
            this.submitBtn.shadowSpr.visible = false;
        }
        submitOn() {
            // this.submitBtn.y = this.submitBtn.baseY;
            // this.submitBtn.scale = this.mapScale;
            // this.submitBtn.shadowSpr.alpha = 1;
            // this.submitBtn.shadowSpr.y = this.submitBtn.shadowSpr.baseY;
            this.submitBtn.visible = true;
            this.submitBtn.shadowSpr.visible = true;
            this.submitBtn.offBtn.visible = false;
        }
        addBtnLabel(btn, text) {
            console.log('text:  ', text);
            const label = new _Unit__WEBPACK_IMPORTED_MODULE_2__["Label"]();
            label.fontSize = 64;
            label.fontName = 'Aileron-Black';
            label.textAlign = 'center';
            label.text = text;
            // label.x = this.canvasWidth / 2;
            label.y = -2;
            label.fontColor = '#f1e4c2';
            btn.addChild(label);
            btn.text = text;
            return label;
        }
        initSentence() {
            const row = Math.floor((this.btnArr.length - 1) / 5) + 1;
            const subH = row * this.btnDisH;
            const sv = new _Unit__WEBPACK_IMPORTED_MODULE_2__["ScrollView"]();
            // sv.setShowSize(this.panel.width, 900 - subH);
            // sv.x = -this.panel.width / 2;
            // sv.y = -395 + subH;
            // sv.setBgColor('#faf7ee')
            // // sv.setMapScale(this.mapScale);
            // // sv.content.setScaleXY(1/this.mapScale);
            // sv.setScrollBarSize(20 * this.mapScale, 5)
            // // this.renderArr.push(sv);
            // // sv.setScaleXY(this.mapScale);
            // // sv.x = 0;
            // // sv.y = 200;
            // sv.setContentScale(this.mapScale);
            // this.panel.addChild(sv);
            // this.scrollView = sv;
            this.sentenceEmptyArr = [];
            const arr = this.sentenceArr;
            // const arr = this.sentenceArr.concat(this.sentenceArr);
            if (!arr) {
                return;
            }
            const baseX = this.panel.width / 2 - 1000;
            let curY = 70; // this.canvasHeight / 2 - 110 * this.mapScale;
            const disH = 70 * this.mapScale;
            for (let i = 0; i < arr.length; i++) {
                const richText = this.getSentenceLabel();
                richText.x = baseX;
                richText.y = curY;
                richText.text = arr[i].text;
                const rect = richText.getSubTextRect('____________________');
                const colorRect = new _Unit__WEBPACK_IMPORTED_MODULE_2__["ShapeRectNew"]();
                rect.height += 30;
                colorRect.setSize(rect.width, rect.height, 1);
                colorRect.fillColor = '#ff0000';
                const offX = 13;
                colorRect.x = rect.x + offX;
                colorRect.y = -rect.height / 2;
                console.log('rect.height: ', rect.height);
                colorRect.alpha = 0;
                richText.addChild(colorRect);
                this.sentenceEmptyArr.push(colorRect);
                curY += richText.getAreaHeight() * this.mapScale + disH;
                richText['data'] = arr[i];
                sv.addItem(richText);
                // this.renderArr.push(richText);
                colorRect.ctx = colorRect.parent.ctx;
            }
        }
        getFillLabel() {
            const label = new _Unit__WEBPACK_IMPORTED_MODULE_2__["RichText"]();
            label.fontSize = 56;
            label.fontColor = '#000000';
            label.fontName = 'Aileron-Bold';
            // label.setScaleXY(this.mapScale);
            return label;
        }
        getSentenceLabel() {
            const richText = new _Unit__WEBPACK_IMPORTED_MODULE_2__["RichText"]();
            richText.disH = 0;
            richText.fontSize = 56;
            richText.width = 2000 / this.mapScale;
            richText.fontColor = '#000000';
            richText.fontName = 'DroidSansFallback';
            richText.setScaleXY(this.mapScale);
            return richText;
        }
        changeBtnOff() {
            for (let i = 0; i < this.btnArr.length; i++) {
                if (this.btnArr[i].visible) {
                    this.btnArr[i].init(this.images.get('btn_off'));
                    this.btnArr[i].isOff = true;
                }
            }
        }
        changeBtnOn() {
            for (let i = 0; i < this.btnArr.length; i++) {
                if (this.btnArr[i].visible) {
                    this.btnArr[i].init(this.images.get('btn'));
                    this.btnArr[i].isOff = false;
                }
            }
        }
        _initTitle() {
            const label = new _Unit__WEBPACK_IMPORTED_MODULE_2__["Label"]();
            label.fontSize = 42 * this.mapScale;
            label.fontName = 'BRLNSDB';
            label.textAlign = 'center';
            label.setMaxSize(this.canvasWidth * 0.9);
            label.x = this.canvasWidth / 2;
            label.y = (this.bgRect.y - this.bgRect.height / 2 * this.bgRect.scaleY) / 2;
            label.fontColor = '#fff143';
            label.setShadow(0, 5, 5, 'rgba(0,0,0,0.3)');
            this.titleLabel = label;
            this.renderArr.push(label);
            const disH = 5 * this.mapScale;
            const starBg = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            starBg.init(this.images.get('top_star_bg'));
            starBg.setScaleXY(this.mapScale);
            const disW = starBg.width / 3 * starBg.scaleX;
            const num = this.picArr.length;
            const itemW = starBg.width * starBg.scaleX;
            const totalW = (starBg.width) * starBg.scaleX * num + disW * (num - 1);
            const offX = this.canvasWidth / 2 - totalW / 2 + itemW / 2;
            this.starBgArr = [];
            for (let i = 0; i < num; i++) {
                const starBg = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
                starBg.init(this.images.get('top_star_bg'));
                starBg.setScaleXY(this.mapScale);
                starBg.x = offX + (itemW + disW) * i;
                starBg.y = label.y - starBg.height / 2 * starBg.scaleY - disH / 2;
                this.renderArr.push(starBg);
                const star = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
                star.init(this.images.get('top_star'));
                star.visible = false;
                starBg['star'] = star;
                starBg.addChild(star);
                this.starBgArr.push(starBg);
            }
            label.y += label.height / 2 * label.scaleY + disH / 2;
            // const textBg = new MySprite();
            // textBg.init(this.images.get('text_bg'));
            // textBg.setScaleXY(this.mapScale);
            // textBg.x = label.x;
            // textBg.y = label.y - textBg.height / 2 * textBg.scaleY - disH / 2;
            // this.renderArr.push(textBg);
            //
            // label.y += label.height / 2 * label.scaleY + disH / 2;
            //
            //
            // const pageLabel = new Label();
            // pageLabel.text = '0 / 0';
            // pageLabel.fontName = 'BRLNSDB';
            // pageLabel.fontColor = '#ffffff';
            // pageLabel.textAlign = 'center';
            // pageLabel.fontSize = 24;
            // textBg.addChild(pageLabel);
            //
            // this.pageLabel = pageLabel;
            this.refreshTitleLabel();
            this.refreshPageLabel();
        }
        refreshTitleLabel(animaFlag = false) {
            const data = this.picArr[this.curPageIndex];
            if (animaFlag) {
                Object(_Unit__WEBPACK_IMPORTED_MODULE_2__["hideItem"])(this.titleLabel, 0.2, () => {
                    this.titleLabel.text = data.text;
                    Object(_Unit__WEBPACK_IMPORTED_MODULE_2__["showItem"])(this.titleLabel, 0.3);
                    this.playAudio('tip', true);
                });
            }
            else {
                this.titleLabel.text = data.text;
            }
        }
        refreshPageLabel() {
            // const label = this.pageLabel;
            // label.text = (this.curPageIndex + 1) + ' / ' + this.picArr.length;
            for (let i = 0; i < this.curPageIndex; i++) {
                const starBg = this.starBgArr[i];
                if (starBg) {
                    const star = starBg.star;
                    if (!star.visible) {
                        star.visible = true;
                        star.setScaleXY(3);
                        star.alpha = 0;
                        Object(_Unit__WEBPACK_IMPORTED_MODULE_2__["tweenChange"])(star, { scaleX: 1, scaleY: 1, alpha: 1 }, 1, () => {
                        }, _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_6__["default"].Easing.Exponential.In);
                    }
                }
            }
        }
        showAudio() {
            const data = this.picArr[this.curPageIndex];
            const audio = this.audioObj[data.audio_url];
            if (audio) {
                audio.play();
            }
        }
        initBg() {
            var _a;
            const colorBg = this.getMySprite("bg");
            colorBg.setScaleXY(this.mapScaleMax);
            this.renderArr.push(colorBg);
            colorBg.x = this.canvasWidth / 2;
            colorBg.y = this.canvasHeight / 2;
            const title = new _Unit__WEBPACK_IMPORTED_MODULE_2__["Label"]();
            title.fontSize = 76 * this.mapScale;
            title.fontName = 'Aileron-Bold';
            title.textAlign = 'left';
            // title.setMaxSize(this.canvasWidth * 0.9);
            title.x = 240;
            title.y = 100 * this.mapScale;
            title.fontColor = '#3e9b31';
            title.text = this.data.contentObj.title || "";
            title.refreshSize();
            this.renderArr.push(title);
            console.log('this.data: ', this.data);
            const subH = title.fontSize;
            const url = (_a = this.data.contentObj.bgItem) === null || _a === void 0 ? void 0 : _a.url;
            if (url) {
                const bg = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
                bg.init(this.images.get(url));
                const sx = this.canvasWidth / this.canvasBaseW;
                const sy = (this.canvasHeight - subH) / this.canvasBaseH;
                const s = Math.min(sx, sy);
                bg.setScaleXY(this.mapScale);
                bg.x = this.canvasWidth / 2;
                bg.y = this.canvasHeight / 2 + subH;
                bg['data'] = this.data.contentObj.bgItem;
                this.bg = bg;
                this.renderArr.push(bg);
            }
        }
        okBtnClick() {
            this.checkPanel.visible = false;
            this.removeSubmit();
            // this.appRef.tick();
            this.canTouch = false;
            setTimeout(() => {
                // this.hideSubmit();
                this.convertCanvasToImage();
                // this.hideSubmit();
                setTimeout(() => {
                    this.setAnswerData(() => {
                        this.initResultView();
                        this.canTouch = true;
                    });
                }, 500);
            }, 500);
        }
        cancelBtnClick() {
            this.checkPanel.visible = false;
        }
        mapDown(event) {
            if (!this.canTouch) {
                return;
            }
            if (this.videoMask && this.videoMask.visible) {
                if (this.videoCloseBtn) {
                    if (this.checkClickTarget(this.videoCloseBtn)) {
                        this.videoCloseBtnClick();
                        return;
                    }
                }
                if (this.replayBtn && this.replayBtn.visible) {
                    if (this.checkClickTarget(this.replayBtn)) {
                        this.replayBtnClick();
                        return;
                    }
                }
                return;
            }
            // 选择题区域 可见
            if (this.curAreaItem && this.curAreaItem.visible) {
                for (let i = 0; i < this.optionItemArr.length; i++) {
                    if (this.checkClickTarget(this.optionItemArr[i])) {
                        this.optionItemClick(this.optionItemArr[i]);
                        return;
                    }
                }
                if (this.checkClickTarget(this.videoBtn)) {
                    this.videoBtnClick();
                    return;
                }
            }
            else {
                if (this.answerRectNode.visible && this.checkClickTarget(this.answerRect)) {
                    this.answerRectClick();
                    return;
                }
                if (this.writeBtn.visible && this.checkClickTarget(this.writeBtn)) {
                    this.writeBtnClick();
                    return;
                }
            }
        }
        mapMove(event) {
            if (event) {
                event.preventDefault();
            }
        }
        mapUp(event) {
        }
        writeBtnClick() {
            const courseware = window['courseware'];
            if (!courseware) {
                return;
            }
            this.answerRectNode.visible = true;
            // const data =  {"msg":"success","url":"https://staging-teach.cdn.ireadabc.com/a509c85b5730a8459381551f926fd90e.png","ppt_html":"https://staging-teach.cdn.ireadabc.com/ppt/a509c85b5730a8459381551f926fd90e/index.html"}
            // this.setWriteAreaPic(data);
            // this.checkNextQues();
            courseware.activeWhiteBoard((data) => {
                // TODO 公式编辑器返回的结果
                const dataObj = JSON.parse(data);
                console.log('activeWhiteBoard data: ', dataObj);
                this.setWriteAreaPic(dataObj);
                this.checkNextQues();
            });
        }
        setWriteAreaPic(data) {
            this.boardData = data;
            if (!data.url) {
                return;
            }
            this.writeBtn.visible = false;
            const writeAreaRect = this.writeAreaRect;
            let pic = writeAreaRect.pic;
            if (!pic) {
                pic = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
                writeAreaRect.addChild(pic);
                pic.x = writeAreaRect.width / 2;
                pic.y = writeAreaRect.height / 2;
            }
            pic.load(data.url).then(img => {
                const sx = writeAreaRect.width / pic.width;
                const sy = writeAreaRect.height / pic.height;
                const s = Math.min(sx, sy);
                pic.setScaleXY(s);
            });
            writeAreaRect.pic = pic;
            writeAreaRect.visible = true;
        }
        videoBtnClick() {
            this.videoMask.visible = true;
            this.videoBg.visible = true;
            const video = this.curVideo;
            video.element.currentTime = 0.01;
            video.element.play();
        }
        answerRectClick() {
            console.log('in answerRectClick');
            const courseware = window['courseware'];
            if (!courseware) {
                return;
            }
            if (this.answerRect.isClicked) {
                return;
            }
            this.answerRect.isClicked = true;
            courseware.activeFormulaBoard((data) => {
                // TODO
                console.log('in activeFormulaBoard data 1 : ', data);
                if (typeof (data) == 'string') {
                    data = JSON.parse(data);
                }
                console.log('in activeFormulaBoard data 2 : ', data);
                this.setShortAnswerData(data);
                this.checkNextQues();
            });
            // const data = {
            //   formulaSrc: 'http://staging-teach.cdn.ireadabc.com/82f0ecacdc80cbb50c1a229cdee253c4.png',
            //   formula:"\\sqrt {777}+\\sqrt {444}"
            // }
            // this.setShortAnswerData(data);
            // this.checkNextQues();
        }
        checkNextQues() {
            if (this.mathData && this.boardData) {
                this.enterNextQues();
            }
        }
        enterNextQues() {
            const { formula } = this.mathData;
            this.quesNum++;
            this.canTouch = false;
            const isRight = this.answerRectNode.data.mathLabel == formula;
            if (formula && isRight) {
                this.changeAnswerBg('rightPic');
                this.gameEnd();
            }
            else {
                this.changeAnswerBg('wrongPic');
                if (!this.isFirstQues) {
                    this.gameEnd();
                    return;
                }
                this.isFirstQues = false;
                setTimeout(() => {
                    this.canTouch = true;
                    const data = this.getCurChoiceQues(formula);
                    this.curChoiceQues = data;
                    if (data.video_url) {
                        this.showVideo(data);
                    }
                    else {
                        // this.callTeacher();
                        this.changeChoiceArea(data);
                    }
                }, 2000);
            }
        }
        getCurChoiceQues(formula) {
            let defualtData = {};
            const choiceQuesArr = this.data.contentObj.choiceQuesArr;
            for (let i = 0; i < choiceQuesArr.length; i++) {
                if (!choiceQuesArr[i].mathLabel) {
                    defualtData = choiceQuesArr[i];
                }
                if (choiceQuesArr[i].mathLabel == formula) {
                    return choiceQuesArr[i];
                }
            }
            return defualtData;
        }
        setShortAnswerData(data) {
            this.mathData = data;
            const { formulaSrc, formula } = data;
            const labelPic = this.answerLabelPic;
            labelPic.load(formulaSrc).then(img => {
                const sx = (this.answerRect.width * this.answerRect.scaleX - 20) / labelPic.width;
                const sy = this.answerRect.height * this.answerRect.scaleY / labelPic.height;
                const s = Math.min(sx, sy);
                labelPic.setScaleXY(s);
                labelPic.x = labelPic.width / 2 * labelPic.scaleX + 10;
                labelPic.y = this.answerRect.y;
            });
        }
        changeBase64ToPicUrl(base64Data) {
            var arr = base64Data.split(','), mime = arr[0].match(/:(.*?);/)[1], bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n);
            while (n--) {
                u8arr[n] = bstr.charCodeAt(n);
            }
            var obj = new Blob([u8arr], { type: mime });
            var fd = new FormData();
            fd.append("file", obj, "jm_math.png");
            // 上传截图
            this.http.post(this.uploadUrl, fd).subscribe((res) => {
                // 存储服务器的截图url
                if (res['url']) {
                    console.log('res url: ', res['url']);
                }
                else {
                }
            });
        }
        replayBtnClick() {
            if (this.curVideo) {
                this.curVideo.element.play();
                this.replayBtn.visible = false;
            }
        }
        videoCloseBtnClick() {
            console.log("in videoCloseBtnClick");
            this.videoBg.visible = false;
            this.videoMask.visible = false;
            if (this.curVideo) {
                this.curVideo.element.pause();
            }
            if (this.curOpItem) {
                this.changeChoiceArea(this.curOpItem.data);
            }
            if (this.templateQuesType == this.TYPE_SHORT_ANSWER) {
                this.changeChoiceArea(this.curChoiceQues);
            }
            if (this.curVideo && !this.videoBtn.visible) {
                this.videoBtn.visible = true;
            }
        }
        cleanSmallTitle() {
            this.curAreaItem.visible = false;
            this.curAreaItem.removeChildren();
            Object(_Unit__WEBPACK_IMPORTED_MODULE_2__["removeItemFromArr"])(this.renderArr, this.curAreaItem);
            Object(_Unit__WEBPACK_IMPORTED_MODULE_2__["removeItemFromArr"])(this.renderArr, this.answerRectNode);
            Object(_Unit__WEBPACK_IMPORTED_MODULE_2__["removeItemFromArr"])(this.renderArr, this.answerQuesPic);
            if (this.videoBtn) {
                this.videoBtn.visible = false;
            }
            if (this.writeAreaRect) {
                this.writeAreaRect.visible = false;
            }
            if (this.writeBtn) {
                this.writeBtn.visible = false;
            }
            this.mathData = null;
            this.boardData = null;
        }
        optionItemClick(opItem) {
            console.log('opItem: ', opItem);
            const data = opItem.data;
            this.curOpItem = opItem;
            this.changeAllOpItem();
            this.quesNum++;
            if (data.is_right) {
                this.optionRight(opItem);
            }
            else {
                this.optionWrong(opItem);
            }
        }
        gameEnd() {
            const c = window['courseware'];
            if (!c) {
                return;
            }
            c.nextPage();
        }
        optionRight(opItem) {
            this.changeOpItemBg(opItem, 'rightPic');
            this.canTouch = false;
            if (this.data.contentObj.ques_type == this.TYPE_SHORT_ANSWER) {
                setTimeout(() => {
                    this.canTouch = true;
                    this.cleanSmallTitle();
                    this.changeAnswerArea();
                }, 2000);
            }
            this.gameEnd();
        }
        optionWrong(opItem) {
            this.changeOpItemBg(opItem, 'wrongPic');
            this.canTouch = false;
            if (this.quesNum >= 3) {
                this.gameEnd();
                return;
            }
            setTimeout(() => {
                this.canTouch = true;
                if (this.data.contentObj.ques_type == this.TYPE_SHORT_ANSWER) {
                    this.cleanSmallTitle();
                    this.changeAnswerArea();
                    return;
                }
                if (opItem.data.video_url) {
                    this.showVideo(opItem.data);
                }
                else {
                    this.callTeacher();
                }
            }, 2000);
        }
        callTeacher() {
            this.changeChoiceArea(this.data.contentObj);
        }
        showVideo(data) {
            this.videoMask.visible = true;
            this.videoBg.visible = true;
            this.initVideoPlayer(data);
        }
        hideVideo() {
            this.videoMask.visible = false;
            this.videoBg.visible = false;
        }
        changeAllOpItem() {
            for (let i = 0; i < this.optionItemArr.length; i++) {
                this.changeOpItemBg(this.optionItemArr[i], 'normalPic');
            }
        }
        changeOpItemBg(opItem, res) {
            opItem[opItem.curRes].visible = false;
            opItem.curRes = res;
            opItem[opItem.curRes].visible = true;
        }
        changeAnswerBg(res) {
            const node = this.answerRectNode;
            node[node.curRes].visible = false;
            node.curRes = res;
            node[node.curRes].visible = true;
        }
        moreBtnClick() {
            // this.setPageData('progress', '2', false);
            // this.setPageData('submitCount', this.submitCount);
            this.checkShowSubTemplateOne();
            this.isUpdateStop = true;
        }
        checkShowSubTemplateOne() {
            // this.showSubTemplate(0);
            console.log(' in checkShowSubTemplateOne');
            const progress = this.getPageData('progress');
            console.log(' progress: ', progress);
            if (progress == '2') {
                if (this.submitCount == 1) {
                    this.showSubTemplate(1);
                    this.sendSubTempIsShowMore(1, true);
                }
                else {
                    this.showSubTemplate(0);
                    this.sendSubTempIsShowMore(0, true);
                }
                return;
            }
            if (progress == '3') {
                let index;
                if (this.submitCount == 1) {
                    index = 0;
                    this.hideSubTemplate(1);
                }
                else {
                    index = 1;
                    this.hideSubTemplate(0);
                }
                this.showSubTemplate(index);
                this.sendSubTempIsShowMore(index, false);
            }
        }
        sendSubTempIsShowMore(index, isShowMore) {
            setTimeout(() => {
                const divArr = this.iframeContent.nativeElement.children;
                const iframecont = divArr[index].children[0];
                const data = { msg: 'success', isShowMore };
                iframecont.contentWindow.postMessage({ action: 'is_show_more', data: JSON.stringify(data) }, '*');
                console.log(' post msg is_show_more ');
            }, 1000);
        }
        btnDown(btn) {
            this.curMoveItem = btn;
        }
        addLabelMask(target, label) {
            const box = target.getBoundingBox();
            // const mask = new ShapeRect();
            // mask.setSize(400, 400);
            // mask.fillColor = '#ff0000';
            // // const mask = new MySprite();
            // // mask.init(this.images.get("mask"))
            // // mask.x = rect.x;
            // // mask.y = rect.y;
            // // const sx = rect.width / mask.width;
            // // const sy = rect.height / mask.height;
            // // mask.scaleX = sx;
            // // mask.scaleY = sy;
            // // this.scrollView.addItem(mask);
            // // label.addMaskSpr(mask);
            // // mask.x = 200;
            // // mask.y = 200;
            // // const label1 = new MySprite();
            // // label1.init(this.images.get("btn_bg"))
            // // label1.setScaleXY(2);
            // const label1 = this.getFillLabel();
            // label1.text = 'aaaaaaaa a a a a a a a a a a a a a a ';
            // label1.x = 400;
            // label1.y = 400;
            // label1.width = mask.width;
            // label1.height = mask.height;
            // label1.textBaseline = 'top';
            // // label1.setMaxSize(rect.width);
            // this.renderArr.push(mask);
            // this.renderArr.push(label1);
            // // mask.setMaskType("destination-in");
            // // // label1.addMaskSpr(mask)
            // // mask.addMaskSpr(label1);
            // label1.addMaskSpr(mask);
            label.width = box.width;
            label.height = box.height;
            label.x = box.width / 2;
            label.y = box.height / 2;
            const rect = new _Unit__WEBPACK_IMPORTED_MODULE_2__["ShapeRect"]();
            rect.setSize(box.width, box.heigth);
            label.addMaskSpr(rect);
        }
        emptyRectDown(targetRect) {
            if (!targetRect.label) {
                const label = this.getFillLabel();
                label.fontSize = this.inputFontSize;
                label.disH = 0;
                label.offW = 0;
                label.textBaseline = 'top';
                label.width = targetRect.width;
                label.fontSize *= (this.bg.scaleX);
                // targetRect.label.x = ( targetRect.width / 2  ) 
                targetRect.label = label;
                targetRect.addChild(targetRect.label);
                this.addLabelMask(targetRect, label);
            }
            if (targetRect.label.isDefault) {
                targetRect.label.text = '';
                targetRect.label.fontColor = '#000000';
                targetRect.label.isDefault = false;
            }
            if (true) {
                const scale = 1; // this.mapScale;
                let tmpRect = targetRect.getBoundingBox();
                const svBox = this.scrollView.getBoundingBox();
                const x = svBox.x + tmpRect.x * scale;
                const y = svBox.y + tmpRect.y * scale;
                const width = tmpRect.width * scale;
                const height = tmpRect.height * scale;
                const rect = { x, y, width, height };
                const style = {
                    'font-size': this.inputFontSize / this.canvasScale * this.bg.scaleX + 'px',
                    'color': '#000000',
                    'font-family': 'Aileron-Bold',
                    'line-height': this.inputFontSize / this.canvasScale * this.bg.scaleX + 'px',
                };
                this.showInputView(style, rect, targetRect.label.text || '', (value) => {
                    targetRect.label.text = value;
                    this.checkShowSubmit();
                });
            }
        }
        showCheckPanel() {
            if (!this.checkPanel) {
                this.checkPanel = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
                this.checkPanel.init(this.images.get("check_panel"));
                this.checkPanel.setScaleXY(this.mapScale);
                this.checkPanel.x = this.canvasWidth / 2;
                this.checkPanel.y = this.canvasHeight / 2;
                const label = new _Unit__WEBPACK_IMPORTED_MODULE_2__["Label"]();
                label.text = '本题只能提交一次，确认提交吗？';
                label.textAlign = 'center';
                label.fontColor = '#ffffff';
                label.fontSize = 56; //* this.mapScale;
                label.fontName = 'Aileron-Black';
                label.y = -70;
                this.checkPanel.addChild(label);
                // label.x = this.checkPanel.width / 2;
                // label.y = this.checkPanel.height / 2;
                const offX = 300;
                const okBtn = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
                okBtn.init(this.images.get("check_ok"));
                this.checkPanel.addChild(okBtn);
                okBtn.x = offX;
                okBtn.y = 130;
                this.okBtn = okBtn;
                const cancelBtn = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
                cancelBtn.init(this.images.get("check_cancel"));
                this.checkPanel.addChild(cancelBtn);
                cancelBtn.x = -offX;
                cancelBtn.y = okBtn.y;
                this.cancelBtn = cancelBtn;
                this.renderArr.push(this.checkPanel);
            }
            this.checkPanel.visible = true;
        }
        submitBtnClick() {
            // this.submitCount ++;
            const btnBaseY = this.submitBtn.y;
            const btnTargetY = btnBaseY + 5 * this.mapScale;
            const baseS = this.submitBtn.scaleX;
            const targetS = baseS * 0.95;
            const time = 0.07;
            this.canTouch = false;
            Object(_Unit__WEBPACK_IMPORTED_MODULE_2__["tweenChange"])(this.submitBtn, { y: btnTargetY, scaleX: targetS, scaleY: targetS }, time, () => {
                // tweenChange(this.submitBtn, {y: btnBaseY, scaleX: baseS, scaleY: baseS}, time)
                Object(_Unit__WEBPACK_IMPORTED_MODULE_2__["tweenChange"])(this.submitBtn, { y: btnBaseY, scaleX: baseS, scaleY: baseS }, time, () => {
                    this.canTouch = true;
                });
                this.showCheckPanel();
                // this.submitOff();
                // const isAllRight = this.checkAnswer();
                // if (isAllRight || this.submitCount >= 2) {
                //   this.changeBtnOff();
                //   this.btnArr = [];
                //   delayCall(0.3, ()=> {
                //     this.initResultView();
                //     this.setPageData('progress', '2', false);
                //     this.setPageData('submitCount', this.submitCount);
                //     this.serverSendAnswer('4-1', this.resultAnswerArr);
                //   })
                // }
            });
            const shadow = this.submitBtn.shadowSpr;
            const shadowBaseY = shadow.y; //shadow['baseY'];
            const shadowTargetY = shadowBaseY - 15 * this.mapScale;
            Object(_Unit__WEBPACK_IMPORTED_MODULE_2__["tweenChange"])(shadow, { y: shadowTargetY, alpha: 0 }, time, () => {
                shadow.y = shadowBaseY;
                shadow.alpha = 1;
                Object(_Unit__WEBPACK_IMPORTED_MODULE_2__["tweenChange"])(shadow, { y: shadowBaseY, alpha: 1 }, time);
            });
            // this.addResultAnswer();
        }
        addResultAnswer() {
            console.log('this.data.contentObj.sentenceArr: ', this.data.contentObj.sentenceArr);
            console.log('this.sentenceEmptyArr: ', this.sentenceEmptyArr);
            const sentenceArr = this.data.contentObj.sentenceArr;
            const resultAnswer = [];
            for (let i = 0; i < sentenceArr.length; i++) {
                const label = this.sentenceEmptyArr[i].label;
                const tmpData = {};
                tmpData['question'] = sentenceArr[i];
                tmpData['userAnswer'] = label.text;
                resultAnswer.push(tmpData);
            }
            this.resultAnswerArr.push(resultAnswer);
        }
        sendResult() {
            // if (this.userResultPic && this.userResultData) {
            const c = window['courseware'];
            if (!c) {
                return;
            }
            const duration = new Date().getTime() - this.localStartTime;
            c.sendAnswer({ resultData: this.userResultData, resultPic: this.userResultPic || '', duration });
            // }
        }
        setAnswerData(cb) {
            var _a;
            return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(this, void 0, void 0, function* () {
                let isAllRight = true;
                for (let i = 0; i < this.hotZoneArr.length; i++) {
                    const data = this.hotZoneArr[i].data;
                    console.log('data: ', data);
                    let answer = ((_a = this.hotZoneArr[i].label) === null || _a === void 0 ? void 0 : _a.text) || '';
                    console.log('answer: ', answer);
                    console.log('i: ', i);
                    // answer = answer.replace(/\n/g," ");
                    let result;
                    if (data.selectType == 'ai') {
                        result = yield this.serverTest(answer);
                        result.isAi = true;
                    }
                    else {
                        result = yield this.paperForCheck(data, answer, this.hotZoneArr[i].data.labelText);
                        // result = checkAnswer(data.selectType, answer, this.hotZoneArr[i].data.labelText || null);
                    }
                    console.log('result: ', JSON.parse(JSON.stringify(result)));
                    this.hotZoneArr[i].result = result;
                    if (!result.right) {
                        // this.removeRectText( this.hotZoneArr[i] );
                        isAllRight = false;
                    }
                    else {
                        this.hotZoneArr[i].isRight = true;
                        // this.showSentenceRight(this.hotZoneArr[i]);
                    }
                }
                cb();
            });
        }
        paperForCheck(data, answer, labelText = null) {
            return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(this, void 0, void 0, function* () {
                return new Promise((resolve, reject) => {
                    console.log(' in greadPapersForCheck data: ', { type: data.selectType, blankWord: answer, word: labelText });
                    window['courseware'].greadPapersForCheck({ type: data.selectType, blankWord: answer, word: labelText }, res => {
                        // res 需要toJSON
                        console.log('in greadPapersForCheck res: ', res);
                        if (res) {
                            resolve(JSON.parse(res));
                        }
                        else {
                            reject();
                        }
                    });
                });
            });
        }
        serverTest(text) {
            return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(this, void 0, void 0, function* () {
                return new Promise((resolve, reject) => {
                    const c = window['courseware'];
                    if (!c) {
                        console.error('not found window.courseware');
                        reject();
                        return;
                    }
                    if (text) {
                        this.iconData = {};
                        console.log(' greadPapersForText start');
                        c.greadPapersForText(text, (res) => {
                            var _a, _b;
                            console.log(' greadPapersForText end');
                            const resData = JSON.parse(res);
                            const sentsFeedback = (_b = (_a = resData.detail) === null || _a === void 0 ? void 0 : _a.essayFeedback) === null || _b === void 0 ? void 0 : _b.sentsFeedback;
                            let startIndex = 0;
                            if (sentsFeedback) {
                                for (let i = 0; i < sentsFeedback.length; i++) {
                                    const { errorPosInfos, rawSent } = sentsFeedback[i];
                                    if (!errorPosInfos || !rawSent) {
                                        continue;
                                    }
                                    const baseIndex = text.indexOf(rawSent, startIndex);
                                    console.log('text: ', text);
                                    console.log('rawSent: ', rawSent);
                                    console.log('baseIndex: ', baseIndex);
                                    for (let j = 0; j < errorPosInfos.length; j++) {
                                        const { reason, endPos } = errorPosInfos[j];
                                        this.addIconData(baseIndex + endPos, { reason });
                                    }
                                    startIndex = baseIndex;
                                }
                            }
                            console.log('res : ', res);
                            console.log('iconData : ', this.iconData);
                            this.createResultTextArr(text);
                            resolve({ resultTextArr: this.resultTextArr, iconData: this.iconData, detail: resData.detail });
                            // this.setComment(resData);
                        });
                    }
                });
            });
        }
        addIconData(index, result) {
            if (!this.iconData) {
                this.iconData = {};
            }
            const key = index.toString();
            if (!this.iconData[key]) {
                this.iconData[key] = { dataArr: [] };
            }
            this.iconData[key].dataArr.push(result);
        }
        createResultTextArr(text) {
            const iconKeys = Object.keys(this.iconData);
            iconKeys.sort((a, b) => {
                return Number(a) - Number(b);
            });
            this.resultTextArr = [];
            let curStartPos = 0;
            for (let i = 0; i < iconKeys.length; i++) {
                const textData = this.iconData[iconKeys[i]];
                const endPos = Number(iconKeys[i]);
                textData['text'] = text.substring(curStartPos, endPos);
                this.resultTextArr.push(textData);
                curStartPos = endPos;
            }
            const textData = { dataArr: [] };
            textData['text'] = text.substring(curStartPos);
            this.resultTextArr.push(textData);
            console.log('text: ', text);
            console.log('resultTextArr: ', this.resultTextArr);
        }
        removeRectText(emptyRect) {
            this.showBtnByText(emptyRect.label.text);
            emptyRect.removeChild(emptyRect.label);
            // removeItemFromArr(this.renderArr, emptyRect.label);
            emptyRect.label = null;
        }
        showSentenceRight(emptyRect) {
            if (!emptyRect.isRight) {
                emptyRect.isRight = true;
                const pos = { x: emptyRect.width / 2, y: emptyRect.height / 2 };
                this.showRightParticle(emptyRect, pos);
            }
        }
        showRightParticle(emptyRect, point) {
            const shapeW = 25; // * this.mapScale;
            const shapeH = 25; // * this.mapScale;
            Object(_Unit__WEBPACK_IMPORTED_MODULE_2__["showShapeParticle"])('rect', shapeW, shapeH, point, emptyRect, 20, 50, 180, 0.4);
        }
        showBtnByText(text) {
            for (let i = 0; i < this.btnArr.length; i++) {
                if (this.btnArr[i].text == text) {
                    this.btnArr[i].visible = true;
                    return;
                }
            }
        }
        checkOnTarget() {
            for (let i = 0; i < this.sentenceEmptyArr.length; i++) {
                if (this.checkClickTargetSv(this.sentenceEmptyArr[i])) {
                    this.playAudio('click', true);
                    if (this.sentenceEmptyArr[i].isRight) {
                        this.moveItemBack();
                        return;
                    }
                    const tmpText = this.sentenceEmptyArr[i].label ? this.sentenceEmptyArr[i].label.text : '';
                    const btnIndex = this.btnArr.indexOf(this.curMoveItem);
                    const isBtn = btnIndex != -1;
                    console.log('isBtn: ', isBtn);
                    if (isBtn && tmpText != '') {
                        this.moveItemBack();
                        return;
                    }
                    this.fillText(this.sentenceEmptyArr[i], this.curMoveItem.text);
                    if (this.curMoveItem.fillRect) {
                        this.fillText(this.curMoveItem.fillRect, tmpText);
                        this.curMoveItem.text = tmpText;
                        this.moveItemBack();
                    }
                    if (isBtn) {
                        this.removeBtn(this.curMoveItem);
                    }
                    this.checkShowSubmit();
                    return;
                }
            }
            this.moveItemBack();
        }
        removeBtn(btn) {
            this.moveItemBack();
            btn.visible = false;
            // removeItemFromArr(this.btnArr, btn);
            // removeItemFromArr(this.topArr, btn);
        }
        fillText(emptyRect, text) {
            const data = emptyRect.parent.data;
            if (!emptyRect.label) {
                emptyRect.label = this.getFillLabel();
                emptyRect.label.setScaleXY(1);
                emptyRect.label.textAlign = 'center';
                emptyRect.addChild(emptyRect.label);
                // this.renderArr.push(emptyRect.label);
            }
            const label = emptyRect.label;
            label.text = text;
            // label.width = emptyRect.width / this.mapScale;
            // label.setScaleXY(1);
            label.refreshSize();
            label.anchorY = 0.5;
            // label.y = emptyRect.parent.y //- label.height * label.scaleY ;
            // label.x = emptyRect.parent.x + ( emptyRect.x + emptyRect.width / 2 - label.width / 2 ) * this.mapScale
            label.y = emptyRect.height / 2;
            label.x = (emptyRect.width / 2);
            // const w1 = emptyRect.width / this.mapScale;
            // const w2 = label.width;
            // label.width = w1// w2 < w1 ? w1: w2;
            label['moveOffX'] = -label.width / 2 * label.scaleX;
            label['moveOffY'] = 0; // -label.height / 2 * label.scaleY;
            label['baseX'] = label.x;
            label['baseY'] = label.y;
            emptyRect.label = label;
            label.fillRect = emptyRect;
            console.log('label: ', label.width);
        }
        checkShowSubmit() {
            const arr = this.hotZoneArr;
            for (let i = 0; i < arr.length; i++) {
                if (arr[i].data.gIdx == '0') {
                    if (!arr[i].label || !arr[i].label.text || arr[i].label.isDefault) {
                        this.hideSubmit();
                        return;
                    }
                }
            }
            this.showSubmit();
        }
        moveItemBack() {
            if (this.curMoveItem.targetLabel) {
                this.curMoveItem.targetLabel.visible = true;
                Object(_Unit__WEBPACK_IMPORTED_MODULE_2__["removeItemFromArr"])(this.renderArr, this.curMoveItem);
                return;
            }
            this.curMoveItem.x = this.curMoveItem['baseX'];
            this.curMoveItem.y = this.curMoveItem['baseY'];
        }
        initIframe() {
            this.templateArr = this.data.contentObj.templateArr;
            if (this.templateArr.length <= 0) {
                return;
            }
            console.log('arr: ', this.templateArr);
            const c = window['courseware'];
            if (!c) {
                console.error('not found window.courseware');
                return;
            }
            const addPlayUrl = (name, index) => {
                c.getTemplateUrl(name, (data) => {
                    console.log('name~: ', name);
                    const urlData = JSON.parse(data);
                    console.log('data~~:', data);
                    console.log('urlData~~:', urlData);
                    console.log('i~~:', index);
                    this.templateArr[index].playUrl = this.sanitizer.bypassSecurityTrustResourceUrl(urlData.play_url + `?key=${index + 1}`);
                    this.appRef.tick();
                    index++;
                    if (index < this.templateArr.length) {
                        const { name, last_version, play_url } = this.templateArr[index].template;
                        addPlayUrl(name, index);
                    }
                });
            };
            const { name, last_version, play_url } = this.templateArr[0].template;
            addPlayUrl(name, 0);
            // for (let i=0; i<this.templateArr.length; i++) {
            //   const {name, last_version, play_url} = this.templateArr[i].template;
            //   const index = i;
            //   c.getTemplateUrl(name, (data) => {
            //     console.log('name~: ', name)
            //     const urlData = JSON.parse(data)
            //     console.log('data~~:' , data)
            //     console.log('urlData~~:' , urlData)
            //     console.log('i~~:' , index)
            //     this.templateArr[index].playUrl = this.sanitizer.bypassSecurityTrustResourceUrl(urlData.play_url + `?key=${index+1}`);
            //   })
            // const playUrl = `https://staging-teach.cdn.ireadabc.com/h5template/${name}/v${last_version}/${play_url}?key=${i+1}`
            // this.templateArr[i].playUrl = this.sanitizer.bypassSecurityTrustResourceUrl(playUrl); 
            // console.log('playUrl: ', playUrl);
            // }
            // this.showSubTemplate(0);
            // setTimeout(() => {
            // this.showSubTemplate(1);
            // }, 5000);
        }
        showSubTemplate(index) {
            if (this.isTeacher) {
                return;
            }
            console.log('showSubTemplate _ ', index);
            const arr = this.templateArr;
            console.log('arr: ', arr);
            for (let i = 0; i < arr.length; i++) {
                arr[i].leftOff = '0vw';
            }
            arr[index].leftOff = '100vw';
            this.appRef.tick();
            if (this.readyObj[(index + 1).toString()]) {
                this.sendCourseIn(index);
            }
        }
        hideSubTemplate(index) {
            this.templateArr[index].isHide = true;
            this.appRef.tick();
        }
        initWindowListener() {
            // const iframeArr = this.iframeArr;
            // // setTimeout(() => {
            //   console.log("iframeContent: ", this.iframeContent);
            //   let divArr = this.iframeContent.nativeElement.children;
            //   console.log('divArr: ', divArr);
            //   for (let i=0; i<divArr.length; i++) {
            //     const iframe = divArr[i].children[0];
            //     console.log('iframe: ', iframe);
            //     iframeArr.push(iframe)
            //   }
            //   console.log('iframeArr: ', iframeArr);
            // // }, 1);
            this.readyObj = {};
            window.addEventListener('message', (e) => {
                let msgData = e.data;
                if (msgData.action === "getData") {
                    console.log('msgData.urlParams: ', msgData);
                    const key = this.getQueryVariable(msgData.urlParams, 'key');
                    if (!key) {
                        return;
                    }
                    console.log('key: ', key);
                    const index = key - 1;
                    const divArr = this.iframeContent.nativeElement.children;
                    const iframecont = divArr[index].children[0];
                    // const iframecont = iframeArr[key-1]
                    const saveData = this.templateArr[index].data;
                    console.log("getData e: ", e);
                    const data = { msg: 'success', data: JSON.stringify(saveData) };
                    iframecont.contentWindow.postMessage({ action: 'getData', data: JSON.stringify(data) }, '*');
                    // const data2 =  { msg: 'success', data:  JSON.stringify({'isShowMore': false})};
                    // iframecont.contentWindow.postMessage({ action: 'is_show_more', data: JSON.stringify(data2) }, '*');
                    // setTimeout(() => {
                    //   _this.frameLoaded = true;
                    // }, 300);
                }
                if (msgData.action === "temp_send_result") {
                    console.log(' in temp_send_result');
                    console.log('msgData.urlParams: ', msgData);
                    let key = msgData.key;
                    if (!key) {
                        key = '4-3';
                    }
                    console.log("key: ", key);
                    this.serverSendAnswer(key, JSON.parse(msgData.data));
                    const progress = this.getPageData('progress');
                    if (progress == '2') {
                        this.setPageData('progress', '3');
                    }
                    else {
                        this.setPageData('progress', '4');
                    }
                    console.log('in temp_send_result __ msgData: ', msgData);
                }
                if (msgData.action === "temp_show_more") {
                    console.log(' in temp_show_more');
                    this.checkShowSubTemplateOne();
                }
                if (msgData.action == 'course-ready') {
                    console.log(' in course-ready msgData: ', msgData);
                    console.log('msgData.urlParams: ', msgData);
                    const key = this.getQueryVariable(msgData.urlParams, 'key');
                    if (!key) {
                        return;
                    }
                    this.readyObj[key] = true;
                }
            });
        }
        sendCourseIn(index) {
            const divArr = this.iframeContent.nativeElement.children;
            const iframecont = divArr[index].children[0];
            const data = { msg: 'success', data: '' };
            iframecont.contentWindow.postMessage({ action: 'airEvents', evt: 'course-in-screen', data: JSON.stringify(data) }, '*');
        }
        getQueryVariable(url, variable) {
            var query = url.substring(1);
            var vars = query.split("&");
            for (var i = 0; i < vars.length; i++) {
                var pair = vars[i].split("=");
                if (pair[0] == variable) {
                    return pair[1];
                }
            }
            return (false);
        }
        serverSendAnswer(key, data) {
            const c = window['courseware'];
            if (!c) {
                return;
            }
            if (!this.serverResultObj) {
                this.serverResultObj = {};
            }
            this.serverResultObj[key] = data;
            this.serverResultObj.duration = new Date().getTime() - this.localStartTime;
            c.sendAnswer(this.serverResultObj);
        }
        update() {
            if (this.isUpdateStop) {
                return;
            }
            this.animationId = window.requestAnimationFrame(this.update.bind(this));
            // 清除画布内容
            this.ctx.clearRect(0, 0, this.canvasWidth, this.canvasHeight);
            _tweenjs_tween_js__WEBPACK_IMPORTED_MODULE_6__["default"].update();
            this.updateArr(this.renderArr);
            this.updateArr(this.topArr);
            // if (this.curMoveItem) {
            //   this.curMoveItem.update();
            // }
            this.updateItem(this.maskPic);
            // this.updateArr(this.endPageArr);
        }
        updateItem(item) {
            if (item) {
                item.update();
            }
        }
        updateArr(arr) {
            if (!arr) {
                return;
            }
            for (let i = 0; i < arr.length; i++) {
                arr[i].update(this);
            }
        }
        initHotZone() {
            let curBgRect;
            if (this.bg) {
                curBgRect = this.bg.getBoundingBox();
            }
            let oldBgRect = this.data.contentObj.bgItem.rect;
            if (!oldBgRect) {
                oldBgRect = curBgRect;
            }
            const rate = curBgRect.width / oldBgRect.width;
            this.hotZoneArr = [];
            const arr = this.data.contentObj.hotZoneItemArr;
            if (!arr)
                return;
            console.log('arr: ', arr);
            for (let i = 0; i < arr.length; i++) {
                const data = JSON.parse(JSON.stringify(arr[i]));
                data.rect.x *= rate;
                data.rect.y *= rate;
                data.rect.width *= rate;
                data.rect.height *= rate;
                data.rect.x += curBgRect.x;
                data.rect.y += curBgRect.y;
                const hotZone = this.getHotZoneItem(data, i);
                if (hotZone != null) {
                    this.hotZoneArr.push(hotZone);
                }
            }
        }
        getHotZoneItem(data, index) {
            switch (data.gIdx) {
                case "0": // 轮播图
                    return this.setOnePic(data, index);
                case "1": // 选择答题区域
                    return this.setOneArea(data);
                case "2": // 简答问题
                    return this.setOneShortAnswerPic(data);
                case "3": // 简答题答案区 和 内容
                    return this.setOneShortAnswerRect(data);
                case "4": // 讲解按钮
                    return this.setOneBtnVideo(data);
                case "5": // 书写过程按钮
                    return this.setOneBtnWrite(data);
                case "6": // 书写过程展示区域
                    return this.setOneWriteArea(data);
            }
            return;
        }
        setOneWriteArea(data) {
            console.log('setOneBtn data: ', data);
            const saveRect = data.rect;
            const item = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            item.width = saveRect.width;
            item.height = saveRect.height;
            item.x = saveRect.x;
            item.y = saveRect.y;
            item['data'] = data;
            this.writeAreaRect = item;
            // item.alpha = 0;
            // item.visible = false;
            // const w = item.width;
            // const h = item.height;
            // const subH = h / 6;
            // const ques = this.getMySprite(this.data.contentObj.ques_pic_url);
            // const sx = w / ques.width;
            // const sy = subH * 1.5 / ques.height;
            // ques.setScaleXY(Math.min(sx, sy));
            // ques.x = w / 2;
            // ques.y = subH;
            // item.addChild(ques);
            // this.optionItemArr = [];
            // const optionArr = this.data.contentObj.optionArr;
            // const baseY = subH * 2.5;
            // for (let i=0; i<4; i++) {
            //   if (optionArr[i]) {
            //     const opItem = this.getOneOpItem(optionArr[i]);
            //     const sx = w / opItem.width; 
            //     const sy = subH / opItem.height;
            //     opItem.setScaleXY(Math.min(sx, sy));
            //     opItem.y = baseY + i * subH;
            //     opItem.x = w / 2;
            //     item.addChild(opItem);
            //     this.optionItemArr.push(opItem);
            //   }
            // }
            // this.curAreaItem = item;
            this.renderArr.push(item);
            return item;
        }
        setOneBtnVideo(data) {
            console.log('setOneBtnVideo data: ', data);
            const btn = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            btn.init(this.images.get('btn_video'));
            const saveRect = data.rect;
            btn.x = saveRect.x + saveRect.width / 2;
            btn.y = saveRect.y + saveRect.height / 2;
            btn['data'] = data;
            const sx = saveRect.width / btn.width;
            const sy = saveRect.height / btn.height;
            // btn.scaleX = sx;
            // btn.scaleY = sy;
            btn.setScaleXY(this.mapScale);
            btn.visible = false;
            this.renderArr.push(btn);
            this.videoBtn = btn;
            return btn;
        }
        setOneBtnWrite(data) {
            console.log('setOneBtnWrite data: ', data);
            const btn = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            btn.init(this.images.get('btn_write'));
            const saveRect = data.rect;
            btn.x = saveRect.x + saveRect.width / 2;
            btn.y = saveRect.y + saveRect.height / 2;
            btn['data'] = data;
            const sx = saveRect.width / btn.width;
            const sy = saveRect.height / btn.height;
            // btn.scaleX = sx;
            // btn.scaleY = sy;
            btn.setScaleXY(this.mapScale);
            btn.visible = false;
            const label = new _Unit__WEBPACK_IMPORTED_MODULE_2__["Label"]();
            label.text = "书写答题过程";
            btn.addChild(label);
            label.fontColor = '#fff';
            label.textAlign = 'center';
            label.fontSize = 50;
            this.renderArr.push(btn);
            this.writeBtn = btn;
            return btn;
        }
        setOneShortAnswerPic(data) {
            console.log('setOneShortAnswerPic data: ', data);
            const pic = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            pic.init(this.images.get(data.pic_url));
            const saveRect = data.rect;
            pic.x = saveRect.x + saveRect.width / 2;
            pic.y = saveRect.y + saveRect.height / 2;
            pic['data'] = data;
            const sx = saveRect.width / pic.width;
            const sy = saveRect.height / pic.height;
            pic.scaleX = sx;
            pic.scaleY = sy;
            pic.visible = false;
            // this.openBtn = pic;
            this.renderArr.push(pic);
            this.answerQuesPic = pic;
            return pic;
        }
        setOneShortAnswerRect(data) {
            console.log('setOneShortAnswerRect data: ', data);
            const saveRect = data.rect;
            const item = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            item.width = saveRect.width;
            item.height = saveRect.height;
            item.x = saveRect.x;
            item.y = saveRect.y;
            item['data'] = data;
            // item.alpha = 0;
            item.visible = false;
            this.answerRectNode = item;
            this.answerRect = this.setAnswerRect(item, saveRect);
            // const answerNormal = this.getMySprite('answer_normal');
            // const sx = saveRect.width / answerNormal.width;
            // const sy = saveRect.height / answerNormal.height;
            // const s = Math.min(sx, sy);
            // answerNormal.setScaleXY(s);
            // answerNormal.x = answerNormal.width / 2 * answerNormal.scaleX;
            // answerNormal.y = item.height / 2;
            // item.addChild(answerNormal);
            // item['normalPic'] = answerNormal;
            // this.answerRectNode.curRes = 'normalPic';
            // const answerRight = this.getMySprite('answer_right');
            // answerRight.setScaleXY(s);
            // answerRight.x = answerNormal.x;
            // answerRight.y = answerNormal.y;
            // item.addChild(answerRight);
            // item['rightPic'] = answerRight;
            // answerRight.visible = false;
            // const rightIcon = this.getMySprite('icon_right');
            // rightIcon.x = answerRight.width / 2;
            // answerRight.addChild(rightIcon)
            // const answerWrong = this.getMySprite('answer_wrong');
            // answerWrong.setScaleXY(s);
            // answerWrong.x = answerNormal.x;
            // answerWrong.y = answerNormal.y;
            // item.addChild(answerWrong);
            // item['wrongPic'] = answerWrong;
            // answerWrong.visible = false;
            // const wrongIcon = this.getMySprite('icon_wrong');
            // wrongIcon.x = answerWrong.width / 2;
            // answerWrong.addChild(wrongIcon)
            // this.answerRect = answerNormal;
            const labelPic = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            item.addChild(labelPic);
            this.answerLabelPic = labelPic;
            // labelPic.load(url).then(img => {
            // });
            this.renderArr.push(item);
            return item;
        }
        setAnswerRect(item, saveRect) {
            const answerNormal = this.getMySprite('answer_normal');
            const sx = saveRect.width / answerNormal.width;
            const sy = saveRect.height / answerNormal.height;
            const s = Math.min(sx, sy);
            answerNormal.setScaleXY(s);
            answerNormal.x = answerNormal.width / 2 * answerNormal.scaleX;
            answerNormal.y = item.height / 2;
            item.addChild(answerNormal);
            item['normalPic'] = answerNormal;
            this.answerRectNode.curRes = 'normalPic';
            const answerRight = this.getMySprite('answer_right');
            answerRight.setScaleXY(s);
            answerRight.x = answerNormal.x;
            answerRight.y = answerNormal.y;
            item.addChild(answerRight);
            item['rightPic'] = answerRight;
            answerRight.visible = false;
            const rightIcon = this.getMySprite('icon_right');
            rightIcon.x = answerRight.width / 2;
            answerRight.addChild(rightIcon);
            const answerWrong = this.getMySprite('answer_wrong');
            answerWrong.setScaleXY(s);
            answerWrong.x = answerNormal.x;
            answerWrong.y = answerNormal.y;
            item.addChild(answerWrong);
            item['wrongPic'] = answerWrong;
            answerWrong.visible = false;
            const wrongIcon = this.getMySprite('icon_wrong');
            wrongIcon.x = answerWrong.width / 2;
            answerWrong.addChild(wrongIcon);
            return answerNormal;
        }
        setOnePic(data, index) {
            console.log('setOnePic data: ', data);
            console.log('setOnePic index: ', index);
            const pic = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            pic.init(this.images.get(data.pic_url));
            const saveRect = data.rect;
            pic.x = saveRect.x + saveRect.width / 2;
            pic.y = saveRect.y + saveRect.height / 2;
            pic['data'] = data;
            const sx = saveRect.width / pic.width;
            const sy = saveRect.height / pic.height;
            pic.scaleX = sx;
            pic.scaleY = sy;
            pic.visible = false;
            // this.openBtn = pic;
            this.renderArr.push(pic);
            return pic;
        }
        setOneArea(data) {
            console.log('setOneBtn data: ', data);
            const saveRect = data.rect;
            // const item = new ShapeRect(this.ctx);
            // item.setSize(saveRect.width, saveRect.height);
            // item.fillColor = '#ff0000';
            const item = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            item.width = saveRect.width;
            item.height = saveRect.height;
            item.x = saveRect.x;
            item.y = saveRect.y;
            item['data'] = data;
            item.alpha = 0;
            item.visible = false;
            const w = item.width;
            const h = item.height;
            const subH = h / 6;
            const ques = this.getMySprite(this.data.contentObj.ques_pic_url);
            const sx = w / ques.width;
            const sy = subH * 1.5 / ques.height;
            ques.setScaleXY(Math.min(sx, sy));
            ques.x = w / 2;
            ques.y = subH;
            item.addChild(ques);
            this.optionItemArr = [];
            const optionArr = this.data.contentObj.optionArr;
            const baseY = subH * 2.5;
            for (let i = 0; i < 4; i++) {
                if (optionArr[i] && optionArr[i].pic_url) {
                    const opItem = this.getOneOpItem(optionArr[i]);
                    const sx = w / opItem.width;
                    const sy = subH / opItem.height;
                    opItem.setScaleXY(Math.min(sx, sy));
                    opItem.y = baseY + i * subH;
                    opItem.x = w / 2;
                    item.addChild(opItem);
                    this.optionItemArr.push(opItem);
                }
            }
            this.curAreaItem = item;
            this.renderArr.push(item);
            return item;
        }
        resetAnswerQues(data) {
            const quesPic = this.answerQuesPic;
            const rect = quesPic.getBoundingBox();
            quesPic.load(data.ques_pic_url).then(img => {
                const sy = rect.height / quesPic.height;
                quesPic.setScaleXY(sy);
                quesPic.x = rect.x + quesPic.width / 2 * quesPic.scaleX;
            });
            this.renderArr.push(quesPic);
        }
        resetAnswerArea() {
            const data = this.answerRectNode.data;
            const saveRect = data.rect;
            const item = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            item.width = saveRect.width;
            item.height = saveRect.height;
            item.x = saveRect.x;
            item.y = saveRect.y;
            item['data'] = data;
            // item.alpha = 0;
            item.visible = false;
            this.answerRectNode = item;
            this.answerRect = this.setAnswerRect(item, saveRect);
            data.mathLabel = this.data.contentObj.new_answer;
            // const answerNormal = this.getMySprite('answer_normal');
            // const sx = saveRect.width / answerNormal.width;
            // const sy = saveRect.height / answerNormal.height;
            // const s = Math.min(sx, sy);
            // answerNormal.setScaleXY(s);
            // answerNormal.x = answerNormal.width / 2 * answerNormal.scaleX;
            // answerNormal.y = answerNormal.height / 2 * answerNormal.scaleY;
            // item.addChild(answerNormal);
            // item['normalPic'] = answerNormal;
            // this.answerRectNode.curRes = 'normalPic';
            // const answerRight = this.getMySprite('answer_right');
            // answerRight.setScaleXY(s);
            // answerRight.x = answerRight.width / 2 * answerRight.scaleX;
            // answerRight.y = answerRight.height / 2 * answerRight.scaleY;
            // item.addChild(answerRight);
            // item['rightPic'] = answerRight;
            // answerRight.visible = false;
            // const answerWrong = this.getMySprite('answer_wrong');
            // answerWrong.setScaleXY(s);
            // answerWrong.x = answerWrong.width / 2 * answerWrong.scaleX;
            // answerWrong.y = answerWrong.height / 2 * answerWrong.scaleY;
            // item.addChild(answerWrong);
            // item['wrongPic'] = answerWrong;
            // answerWrong.visible = false;
            // this.answerRect = answerNormal;
            const labelPic = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            item.addChild(labelPic);
            this.answerLabelPic = labelPic;
            this.renderArr.push(item);
        }
        changeAnswerArea() {
            const data = this.data.contentObj.answer_obj;
            this.showSmallTitle(data);
            this.resetAnswerQues(data);
            this.resetAnswerArea();
            this.showWriteBtn();
        }
        changeChoiceArea(data) {
            console.log('changeChoiceArea data: ', data);
            this.cleanSmallTitle();
            this.showSmallTitle(data);
            if (this.curAreaItem) {
                data.rect = this.curAreaItem.data.rect;
            }
            const saveRect = data.rect;
            // const item = new ShapeRect(this.ctx);
            // item.setSize(saveRect.width, saveRect.height);
            // item.fillColor = '#ff0000';
            const item = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"]();
            item.width = saveRect.width;
            item.height = saveRect.height;
            item.x = saveRect.x;
            item.y = saveRect.y;
            item['data'] = data;
            // item.alpha = 0;
            // item.visible = false;
            const w = item.width;
            const h = item.height;
            const subH = h / 6;
            const ques = this.getMySprite(data.ques_pic_url);
            const sx = w / ques.width;
            const sy = subH * 1.5 / ques.height;
            ques.setScaleXY(Math.min(sx, sy));
            ques.x = w / 2;
            ques.y = subH;
            item.addChild(ques);
            this.optionItemArr = [];
            const optionArr = data.optionArr;
            console.log('~optionArr: ', optionArr);
            const baseY = subH * 2.5;
            for (let i = 0; i < optionArr.length; i++) {
                if (optionArr[i] && optionArr[i].pic_url) {
                    const opItem = this.getOneOpItem(optionArr[i]);
                    const sx = w / opItem.width;
                    const sy = subH / opItem.height;
                    opItem.setScaleXY(Math.min(sx, sy));
                    opItem.y = baseY + i * subH;
                    opItem.x = w / 2;
                    item.addChild(opItem);
                    this.optionItemArr.push(opItem);
                }
            }
            this.curAreaItem = item;
            this.renderArr.push(item);
            return item;
        }
        getOneOpItem(data) {
            const opItem = this.getMySprite('op_item');
            const opItemNode = this.getMySprite('op_item');
            opItemNode.alpha = 0;
            opItemNode.childDepandAlpha = false;
            opItemNode.width = opItem.width;
            opItemNode.height = opItem.height;
            opItemNode.addChild(opItem);
            opItemNode['defaultPic'] = opItem;
            opItemNode['curRes'] = 'defaultPic';
            const opItemWrong = this.getMySprite('op_item_wrong');
            opItemNode.addChild(opItemWrong);
            opItemWrong.visible = false;
            opItemNode['wrongPic'] = opItemWrong;
            const wrongIcon = this.getMySprite('icon_wrong');
            wrongIcon.x = opItemWrong.width / 2;
            opItemWrong.addChild(wrongIcon);
            const opItemRight = this.getMySprite('op_item_right');
            opItemNode.addChild(opItemRight);
            opItemRight.visible = false;
            opItemNode['rightPic'] = opItemRight;
            const rightIcon = this.getMySprite('icon_right');
            rightIcon.x = opItemRight.width / 2;
            opItemRight.addChild(rightIcon);
            const opItemNormal = this.getMySprite('op_item_normal');
            opItemNode.addChild(opItemNormal);
            opItemNormal.visible = false;
            opItemNode['normalPic'] = opItemNormal;
            const label = new _Unit__WEBPACK_IMPORTED_MODULE_2__["Label"]();
            label.text = data.id;
            label.fontColor = '#ffffff';
            label.x = -opItemNode.width / 2 + 50;
            opItemNode.addChild(label);
            const subX = 150;
            const opPic = this.getMySprite(data.pic_url);
            const sx = (opItemNode.width - subX) / opPic.width;
            const sy = (opItemNode.height - 20) / opPic.height;
            opPic.setScaleXY(Math.min(sx, sy));
            opPic.anchorX = 0;
            opPic.x = -opItemNode.width / 2 + subX;
            opItemNode.addChild(opPic);
            console.log('op data: ', data);
            opItemNode['data'] = data;
            return opItemNode;
        }
        setOneRect(data, index) {
            const saveRect = data.rect;
            const item = new _Unit__WEBPACK_IMPORTED_MODULE_2__["ShapeRectNew"](this.ctx);
            item.setSize(saveRect.width, saveRect.height, 5);
            item.setOutLine('#dcc077', 2);
            item.fill = false;
            item.x = saveRect.x;
            item.y = saveRect.y;
            // item.setScaleXY(this.bg.scaleX);
            item.fillColor = '#dcc077';
            item['data'] = data;
            // item.alpha = 0;
            this.scrollView.addItem(item);
            const rectLabel = this.getFillLabel();
            rectLabel.topH = 8;
            rectLabel.fontSize = this.inputFontSize;
            rectLabel.disH = 0;
            rectLabel.offW = 0;
            rectLabel.textBaseline = 'top';
            rectLabel.width = item.width;
            rectLabel.fontSize *= (this.bg.scaleX);
            // targetRect.label.x = ( targetRect.width / 2  ) 
            item['label'] = rectLabel;
            item.addChild(item['label']);
            this.addLabelMask(item, rectLabel);
            rectLabel.text = 'Please Enter ...';
            rectLabel.fontColor = '#cccccc';
            rectLabel['isDefault'] = true;
            // const subX = data.rect.x - this.bg.data.rect.x;
            // const subY = data.rect.y - this.bg.data.rect.y;
            // item.x = subX * this.mapScale //- this.bg.width / 2;
            // item.y = subY * this.mapScale //- this.bg.height / 2;
            // // item.y -= this.bg.height / 2;
            // this.bg.addChild(item);
            const circle = new _Unit__WEBPACK_IMPORTED_MODULE_2__["ShapeCircle"]();
            circle.setRadius(20 * this.bg.scaleX);
            circle.x = item.x + item.width;
            circle.y = item.y;
            circle.fillColor = '#dcc077';
            this.scrollView.addItem(circle);
            const label = new _Unit__WEBPACK_IMPORTED_MODULE_2__["Label"]();
            label.text = index + 1;
            label.fontColor = '#ffffff';
            label.textAlign = 'center';
            label.fontSize = 28;
            label.fontName = 'Aileron-Bold';
            label.y = 2;
            circle.addChild(label);
            // this.renderArr.push(item);
            return item;
        }
        showEndPetal() {
            this.endPageArr = [];
            this.showPetalFlag = true;
            this.addPetal();
        }
        stopEndPetal() {
            this.endPageArr = [];
            this.showPetalFlag = false;
        }
        addPetal() {
            if (!this.showPetalFlag) {
                return;
            }
            const petal = this.getPetal();
            this.endPageArr.push(petal);
            Object(_Unit__WEBPACK_IMPORTED_MODULE_2__["moveItem"])(petal, petal.x, this.canvasHeight + petal.height * petal.scaleY, petal['time'], () => {
                Object(_Unit__WEBPACK_IMPORTED_MODULE_2__["removeItemFromArr"])(this.endPageArr, petal);
            });
            Object(_Unit__WEBPACK_IMPORTED_MODULE_2__["rotateItem"])(petal, petal['tr'], petal['time']);
            setTimeout(() => {
                this.addPetal();
            }, 100);
        }
        getPetal() {
            const petal = new _Unit__WEBPACK_IMPORTED_MODULE_2__["MySprite"](this.ctx);
            const id = Math.ceil(Math.random() * 3);
            petal.init(this.images.get('petal_' + id));
            const randomS = (Math.random() * 0.4 + 0.6) * this.mapScale;
            petal.setScaleXY(randomS);
            const randomR = Math.random() * 360;
            petal.rotation = randomR;
            const randomX = Math.random() * this.canvasWidth;
            petal.x = randomX;
            petal.y = -petal.height / 2 * petal.scaleY;
            const randomT = 0.5 + Math.random() * 2.5;
            petal['time'] = randomT;
            let randomTR = 360 * Math.random(); // - 180;
            if (Math.random() < 0.5) {
                randomTR *= -1;
            }
            petal['tr'] = randomTR;
            return petal;
        }
        initListener() {
            this.winResizeEventStream
                .pipe(Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_5__["debounceTime"])(500))
                .subscribe(data => {
                this.renderAfterResize();
            });
            // ---------------------------------------------
            const setParentOffset = () => {
                const rect = this.canvas.nativeElement.getBoundingClientRect();
                this.canvasLeft = rect.left;
                this.canvasTop = rect.top;
            };
            const setMxMyByTouch = (event) => {
                if (event.touches.length <= 0) {
                    return;
                }
                if (this.canvasLeft == null) {
                    setParentOffset();
                }
                this.mx = event.touches[0].pageX * this.canvasScale - this.canvasLeft;
                this.my = event.touches[0].pageY * this.canvasScale - this.canvasTop;
            };
            const setMxMyByMouse = (event) => {
                this.mx = event.offsetX * this.canvasScale;
                this.my = event.offsetY * this.canvasScale;
            };
            // ---------------------------------------------
            let firstTouch = true;
            const touchDownFunc = (e) => {
                if (firstTouch) {
                    firstTouch = false;
                    removeMouseListener();
                }
                console.log('touch down');
                setMxMyByTouch(e);
                this.mapDown(e);
            };
            const touchMoveFunc = (e) => {
                setMxMyByTouch(e);
                this.mapMove(e);
            };
            const touchUpFunc = (e) => {
                setMxMyByTouch(e);
                this.mapUp(e);
            };
            const mouseDownFunc = (e) => {
                if (firstTouch) {
                    firstTouch = false;
                    removeTouchListener();
                }
                console.log('mouse down');
                setMxMyByMouse(e);
                this.mapDown(e);
            };
            const mouseMoveFunc = (e) => {
                setMxMyByMouse(e);
                this.mapMove(e);
            };
            const mouseUpFunc = (e) => {
                setMxMyByMouse(e);
                this.mapUp(e);
            };
            const element = this.canvas.nativeElement;
            const addTouchListener = () => {
                element.addEventListener('touchstart', touchDownFunc);
                element.addEventListener('touchmove', touchMoveFunc);
                element.addEventListener('touchend', touchUpFunc);
                element.addEventListener('touchcancel', touchUpFunc);
            };
            const removeTouchListener = () => {
                element.removeEventListener('touchstart', touchDownFunc);
                element.removeEventListener('touchmove', touchMoveFunc);
                element.removeEventListener('touchend', touchUpFunc);
                element.removeEventListener('touchcancel', touchUpFunc);
            };
            const addMouseListener = () => {
                element.addEventListener('mousedown', mouseDownFunc);
                element.addEventListener('mousemove', mouseMoveFunc);
                element.addEventListener('mouseup', mouseUpFunc);
            };
            const removeMouseListener = () => {
                element.removeEventListener('mousedown', mouseDownFunc);
                element.removeEventListener('mousemove', mouseMoveFunc);
                element.removeEventListener('mouseup', mouseUpFunc);
            };
            addMouseListener();
            addTouchListener();
            // element.addEventListener('mousewheel', (event) => {
            //   setMxMyByMouse(event);
            //   if (event.deltaY > 0) {
            //     this.wheelDown(event);
            //   } else {
            //     this.wheelUp(event);
            //   }
            // });
        }
        wheelUp(event) {
            if (this.resultSv) {
                if (this.checkClickTarget(this.resultSv)) {
                    this.resultSv.onWheelUp(event.deltaY);
                }
            }
            else {
                if (this.checkClickTarget(this.scrollView)) {
                    this.scrollView.onWheelUp(event.deltaY);
                }
            }
        }
        wheelDown(event) {
            if (this.resultSv) {
                if (this.checkClickTarget(this.resultSv)) {
                    this.resultSv.onWheelDown(event.deltaY);
                }
            }
            else {
                if (this.checkClickTarget(this.scrollView)) {
                    this.scrollView.onWheelDown(event.deltaY);
                }
            }
        }
        playAudio(key, now = false, callback = null) {
            const audio = this.audioObj[key];
            if (audio) {
                const audioNew = new Audio();
                audioNew.src = audio.src;
                audioNew.load();
                // audioNew.play();
                if (now) {
                    audio.pause();
                    audio.currentTime = 0;
                }
                if (callback) {
                    audio.onended = () => {
                        callback();
                        audio.onended = null;
                    };
                }
                audio.play();
            }
        }
        showArr(arr) {
            if (!arr) {
                return;
            }
            for (let i = 0; i < arr.length; i++) {
                arr[i].visible = true;
            }
        }
        hideArr(arr) {
            if (!arr) {
                return;
            }
            for (let i = 0; i < arr.length; i++) {
                arr[i].visible = false;
            }
        }
        IsPC() {
            if (window['ELECTRON']) {
                return false; // 封装客户端标记
            }
            if (document.body.ontouchmove !== undefined && document.body.ontouchmove !== undefined) {
                return false;
            }
            else {
                return true;
            }
        }
        loadResources() {
            const pr = [];
            this.rawImages.forEach((value, key) => {
                const p = this.preload(value)
                    .then(img => {
                    // img['setAttribute']("crossOrigin",'Anonymous')
                    this.images.set(key, img);
                })
                    .catch(err => console.log(err));
                pr.push(p);
            });
            this.rawAudios.forEach((value, key) => {
                const a = this.preloadAudio(value)
                    .then(() => {
                    // this.images.set(key, img);
                })
                    .catch(err => console.log(err));
                pr.push(a);
            });
            return Promise.all(pr);
        }
        preload(url) {
            return new Promise((resolve, reject) => {
                const img = new Image();
                img['crossOrigin'] = "Anonymous";
                // img.crossOrigin = "anonymous";
                img.onload = () => resolve(img);
                img.onerror = reject;
                img.src = url;
            });
        }
        preloadAudio(url) {
            return new Promise((resolve, reject) => {
                const audio = new Audio();
                resolve({});
                audio.oncanplay = (a) => {
                    //resolve();
                };
                audio.onerror = () => {
                    reject();
                };
                audio.src = url;
                audio.load();
            });
        }
        renderAfterResize() {
            this.canvasWidth = this.wrap.nativeElement.clientWidth;
            this.canvasHeight = this.wrap.nativeElement.clientHeight;
            this.init();
        }
        checkClickTargetSv(target) {
            // console.log('target: ', target);
            const scale = 1; // this.mapScale;
            let tmpRect = target.getBoundingBox();
            const svBox = this.scrollView.getBoundingBox();
            const x = svBox.x + tmpRect.x * scale;
            const y = svBox.y + tmpRect.y * scale;
            const width = tmpRect.width * scale;
            const height = tmpRect.height * scale;
            const rect = { x, y, width, height };
            // const contentBox = this.scrollView.content.getBoundingBox();
            // rect.x += contentBox.x + svBox.x;
            // rect.y += contentBox.y + svBox.y;
            // console.log('rect: ', rect);
            // console.log('this.mx: ', this.mx);
            // console.log('this.my: ', this.my);
            // const shape = new ShapeRectNew();
            // shape.x = rect.x;
            // shape.y = rect.y;
            // shape.fillColor = '#0000ff'
            // shape.alpha = 0.5;
            // shape.setSize(rect.width, rect.height, 1);
            // this.renderArr.push(shape);
            if (this.checkPointInRect(this.mx, this.my, rect)) {
                return true;
            }
            return false;
        }
        checkClickTarget(target) {
            const rect = target.getBoundingBox();
            // rect.x /= 2;
            // rect.y /= 2;
            // rect.width /= 2;
            // rect.height /= 2;
            // console.log('rect: ', rect);
            if (this.checkPointInRect(this.mx, this.my, rect)) {
                return true;
            }
            return false;
        }
        getWorlRect(target) {
            let rect = target.getBoundingBox();
            if (target.parent) {
                const pRect = this.getWorlRect(target.parent);
                rect.x += pRect.x;
                rect.y += pRect.y;
            }
            return rect;
        }
        checkPointInRect(x, y, rect) {
            if (x >= rect.x && x <= rect.x + rect.width) {
                if (y >= rect.y && y <= rect.y + rect.height) {
                    return true;
                }
            }
            return false;
        }
        getPosByAngle(angle, len) {
            const radian = angle * Math.PI / 180;
            const x = Math.sin(radian) * len;
            const y = Math.cos(radian) * len;
            return { x, y };
        }
        getPosDistance(sx, sy, ex, ey) {
            const _x = ex - sx;
            const _y = ey - sy;
            const len = Math.sqrt(Math.pow(_x, 2) + Math.pow(_y, 2));
            return len;
        }
        b64ToUint8Array(b64Image) {
            var img = atob(b64Image.split(',')[1]);
            var img_buffer = [];
            var i = 0;
            while (i < img.length) {
                img_buffer.push(img.charCodeAt(i));
                i++;
            }
            return new Uint8Array(img_buffer);
        }
        convertCanvasToImage() {
            console.log('1');
            if (!this.uploadUrl) {
                // this.userResultPic = ''//true
                this.sendResult();
                return;
            }
            console.log('2 uploadUrl: ', this.uploadUrl.toString());
            const src = this.canvas.nativeElement.toDataURL("image/png");
            const arr = src.split(','), mime = arr[0].match(/:(.*?);/)[1], bstr = atob(arr[1]);
            let n = bstr.length;
            const u8arr = new Uint8Array(n);
            while (n--) {
                u8arr[n] = bstr.charCodeAt(n);
            }
            const obj = new Blob([u8arr], { type: mime });
            const fd = new FormData();
            fd.append("file", obj, "cw_cover.png");
            // 上传截图
            this.http.post(this.uploadUrl, fd).subscribe((res) => {
                // 存储服务器的截图url
                if (res['url']) {
                    console.log('res url: ', res['url']);
                    this.userResultPic = res['url'];
                    this.sendResult();
                }
            });
        }
        httpServer(type, url, options, cb) {
            this.http[type](url, options)
                .subscribe(val => {
                console.log("Post call successful value returned in body", val);
                cb(val);
            }, error => {
                console.log("Post call in error", error);
                cb(error);
            }, () => {
                console.log("The Post observable is now completed.");
                cb(null);
            });
        }
    }
    PlayComponent.ɵfac = function PlayComponent_Factory(t) { return new (t || PlayComponent)(_angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵdirectiveInject"](_angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpClient"]), _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵdirectiveInject"](_angular_platform_browser__WEBPACK_IMPORTED_MODULE_9__["DomSanitizer"]), _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵdirectiveInject"](_angular_core__WEBPACK_IMPORTED_MODULE_1__["ApplicationRef"]), _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵdirectiveInject"](_angular_core__WEBPACK_IMPORTED_MODULE_1__["ViewContainerRef"])); };
    PlayComponent.ɵcmp = _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵdefineComponent"]({ type: PlayComponent, selectors: [["app-play"]], viewQuery: function PlayComponent_Query(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵstaticViewQuery"](_c0, true);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵstaticViewQuery"](_c1, true);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵstaticViewQuery"](_c2, true);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵstaticViewQuery"](_c3, true);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵstaticViewQuery"](_c4, true);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵstaticViewQuery"](_c5, true);
            }
            if (rf & 2) {
                var _t;
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵqueryRefresh"](_t = _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵloadQuery"]()) && (ctx.canvas = _t.first);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵqueryRefresh"](_t = _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵloadQuery"]()) && (ctx.wrap = _t.first);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵqueryRefresh"](_t = _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵloadQuery"]()) && (ctx.iframeContent = _t.first);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵqueryRefresh"](_t = _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵloadQuery"]()) && (ctx.videoNode = _t.first);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵqueryRefresh"](_t = _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵloadQuery"]()) && (ctx.tpl = _t.first);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵqueryRefresh"](_t = _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵloadQuery"]()) && (ctx.videoContainer = _t.first);
            }
        }, hostBindings: function PlayComponent_HostBindings(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵlistener"]("resize", function PlayComponent_resize_HostBindingHandler($event) { return ctx.onResize($event); }, false, _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵresolveWindow"]);
            }
        }, inputs: { data: "data", sid: "sid" }, decls: 12, vars: 0, consts: [[2, "font-family", "DroidSansFallback"], [2, "font-family", "Aileron-Black"], [2, "font-family", "Aileron-Bold"], ["tpl", ""], [2, "display", "none"], ["videoContainer", ""], [1, "game-container"], ["wrap", ""], ["id", "canvas", 2, "width", "100%", "height", "100%"], ["canvas", ""], ["id", "div_input"]], template: function PlayComponent_Template(rf, ctx) {
            if (rf & 1) {
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelement"](0, "span", 0);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelement"](1, "span", 1);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelement"](2, "span", 2);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵtemplate"](3, PlayComponent_ng_template_3_Template, 1, 0, "ng-template", null, 3, _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵtemplateRefExtractor"]);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelement"](5, "div", 4, 5);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementStart"](7, "div", 6, 7);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelement"](9, "canvas", 8, 9);
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelementEnd"]();
                _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵɵelement"](11, "div", 10);
            }
        }, styles: [".game-container[_ngcontent-%COMP%] {\n  width: 100%;\n  height: 100%;\n  background: #ffffff;\n  background-size: cover;\n\n  \n}\n\n#canvas[_ngcontent-%COMP%] {\n\n}\n\n@font-face\n{\n  font-family: 'BRLNSDB';\n  src: url('BRLNSDB_1.TTF')\n}\n\n@font-face\n{\n  font-family: 'Aileron-Black';\n  src: url('Aileron-Black.ttf')\n}\n\n@font-face\n{\n  font-family: 'Aileron-Bold';\n  src: url('Aileron-Bold.ttf')\n}\n\n@font-face\n{\n  font-family: 'DroidSansFallback';\n  src: url('DroidSansFallback.ttf');\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGxheS9wbGF5LmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxXQUFXO0VBQ1gsWUFBWTtFQUNaLG1CQUFtQjtFQUNuQixzQkFBc0I7OztBQUd4Qjs7QUFFQTs7QUFFQTs7QUFHQTs7RUFFRSxzQkFBc0I7RUFDdEI7QUFDRjs7QUFFQTs7RUFFRSw0QkFBNEI7RUFDNUI7QUFDRjs7QUFFQTs7RUFFRSwyQkFBMkI7RUFDM0I7QUFDRjs7QUFJQTs7RUFFRSxnQ0FBZ0M7RUFDaEMsaUNBQXdEO0FBQzFEIiwiZmlsZSI6InNyYy9hcHAvcGxheS9wbGF5LmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuZ2FtZS1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gIFxufVxuXG4jY2FudmFzIHtcblxufVxuXG5cbkBmb250LWZhY2VcbntcbiAgZm9udC1mYW1pbHk6ICdCUkxOU0RCJztcbiAgc3JjOiB1cmwoXCIuLi8uLi9hc3NldHMvcGxheS9mb250L0JSTE5TREJfMS5UVEZcIilcbn1cblxuQGZvbnQtZmFjZVxue1xuICBmb250LWZhbWlseTogJ0FpbGVyb24tQmxhY2snO1xuICBzcmM6IHVybChcIi4uLy4uL2Fzc2V0cy9wbGF5L2ZvbnQvQWlsZXJvbi1CbGFjay50dGZcIilcbn1cblxuQGZvbnQtZmFjZVxue1xuICBmb250LWZhbWlseTogJ0FpbGVyb24tQm9sZCc7XG4gIHNyYzogdXJsKFwiLi4vLi4vYXNzZXRzL3BsYXkvZm9udC9BaWxlcm9uLUJvbGQudHRmXCIpXG59XG5cblxuXG5AZm9udC1mYWNlXG57XG4gIGZvbnQtZmFtaWx5OiAnRHJvaWRTYW5zRmFsbGJhY2snO1xuICBzcmM6IHVybChcIi4uLy4uL2Fzc2V0cy9wbGF5L2ZvbnQvRHJvaWRTYW5zRmFsbGJhY2sudHRmXCIpO1xufSJdfQ== */"] });
    return PlayComponent;
})();



/***/ }),

/***/ "./src/app/play/resources.js":
/*!***********************************!*\
  !*** ./src/app/play/resources.js ***!
  \***********************************/
/*! exports provided: res, resAudio */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "res", function() { return res; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "resAudio", function() { return resAudio; });
const res = [

  ['op_item', "assets/play/op_item.png"],
  ['op_item_wrong', "assets/play/op_item_wrong.png"],
  ['op_item_right', "assets/play/op_item_right.png"],
  ['op_item_normal', "assets/play/op_item_normal.png"],
  ['btn_close', "assets/play/btn_close.png"],
  ['bg', "assets/play/bg.jpg"],
  ['video_bg', "assets/play/video_bg.jpg"],
  ['btn_replay', "assets/play/btn_replay.png"],

  ['icon_right', "assets/play/icon_right.png"],
  ['icon_wrong', "assets/play/icon_wrong.png"],

  ['answer_normal', "assets/play/answer_normal.png"],
  ['answer_right', "assets/play/answer_right.png"],
  ['answer_wrong', "assets/play/answer_wrong.png"],
  ['btn_video', "assets/play/btn_video.png"],
  ['btn_write', "assets/play/btn_write.png"],


];



const resAudio = [

  ['click', "assets/play/music/click.mp3"],
  ['submit', "assets/play/music/submit.mp3"],
  ['more', "assets/play/music/more.mp3"],



];







/***/ }),

/***/ "./src/main.ts":
/*!*********************!*\
  !*** ./src/main.ts ***!
  \*********************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _app_app_module__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./app/app.module */ "./src/app/app.module.ts");
/* harmony import */ var _angular_platform_browser__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/platform-browser */ "./node_modules/@angular/platform-browser/__ivy_ngcc__/fesm2015/platform-browser.js");


// import { environment } from './environments/environment';
// if (environment.production) {
//   enableProdMode();
// }
_angular_platform_browser__WEBPACK_IMPORTED_MODULE_1__["platformBrowser"]().bootstrapModule(_app_app_module__WEBPACK_IMPORTED_MODULE_0__["AppModule"])
    .catch(err => console.error(err));



/***/ }),

/***/ 0:
/*!***************************!*\
  !*** multi ./src/main.ts ***!
  \***************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

module.exports = __webpack_require__(/*! /Users/liwei/Documents/GitHub/Courseware/DG_FAF/form_angular/src/main.ts */"./src/main.ts");


/***/ })

},[[0,"runtime","vendor"]]]);
//# sourceMappingURL=main-es2015.js.map