ngx-rs-ant 2.3.3 → 2.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4748,6 +4748,7 @@ class WordDesignerComponent {
4748
4748
  this.wordDesignerService = wordDesignerService;
4749
4749
  this.viewContainerRef = viewContainerRef;
4750
4750
  this.modalService = modalService;
4751
+ this.onTemplateFileUploaded = new EventEmitter();
4751
4752
  this.needUpload = false;
4752
4753
  this.pasteMode = false;
4753
4754
  this.mouseInViewer = false;
@@ -4807,6 +4808,7 @@ class WordDesignerComponent {
4807
4808
  this.uploadInput.nativeElement.value = '';
4808
4809
  this.loadTemplateAndConfig(response);
4809
4810
  this.loading = false;
4811
+ this.onTemplateFileUploaded.emit();
4810
4812
  });
4811
4813
  }
4812
4814
  openReplaceTemplateFileModal() {
@@ -4872,7 +4874,7 @@ class WordDesignerComponent {
4872
4874
  }
4873
4875
  }
4874
4876
  WordDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: WordDesignerComponent, deps: [{ token: SectionService }, { token: WordDesignerService }, { token: i0.ViewContainerRef }, { token: ModalService }], target: i0.ɵɵFactoryTarget.Component });
4875
- WordDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: WordDesignerComponent, selector: "rs-word-designer", inputs: { tenant: "tenant", className: "className", oid: "oid", instanceClassName: "instanceClassName", filterCategories: "filterCategories", params: "params", tabViewContainerRef: "tabViewContainerRef" }, host: { listeners: { "window:keydown": "handleKeyDown($event)" } }, providers: [WordDesignerService], viewQueries: [{ propertyName: "uploadInput", first: true, predicate: ["uploadInput"], descendants: true, static: true }, { propertyName: "replaceFileModalTemplate", first: true, predicate: ["replaceFileModalTemplate"], descendants: true, static: true }, { propertyName: "previewTemplate", first: true, predicate: ["previewTemplate"], descendants: true, static: true }, { propertyName: "previewFooterTemplate", first: true, predicate: ["previewFooterTemplate"], descendants: true, static: true }], ngImport: i0, template: "<dx-load-panel [container]=\"viewContainerRef.element.nativeElement\" [showPane]=\"false\" [visible]=\"loading\">\n <dxo-position [of]=\"viewContainerRef.element.nativeElement\"></dxo-position>\n</dx-load-panel>\n<input #uploadInput type=\"file\" name=\"file\"\n accept=\"application/vnd.openxmlformats-officedocument.wordprocessingml.document\" (change)=\"upload()\"\n style=\"display: none;\"/>\n<div class=\"coast-card\">\n <div class=\"coast-card-content\">\n <div class=\"content-main\" [class.show-upload-btn]=\"needUpload\">\n <ng-container *ngIf=\"needUpload\">\n <dx-button type=\"success\" text=\"\u4E0A\u4F20\u6587\u4EF6\" (onClick)=\"uploadInput.click()\"></dx-button>\n </ng-container>\n <div *ngIf=\"!needUpload\" class=\"left-panel\">\n <div *ngIf=\"pasteMode\" class=\"paste-mode-bar\">\n <span\n class=\"message\">\u5DF2\u8FDB\u5165\u6279\u91CF\u7C98\u8D34\u914D\u7F6E\u6A21\u5F0F\uFF0C\u652F\u6301Ctrl\u3001Shift\u952E\u5FEB\u6377\u9009\u62E9\uFF0C\u6309Ctrl+V\u7EC4\u5408\u952E\u7C98\u8D34\u914D\u7F6E\uFF0C\u6309Esc\u952E\u53D6\u6D88\u64CD\u4F5C\u5E76\u9000\u51FA\u8BE5\u6A21\u5F0F</span>\n <dx-button [width]=\"48\" text=\"\u9000\u51FA\" (onClick)=\"exitPasteMode()\"></dx-button>\n </div>\n <div class=\"content\"\n (mouseenter)=\"mouseInViewer = true;\"\n (mouseleave)=\"mouseInViewer = false;\"\n (mousewheel)=\"scaleByMouse($event)\">\n <div *ngIf=\"!needUpload\" class=\"viewer\">\n <ng-container *ngFor=\"let section of sections\">\n <rs-section [section]=\"section\" [editMode]=\"true\" [pasteMode]=\"pasteMode\"></rs-section>\n </ng-container>\n </div>\n </div>\n </div>\n <div *ngIf=\"!needUpload\" class=\"right-panel\">\n <div class=\"header\">\n <dx-button type=\"default\" text=\"\u66FF\u6362\u6587\u4EF6\" (onClick)=\"openReplaceTemplateFileModal()\"\n [disabled]=\"loading\"></dx-button>\n <dx-button icon=\"coast-icon coast-icon-download\" hint=\"\u4E0B\u8F7D\u6587\u4EF6\"\n (onClick)=\"downloadTemplateFile()\" [disabled]=\"loading\"></dx-button>\n <dx-button icon=\"coast-icon coast-icon-direction-up\" hint=\"\u4E0A\u4E00\u4E2A(Alt + \u2191)\"\n (onClick)=\"service.switchMark(-1)\" [disabled]=\"loading\"></dx-button>\n <dx-button icon=\"coast-icon coast-icon-direction-down\" hint=\"\u4E0B\u4E00\u4E2A(Alt + \u2193)\"\n (onClick)=\"service.switchMark(1)\" [disabled]=\"loading\"></dx-button>\n <dx-button [type]=\"pasteMode ? 'success' : 'default'\" text=\"\u590D\u5236\" hint=\"\u590D\u5236(Ctrl + c)\"\n (onClick)=\"copyMarkConfig()\"></dx-button>\n <dx-button type=\"danger\" text=\"\u7C98\u8D34\" hint=\"\u7C98\u8D34(Ctrl + v)\" (onClick)=\"pasteMarkConfig()\"\n [disabled]=\"loading || !pasteMode\"></dx-button>\n </div>\n <div class=\"config\" *ngIf=\"service.activeMark\">\n <rs-mark-config [tenant]=\"tenant\"\n [templateClassName]=\"className\"\n [templateOid]=\"oid\"\n [instanceClassName]=\"instanceClassName\"\n [filterCategories]=\"filterCategories\"\n [mark]=\"service.activeMark\"\n [marks]=\"service.marks\"\n [tabViewContainerRef]=\"tabViewContainerRef\"></rs-mark-config>\n </div>\n </div>\n </div>\n </div>\n <div *ngIf=\"!needUpload\" class=\"footer\">\n <div class=\"left\">\n <dx-button text=\"\u653E\u5927\" (onClick)=\"scale(0.1)\"></dx-button>\n <dx-button text=\"\u8FD8\u539F\" (onClick)=\"scale(0)\"></dx-button>\n <dx-button text=\"\u7F29\u5C0F\" (onClick)=\"scale(-0.1)\"></dx-button>\n </div>\n <div class=\"right\">\n <dx-button type=\"default\" text=\"\u9884\u89C8\" (onClick)=\"preview()\" [disabled]=\"needUpload || loading\"></dx-button>\n <dx-button type=\"success\" text=\"\u4FDD\u5B58\" (onClick)=\"saveConfig()\" [disabled]=\"needUpload || loading\"></dx-button>\n </div>\n </div>\n</div>\n<ng-template #replaceFileModalTemplate>\n <div class=\"confirm-message\">\n <span>\u66FF\u6362\u6587\u4EF6\u53EF\u4EE5\u6309\u7167\u4E66\u7B7E\u6807\u8BC6\u7EE7\u627F\u5DF2\u4FDD\u5B58\u7684\u4E66\u7B7E\u914D\u7F6E\uFF0C\u8BF7\u9009\u62E9\u64CD\u4F5C\uFF1A</span>\n </div>\n <div class=\"form-buttons\">\n <div class=\"buttons-wrapper\">\n <dx-button type=\"default\" text=\"\u7EE7\u627F\u914D\u7F6E\" (onClick)=\"replaceTemplateFile(true)\"></dx-button>\n <dx-button type=\"danger\" text=\"\u6E05\u9664\u914D\u7F6E\" (onClick)=\"replaceTemplateFile(false)\"></dx-button>\n <dx-button type=\"normal\" text=\"\u53D6\u6D88\" (onClick)=\"replaceFileModal?.hide()\"></dx-button>\n </div>\n </div>\n</ng-template>\n<ng-template #previewTemplate>\n <div class=\"preview-viewer\">\n <div class=\"viewer-container\">\n <div class=\"viewer\">\n <ng-container *ngFor=\"let section of sections\">\n <rs-section [section]=\"section\"></rs-section>\n </ng-container>\n </div>\n </div>\n </div>\n</ng-template>\n<ng-template #previewFooterTemplate>\n <div class=\"form-buttons\">\n <div class=\"buttons-wrapper\">\n <dx-button type=\"normal\" text=\"\u5173\u95ED\" (onClick)=\"previewModal?.hide()\"></dx-button>\n </div>\n </div>\n</ng-template>\n", styles: [":host{flex:1;display:flex;flex-flow:column nowrap}:host .coast-card{flex:1;padding:0}:host .coast-card .content-main{display:flex;flex-flow:row nowrap;padding:16px 0 0 16px;margin:0}:host .coast-card .content-main.show-upload-btn{padding:16px;background-color:var(--coast-empty-color, rgb(229, 229, 229));align-items:center;justify-content:center}:host .coast-card .content-main .left-panel{flex:auto;width:0;overflow-x:auto;background-color:var(--coast-empty-color, rgb(229, 229, 229));display:flex;flex-flow:column nowrap}:host .coast-card .content-main .left-panel .paste-mode-bar{flex:none;padding:8px;background-color:var(--coast-base-bg-color, rgb(255, 255, 255));border:1px solid var(--coast-border-color, rgb(221, 221, 221));display:flex;flex-flow:row nowrap;justify-content:space-between;align-items:center}:host .coast-card .content-main .left-panel .paste-mode-bar .message{font-weight:700}:host .coast-card .content-main .left-panel .content{flex:auto;height:0;overflow-y:auto;padding:8px 16px 0;display:flex;flex-flow:row nowrap}:host .coast-card .content-main .left-panel .content .viewer{margin:auto;display:flex;flex-flow:column nowrap;align-items:center;z-index:0}:host .coast-card .content-main .right-panel{flex:0 0 320px;display:flex;flex-flow:column nowrap;border-left:1px solid var(--coast-border-color, rgb(221, 221, 221))}:host .coast-card .content-main .right-panel .header{flex:none;border-bottom:1px solid var(--coast-border-color, rgb(221, 221, 221));padding:0 16px 16px}:host .coast-card .content-main .right-panel .header>dx-button:not(:last-child){margin-right:8px}:host .coast-card .content-main .right-panel .config{flex:auto;height:0;overflow:auto;padding:24px;display:flex;flex-flow:column nowrap}:host .coast-card .footer{flex:none;border-top:1px solid var(--coast-border-color, rgb(221, 221, 221));padding:12px 24px;display:flex;flex-flow:row nowrap;justify-content:space-between}:host .coast-card .footer dx-button{width:80px}:host .coast-card .footer dx-button:not(:last-child){margin-right:8px}.confirm-message{padding:24px;margin-bottom:12px;border-bottom:1px solid var(--coast-border-color, rgb(221, 221, 221))}.confirm-message span{font-size:14px}.preview-viewer{flex:auto;height:0;overflow-y:auto;margin:0 16px;background-color:var(--coast-empty-color, rgb(229, 229, 229));display:flex;flex-flow:column nowrap}.preview-viewer .viewer-container{flex:auto;height:0;overflow-x:auto;padding:8px 16px 0;display:flex;flex-flow:row nowrap}.preview-viewer .viewer-container .viewer{margin:auto;display:flex;flex-flow:column nowrap;align-items:center;z-index:0}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.DxoPositionComponent, selector: "dxo-position", inputs: ["at", "boundary", "boundaryOffset", "collision", "my", "of", "offset"] }, { kind: "component", type: i3.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: i6$1.DxLoadPanelComponent, selector: "dx-load-panel", inputs: ["animation", "closeOnOutsideClick", "container", "copyRootClassesToWrapper", "deferRendering", "delay", "elementAttr", "focusStateEnabled", "height", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "indicatorSrc", "maxHeight", "maxWidth", "message", "minHeight", "minWidth", "position", "rtlEnabled", "shading", "shadingColor", "showIndicator", "showPane", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onShowing", "onShown", "animationChange", "closeOnOutsideClickChange", "containerChange", "copyRootClassesToWrapperChange", "deferRenderingChange", "delayChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "indicatorSrcChange", "maxHeightChange", "maxWidthChange", "messageChange", "minHeightChange", "minWidthChange", "positionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showIndicatorChange", "showPaneChange", "visibleChange", "widthChange", "wrapperAttrChange"] }, { kind: "component", type: SectionComponent, selector: "rs-section", inputs: ["section", "editMode", "pasteMode", "readonly"] }, { kind: "component", type: MarkConfigComponent, selector: "rs-mark-config", inputs: ["tenant", "templateClassName", "templateOid", "instanceClassName", "filterCategories", "mark", "marks", "params", "tabViewContainerRef"] }] });
4877
+ WordDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: WordDesignerComponent, selector: "rs-word-designer", inputs: { tenant: "tenant", className: "className", oid: "oid", instanceClassName: "instanceClassName", filterCategories: "filterCategories", params: "params", tabViewContainerRef: "tabViewContainerRef" }, outputs: { onTemplateFileUploaded: "onTemplateFileUploaded" }, host: { listeners: { "window:keydown": "handleKeyDown($event)" } }, providers: [WordDesignerService], viewQueries: [{ propertyName: "uploadInput", first: true, predicate: ["uploadInput"], descendants: true, static: true }, { propertyName: "replaceFileModalTemplate", first: true, predicate: ["replaceFileModalTemplate"], descendants: true, static: true }, { propertyName: "previewTemplate", first: true, predicate: ["previewTemplate"], descendants: true, static: true }, { propertyName: "previewFooterTemplate", first: true, predicate: ["previewFooterTemplate"], descendants: true, static: true }], ngImport: i0, template: "<dx-load-panel [container]=\"viewContainerRef.element.nativeElement\" [showPane]=\"false\" [visible]=\"loading\">\n <dxo-position [of]=\"viewContainerRef.element.nativeElement\"></dxo-position>\n</dx-load-panel>\n<input #uploadInput type=\"file\" name=\"file\"\n accept=\"application/vnd.openxmlformats-officedocument.wordprocessingml.document\" (change)=\"upload()\"\n style=\"display: none;\"/>\n<div class=\"coast-card\">\n <div class=\"coast-card-content\">\n <div class=\"content-main\" [class.show-upload-btn]=\"needUpload\">\n <ng-container *ngIf=\"needUpload\">\n <dx-button type=\"success\" text=\"\u4E0A\u4F20\u6587\u4EF6\" (onClick)=\"uploadInput.click()\"></dx-button>\n </ng-container>\n <div *ngIf=\"!needUpload\" class=\"left-panel\">\n <div *ngIf=\"pasteMode\" class=\"paste-mode-bar\">\n <span\n class=\"message\">\u5DF2\u8FDB\u5165\u6279\u91CF\u7C98\u8D34\u914D\u7F6E\u6A21\u5F0F\uFF0C\u652F\u6301Ctrl\u3001Shift\u952E\u5FEB\u6377\u9009\u62E9\uFF0C\u6309Ctrl+V\u7EC4\u5408\u952E\u7C98\u8D34\u914D\u7F6E\uFF0C\u6309Esc\u952E\u53D6\u6D88\u64CD\u4F5C\u5E76\u9000\u51FA\u8BE5\u6A21\u5F0F</span>\n <dx-button [width]=\"48\" text=\"\u9000\u51FA\" (onClick)=\"exitPasteMode()\"></dx-button>\n </div>\n <div class=\"content\"\n (mouseenter)=\"mouseInViewer = true;\"\n (mouseleave)=\"mouseInViewer = false;\"\n (mousewheel)=\"scaleByMouse($event)\">\n <div *ngIf=\"!needUpload\" class=\"viewer\">\n <ng-container *ngFor=\"let section of sections\">\n <rs-section [section]=\"section\" [editMode]=\"true\" [pasteMode]=\"pasteMode\"></rs-section>\n </ng-container>\n </div>\n </div>\n </div>\n <div *ngIf=\"!needUpload\" class=\"right-panel\">\n <div class=\"header\">\n <dx-button type=\"default\" text=\"\u66FF\u6362\u6587\u4EF6\" (onClick)=\"openReplaceTemplateFileModal()\"\n [disabled]=\"loading\"></dx-button>\n <dx-button icon=\"coast-icon coast-icon-download\" hint=\"\u4E0B\u8F7D\u6587\u4EF6\"\n (onClick)=\"downloadTemplateFile()\" [disabled]=\"loading\"></dx-button>\n <dx-button icon=\"coast-icon coast-icon-direction-up\" hint=\"\u4E0A\u4E00\u4E2A(Alt + \u2191)\"\n (onClick)=\"service.switchMark(-1)\" [disabled]=\"loading\"></dx-button>\n <dx-button icon=\"coast-icon coast-icon-direction-down\" hint=\"\u4E0B\u4E00\u4E2A(Alt + \u2193)\"\n (onClick)=\"service.switchMark(1)\" [disabled]=\"loading\"></dx-button>\n <dx-button [type]=\"pasteMode ? 'success' : 'default'\" text=\"\u590D\u5236\" hint=\"\u590D\u5236(Ctrl + c)\"\n (onClick)=\"copyMarkConfig()\"></dx-button>\n <dx-button type=\"danger\" text=\"\u7C98\u8D34\" hint=\"\u7C98\u8D34(Ctrl + v)\" (onClick)=\"pasteMarkConfig()\"\n [disabled]=\"loading || !pasteMode\"></dx-button>\n </div>\n <div class=\"config\" *ngIf=\"service.activeMark\">\n <rs-mark-config [tenant]=\"tenant\"\n [templateClassName]=\"className\"\n [templateOid]=\"oid\"\n [instanceClassName]=\"instanceClassName\"\n [filterCategories]=\"filterCategories\"\n [mark]=\"service.activeMark\"\n [marks]=\"service.marks\"\n [tabViewContainerRef]=\"tabViewContainerRef\"></rs-mark-config>\n </div>\n </div>\n </div>\n </div>\n <div *ngIf=\"!needUpload\" class=\"footer\">\n <div class=\"left\">\n <dx-button text=\"\u653E\u5927\" (onClick)=\"scale(0.1)\"></dx-button>\n <dx-button text=\"\u8FD8\u539F\" (onClick)=\"scale(0)\"></dx-button>\n <dx-button text=\"\u7F29\u5C0F\" (onClick)=\"scale(-0.1)\"></dx-button>\n </div>\n <div class=\"right\">\n <dx-button type=\"default\" text=\"\u9884\u89C8\" (onClick)=\"preview()\" [disabled]=\"needUpload || loading\"></dx-button>\n <dx-button type=\"success\" text=\"\u4FDD\u5B58\" (onClick)=\"saveConfig()\" [disabled]=\"needUpload || loading\"></dx-button>\n </div>\n </div>\n</div>\n<ng-template #replaceFileModalTemplate>\n <div class=\"confirm-message\">\n <span>\u66FF\u6362\u6587\u4EF6\u53EF\u4EE5\u6309\u7167\u4E66\u7B7E\u6807\u8BC6\u7EE7\u627F\u5DF2\u4FDD\u5B58\u7684\u4E66\u7B7E\u914D\u7F6E\uFF0C\u8BF7\u9009\u62E9\u64CD\u4F5C\uFF1A</span>\n </div>\n <div class=\"form-buttons\">\n <div class=\"buttons-wrapper\">\n <dx-button type=\"default\" text=\"\u7EE7\u627F\u914D\u7F6E\" (onClick)=\"replaceTemplateFile(true)\"></dx-button>\n <dx-button type=\"danger\" text=\"\u6E05\u9664\u914D\u7F6E\" (onClick)=\"replaceTemplateFile(false)\"></dx-button>\n <dx-button type=\"normal\" text=\"\u53D6\u6D88\" (onClick)=\"replaceFileModal?.hide()\"></dx-button>\n </div>\n </div>\n</ng-template>\n<ng-template #previewTemplate>\n <div class=\"preview-viewer\">\n <div class=\"viewer-container\">\n <div class=\"viewer\">\n <ng-container *ngFor=\"let section of sections\">\n <rs-section [section]=\"section\"></rs-section>\n </ng-container>\n </div>\n </div>\n </div>\n</ng-template>\n<ng-template #previewFooterTemplate>\n <div class=\"form-buttons\">\n <div class=\"buttons-wrapper\">\n <dx-button type=\"normal\" text=\"\u5173\u95ED\" (onClick)=\"previewModal?.hide()\"></dx-button>\n </div>\n </div>\n</ng-template>\n", styles: [":host{flex:1;display:flex;flex-flow:column nowrap}:host .coast-card{flex:1;padding:0}:host .coast-card .content-main{display:flex;flex-flow:row nowrap;padding:16px 0 0 16px;margin:0}:host .coast-card .content-main.show-upload-btn{padding:16px;background-color:var(--coast-empty-color, rgb(229, 229, 229));align-items:center;justify-content:center}:host .coast-card .content-main .left-panel{flex:auto;width:0;overflow-x:auto;background-color:var(--coast-empty-color, rgb(229, 229, 229));display:flex;flex-flow:column nowrap}:host .coast-card .content-main .left-panel .paste-mode-bar{flex:none;padding:8px;background-color:var(--coast-base-bg-color, rgb(255, 255, 255));border:1px solid var(--coast-border-color, rgb(221, 221, 221));display:flex;flex-flow:row nowrap;justify-content:space-between;align-items:center}:host .coast-card .content-main .left-panel .paste-mode-bar .message{font-weight:700}:host .coast-card .content-main .left-panel .content{flex:auto;height:0;overflow-y:auto;padding:8px 16px 0;display:flex;flex-flow:row nowrap}:host .coast-card .content-main .left-panel .content .viewer{margin:auto;display:flex;flex-flow:column nowrap;align-items:center;z-index:0}:host .coast-card .content-main .right-panel{flex:0 0 320px;display:flex;flex-flow:column nowrap;border-left:1px solid var(--coast-border-color, rgb(221, 221, 221))}:host .coast-card .content-main .right-panel .header{flex:none;border-bottom:1px solid var(--coast-border-color, rgb(221, 221, 221));padding:0 16px 16px}:host .coast-card .content-main .right-panel .header>dx-button:not(:last-child){margin-right:8px}:host .coast-card .content-main .right-panel .config{flex:auto;height:0;overflow:auto;padding:24px;display:flex;flex-flow:column nowrap}:host .coast-card .footer{flex:none;border-top:1px solid var(--coast-border-color, rgb(221, 221, 221));padding:12px 24px;display:flex;flex-flow:row nowrap;justify-content:space-between}:host .coast-card .footer dx-button{width:80px}:host .coast-card .footer dx-button:not(:last-child){margin-right:8px}.confirm-message{padding:24px;margin-bottom:12px;border-bottom:1px solid var(--coast-border-color, rgb(221, 221, 221))}.confirm-message span{font-size:14px}.preview-viewer{flex:auto;height:0;overflow-y:auto;margin:0 16px;background-color:var(--coast-empty-color, rgb(229, 229, 229));display:flex;flex-flow:column nowrap}.preview-viewer .viewer-container{flex:auto;height:0;overflow-x:auto;padding:8px 16px 0;display:flex;flex-flow:row nowrap}.preview-viewer .viewer-container .viewer{margin:auto;display:flex;flex-flow:column nowrap;align-items:center;z-index:0}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.DxoPositionComponent, selector: "dxo-position", inputs: ["at", "boundary", "boundaryOffset", "collision", "my", "of", "offset"] }, { kind: "component", type: i3.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: i6$1.DxLoadPanelComponent, selector: "dx-load-panel", inputs: ["animation", "closeOnOutsideClick", "container", "copyRootClassesToWrapper", "deferRendering", "delay", "elementAttr", "focusStateEnabled", "height", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "indicatorSrc", "maxHeight", "maxWidth", "message", "minHeight", "minWidth", "position", "rtlEnabled", "shading", "shadingColor", "showIndicator", "showPane", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onShowing", "onShown", "animationChange", "closeOnOutsideClickChange", "containerChange", "copyRootClassesToWrapperChange", "deferRenderingChange", "delayChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "indicatorSrcChange", "maxHeightChange", "maxWidthChange", "messageChange", "minHeightChange", "minWidthChange", "positionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showIndicatorChange", "showPaneChange", "visibleChange", "widthChange", "wrapperAttrChange"] }, { kind: "component", type: SectionComponent, selector: "rs-section", inputs: ["section", "editMode", "pasteMode", "readonly"] }, { kind: "component", type: MarkConfigComponent, selector: "rs-mark-config", inputs: ["tenant", "templateClassName", "templateOid", "instanceClassName", "filterCategories", "mark", "marks", "params", "tabViewContainerRef"] }] });
4876
4878
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: WordDesignerComponent, decorators: [{
4877
4879
  type: Component,
4878
4880
  args: [{ selector: 'rs-word-designer', providers: [WordDesignerService], template: "<dx-load-panel [container]=\"viewContainerRef.element.nativeElement\" [showPane]=\"false\" [visible]=\"loading\">\n <dxo-position [of]=\"viewContainerRef.element.nativeElement\"></dxo-position>\n</dx-load-panel>\n<input #uploadInput type=\"file\" name=\"file\"\n accept=\"application/vnd.openxmlformats-officedocument.wordprocessingml.document\" (change)=\"upload()\"\n style=\"display: none;\"/>\n<div class=\"coast-card\">\n <div class=\"coast-card-content\">\n <div class=\"content-main\" [class.show-upload-btn]=\"needUpload\">\n <ng-container *ngIf=\"needUpload\">\n <dx-button type=\"success\" text=\"\u4E0A\u4F20\u6587\u4EF6\" (onClick)=\"uploadInput.click()\"></dx-button>\n </ng-container>\n <div *ngIf=\"!needUpload\" class=\"left-panel\">\n <div *ngIf=\"pasteMode\" class=\"paste-mode-bar\">\n <span\n class=\"message\">\u5DF2\u8FDB\u5165\u6279\u91CF\u7C98\u8D34\u914D\u7F6E\u6A21\u5F0F\uFF0C\u652F\u6301Ctrl\u3001Shift\u952E\u5FEB\u6377\u9009\u62E9\uFF0C\u6309Ctrl+V\u7EC4\u5408\u952E\u7C98\u8D34\u914D\u7F6E\uFF0C\u6309Esc\u952E\u53D6\u6D88\u64CD\u4F5C\u5E76\u9000\u51FA\u8BE5\u6A21\u5F0F</span>\n <dx-button [width]=\"48\" text=\"\u9000\u51FA\" (onClick)=\"exitPasteMode()\"></dx-button>\n </div>\n <div class=\"content\"\n (mouseenter)=\"mouseInViewer = true;\"\n (mouseleave)=\"mouseInViewer = false;\"\n (mousewheel)=\"scaleByMouse($event)\">\n <div *ngIf=\"!needUpload\" class=\"viewer\">\n <ng-container *ngFor=\"let section of sections\">\n <rs-section [section]=\"section\" [editMode]=\"true\" [pasteMode]=\"pasteMode\"></rs-section>\n </ng-container>\n </div>\n </div>\n </div>\n <div *ngIf=\"!needUpload\" class=\"right-panel\">\n <div class=\"header\">\n <dx-button type=\"default\" text=\"\u66FF\u6362\u6587\u4EF6\" (onClick)=\"openReplaceTemplateFileModal()\"\n [disabled]=\"loading\"></dx-button>\n <dx-button icon=\"coast-icon coast-icon-download\" hint=\"\u4E0B\u8F7D\u6587\u4EF6\"\n (onClick)=\"downloadTemplateFile()\" [disabled]=\"loading\"></dx-button>\n <dx-button icon=\"coast-icon coast-icon-direction-up\" hint=\"\u4E0A\u4E00\u4E2A(Alt + \u2191)\"\n (onClick)=\"service.switchMark(-1)\" [disabled]=\"loading\"></dx-button>\n <dx-button icon=\"coast-icon coast-icon-direction-down\" hint=\"\u4E0B\u4E00\u4E2A(Alt + \u2193)\"\n (onClick)=\"service.switchMark(1)\" [disabled]=\"loading\"></dx-button>\n <dx-button [type]=\"pasteMode ? 'success' : 'default'\" text=\"\u590D\u5236\" hint=\"\u590D\u5236(Ctrl + c)\"\n (onClick)=\"copyMarkConfig()\"></dx-button>\n <dx-button type=\"danger\" text=\"\u7C98\u8D34\" hint=\"\u7C98\u8D34(Ctrl + v)\" (onClick)=\"pasteMarkConfig()\"\n [disabled]=\"loading || !pasteMode\"></dx-button>\n </div>\n <div class=\"config\" *ngIf=\"service.activeMark\">\n <rs-mark-config [tenant]=\"tenant\"\n [templateClassName]=\"className\"\n [templateOid]=\"oid\"\n [instanceClassName]=\"instanceClassName\"\n [filterCategories]=\"filterCategories\"\n [mark]=\"service.activeMark\"\n [marks]=\"service.marks\"\n [tabViewContainerRef]=\"tabViewContainerRef\"></rs-mark-config>\n </div>\n </div>\n </div>\n </div>\n <div *ngIf=\"!needUpload\" class=\"footer\">\n <div class=\"left\">\n <dx-button text=\"\u653E\u5927\" (onClick)=\"scale(0.1)\"></dx-button>\n <dx-button text=\"\u8FD8\u539F\" (onClick)=\"scale(0)\"></dx-button>\n <dx-button text=\"\u7F29\u5C0F\" (onClick)=\"scale(-0.1)\"></dx-button>\n </div>\n <div class=\"right\">\n <dx-button type=\"default\" text=\"\u9884\u89C8\" (onClick)=\"preview()\" [disabled]=\"needUpload || loading\"></dx-button>\n <dx-button type=\"success\" text=\"\u4FDD\u5B58\" (onClick)=\"saveConfig()\" [disabled]=\"needUpload || loading\"></dx-button>\n </div>\n </div>\n</div>\n<ng-template #replaceFileModalTemplate>\n <div class=\"confirm-message\">\n <span>\u66FF\u6362\u6587\u4EF6\u53EF\u4EE5\u6309\u7167\u4E66\u7B7E\u6807\u8BC6\u7EE7\u627F\u5DF2\u4FDD\u5B58\u7684\u4E66\u7B7E\u914D\u7F6E\uFF0C\u8BF7\u9009\u62E9\u64CD\u4F5C\uFF1A</span>\n </div>\n <div class=\"form-buttons\">\n <div class=\"buttons-wrapper\">\n <dx-button type=\"default\" text=\"\u7EE7\u627F\u914D\u7F6E\" (onClick)=\"replaceTemplateFile(true)\"></dx-button>\n <dx-button type=\"danger\" text=\"\u6E05\u9664\u914D\u7F6E\" (onClick)=\"replaceTemplateFile(false)\"></dx-button>\n <dx-button type=\"normal\" text=\"\u53D6\u6D88\" (onClick)=\"replaceFileModal?.hide()\"></dx-button>\n </div>\n </div>\n</ng-template>\n<ng-template #previewTemplate>\n <div class=\"preview-viewer\">\n <div class=\"viewer-container\">\n <div class=\"viewer\">\n <ng-container *ngFor=\"let section of sections\">\n <rs-section [section]=\"section\"></rs-section>\n </ng-container>\n </div>\n </div>\n </div>\n</ng-template>\n<ng-template #previewFooterTemplate>\n <div class=\"form-buttons\">\n <div class=\"buttons-wrapper\">\n <dx-button type=\"normal\" text=\"\u5173\u95ED\" (onClick)=\"previewModal?.hide()\"></dx-button>\n </div>\n </div>\n</ng-template>\n", styles: [":host{flex:1;display:flex;flex-flow:column nowrap}:host .coast-card{flex:1;padding:0}:host .coast-card .content-main{display:flex;flex-flow:row nowrap;padding:16px 0 0 16px;margin:0}:host .coast-card .content-main.show-upload-btn{padding:16px;background-color:var(--coast-empty-color, rgb(229, 229, 229));align-items:center;justify-content:center}:host .coast-card .content-main .left-panel{flex:auto;width:0;overflow-x:auto;background-color:var(--coast-empty-color, rgb(229, 229, 229));display:flex;flex-flow:column nowrap}:host .coast-card .content-main .left-panel .paste-mode-bar{flex:none;padding:8px;background-color:var(--coast-base-bg-color, rgb(255, 255, 255));border:1px solid var(--coast-border-color, rgb(221, 221, 221));display:flex;flex-flow:row nowrap;justify-content:space-between;align-items:center}:host .coast-card .content-main .left-panel .paste-mode-bar .message{font-weight:700}:host .coast-card .content-main .left-panel .content{flex:auto;height:0;overflow-y:auto;padding:8px 16px 0;display:flex;flex-flow:row nowrap}:host .coast-card .content-main .left-panel .content .viewer{margin:auto;display:flex;flex-flow:column nowrap;align-items:center;z-index:0}:host .coast-card .content-main .right-panel{flex:0 0 320px;display:flex;flex-flow:column nowrap;border-left:1px solid var(--coast-border-color, rgb(221, 221, 221))}:host .coast-card .content-main .right-panel .header{flex:none;border-bottom:1px solid var(--coast-border-color, rgb(221, 221, 221));padding:0 16px 16px}:host .coast-card .content-main .right-panel .header>dx-button:not(:last-child){margin-right:8px}:host .coast-card .content-main .right-panel .config{flex:auto;height:0;overflow:auto;padding:24px;display:flex;flex-flow:column nowrap}:host .coast-card .footer{flex:none;border-top:1px solid var(--coast-border-color, rgb(221, 221, 221));padding:12px 24px;display:flex;flex-flow:row nowrap;justify-content:space-between}:host .coast-card .footer dx-button{width:80px}:host .coast-card .footer dx-button:not(:last-child){margin-right:8px}.confirm-message{padding:24px;margin-bottom:12px;border-bottom:1px solid var(--coast-border-color, rgb(221, 221, 221))}.confirm-message span{font-size:14px}.preview-viewer{flex:auto;height:0;overflow-y:auto;margin:0 16px;background-color:var(--coast-empty-color, rgb(229, 229, 229));display:flex;flex-flow:column nowrap}.preview-viewer .viewer-container{flex:auto;height:0;overflow-x:auto;padding:8px 16px 0;display:flex;flex-flow:row nowrap}.preview-viewer .viewer-container .viewer{margin:auto;display:flex;flex-flow:column nowrap;align-items:center;z-index:0}\n"] }]
@@ -4890,6 +4892,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
4890
4892
  type: Input
4891
4893
  }], tabViewContainerRef: [{
4892
4894
  type: Input
4895
+ }], onTemplateFileUploaded: [{
4896
+ type: Output
4893
4897
  }], uploadInput: [{
4894
4898
  type: ViewChild,
4895
4899
  args: ['uploadInput', { static: true }]