From 950eb1de266f13dcfd74363dbf4ae5440d906e0d Mon Sep 17 00:00:00 2001 From: Egor Date: Thu, 15 Oct 2020 15:21:00 +0300 Subject: [PATCH] Initial improvements UX of the stamp signatures in mobile mode. --- ....examples.angular-common-components.umd.js | 16132 ++++++++-------- ...mples.angular-common-components.umd.js.map | 2 +- ...mples.angular-common-components.umd.min.js | 22 +- ...s.angular-common-components.umd.min.js.map | 2 +- .../lib/resizing/resizing.component.js | 6 +- .../esm5/lib/resizing/resizing.component.js | 6 +- ...docs.examples.angular-common-components.js | 108 +- ....examples.angular-common-components.js.map | 2 +- ...docs.examples.angular-common-components.js | 108 +- ....examples.angular-common-components.js.map | 2 +- ...es.angular-common-components.metadata.json | 2 +- .../src/lib/resizing/resizing.component.less | 8 + .../signature-list-panel.component.less | 4 + .../stamp-canvas/stamp-canvas.component.less | 1 - 14 files changed, 8219 insertions(+), 8186 deletions(-) diff --git a/dist/libs/common-components/bundles/groupdocs.examples.angular-common-components.umd.js b/dist/libs/common-components/bundles/groupdocs.examples.angular-common-components.umd.js index e11d08ad0..e2a7f74c6 100644 --- a/dist/libs/common-components/bundles/groupdocs.examples.angular-common-components.umd.js +++ b/dist/libs/common-components/bundles/groupdocs.examples.angular-common-components.umd.js @@ -5,18 +5,18 @@ }(this, (function (exports, core, common, rxjs, operators, angularFontawesome, fontawesomeSvgCore, freeSolidSvgIcons, freeRegularSvgIcons, http, jquery, Hammer, platformBrowser, ngClickOutside) { 'use strict'; /*! ***************************************************************************** - Copyright (c) Microsoft Corporation. All rights reserved. - Licensed under the Apache License, Version 2.0 (the "License"); you may not use - this file except in compliance with the License. You may obtain a copy of the - License at http://www.apache.org/licenses/LICENSE-2.0 + Copyright (c) Microsoft Corporation. - THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED - WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, - MERCHANTABLITY OR NON-INFRINGEMENT. + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. - See the Apache Version 2.0 License for specific language governing permissions - and limitations under the License. + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. ***************************************************************************** */ /* global Reflect, Promise */ @@ -72,10 +72,11 @@ } function __awaiter(thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); } @@ -108,19 +109,25 @@ } } + function __createBinding(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; + } + function __exportStar(m, exports) { - for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; + for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) exports[p] = m[p]; } function __values(o) { - var m = typeof Symbol === "function" && o[Symbol.iterator], i = 0; + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; if (m) return m.call(o); - return { + if (o && typeof o.length === "number") return { next: function () { if (o && i >= o.length) o = void 0; return { value: o && o[i++], done: !o }; } }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); } function __read(o, n) { @@ -199,8178 +206,8193 @@ function __importDefault(mod) { return (mod && mod.__esModule) ? mod : { default: mod }; + } + + function __classPrivateFieldGet(receiver, privateMap) { + if (!privateMap.has(receiver)) { + throw new TypeError("attempted to get private field on non-instance"); + } + return privateMap.get(receiver); + } + + function __classPrivateFieldSet(receiver, privateMap, value) { + if (!privateMap.has(receiver)) { + throw new TypeError("attempted to set private field on non-instance"); + } + privateMap.set(receiver, value); + return value; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var TopToolbarComponent = /** @class */ (function () { - function TopToolbarComponent() { - } - TopToolbarComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-top-toolbar', - template: "
\n
\n \n
\n
\n", - styles: [".top-toolbar{width:100%;height:60px;z-index:999;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.tools{width:100%;height:100%;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}@media (max-width:1037px){.top-toolbar{height:60px}.tools{height:100%;overflow-x:auto;overflow-scrolling:touch;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.tools::-webkit-scrollbar{width:0;height:0;background-color:#3e4e5a}}"] - }] } - ]; - /** @nocollapse */ - TopToolbarComponent.ctorParameters = function () { return []; }; - return TopToolbarComponent; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var TopToolbarComponent = /** @class */ (function () { + function TopToolbarComponent() { + } + TopToolbarComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-top-toolbar', + template: "
\r\n
\r\n \r\n
\r\n
\r\n", + styles: [".top-toolbar{width:100%;height:60px;z-index:999;display:flex;align-items:center}.tools{width:100%;height:100%;display:flex;align-items:center}@media (max-width:1037px){.top-toolbar{height:60px}.tools{height:100%;overflow-x:auto;overflow-scrolling:touch;display:flex;align-items:center;transition:.3s ease-in-out;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.tools::-webkit-scrollbar{width:0;height:0;background-color:#3e4e5a}}"] + }] } + ]; + /** @nocollapse */ + TopToolbarComponent.ctorParameters = function () { return []; }; + return TopToolbarComponent; }()); - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var SidePanelComponent = /** @class */ (function () { - function SidePanelComponent() { - this.closable = true; - this.saveable = true; - this.hideSidePanel = new core.EventEmitter(); - this.saveInSidePanel = new core.EventEmitter(); - this.onlyTitle = false; - } - /** - * @return {?} - */ - SidePanelComponent.prototype.closeSidePanel = /** - * @return {?} - */ - function () { - this.hideSidePanel.emit(true); - }; - /** - * @return {?} - */ - SidePanelComponent.prototype.saveBySidePanel = /** - * @return {?} - */ - function () { - this.saveInSidePanel.emit(true); - }; - /** - * @return {?} - */ - SidePanelComponent.prototype.toggleTitleMode = /** - * @return {?} - */ - function () { - if (this.closable && !this.saveable) { - this.onlyTitle = !this.onlyTitle; - } - }; - SidePanelComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-side-panel', - template: "
\n
\n \n
{{title}}
\n
\n \n
\n
\n \n
\n
\n
\n \n
\n
\n", - styles: [".gd-side-panel-wrapper{margin-right:0;width:334px;z-index:999;background-color:#fff;-webkit-transition:margin-right .2s;transition:margin-right .2s;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-flow:column;height:100vh}.gd-side-panel-wrapper .gd-side-panel-header{height:60px;background-color:#222e35;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;flex-wrap:nowrap}.gd-side-panel-wrapper .gd-side-panel-header .icon{font-size:24px;color:#959da5;margin:18px;line-height:24px}.gd-side-panel-wrapper .gd-side-panel-header .title{font-size:13px;font-weight:700;color:#edf0f2;opacity:.57;margin-top:20px;width:100%}.gd-side-panel-wrapper .gd-side-panel-header .close,.gd-side-panel-wrapper .gd-side-panel-header .save{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.gd-side-panel-wrapper .gd-side-panel-header ::ng-deep gd-button .text{padding:0}.gd-side-panel-wrapper .gd-side-panel-body{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-flow:column;overflow:visible;overflow-y:auto;overflow-x:hidden;height:100%}@media (max-width:1037px){.gd-side-panel-wrapper{width:100%;position:absolute;left:0;right:0;top:0;bottom:0}.gd-side-panel-wrapper.only-title{height:60px!important}}"] - }] } - ]; - /** @nocollapse */ - SidePanelComponent.ctorParameters = function () { return []; }; - SidePanelComponent.propDecorators = { - title: [{ type: core.Input }], - icon: [{ type: core.Input }], - closable: [{ type: core.Input }], - saveable: [{ type: core.Input }], - hideSidePanel: [{ type: core.Output }], - saveInSidePanel: [{ type: core.Output }] - }; - return SidePanelComponent; - }()); - if (false) { - /** @type {?} */ - SidePanelComponent.prototype.title; - /** @type {?} */ - SidePanelComponent.prototype.icon; - /** @type {?} */ - SidePanelComponent.prototype.closable; - /** @type {?} */ - SidePanelComponent.prototype.saveable; - /** @type {?} */ - SidePanelComponent.prototype.hideSidePanel; - /** @type {?} */ - SidePanelComponent.prototype.saveInSidePanel; - /** @type {?} */ - SidePanelComponent.prototype.onlyTitle; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var SidePanelComponent = /** @class */ (function () { + function SidePanelComponent() { + this.closable = true; + this.saveable = true; + this.hideSidePanel = new core.EventEmitter(); + this.saveInSidePanel = new core.EventEmitter(); + this.onlyTitle = false; + } + /** + * @return {?} + */ + SidePanelComponent.prototype.closeSidePanel = /** + * @return {?} + */ + function () { + this.hideSidePanel.emit(true); + }; + /** + * @return {?} + */ + SidePanelComponent.prototype.saveBySidePanel = /** + * @return {?} + */ + function () { + this.saveInSidePanel.emit(true); + }; + /** + * @return {?} + */ + SidePanelComponent.prototype.toggleTitleMode = /** + * @return {?} + */ + function () { + if (this.closable && !this.saveable) { + this.onlyTitle = !this.onlyTitle; + } + }; + SidePanelComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-side-panel', + template: "
\r\n
\r\n \r\n
{{title}}
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n", + styles: [".gd-side-panel-wrapper{margin-right:0;width:334px;z-index:999;background-color:#fff;transition:margin-right .2s;display:flex;flex-flow:column;height:100vh}.gd-side-panel-wrapper .gd-side-panel-header{height:60px;background-color:#222e35;display:flex;flex-direction:row;flex-wrap:nowrap}.gd-side-panel-wrapper .gd-side-panel-header .icon{font-size:24px;color:#959da5;margin:18px;line-height:24px}.gd-side-panel-wrapper .gd-side-panel-header .title{font-size:13px;font-weight:700;color:#edf0f2;opacity:.57;margin-top:20px;width:100%}.gd-side-panel-wrapper .gd-side-panel-header .close,.gd-side-panel-wrapper .gd-side-panel-header .save{display:flex;align-items:center}.gd-side-panel-wrapper .gd-side-panel-header ::ng-deep gd-button .text{padding:0}.gd-side-panel-wrapper .gd-side-panel-body{display:flex;flex-flow:column;overflow:visible;overflow-y:auto;overflow-x:hidden;height:100%}@media (max-width:1037px){.gd-side-panel-wrapper{width:100%;position:absolute;left:0;right:0;top:0;bottom:0}.gd-side-panel-wrapper.only-title{height:60px!important}}"] + }] } + ]; + /** @nocollapse */ + SidePanelComponent.ctorParameters = function () { return []; }; + SidePanelComponent.propDecorators = { + title: [{ type: core.Input }], + icon: [{ type: core.Input }], + closable: [{ type: core.Input }], + saveable: [{ type: core.Input }], + hideSidePanel: [{ type: core.Output }], + saveInSidePanel: [{ type: core.Output }] + }; + return SidePanelComponent; + }()); + if (false) { + /** @type {?} */ + SidePanelComponent.prototype.title; + /** @type {?} */ + SidePanelComponent.prototype.icon; + /** @type {?} */ + SidePanelComponent.prototype.closable; + /** @type {?} */ + SidePanelComponent.prototype.saveable; + /** @type {?} */ + SidePanelComponent.prototype.hideSidePanel; + /** @type {?} */ + SidePanelComponent.prototype.saveInSidePanel; + /** @type {?} */ + SidePanelComponent.prototype.onlyTitle; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** @type {?} */ - var MOBILE_MAX_WIDTH = 425; - /** @type {?} */ - var TABLET_MAX_WIDTH = 1024; - var WindowService = /** @class */ (function () { - function WindowService() { - var _this = this; - this.resizeSubject = new rxjs.Subject(); - this.width = window.innerWidth; - this.height = window.innerHeight; - this._resize$ = rxjs.fromEvent(window, 'resize') - .pipe(operators.debounceTime(200), operators.distinctUntilChanged(), operators.startWith({ target: { innerWidth: window.innerWidth, innerHeight: window.innerHeight } }), operators.tap((/** - * @param {?} event - * @return {?} - */ - function (event) { - _this.resizeSubject.next((/** @type {?} */ (event.target))); - _this.width = ((/** @type {?} */ (event.target))).innerWidth; - _this.height = ((/** @type {?} */ (event.target))).innerHeight; - }))); - this._resize$.subscribe(); - } - Object.defineProperty(WindowService.prototype, "onResize", { - get: /** - * @return {?} - */ - function () { - return this.resizeSubject.asObservable(); - }, - enumerable: true, - configurable: true - }); - /** - * @return {?} - */ - WindowService.prototype.isMobile = /** - * @return {?} - */ - function () { - return this.width <= MOBILE_MAX_WIDTH; - }; - /** - * @return {?} - */ - WindowService.prototype.isTablet = /** - * @return {?} - */ - function () { - return this.width <= TABLET_MAX_WIDTH; - }; - /** - * @return {?} - */ - WindowService.prototype.isDesktop = /** - * @return {?} - */ - function () { - return !this.isMobile() && !this.isTablet(); - }; - /** - * @return {?} - */ - WindowService.prototype.getWidth = /** - * @return {?} - */ - function () { - return this.width; - }; - /** - * @return {?} - */ - WindowService.prototype.getHeight = /** - * @return {?} - */ - function () { - return this.height; - }; - /** - * @return {?} - */ - WindowService.prototype.isEdge = /** - * @return {?} - */ - function () { - return window.navigator.userAgent.toLowerCase().indexOf('edge') > -1; - }; - /** - * @return {?} - */ - WindowService.prototype.isFirefox = /** - * @return {?} - */ - function () { - return navigator.userAgent.toLowerCase().indexOf('firefox') > -1; - }; - return WindowService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - WindowService.prototype.resizeSubject; - /** - * @type {?} - * @private - */ - WindowService.prototype._resize$; - /** - * @type {?} - * @private - */ - WindowService.prototype.width; - /** - * @type {?} - * @private - */ - WindowService.prototype.height; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** @type {?} */ + var MOBILE_MAX_WIDTH = 425; + /** @type {?} */ + var TABLET_MAX_WIDTH = 1024; + var WindowService = /** @class */ (function () { + function WindowService() { + var _this = this; + this.resizeSubject = new rxjs.Subject(); + this.width = window.innerWidth; + this.height = window.innerHeight; + this._resize$ = rxjs.fromEvent(window, 'resize') + .pipe(operators.debounceTime(200), operators.distinctUntilChanged(), operators.startWith({ target: { innerWidth: window.innerWidth, innerHeight: window.innerHeight } }), operators.tap((/** + * @param {?} event + * @return {?} + */ + function (event) { + _this.resizeSubject.next((/** @type {?} */ (event.target))); + _this.width = ((/** @type {?} */ (event.target))).innerWidth; + _this.height = ((/** @type {?} */ (event.target))).innerHeight; + }))); + this._resize$.subscribe(); + } + Object.defineProperty(WindowService.prototype, "onResize", { + get: /** + * @return {?} + */ + function () { + return this.resizeSubject.asObservable(); + }, + enumerable: true, + configurable: true + }); + /** + * @return {?} + */ + WindowService.prototype.isMobile = /** + * @return {?} + */ + function () { + return this.width <= MOBILE_MAX_WIDTH; + }; + /** + * @return {?} + */ + WindowService.prototype.isTablet = /** + * @return {?} + */ + function () { + return this.width <= TABLET_MAX_WIDTH; + }; + /** + * @return {?} + */ + WindowService.prototype.isDesktop = /** + * @return {?} + */ + function () { + return !this.isMobile() && !this.isTablet(); + }; + /** + * @return {?} + */ + WindowService.prototype.getWidth = /** + * @return {?} + */ + function () { + return this.width; + }; + /** + * @return {?} + */ + WindowService.prototype.getHeight = /** + * @return {?} + */ + function () { + return this.height; + }; + /** + * @return {?} + */ + WindowService.prototype.isEdge = /** + * @return {?} + */ + function () { + return window.navigator.userAgent.toLowerCase().indexOf('edge') > -1; + }; + /** + * @return {?} + */ + WindowService.prototype.isFirefox = /** + * @return {?} + */ + function () { + return navigator.userAgent.toLowerCase().indexOf('firefox') > -1; + }; + return WindowService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + WindowService.prototype.resizeSubject; + /** + * @type {?} + * @private + */ + WindowService.prototype._resize$; + /** + * @type {?} + * @private + */ + WindowService.prototype.width; + /** + * @type {?} + * @private + */ + WindowService.prototype.height; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var ButtonComponent = /** @class */ (function () { - function ButtonComponent(windowService) { - var _this = this; - this.iconOnly = true; - this.intent = 'default'; - this.disabled = false; - this.toggle = false; - this.iconRegular = false; - this.elementPosition = 0; - this.showToolTip = false; - this.isDesktop = windowService.isDesktop(); - windowService.onResize.subscribe((/** - * @param {?} w - * @return {?} - */ - function (w) { - _this.isDesktop = windowService.isDesktop(); - })); - } - /** - * @return {?} - */ - ButtonComponent.prototype.iconButtonClass = /** - * @return {?} - */ - function () { - return this.iconOnly ? 'icon-button' : ''; - }; - /** - * @return {?} - */ - ButtonComponent.prototype.onHovering = /** - * @return {?} - */ - function () { - if (this.isDesktop && !this.disabled) { - this.className += ' active'; - } - }; - /** - * @return {?} - */ - ButtonComponent.prototype.onUnhovering = /** - * @return {?} - */ - function () { - if (this.isDesktop && !this.disabled) { - this.className = this.cleanAll(this.className, ' active'); - } - }; - /** - * @private - * @param {?} str - * @param {?} val - * @return {?} - */ - ButtonComponent.prototype.cleanAll = /** - * @private - * @param {?} str - * @param {?} val - * @return {?} - */ - function (str, val) { - while (str && str.indexOf(val) !== -1) { - str = str.replace(val, ''); - } - return str; - }; - ButtonComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-button', - template: "
\n \n \n
\n \n
\n
\n", - styles: [".icon-button{padding:0!important;margin:0 7px}.button{padding:0 10px;font-size:14px;color:#959da5;cursor:pointer;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;align-content:center;-webkit-box-pack:center;justify-content:center;min-width:37px;height:37px;text-align:center;position:relative;white-space:nowrap}.button.inactive{cursor:not-allowed;opacity:.4}.button.active *{color:#ccd0d4}.button.primary{background-color:#3e4e5a;color:#fff}.button.primary.active{color:#fff;background-color:#688296}.button.brand{background-color:#25c2d4;color:#fff}.button.brand.active{color:#fff;background-color:#688296}.button .text{font-size:13px;padding-left:10px}.button .button-tooltip{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}@media (max-width:1037px){.button{font-size:22px}.arrow-button{margin:5px}}"] - }] } - ]; - /** @nocollapse */ - ButtonComponent.ctorParameters = function () { return [ - { type: WindowService } - ]; }; - ButtonComponent.propDecorators = { - iconOnly: [{ type: core.Input }], - intent: [{ type: core.Input }], - disabled: [{ type: core.Input }], - icon: [{ type: core.Input }], - iconClass: [{ type: core.Input }], - tooltip: [{ type: core.Input }], - className: [{ type: core.Input }], - toggle: [{ type: core.Input }], - iconSize: [{ type: core.Input }], - iconRegular: [{ type: core.Input }], - elementPosition: [{ type: core.Input }] - }; - return ButtonComponent; - }()); - if (false) { - /** @type {?} */ - ButtonComponent.prototype.iconOnly; - /** @type {?} */ - ButtonComponent.prototype.intent; - /** @type {?} */ - ButtonComponent.prototype.disabled; - /** @type {?} */ - ButtonComponent.prototype.icon; - /** @type {?} */ - ButtonComponent.prototype.iconClass; - /** @type {?} */ - ButtonComponent.prototype.tooltip; - /** @type {?} */ - ButtonComponent.prototype.className; - /** @type {?} */ - ButtonComponent.prototype.toggle; - /** @type {?} */ - ButtonComponent.prototype.iconSize; - /** @type {?} */ - ButtonComponent.prototype.iconRegular; - /** @type {?} */ - ButtonComponent.prototype.elementPosition; - /** @type {?} */ - ButtonComponent.prototype.showToolTip; - /** - * @type {?} - * @private - */ - ButtonComponent.prototype.isDesktop; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var ButtonComponent = /** @class */ (function () { + function ButtonComponent(windowService) { + var _this = this; + this.iconOnly = true; + this.intent = 'default'; + this.disabled = false; + this.toggle = false; + this.iconRegular = false; + this.elementPosition = 0; + this.showToolTip = false; + this.isDesktop = windowService.isDesktop(); + windowService.onResize.subscribe((/** + * @param {?} w + * @return {?} + */ + function (w) { + _this.isDesktop = windowService.isDesktop(); + })); + } + /** + * @return {?} + */ + ButtonComponent.prototype.iconButtonClass = /** + * @return {?} + */ + function () { + return this.iconOnly ? 'icon-button' : ''; + }; + /** + * @return {?} + */ + ButtonComponent.prototype.onHovering = /** + * @return {?} + */ + function () { + if (this.isDesktop && !this.disabled) { + this.className += ' active'; + } + }; + /** + * @return {?} + */ + ButtonComponent.prototype.onUnhovering = /** + * @return {?} + */ + function () { + if (this.isDesktop && !this.disabled) { + this.className = this.cleanAll(this.className, ' active'); + } + }; + /** + * @private + * @param {?} str + * @param {?} val + * @return {?} + */ + ButtonComponent.prototype.cleanAll = /** + * @private + * @param {?} str + * @param {?} val + * @return {?} + */ + function (str, val) { + while (str && str.indexOf(val) !== -1) { + str = str.replace(val, ''); + } + return str; + }; + ButtonComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-button', + template: "
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n", + styles: [".icon-button{padding:0!important;margin:0 7px}.button{padding:0 10px;font-size:14px;color:#959da5;cursor:pointer;display:flex;flex-direction:column;align-items:center;align-content:center;justify-content:center;min-width:37px;height:37px;text-align:center;position:relative;white-space:nowrap}.button.inactive{cursor:not-allowed;opacity:.4}.button.active *{color:#ccd0d4}.button.primary{background-color:#3e4e5a;color:#fff}.button.primary.active{color:#fff;background-color:#688296}.button.brand{background-color:#25c2d4;color:#fff}.button.brand.active{color:#fff;background-color:#688296}.button .text{font-size:13px;padding-left:10px}.button .button-tooltip{display:flex;flex-direction:column}@media (max-width:1037px){.button{font-size:22px}.arrow-button{margin:5px}}"] + }] } + ]; + /** @nocollapse */ + ButtonComponent.ctorParameters = function () { return [ + { type: WindowService } + ]; }; + ButtonComponent.propDecorators = { + iconOnly: [{ type: core.Input }], + intent: [{ type: core.Input }], + disabled: [{ type: core.Input }], + icon: [{ type: core.Input }], + iconClass: [{ type: core.Input }], + tooltip: [{ type: core.Input }], + className: [{ type: core.Input }], + toggle: [{ type: core.Input }], + iconSize: [{ type: core.Input }], + iconRegular: [{ type: core.Input }], + elementPosition: [{ type: core.Input }] + }; + return ButtonComponent; + }()); + if (false) { + /** @type {?} */ + ButtonComponent.prototype.iconOnly; + /** @type {?} */ + ButtonComponent.prototype.intent; + /** @type {?} */ + ButtonComponent.prototype.disabled; + /** @type {?} */ + ButtonComponent.prototype.icon; + /** @type {?} */ + ButtonComponent.prototype.iconClass; + /** @type {?} */ + ButtonComponent.prototype.tooltip; + /** @type {?} */ + ButtonComponent.prototype.className; + /** @type {?} */ + ButtonComponent.prototype.toggle; + /** @type {?} */ + ButtonComponent.prototype.iconSize; + /** @type {?} */ + ButtonComponent.prototype.iconRegular; + /** @type {?} */ + ButtonComponent.prototype.elementPosition; + /** @type {?} */ + ButtonComponent.prototype.showToolTip; + /** + * @type {?} + * @private + */ + ButtonComponent.prototype.isDesktop; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var LogoComponent = /** @class */ (function () { - function LogoComponent() { - } - /** - * @return {?} - */ - LogoComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - }; - LogoComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-logo', - template: "
\n \n \n
\n\n", - styles: [".logo{background-color:#25c2d4;height:60px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center}.text{color:#fff;font-size:15px;text-transform:uppercase;margin:0 14px}.icon{display:none;font-size:32px;color:rgba(255,255,255,.5);margin:14px}@media (max-width:1037px){.logo{width:60px;height:60px}.logo .text{display:none}.logo .icon{display:block}}"] - }] } - ]; - /** @nocollapse */ - LogoComponent.ctorParameters = function () { return []; }; - LogoComponent.propDecorators = { - logo: [{ type: core.Input }], - icon: [{ type: core.Input }] - }; - return LogoComponent; - }()); - if (false) { - /** @type {?} */ - LogoComponent.prototype.logo; - /** @type {?} */ - LogoComponent.prototype.icon; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var LogoComponent = /** @class */ (function () { + function LogoComponent() { + } + /** + * @return {?} + */ + LogoComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + }; + LogoComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-logo', + template: "
\r\n \r\n \r\n
\r\n\r\n", + styles: [".logo{background-color:#25c2d4;height:60px;display:flex;align-items:center;justify-content:center}.text{color:#fff;font-size:15px;text-transform:uppercase;margin:0 14px}.icon{display:none;font-size:32px;color:rgba(255,255,255,.5);margin:14px}@media (max-width:1037px){.logo{width:60px;height:60px}.logo .text{display:none}.logo .icon{display:block}}"] + }] } + ]; + /** @nocollapse */ + LogoComponent.ctorParameters = function () { return []; }; + LogoComponent.propDecorators = { + logo: [{ type: core.Input }], + icon: [{ type: core.Input }] + }; + return LogoComponent; + }()); + if (false) { + /** @type {?} */ + LogoComponent.prototype.logo; + /** @type {?} */ + LogoComponent.prototype.icon; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var TooltipComponent = /** @class */ (function () { - function TooltipComponent() { - this.position = 0; - this.visibility = 'hidden'; - } - /** - * @return {?} - */ - TooltipComponent.prototype.getClass = /** - * @return {?} - */ - function () { - if (this.position === 0) { - return 'tooltip'; - } - return 'tooltip ' + (this.position > 0 ? 'last-element' : 'first-element'); - }; - Object.defineProperty(TooltipComponent.prototype, "show", { - set: /** - * @param {?} value - * @return {?} - */ - function (value) { - this.visibility = value ? 'shown' : 'hidden'; - }, - enumerable: true, - configurable: true - }); - /** - * @return {?} - */ - TooltipComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - }; - TooltipComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-tooltip', - template: "\n", - styles: [".tooltip{position:absolute;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;background-color:#000;color:#fff;text-align:center;border-radius:0;padding:5px;z-index:1;font-size:10px;height:11px;line-height:11px;-ms-grid-row-align:center;align-self:center;margin:0!important}.first-element{margin-left:10px!important}.last-element{margin-left:-10px!important}.tooltip.hidden{visibility:hidden}.tooltip.shown{visibility:visible}.shown:after{content:\" \";position:absolute;bottom:100%;left:50%;margin-left:-5px;border:5px solid transparent;border-bottom-color:#000}"] - }] } - ]; - /** @nocollapse */ - TooltipComponent.ctorParameters = function () { return []; }; - TooltipComponent.propDecorators = { - text: [{ type: core.Input }], - position: [{ type: core.Input }], - show: [{ type: core.Input }] - }; - return TooltipComponent; - }()); - if (false) { - /** @type {?} */ - TooltipComponent.prototype.text; - /** @type {?} */ - TooltipComponent.prototype.position; - /** @type {?} */ - TooltipComponent.prototype.visibility; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var TooltipComponent = /** @class */ (function () { + function TooltipComponent() { + this.position = 0; + this.visibility = 'hidden'; + } + /** + * @return {?} + */ + TooltipComponent.prototype.getClass = /** + * @return {?} + */ + function () { + if (this.position === 0) { + return 'tooltip'; + } + return 'tooltip ' + (this.position > 0 ? 'last-element' : 'first-element'); + }; + Object.defineProperty(TooltipComponent.prototype, "show", { + set: /** + * @param {?} value + * @return {?} + */ + function (value) { + this.visibility = value ? 'shown' : 'hidden'; + }, + enumerable: true, + configurable: true + }); + /** + * @return {?} + */ + TooltipComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + }; + TooltipComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-tooltip', + template: "\r\n", + styles: [".tooltip{position:absolute;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;background-color:#000;color:#fff;text-align:center;border-radius:0;padding:5px;z-index:1;font-size:10px;height:11px;line-height:11px;-ms-grid-row-align:center;align-self:center;margin:0!important}.first-element{margin-left:10px!important}.last-element{margin-left:-10px!important}.tooltip.hidden{visibility:hidden}.tooltip.shown{visibility:visible}.shown:after{content:\" \";position:absolute;bottom:100%;left:50%;margin-left:-5px;border:5px solid transparent;border-bottom-color:#000}"] + }] } + ]; + /** @nocollapse */ + TooltipComponent.ctorParameters = function () { return []; }; + TooltipComponent.propDecorators = { + text: [{ type: core.Input }], + position: [{ type: core.Input }], + show: [{ type: core.Input }] + }; + return TooltipComponent; + }()); + if (false) { + /** @type {?} */ + TooltipComponent.prototype.text; + /** @type {?} */ + TooltipComponent.prototype.position; + /** @type {?} */ + TooltipComponent.prototype.visibility; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var Api = /** @class */ (function () { - function Api() { - } - Api.VIEWER_APP = '/viewer'; - Api.SIGNATURE_APP = '/signature'; - Api.ANNOTATION_APP = '/annotation'; - Api.SEARCH_APP = '/search'; - Api.EDITOR_APP = '/editor'; - Api.COMPARISON_APP = '/comparison'; - Api.CONVERSION_APP = '/conversion'; - Api.METADATA_APP = '/metadata'; - Api.DEFAULT_API_ENDPOINT = window.location.href; - Api.LOAD_FILE_TREE = '/loadFileTree'; - Api.LOAD_CONFIG = '/loadConfig'; - Api.LOAD_DOCUMENT_DESCRIPTION = '/loadDocumentDescription'; - Api.LOAD_DOCUMENT_PAGE = '/loadDocumentPage'; - Api.LOAD_DOCUMENT_PROPERTIES = '/loadProperties'; - Api.LOAD_DOCUMENT_PROPERTIES_NAMES = '/loadPropertiesNames'; - Api.SAVE_PROPERTY = '/saveProperty'; - Api.REMOVE_PROPERTY = '/removeProperty'; - Api.ROTATE_DOCUMENT_PAGE = '/rotateDocumentPages'; - Api.UPLOAD_DOCUMENTS = '/uploadDocument'; - Api.DOWNLOAD_DOCUMENTS = '/downloadDocument'; - Api.LOAD_PRINT = '/loadPrint'; - Api.LOAD_PRINT_PDF = '/printPdf'; - Api.LOAD_THUMBNAILS = '/loadThumbnails'; - Api.LOAD_FORMATS = '/loadFormats'; - Api.SAVE_FILE = '/saveFile'; - Api.CREATE_FILE = '/createFile'; - Api.COMPARE_FILES = '/compare'; - Api.CONVERT_FILE = '/convert'; - Api.DELETE_SIGNATURE_FILE = '/deleteSignatureFile'; - Api.REMOVE_FROM_INDEX = '/removeFromIndex'; - Api.GET_FILE_STATUS = '/getFileStatus'; - Api.SAVE_OPTICAL_CODE = '/saveOpticalCode'; - Api.SAVE_TEXT = '/saveText'; - Api.SAVE_IMAGE = '/saveImage'; - Api.SAVE_STAMP = '/saveStamp'; - Api.SIGN = '/sign'; - Api.DOWNLOAD_SIGNED = '/downloadSigned'; - Api.LOAD_SIGNATURE_IMAGE = '/loadSignatureImage'; - Api.ANNOTATE = '/annotate'; - Api.SEARCH = '/search'; - Api.ADD_FILES_TO_INDEX = '/addFilesToIndex'; - Api.httpOptionsJson = { - headers: new http.HttpHeaders({ - 'Content-Type': 'application/json', - }) - }; - Api.httpOptionsJsonResponseTypeBlob = { - headers: new http.HttpHeaders({ - 'Content-Type': 'application/json', - }), - responseType: (/** @type {?} */ ('blob')) - }; - return Api; - }()); - if (false) { - /** @type {?} */ - Api.VIEWER_APP; - /** @type {?} */ - Api.SIGNATURE_APP; - /** @type {?} */ - Api.ANNOTATION_APP; - /** @type {?} */ - Api.SEARCH_APP; - /** @type {?} */ - Api.EDITOR_APP; - /** @type {?} */ - Api.COMPARISON_APP; - /** @type {?} */ - Api.CONVERSION_APP; - /** @type {?} */ - Api.METADATA_APP; - /** @type {?} */ - Api.DEFAULT_API_ENDPOINT; - /** @type {?} */ - Api.LOAD_FILE_TREE; - /** @type {?} */ - Api.LOAD_CONFIG; - /** @type {?} */ - Api.LOAD_DOCUMENT_DESCRIPTION; - /** @type {?} */ - Api.LOAD_DOCUMENT_PAGE; - /** @type {?} */ - Api.LOAD_DOCUMENT_PROPERTIES; - /** @type {?} */ - Api.LOAD_DOCUMENT_PROPERTIES_NAMES; - /** @type {?} */ - Api.SAVE_PROPERTY; - /** @type {?} */ - Api.REMOVE_PROPERTY; - /** @type {?} */ - Api.ROTATE_DOCUMENT_PAGE; - /** @type {?} */ - Api.UPLOAD_DOCUMENTS; - /** @type {?} */ - Api.DOWNLOAD_DOCUMENTS; - /** @type {?} */ - Api.LOAD_PRINT; - /** @type {?} */ - Api.LOAD_PRINT_PDF; - /** @type {?} */ - Api.LOAD_THUMBNAILS; - /** @type {?} */ - Api.LOAD_FORMATS; - /** @type {?} */ - Api.SAVE_FILE; - /** @type {?} */ - Api.CREATE_FILE; - /** @type {?} */ - Api.COMPARE_FILES; - /** @type {?} */ - Api.CONVERT_FILE; - /** @type {?} */ - Api.DELETE_SIGNATURE_FILE; - /** @type {?} */ - Api.REMOVE_FROM_INDEX; - /** @type {?} */ - Api.GET_FILE_STATUS; - /** @type {?} */ - Api.SAVE_OPTICAL_CODE; - /** @type {?} */ - Api.SAVE_TEXT; - /** @type {?} */ - Api.SAVE_IMAGE; - /** @type {?} */ - Api.SAVE_STAMP; - /** @type {?} */ - Api.SIGN; - /** @type {?} */ - Api.DOWNLOAD_SIGNED; - /** @type {?} */ - Api.LOAD_SIGNATURE_IMAGE; - /** @type {?} */ - Api.ANNOTATE; - /** @type {?} */ - Api.SEARCH; - /** @type {?} */ - Api.ADD_FILES_TO_INDEX; - /** @type {?} */ - Api.httpOptionsJson; - /** @type {?} */ - Api.httpOptionsJsonResponseTypeBlob; - } - var ConfigService = /** @class */ (function () { - function ConfigService() { - this.apiEndpoint = Api.DEFAULT_API_ENDPOINT; - } - Object.defineProperty(ConfigService.prototype, "apiEndpoint", { - get: /** - * @return {?} - */ - function () { - return this._apiEndpoint; - }, - set: /** - * @param {?} url - * @return {?} - */ - function (url) { - this._apiEndpoint = url && url.trim().endsWith('/') ? url.substring(0, url.length - 1) : url; - }, - enumerable: true, - configurable: true - }); - /** - * @param {?} app - * @return {?} - */ - ConfigService.prototype.getConfigEndpoint = /** - * @param {?} app - * @return {?} - */ - function (app) { - return (this.apiEndpoint.endsWith(app) ? this.apiEndpoint : this.apiEndpoint + app) + Api.LOAD_CONFIG; - }; - /** - * @return {?} - */ - ConfigService.prototype.getViewerApiEndpoint = /** - * @return {?} - */ - function () { - return this._apiEndpoint.endsWith(Api.VIEWER_APP) ? this._apiEndpoint : this._apiEndpoint + Api.VIEWER_APP; - }; - /** - * @return {?} - */ - ConfigService.prototype.getEditorApiEndpoint = /** - * @return {?} - */ - function () { - return this._apiEndpoint.trim().endsWith(Api.EDITOR_APP) ? this._apiEndpoint : this._apiEndpoint + Api.EDITOR_APP; - }; - /** - * @return {?} - */ - ConfigService.prototype.getComparisonApiEndpoint = /** - * @return {?} - */ - function () { - return this._apiEndpoint.trim().endsWith(Api.COMPARISON_APP) ? this._apiEndpoint : this._apiEndpoint + Api.COMPARISON_APP; - }; - /** - * @return {?} - */ - ConfigService.prototype.getConversionApiEndpoint = /** - * @return {?} - */ - function () { - return this._apiEndpoint.trim().endsWith(Api.CONVERSION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.CONVERSION_APP; - }; - /** - * @return {?} - */ - ConfigService.prototype.getMetadataApiEndpoint = /** - * @return {?} - */ - function () { - return this._apiEndpoint.trim().endsWith(Api.METADATA_APP) ? this._apiEndpoint : this._apiEndpoint + Api.METADATA_APP; - }; - /** - * @return {?} - */ - ConfigService.prototype.getSignatureApiEndpoint = /** - * @return {?} - */ - function () { - return this._apiEndpoint.endsWith(Api.SIGNATURE_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SIGNATURE_APP; - }; - /** - * @return {?} - */ - ConfigService.prototype.getAnnotationApiEndpoint = /** - * @return {?} - */ - function () { - return this._apiEndpoint.endsWith(Api.ANNOTATION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.ANNOTATION_APP; - }; - /** - * @return {?} - */ - ConfigService.prototype.getSearchApiEndpoint = /** - * @return {?} - */ - function () { - return this._apiEndpoint.endsWith(Api.SEARCH_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SEARCH_APP; - }; - ConfigService.decorators = [ - { type: core.Injectable } - ]; - /** @nocollapse */ - ConfigService.ctorParameters = function () { return []; }; - return ConfigService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - ConfigService.prototype._apiEndpoint; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var Api = /** @class */ (function () { + function Api() { + } + Api.VIEWER_APP = '/viewer'; + Api.SIGNATURE_APP = '/signature'; + Api.ANNOTATION_APP = '/annotation'; + Api.SEARCH_APP = '/search'; + Api.EDITOR_APP = '/editor'; + Api.COMPARISON_APP = '/comparison'; + Api.CONVERSION_APP = '/conversion'; + Api.METADATA_APP = '/metadata'; + Api.DEFAULT_API_ENDPOINT = window.location.href; + Api.LOAD_FILE_TREE = '/loadFileTree'; + Api.LOAD_CONFIG = '/loadConfig'; + Api.LOAD_DOCUMENT_DESCRIPTION = '/loadDocumentDescription'; + Api.LOAD_DOCUMENT_PAGE = '/loadDocumentPage'; + Api.LOAD_DOCUMENT_PROPERTIES = '/loadProperties'; + Api.LOAD_DOCUMENT_PROPERTIES_NAMES = '/loadPropertiesNames'; + Api.SAVE_PROPERTY = '/saveProperty'; + Api.REMOVE_PROPERTY = '/removeProperty'; + Api.ROTATE_DOCUMENT_PAGE = '/rotateDocumentPages'; + Api.UPLOAD_DOCUMENTS = '/uploadDocument'; + Api.DOWNLOAD_DOCUMENTS = '/downloadDocument'; + Api.LOAD_PRINT = '/loadPrint'; + Api.LOAD_PRINT_PDF = '/printPdf'; + Api.LOAD_THUMBNAILS = '/loadThumbnails'; + Api.LOAD_FORMATS = '/loadFormats'; + Api.SAVE_FILE = '/saveFile'; + Api.CREATE_FILE = '/createFile'; + Api.COMPARE_FILES = '/compare'; + Api.CONVERT_FILE = '/convert'; + Api.DELETE_SIGNATURE_FILE = '/deleteSignatureFile'; + Api.REMOVE_FROM_INDEX = '/removeFromIndex'; + Api.GET_FILE_STATUS = '/getFileStatus'; + Api.SAVE_OPTICAL_CODE = '/saveOpticalCode'; + Api.SAVE_TEXT = '/saveText'; + Api.SAVE_IMAGE = '/saveImage'; + Api.SAVE_STAMP = '/saveStamp'; + Api.SIGN = '/sign'; + Api.DOWNLOAD_SIGNED = '/downloadSigned'; + Api.LOAD_SIGNATURE_IMAGE = '/loadSignatureImage'; + Api.ANNOTATE = '/annotate'; + Api.SEARCH = '/search'; + Api.ADD_FILES_TO_INDEX = '/addFilesToIndex'; + Api.httpOptionsJson = { + headers: new http.HttpHeaders({ + 'Content-Type': 'application/json', + }) + }; + Api.httpOptionsJsonResponseTypeBlob = { + headers: new http.HttpHeaders({ + 'Content-Type': 'application/json', + }), + responseType: (/** @type {?} */ ('blob')) + }; + return Api; + }()); + if (false) { + /** @type {?} */ + Api.VIEWER_APP; + /** @type {?} */ + Api.SIGNATURE_APP; + /** @type {?} */ + Api.ANNOTATION_APP; + /** @type {?} */ + Api.SEARCH_APP; + /** @type {?} */ + Api.EDITOR_APP; + /** @type {?} */ + Api.COMPARISON_APP; + /** @type {?} */ + Api.CONVERSION_APP; + /** @type {?} */ + Api.METADATA_APP; + /** @type {?} */ + Api.DEFAULT_API_ENDPOINT; + /** @type {?} */ + Api.LOAD_FILE_TREE; + /** @type {?} */ + Api.LOAD_CONFIG; + /** @type {?} */ + Api.LOAD_DOCUMENT_DESCRIPTION; + /** @type {?} */ + Api.LOAD_DOCUMENT_PAGE; + /** @type {?} */ + Api.LOAD_DOCUMENT_PROPERTIES; + /** @type {?} */ + Api.LOAD_DOCUMENT_PROPERTIES_NAMES; + /** @type {?} */ + Api.SAVE_PROPERTY; + /** @type {?} */ + Api.REMOVE_PROPERTY; + /** @type {?} */ + Api.ROTATE_DOCUMENT_PAGE; + /** @type {?} */ + Api.UPLOAD_DOCUMENTS; + /** @type {?} */ + Api.DOWNLOAD_DOCUMENTS; + /** @type {?} */ + Api.LOAD_PRINT; + /** @type {?} */ + Api.LOAD_PRINT_PDF; + /** @type {?} */ + Api.LOAD_THUMBNAILS; + /** @type {?} */ + Api.LOAD_FORMATS; + /** @type {?} */ + Api.SAVE_FILE; + /** @type {?} */ + Api.CREATE_FILE; + /** @type {?} */ + Api.COMPARE_FILES; + /** @type {?} */ + Api.CONVERT_FILE; + /** @type {?} */ + Api.DELETE_SIGNATURE_FILE; + /** @type {?} */ + Api.REMOVE_FROM_INDEX; + /** @type {?} */ + Api.GET_FILE_STATUS; + /** @type {?} */ + Api.SAVE_OPTICAL_CODE; + /** @type {?} */ + Api.SAVE_TEXT; + /** @type {?} */ + Api.SAVE_IMAGE; + /** @type {?} */ + Api.SAVE_STAMP; + /** @type {?} */ + Api.SIGN; + /** @type {?} */ + Api.DOWNLOAD_SIGNED; + /** @type {?} */ + Api.LOAD_SIGNATURE_IMAGE; + /** @type {?} */ + Api.ANNOTATE; + /** @type {?} */ + Api.SEARCH; + /** @type {?} */ + Api.ADD_FILES_TO_INDEX; + /** @type {?} */ + Api.httpOptionsJson; + /** @type {?} */ + Api.httpOptionsJsonResponseTypeBlob; + } + var ConfigService = /** @class */ (function () { + function ConfigService() { + this.apiEndpoint = Api.DEFAULT_API_ENDPOINT; + } + Object.defineProperty(ConfigService.prototype, "apiEndpoint", { + get: /** + * @return {?} + */ + function () { + return this._apiEndpoint; + }, + set: /** + * @param {?} url + * @return {?} + */ + function (url) { + this._apiEndpoint = url && url.trim().endsWith('/') ? url.substring(0, url.length - 1) : url; + }, + enumerable: true, + configurable: true + }); + /** + * @param {?} app + * @return {?} + */ + ConfigService.prototype.getConfigEndpoint = /** + * @param {?} app + * @return {?} + */ + function (app) { + return (this.apiEndpoint.endsWith(app) ? this.apiEndpoint : this.apiEndpoint + app) + Api.LOAD_CONFIG; + }; + /** + * @return {?} + */ + ConfigService.prototype.getViewerApiEndpoint = /** + * @return {?} + */ + function () { + return this._apiEndpoint.endsWith(Api.VIEWER_APP) ? this._apiEndpoint : this._apiEndpoint + Api.VIEWER_APP; + }; + /** + * @return {?} + */ + ConfigService.prototype.getEditorApiEndpoint = /** + * @return {?} + */ + function () { + return this._apiEndpoint.trim().endsWith(Api.EDITOR_APP) ? this._apiEndpoint : this._apiEndpoint + Api.EDITOR_APP; + }; + /** + * @return {?} + */ + ConfigService.prototype.getComparisonApiEndpoint = /** + * @return {?} + */ + function () { + return this._apiEndpoint.trim().endsWith(Api.COMPARISON_APP) ? this._apiEndpoint : this._apiEndpoint + Api.COMPARISON_APP; + }; + /** + * @return {?} + */ + ConfigService.prototype.getConversionApiEndpoint = /** + * @return {?} + */ + function () { + return this._apiEndpoint.trim().endsWith(Api.CONVERSION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.CONVERSION_APP; + }; + /** + * @return {?} + */ + ConfigService.prototype.getMetadataApiEndpoint = /** + * @return {?} + */ + function () { + return this._apiEndpoint.trim().endsWith(Api.METADATA_APP) ? this._apiEndpoint : this._apiEndpoint + Api.METADATA_APP; + }; + /** + * @return {?} + */ + ConfigService.prototype.getSignatureApiEndpoint = /** + * @return {?} + */ + function () { + return this._apiEndpoint.endsWith(Api.SIGNATURE_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SIGNATURE_APP; + }; + /** + * @return {?} + */ + ConfigService.prototype.getAnnotationApiEndpoint = /** + * @return {?} + */ + function () { + return this._apiEndpoint.endsWith(Api.ANNOTATION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.ANNOTATION_APP; + }; + /** + * @return {?} + */ + ConfigService.prototype.getSearchApiEndpoint = /** + * @return {?} + */ + function () { + return this._apiEndpoint.endsWith(Api.SEARCH_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SEARCH_APP; + }; + ConfigService.decorators = [ + { type: core.Injectable } + ]; + /** @nocollapse */ + ConfigService.ctorParameters = function () { return []; }; + return ConfigService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + ConfigService.prototype._apiEndpoint; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var CommonModals = /** @class */ (function () { - function CommonModals() { - } - CommonModals.PasswordRequired = "gd-password-required"; - CommonModals.ErrorMessage = "gd-error-message"; - CommonModals.BrowseFiles = "gd-browse-files"; - CommonModals.CreateDocument = "gd-create-document"; - CommonModals.OperationSuccess = "gd-success-modal"; - CommonModals.DrawHandSignature = "gd-draw-hand-signature"; - CommonModals.DrawStampSignature = "gd-draw-stamp-signature"; - CommonModals.InformationMessage = "gd-information-message"; - return CommonModals; - }()); - if (false) { - /** @type {?} */ - CommonModals.PasswordRequired; - /** @type {?} */ - CommonModals.ErrorMessage; - /** @type {?} */ - CommonModals.BrowseFiles; - /** @type {?} */ - CommonModals.CreateDocument; - /** @type {?} */ - CommonModals.OperationSuccess; - /** @type {?} */ - CommonModals.DrawHandSignature; - /** @type {?} */ - CommonModals.DrawStampSignature; - /** @type {?} */ - CommonModals.InformationMessage; - } - var ModalService = /** @class */ (function () { - function ModalService() { - this.modals = []; - } - /** - * @param {?} modal - * @return {?} - */ - ModalService.prototype.add = /** - * @param {?} modal - * @return {?} - */ - function (modal) { - this.modals.push(modal); - }; - /** - * @param {?} id - * @return {?} - */ - ModalService.prototype.remove = /** - * @param {?} id - * @return {?} - */ - function (id) { - this.modals = this.modals.filter((/** - * @param {?} x - * @return {?} - */ - function (x) { return x.id !== id; })); - }; - /** - * @param {?} id - * @return {?} - */ - ModalService.prototype.open = /** - * @param {?} id - * @return {?} - */ - function (id) { - /** @type {?} */ - var modal = this.modals.filter((/** - * @param {?} x - * @return {?} - */ - function (x) { return x.id === id; }))[0]; - if (modal) { - modal.open(); - } - }; - /** - * @param {?} id - * @return {?} - */ - ModalService.prototype.close = /** - * @param {?} id - * @return {?} - */ - function (id) { - /** @type {?} */ - var modal = this.modals.filter((/** - * @param {?} x - * @return {?} - */ - function (x) { return x.id === id; }))[0]; - if (modal) { - modal.close(); - } - }; - return ModalService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - ModalService.prototype.modals; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var CommonModals = /** @class */ (function () { + function CommonModals() { + } + CommonModals.PasswordRequired = "gd-password-required"; + CommonModals.ErrorMessage = "gd-error-message"; + CommonModals.BrowseFiles = "gd-browse-files"; + CommonModals.CreateDocument = "gd-create-document"; + CommonModals.OperationSuccess = "gd-success-modal"; + CommonModals.DrawHandSignature = "gd-draw-hand-signature"; + CommonModals.DrawStampSignature = "gd-draw-stamp-signature"; + CommonModals.InformationMessage = "gd-information-message"; + return CommonModals; + }()); + if (false) { + /** @type {?} */ + CommonModals.PasswordRequired; + /** @type {?} */ + CommonModals.ErrorMessage; + /** @type {?} */ + CommonModals.BrowseFiles; + /** @type {?} */ + CommonModals.CreateDocument; + /** @type {?} */ + CommonModals.OperationSuccess; + /** @type {?} */ + CommonModals.DrawHandSignature; + /** @type {?} */ + CommonModals.DrawStampSignature; + /** @type {?} */ + CommonModals.InformationMessage; + } + var ModalService = /** @class */ (function () { + function ModalService() { + this.modals = []; + } + /** + * @param {?} modal + * @return {?} + */ + ModalService.prototype.add = /** + * @param {?} modal + * @return {?} + */ + function (modal) { + this.modals.push(modal); + }; + /** + * @param {?} id + * @return {?} + */ + ModalService.prototype.remove = /** + * @param {?} id + * @return {?} + */ + function (id) { + this.modals = this.modals.filter((/** + * @param {?} x + * @return {?} + */ + function (x) { return x.id !== id; })); + }; + /** + * @param {?} id + * @return {?} + */ + ModalService.prototype.open = /** + * @param {?} id + * @return {?} + */ + function (id) { + /** @type {?} */ + var modal = this.modals.filter((/** + * @param {?} x + * @return {?} + */ + function (x) { return x.id === id; }))[0]; + if (modal) { + modal.open(); + } + }; + /** + * @param {?} id + * @return {?} + */ + ModalService.prototype.close = /** + * @param {?} id + * @return {?} + */ + function (id) { + /** @type {?} */ + var modal = this.modals.filter((/** + * @param {?} x + * @return {?} + */ + function (x) { return x.id === id; }))[0]; + if (modal) { + modal.close(); + } + }; + return ModalService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + ModalService.prototype.modals; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var ModalComponent = /** @class */ (function () { - function ModalComponent(modalService, el) { - this.modalService = modalService; - this.visible = new core.EventEmitter(); - this.cancel = new core.EventEmitter(); - this.visibility = false; - this.element = el.nativeElement; - } - /** - * @return {?} - */ - ModalComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - if (!this.id) { - console.error('modal must have an id'); - return; - } - document.body.appendChild(this.element); - this.modalService.add(this); - }; - /** - * @return {?} - */ - ModalComponent.prototype.ngOnDestroy = /** - * @return {?} - */ - function () { - this.modalService.remove(this.id); - this.element.remove(); - }; - /** - * @return {?} - */ - ModalComponent.prototype.open = /** - * @return {?} - */ - function () { - this.visibility = true; - this.visible.emit(true); - }; - /** - * @return {?} - */ - ModalComponent.prototype.close = /** - * @return {?} - */ - function () { - event.preventDefault(); - event.stopPropagation(); - this.visibility = false; - this.visible.emit(false); - }; - /** - * @param {?} $event - * @return {?} - */ - ModalComponent.prototype.onClose = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - $event.stopPropagation(); - if ($event && $event.target && ((/** @type {?} */ ($event.target))).id === 'modalDialog') { - this.close(); - } - }; - /** - * @return {?} - */ - ModalComponent.prototype.cancelClose = /** - * @return {?} - */ - function () { - this.cancel.emit(false); - this.close(); - }; - ModalComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-modal', - template: "
\n
\n
\n
\n\n
\n
×
\n

{{title}}

\n
\n\n
\n \n
\n\n
\n\n
\n
\n
\n\n\n", - styles: ["@import url(https://fonts.googleapis.com/css?family=Montserrat&display=swap);:host *{font-family:'Open Sans',Arial,Helvetica,sans-serif}.gd-modal{overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0;background-color:rgba(0,0,0,.5)}.gd-modal-dialog{box-shadow:#0005 0 0 10px;position:fixed;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);z-index:1051}.gd-modal-dialog ::ng-deep .button{-webkit-box-orient:unset!important;-webkit-box-direction:unset!important;flex-direction:unset!important}.gd-modal-content{background-color:#fff;height:100%;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.gd-modal-header{height:60px;padding:0 12px 0 24px;background-color:#3e4e5a}.gd-modal-close{position:absolute;right:12px;top:12px;cursor:pointer;color:#fff;width:37px;height:37px;text-align:center}.gd-modal-close span{font-size:18px;font-weight:900;height:19px;width:10px;line-height:36px}.gd-modal-title{font-size:16px;font-weight:400;padding-top:17px;padding-bottom:22px;margin:0;color:#fff}.gd-modal-body{background-color:#fff;overflow:hidden;overflow-y:auto;height:calc(100% - 75px)}.gd-modal-footer{height:auto}.gd-modal-footer>.btn{float:right;margin:20px 15px;padding:10px 20px;cursor:pointer;font-size:12px}@media (max-width:1037px){.gd-modal-dialog{width:100%;height:100%}.gd-modal-body{height:100%}}"] - }] } - ]; - /** @nocollapse */ - ModalComponent.ctorParameters = function () { return [ - { type: ModalService }, - { type: core.ElementRef } - ]; }; - ModalComponent.propDecorators = { - id: [{ type: core.Input }], - title: [{ type: core.Input }], - visible: [{ type: core.Output }], - cancel: [{ type: core.Output }] - }; - return ModalComponent; - }()); - if (false) { - /** @type {?} */ - ModalComponent.prototype.id; - /** @type {?} */ - ModalComponent.prototype.title; - /** @type {?} */ - ModalComponent.prototype.visible; - /** @type {?} */ - ModalComponent.prototype.cancel; - /** @type {?} */ - ModalComponent.prototype.visibility; - /** - * @type {?} - * @private - */ - ModalComponent.prototype.element; - /** - * @type {?} - * @private - */ - ModalComponent.prototype.modalService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var ModalComponent = /** @class */ (function () { + function ModalComponent(modalService, el) { + this.modalService = modalService; + this.visible = new core.EventEmitter(); + this.cancel = new core.EventEmitter(); + this.visibility = false; + this.element = el.nativeElement; + } + /** + * @return {?} + */ + ModalComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + if (!this.id) { + console.error('modal must have an id'); + return; + } + document.body.appendChild(this.element); + this.modalService.add(this); + }; + /** + * @return {?} + */ + ModalComponent.prototype.ngOnDestroy = /** + * @return {?} + */ + function () { + this.modalService.remove(this.id); + this.element.remove(); + }; + /** + * @return {?} + */ + ModalComponent.prototype.open = /** + * @return {?} + */ + function () { + this.visibility = true; + this.visible.emit(true); + }; + /** + * @return {?} + */ + ModalComponent.prototype.close = /** + * @return {?} + */ + function () { + event.preventDefault(); + event.stopPropagation(); + this.visibility = false; + this.visible.emit(false); + }; + /** + * @param {?} $event + * @return {?} + */ + ModalComponent.prototype.onClose = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + $event.stopPropagation(); + if ($event && $event.target && ((/** @type {?} */ ($event.target))).id === 'modalDialog') { + this.close(); + } + }; + /** + * @return {?} + */ + ModalComponent.prototype.cancelClose = /** + * @return {?} + */ + function () { + this.cancel.emit(false); + this.close(); + }; + ModalComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-modal', + template: "
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
×
\r\n

{{title}}

\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n", + styles: ["@import url(https://fonts.googleapis.com/css?family=Montserrat&display=swap);:host *{font-family:'Open Sans',Arial,Helvetica,sans-serif}.gd-modal{overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0;background-color:rgba(0,0,0,.5)}.gd-modal-dialog{box-shadow:#0005 0 0 10px;position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1051}.gd-modal-dialog ::ng-deep .button{flex-direction:unset!important}.gd-modal-content{background-color:#fff;height:100%;display:flex;flex-direction:column}.gd-modal-header{height:60px;padding:0 12px 0 24px;background-color:#3e4e5a}.gd-modal-close{position:absolute;right:12px;top:12px;cursor:pointer;color:#fff;width:37px;height:37px;text-align:center}.gd-modal-close span{font-size:18px;font-weight:900;height:19px;width:10px;line-height:36px}.gd-modal-title{font-size:16px;font-weight:400;padding-top:17px;padding-bottom:22px;margin:0;color:#fff}.gd-modal-body{background-color:#fff;overflow:hidden;overflow-y:auto;height:calc(100% - 75px)}.gd-modal-footer{height:auto}.gd-modal-footer>.btn{float:right;margin:20px 15px;padding:10px 20px;cursor:pointer;font-size:12px}@media (max-width:1037px){.gd-modal-dialog{width:100%;height:100%}.gd-modal-body{height:100%}}"] + }] } + ]; + /** @nocollapse */ + ModalComponent.ctorParameters = function () { return [ + { type: ModalService }, + { type: core.ElementRef } + ]; }; + ModalComponent.propDecorators = { + id: [{ type: core.Input }], + title: [{ type: core.Input }], + visible: [{ type: core.Output }], + cancel: [{ type: core.Output }] + }; + return ModalComponent; + }()); + if (false) { + /** @type {?} */ + ModalComponent.prototype.id; + /** @type {?} */ + ModalComponent.prototype.title; + /** @type {?} */ + ModalComponent.prototype.visible; + /** @type {?} */ + ModalComponent.prototype.cancel; + /** @type {?} */ + ModalComponent.prototype.visibility; + /** + * @type {?} + * @private + */ + ModalComponent.prototype.element; + /** + * @type {?} + * @private + */ + ModalComponent.prototype.modalService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var PageModel = /** @class */ (function () { - function PageModel() { - } - return PageModel; - }()); - if (false) { - /** @type {?} */ - PageModel.prototype.data; - /** @type {?} */ - PageModel.prototype.angle; - /** @type {?} */ - PageModel.prototype.width; - /** @type {?} */ - PageModel.prototype.height; - /** @type {?} */ - PageModel.prototype.number; - /** @type {?} */ - PageModel.prototype.editable; - } - var RotatedPage = /** @class */ (function () { - function RotatedPage() { - } - return RotatedPage; - }()); - if (false) { - /** @type {?} */ - RotatedPage.prototype.pageNumber; - /** @type {?} */ - RotatedPage.prototype.angle; - } - var FileCredentials = /** @class */ (function () { - function FileCredentials(guid, password) { - this.guid = guid; - this.password = password; - } - return FileCredentials; - }()); - if (false) { - /** @type {?} */ - FileCredentials.prototype.guid; - /** @type {?} */ - FileCredentials.prototype.password; - } - var SaveFile = /** @class */ (function (_super) { - __extends(SaveFile, _super); - function SaveFile(guid, password, content) { - var _this = _super.call(this, guid, password) || this; - _this.content = content; - return _this; - } - return SaveFile; - }(FileCredentials)); - if (false) { - /** @type {?} */ - SaveFile.prototype.content; - } - var FileDescription = /** @class */ (function () { - function FileDescription() { - this.printAllowed = true; - } - return FileDescription; - }()); - if (false) { - /** @type {?} */ - FileDescription.prototype.guid; - /** @type {?} */ - FileDescription.prototype.pages; - /** @type {?} */ - FileDescription.prototype.printAllowed; - /** @type {?} */ - FileDescription.prototype.showGridLines; - /** @type {?} */ - FileDescription.prototype.thumbnails; - } - var FileModel = /** @class */ (function () { - function FileModel() { - } - return FileModel; - }()); - if (false) { - /** @type {?} */ - FileModel.prototype.guid; - /** @type {?} */ - FileModel.prototype.name; - /** @type {?} */ - FileModel.prototype.directory; - /** @type {?} */ - FileModel.prototype.size; - /** @type {?} */ - FileModel.prototype.isDirectory; - } - var HttpError = /** @class */ (function () { - function HttpError() { - } - HttpError.BadRequest = 400; - HttpError.Unauthorized = 401; - HttpError.Forbidden = 403; - HttpError.NotFound = 404; - HttpError.TimeOut = 408; - HttpError.Conflict = 409; - HttpError.InternalServerError = 500; - return HttpError; - }()); - if (false) { - /** @type {?} */ - HttpError.BadRequest; - /** @type {?} */ - HttpError.Unauthorized; - /** @type {?} */ - HttpError.Forbidden; - /** @type {?} */ - HttpError.NotFound; - /** @type {?} */ - HttpError.TimeOut; - /** @type {?} */ - HttpError.Conflict; - /** @type {?} */ - HttpError.InternalServerError; - } - var Utils = /** @class */ (function () { - function Utils() { - } - /** - * @param {?} event - * @return {?} - */ - Utils.getMousePosition = /** - * @param {?} event - * @return {?} - */ - function (event) { - /** @type {?} */ - var mouse = { - x: 0, - y: 0 - }; - /** @type {?} */ - var wEvent = (/** @type {?} */ (window.event)); - /** @type {?} */ - var ev = event || wEvent; - if (ev.pageX || wEvent.pageX || wEvent.screenX || (ev.touches && ev.touches[0] && ev.touches[0].pageX)) { //Moz - //Moz - /** @type {?} */ - var pageX = typeof ev.pageX !== "undefined" && ev.pageX !== 0 ? ev.pageX : wEvent.pageX; - /** @type {?} */ - var pageY = typeof ev.pageY !== "undefined" && ev.pageY !== 0 ? ev.pageY : wEvent.pageY; - /** @type {?} */ - var screenX_1 = typeof wEvent.screenX !== "undefined" && wEvent.screenY !== 0; - /** @type {?} */ - var screenY_1 = typeof wEvent.screenY !== "undefined" && wEvent.screenY !== 0; - mouse.x = pageX ? pageX : (screenX_1 ? wEvent.screenX : ev.touches[0].pageX); - mouse.y = pageY ? pageY : (screenY_1 ? wEvent.screenY : ev.touches[0].pageY); - } - else if (ev.clientX) { //IE - mouse.x = ev.clientX + document.body.scrollLeft; - mouse.y = ev.clientY + document.body.scrollTop; - } - return mouse; - }; - /** - * @param {?} color - * @return {?} - */ - Utils.toRgb = /** - * @param {?} color - * @return {?} - */ - function (color) { - /** @type {?} */ - var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(color); - if (result) { - /** @type {?} */ - var r = parseInt(result[1], 16); - /** @type {?} */ - var g = parseInt(result[2], 16); - /** @type {?} */ - var b = parseInt(result[3], 16); - return result ? 'rgb(' + r + ',' + g + ',' + b + ')' : ''; - } - return color; - }; - /** - * @param {?} color - * @return {?} - */ - Utils.toHex = /** - * @param {?} color - * @return {?} - */ - function (color) { - // check if color is standard hex value - if (color.match(/[0-9A-F]{6}|[0-9A-F]{3}$/i)) { - return (color.charAt(0) === "#") ? color : ("#" + color); - // check if color is RGB value -> convert to hex - } - else if (color.match(/^rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)$/)) { - /** @type {?} */ - var c = ([parseInt(RegExp.$1, 10), parseInt(RegExp.$2, 10), parseInt(RegExp.$3, 10)]); - /** @type {?} */ - var pad = (/** - * @param {?} str - * @return {?} - */ - function (str) { - if (str.length < 2) { - for (var i = 0, len = 2 - str.length; i < len; i++) { - str = '0' + str; - } - } - return str; - }); - if (c.length === 3) { - /** @type {?} */ - var r = pad(c[0].toString(16)); - /** @type {?} */ - var g = pad(c[1].toString(16)); - /** @type {?} */ - var b = pad(c[2].toString(16)); - return '#' + r + g + b; - } - // else do nothing - } - else { - return ''; - } - }; - return Utils; - }()); - var FileUtil = /** @class */ (function () { - function FileUtil() { - } - /** - * @param {?} filename - * @param {?} isDirectory - * @return {?} - */ - FileUtil.find = /** - * @param {?} filename - * @param {?} isDirectory - * @return {?} - */ - function (filename, isDirectory) { - if (filename && !isDirectory) { - /** @type {?} */ - var strings = filename.split('.'); - /** @type {?} */ - var name_1 = strings.pop().toLowerCase(); - if (typeof FileUtil.map[name_1] === "undefined") { - return strings.length > 0 ? FileUtil.map['unknown'] : FileUtil.map['folder']; - } - else { - return FileUtil.map[name_1]; - } - } - else { - return FileUtil.map['folder']; - } - }; - FileUtil.map = { - 'folder': { 'format': '', 'icon': 'folder' }, - 'pdf': { 'format': 'Portable Document Format', 'icon': 'file-pdf', 'unit': 'pt' }, - 'doc': { 'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt' }, - 'docx': { 'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt' }, - 'docm': { 'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt' }, - 'dot': { 'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt' }, - 'dotx': { 'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt' }, - 'dotm': { 'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt' }, - 'xls': { 'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px' }, - 'xlsx': { 'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px' }, - 'xlsm': { 'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px' }, - 'xlsb': { 'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px' }, - 'xls2003': { 'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px' }, - 'xltx': { 'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px' }, - 'xltm': { 'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px' }, - 'ppt': { 'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt' }, - 'pptx': { 'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt' }, - 'pps': { 'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt' }, - 'ppsx': { 'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt' }, - 'vsd': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, - 'vdx': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, - 'vss': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, - 'vsx': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, - 'vst': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, - 'vtx': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, - 'vsdx': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, - 'vdw': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, - 'vstx': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, - 'vssx': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, - 'mpp': { 'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt' }, - 'mpt': { 'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt' }, - 'msg': { 'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt' }, - 'eml': { 'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt' }, - 'emlx': { 'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt' }, - 'one': { 'format': 'Microsoft OneNote', 'icon': 'file-word', 'unit': 'pt' }, - 'odt': { 'format': 'Open Document Text', 'icon': 'file-word', 'unit': 'pt' }, - 'ott': { 'format': 'Open Document Text Template', 'icon': 'file-word', 'unit': 'pt' }, - 'ods': { 'format': 'Open Document Spreadsheet', 'icon': 'file-excel', 'unit': 'px' }, - 'odp': { 'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt' }, - 'otp': { 'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt' }, - 'ots': { 'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt' }, - 'potx': { 'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt' }, - 'potm': { 'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt' }, - 'pptm': { 'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt' }, - 'ppsm': { 'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt' }, - 'rtf': { 'format': 'Rich Text Format', 'icon': 'file-alt', 'unit': 'pt' }, - 'txt': { 'format': 'Plain Text File', 'icon': 'file-alt', 'unit': 'pt' }, - 'csv': { 'format': 'Comma-Separated Values', 'icon': 'file-excel', 'unit': 'px' }, - 'html': { 'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt' }, - 'mht': { 'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt' }, - 'mhtml': { 'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt' }, - 'xml': { 'format': 'Extensible Markup Language', 'icon': 'file-word', 'unit': 'pt' }, - 'xps': { 'format': 'XML Paper Specification', 'icon': 'file-word', 'unit': 'pt' }, - 'dxf': { 'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px' }, - 'dwg': { 'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px' }, - 'bmp': { 'format': 'Bitmap Picture', 'icon': 'file-image', 'unit': 'px' }, - 'gif': { 'format': 'Graphics Interchange Format', 'icon': 'file-image', 'unit': 'px' }, - 'jpg': { 'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px' }, - 'jpe': { 'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px' }, - 'jpeg': { 'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px' }, - 'jfif': { 'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px' }, - 'png': { 'format': 'Portable Network Graphics', 'icon': 'file-image', 'unit': 'px' }, - 'tiff': { 'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px' }, - 'tif': { 'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px' }, - 'psd': { 'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px' }, - 'svg': { 'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px' }, - 'jp2': { 'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px' }, - 'epub': { 'format': 'Electronic Publication', 'icon': 'file-pdf', 'unit': 'pt' }, - 'ico': { 'format': 'Windows Icon', 'icon': 'file-image', 'unit': 'px' }, - 'webp': { 'format': 'Compressed Image', 'icon': 'file-image', 'unit': 'px' }, - 'mobi': { 'format': 'Mobipocket eBook', 'icon': 'file-pdf', 'unit': 'pt' }, - 'tex': { 'format': 'LaTeX Source Document', 'icon': 'file-pdf', 'unit': 'pt' }, - 'djvu': { 'format': 'Multi-Layer Raster Image', 'icon': 'file-alt', 'unit': 'pt' }, - 'unknown': { 'format': 'This format is not supported', 'icon': 'file' }, - }; - return FileUtil; - }()); - if (false) { - /** @type {?} */ - FileUtil.map; - } - var FileService = /** @class */ (function () { - function FileService() { - } - return FileService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var PageModel = /** @class */ (function () { + function PageModel() { + } + return PageModel; + }()); + if (false) { + /** @type {?} */ + PageModel.prototype.data; + /** @type {?} */ + PageModel.prototype.angle; + /** @type {?} */ + PageModel.prototype.width; + /** @type {?} */ + PageModel.prototype.height; + /** @type {?} */ + PageModel.prototype.number; + /** @type {?} */ + PageModel.prototype.editable; + } + var RotatedPage = /** @class */ (function () { + function RotatedPage() { + } + return RotatedPage; + }()); + if (false) { + /** @type {?} */ + RotatedPage.prototype.pageNumber; + /** @type {?} */ + RotatedPage.prototype.angle; + } + var FileCredentials = /** @class */ (function () { + function FileCredentials(guid, password) { + this.guid = guid; + this.password = password; + } + return FileCredentials; + }()); + if (false) { + /** @type {?} */ + FileCredentials.prototype.guid; + /** @type {?} */ + FileCredentials.prototype.password; + } + var SaveFile = /** @class */ (function (_super) { + __extends(SaveFile, _super); + function SaveFile(guid, password, content) { + var _this = _super.call(this, guid, password) || this; + _this.content = content; + return _this; + } + return SaveFile; + }(FileCredentials)); + if (false) { + /** @type {?} */ + SaveFile.prototype.content; + } + var FileDescription = /** @class */ (function () { + function FileDescription() { + this.printAllowed = true; + } + return FileDescription; + }()); + if (false) { + /** @type {?} */ + FileDescription.prototype.guid; + /** @type {?} */ + FileDescription.prototype.pages; + /** @type {?} */ + FileDescription.prototype.printAllowed; + /** @type {?} */ + FileDescription.prototype.showGridLines; + /** @type {?} */ + FileDescription.prototype.thumbnails; + } + var FileModel = /** @class */ (function () { + function FileModel() { + } + return FileModel; + }()); + if (false) { + /** @type {?} */ + FileModel.prototype.guid; + /** @type {?} */ + FileModel.prototype.name; + /** @type {?} */ + FileModel.prototype.directory; + /** @type {?} */ + FileModel.prototype.size; + /** @type {?} */ + FileModel.prototype.isDirectory; + } + var HttpError = /** @class */ (function () { + function HttpError() { + } + HttpError.BadRequest = 400; + HttpError.Unauthorized = 401; + HttpError.Forbidden = 403; + HttpError.NotFound = 404; + HttpError.TimeOut = 408; + HttpError.Conflict = 409; + HttpError.InternalServerError = 500; + return HttpError; + }()); + if (false) { + /** @type {?} */ + HttpError.BadRequest; + /** @type {?} */ + HttpError.Unauthorized; + /** @type {?} */ + HttpError.Forbidden; + /** @type {?} */ + HttpError.NotFound; + /** @type {?} */ + HttpError.TimeOut; + /** @type {?} */ + HttpError.Conflict; + /** @type {?} */ + HttpError.InternalServerError; + } + var Utils = /** @class */ (function () { + function Utils() { + } + /** + * @param {?} event + * @return {?} + */ + Utils.getMousePosition = /** + * @param {?} event + * @return {?} + */ + function (event) { + /** @type {?} */ + var mouse = { + x: 0, + y: 0 + }; + /** @type {?} */ + var wEvent = (/** @type {?} */ (window.event)); + /** @type {?} */ + var ev = event || wEvent; + if (ev.pageX || wEvent.pageX || wEvent.screenX || (ev.touches && ev.touches[0] && ev.touches[0].pageX)) { //Moz + //Moz + /** @type {?} */ + var pageX = typeof ev.pageX !== "undefined" && ev.pageX !== 0 ? ev.pageX : wEvent.pageX; + /** @type {?} */ + var pageY = typeof ev.pageY !== "undefined" && ev.pageY !== 0 ? ev.pageY : wEvent.pageY; + /** @type {?} */ + var screenX_1 = typeof wEvent.screenX !== "undefined" && wEvent.screenY !== 0; + /** @type {?} */ + var screenY_1 = typeof wEvent.screenY !== "undefined" && wEvent.screenY !== 0; + mouse.x = pageX ? pageX : (screenX_1 ? wEvent.screenX : ev.touches[0].pageX); + mouse.y = pageY ? pageY : (screenY_1 ? wEvent.screenY : ev.touches[0].pageY); + } + else if (ev.clientX) { //IE + mouse.x = ev.clientX + document.body.scrollLeft; + mouse.y = ev.clientY + document.body.scrollTop; + } + return mouse; + }; + /** + * @param {?} color + * @return {?} + */ + Utils.toRgb = /** + * @param {?} color + * @return {?} + */ + function (color) { + /** @type {?} */ + var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(color); + if (result) { + /** @type {?} */ + var r = parseInt(result[1], 16); + /** @type {?} */ + var g = parseInt(result[2], 16); + /** @type {?} */ + var b = parseInt(result[3], 16); + return result ? 'rgb(' + r + ',' + g + ',' + b + ')' : ''; + } + return color; + }; + /** + * @param {?} color + * @return {?} + */ + Utils.toHex = /** + * @param {?} color + * @return {?} + */ + function (color) { + // check if color is standard hex value + if (color.match(/[0-9A-F]{6}|[0-9A-F]{3}$/i)) { + return (color.charAt(0) === "#") ? color : ("#" + color); + // check if color is RGB value -> convert to hex + } + else if (color.match(/^rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)$/)) { + /** @type {?} */ + var c = ([parseInt(RegExp.$1, 10), parseInt(RegExp.$2, 10), parseInt(RegExp.$3, 10)]); + /** @type {?} */ + var pad = (/** + * @param {?} str + * @return {?} + */ + function (str) { + if (str.length < 2) { + for (var i = 0, len = 2 - str.length; i < len; i++) { + str = '0' + str; + } + } + return str; + }); + if (c.length === 3) { + /** @type {?} */ + var r = pad(c[0].toString(16)); + /** @type {?} */ + var g = pad(c[1].toString(16)); + /** @type {?} */ + var b = pad(c[2].toString(16)); + return '#' + r + g + b; + } + // else do nothing + } + else { + return ''; + } + }; + return Utils; + }()); + var FileUtil = /** @class */ (function () { + function FileUtil() { + } + /** + * @param {?} filename + * @param {?} isDirectory + * @return {?} + */ + FileUtil.find = /** + * @param {?} filename + * @param {?} isDirectory + * @return {?} + */ + function (filename, isDirectory) { + if (filename && !isDirectory) { + /** @type {?} */ + var strings = filename.split('.'); + /** @type {?} */ + var name_1 = strings.pop().toLowerCase(); + if (typeof FileUtil.map[name_1] === "undefined") { + return strings.length > 0 ? FileUtil.map['unknown'] : FileUtil.map['folder']; + } + else { + return FileUtil.map[name_1]; + } + } + else { + return FileUtil.map['folder']; + } + }; + FileUtil.map = { + 'folder': { 'format': '', 'icon': 'folder' }, + 'pdf': { 'format': 'Portable Document Format', 'icon': 'file-pdf', 'unit': 'pt' }, + 'doc': { 'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt' }, + 'docx': { 'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt' }, + 'docm': { 'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt' }, + 'dot': { 'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt' }, + 'dotx': { 'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt' }, + 'dotm': { 'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt' }, + 'xls': { 'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px' }, + 'xlsx': { 'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px' }, + 'xlsm': { 'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px' }, + 'xlsb': { 'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px' }, + 'xls2003': { 'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px' }, + 'xltx': { 'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px' }, + 'xltm': { 'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px' }, + 'ppt': { 'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt' }, + 'pptx': { 'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt' }, + 'pps': { 'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt' }, + 'ppsx': { 'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt' }, + 'vsd': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, + 'vdx': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, + 'vss': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, + 'vsx': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, + 'vst': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, + 'vtx': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, + 'vsdx': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, + 'vdw': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, + 'vstx': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, + 'vssx': { 'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px' }, + 'mpp': { 'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt' }, + 'mpt': { 'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt' }, + 'msg': { 'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt' }, + 'eml': { 'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt' }, + 'emlx': { 'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt' }, + 'one': { 'format': 'Microsoft OneNote', 'icon': 'file-word', 'unit': 'pt' }, + 'odt': { 'format': 'Open Document Text', 'icon': 'file-word', 'unit': 'pt' }, + 'ott': { 'format': 'Open Document Text Template', 'icon': 'file-word', 'unit': 'pt' }, + 'ods': { 'format': 'Open Document Spreadsheet', 'icon': 'file-excel', 'unit': 'px' }, + 'odp': { 'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt' }, + 'otp': { 'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt' }, + 'ots': { 'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt' }, + 'potx': { 'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt' }, + 'potm': { 'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt' }, + 'pptm': { 'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt' }, + 'ppsm': { 'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt' }, + 'rtf': { 'format': 'Rich Text Format', 'icon': 'file-alt', 'unit': 'pt' }, + 'txt': { 'format': 'Plain Text File', 'icon': 'file-alt', 'unit': 'pt' }, + 'csv': { 'format': 'Comma-Separated Values', 'icon': 'file-excel', 'unit': 'px' }, + 'html': { 'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt' }, + 'mht': { 'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt' }, + 'mhtml': { 'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt' }, + 'xml': { 'format': 'Extensible Markup Language', 'icon': 'file-word', 'unit': 'pt' }, + 'xps': { 'format': 'XML Paper Specification', 'icon': 'file-word', 'unit': 'pt' }, + 'dxf': { 'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px' }, + 'dwg': { 'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px' }, + 'bmp': { 'format': 'Bitmap Picture', 'icon': 'file-image', 'unit': 'px' }, + 'gif': { 'format': 'Graphics Interchange Format', 'icon': 'file-image', 'unit': 'px' }, + 'jpg': { 'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px' }, + 'jpe': { 'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px' }, + 'jpeg': { 'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px' }, + 'jfif': { 'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px' }, + 'png': { 'format': 'Portable Network Graphics', 'icon': 'file-image', 'unit': 'px' }, + 'tiff': { 'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px' }, + 'tif': { 'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px' }, + 'psd': { 'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px' }, + 'svg': { 'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px' }, + 'jp2': { 'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px' }, + 'epub': { 'format': 'Electronic Publication', 'icon': 'file-pdf', 'unit': 'pt' }, + 'ico': { 'format': 'Windows Icon', 'icon': 'file-image', 'unit': 'px' }, + 'webp': { 'format': 'Compressed Image', 'icon': 'file-image', 'unit': 'px' }, + 'mobi': { 'format': 'Mobipocket eBook', 'icon': 'file-pdf', 'unit': 'pt' }, + 'tex': { 'format': 'LaTeX Source Document', 'icon': 'file-pdf', 'unit': 'pt' }, + 'djvu': { 'format': 'Multi-Layer Raster Image', 'icon': 'file-alt', 'unit': 'pt' }, + 'unknown': { 'format': 'This format is not supported', 'icon': 'file' }, + }; + return FileUtil; + }()); + if (false) { + /** @type {?} */ + FileUtil.map; + } + var FileService = /** @class */ (function () { + function FileService() { + } + return FileService; }()); - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var UploadFilesService = /** @class */ (function () { - function UploadFilesService() { - var _this = this; - this._uploadsChange = new rxjs.Observable((/** - * @param {?} observer - * @return {?} - */ - function (observer) { - return _this._observer = observer; - })); - } - Object.defineProperty(UploadFilesService.prototype, "uploadsChange", { - get: /** - * @return {?} - */ - function () { - return this._uploadsChange; - }, - enumerable: true, - configurable: true - }); - /** - * @param {?} filesList - * @return {?} - */ - UploadFilesService.prototype.changeFilesList = /** - * @param {?} filesList - * @return {?} - */ - function (filesList) { - this._observer.next(filesList); - }; - return UploadFilesService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - UploadFilesService.prototype._uploadsChange; - /** - * @type {?} - * @private - */ - UploadFilesService.prototype._observer; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var UploadFilesService = /** @class */ (function () { + function UploadFilesService() { + var _this = this; + this._uploadsChange = new rxjs.Observable((/** + * @param {?} observer + * @return {?} + */ + function (observer) { + return _this._observer = observer; + })); + } + Object.defineProperty(UploadFilesService.prototype, "uploadsChange", { + get: /** + * @return {?} + */ + function () { + return this._uploadsChange; + }, + enumerable: true, + configurable: true + }); + /** + * @param {?} filesList + * @return {?} + */ + UploadFilesService.prototype.changeFilesList = /** + * @param {?} filesList + * @return {?} + */ + function (filesList) { + this._observer.next(filesList); + }; + return UploadFilesService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + UploadFilesService.prototype._uploadsChange; + /** + * @type {?} + * @private + */ + UploadFilesService.prototype._observer; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** @type {?} */ - var $ = jquery; - /** @type {?} */ - var upload_disc = 'Disc'; - /** @type {?} */ - var upload_url = 'URL'; - /** @type {?} */ - var uploads_choices = [{ name: upload_disc, icon: 'hdd' }, { name: upload_url, icon: 'link' }]; - var BrowseFilesModalComponent = /** @class */ (function () { - function BrowseFilesModalComponent(_uploadService) { - this._uploadService = _uploadService; - this.uploads = uploads_choices; - this.selectedFileGuid = new core.EventEmitter(); - this.selectedDirectory = new core.EventEmitter(); - this.urlForUpload = new core.EventEmitter(); - this.closing = new core.EventEmitter(); - this.showUploadUrl = false; - this.showUploadFile = false; - } - /** - * @return {?} - */ - BrowseFilesModalComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - }; - /** - * @param {?} size - * @return {?} - */ - BrowseFilesModalComponent.prototype.getSize = /** - * @param {?} size - * @return {?} - */ - function (size) { - /** @type {?} */ - var mb = size / 1024 / 1024; - if (mb > 1) { - return (Math.round(mb * 100) / 100) + ' MB'; - } - else { - /** @type {?} */ - var kb = size / 1024; - if (kb > 1) { - return (Math.round(kb * 100) / 100) + ' KB'; - } - } - return size + ' Bytes'; - }; - /** - * @param {?} file - * @return {?} - */ - BrowseFilesModalComponent.prototype.getFormatName = /** - * @param {?} file - * @return {?} - */ - function (file) { - return FileUtil.find(file.name, file.directory).format; - }; - /** - * @param {?} file - * @return {?} - */ - BrowseFilesModalComponent.prototype.getFormatIcon = /** - * @param {?} file - * @return {?} - */ - function (file) { - return FileUtil.find(file.name, file.directory).icon; - }; - /** - * @param {?} file - * @return {?} - */ - BrowseFilesModalComponent.prototype.choose = /** - * @param {?} file - * @return {?} - */ - function (file) { - this.selectedFile = file; - if (file.directory || file.isDirectory) { - this.selectedDirectory.emit(file.name); - } - else { - this.selectedFileGuid.emit(file.guid); - } - }; - /** - * @return {?} - */ - BrowseFilesModalComponent.prototype.goUp = /** - * @return {?} - */ - function () { - if (this.selectedFile) { - /** @type {?} */ - var guid = this.selectedFile.guid; - if (guid.length > 0 && guid.indexOf('/') === -1) { - guid = ''; - } - else { - guid = guid.replace(/\/[^\/]+\/?$/, ''); - } - this.selectedDirectory.emit(guid); - } - }; - /** - * @param {?} $event - * @return {?} - */ - BrowseFilesModalComponent.prototype.selectUpload = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - if (upload_url === $event) { - this.showUploadUrl = true; - } - else { - this.showUploadUrl = false; - $("#gd-upload-input").trigger('click'); - } - }; - /** - * @param {?} $event - * @return {?} - */ - BrowseFilesModalComponent.prototype.refresh = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - if ($event) { - this.files = null; - this.selectedDirectory.emit(''); - this.showUploadUrl = false; - this.selectedFile = null; - } - else { - this.closing.emit(true); - } - }; - /** - * @return {?} - */ - BrowseFilesModalComponent.prototype.showSpinner = /** - * @return {?} - */ - function () { - return !this.files; - }; - /** - * @param {?} url - * @return {?} - */ - BrowseFilesModalComponent.prototype.uploadUrl = /** - * @param {?} url - * @return {?} - */ - function (url) { - if (url) { - this.urlForUpload.emit(url); - this.cleanUpload(); - } - }; - /** - * @param {?} files - * @return {?} - */ - BrowseFilesModalComponent.prototype.handleFileInput = /** - * @param {?} files - * @return {?} - */ - function (files) { - this._uploadService.changeFilesList(files); - }; - /** - * @return {?} - */ - BrowseFilesModalComponent.prototype.cleanUpload = /** - * @return {?} - */ - function () { - this.showUploadFile = false; - this.showUploadUrl = false; - }; - BrowseFilesModalComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-browse-files-modal', - template: "\n
\n
\n \n Drop file here to upload\n
\n
\n
\n \n
\n
\n \n \n \n Upload file\n \n \n \n \n \n
{{item.name}}
\n
\n
\n
\n
\n
\n
\n \n
\n \n
\n
\n
\n
\n
\n
\n
FILE
\n
SIZE
\n
\n
\n
\n
\n
\n
\n \n
\n
..
\n
\n
\n
\n \n
\n
{{file?.name}}
\n
{{getFormatName(file)}}
\n
\n
\n
\n {{getSize(file?.size)}}\n
\n
\n
\n
\n
\n \n  Loading... Please wait.\n
\n
\n
\n", - styles: [".gd-modal-table{width:100%;text-align:left}#gd-browse-section{width:1036px;height:561px;overflow-y:auto}.list-files-header{height:60px;color:#6e6e6e;font-size:13px;font-weight:700;background-color:#f4f4f4;margin-top:24px}.list-files-header.upload-url{margin-top:20px}.header-name{padding-left:24px;width:90%;line-height:60px}.header-size{padding-right:27px;line-height:60px}.file-size,.header-size{width:10%;color:#777;text-align:right}.file-description{display:-webkit-box;display:flex;width:90%;padding:18px 0 18px 24px;font-size:14px;-webkit-box-flex:1;flex:1;cursor:pointer;overflow:hidden}.file-size{font-size:12px;padding:0 27px 0 0;width:10%;line-height:79px}.list-files-header,.list-files-lines{display:-webkit-box;display:flex;width:100%;-webkit-box-pack:justify;justify-content:space-between}.gd-modal-spinner{background-color:#fff;width:100%;height:20px;text-align:center;font-size:16px}.gd-cancel-button{padding:7px;background:0 0;width:28px;overflow:hidden}.gd-cancel-button i{font-size:21px}.gd-file-name{white-space:nowrap;overflow:hidden;width:100%;text-overflow:ellipsis}.go-up{display:-webkit-box;display:flex;font-size:26px;cursor:pointer;color:#4b566c;height:79px}.go-up-dots{margin-left:20px;margin-top:22px;font-size:16px}.go-up-icon{display:block;padding:18px 0 18px 24px}.upload-panel{display:-webkit-box;display:flex;position:relative;width:100%}.upload-panel .context{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;width:100%;margin-left:24px;margin-top:24px;margin-right:24px}.upload-panel .context .context-actions{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;width:100%}.upload-panel .context .context-actions :last-child{margin-right:0}.upload-panel .context .context-actions ::ng-deep .button{height:37px;width:96px;padding:0;-webkit-box-pack:center;justify-content:center}.upload-panel .context .context-actions ::ng-deep .button ::ng-deep .text{font-size:10px}.upload-panel .context .context-panel{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;width:100%;margin-top:20px}.upload-panel .context .context-panel .upload-url{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;width:100%}.upload-panel .context .context-panel .upload-url .url-input{width:100%;height:27px;border:1px solid #25c2d4;font-size:14px;padding-left:6px}.upload-panel .context .context-panel .upload-url .url-check{width:31px;height:31px;color:#fff;font-size:15px;background-color:#25c2d4}.upload-panel .context .context-panel .upload-url .url-check .ng-fa-icon{display:block;padding:8px}.upload-panel gd-drop-down{margin-right:10px}.file-description .ng-fa-icon.fa-file-pdf{color:#e04e4e}.file-description .ng-fa-icon.fa-file-word{color:#539cf0}.file-description .ng-fa-icon.fa-file-powerpoint{color:#e29e1e}.file-description .ng-fa-icon.fa-file-excel{color:#7cbc46}.file-description .ng-fa-icon.fa-file-image{color:#c375ed}.file-description .ng-fa-icon.fa-file,.file-description .ng-fa-icon.fa-file-alt,.file-description .ng-fa-icon.fa-file-text .fa-folder{color:#4b566c}.file-description .ng-fa-icon{font-size:32px}.file-name{font-size:16px;color:#6e6e6e;overflow:hidden;text-overflow:ellipsis}.file-name-format{padding-left:11px;overflow:hidden}.file-format{font-size:10px;padding-top:3px;color:#acacac}.go-up,.list-files-lines{border-bottom:1px solid #e7e7e7}.list-files-lines:hover{background-color:#e5e5e5}.gd-dnd-wrap{background-color:#fff;cursor:default;position:absolute;width:100%;height:calc(100% - 60px);background:rgba(255,255,255,.7);z-index:1;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center}.dnd-wrapper{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;top:259px;position:absolute}.dnd-wrapper .text{color:#6e6e6e;font-size:14px}.dnd-wrapper .icon{display:-webkit-box;display:flex;width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}@media (max-width:1037px){.file-size,.header-size{width:18%}.gd-dnd-wrap{width:95%}#gd-browse-section{width:100%;height:calc(100% - 146px)}}"] - }] } - ]; - /** @nocollapse */ - BrowseFilesModalComponent.ctorParameters = function () { return [ - { type: UploadFilesService } - ]; }; - BrowseFilesModalComponent.propDecorators = { - files: [{ type: core.Input }], - uploadConfig: [{ type: core.Input }], - selectedFileGuid: [{ type: core.Output }], - selectedDirectory: [{ type: core.Output }], - urlForUpload: [{ type: core.Output }], - closing: [{ type: core.Output }] - }; - return BrowseFilesModalComponent; - }()); - if (false) { - /** @type {?} */ - BrowseFilesModalComponent.prototype.uploads; - /** @type {?} */ - BrowseFilesModalComponent.prototype.files; - /** @type {?} */ - BrowseFilesModalComponent.prototype.uploadConfig; - /** @type {?} */ - BrowseFilesModalComponent.prototype.selectedFileGuid; - /** @type {?} */ - BrowseFilesModalComponent.prototype.selectedDirectory; - /** @type {?} */ - BrowseFilesModalComponent.prototype.urlForUpload; - /** @type {?} */ - BrowseFilesModalComponent.prototype.closing; - /** - * @type {?} - * @private - */ - BrowseFilesModalComponent.prototype.selectedFile; - /** @type {?} */ - BrowseFilesModalComponent.prototype.showUploadUrl; - /** @type {?} */ - BrowseFilesModalComponent.prototype.showUploadFile; - /** - * @type {?} - * @private - */ - BrowseFilesModalComponent.prototype._uploadService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** @type {?} */ + var $ = jquery; + /** @type {?} */ + var upload_disc = 'Disc'; + /** @type {?} */ + var upload_url = 'URL'; + /** @type {?} */ + var uploads_choices = [{ name: upload_disc, icon: 'hdd' }, { name: upload_url, icon: 'link' }]; + var BrowseFilesModalComponent = /** @class */ (function () { + function BrowseFilesModalComponent(_uploadService) { + this._uploadService = _uploadService; + this.uploads = uploads_choices; + this.selectedFileGuid = new core.EventEmitter(); + this.selectedDirectory = new core.EventEmitter(); + this.urlForUpload = new core.EventEmitter(); + this.closing = new core.EventEmitter(); + this.showUploadUrl = false; + this.showUploadFile = false; + } + /** + * @return {?} + */ + BrowseFilesModalComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + }; + /** + * @param {?} size + * @return {?} + */ + BrowseFilesModalComponent.prototype.getSize = /** + * @param {?} size + * @return {?} + */ + function (size) { + /** @type {?} */ + var mb = size / 1024 / 1024; + if (mb > 1) { + return (Math.round(mb * 100) / 100) + ' MB'; + } + else { + /** @type {?} */ + var kb = size / 1024; + if (kb > 1) { + return (Math.round(kb * 100) / 100) + ' KB'; + } + } + return size + ' Bytes'; + }; + /** + * @param {?} file + * @return {?} + */ + BrowseFilesModalComponent.prototype.getFormatName = /** + * @param {?} file + * @return {?} + */ + function (file) { + return FileUtil.find(file.name, file.directory).format; + }; + /** + * @param {?} file + * @return {?} + */ + BrowseFilesModalComponent.prototype.getFormatIcon = /** + * @param {?} file + * @return {?} + */ + function (file) { + return FileUtil.find(file.name, file.directory).icon; + }; + /** + * @param {?} file + * @return {?} + */ + BrowseFilesModalComponent.prototype.choose = /** + * @param {?} file + * @return {?} + */ + function (file) { + this.selectedFile = file; + if (file.directory || file.isDirectory) { + this.selectedDirectory.emit(file.name); + } + else { + this.selectedFileGuid.emit(file.guid); + } + }; + /** + * @return {?} + */ + BrowseFilesModalComponent.prototype.goUp = /** + * @return {?} + */ + function () { + if (this.selectedFile) { + /** @type {?} */ + var guid = this.selectedFile.guid; + if (guid.length > 0 && guid.indexOf('/') === -1) { + guid = ''; + } + else { + guid = guid.replace(/\/[^\/]+\/?$/, ''); + } + this.selectedDirectory.emit(guid); + } + }; + /** + * @param {?} $event + * @return {?} + */ + BrowseFilesModalComponent.prototype.selectUpload = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + if (upload_url === $event) { + this.showUploadUrl = true; + } + else { + this.showUploadUrl = false; + $("#gd-upload-input").trigger('click'); + } + }; + /** + * @param {?} $event + * @return {?} + */ + BrowseFilesModalComponent.prototype.refresh = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + if ($event) { + this.files = null; + this.selectedDirectory.emit(''); + this.showUploadUrl = false; + this.selectedFile = null; + } + else { + this.closing.emit(true); + } + }; + /** + * @return {?} + */ + BrowseFilesModalComponent.prototype.showSpinner = /** + * @return {?} + */ + function () { + return !this.files; + }; + /** + * @param {?} url + * @return {?} + */ + BrowseFilesModalComponent.prototype.uploadUrl = /** + * @param {?} url + * @return {?} + */ + function (url) { + if (url) { + this.urlForUpload.emit(url); + this.cleanUpload(); + } + }; + /** + * @param {?} files + * @return {?} + */ + BrowseFilesModalComponent.prototype.handleFileInput = /** + * @param {?} files + * @return {?} + */ + function (files) { + this._uploadService.changeFilesList(files); + }; + /** + * @return {?} + */ + BrowseFilesModalComponent.prototype.cleanUpload = /** + * @return {?} + */ + function () { + this.showUploadFile = false; + this.showUploadUrl = false; + }; + BrowseFilesModalComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-browse-files-modal', + template: "\r\n
\r\n
\r\n \r\n Drop file here to upload\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Upload file\r\n \r\n \r\n \r\n \r\n \r\n
{{item.name}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
FILE
\r\n
SIZE
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
..
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{file?.name}}
\r\n
{{getFormatName(file)}}
\r\n
\r\n
\r\n
\r\n {{getSize(file?.size)}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n  Loading... Please wait.\r\n
\r\n
\r\n
\r\n", + styles: [".gd-modal-table{width:100%;text-align:left}#gd-browse-section{width:1036px;height:561px;overflow-y:auto}.list-files-header{height:60px;color:#6e6e6e;font-size:13px;font-weight:700;background-color:#f4f4f4;margin-top:24px}.list-files-header.upload-url{margin-top:20px}.header-name{padding-left:24px;width:90%;line-height:60px}.header-size{padding-right:27px;line-height:60px}.file-size,.header-size{width:10%;color:#777;text-align:right}.file-description{display:flex;width:90%;padding:18px 0 18px 24px;font-size:14px;flex:1;cursor:pointer;overflow:hidden}.file-size{font-size:12px;padding:0 27px 0 0;width:10%;line-height:79px}.list-files-header,.list-files-lines{display:flex;width:100%;justify-content:space-between}.gd-modal-spinner{background-color:#fff;width:100%;height:20px;text-align:center;font-size:16px}.gd-cancel-button{padding:7px;background:0 0;width:28px;overflow:hidden}.gd-cancel-button i{font-size:21px}.gd-file-name{white-space:nowrap;overflow:hidden;width:100%;text-overflow:ellipsis}.go-up{display:flex;font-size:26px;cursor:pointer;color:#4b566c;height:79px}.go-up-dots{margin-left:20px;margin-top:22px;font-size:16px}.go-up-icon{display:block;padding:18px 0 18px 24px}.upload-panel{display:flex;position:relative;width:100%}.upload-panel .context{display:flex;flex-direction:column;width:100%;margin-left:24px;margin-top:24px;margin-right:24px}.upload-panel .context .context-actions{display:flex;flex-direction:row;width:100%}.upload-panel .context .context-actions :last-child{margin-right:0}.upload-panel .context .context-actions ::ng-deep .button{height:37px;width:96px;padding:0;justify-content:center}.upload-panel .context .context-actions ::ng-deep .button ::ng-deep .text{font-size:10px}.upload-panel .context .context-panel{display:flex;flex-direction:row;width:100%;margin-top:20px}.upload-panel .context .context-panel .upload-url{display:flex;flex-direction:row;width:100%}.upload-panel .context .context-panel .upload-url .url-input{width:100%;height:27px;border:1px solid #25c2d4;font-size:14px;padding-left:6px}.upload-panel .context .context-panel .upload-url .url-check{width:31px;height:31px;color:#fff;font-size:15px;background-color:#25c2d4}.upload-panel .context .context-panel .upload-url .url-check .ng-fa-icon{display:block;padding:8px}.upload-panel gd-drop-down{margin-right:10px}.file-description .ng-fa-icon.fa-file-pdf{color:#e04e4e}.file-description .ng-fa-icon.fa-file-word{color:#539cf0}.file-description .ng-fa-icon.fa-file-powerpoint{color:#e29e1e}.file-description .ng-fa-icon.fa-file-excel{color:#7cbc46}.file-description .ng-fa-icon.fa-file-image{color:#c375ed}.file-description .ng-fa-icon.fa-file,.file-description .ng-fa-icon.fa-file-alt,.file-description .ng-fa-icon.fa-file-text .fa-folder{color:#4b566c}.file-description .ng-fa-icon{font-size:32px}.file-name{font-size:16px;color:#6e6e6e;overflow:hidden;text-overflow:ellipsis}.file-name-format{padding-left:11px;overflow:hidden}.file-format{font-size:10px;padding-top:3px;color:#acacac}.go-up,.list-files-lines{border-bottom:1px solid #e7e7e7}.list-files-lines:hover{background-color:#e5e5e5}.gd-dnd-wrap{background-color:#fff;cursor:default;position:absolute;width:100%;height:calc(100% - 60px);background:rgba(255,255,255,.7);z-index:1;display:flex;justify-content:center;align-items:center}.dnd-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;top:259px;position:absolute}.dnd-wrapper .text{color:#6e6e6e;font-size:14px}.dnd-wrapper .icon{display:flex;width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}@media (max-width:1037px){.file-size,.header-size{width:18%}.gd-dnd-wrap{width:95%}#gd-browse-section{width:100%;height:calc(100% - 146px)}}"] + }] } + ]; + /** @nocollapse */ + BrowseFilesModalComponent.ctorParameters = function () { return [ + { type: UploadFilesService } + ]; }; + BrowseFilesModalComponent.propDecorators = { + files: [{ type: core.Input }], + uploadConfig: [{ type: core.Input }], + selectedFileGuid: [{ type: core.Output }], + selectedDirectory: [{ type: core.Output }], + urlForUpload: [{ type: core.Output }], + closing: [{ type: core.Output }] + }; + return BrowseFilesModalComponent; + }()); + if (false) { + /** @type {?} */ + BrowseFilesModalComponent.prototype.uploads; + /** @type {?} */ + BrowseFilesModalComponent.prototype.files; + /** @type {?} */ + BrowseFilesModalComponent.prototype.uploadConfig; + /** @type {?} */ + BrowseFilesModalComponent.prototype.selectedFileGuid; + /** @type {?} */ + BrowseFilesModalComponent.prototype.selectedDirectory; + /** @type {?} */ + BrowseFilesModalComponent.prototype.urlForUpload; + /** @type {?} */ + BrowseFilesModalComponent.prototype.closing; + /** + * @type {?} + * @private + */ + BrowseFilesModalComponent.prototype.selectedFile; + /** @type {?} */ + BrowseFilesModalComponent.prototype.showUploadUrl; + /** @type {?} */ + BrowseFilesModalComponent.prototype.showUploadFile; + /** + * @type {?} + * @private + */ + BrowseFilesModalComponent.prototype._uploadService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var ZoomService = /** @class */ (function () { - function ZoomService() { - this._observer = new rxjs.Subject(); - this._zoomChange = this._observer.asObservable(); - } - Object.defineProperty(ZoomService.prototype, "zoom", { - get: /** - * @return {?} - */ - function () { - return this._zoom; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ZoomService.prototype, "zoomChange", { - get: /** - * @return {?} - */ - function () { - return this._zoomChange; - }, - enumerable: true, - configurable: true - }); - /** - * @param {?} zoom - * @return {?} - */ - ZoomService.prototype.changeZoom = /** - * @param {?} zoom - * @return {?} - */ - function (zoom) { - this._zoom = zoom; - this._observer.next(zoom); - }; - /** - * @private - * @param {?} val - * @param {?} name - * @param {?=} sep - * @return {?} - */ - ZoomService.prototype.createZoomOption = /** - * @private - * @param {?} val - * @param {?} name - * @param {?=} sep - * @return {?} - */ - function (val, name, sep) { - if (sep === void 0) { sep = false; } - return { value: val, name: name, separator: sep }; - }; - /** - * @param {?} width - * @param {?} height - * @return {?} - */ - ZoomService.prototype.zoomOptions = /** - * @param {?} width - * @param {?} height - * @return {?} - */ - function (width, height) { - return [this.createZoomOption(25, '25%'), - this.createZoomOption(50, '50%'), - this.createZoomOption(100, '100%'), - this.createZoomOption(150, '150%'), - this.createZoomOption(200, '200%'), - this.createZoomOption(300, '300%'), - this.createZoomOption(0, '', true), - this.createZoomOption(width, 'Fit Width'), - this.createZoomOption(height, 'Fit Height')]; - }; - return ZoomService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - ZoomService.prototype._observer; - /** - * @type {?} - * @private - */ - ZoomService.prototype._zoomChange; - /** - * @type {?} - * @private - */ - ZoomService.prototype._zoom; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var ZoomService = /** @class */ (function () { + function ZoomService() { + this._observer = new rxjs.Subject(); + this._zoomChange = this._observer.asObservable(); + } + Object.defineProperty(ZoomService.prototype, "zoom", { + get: /** + * @return {?} + */ + function () { + return this._zoom; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(ZoomService.prototype, "zoomChange", { + get: /** + * @return {?} + */ + function () { + return this._zoomChange; + }, + enumerable: true, + configurable: true + }); + /** + * @param {?} zoom + * @return {?} + */ + ZoomService.prototype.changeZoom = /** + * @param {?} zoom + * @return {?} + */ + function (zoom) { + this._zoom = zoom; + this._observer.next(zoom); + }; + /** + * @private + * @param {?} val + * @param {?} name + * @param {?=} sep + * @return {?} + */ + ZoomService.prototype.createZoomOption = /** + * @private + * @param {?} val + * @param {?} name + * @param {?=} sep + * @return {?} + */ + function (val, name, sep) { + if (sep === void 0) { sep = false; } + return { value: val, name: name, separator: sep }; + }; + /** + * @param {?} width + * @param {?} height + * @return {?} + */ + ZoomService.prototype.zoomOptions = /** + * @param {?} width + * @param {?} height + * @return {?} + */ + function (width, height) { + return [this.createZoomOption(25, '25%'), + this.createZoomOption(50, '50%'), + this.createZoomOption(100, '100%'), + this.createZoomOption(150, '150%'), + this.createZoomOption(200, '200%'), + this.createZoomOption(300, '300%'), + this.createZoomOption(0, '', true), + this.createZoomOption(width, 'Fit Width'), + this.createZoomOption(height, 'Fit Height')]; + }; + return ZoomService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + ZoomService.prototype._observer; + /** + * @type {?} + * @private + */ + ZoomService.prototype._zoomChange; + /** + * @type {?} + * @private + */ + ZoomService.prototype._zoom; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var PagePreloadService = /** @class */ (function () { - function PagePreloadService() { - var _this = this; - this._checkPreload = new rxjs.Observable((/** - * @param {?} observer - * @return {?} - */ - function (observer) { - return _this._observer = observer; - })); - } - Object.defineProperty(PagePreloadService.prototype, "checkPreload", { - get: /** - * @return {?} - */ - function () { - return this._checkPreload; - }, - enumerable: true, - configurable: true - }); - /** - * @param {?} page - * @return {?} - */ - PagePreloadService.prototype.changeLastPageInView = /** - * @param {?} page - * @return {?} - */ - function (page) { - if (this._observer) { - this._observer.next(page); - } - }; - return PagePreloadService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - PagePreloadService.prototype._checkPreload; - /** - * @type {?} - * @private - */ - PagePreloadService.prototype._observer; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var PagePreloadService = /** @class */ (function () { + function PagePreloadService() { + var _this = this; + this._checkPreload = new rxjs.Observable((/** + * @param {?} observer + * @return {?} + */ + function (observer) { + return _this._observer = observer; + })); + } + Object.defineProperty(PagePreloadService.prototype, "checkPreload", { + get: /** + * @return {?} + */ + function () { + return this._checkPreload; + }, + enumerable: true, + configurable: true + }); + /** + * @param {?} page + * @return {?} + */ + PagePreloadService.prototype.changeLastPageInView = /** + * @param {?} page + * @return {?} + */ + function (page) { + if (this._observer) { + this._observer.next(page); + } + }; + return PagePreloadService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + PagePreloadService.prototype._checkPreload; + /** + * @type {?} + * @private + */ + PagePreloadService.prototype._observer; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var NavigateService = /** @class */ (function () { - function NavigateService(_pagePreloadService) { - this._pagePreloadService = _pagePreloadService; - this._currentPage = 0; - this._countPages = 0; - this._observer = new rxjs.BehaviorSubject(null); - this._navigate = this._observer.asObservable(); - } - Object.defineProperty(NavigateService.prototype, "navigate", { - get: /** - * @return {?} - */ - function () { - return this._navigate; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(NavigateService.prototype, "countPages", { - get: /** - * @return {?} - */ - function () { - return this._countPages; - }, - set: /** - * @param {?} value - * @return {?} - */ - function (value) { - this._countPages = value; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(NavigateService.prototype, "currentPage", { - get: /** - * @return {?} - */ - function () { - return this._currentPage; - }, - set: /** - * @param {?} value - * @return {?} - */ - function (value) { - this._currentPage = value; - }, - enumerable: true, - configurable: true - }); - /** - * @return {?} - */ - NavigateService.prototype.nextPage = /** - * @return {?} - */ - function () { - if (this._currentPage < this._countPages) { - this._currentPage++; - this.navigateTo(this._currentPage); - } - }; - /** - * @return {?} - */ - NavigateService.prototype.prevPage = /** - * @return {?} - */ - function () { - if (this._currentPage > 1) { - this._currentPage--; - this.navigateTo(this._currentPage); - } - }; - /** - * @return {?} - */ - NavigateService.prototype.toLastPage = /** - * @return {?} - */ - function () { - this._currentPage = this._countPages; - this.navigateTo(this._currentPage); - }; - /** - * @return {?} - */ - NavigateService.prototype.toFirstPage = /** - * @return {?} - */ - function () { - this._currentPage = 1; - this.navigateTo(this._currentPage); - }; - /** - * @param {?} page - * @return {?} - */ - NavigateService.prototype.navigateTo = /** - * @param {?} page - * @return {?} - */ - function (page) { - this.currentPage = page; - this._pagePreloadService.changeLastPageInView(page); - this._observer.next(page); - }; - NavigateService.decorators = [ - { type: core.Injectable, args: [{ - providedIn: 'root' - },] } - ]; - /** @nocollapse */ - NavigateService.ctorParameters = function () { return [ - { type: PagePreloadService } - ]; }; - /** @nocollapse */ NavigateService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function NavigateService_Factory() { return new NavigateService(core.ɵɵinject(PagePreloadService)); }, token: NavigateService, providedIn: "root" }); - return NavigateService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - NavigateService.prototype._currentPage; - /** - * @type {?} - * @private - */ - NavigateService.prototype._countPages; - /** - * @type {?} - * @private - */ - NavigateService.prototype._observer; - /** - * @type {?} - * @private - */ - NavigateService.prototype._navigate; - /** - * @type {?} - * @private - */ - NavigateService.prototype._pagePreloadService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var NavigateService = /** @class */ (function () { + function NavigateService(_pagePreloadService) { + this._pagePreloadService = _pagePreloadService; + this._currentPage = 0; + this._countPages = 0; + this._observer = new rxjs.BehaviorSubject(null); + this._navigate = this._observer.asObservable(); + } + Object.defineProperty(NavigateService.prototype, "navigate", { + get: /** + * @return {?} + */ + function () { + return this._navigate; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(NavigateService.prototype, "countPages", { + get: /** + * @return {?} + */ + function () { + return this._countPages; + }, + set: /** + * @param {?} value + * @return {?} + */ + function (value) { + this._countPages = value; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(NavigateService.prototype, "currentPage", { + get: /** + * @return {?} + */ + function () { + return this._currentPage; + }, + set: /** + * @param {?} value + * @return {?} + */ + function (value) { + this._currentPage = value; + }, + enumerable: true, + configurable: true + }); + /** + * @return {?} + */ + NavigateService.prototype.nextPage = /** + * @return {?} + */ + function () { + if (this._currentPage < this._countPages) { + this._currentPage++; + this.navigateTo(this._currentPage); + } + }; + /** + * @return {?} + */ + NavigateService.prototype.prevPage = /** + * @return {?} + */ + function () { + if (this._currentPage > 1) { + this._currentPage--; + this.navigateTo(this._currentPage); + } + }; + /** + * @return {?} + */ + NavigateService.prototype.toLastPage = /** + * @return {?} + */ + function () { + this._currentPage = this._countPages; + this.navigateTo(this._currentPage); + }; + /** + * @return {?} + */ + NavigateService.prototype.toFirstPage = /** + * @return {?} + */ + function () { + this._currentPage = 1; + this.navigateTo(this._currentPage); + }; + /** + * @param {?} page + * @return {?} + */ + NavigateService.prototype.navigateTo = /** + * @param {?} page + * @return {?} + */ + function (page) { + this.currentPage = page; + this._pagePreloadService.changeLastPageInView(page); + this._observer.next(page); + }; + NavigateService.decorators = [ + { type: core.Injectable, args: [{ + providedIn: 'root' + },] } + ]; + /** @nocollapse */ + NavigateService.ctorParameters = function () { return [ + { type: PagePreloadService } + ]; }; + /** @nocollapse */ NavigateService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function NavigateService_Factory() { return new NavigateService(core.ɵɵinject(PagePreloadService)); }, token: NavigateService, providedIn: "root" }); + return NavigateService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + NavigateService.prototype._currentPage; + /** + * @type {?} + * @private + */ + NavigateService.prototype._countPages; + /** + * @type {?} + * @private + */ + NavigateService.prototype._observer; + /** + * @type {?} + * @private + */ + NavigateService.prototype._navigate; + /** + * @type {?} + * @private + */ + NavigateService.prototype._pagePreloadService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** @type {?} */ - var $$1 = jquery; - var DocumentComponent = /** @class */ (function () { - function DocumentComponent(_elementRef, _zoomService, _windowService, _navigateService) { - var _this = this; - this._elementRef = _elementRef; - this._zoomService = _zoomService; - this._windowService = _windowService; - this._navigateService = _navigateService; - this.wait = false; - this.docWidth = null; - this.docHeight = null; - this.viewportWidth = null; - this.viewportHeight = null; - this.scale = null; - this.lastScale = null; - this.container = null; - this.doc = null; - this.x = 0; - this.lastX = 0; - this.y = 0; - this.lastY = 0; - this.pinchCenter = null; - this.pinchCenterOffset = null; - this.curWidth = 0; - this.curHeight = 0; - _zoomService.zoomChange.subscribe((/** - * @param {?} val - * @return {?} - */ - function (val) { - _this.zoom = val; - })); - this.isDesktop = _windowService.isDesktop(); - this._navigateService.navigate.subscribe((((/** - * @param {?} value - * @return {?} - */ - function (value) { - _this.selectedPage = value; - })))); - } - /** - * @return {?} - */ - DocumentComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - if (this.ifPresentation()) { - this.selectedPage = this._navigateService.currentPage; - } - }; - /** - * @return {?} - */ - DocumentComponent.prototype.ngOnChanges = /** - * @return {?} - */ - function () { - }; - /** - * @return {?} - */ - DocumentComponent.prototype.ngAfterViewInit = /** - * @return {?} - */ - function () { - // For current iteration we take .panzoom as a document - this.doc = this._elementRef.nativeElement.children.item(0).children.item(0); - // For current iteration we take .gd-document as a container - this.container = this._elementRef.nativeElement; - this.docWidth = this.doc.clientWidth; - this.docHeight = this.doc.clientHeight; - this.viewportWidth = this.doc.offsetWidth; - // For cases where we already have zoom defined we should include it - this.scale = (this.viewportWidth / this.docWidth) * this._zoomService.zoom / 100; - this.lastScale = this.scale; - this.viewportHeight = this.container.offsetHeight; - this.curWidth = this.docWidth * this.scale; - this.curHeight = this.docHeight * this.scale; - /** @type {?} */ - var hammer = new Hammer(this.container); - }; - // TODO: this temporary crutch for Excel files should be documented - // TODO: this temporary crutch for Excel files should be documented - /** - * @return {?} - */ - DocumentComponent.prototype.ifExcel = - // TODO: this temporary crutch for Excel files should be documented - /** - * @return {?} - */ - function () { - return FileUtil.find(this.file.guid, false).format === "Microsoft Excel"; - }; - /** - * @return {?} - */ - DocumentComponent.prototype.ifPresentation = /** - * @return {?} - */ - function () { - return FileUtil.find(this.file.guid, false).format === "Microsoft PowerPoint"; - }; - /** - * @param {?} value - * @param {?} pageNumber - * @return {?} - */ - DocumentComponent.prototype.getDimensionWithUnit = /** - * @param {?} value - * @param {?} pageNumber - * @return {?} - */ - function (value, pageNumber) { - return this.ifPresentation() && !this.isVisible(pageNumber) ? 0 : value + (this.mode ? FileUtil.find(this.file.guid, false).unit : 'px'); - }; - /** - * @return {?} - */ - DocumentComponent.prototype.ifEdge = /** - * @return {?} - */ - function () { - return navigator.userAgent.toLowerCase().indexOf('edge') > -1; - }; - /** - * @return {?} - */ - DocumentComponent.prototype.ngAfterViewChecked = /** - * @return {?} - */ - function () { - /** @type {?} */ - var elementNodeListOf = this._elementRef.nativeElement.querySelectorAll('.gd-wrapper'); - /** @type {?} */ - var element = elementNodeListOf.item(0); - if (element) { - $$1(element).trigger('focus'); - } - }; - /** - * @param {?} pageNumber - * @return {?} - */ - DocumentComponent.prototype.isVisible = /** - * @param {?} pageNumber - * @return {?} - */ - function (pageNumber) { - if (this.ifPresentation()) { - return pageNumber === this.selectedPage ? true : false; - } - else { - return true; - } - }; - DocumentComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-document', - template: "
Please wait...
\n
\n
\n
\n \n
\n
\n \n
\n", - styles: [":host{-webkit-box-flex:1;flex:1;-webkit-transition:.4s;transition:.4s;background-color:#e7e7e7;height:100%;overflow:scroll;touch-action:auto!important}:host .document{-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;user-select:text!important;touch-action:auto!important}.page{display:inline-block;background-color:#fff;margin:20px;box-shadow:0 3px 6px rgba(0,0,0,.16);-webkit-transition:.3s;transition:.3s}.page.excel{overflow:auto}.page.presentation{margin:0;-webkit-transition:unset;transition:unset}.page.presentation.active{margin:20px}.wait{position:absolute;top:55px;left:Calc(30%)}.panzoom{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;flex-wrap:wrap;-webkit-box-pack:center;justify-content:center;align-content:flex-start}@media (max-width:1037px){.page{min-width:unset!important;min-height:unset!important;margin:5px 0}}"] - }] } - ]; - /** @nocollapse */ - DocumentComponent.ctorParameters = function () { return [ - { type: core.ElementRef }, - { type: ZoomService }, - { type: WindowService }, - { type: NavigateService } - ]; }; - DocumentComponent.propDecorators = { - mode: [{ type: core.Input }], - preloadPageCount: [{ type: core.Input }], - file: [{ type: core.Input }], - selectedPage: [{ type: core.Input }] - }; - return DocumentComponent; - }()); - if (false) { - /** @type {?} */ - DocumentComponent.prototype.mode; - /** @type {?} */ - DocumentComponent.prototype.preloadPageCount; - /** @type {?} */ - DocumentComponent.prototype.file; - /** @type {?} */ - DocumentComponent.prototype.selectedPage; - /** @type {?} */ - DocumentComponent.prototype.wait; - /** @type {?} */ - DocumentComponent.prototype.zoom; - /** @type {?} */ - DocumentComponent.prototype.docWidth; - /** @type {?} */ - DocumentComponent.prototype.docHeight; - /** @type {?} */ - DocumentComponent.prototype.viewportWidth; - /** @type {?} */ - DocumentComponent.prototype.viewportHeight; - /** @type {?} */ - DocumentComponent.prototype.scale; - /** @type {?} */ - DocumentComponent.prototype.lastScale; - /** @type {?} */ - DocumentComponent.prototype.container; - /** @type {?} */ - DocumentComponent.prototype.doc; - /** @type {?} */ - DocumentComponent.prototype.x; - /** @type {?} */ - DocumentComponent.prototype.lastX; - /** @type {?} */ - DocumentComponent.prototype.y; - /** @type {?} */ - DocumentComponent.prototype.lastY; - /** @type {?} */ - DocumentComponent.prototype.pinchCenter; - /** @type {?} */ - DocumentComponent.prototype.pinchCenterOffset; - /** @type {?} */ - DocumentComponent.prototype.curWidth; - /** @type {?} */ - DocumentComponent.prototype.curHeight; - /** @type {?} */ - DocumentComponent.prototype.isDesktop; - /** - * @type {?} - * @protected - */ - DocumentComponent.prototype._elementRef; - /** - * @type {?} - * @private - */ - DocumentComponent.prototype._zoomService; - /** - * @type {?} - * @private - */ - DocumentComponent.prototype._windowService; - /** - * @type {?} - * @private - */ - DocumentComponent.prototype._navigateService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** @type {?} */ + var $$1 = jquery; + var DocumentComponent = /** @class */ (function () { + function DocumentComponent(_elementRef, _zoomService, _windowService, _navigateService) { + var _this = this; + this._elementRef = _elementRef; + this._zoomService = _zoomService; + this._windowService = _windowService; + this._navigateService = _navigateService; + this.wait = false; + this.docWidth = null; + this.docHeight = null; + this.viewportWidth = null; + this.viewportHeight = null; + this.scale = null; + this.lastScale = null; + this.container = null; + this.doc = null; + this.x = 0; + this.lastX = 0; + this.y = 0; + this.lastY = 0; + this.pinchCenter = null; + this.pinchCenterOffset = null; + this.curWidth = 0; + this.curHeight = 0; + _zoomService.zoomChange.subscribe((/** + * @param {?} val + * @return {?} + */ + function (val) { + _this.zoom = val; + })); + this.isDesktop = _windowService.isDesktop(); + this._navigateService.navigate.subscribe((((/** + * @param {?} value + * @return {?} + */ + function (value) { + _this.selectedPage = value; + })))); + } + /** + * @return {?} + */ + DocumentComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + if (this.ifPresentation()) { + this.selectedPage = this._navigateService.currentPage; + } + }; + /** + * @return {?} + */ + DocumentComponent.prototype.ngOnChanges = /** + * @return {?} + */ + function () { + }; + /** + * @return {?} + */ + DocumentComponent.prototype.ngAfterViewInit = /** + * @return {?} + */ + function () { + // For current iteration we take .panzoom as a document + this.doc = this._elementRef.nativeElement.children.item(0).children.item(0); + // For current iteration we take .gd-document as a container + this.container = this._elementRef.nativeElement; + this.docWidth = this.doc.clientWidth; + this.docHeight = this.doc.clientHeight; + this.viewportWidth = this.doc.offsetWidth; + // For cases where we already have zoom defined we should include it + this.scale = (this.viewportWidth / this.docWidth) * this._zoomService.zoom / 100; + this.lastScale = this.scale; + this.viewportHeight = this.container.offsetHeight; + this.curWidth = this.docWidth * this.scale; + this.curHeight = this.docHeight * this.scale; + /** @type {?} */ + var hammer = new Hammer(this.container); + }; + // TODO: this temporary crutch for Excel files should be documented + // TODO: this temporary crutch for Excel files should be documented + /** + * @return {?} + */ + DocumentComponent.prototype.ifExcel = + // TODO: this temporary crutch for Excel files should be documented + /** + * @return {?} + */ + function () { + return FileUtil.find(this.file.guid, false).format === "Microsoft Excel"; + }; + /** + * @return {?} + */ + DocumentComponent.prototype.ifPresentation = /** + * @return {?} + */ + function () { + return FileUtil.find(this.file.guid, false).format === "Microsoft PowerPoint"; + }; + /** + * @param {?} value + * @param {?} pageNumber + * @return {?} + */ + DocumentComponent.prototype.getDimensionWithUnit = /** + * @param {?} value + * @param {?} pageNumber + * @return {?} + */ + function (value, pageNumber) { + return this.ifPresentation() && !this.isVisible(pageNumber) ? 0 : value + (this.mode ? FileUtil.find(this.file.guid, false).unit : 'px'); + }; + /** + * @return {?} + */ + DocumentComponent.prototype.ifEdge = /** + * @return {?} + */ + function () { + return navigator.userAgent.toLowerCase().indexOf('edge') > -1; + }; + /** + * @return {?} + */ + DocumentComponent.prototype.ngAfterViewChecked = /** + * @return {?} + */ + function () { + /** @type {?} */ + var elementNodeListOf = this._elementRef.nativeElement.querySelectorAll('.gd-wrapper'); + /** @type {?} */ + var element = elementNodeListOf.item(0); + if (element) { + $$1(element).trigger('focus'); + } + }; + /** + * @param {?} pageNumber + * @return {?} + */ + DocumentComponent.prototype.isVisible = /** + * @param {?} pageNumber + * @return {?} + */ + function (pageNumber) { + if (this.ifPresentation()) { + return pageNumber === this.selectedPage ? true : false; + } + else { + return true; + } + }; + DocumentComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-document', + template: "
Please wait...
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n", + styles: [":host{flex:1;transition:.4s;background-color:#e7e7e7;height:100%;overflow:scroll;touch-action:auto!important}:host .document{-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;user-select:text!important;touch-action:auto!important}.page{display:inline-block;background-color:#fff;margin:20px;box-shadow:0 3px 6px rgba(0,0,0,.16);transition:.3s}.page.excel{overflow:auto}.page.presentation{margin:0;transition:unset}.page.presentation.active{margin:20px}.wait{position:absolute;top:55px;left:Calc(30%)}.panzoom{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-content:flex-start}@media (max-width:1037px){.page{min-width:unset!important;min-height:unset!important;margin:5px 0}}"] + }] } + ]; + /** @nocollapse */ + DocumentComponent.ctorParameters = function () { return [ + { type: core.ElementRef }, + { type: ZoomService }, + { type: WindowService }, + { type: NavigateService } + ]; }; + DocumentComponent.propDecorators = { + mode: [{ type: core.Input }], + preloadPageCount: [{ type: core.Input }], + file: [{ type: core.Input }], + selectedPage: [{ type: core.Input }] + }; + return DocumentComponent; + }()); + if (false) { + /** @type {?} */ + DocumentComponent.prototype.mode; + /** @type {?} */ + DocumentComponent.prototype.preloadPageCount; + /** @type {?} */ + DocumentComponent.prototype.file; + /** @type {?} */ + DocumentComponent.prototype.selectedPage; + /** @type {?} */ + DocumentComponent.prototype.wait; + /** @type {?} */ + DocumentComponent.prototype.zoom; + /** @type {?} */ + DocumentComponent.prototype.docWidth; + /** @type {?} */ + DocumentComponent.prototype.docHeight; + /** @type {?} */ + DocumentComponent.prototype.viewportWidth; + /** @type {?} */ + DocumentComponent.prototype.viewportHeight; + /** @type {?} */ + DocumentComponent.prototype.scale; + /** @type {?} */ + DocumentComponent.prototype.lastScale; + /** @type {?} */ + DocumentComponent.prototype.container; + /** @type {?} */ + DocumentComponent.prototype.doc; + /** @type {?} */ + DocumentComponent.prototype.x; + /** @type {?} */ + DocumentComponent.prototype.lastX; + /** @type {?} */ + DocumentComponent.prototype.y; + /** @type {?} */ + DocumentComponent.prototype.lastY; + /** @type {?} */ + DocumentComponent.prototype.pinchCenter; + /** @type {?} */ + DocumentComponent.prototype.pinchCenterOffset; + /** @type {?} */ + DocumentComponent.prototype.curWidth; + /** @type {?} */ + DocumentComponent.prototype.curHeight; + /** @type {?} */ + DocumentComponent.prototype.isDesktop; + /** + * @type {?} + * @protected + */ + DocumentComponent.prototype._elementRef; + /** + * @type {?} + * @private + */ + DocumentComponent.prototype._zoomService; + /** + * @type {?} + * @private + */ + DocumentComponent.prototype._windowService; + /** + * @type {?} + * @private + */ + DocumentComponent.prototype._navigateService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var PageComponent = /** @class */ (function () { - function PageComponent() { - } - /** - * @return {?} - */ - PageComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - /** @type {?} */ - var isIE = /*@cc_on!@*/ false || !!/(MSIE|Trident\/|Edge\/)/i.test(navigator.userAgent); - if (isIE && this.number === 0) { - this.editable = false; - } - }; - /** - * @param {?} changes - * @return {?} - */ - PageComponent.prototype.ngOnChanges = /** - * @param {?} changes - * @return {?} - */ - function (changes) { - // TODO: this is temporary needed to remove unneeded spaces and BOM symbol - // which leads to undesired spaces on the top of the docs pages - this.data = this.data !== null ? this.data.replace(/>\s+<') - .replace(/\uFEFF/g, "") - .replace(/href="\/viewer/g, 'href="http://localhost:8080/viewer') - .replace(/src="\/viewer/g, 'src="http://localhost:8080/viewer') - .replace(/data="\/viewer/g, 'data="http://localhost:8080/viewer') - : null; - /** @type {?} */ - var dataImagePngBase64 = 'data:image/png;base64,'; - this.imgData = dataImagePngBase64; - if (!this.isHtml) { - this.imgData += this.data; - } - }; - PageComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-page', - template: "
\n
\n \"\"\n\n
\n \n  Loading... Please wait.\n
\n
\n", - styles: [".gd-page-spinner{margin-top:150px;text-align:center}.gd-wrapper{width:inherit;height:inherit}.gd-wrapper div{width:100%}::ng-deep .gd-highlight{background-color:#ff0}::ng-deep .gd-highlight-select{background-color:#ff9b00}"] - }] } - ]; - /** @nocollapse */ - PageComponent.ctorParameters = function () { return []; }; - PageComponent.propDecorators = { - angle: [{ type: core.Input }], - width: [{ type: core.Input }], - height: [{ type: core.Input }], - number: [{ type: core.Input }], - data: [{ type: core.Input }], - isHtml: [{ type: core.Input }], - editable: [{ type: core.Input }] - }; - return PageComponent; - }()); - if (false) { - /** @type {?} */ - PageComponent.prototype.angle; - /** @type {?} */ - PageComponent.prototype.width; - /** @type {?} */ - PageComponent.prototype.height; - /** @type {?} */ - PageComponent.prototype.number; - /** @type {?} */ - PageComponent.prototype.data; - /** @type {?} */ - PageComponent.prototype.isHtml; - /** @type {?} */ - PageComponent.prototype.editable; - /** @type {?} */ - PageComponent.prototype.imgData; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var PageComponent = /** @class */ (function () { + function PageComponent() { + } + /** + * @return {?} + */ + PageComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + /** @type {?} */ + var isIE = /*@cc_on!@*/ false || !!/(MSIE|Trident\/|Edge\/)/i.test(navigator.userAgent); + if (isIE && this.number === 0) { + this.editable = false; + } + }; + /** + * @param {?} changes + * @return {?} + */ + PageComponent.prototype.ngOnChanges = /** + * @param {?} changes + * @return {?} + */ + function (changes) { + // TODO: this is temporary needed to remove unneeded spaces and BOM symbol + // which leads to undesired spaces on the top of the docs pages + this.data = this.data !== null ? this.data.replace(/>\s+<') + .replace(/\uFEFF/g, "") + .replace(/href="\/viewer/g, 'href="http://localhost:8080/viewer') + .replace(/src="\/viewer/g, 'src="http://localhost:8080/viewer') + .replace(/data="\/viewer/g, 'data="http://localhost:8080/viewer') + : null; + /** @type {?} */ + var dataImagePngBase64 = 'data:image/png;base64,'; + this.imgData = dataImagePngBase64; + if (!this.isHtml) { + this.imgData += this.data; + } + }; + PageComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-page', + template: "
\r\n
\r\n \"\"\r\n\r\n
\r\n \r\n  Loading... Please wait.\r\n
\r\n
\r\n", + styles: [".gd-page-spinner{margin-top:150px;text-align:center}.gd-wrapper{width:inherit;height:inherit}.gd-wrapper div{width:100%}::ng-deep .gd-highlight{background-color:#ff0}::ng-deep .gd-highlight-select{background-color:#ff9b00}"] + }] } + ]; + /** @nocollapse */ + PageComponent.ctorParameters = function () { return []; }; + PageComponent.propDecorators = { + angle: [{ type: core.Input }], + width: [{ type: core.Input }], + height: [{ type: core.Input }], + number: [{ type: core.Input }], + data: [{ type: core.Input }], + isHtml: [{ type: core.Input }], + editable: [{ type: core.Input }] + }; + return PageComponent; + }()); + if (false) { + /** @type {?} */ + PageComponent.prototype.angle; + /** @type {?} */ + PageComponent.prototype.width; + /** @type {?} */ + PageComponent.prototype.height; + /** @type {?} */ + PageComponent.prototype.number; + /** @type {?} */ + PageComponent.prototype.data; + /** @type {?} */ + PageComponent.prototype.isHtml; + /** @type {?} */ + PageComponent.prototype.editable; + /** @type {?} */ + PageComponent.prototype.imgData; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var SanitizeHtmlPipe = /** @class */ (function () { - function SanitizeHtmlPipe(sanitizer) { - this.sanitizer = sanitizer; - } - /** - * @param {?} html - * @return {?} - */ - SanitizeHtmlPipe.prototype.transform = /** - * @param {?} html - * @return {?} - */ - function (html) { - return this.sanitizer.bypassSecurityTrustHtml(html); - }; - SanitizeHtmlPipe.decorators = [ - { type: core.Pipe, args: [{ name: 'safeHtml' },] } - ]; - /** @nocollapse */ - SanitizeHtmlPipe.ctorParameters = function () { return [ - { type: platformBrowser.DomSanitizer } - ]; }; - return SanitizeHtmlPipe; - }()); - if (false) { - /** - * @type {?} - * @private - */ - SanitizeHtmlPipe.prototype.sanitizer; - } - var SanitizeResourceHtmlPipe = /** @class */ (function () { - function SanitizeResourceHtmlPipe(sanitizer) { - this.sanitizer = sanitizer; - } - /** - * @param {?} html - * @return {?} - */ - SanitizeResourceHtmlPipe.prototype.transform = /** - * @param {?} html - * @return {?} - */ - function (html) { - return this.sanitizer.bypassSecurityTrustResourceUrl(html); - }; - SanitizeResourceHtmlPipe.decorators = [ - { type: core.Pipe, args: [{ name: 'safeResourceHtml' },] } - ]; - /** @nocollapse */ - SanitizeResourceHtmlPipe.ctorParameters = function () { return [ - { type: platformBrowser.DomSanitizer } - ]; }; - return SanitizeResourceHtmlPipe; - }()); - if (false) { - /** - * @type {?} - * @private - */ - SanitizeResourceHtmlPipe.prototype.sanitizer; - } - var SanitizeStylePipe = /** @class */ (function () { - function SanitizeStylePipe(sanitizer) { - this.sanitizer = sanitizer; - } - /** - * @param {?} html - * @return {?} - */ - SanitizeStylePipe.prototype.transform = /** - * @param {?} html - * @return {?} - */ - function (html) { - return this.sanitizer.bypassSecurityTrustStyle(html); - }; - SanitizeStylePipe.decorators = [ - { type: core.Pipe, args: [{ name: 'safeStyle' },] } - ]; - /** @nocollapse */ - SanitizeStylePipe.ctorParameters = function () { return [ - { type: platformBrowser.DomSanitizer } - ]; }; - return SanitizeStylePipe; - }()); - if (false) { - /** - * @type {?} - * @private - */ - SanitizeStylePipe.prototype.sanitizer; - } - var HighlightSearchPipe = /** @class */ (function () { - function HighlightSearchPipe() { - } - /** - * @param {?} value - * @param {?} args - * @return {?} - */ - HighlightSearchPipe.prototype.transform = /** - * @param {?} value - * @param {?} args - * @return {?} - */ - function (value, args) { - if (!args) { - return value; - } - /** @type {?} */ - var re = new RegExp(args, 'gi'); - return value.replace(re, "$&"); - }; - HighlightSearchPipe.decorators = [ - { type: core.Pipe, args: [{ name: 'highlight' },] } - ]; - return HighlightSearchPipe; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var SanitizeHtmlPipe = /** @class */ (function () { + function SanitizeHtmlPipe(sanitizer) { + this.sanitizer = sanitizer; + } + /** + * @param {?} html + * @return {?} + */ + SanitizeHtmlPipe.prototype.transform = /** + * @param {?} html + * @return {?} + */ + function (html) { + return this.sanitizer.bypassSecurityTrustHtml(html); + }; + SanitizeHtmlPipe.decorators = [ + { type: core.Pipe, args: [{ name: 'safeHtml' },] } + ]; + /** @nocollapse */ + SanitizeHtmlPipe.ctorParameters = function () { return [ + { type: platformBrowser.DomSanitizer } + ]; }; + return SanitizeHtmlPipe; + }()); + if (false) { + /** + * @type {?} + * @private + */ + SanitizeHtmlPipe.prototype.sanitizer; + } + var SanitizeResourceHtmlPipe = /** @class */ (function () { + function SanitizeResourceHtmlPipe(sanitizer) { + this.sanitizer = sanitizer; + } + /** + * @param {?} html + * @return {?} + */ + SanitizeResourceHtmlPipe.prototype.transform = /** + * @param {?} html + * @return {?} + */ + function (html) { + return this.sanitizer.bypassSecurityTrustResourceUrl(html); + }; + SanitizeResourceHtmlPipe.decorators = [ + { type: core.Pipe, args: [{ name: 'safeResourceHtml' },] } + ]; + /** @nocollapse */ + SanitizeResourceHtmlPipe.ctorParameters = function () { return [ + { type: platformBrowser.DomSanitizer } + ]; }; + return SanitizeResourceHtmlPipe; + }()); + if (false) { + /** + * @type {?} + * @private + */ + SanitizeResourceHtmlPipe.prototype.sanitizer; + } + var SanitizeStylePipe = /** @class */ (function () { + function SanitizeStylePipe(sanitizer) { + this.sanitizer = sanitizer; + } + /** + * @param {?} html + * @return {?} + */ + SanitizeStylePipe.prototype.transform = /** + * @param {?} html + * @return {?} + */ + function (html) { + return this.sanitizer.bypassSecurityTrustStyle(html); + }; + SanitizeStylePipe.decorators = [ + { type: core.Pipe, args: [{ name: 'safeStyle' },] } + ]; + /** @nocollapse */ + SanitizeStylePipe.ctorParameters = function () { return [ + { type: platformBrowser.DomSanitizer } + ]; }; + return SanitizeStylePipe; + }()); + if (false) { + /** + * @type {?} + * @private + */ + SanitizeStylePipe.prototype.sanitizer; + } + var HighlightSearchPipe = /** @class */ (function () { + function HighlightSearchPipe() { + } + /** + * @param {?} value + * @param {?} args + * @return {?} + */ + HighlightSearchPipe.prototype.transform = /** + * @param {?} value + * @param {?} args + * @return {?} + */ + function (value, args) { + if (!args) { + return value; + } + /** @type {?} */ + var re = new RegExp(args, 'gi'); + return value.replace(re, "$&"); + }; + HighlightSearchPipe.decorators = [ + { type: core.Pipe, args: [{ name: 'highlight' },] } + ]; + return HighlightSearchPipe; }()); - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var UploadFileZoneComponent = /** @class */ (function () { - function UploadFileZoneComponent(_uploadService) { - this._uploadService = _uploadService; - this.closeUpload = new core.EventEmitter(); - } - /** - * @return {?} - */ - UploadFileZoneComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - }; - /** - * @param {?} files - * @return {?} - */ - UploadFileZoneComponent.prototype.handleFileInput = /** - * @param {?} files - * @return {?} - */ - function (files) { - this._uploadService.changeFilesList(files); - this.onCloseUpload(); - }; - /** - * @return {?} - */ - UploadFileZoneComponent.prototype.onCloseUpload = /** - * @return {?} - */ - function () { - this.closeUpload.emit(true); - }; - /** - * @param {?} $event - * @return {?} - */ - UploadFileZoneComponent.prototype.close = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - if ($event.target.id === 'gd-dropZone') { - this.onCloseUpload(); - } - }; - UploadFileZoneComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-upload-file-zone', - template: "
\n
\n \n
\n

Drag & Drop your files here

\n

OR

\n
\n \n
\n
\n", - styles: [".gd-drag-n-drop-wrap{border:2px dashed #ccc;background-color:#f8f8f8;text-align:center;cursor:default;position:absolute;width:-webkit-fill-available;left:1px;display:-webkit-box;display:flex;align-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:center;justify-content:center;opacity:.9;z-index:1}.gd-drag-n-drop-wrap h2{color:#959da5;margin:5px 0;font-size:15px;font-weight:300}.gd-drag-n-drop-wrap h4{color:#cacaca;font-weight:300;font-size:12px;margin:10px 0 15px}.gd-drag-n-drop-icon .fa-cloud-download-alt{color:#d1d1d1;font-size:110px}.gd-drag-n-drop-buttons i{margin-right:5px}.gd-drag-n-drop-buttons .btn{width:134px;height:35px;margin:0 10px;font-size:12px;font-weight:400}.gd-drag-n-drop-wrap.hover{background:#ddd;border-color:#aaa}"] - }] } - ]; - /** @nocollapse */ - UploadFileZoneComponent.ctorParameters = function () { return [ - { type: UploadFilesService } - ]; }; - UploadFileZoneComponent.propDecorators = { - closeUpload: [{ type: core.Output }] - }; - return UploadFileZoneComponent; - }()); - if (false) { - /** @type {?} */ - UploadFileZoneComponent.prototype.closeUpload; - /** - * @type {?} - * @private - */ - UploadFileZoneComponent.prototype._uploadService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var UploadFileZoneComponent = /** @class */ (function () { + function UploadFileZoneComponent(_uploadService) { + this._uploadService = _uploadService; + this.closeUpload = new core.EventEmitter(); + } + /** + * @return {?} + */ + UploadFileZoneComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + }; + /** + * @param {?} files + * @return {?} + */ + UploadFileZoneComponent.prototype.handleFileInput = /** + * @param {?} files + * @return {?} + */ + function (files) { + this._uploadService.changeFilesList(files); + this.onCloseUpload(); + }; + /** + * @return {?} + */ + UploadFileZoneComponent.prototype.onCloseUpload = /** + * @return {?} + */ + function () { + this.closeUpload.emit(true); + }; + /** + * @param {?} $event + * @return {?} + */ + UploadFileZoneComponent.prototype.close = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + if ($event.target.id === 'gd-dropZone') { + this.onCloseUpload(); + } + }; + UploadFileZoneComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-upload-file-zone', + template: "
\r\n
\r\n \r\n
\r\n

Drag & Drop your files here

\r\n

OR

\r\n
\r\n \r\n
\r\n
\r\n", + styles: [".gd-drag-n-drop-wrap{border:2px dashed #ccc;background-color:#f8f8f8;text-align:center;cursor:default;position:absolute;width:-webkit-fill-available;left:1px;display:flex;align-content:center;flex-direction:column;justify-content:center;opacity:.9;z-index:1}.gd-drag-n-drop-wrap h2{color:#959da5;margin:5px 0;font-size:15px;font-weight:300}.gd-drag-n-drop-wrap h4{color:#cacaca;font-weight:300;font-size:12px;margin:10px 0 15px}.gd-drag-n-drop-icon .fa-cloud-download-alt{color:#d1d1d1;font-size:110px}.gd-drag-n-drop-buttons i{margin-right:5px}.gd-drag-n-drop-buttons .btn{width:134px;height:35px;margin:0 10px;font-size:12px;font-weight:400}.gd-drag-n-drop-wrap.hover{background:#ddd;border-color:#aaa}"] + }] } + ]; + /** @nocollapse */ + UploadFileZoneComponent.ctorParameters = function () { return [ + { type: UploadFilesService } + ]; }; + UploadFileZoneComponent.propDecorators = { + closeUpload: [{ type: core.Output }] + }; + return UploadFileZoneComponent; + }()); + if (false) { + /** @type {?} */ + UploadFileZoneComponent.prototype.closeUpload; + /** + * @type {?} + * @private + */ + UploadFileZoneComponent.prototype._uploadService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var DndDirective = /** @class */ (function () { - function DndDirective(_uploadFilesService) { - this._uploadFilesService = _uploadFilesService; - this.closing = new core.EventEmitter(); - this.opening = new core.EventEmitter(); - this.dropped = new core.EventEmitter(); - this.active = false; - this.dragCounter = 0; - } - /** - * @param {?} evt - * @return {?} - */ - DndDirective.prototype.onDragEnter = /** - * @param {?} evt - * @return {?} - */ - function (evt) { - evt.preventDefault(); - evt.stopPropagation(); - this.dragCounter++; - this.active = true; - this.opening.emit(true); - }; - /** - * @param {?} evt - * @return {?} - */ - DndDirective.prototype.onDragOver = /** - * @param {?} evt - * @return {?} - */ - function (evt) { - evt.preventDefault(); - evt.stopPropagation(); - return false; - }; - /** - * @param {?} evt - * @return {?} - */ - DndDirective.prototype.onDragLeave = /** - * @param {?} evt - * @return {?} - */ - function (evt) { - evt.preventDefault(); - evt.stopPropagation(); - this.dragCounter--; - if (this.dragCounter === 0) { - this.active = false; - this.closeArea(); - } - }; - /** - * @param {?} evt - * @return {?} - */ - DndDirective.prototype.onDrop = /** - * @param {?} evt - * @return {?} - */ - function (evt) { - evt.preventDefault(); - evt.stopPropagation(); - /** @type {?} */ - var files = evt.dataTransfer.files; - if (files.length > 0) { - this.active = false; - this.dropped.emit(true); - this._uploadFilesService.changeFilesList(files); - this.closeArea(); - } - }; - /** - * @param {?} event - * @return {?} - */ - DndDirective.prototype.onClick = /** - * @param {?} event - * @return {?} - */ - function (event) { - this.closeArea(); - }; - /** - * @private - * @return {?} - */ - DndDirective.prototype.closeArea = /** - * @private - * @return {?} - */ - function () { - this.closing.emit(true); - this.opening.emit(false); - }; - DndDirective.decorators = [ - { type: core.Directive, args: [{ - selector: '[gdDnd]' - },] } - ]; - /** @nocollapse */ - DndDirective.ctorParameters = function () { return [ - { type: UploadFilesService } - ]; }; - DndDirective.propDecorators = { - closing: [{ type: core.Output }], - opening: [{ type: core.Output }], - dropped: [{ type: core.Output }], - active: [{ type: core.HostBinding, args: ['class.active',] }], - onDragEnter: [{ type: core.HostListener, args: ['dragenter', ['$event'],] }], - onDragOver: [{ type: core.HostListener, args: ['dragover', ['$event'],] }], - onDragLeave: [{ type: core.HostListener, args: ['dragleave', ['$event'],] }], - onDrop: [{ type: core.HostListener, args: ['drop', ['$event'],] }], - onClick: [{ type: core.HostListener, args: ['click', ['$event'],] }] - }; - return DndDirective; - }()); - if (false) { - /** @type {?} */ - DndDirective.prototype.closing; - /** @type {?} */ - DndDirective.prototype.opening; - /** @type {?} */ - DndDirective.prototype.dropped; - /** @type {?} */ - DndDirective.prototype.active; - /** - * @type {?} - * @private - */ - DndDirective.prototype.dragCounter; - /** - * @type {?} - * @protected - */ - DndDirective.prototype._uploadFilesService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var DndDirective = /** @class */ (function () { + function DndDirective(_uploadFilesService) { + this._uploadFilesService = _uploadFilesService; + this.closing = new core.EventEmitter(); + this.opening = new core.EventEmitter(); + this.dropped = new core.EventEmitter(); + this.active = false; + this.dragCounter = 0; + } + /** + * @param {?} evt + * @return {?} + */ + DndDirective.prototype.onDragEnter = /** + * @param {?} evt + * @return {?} + */ + function (evt) { + evt.preventDefault(); + evt.stopPropagation(); + this.dragCounter++; + this.active = true; + this.opening.emit(true); + }; + /** + * @param {?} evt + * @return {?} + */ + DndDirective.prototype.onDragOver = /** + * @param {?} evt + * @return {?} + */ + function (evt) { + evt.preventDefault(); + evt.stopPropagation(); + return false; + }; + /** + * @param {?} evt + * @return {?} + */ + DndDirective.prototype.onDragLeave = /** + * @param {?} evt + * @return {?} + */ + function (evt) { + evt.preventDefault(); + evt.stopPropagation(); + this.dragCounter--; + if (this.dragCounter === 0) { + this.active = false; + this.closeArea(); + } + }; + /** + * @param {?} evt + * @return {?} + */ + DndDirective.prototype.onDrop = /** + * @param {?} evt + * @return {?} + */ + function (evt) { + evt.preventDefault(); + evt.stopPropagation(); + /** @type {?} */ + var files = evt.dataTransfer.files; + if (files.length > 0) { + this.active = false; + this.dropped.emit(true); + this._uploadFilesService.changeFilesList(files); + this.closeArea(); + } + }; + /** + * @param {?} event + * @return {?} + */ + DndDirective.prototype.onClick = /** + * @param {?} event + * @return {?} + */ + function (event) { + this.closeArea(); + }; + /** + * @private + * @return {?} + */ + DndDirective.prototype.closeArea = /** + * @private + * @return {?} + */ + function () { + this.closing.emit(true); + this.opening.emit(false); + }; + DndDirective.decorators = [ + { type: core.Directive, args: [{ + selector: '[gdDnd]' + },] } + ]; + /** @nocollapse */ + DndDirective.ctorParameters = function () { return [ + { type: UploadFilesService } + ]; }; + DndDirective.propDecorators = { + closing: [{ type: core.Output }], + opening: [{ type: core.Output }], + dropped: [{ type: core.Output }], + active: [{ type: core.HostBinding, args: ['class.active',] }], + onDragEnter: [{ type: core.HostListener, args: ['dragenter', ['$event'],] }], + onDragOver: [{ type: core.HostListener, args: ['dragover', ['$event'],] }], + onDragLeave: [{ type: core.HostListener, args: ['dragleave', ['$event'],] }], + onDrop: [{ type: core.HostListener, args: ['drop', ['$event'],] }], + onClick: [{ type: core.HostListener, args: ['click', ['$event'],] }] + }; + return DndDirective; + }()); + if (false) { + /** @type {?} */ + DndDirective.prototype.closing; + /** @type {?} */ + DndDirective.prototype.opening; + /** @type {?} */ + DndDirective.prototype.dropped; + /** @type {?} */ + DndDirective.prototype.active; + /** + * @type {?} + * @private + */ + DndDirective.prototype.dragCounter; + /** + * @type {?} + * @protected + */ + DndDirective.prototype._uploadFilesService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** @type {?} */ - var $$2 = jquery; - var ViewportService = /** @class */ (function () { - function ViewportService() { - } - /** - * @param {?} el - * @param {?=} zoom - * @param {?=} leftOffset - * @param {?=} deltaX - * @return {?} - */ - ViewportService.prototype.checkInViewport = /** - * @param {?} el - * @param {?=} zoom - * @param {?=} leftOffset - * @param {?=} deltaX - * @return {?} - */ - function (el, zoom, leftOffset, deltaX) { - if (zoom === void 0) { zoom = 100; } - if (leftOffset === void 0) { leftOffset = 0; } - if (deltaX === void 0) { deltaX = 0.5; } - if (!el) { - return false; - } - /** @type {?} */ - var x = deltaX; - /** @type {?} */ - var y = 0.5; - /** @type {?} */ - var win = $$2(window); - /** @type {?} */ - var viewport = { - top: win.scrollTop(), - left: win.scrollLeft() + leftOffset, - right: win.scrollLeft() + win.width() - 10, - bottom: win.scrollTop() + win.height() - }; - if (isNaN(zoom)) { - zoom = 100; - } - /** @type {?} */ - var zoomN = zoom / 100; - /** @type {?} */ - var height = $$2(el).outerHeight() * (zoomN); - /** @type {?} */ - var width = $$2(el).outerWidth() * (zoomN); - if (!width || !height) { - return false; - } - /** @type {?} */ - var bounds = $$2(el).offset(); - /** @type {?} */ - var right = (bounds.left * (zoomN)) + width; - /** @type {?} */ - var bottom = (bounds.top * (zoomN)) + height; - /** @type {?} */ - var visible = (!(viewport.right < (bounds.left * (zoomN)) || viewport.left > right || viewport.bottom < (bounds.top * (zoomN)) || viewport.top > bottom)); - if (!visible) { - return false; - } - /** @type {?} */ - var deltas = { - top: parseFloat(Math.min(1, (bottom - viewport.top) / height).toFixed(2)), - bottom: parseFloat(Math.min(1, (viewport.bottom - (bounds.top * (zoomN))) / height).toFixed(2)), - left: parseFloat(Math.min(1, (right - viewport.left) / width).toFixed(2)), - right: parseFloat(Math.min(1, (viewport.right - (bounds.left * (zoomN))) / width).toFixed(2)) - }; - return (deltas.left * deltas.right) >= x && (deltas.top * deltas.bottom) >= y; - }; - ViewportService.decorators = [ - { type: core.Injectable, args: [{ - providedIn: 'root' - },] } - ]; - /** @nocollapse */ - ViewportService.ctorParameters = function () { return []; }; - /** @nocollapse */ ViewportService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function ViewportService_Factory() { return new ViewportService(); }, token: ViewportService, providedIn: "root" }); - return ViewportService; - }()); - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** @type {?} */ - var $$3 = jquery; - var ScrollableDirective = /** @class */ (function () { - function ScrollableDirective(_elementRef, _navigateService, _pagePreloadService, _zoomService, _windowService, _viewportService) { - var _this = this; - this._elementRef = _elementRef; - this._navigateService = _navigateService; - this._pagePreloadService = _pagePreloadService; - this._zoomService = _zoomService; - this._windowService = _windowService; - this._viewportService = _viewportService; - this.zoom = 100; - this.loadedPagesSet = new Set(); - this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom; - _zoomService.zoomChange.subscribe((/** - * @param {?} val - * @return {?} - */ - function (val) { - _this.zoom = val ? val : _this.zoom; - _this.refresh(); - })); - } - /** - * @return {?} - */ - ScrollableDirective.prototype.ngAfterViewInit = /** - * @return {?} - */ - function () { - var _this = this; - this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom; - this._navigateService.navigate.subscribe(((/** - * @param {?} value - * @return {?} - */ - function (value) { - _this.currentPage = value; - _this.scrollToPage(value); - }))); - this.refresh(); - }; - /** - * @return {?} - */ - ScrollableDirective.prototype.scrolling = /** - * @return {?} - */ - function () { - this.refresh(); - }; - /** - * @return {?} - */ - ScrollableDirective.prototype.resizing = /** - * @return {?} - */ - function () { - this.refresh(); - }; - /** - * @param {?} pageNumber - * @return {?} - */ - ScrollableDirective.prototype.scrollToPage = /** - * @param {?} pageNumber - * @return {?} - */ - function (pageNumber) { - /** @type {?} */ - var el = this._elementRef.nativeElement; - /** @type {?} */ - var page = this.getPage(pageNumber); - /** @type {?} */ - var prev = pageNumber > 0 ? this.getPage(pageNumber - 1) : null; - /** @type {?} */ - var isSameTop = (prev && $$3(prev).offset().top === $$3(page).offset().top); - if (this._viewportService.checkInViewport(page, this.zoom) && isSameTop) { - return; - } - /** @type {?} */ - var pagesHeight = this.calculateOffset(pageNumber); - /** @type {?} */ - var options = { - left: 0, - top: pagesHeight - }; - if (el) { - // using polyfill - el.scroll(options); - } - }; - /** - * @private - * @return {?} - */ - ScrollableDirective.prototype.getChildren = /** - * @private - * @return {?} - */ - function () { - /** @type {?} */ - var el = this._elementRef ? this._elementRef.nativeElement : null; - if (el) { - // here and in the similar line below we getting the document pages - return el.children.item(0).children.item(0).children; - } - }; - /** - * @private - * @param {?} pageNumber - * @return {?} - */ - ScrollableDirective.prototype.getPage = /** - * @private - * @param {?} pageNumber - * @return {?} - */ - function (pageNumber) { - /** @type {?} */ - var el = this._elementRef ? this._elementRef.nativeElement : null; - if (el) { - return el.children.item(0).children.item(0).children.item(pageNumber - 1); - } - }; - /** - * @private - * @param {?} pageNumber - * @return {?} - */ - ScrollableDirective.prototype.calculateOffset = /** - * @private - * @param {?} pageNumber - * @return {?} - */ - function (pageNumber) { - /** @type {?} */ - var count = this._windowService.isFirefox() ? 1 : this.countPagesOnWidth(); - /** @type {?} */ - var margin = this._windowService.isDesktop() ? 40 : 10; - /** @type {?} */ - var pagesHeight = 0; - for (var i = 1; i < pageNumber / count; i++) { - /** @type {?} */ - var item = this.getPage(i); - /** @type {?} */ - var clientHeight = item ? item.clientHeight : 0; - pagesHeight += clientHeight > 0 ? clientHeight * this.getZoom() + margin : 0; - } - return pagesHeight; - }; - /** - * @private - * @return {?} - */ - ScrollableDirective.prototype.countPagesOnWidth = /** - * @private - * @return {?} - */ - function () { - /** @type {?} */ - var pageEl = this.getPage(1); - /** @type {?} */ - var offset = 150; - /** @type {?} */ - var count = Math.floor((this.getWidth() - offset) / (pageEl.getBoundingClientRect().width * this.getZoom())); - return count === 0 ? 1 : count; - }; - /** - * @return {?} - */ - ScrollableDirective.prototype.refresh = /** - * @return {?} - */ - function () { - /** @type {?} */ - var page; - /** @type {?} */ - var currentPageSet = false; - /** @type {?} */ - var pageElem = this.getPage(this.currentPage); - /** @type {?} */ - var currentPageRect = this.currentPage && pageElem ? pageElem.getBoundingClientRect() : null; - for (page = 1; page < this.getChildren().length + 1; page++) { - /** @type {?} */ - var element = this.getPage(page); - if (this._viewportService.checkInViewport(element, this.zoom)) { - if (!currentPageSet) { - if (!this.currentPage || !pageElem || (this.currentPage && currentPageRect && element.getBoundingClientRect().top !== currentPageRect.top)) { - this.currentPage = page; - if (this._navigateService.currentPage === 0) { - this._navigateService.currentPage = page; - } - } - currentPageSet = true; - } - if (!this.loadedPagesSet.has(page)) { - this._pagePreloadService.changeLastPageInView(page); - this.loadedPagesSet.add(page); - } - } - } - }; - /** - * @param {?} changes - * @return {?} - */ - ScrollableDirective.prototype.ngOnChanges = /** - * @param {?} changes - * @return {?} - */ - function (changes) { - this.refresh(); - }; - /** - * @return {?} - */ - ScrollableDirective.prototype.ngOnInit = /** - * @return {?} - */ - function () { - this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom; - }; - /** - * @private - * @return {?} - */ - ScrollableDirective.prototype.getWidth = /** - * @private - * @return {?} - */ - function () { - return this._elementRef ? this._elementRef.nativeElement.offsetWidth : window.innerWidth; - }; - /** - * @private - * @return {?} - */ - ScrollableDirective.prototype.getZoom = /** - * @private - * @return {?} - */ - function () { - return this.zoom / 100; - }; - ScrollableDirective.decorators = [ - { type: core.Directive, args: [{ - selector: '[gdScrollable]' - },] } - ]; - /** @nocollapse */ - ScrollableDirective.ctorParameters = function () { return [ - { type: core.ElementRef }, - { type: NavigateService }, - { type: PagePreloadService }, - { type: ZoomService }, - { type: WindowService }, - { type: ViewportService } - ]; }; - ScrollableDirective.propDecorators = { - scrolling: [{ type: core.HostListener, args: ['scroll',] }], - resizing: [{ type: core.HostListener, args: ['window:resize',] }] - }; - return ScrollableDirective; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** @type {?} */ + var $$2 = jquery; + var ViewportService = /** @class */ (function () { + function ViewportService() { + } + /** + * @param {?} el + * @param {?=} zoom + * @param {?=} leftOffset + * @param {?=} deltaX + * @return {?} + */ + ViewportService.prototype.checkInViewport = /** + * @param {?} el + * @param {?=} zoom + * @param {?=} leftOffset + * @param {?=} deltaX + * @return {?} + */ + function (el, zoom, leftOffset, deltaX) { + if (zoom === void 0) { zoom = 100; } + if (leftOffset === void 0) { leftOffset = 0; } + if (deltaX === void 0) { deltaX = 0.5; } + if (!el) { + return false; + } + /** @type {?} */ + var x = deltaX; + /** @type {?} */ + var y = 0.5; + /** @type {?} */ + var win = $$2(window); + /** @type {?} */ + var viewport = { + top: win.scrollTop(), + left: win.scrollLeft() + leftOffset, + right: win.scrollLeft() + win.width() - 10, + bottom: win.scrollTop() + win.height() + }; + if (isNaN(zoom)) { + zoom = 100; + } + /** @type {?} */ + var zoomN = zoom / 100; + /** @type {?} */ + var height = $$2(el).outerHeight() * (zoomN); + /** @type {?} */ + var width = $$2(el).outerWidth() * (zoomN); + if (!width || !height) { + return false; + } + /** @type {?} */ + var bounds = $$2(el).offset(); + /** @type {?} */ + var right = (bounds.left * (zoomN)) + width; + /** @type {?} */ + var bottom = (bounds.top * (zoomN)) + height; + /** @type {?} */ + var visible = (!(viewport.right < (bounds.left * (zoomN)) || viewport.left > right || viewport.bottom < (bounds.top * (zoomN)) || viewport.top > bottom)); + if (!visible) { + return false; + } + /** @type {?} */ + var deltas = { + top: parseFloat(Math.min(1, (bottom - viewport.top) / height).toFixed(2)), + bottom: parseFloat(Math.min(1, (viewport.bottom - (bounds.top * (zoomN))) / height).toFixed(2)), + left: parseFloat(Math.min(1, (right - viewport.left) / width).toFixed(2)), + right: parseFloat(Math.min(1, (viewport.right - (bounds.left * (zoomN))) / width).toFixed(2)) + }; + return (deltas.left * deltas.right) >= x && (deltas.top * deltas.bottom) >= y; + }; + ViewportService.decorators = [ + { type: core.Injectable, args: [{ + providedIn: 'root' + },] } + ]; + /** @nocollapse */ + ViewportService.ctorParameters = function () { return []; }; + /** @nocollapse */ ViewportService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function ViewportService_Factory() { return new ViewportService(); }, token: ViewportService, providedIn: "root" }); + return ViewportService; }()); - if (false) { - /** - * @type {?} - * @private - */ - ScrollableDirective.prototype.currentPage; - /** - * @type {?} - * @private - */ - ScrollableDirective.prototype.zoom; - /** - * @type {?} - * @private - */ - ScrollableDirective.prototype.loadedPagesSet; - /** - * @type {?} - * @private - */ - ScrollableDirective.prototype._elementRef; - /** - * @type {?} - * @private - */ - ScrollableDirective.prototype._navigateService; - /** - * @type {?} - * @private - */ - ScrollableDirective.prototype._pagePreloadService; - /** - * @type {?} - * @private - */ - ScrollableDirective.prototype._zoomService; - /** - * @type {?} - * @private - */ - ScrollableDirective.prototype._windowService; - /** - * @type {?} - * @private - */ - ScrollableDirective.prototype._viewportService; - } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** @type {?} */ - var $$4 = jquery; - var MouseWheelDirective = /** @class */ (function () { - function MouseWheelDirective() { - this.mouseWheelUp = new core.EventEmitter(); - this.mouseWheelDown = new core.EventEmitter(); - } - /** - * @param {?} event - * @return {?} - */ - MouseWheelDirective.prototype.onMouseWheelChrome = /** - * @param {?} event - * @return {?} - */ - function (event) { - this.mouseWheelFunc(event); - }; - /** - * @param {?} event - * @return {?} - */ - MouseWheelDirective.prototype.onMouseWheelFirefox = /** - * @param {?} event - * @return {?} - */ - function (event) { - this.mouseWheelFunc(event); - }; - /** - * @param {?} event - * @return {?} - */ - MouseWheelDirective.prototype.onMouseWheelIE = /** - * @param {?} event - * @return {?} - */ - function (event) { - this.mouseWheelFunc(event); - }; - /** - * @param {?} event - * @return {?} - */ - MouseWheelDirective.prototype.mouseWheelFunc = /** - * @param {?} event - * @return {?} - */ - function (event) { - event = window.event; - /** @type {?} */ - var delta = Math.max(-1, Math.min(1, (event.wheelDelta || -event.detail))); - if (delta > 0) { - this.mouseWheelUp.emit(event); - } - else if (delta < 0) { - this.mouseWheelDown.emit(event); - } - }; - MouseWheelDirective.decorators = [ - { type: core.Directive, args: [{ - selector: '[gdMouseWheel]' - },] } - ]; - MouseWheelDirective.propDecorators = { - mouseWheelUp: [{ type: core.Output }], - mouseWheelDown: [{ type: core.Output }], - onMouseWheelChrome: [{ type: core.HostListener, args: ['mousewheel', ['$event'],] }], - onMouseWheelFirefox: [{ type: core.HostListener, args: ['DOMMouseScroll', ['$event'],] }], - onMouseWheelIE: [{ type: core.HostListener, args: ['onmousewheel', ['$event'],] }] - }; - return MouseWheelDirective; - }()); - if (false) { - /** @type {?} */ - MouseWheelDirective.prototype.mouseWheelUp; - /** @type {?} */ - MouseWheelDirective.prototype.mouseWheelDown; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** @type {?} */ + var $$3 = jquery; + var ScrollableDirective = /** @class */ (function () { + function ScrollableDirective(_elementRef, _navigateService, _pagePreloadService, _zoomService, _windowService, _viewportService) { + var _this = this; + this._elementRef = _elementRef; + this._navigateService = _navigateService; + this._pagePreloadService = _pagePreloadService; + this._zoomService = _zoomService; + this._windowService = _windowService; + this._viewportService = _viewportService; + this.zoom = 100; + this.loadedPagesSet = new Set(); + this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom; + _zoomService.zoomChange.subscribe((/** + * @param {?} val + * @return {?} + */ + function (val) { + _this.zoom = val ? val : _this.zoom; + _this.refresh(); + })); + } + /** + * @return {?} + */ + ScrollableDirective.prototype.ngAfterViewInit = /** + * @return {?} + */ + function () { + var _this = this; + this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom; + this._navigateService.navigate.subscribe(((/** + * @param {?} value + * @return {?} + */ + function (value) { + _this.currentPage = value; + _this.scrollToPage(value); + }))); + this.refresh(); + }; + /** + * @return {?} + */ + ScrollableDirective.prototype.scrolling = /** + * @return {?} + */ + function () { + this.refresh(); + }; + /** + * @return {?} + */ + ScrollableDirective.prototype.resizing = /** + * @return {?} + */ + function () { + this.refresh(); + }; + /** + * @param {?} pageNumber + * @return {?} + */ + ScrollableDirective.prototype.scrollToPage = /** + * @param {?} pageNumber + * @return {?} + */ + function (pageNumber) { + /** @type {?} */ + var el = this._elementRef.nativeElement; + /** @type {?} */ + var page = this.getPage(pageNumber); + /** @type {?} */ + var prev = pageNumber > 0 ? this.getPage(pageNumber - 1) : null; + /** @type {?} */ + var isSameTop = (prev && $$3(prev).offset().top === $$3(page).offset().top); + if (this._viewportService.checkInViewport(page, this.zoom) && isSameTop) { + return; + } + /** @type {?} */ + var pagesHeight = this.calculateOffset(pageNumber); + /** @type {?} */ + var options = { + left: 0, + top: pagesHeight + }; + if (el) { + // using polyfill + el.scroll(options); + } + }; + /** + * @private + * @return {?} + */ + ScrollableDirective.prototype.getChildren = /** + * @private + * @return {?} + */ + function () { + /** @type {?} */ + var el = this._elementRef ? this._elementRef.nativeElement : null; + if (el) { + // here and in the similar line below we getting the document pages + return el.children.item(0).children.item(0).children; + } + }; + /** + * @private + * @param {?} pageNumber + * @return {?} + */ + ScrollableDirective.prototype.getPage = /** + * @private + * @param {?} pageNumber + * @return {?} + */ + function (pageNumber) { + /** @type {?} */ + var el = this._elementRef ? this._elementRef.nativeElement : null; + if (el) { + return el.children.item(0).children.item(0).children.item(pageNumber - 1); + } + }; + /** + * @private + * @param {?} pageNumber + * @return {?} + */ + ScrollableDirective.prototype.calculateOffset = /** + * @private + * @param {?} pageNumber + * @return {?} + */ + function (pageNumber) { + /** @type {?} */ + var count = this._windowService.isFirefox() ? 1 : this.countPagesOnWidth(); + /** @type {?} */ + var margin = this._windowService.isDesktop() ? 40 : 10; + /** @type {?} */ + var pagesHeight = 0; + for (var i = 1; i < pageNumber / count; i++) { + /** @type {?} */ + var item = this.getPage(i); + /** @type {?} */ + var clientHeight = item ? item.clientHeight : 0; + pagesHeight += clientHeight > 0 ? clientHeight * this.getZoom() + margin : 0; + } + return pagesHeight; + }; + /** + * @private + * @return {?} + */ + ScrollableDirective.prototype.countPagesOnWidth = /** + * @private + * @return {?} + */ + function () { + /** @type {?} */ + var pageEl = this.getPage(1); + /** @type {?} */ + var offset = 150; + /** @type {?} */ + var count = Math.floor((this.getWidth() - offset) / (pageEl.getBoundingClientRect().width * this.getZoom())); + return count === 0 ? 1 : count; + }; + /** + * @return {?} + */ + ScrollableDirective.prototype.refresh = /** + * @return {?} + */ + function () { + /** @type {?} */ + var page; + /** @type {?} */ + var currentPageSet = false; + /** @type {?} */ + var pageElem = this.getPage(this.currentPage); + /** @type {?} */ + var currentPageRect = this.currentPage && pageElem ? pageElem.getBoundingClientRect() : null; + for (page = 1; page < this.getChildren().length + 1; page++) { + /** @type {?} */ + var element = this.getPage(page); + if (this._viewportService.checkInViewport(element, this.zoom)) { + if (!currentPageSet) { + if (!this.currentPage || !pageElem || (this.currentPage && currentPageRect && element.getBoundingClientRect().top !== currentPageRect.top)) { + this.currentPage = page; + if (this._navigateService.currentPage === 0) { + this._navigateService.currentPage = page; + } + } + currentPageSet = true; + } + if (!this.loadedPagesSet.has(page)) { + this._pagePreloadService.changeLastPageInView(page); + this.loadedPagesSet.add(page); + } + } + } + }; + /** + * @param {?} changes + * @return {?} + */ + ScrollableDirective.prototype.ngOnChanges = /** + * @param {?} changes + * @return {?} + */ + function (changes) { + this.refresh(); + }; + /** + * @return {?} + */ + ScrollableDirective.prototype.ngOnInit = /** + * @return {?} + */ + function () { + this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom; + }; + /** + * @private + * @return {?} + */ + ScrollableDirective.prototype.getWidth = /** + * @private + * @return {?} + */ + function () { + return this._elementRef ? this._elementRef.nativeElement.offsetWidth : window.innerWidth; + }; + /** + * @private + * @return {?} + */ + ScrollableDirective.prototype.getZoom = /** + * @private + * @return {?} + */ + function () { + return this.zoom / 100; + }; + ScrollableDirective.decorators = [ + { type: core.Directive, args: [{ + selector: '[gdScrollable]' + },] } + ]; + /** @nocollapse */ + ScrollableDirective.ctorParameters = function () { return [ + { type: core.ElementRef }, + { type: NavigateService }, + { type: PagePreloadService }, + { type: ZoomService }, + { type: WindowService }, + { type: ViewportService } + ]; }; + ScrollableDirective.propDecorators = { + scrolling: [{ type: core.HostListener, args: ['scroll',] }], + resizing: [{ type: core.HostListener, args: ['window:resize',] }] + }; + return ScrollableDirective; + }()); + if (false) { + /** + * @type {?} + * @private + */ + ScrollableDirective.prototype.currentPage; + /** + * @type {?} + * @private + */ + ScrollableDirective.prototype.zoom; + /** + * @type {?} + * @private + */ + ScrollableDirective.prototype.loadedPagesSet; + /** + * @type {?} + * @private + */ + ScrollableDirective.prototype._elementRef; + /** + * @type {?} + * @private + */ + ScrollableDirective.prototype._navigateService; + /** + * @type {?} + * @private + */ + ScrollableDirective.prototype._pagePreloadService; + /** + * @type {?} + * @private + */ + ScrollableDirective.prototype._zoomService; + /** + * @type {?} + * @private + */ + ScrollableDirective.prototype._windowService; + /** + * @type {?} + * @private + */ + ScrollableDirective.prototype._viewportService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var ZoomDirective = /** @class */ (function () { - function ZoomDirective(_zoomService, _windowService, el) { - this._zoomService = _zoomService; - this._windowService = _windowService; - this.zoomActive = true; - this.el = el; - } - /** - * @return {?} - */ - ZoomDirective.prototype.ngOnDestroy = /** - * @return {?} - */ - function () { - }; - /** - * @return {?} - */ - ZoomDirective.prototype.ngOnChanges = /** - * @return {?} - */ - function () { - this.setStyles(this._zoomService.zoom); - this.resizePages(this._zoomService.zoom); - }; - /** - * @return {?} - */ - ZoomDirective.prototype.ngOnInit = /** - * @return {?} - */ - function () { - var _this = this; - if (!this.zoomActive) { - return; - } - this.setStyles(this._zoomService.zoom); - this._zoomService.zoomChange.subscribe((/** - * @param {?} zoom - * @return {?} - */ - function (zoom) { - _this.setStyles(zoom); - _this.resizePages(zoom); - })); - }; - /** - * @private - * @param {?} zoom - * @return {?} - */ - ZoomDirective.prototype.setStyles = /** - * @private - * @param {?} zoom - * @return {?} - */ - function (zoom) { - if (!this.zoomActive) { - return; - } - /** @type {?} */ - var zoomInt = zoom === 100 ? 1 : zoom / 100; - if (this._windowService.isEdge()) { - this.zoomInt = zoomInt; - } - else { - this.zoomInt = null; - } - if (!this._windowService.isEdge()) { - this.transform = 'scale(' + zoomInt + ')'; - this.transformOrigin = 'top left'; - } - else { - this.transform = ""; - this.transformOrigin = ""; - } - /** @type {?} */ - var maxWidth = 0; - this.file.pages.forEach((/** - * @param {?} page - * @return {?} - */ - function (page) { - { - if (page.width > maxWidth) { - maxWidth = page.width; - } - } - })); - // Images and Excel-related files receiving dimensions in px from server - this.minWidth = maxWidth + FileUtil.find(this.file.guid, false).unit; - }; - /** - * @private - * @param {?} elm - * @return {?} - */ - ZoomDirective.prototype.getScrollWidth = /** - * @private - * @param {?} elm - * @return {?} - */ - function (elm) { - return elm.offsetWidth - elm.clientWidth; - }; - /** - * @private - * @param {?} elm - * @return {?} - */ - ZoomDirective.prototype.getScrollHeight = /** - * @private - * @param {?} elm - * @return {?} - */ - function (elm) { - return elm.offsetHeight - elm.clientHeight; - }; - /** - * @private - * @param {?} zoom - * @return {?} - */ - ZoomDirective.prototype.resizePages = /** - * @private - * @param {?} zoom - * @return {?} - */ - function (zoom) { - /** @type {?} */ - var zoomInt = zoom === 100 ? 1 : zoom / 100; - /** @type {?} */ - var viewPortWidth = this.el.nativeElement.parentElement.offsetWidth; - /** @type {?} */ - var viewPortHeight = this.el.nativeElement.parentElement.offsetHeight; - /** @type {?} */ - var scrollWidth = this.getScrollWidth(this.el.nativeElement.parentElement); - /** @type {?} */ - var scrollHeight = this.getScrollHeight(this.el.nativeElement.parentElement); - this.width = (viewPortWidth / zoomInt - scrollWidth / zoomInt) + 'px'; - this.height = (viewPortHeight / zoomInt - scrollHeight / zoomInt) + 'px'; - }; - /** - * @return {?} - */ - ZoomDirective.prototype.ngAfterViewInit = /** - * @return {?} - */ - function () { - this.setStyles(this._zoomService.zoom); - }; - ZoomDirective.decorators = [ - { type: core.Directive, args: [{ - selector: '[gdZoom]' - },] } - ]; - /** @nocollapse */ - ZoomDirective.ctorParameters = function () { return [ - { type: ZoomService }, - { type: WindowService }, - { type: core.ElementRef } - ]; }; - ZoomDirective.propDecorators = { - zoomActive: [{ type: core.Input }], - file: [{ type: core.Input }], - zoomInt: [{ type: core.HostBinding, args: ['style.zoom',] }], - transform: [{ type: core.HostBinding, args: ['style.transform',] }], - transformOrigin: [{ type: core.HostBinding, args: ['style.transform-origin',] }], - width: [{ type: core.HostBinding, args: ['style.width',] }], - height: [{ type: core.HostBinding, args: ['style.height',] }], - minWidth: [{ type: core.HostBinding, args: ['style.min-width',] }] - }; - return ZoomDirective; - }()); - if (false) { - /** @type {?} */ - ZoomDirective.prototype.zoomActive; - /** @type {?} */ - ZoomDirective.prototype.file; - /** @type {?} */ - ZoomDirective.prototype.zoomInt; - /** @type {?} */ - ZoomDirective.prototype.transform; - /** @type {?} */ - ZoomDirective.prototype.transformOrigin; - /** @type {?} */ - ZoomDirective.prototype.width; - /** @type {?} */ - ZoomDirective.prototype.height; - /** @type {?} */ - ZoomDirective.prototype.minWidth; - /** @type {?} */ - ZoomDirective.prototype.el; - /** - * @type {?} - * @private - */ - ZoomDirective.prototype._zoomService; - /** - * @type {?} - * @private - */ - ZoomDirective.prototype._windowService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** @type {?} */ + var $$4 = jquery; + var MouseWheelDirective = /** @class */ (function () { + function MouseWheelDirective() { + this.mouseWheelUp = new core.EventEmitter(); + this.mouseWheelDown = new core.EventEmitter(); + } + /** + * @param {?} event + * @return {?} + */ + MouseWheelDirective.prototype.onMouseWheelChrome = /** + * @param {?} event + * @return {?} + */ + function (event) { + this.mouseWheelFunc(event); + }; + /** + * @param {?} event + * @return {?} + */ + MouseWheelDirective.prototype.onMouseWheelFirefox = /** + * @param {?} event + * @return {?} + */ + function (event) { + this.mouseWheelFunc(event); + }; + /** + * @param {?} event + * @return {?} + */ + MouseWheelDirective.prototype.onMouseWheelIE = /** + * @param {?} event + * @return {?} + */ + function (event) { + this.mouseWheelFunc(event); + }; + /** + * @param {?} event + * @return {?} + */ + MouseWheelDirective.prototype.mouseWheelFunc = /** + * @param {?} event + * @return {?} + */ + function (event) { + event = window.event; + /** @type {?} */ + var delta = Math.max(-1, Math.min(1, (event.wheelDelta || -event.detail))); + if (delta > 0) { + this.mouseWheelUp.emit(event); + } + else if (delta < 0) { + this.mouseWheelDown.emit(event); + } + }; + MouseWheelDirective.decorators = [ + { type: core.Directive, args: [{ + selector: '[gdMouseWheel]' + },] } + ]; + MouseWheelDirective.propDecorators = { + mouseWheelUp: [{ type: core.Output }], + mouseWheelDown: [{ type: core.Output }], + onMouseWheelChrome: [{ type: core.HostListener, args: ['mousewheel', ['$event'],] }], + onMouseWheelFirefox: [{ type: core.HostListener, args: ['DOMMouseScroll', ['$event'],] }], + onMouseWheelIE: [{ type: core.HostListener, args: ['onmousewheel', ['$event'],] }] + }; + return MouseWheelDirective; + }()); + if (false) { + /** @type {?} */ + MouseWheelDirective.prototype.mouseWheelUp; + /** @type {?} */ + MouseWheelDirective.prototype.mouseWheelDown; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var OnCloseService = /** @class */ (function () { - function OnCloseService() { - this._observer = new rxjs.Subject(); - this._onClose = this._observer.asObservable(); - } - Object.defineProperty(OnCloseService.prototype, "onClose", { - get: /** - * @return {?} - */ - function () { - return this._onClose; - }, - enumerable: true, - configurable: true - }); - /** - * @param {?} close - * @return {?} - */ - OnCloseService.prototype.close = /** - * @param {?} close - * @return {?} - */ - function (close) { - this._observer.next(close); - }; - OnCloseService.decorators = [ - { type: core.Injectable, args: [{ - providedIn: 'root' - },] } - ]; - /** @nocollapse */ - OnCloseService.ctorParameters = function () { return []; }; - /** @nocollapse */ OnCloseService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function OnCloseService_Factory() { return new OnCloseService(); }, token: OnCloseService, providedIn: "root" }); - return OnCloseService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - OnCloseService.prototype._observer; - /** - * @type {?} - * @private - */ - OnCloseService.prototype._onClose; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var ZoomDirective = /** @class */ (function () { + function ZoomDirective(_zoomService, _windowService, el) { + this._zoomService = _zoomService; + this._windowService = _windowService; + this.zoomActive = true; + this.el = el; + } + /** + * @return {?} + */ + ZoomDirective.prototype.ngOnDestroy = /** + * @return {?} + */ + function () { + }; + /** + * @return {?} + */ + ZoomDirective.prototype.ngOnChanges = /** + * @return {?} + */ + function () { + this.setStyles(this._zoomService.zoom); + this.resizePages(this._zoomService.zoom); + }; + /** + * @return {?} + */ + ZoomDirective.prototype.ngOnInit = /** + * @return {?} + */ + function () { + var _this = this; + if (!this.zoomActive) { + return; + } + this.setStyles(this._zoomService.zoom); + this._zoomService.zoomChange.subscribe((/** + * @param {?} zoom + * @return {?} + */ + function (zoom) { + _this.setStyles(zoom); + _this.resizePages(zoom); + })); + }; + /** + * @private + * @param {?} zoom + * @return {?} + */ + ZoomDirective.prototype.setStyles = /** + * @private + * @param {?} zoom + * @return {?} + */ + function (zoom) { + if (!this.zoomActive) { + return; + } + /** @type {?} */ + var zoomInt = zoom === 100 ? 1 : zoom / 100; + if (this._windowService.isEdge()) { + this.zoomInt = zoomInt; + } + else { + this.zoomInt = null; + } + if (!this._windowService.isEdge()) { + this.transform = 'scale(' + zoomInt + ')'; + this.transformOrigin = 'top left'; + } + else { + this.transform = ""; + this.transformOrigin = ""; + } + /** @type {?} */ + var maxWidth = 0; + this.file.pages.forEach((/** + * @param {?} page + * @return {?} + */ + function (page) { + { + if (page.width > maxWidth) { + maxWidth = page.width; + } + } + })); + // Images and Excel-related files receiving dimensions in px from server + this.minWidth = maxWidth + FileUtil.find(this.file.guid, false).unit; + }; + /** + * @private + * @param {?} elm + * @return {?} + */ + ZoomDirective.prototype.getScrollWidth = /** + * @private + * @param {?} elm + * @return {?} + */ + function (elm) { + return elm.offsetWidth - elm.clientWidth; + }; + /** + * @private + * @param {?} elm + * @return {?} + */ + ZoomDirective.prototype.getScrollHeight = /** + * @private + * @param {?} elm + * @return {?} + */ + function (elm) { + return elm.offsetHeight - elm.clientHeight; + }; + /** + * @private + * @param {?} zoom + * @return {?} + */ + ZoomDirective.prototype.resizePages = /** + * @private + * @param {?} zoom + * @return {?} + */ + function (zoom) { + /** @type {?} */ + var zoomInt = zoom === 100 ? 1 : zoom / 100; + /** @type {?} */ + var viewPortWidth = this.el.nativeElement.parentElement.offsetWidth; + /** @type {?} */ + var viewPortHeight = this.el.nativeElement.parentElement.offsetHeight; + /** @type {?} */ + var scrollWidth = this.getScrollWidth(this.el.nativeElement.parentElement); + /** @type {?} */ + var scrollHeight = this.getScrollHeight(this.el.nativeElement.parentElement); + this.width = (viewPortWidth / zoomInt - scrollWidth / zoomInt) + 'px'; + this.height = (viewPortHeight / zoomInt - scrollHeight / zoomInt) + 'px'; + }; + /** + * @return {?} + */ + ZoomDirective.prototype.ngAfterViewInit = /** + * @return {?} + */ + function () { + this.setStyles(this._zoomService.zoom); + }; + ZoomDirective.decorators = [ + { type: core.Directive, args: [{ + selector: '[gdZoom]' + },] } + ]; + /** @nocollapse */ + ZoomDirective.ctorParameters = function () { return [ + { type: ZoomService }, + { type: WindowService }, + { type: core.ElementRef } + ]; }; + ZoomDirective.propDecorators = { + zoomActive: [{ type: core.Input }], + file: [{ type: core.Input }], + zoomInt: [{ type: core.HostBinding, args: ['style.zoom',] }], + transform: [{ type: core.HostBinding, args: ['style.transform',] }], + transformOrigin: [{ type: core.HostBinding, args: ['style.transform-origin',] }], + width: [{ type: core.HostBinding, args: ['style.width',] }], + height: [{ type: core.HostBinding, args: ['style.height',] }], + minWidth: [{ type: core.HostBinding, args: ['style.min-width',] }] + }; + return ZoomDirective; + }()); + if (false) { + /** @type {?} */ + ZoomDirective.prototype.zoomActive; + /** @type {?} */ + ZoomDirective.prototype.file; + /** @type {?} */ + ZoomDirective.prototype.zoomInt; + /** @type {?} */ + ZoomDirective.prototype.transform; + /** @type {?} */ + ZoomDirective.prototype.transformOrigin; + /** @type {?} */ + ZoomDirective.prototype.width; + /** @type {?} */ + ZoomDirective.prototype.height; + /** @type {?} */ + ZoomDirective.prototype.minWidth; + /** @type {?} */ + ZoomDirective.prototype.el; + /** + * @type {?} + * @private + */ + ZoomDirective.prototype._zoomService; + /** + * @type {?} + * @private + */ + ZoomDirective.prototype._windowService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** - * @record - */ - function Option() { } - if (false) { - /** @type {?} */ - Option.prototype.name; - /** @type {?} */ - Option.prototype.value; - /** @type {?} */ - Option.prototype.separator; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var OnCloseService = /** @class */ (function () { + function OnCloseService() { + this._observer = new rxjs.Subject(); + this._onClose = this._observer.asObservable(); + } + Object.defineProperty(OnCloseService.prototype, "onClose", { + get: /** + * @return {?} + */ + function () { + return this._onClose; + }, + enumerable: true, + configurable: true + }); + /** + * @param {?} close + * @return {?} + */ + OnCloseService.prototype.close = /** + * @param {?} close + * @return {?} + */ + function (close) { + this._observer.next(close); + }; + OnCloseService.decorators = [ + { type: core.Injectable, args: [{ + providedIn: 'root' + },] } + ]; + /** @nocollapse */ + OnCloseService.ctorParameters = function () { return []; }; + /** @nocollapse */ OnCloseService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function OnCloseService_Factory() { return new OnCloseService(); }, token: OnCloseService, providedIn: "root" }); + return OnCloseService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + OnCloseService.prototype._observer; + /** + * @type {?} + * @private + */ + OnCloseService.prototype._onClose; } - var SelectComponent = /** @class */ (function () { - function SelectComponent(_onCloseService) { - var _this = this; - this._onCloseService = _onCloseService; - this.disabled = false; - this.selected = new core.EventEmitter(); - this.isOpen = false; - _onCloseService.onClose.subscribe((/** - * @return {?} - */ - function () { - _this.close(); - })); - } - /** - * @return {?} - */ - SelectComponent.prototype.open = /** - * @return {?} - */ - function () { - if (!this.disabled) { - this.isOpen = true; - } - }; - /** - * @return {?} - */ - SelectComponent.prototype.close = /** - * @return {?} - */ - function () { - this.isOpen = false; - }; - /** - * @param {?} event - * @return {?} - */ - SelectComponent.prototype.onClickOutside = /** - * @param {?} event - * @return {?} - */ - function (event) { - this.close(); - }; - /** - * @param {?} $event - * @return {?} - */ - SelectComponent.prototype.toggle = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - // TODO: following lines were uncommented due to needness in signature app - $event.preventDefault(); - $event.stopPropagation(); - if (!this.disabled) { - this.isOpen = !this.isOpen; - } - }; - /** - * @param {?} $event - * @param {?} value - * @return {?} - */ - SelectComponent.prototype.select = /** - * @param {?} $event - * @param {?} value - * @return {?} - */ - function ($event, value) { - $event.preventDefault(); - $event.stopPropagation(); - this.selected.emit(value); - this.close(); - }; - SelectComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-select', - template: "
\n
\n {{showSelected?.name}}\n
\n \n \n
\n
\n
{{option.name}}
\n
\n
\n
\n
\n", - styles: [".select{min-width:50px;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;color:#959da5}.selected-value{font-size:14px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:clip;max-width:70px}.selected-value.inactive{cursor:not-allowed;color:#ccc}.nav-caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-right:4px solid transparent;border-left:4px solid transparent;cursor:pointer}.nav-caret.inactive{cursor:not-allowed;color:#ccc}.dropdown-menu{position:absolute;top:49px;z-index:1000;float:left;min-width:96px;list-style:none;font-size:13px;text-align:left;background-color:#fff;box-shadow:0 3px 6px rgba(0,0,0,.3);background-clip:padding-box}.dropdown-menu .option{display:block;padding:7px 0 7px 7px;clear:both;font-weight:400;line-height:1.42857143;white-space:nowrap;cursor:pointer;font-size:10px}.dropdown-menu .option:hover{background-color:#25c2d4;color:#fff!important}.dropdown-menu-separator{height:1px;overflow:hidden;background-color:#f4f4f4;padding:0!important}"] - }] } - ]; - /** @nocollapse */ - SelectComponent.ctorParameters = function () { return [ - { type: OnCloseService } - ]; }; - SelectComponent.propDecorators = { - options: [{ type: core.Input }], - disabled: [{ type: core.Input }], - showSelected: [{ type: core.Input }], - selected: [{ type: core.Output }], - isOpen: [{ type: core.Input }], - icon: [{ type: core.Input }] - }; - return SelectComponent; - }()); - if (false) { - /** @type {?} */ - SelectComponent.prototype.options; - /** @type {?} */ - SelectComponent.prototype.disabled; - /** @type {?} */ - SelectComponent.prototype.showSelected; - /** @type {?} */ - SelectComponent.prototype.selected; - /** @type {?} */ - SelectComponent.prototype.isOpen; - /** @type {?} */ - SelectComponent.prototype.icon; - /** - * @type {?} - * @protected - */ - SelectComponent.prototype._onCloseService; + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** + * @record + */ + function Option() { } + if (false) { + /** @type {?} */ + Option.prototype.name; + /** @type {?} */ + Option.prototype.value; + /** @type {?} */ + Option.prototype.separator; + } + var SelectComponent = /** @class */ (function () { + function SelectComponent(_onCloseService) { + var _this = this; + this._onCloseService = _onCloseService; + this.disabled = false; + this.selected = new core.EventEmitter(); + this.isOpen = false; + _onCloseService.onClose.subscribe((/** + * @return {?} + */ + function () { + _this.close(); + })); + } + /** + * @return {?} + */ + SelectComponent.prototype.open = /** + * @return {?} + */ + function () { + if (!this.disabled) { + this.isOpen = true; + } + }; + /** + * @return {?} + */ + SelectComponent.prototype.close = /** + * @return {?} + */ + function () { + this.isOpen = false; + }; + /** + * @param {?} event + * @return {?} + */ + SelectComponent.prototype.onClickOutside = /** + * @param {?} event + * @return {?} + */ + function (event) { + this.close(); + }; + /** + * @param {?} $event + * @return {?} + */ + SelectComponent.prototype.toggle = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + // TODO: following lines were uncommented due to needness in signature app + $event.preventDefault(); + $event.stopPropagation(); + if (!this.disabled) { + this.isOpen = !this.isOpen; + } + }; + /** + * @param {?} $event + * @param {?} value + * @return {?} + */ + SelectComponent.prototype.select = /** + * @param {?} $event + * @param {?} value + * @return {?} + */ + function ($event, value) { + $event.preventDefault(); + $event.stopPropagation(); + this.selected.emit(value); + this.close(); + }; + SelectComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-select', + template: "
\r\n
\r\n {{showSelected?.name}}\r\n
\r\n \r\n \r\n
\r\n
\r\n
{{option.name}}
\r\n
\r\n
\r\n
\r\n
\r\n", + styles: [".select{min-width:50px;display:flex;flex-direction:row;justify-content:center;align-items:center;color:#959da5}.selected-value{font-size:14px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:clip;max-width:70px}.selected-value.inactive{cursor:not-allowed;color:#ccc}.nav-caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-right:4px solid transparent;border-left:4px solid transparent;cursor:pointer}.nav-caret.inactive{cursor:not-allowed;color:#ccc}.dropdown-menu{position:absolute;top:49px;z-index:1000;float:left;min-width:96px;list-style:none;font-size:13px;text-align:left;background-color:#fff;box-shadow:0 3px 6px rgba(0,0,0,.3);background-clip:padding-box}.dropdown-menu .option{display:block;padding:7px 0 7px 7px;clear:both;font-weight:400;line-height:1.42857143;white-space:nowrap;cursor:pointer;font-size:10px}.dropdown-menu .option:hover{background-color:#25c2d4;color:#fff!important}.dropdown-menu-separator{height:1px;overflow:hidden;background-color:#f4f4f4;padding:0!important}"] + }] } + ]; + /** @nocollapse */ + SelectComponent.ctorParameters = function () { return [ + { type: OnCloseService } + ]; }; + SelectComponent.propDecorators = { + options: [{ type: core.Input }], + disabled: [{ type: core.Input }], + showSelected: [{ type: core.Input }], + selected: [{ type: core.Output }], + isOpen: [{ type: core.Input }], + icon: [{ type: core.Input }] + }; + return SelectComponent; + }()); + if (false) { + /** @type {?} */ + SelectComponent.prototype.options; + /** @type {?} */ + SelectComponent.prototype.disabled; + /** @type {?} */ + SelectComponent.prototype.showSelected; + /** @type {?} */ + SelectComponent.prototype.selected; + /** @type {?} */ + SelectComponent.prototype.isOpen; + /** @type {?} */ + SelectComponent.prototype.icon; + /** + * @type {?} + * @protected + */ + SelectComponent.prototype._onCloseService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var DisabledCursorDirective = /** @class */ (function () { - function DisabledCursorDirective() { - } - /** - * @private - * @return {?} - */ - DisabledCursorDirective.prototype.updateCursor = /** - * @private - * @return {?} - */ - function () { - this.cursor = this.dis ? true : false; - }; - /** - * @return {?} - */ - DisabledCursorDirective.prototype.ngOnInit = /** - * @return {?} - */ - function () { - this.updateCursor(); - }; - /** - * @param {?} changes - * @return {?} - */ - DisabledCursorDirective.prototype.ngOnChanges = /** - * @param {?} changes - * @return {?} - */ - function (changes) { - this.updateCursor(); - }; - DisabledCursorDirective.decorators = [ - { type: core.Directive, args: [{ - selector: '[gdDisabledCursor]' - },] } - ]; - /** @nocollapse */ - DisabledCursorDirective.ctorParameters = function () { return []; }; - DisabledCursorDirective.propDecorators = { - dis: [{ type: core.Input }], - cursor: [{ type: core.HostBinding, args: ['class.inactive',] }] - }; - return DisabledCursorDirective; - }()); - if (false) { - /** @type {?} */ - DisabledCursorDirective.prototype.dis; - /** @type {?} */ - DisabledCursorDirective.prototype.cursor; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var DisabledCursorDirective = /** @class */ (function () { + function DisabledCursorDirective() { + } + /** + * @private + * @return {?} + */ + DisabledCursorDirective.prototype.updateCursor = /** + * @private + * @return {?} + */ + function () { + this.cursor = this.dis ? true : false; + }; + /** + * @return {?} + */ + DisabledCursorDirective.prototype.ngOnInit = /** + * @return {?} + */ + function () { + this.updateCursor(); + }; + /** + * @param {?} changes + * @return {?} + */ + DisabledCursorDirective.prototype.ngOnChanges = /** + * @param {?} changes + * @return {?} + */ + function (changes) { + this.updateCursor(); + }; + DisabledCursorDirective.decorators = [ + { type: core.Directive, args: [{ + selector: '[gdDisabledCursor]' + },] } + ]; + /** @nocollapse */ + DisabledCursorDirective.ctorParameters = function () { return []; }; + DisabledCursorDirective.propDecorators = { + dis: [{ type: core.Input }], + cursor: [{ type: core.HostBinding, args: ['class.inactive',] }] + }; + return DisabledCursorDirective; + }()); + if (false) { + /** @type {?} */ + DisabledCursorDirective.prototype.dis; + /** @type {?} */ + DisabledCursorDirective.prototype.cursor; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var RotationDirective = /** @class */ (function () { - function RotationDirective() { - this.withMargin = true; - } - /** - * @private - * @return {?} - */ - RotationDirective.prototype.updateCursor = /** - * @private - * @return {?} - */ - function () { - if (typeof this.angle === "string") { - this.angle = parseInt(this.angle, 10); - } - if (this.angle) { - this.animation = 'none'; - this.transition = 'none'; - this.transform = 'rotate(' + this.angle + 'deg)'; - } - else if (this.angle === 0 && this.animation) { - this.animation = null; - this.transition = null; - this.transform = null; - } - if (this.withMargin) { - if (this.angle === 90 || this.angle === 270 || this.angle === -90 || this.angle === -270) { - if (this.isHtmlMode) { - if (this.isLandscape()) { - this.margin = '164px 254px'; - } - else { - this.margin = '-111px 254px'; - } - } - else { - if (this.isLandscape()) { - this.margin = '129px 100px -79px'; - } - else { - this.margin = '-72px 100px -79px'; - } - } - } - else if (this.angle === -180 || this.angle === 180) { - this.margin = '280px'; - } - else { - this.margin = null; - } - } - }; - /** - * @return {?} - */ - RotationDirective.prototype.isLandscape = /** - * @return {?} - */ - function () { - return this.width > this.height; - }; - /** - * @return {?} - */ - RotationDirective.prototype.ngOnInit = /** - * @return {?} - */ - function () { - this.updateCursor(); - }; - /** - * @param {?} changes - * @return {?} - */ - RotationDirective.prototype.ngOnChanges = /** - * @param {?} changes - * @return {?} - */ - function (changes) { - this.updateCursor(); - }; - RotationDirective.decorators = [ - { type: core.Directive, args: [{ - selector: '[gdRotation]' - },] } - ]; - /** @nocollapse */ - RotationDirective.ctorParameters = function () { return []; }; - RotationDirective.propDecorators = { - angle: [{ type: core.Input }], - isHtmlMode: [{ type: core.Input }], - width: [{ type: core.Input }], - height: [{ type: core.Input }], - withMargin: [{ type: core.Input }], - animation: [{ type: core.HostBinding, args: ['style.animation',] }], - transition: [{ type: core.HostBinding, args: ['style.transition-property',] }], - transform: [{ type: core.HostBinding, args: ['style.transform',] }], - margin: [{ type: core.HostBinding, args: ['style.margin',] }] - }; - return RotationDirective; - }()); - if (false) { - /** @type {?} */ - RotationDirective.prototype.angle; - /** @type {?} */ - RotationDirective.prototype.isHtmlMode; - /** @type {?} */ - RotationDirective.prototype.width; - /** @type {?} */ - RotationDirective.prototype.height; - /** @type {?} */ - RotationDirective.prototype.withMargin; - /** @type {?} */ - RotationDirective.prototype.animation; - /** @type {?} */ - RotationDirective.prototype.transition; - /** @type {?} */ - RotationDirective.prototype.transform; - /** @type {?} */ - RotationDirective.prototype.margin; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var RotationDirective = /** @class */ (function () { + function RotationDirective() { + this.withMargin = true; + } + /** + * @private + * @return {?} + */ + RotationDirective.prototype.updateCursor = /** + * @private + * @return {?} + */ + function () { + if (typeof this.angle === "string") { + this.angle = parseInt(this.angle, 10); + } + if (this.angle) { + this.animation = 'none'; + this.transition = 'none'; + this.transform = 'rotate(' + this.angle + 'deg)'; + } + else if (this.angle === 0 && this.animation) { + this.animation = null; + this.transition = null; + this.transform = null; + } + if (this.withMargin) { + if (this.angle === 90 || this.angle === 270 || this.angle === -90 || this.angle === -270) { + if (this.isHtmlMode) { + if (this.isLandscape()) { + this.margin = '164px 254px'; + } + else { + this.margin = '-111px 254px'; + } + } + else { + if (this.isLandscape()) { + this.margin = '129px 100px -79px'; + } + else { + this.margin = '-72px 100px -79px'; + } + } + } + else if (this.angle === -180 || this.angle === 180) { + this.margin = '280px'; + } + else { + this.margin = null; + } + } + }; + /** + * @return {?} + */ + RotationDirective.prototype.isLandscape = /** + * @return {?} + */ + function () { + return this.width > this.height; + }; + /** + * @return {?} + */ + RotationDirective.prototype.ngOnInit = /** + * @return {?} + */ + function () { + this.updateCursor(); + }; + /** + * @param {?} changes + * @return {?} + */ + RotationDirective.prototype.ngOnChanges = /** + * @param {?} changes + * @return {?} + */ + function (changes) { + this.updateCursor(); + }; + RotationDirective.decorators = [ + { type: core.Directive, args: [{ + selector: '[gdRotation]' + },] } + ]; + /** @nocollapse */ + RotationDirective.ctorParameters = function () { return []; }; + RotationDirective.propDecorators = { + angle: [{ type: core.Input }], + isHtmlMode: [{ type: core.Input }], + width: [{ type: core.Input }], + height: [{ type: core.Input }], + withMargin: [{ type: core.Input }], + animation: [{ type: core.HostBinding, args: ['style.animation',] }], + transition: [{ type: core.HostBinding, args: ['style.transition-property',] }], + transform: [{ type: core.HostBinding, args: ['style.transform',] }], + margin: [{ type: core.HostBinding, args: ['style.margin',] }] + }; + return RotationDirective; + }()); + if (false) { + /** @type {?} */ + RotationDirective.prototype.angle; + /** @type {?} */ + RotationDirective.prototype.isHtmlMode; + /** @type {?} */ + RotationDirective.prototype.width; + /** @type {?} */ + RotationDirective.prototype.height; + /** @type {?} */ + RotationDirective.prototype.withMargin; + /** @type {?} */ + RotationDirective.prototype.animation; + /** @type {?} */ + RotationDirective.prototype.transition; + /** @type {?} */ + RotationDirective.prototype.transform; + /** @type {?} */ + RotationDirective.prototype.margin; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var InitStateComponent = /** @class */ (function () { - function InitStateComponent() { - this.fileDropped = new core.EventEmitter(); - this.showUploadFile = false; - } - /** - * @return {?} - */ - InitStateComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - }; - /** - * @param {?} $event - * @return {?} - */ - InitStateComponent.prototype.dropped = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - if ($event) { - this.fileDropped.emit($event); - this.showUploadFile = false; - } - }; - InitStateComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-init-state', - template: "
\n
\n \n \n \n \n
\n
\n \n {{text}}\n
\n
\n", - styles: [".wrapper{color:#959da5;background-color:#e7e7e7;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;width:100%;height:100%}.icon{font-size:65px;margin-bottom:43px;display:-webkit-box;display:flex;color:#959da5}.start{font-size:15px;text-align:center;color:#959da5}.gd-drag-n-drop-wrap.active{background-color:#fff;position:fixed;top:0;background:rgba(255,255,255,.8)}.gd-drag-n-drop-wrap.active .init-state-wrapper{position:absolute;opacity:.2;top:unset}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper{top:0;z-index:999}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper .icon{width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}.gd-drag-n-drop-wrap.active .text{color:#6e6e6e;font-size:14px}.init-state-dnd-wrapper,.init-state-wrapper{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;width:250px;height:250px;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center}.init-state-wrapper{top:-60px;position:relative}"] - }] } - ]; - /** @nocollapse */ - InitStateComponent.ctorParameters = function () { return []; }; - InitStateComponent.propDecorators = { - icon: [{ type: core.Input }], - text: [{ type: core.Input }], - fileDropped: [{ type: core.Output }] - }; - return InitStateComponent; - }()); - if (false) { - /** @type {?} */ - InitStateComponent.prototype.icon; - /** @type {?} */ - InitStateComponent.prototype.text; - /** @type {?} */ - InitStateComponent.prototype.fileDropped; - /** @type {?} */ - InitStateComponent.prototype.showUploadFile; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var InitStateComponent = /** @class */ (function () { + function InitStateComponent() { + this.fileDropped = new core.EventEmitter(); + this.showUploadFile = false; + } + /** + * @return {?} + */ + InitStateComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + }; + /** + * @param {?} $event + * @return {?} + */ + InitStateComponent.prototype.dropped = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + if ($event) { + this.fileDropped.emit($event); + this.showUploadFile = false; + } + }; + InitStateComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-init-state', + template: "
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {{text}}\r\n
\r\n
\r\n", + styles: [".wrapper{color:#959da5;background-color:#e7e7e7;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%}.icon{font-size:65px;margin-bottom:43px;display:flex;color:#959da5}.start{font-size:15px;text-align:center;color:#959da5}.gd-drag-n-drop-wrap.active{background-color:#fff;position:fixed;top:0;background:rgba(255,255,255,.8)}.gd-drag-n-drop-wrap.active .init-state-wrapper{position:absolute;opacity:.2;top:unset}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper{top:0;z-index:999}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper .icon{width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}.gd-drag-n-drop-wrap.active .text{color:#6e6e6e;font-size:14px}.init-state-dnd-wrapper,.init-state-wrapper{display:flex;flex-direction:column;width:250px;height:250px;align-items:center;justify-content:center}.init-state-wrapper{top:-60px;position:relative}"] + }] } + ]; + /** @nocollapse */ + InitStateComponent.ctorParameters = function () { return []; }; + InitStateComponent.propDecorators = { + icon: [{ type: core.Input }], + text: [{ type: core.Input }], + fileDropped: [{ type: core.Output }] + }; + return InitStateComponent; + }()); + if (false) { + /** @type {?} */ + InitStateComponent.prototype.icon; + /** @type {?} */ + InitStateComponent.prototype.text; + /** @type {?} */ + InitStateComponent.prototype.fileDropped; + /** @type {?} */ + InitStateComponent.prototype.showUploadFile; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var RenderPrintService = /** @class */ (function () { - function RenderPrintService() { - var _this = this; - this._render = new rxjs.Observable((/** - * @param {?} observer - * @return {?} - */ - function (observer) { - return _this._observer = observer; - })); - this._renderBlob = new rxjs.Observable((/** - * @param {?} observer - * @return {?} - */ - function (observer) { - return _this._observerBlob = observer; - })); - } - Object.defineProperty(RenderPrintService.prototype, "renderPrint", { - get: /** - * @return {?} - */ - function () { - return this._render; - }, - enumerable: true, - configurable: true - }); - /** - * @param {?} pages - * @return {?} - */ - RenderPrintService.prototype.changePages = /** - * @param {?} pages - * @return {?} - */ - function (pages) { - this._observer.next(pages); - }; - Object.defineProperty(RenderPrintService.prototype, "renderPrintBlob", { - get: /** - * @return {?} - */ - function () { - return this._renderBlob; - }, - enumerable: true, - configurable: true - }); - /** - * @param {?} file - * @return {?} - */ - RenderPrintService.prototype.changeBlob = /** - * @param {?} file - * @return {?} - */ - function (file) { - this._observerBlob.next(file); - }; - return RenderPrintService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - RenderPrintService.prototype._render; - /** - * @type {?} - * @private - */ - RenderPrintService.prototype._observer; - /** - * @type {?} - * @private - */ - RenderPrintService.prototype._renderBlob; - /** - * @type {?} - * @private - */ - RenderPrintService.prototype._observerBlob; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var RenderPrintService = /** @class */ (function () { + function RenderPrintService() { + var _this = this; + this._render = new rxjs.Observable((/** + * @param {?} observer + * @return {?} + */ + function (observer) { + return _this._observer = observer; + })); + this._renderBlob = new rxjs.Observable((/** + * @param {?} observer + * @return {?} + */ + function (observer) { + return _this._observerBlob = observer; + })); + } + Object.defineProperty(RenderPrintService.prototype, "renderPrint", { + get: /** + * @return {?} + */ + function () { + return this._render; + }, + enumerable: true, + configurable: true + }); + /** + * @param {?} pages + * @return {?} + */ + RenderPrintService.prototype.changePages = /** + * @param {?} pages + * @return {?} + */ + function (pages) { + this._observer.next(pages); + }; + Object.defineProperty(RenderPrintService.prototype, "renderPrintBlob", { + get: /** + * @return {?} + */ + function () { + return this._renderBlob; + }, + enumerable: true, + configurable: true + }); + /** + * @param {?} file + * @return {?} + */ + RenderPrintService.prototype.changeBlob = /** + * @param {?} file + * @return {?} + */ + function (file) { + this._observerBlob.next(file); + }; + return RenderPrintService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + RenderPrintService.prototype._render; + /** + * @type {?} + * @private + */ + RenderPrintService.prototype._observer; + /** + * @type {?} + * @private + */ + RenderPrintService.prototype._renderBlob; + /** + * @type {?} + * @private + */ + RenderPrintService.prototype._observerBlob; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var RenderPrintDirective = /** @class */ (function () { - function RenderPrintDirective(_renderService) { - var _this = this; - this._renderService = _renderService; - _renderService.renderPrint.subscribe((/** - * @param {?} pages - * @return {?} - */ - function (pages) { - _this.renderPrint(pages); - })); - _renderService.renderPrintBlob.subscribe((/** - * @param {?} file - * @return {?} - */ - function (file) { - _this.renderPrintBlob(file); - })); - } - /** - * @private - * @param {?} pages - * @return {?} - */ - RenderPrintDirective.prototype.renderPrint = /** - * @private - * @param {?} pages - * @return {?} - */ - function (pages) { - var e_1, _a; - /** @type {?} */ - var pagesHtml = ''; - try { - for (var pages_1 = __values(pages), pages_1_1 = pages_1.next(); !pages_1_1.done; pages_1_1 = pages_1.next()) { - var page = pages_1_1.value; - pagesHtml += '
' + - '
' + - '
'; - } - } - catch (e_1_1) { e_1 = { error: e_1_1 }; } - finally { - try { - if (pages_1_1 && !pages_1_1.done && (_a = pages_1.return)) _a.call(pages_1); - } - finally { if (e_1) throw e_1.error; } - } - this.openWindow(pagesHtml, pages[0].width, pages[0].height); - }; - /** - * @private - * @param {?} pagesHtml - * @param {?} width - * @param {?} height - * @return {?} - */ - RenderPrintDirective.prototype.openWindow = /** - * @private - * @param {?} pagesHtml - * @param {?} width - * @param {?} height - * @return {?} - */ - function (pagesHtml, width, height) { - /** @type {?} */ - var a4Height = 842; - /** @type {?} */ - var a4Width = 595; - /** @type {?} */ - var imageA4Adjusted = ''; - if (width > a4Width && height > a4Height) { - /** @type {?} */ - var zoom = Math.round(height / a4Height) / 100; - imageA4Adjusted = '.gd-page img { width: 100%; margin: 0; padding: 0;}'; - if (navigator.userAgent.toLowerCase().indexOf('firefox') > -1) { - imageA4Adjusted = '.gd-page img { transform: scale(' + zoom + ');}'; - } - } - /** @type {?} */ - var cssPrint = ''; - /** @type {?} */ - var windowObject = window.open('', "PrintWindow", "width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes"); - windowObject.focus(); - windowObject.document.writeln(cssPrint); - windowObject.document.writeln(pagesHtml); - windowObject.document.close(); - setTimeout((/** - * @return {?} - */ - function () { - windowObject.focus(); - windowObject.print(); - windowObject.close(); - }), 100); - }; - /** - * @private - * @param {?} file - * @return {?} - */ - RenderPrintDirective.prototype.renderPrintBlob = /** - * @private - * @param {?} file - * @return {?} - */ - function (file) { - /** @type {?} */ - var fileURL = URL.createObjectURL(file); - /** @type {?} */ - var windowObject = window.open(fileURL, "PrintWindow", "width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes"); - windowObject.focus(); - windowObject.print(); - windowObject.close(); - }; - RenderPrintDirective.decorators = [ - { type: core.Directive, args: [{ - selector: '[gdRenderPrint]' - },] } - ]; - /** @nocollapse */ - RenderPrintDirective.ctorParameters = function () { return [ - { type: RenderPrintService } - ]; }; - RenderPrintDirective.propDecorators = { - htmlMode: [{ type: core.Input }] - }; - return RenderPrintDirective; - }()); - if (false) { - /** @type {?} */ - RenderPrintDirective.prototype.htmlMode; - /** - * @type {?} - * @private - */ - RenderPrintDirective.prototype._renderService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var RenderPrintDirective = /** @class */ (function () { + function RenderPrintDirective(_renderService) { + var _this = this; + this._renderService = _renderService; + _renderService.renderPrint.subscribe((/** + * @param {?} pages + * @return {?} + */ + function (pages) { + _this.renderPrint(pages); + })); + _renderService.renderPrintBlob.subscribe((/** + * @param {?} file + * @return {?} + */ + function (file) { + _this.renderPrintBlob(file); + })); + } + /** + * @private + * @param {?} pages + * @return {?} + */ + RenderPrintDirective.prototype.renderPrint = /** + * @private + * @param {?} pages + * @return {?} + */ + function (pages) { + var e_1, _a; + /** @type {?} */ + var pagesHtml = ''; + try { + for (var pages_1 = __values(pages), pages_1_1 = pages_1.next(); !pages_1_1.done; pages_1_1 = pages_1.next()) { + var page = pages_1_1.value; + pagesHtml += '
' + + '
' + + '
'; + } + } + catch (e_1_1) { e_1 = { error: e_1_1 }; } + finally { + try { + if (pages_1_1 && !pages_1_1.done && (_a = pages_1.return)) _a.call(pages_1); + } + finally { if (e_1) throw e_1.error; } + } + this.openWindow(pagesHtml, pages[0].width, pages[0].height); + }; + /** + * @private + * @param {?} pagesHtml + * @param {?} width + * @param {?} height + * @return {?} + */ + RenderPrintDirective.prototype.openWindow = /** + * @private + * @param {?} pagesHtml + * @param {?} width + * @param {?} height + * @return {?} + */ + function (pagesHtml, width, height) { + /** @type {?} */ + var a4Height = 842; + /** @type {?} */ + var a4Width = 595; + /** @type {?} */ + var imageA4Adjusted = ''; + if (width > a4Width && height > a4Height) { + /** @type {?} */ + var zoom = Math.round(height / a4Height) / 100; + imageA4Adjusted = '.gd-page img { width: 100%; margin: 0; padding: 0;}'; + if (navigator.userAgent.toLowerCase().indexOf('firefox') > -1) { + imageA4Adjusted = '.gd-page img { transform: scale(' + zoom + ');}'; + } + } + /** @type {?} */ + var cssPrint = ''; + /** @type {?} */ + var windowObject = window.open('', "PrintWindow", "width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes"); + windowObject.focus(); + windowObject.document.writeln(cssPrint); + windowObject.document.writeln(pagesHtml); + windowObject.document.close(); + setTimeout((/** + * @return {?} + */ + function () { + windowObject.focus(); + windowObject.print(); + windowObject.close(); + }), 100); + }; + /** + * @private + * @param {?} file + * @return {?} + */ + RenderPrintDirective.prototype.renderPrintBlob = /** + * @private + * @param {?} file + * @return {?} + */ + function (file) { + /** @type {?} */ + var fileURL = URL.createObjectURL(file); + /** @type {?} */ + var windowObject = window.open(fileURL, "PrintWindow", "width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes"); + windowObject.focus(); + windowObject.print(); + windowObject.close(); + }; + RenderPrintDirective.decorators = [ + { type: core.Directive, args: [{ + selector: '[gdRenderPrint]' + },] } + ]; + /** @nocollapse */ + RenderPrintDirective.ctorParameters = function () { return [ + { type: RenderPrintService } + ]; }; + RenderPrintDirective.propDecorators = { + htmlMode: [{ type: core.Input }] + }; + return RenderPrintDirective; + }()); + if (false) { + /** @type {?} */ + RenderPrintDirective.prototype.htmlMode; + /** + * @type {?} + * @private + */ + RenderPrintDirective.prototype._renderService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var ExceptionMessageService = /** @class */ (function () { - function ExceptionMessageService() { - this._observer = new rxjs.BehaviorSubject('Server is not available'); - this._messageChange = this._observer.asObservable(); - } - Object.defineProperty(ExceptionMessageService.prototype, "messageChange", { - get: /** - * @return {?} - */ - function () { - return this._messageChange; - }, - enumerable: true, - configurable: true - }); - /** - * @param {?} message - * @return {?} - */ - ExceptionMessageService.prototype.changeMessage = /** - * @param {?} message - * @return {?} - */ - function (message) { - this._observer.next(message); - }; - return ExceptionMessageService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - ExceptionMessageService.prototype._observer; - /** - * @type {?} - * @private - */ - ExceptionMessageService.prototype._messageChange; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var ExceptionMessageService = /** @class */ (function () { + function ExceptionMessageService() { + this._observer = new rxjs.BehaviorSubject('Server is not available'); + this._messageChange = this._observer.asObservable(); + } + Object.defineProperty(ExceptionMessageService.prototype, "messageChange", { + get: /** + * @return {?} + */ + function () { + return this._messageChange; + }, + enumerable: true, + configurable: true + }); + /** + * @param {?} message + * @return {?} + */ + ExceptionMessageService.prototype.changeMessage = /** + * @param {?} message + * @return {?} + */ + function (message) { + this._observer.next(message); + }; + return ExceptionMessageService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + ExceptionMessageService.prototype._observer; + /** + * @type {?} + * @private + */ + ExceptionMessageService.prototype._messageChange; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var ErrorModalComponent = /** @class */ (function () { - function ErrorModalComponent(messageService) { - var _this = this; - messageService.messageChange.subscribe((/** - * @param {?} message - * @return {?} - */ - function (message) { return _this.message = message; })); - } - /** - * @return {?} - */ - ErrorModalComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - }; - ErrorModalComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-error-modal', - template: "\n
\n \n
\n
Something went wrong
\n
{{message ? message : 'Server is not available'}}
\n
\n
\n
\n", - styles: [".gd-modal-error{display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-flex:1;flex:1}.gd-modal-error .gd-modal-error-message{font-size:12px;margin:0 24px 24px 0;word-break:break-word}.gd-modal-error .gd-modal-error-title{font-size:16px;font-weight:700;margin:14px 0 10px}#gd-error-section{max-width:468px;max-height:204px;display:-webkit-box;display:flex}#gd-error-section fa-icon{-webkit-box-flex:1;flex:1;color:#e04e4e;font-size:40px;margin:13px 23px 90px;text-align:center;max-width:46px}"] - }] } - ]; - /** @nocollapse */ - ErrorModalComponent.ctorParameters = function () { return [ - { type: ExceptionMessageService } - ]; }; - return ErrorModalComponent; - }()); - if (false) { - /** @type {?} */ - ErrorModalComponent.prototype.message; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var ErrorModalComponent = /** @class */ (function () { + function ErrorModalComponent(messageService) { + var _this = this; + messageService.messageChange.subscribe((/** + * @param {?} message + * @return {?} + */ + function (message) { return _this.message = message; })); + } + /** + * @return {?} + */ + ErrorModalComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + }; + ErrorModalComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-error-modal', + template: "\r\n
\r\n \r\n
\r\n
Something went wrong
\r\n
{{message ? message : 'Server is not available'}}
\r\n
\r\n
\r\n
\r\n", + styles: [".gd-modal-error{display:inline-flex;flex-direction:column;flex:1}.gd-modal-error .gd-modal-error-message{font-size:12px;margin:0 24px 24px 0;word-break:break-word}.gd-modal-error .gd-modal-error-title{font-size:16px;font-weight:700;margin:14px 0 10px}#gd-error-section{max-width:468px;max-height:204px;display:flex}#gd-error-section fa-icon{flex:1;color:#e04e4e;font-size:40px;margin:13px 23px 90px;text-align:center;max-width:46px}"] + }] } + ]; + /** @nocollapse */ + ErrorModalComponent.ctorParameters = function () { return [ + { type: ExceptionMessageService } + ]; }; + return ErrorModalComponent; + }()); + if (false) { + /** @type {?} */ + ErrorModalComponent.prototype.message; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var PasswordService = /** @class */ (function () { - function PasswordService() { - this._observer = new rxjs.Subject(); - this._passChange = this._observer.asObservable(); - } - Object.defineProperty(PasswordService.prototype, "passChange", { - get: /** - * @return {?} - */ - function () { - return this._passChange; - }, - enumerable: true, - configurable: true - }); - /** - * @param {?} pass - * @return {?} - */ - PasswordService.prototype.setPassword = /** - * @param {?} pass - * @return {?} - */ - function (pass) { - this._observer.next(pass); - }; - return PasswordService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - PasswordService.prototype._observer; - /** - * @type {?} - * @private - */ - PasswordService.prototype._passChange; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var PasswordService = /** @class */ (function () { + function PasswordService() { + this._observer = new rxjs.Subject(); + this._passChange = this._observer.asObservable(); + } + Object.defineProperty(PasswordService.prototype, "passChange", { + get: /** + * @return {?} + */ + function () { + return this._passChange; + }, + enumerable: true, + configurable: true + }); + /** + * @param {?} pass + * @return {?} + */ + PasswordService.prototype.setPassword = /** + * @param {?} pass + * @return {?} + */ + function (pass) { + this._observer.next(pass); + }; + return PasswordService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + PasswordService.prototype._observer; + /** + * @type {?} + * @private + */ + PasswordService.prototype._passChange; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** @type {?} */ - var $$5 = jquery; - var PasswordRequiredComponent = /** @class */ (function () { - function PasswordRequiredComponent(messageService, _passwordService) { - var _this = this; - this._passwordService = _passwordService; - this.cancelEvent = new core.EventEmitter(); - messageService.messageChange.subscribe((/** - * @param {?} message - * @return {?} - */ - function (message) { return _this.message = message; })); - } - /** - * @return {?} - */ - PasswordRequiredComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - }; - /** - * @param {?} value - * @return {?} - */ - PasswordRequiredComponent.prototype.setPassword = /** - * @param {?} value - * @return {?} - */ - function (value) { - this._passwordService.setPassword(value); - }; - /** - * @param {?} $event - * @return {?} - */ - PasswordRequiredComponent.prototype.onCloseOpen = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - if ($event) { - setTimeout((/** - * @return {?} - */ - function () { - /** @type {?} */ - var element = $$5("#password"); - if (element) { - element.focus(); - } - }), 100); - } - else { - $$5("#password").val(""); - } - }; - /** - * @param {?} $event - * @return {?} - */ - PasswordRequiredComponent.prototype.cancel = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - $$5("#password").val(""); - this.cancelEvent.emit(true); - }; - PasswordRequiredComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-password-required', - template: "\n
\n
\n \n \n {{message}}\n \n Open\n \n
\n
\n
\n", - styles: ["#gd-password-section{width:375px;height:164px}.gd-password-wrap{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;margin:24px}.gd-password-wrap label{font-size:14px;color:#acacac;padding-bottom:12px}.gd-password-wrap input{height:30px;border:1px solid #25c2d4}.gd-password-wrap input.error{border-color:#e04e4e}.gd-password-wrap gd-button{align-self:flex-end}.gd-password-wrap ::ng-deep .button{height:37px;width:72px;padding:0;-webkit-box-pack:center;justify-content:center}.gd-password-wrap ::ng-deep .button ::ng-deep .text{font-size:10px!important}.gd-password-error{color:#e04e4e;padding:10px 0 12px;height:12px;line-height:12px;font-size:12px}@media (max-width:1037px){#gd-password-section{min-width:375px}}"] - }] } - ]; - /** @nocollapse */ - PasswordRequiredComponent.ctorParameters = function () { return [ - { type: ExceptionMessageService }, - { type: PasswordService } - ]; }; - PasswordRequiredComponent.propDecorators = { - cancelEvent: [{ type: core.Output }] - }; - return PasswordRequiredComponent; - }()); - if (false) { - /** @type {?} */ - PasswordRequiredComponent.prototype.message; - /** @type {?} */ - PasswordRequiredComponent.prototype.cancelEvent; - /** - * @type {?} - * @private - */ - PasswordRequiredComponent.prototype._passwordService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** @type {?} */ + var $$5 = jquery; + var PasswordRequiredComponent = /** @class */ (function () { + function PasswordRequiredComponent(messageService, _passwordService) { + var _this = this; + this._passwordService = _passwordService; + this.cancelEvent = new core.EventEmitter(); + messageService.messageChange.subscribe((/** + * @param {?} message + * @return {?} + */ + function (message) { return _this.message = message; })); + } + /** + * @return {?} + */ + PasswordRequiredComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + }; + /** + * @param {?} value + * @return {?} + */ + PasswordRequiredComponent.prototype.setPassword = /** + * @param {?} value + * @return {?} + */ + function (value) { + this._passwordService.setPassword(value); + }; + /** + * @param {?} $event + * @return {?} + */ + PasswordRequiredComponent.prototype.onCloseOpen = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + if ($event) { + setTimeout((/** + * @return {?} + */ + function () { + /** @type {?} */ + var element = $$5("#password"); + if (element) { + element.focus(); + } + }), 100); + } + else { + $$5("#password").val(""); + } + }; + /** + * @param {?} $event + * @return {?} + */ + PasswordRequiredComponent.prototype.cancel = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + $$5("#password").val(""); + this.cancelEvent.emit(true); + }; + PasswordRequiredComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-password-required', + template: "\r\n
\r\n
\r\n \r\n \r\n {{message}}\r\n \r\n Open\r\n \r\n
\r\n
\r\n
\r\n", + styles: ["#gd-password-section{width:375px;height:164px}.gd-password-wrap{display:flex;flex-direction:column;margin:24px}.gd-password-wrap label{font-size:14px;color:#acacac;padding-bottom:12px}.gd-password-wrap input{height:30px;border:1px solid #25c2d4}.gd-password-wrap input.error{border-color:#e04e4e}.gd-password-wrap gd-button{align-self:flex-end}.gd-password-wrap ::ng-deep .button{height:37px;width:72px;padding:0;justify-content:center}.gd-password-wrap ::ng-deep .button ::ng-deep .text{font-size:10px!important}.gd-password-error{color:#e04e4e;padding:10px 0 12px;height:12px;line-height:12px;font-size:12px}@media (max-width:1037px){#gd-password-section{min-width:375px}}"] + }] } + ]; + /** @nocollapse */ + PasswordRequiredComponent.ctorParameters = function () { return [ + { type: ExceptionMessageService }, + { type: PasswordService } + ]; }; + PasswordRequiredComponent.propDecorators = { + cancelEvent: [{ type: core.Output }] + }; + return PasswordRequiredComponent; + }()); + if (false) { + /** @type {?} */ + PasswordRequiredComponent.prototype.message; + /** @type {?} */ + PasswordRequiredComponent.prototype.cancelEvent; + /** + * @type {?} + * @private + */ + PasswordRequiredComponent.prototype._passwordService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var ErrorInterceptorService = /** @class */ (function () { - function ErrorInterceptorService(_modalService, _messageService) { - this._modalService = _modalService; - this._messageService = _messageService; - } - /** - * @param {?} req - * @param {?} next - * @return {?} - */ - ErrorInterceptorService.prototype.intercept = /** - * @param {?} req - * @param {?} next - * @return {?} - */ - function (req, next) { - var _this = this; - /** @type {?} */ - var logFormat = 'background: maroon; color: white'; - return next.handle(req) - .pipe(operators.map((/** - * @param {?} data - * @return {?} - */ - function (data) { - return data; - })), operators.catchError((/** - * @param {?} exception - * @return {?} - */ - function (exception) { - if (exception instanceof http.HttpErrorResponse) { - switch (exception.status) { - case HttpError.BadRequest: - console.error('%c Bad Request 400', logFormat); - break; - case HttpError.Unauthorized: - console.error('%c Unauthorized 401', logFormat); - break; - case HttpError.NotFound: - console.error('%c Not Found 404', logFormat); - break; - case HttpError.TimeOut: - console.error('%c TimeOut 408', logFormat); - break; - case HttpError.InternalServerError: - console.error('%c big bad 500', logFormat); - _this._messageService.changeMessage(exception.error.message); - _this._modalService.open(CommonModals.ErrorMessage); - break; - case HttpError.Forbidden: - console.error('%c Forbidden 403', logFormat); - _this._messageService.changeMessage(exception.error.message); - _this._modalService.open(CommonModals.PasswordRequired); - break; - } - } - return rxjs.throwError(exception); - }))); - }; - ErrorInterceptorService.decorators = [ - { type: core.Injectable, args: [{ - providedIn: 'root' - },] } - ]; - /** @nocollapse */ - ErrorInterceptorService.ctorParameters = function () { return [ - { type: ModalService }, - { type: ExceptionMessageService } - ]; }; - /** @nocollapse */ ErrorInterceptorService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function ErrorInterceptorService_Factory() { return new ErrorInterceptorService(core.ɵɵinject(ModalService), core.ɵɵinject(ExceptionMessageService)); }, token: ErrorInterceptorService, providedIn: "root" }); - return ErrorInterceptorService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - ErrorInterceptorService.prototype._modalService; - /** - * @type {?} - * @private - */ - ErrorInterceptorService.prototype._messageService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var ErrorInterceptorService = /** @class */ (function () { + function ErrorInterceptorService(_modalService, _messageService) { + this._modalService = _modalService; + this._messageService = _messageService; + } + /** + * @param {?} req + * @param {?} next + * @return {?} + */ + ErrorInterceptorService.prototype.intercept = /** + * @param {?} req + * @param {?} next + * @return {?} + */ + function (req, next) { + var _this = this; + /** @type {?} */ + var logFormat = 'background: maroon; color: white'; + return next.handle(req) + .pipe(operators.map((/** + * @param {?} data + * @return {?} + */ + function (data) { + return data; + })), operators.catchError((/** + * @param {?} exception + * @return {?} + */ + function (exception) { + if (exception instanceof http.HttpErrorResponse) { + switch (exception.status) { + case HttpError.BadRequest: + console.error('%c Bad Request 400', logFormat); + break; + case HttpError.Unauthorized: + console.error('%c Unauthorized 401', logFormat); + break; + case HttpError.NotFound: + console.error('%c Not Found 404', logFormat); + break; + case HttpError.TimeOut: + console.error('%c TimeOut 408', logFormat); + break; + case HttpError.InternalServerError: + console.error('%c big bad 500', logFormat); + _this._messageService.changeMessage(exception.error.message); + _this._modalService.open(CommonModals.ErrorMessage); + break; + case HttpError.Forbidden: + console.error('%c Forbidden 403', logFormat); + _this._messageService.changeMessage(exception.error.message); + _this._modalService.open(CommonModals.PasswordRequired); + break; + } + } + return rxjs.throwError(exception); + }))); + }; + ErrorInterceptorService.decorators = [ + { type: core.Injectable, args: [{ + providedIn: 'root' + },] } + ]; + /** @nocollapse */ + ErrorInterceptorService.ctorParameters = function () { return [ + { type: ModalService }, + { type: ExceptionMessageService } + ]; }; + /** @nocollapse */ ErrorInterceptorService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function ErrorInterceptorService_Factory() { return new ErrorInterceptorService(core.ɵɵinject(ModalService), core.ɵɵinject(ExceptionMessageService)); }, token: ErrorInterceptorService, providedIn: "root" }); + return ErrorInterceptorService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + ErrorInterceptorService.prototype._modalService; + /** + * @type {?} + * @private + */ + ErrorInterceptorService.prototype._messageService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var SearchService = /** @class */ (function () { - function SearchService() { - this._observer = new rxjs.Subject(); - this._textChange = this._observer.asObservable(); - this._observerCurrent = new rxjs.Subject(); - this._currentChange = this._observerCurrent.asObservable(); - this._observerTotal = new rxjs.Subject(); - this._totalChange = this._observerTotal.asObservable(); - } - Object.defineProperty(SearchService.prototype, "textChange", { - get: /** - * @return {?} - */ - function () { - return this._textChange; - }, - enumerable: true, - configurable: true - }); - /** - * @param {?} text - * @return {?} - */ - SearchService.prototype.setText = /** - * @param {?} text - * @return {?} - */ - function (text) { - this._observer.next(text); - }; - Object.defineProperty(SearchService.prototype, "currentChange", { - get: /** - * @return {?} - */ - function () { - return this._currentChange; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(SearchService.prototype, "totalChange", { - get: /** - * @return {?} - */ - function () { - return this._totalChange; - }, - enumerable: true, - configurable: true - }); - /** - * @param {?} current - * @return {?} - */ - SearchService.prototype.setCurrent = /** - * @param {?} current - * @return {?} - */ - function (current) { - this._observerCurrent.next(current); - }; - /** - * @param {?} total - * @return {?} - */ - SearchService.prototype.setTotal = /** - * @param {?} total - * @return {?} - */ - function (total) { - this._observerTotal.next(total); - }; - return SearchService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - SearchService.prototype._observer; - /** - * @type {?} - * @private - */ - SearchService.prototype._textChange; - /** - * @type {?} - * @private - */ - SearchService.prototype._observerCurrent; - /** - * @type {?} - * @private - */ - SearchService.prototype._currentChange; - /** - * @type {?} - * @private - */ - SearchService.prototype._observerTotal; - /** - * @type {?} - * @private - */ - SearchService.prototype._totalChange; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var SearchService = /** @class */ (function () { + function SearchService() { + this._observer = new rxjs.Subject(); + this._textChange = this._observer.asObservable(); + this._observerCurrent = new rxjs.Subject(); + this._currentChange = this._observerCurrent.asObservable(); + this._observerTotal = new rxjs.Subject(); + this._totalChange = this._observerTotal.asObservable(); + } + Object.defineProperty(SearchService.prototype, "textChange", { + get: /** + * @return {?} + */ + function () { + return this._textChange; + }, + enumerable: true, + configurable: true + }); + /** + * @param {?} text + * @return {?} + */ + SearchService.prototype.setText = /** + * @param {?} text + * @return {?} + */ + function (text) { + this._observer.next(text); + }; + Object.defineProperty(SearchService.prototype, "currentChange", { + get: /** + * @return {?} + */ + function () { + return this._currentChange; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(SearchService.prototype, "totalChange", { + get: /** + * @return {?} + */ + function () { + return this._totalChange; + }, + enumerable: true, + configurable: true + }); + /** + * @param {?} current + * @return {?} + */ + SearchService.prototype.setCurrent = /** + * @param {?} current + * @return {?} + */ + function (current) { + this._observerCurrent.next(current); + }; + /** + * @param {?} total + * @return {?} + */ + SearchService.prototype.setTotal = /** + * @param {?} total + * @return {?} + */ + function (total) { + this._observerTotal.next(total); + }; + return SearchService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + SearchService.prototype._observer; + /** + * @type {?} + * @private + */ + SearchService.prototype._textChange; + /** + * @type {?} + * @private + */ + SearchService.prototype._observerCurrent; + /** + * @type {?} + * @private + */ + SearchService.prototype._currentChange; + /** + * @type {?} + * @private + */ + SearchService.prototype._observerTotal; + /** + * @type {?} + * @private + */ + SearchService.prototype._totalChange; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var SearchComponent = /** @class */ (function () { - function SearchComponent(_searchService) { - var _this = this; - this._searchService = _searchService; - this.hidePanel = new core.EventEmitter(false); - this.current = 0; - this.total = 0; - _searchService.totalChange.subscribe((/** - * @param {?} total - * @return {?} - */ - function (total) { - _this.total = total; - if (total !== 0) { - _this.current = 1; - } - else { - _this.current = 0; - } - _this._searchService.setCurrent(_this.current); - })); - } - /** - * @return {?} - */ - SearchComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - }; - /** - * @param {?} text - * @return {?} - */ - SearchComponent.prototype.setText = /** - * @param {?} text - * @return {?} - */ - function (text) { - this._searchService.setText(text); - }; - /** - * @return {?} - */ - SearchComponent.prototype.hide = /** - * @return {?} - */ - function () { - this.setText(''); - this.hidePanel.emit(true); - }; - /** - * @return {?} - */ - SearchComponent.prototype.prev = /** - * @return {?} - */ - function () { - if (this.current > 1) { - this.current--; - this._searchService.setCurrent(this.current); - } - }; - /** - * @return {?} - */ - SearchComponent.prototype.next = /** - * @return {?} - */ - function () { - if (this.current < this.total) { - this.current++; - this._searchService.setCurrent(this.current); - } - }; - /** - * @return {?} - */ - SearchComponent.prototype.ngAfterViewInit = /** - * @return {?} - */ - function () { - this.textElement.nativeElement.focus(); - }; - SearchComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-search', - template: "
\n \n
{{current}} of {{total}}
\n \n \n \n \n \n \n
\n", - styles: [".gd-nav-search-btn{margin:3px 0 4px}.gd-nav-search-cancel{color:#fff;font-size:14px;width:37px}.gd-search-count{color:#959da5;font-size:12px;position:absolute;right:148px;top:14px}.gd-nav-search-container{background-color:#3e4e5a;width:410px;position:fixed;left:50%;top:60px;z-index:2;-webkit-transform:translate(-50%,0);transform:translate(-50%,0);display:-webkit-box;display:flex}.gd-search-input{float:left;height:30px;width:267px;font-size:14px;color:#6e6e6e;border:1px solid #25c2d4;margin:7px 0 7px 7px;box-sizing:border-box;padding:6px 0 5px 9px}input[type=text]::-ms-clear{display:none}@media (max-width:1037px){.gd-search-input{width:231px;height:30px;margin:7px 0 7px 5px}.gd-search-count{position:absolute;left:193px;top:15px}.gd-nav-search-container{width:100%}}"] - }] } - ]; - /** @nocollapse */ - SearchComponent.ctorParameters = function () { return [ - { type: SearchService } - ]; }; - SearchComponent.propDecorators = { - hidePanel: [{ type: core.Output }], - textElement: [{ type: core.ViewChild, args: ['text', { - static: true - },] }] - }; - return SearchComponent; - }()); - if (false) { - /** @type {?} */ - SearchComponent.prototype.hidePanel; - /** @type {?} */ - SearchComponent.prototype.current; - /** @type {?} */ - SearchComponent.prototype.total; - /** @type {?} */ - SearchComponent.prototype.textElement; - /** - * @type {?} - * @private - */ - SearchComponent.prototype._searchService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var SearchComponent = /** @class */ (function () { + function SearchComponent(_searchService) { + var _this = this; + this._searchService = _searchService; + this.hidePanel = new core.EventEmitter(false); + this.current = 0; + this.total = 0; + _searchService.totalChange.subscribe((/** + * @param {?} total + * @return {?} + */ + function (total) { + _this.total = total; + if (total !== 0) { + _this.current = 1; + } + else { + _this.current = 0; + } + _this._searchService.setCurrent(_this.current); + })); + } + /** + * @return {?} + */ + SearchComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + }; + /** + * @param {?} text + * @return {?} + */ + SearchComponent.prototype.setText = /** + * @param {?} text + * @return {?} + */ + function (text) { + this._searchService.setText(text); + }; + /** + * @return {?} + */ + SearchComponent.prototype.hide = /** + * @return {?} + */ + function () { + this.setText(''); + this.hidePanel.emit(true); + }; + /** + * @return {?} + */ + SearchComponent.prototype.prev = /** + * @return {?} + */ + function () { + if (this.current > 1) { + this.current--; + this._searchService.setCurrent(this.current); + } + }; + /** + * @return {?} + */ + SearchComponent.prototype.next = /** + * @return {?} + */ + function () { + if (this.current < this.total) { + this.current++; + this._searchService.setCurrent(this.current); + } + }; + /** + * @return {?} + */ + SearchComponent.prototype.ngAfterViewInit = /** + * @return {?} + */ + function () { + this.textElement.nativeElement.focus(); + }; + SearchComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-search', + template: "
\r\n \r\n
{{current}} of {{total}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n", + styles: [".gd-nav-search-btn{margin:3px 0 4px}.gd-nav-search-cancel{color:#fff;font-size:14px;width:37px}.gd-search-count{color:#959da5;font-size:12px;position:absolute;right:148px;top:14px}.gd-nav-search-container{background-color:#3e4e5a;width:410px;position:fixed;left:50%;top:60px;z-index:2;transform:translate(-50%,0);display:flex}.gd-search-input{float:left;height:30px;width:267px;font-size:14px;color:#6e6e6e;border:1px solid #25c2d4;margin:7px 0 7px 7px;box-sizing:border-box;padding:6px 0 5px 9px}input[type=text]::-ms-clear{display:none}@media (max-width:1037px){.gd-search-input{width:231px;height:30px;margin:7px 0 7px 5px}.gd-search-count{position:absolute;left:193px;top:15px}.gd-nav-search-container{width:100%}}"] + }] } + ]; + /** @nocollapse */ + SearchComponent.ctorParameters = function () { return [ + { type: SearchService } + ]; }; + SearchComponent.propDecorators = { + hidePanel: [{ type: core.Output }], + textElement: [{ type: core.ViewChild, args: ['text', { + static: true + },] }] + }; + return SearchComponent; + }()); + if (false) { + /** @type {?} */ + SearchComponent.prototype.hidePanel; + /** @type {?} */ + SearchComponent.prototype.current; + /** @type {?} */ + SearchComponent.prototype.total; + /** @type {?} */ + SearchComponent.prototype.textElement; + /** + * @type {?} + * @private + */ + SearchComponent.prototype._searchService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** @type {?} */ - var $$6 = jquery; - var SearchableDirective = /** @class */ (function () { - function SearchableDirective(_elementRef, _searchService, _highlight, _zoomService) { - var _this = this; - this._elementRef = _elementRef; - this._searchService = _searchService; - this._highlight = _highlight; - this._zoomService = _zoomService; - this.current = 0; - this.total = 0; - this.zoom = 100; - _searchService.currentChange.subscribe((/** - * @param {?} current - * @return {?} - */ - function (current) { - _this.current = current; - if (_this.current !== 0) { - _this.moveToCurrent(); - } - })); - _searchService.textChange.subscribe((/** - * @param {?} text - * @return {?} - */ - function (text) { - _this.text = text; - _this.highlightSearch(); - })); - this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom; - _zoomService.zoomChange.subscribe((/** - * @param {?} val - * @return {?} - */ - function (val) { - _this.zoom = val ? val : _this.zoom; - })); - } - /** - * @private - * @return {?} - */ - SearchableDirective.prototype.highlightSearch = /** - * @private - * @return {?} - */ - function () { - /** @type {?} */ - var el = this._elementRef ? this._elementRef.nativeElement : null; - if (el) { - this.cleanHighlight(el); - if (this.text) { - this.highlightEl(el); - /** @type {?} */ - var count = el.querySelectorAll('.gd-highlight').length; - this.total = count; - } - else { - this.total = 0; - } - this._searchService.setTotal(this.total); - } - }; - /** - * @private - * @return {?} - */ - SearchableDirective.prototype.moveToCurrent = /** - * @private - * @return {?} - */ - function () { - if (this.current === 0) { - return; - } - /** @type {?} */ - var currentZoom = this.getZoom(); - /** @type {?} */ - var el = this._elementRef ? this._elementRef.nativeElement : null; - if (el) { - el.querySelectorAll('.gd-highlight-select').forEach((/** - * @param {?} value - * @return {?} - */ - function (value) { - $$6(value).removeClass('gd-highlight-select'); - })); - /** @type {?} */ - var currentEl = el.querySelectorAll('.gd-highlight')[this.current - 1]; - $$6(currentEl).addClass('gd-highlight-select'); - if (currentEl) { - /** @type {?} */ - var options = { - left: 0, - top: ($$6(currentEl).offset().top) + el.parentElement.parentElement.scrollTop - 150, - }; - // using polyfill - el.parentElement.parentElement.scroll(options); - } - } - }; - /** - * @private - * @param {?} el - * @return {?} - */ - SearchableDirective.prototype.highlightEl = /** - * @private - * @param {?} el - * @return {?} - */ - function (el) { - /** @type {?} */ - var textNodes = $$6(el).find('*').contents().filter((/** - * @return {?} - */ - function () { - /** @type {?} */ - var nodeName = this.parentElement.nodeName.toLowerCase(); - /** @type {?} */ - var checkClass = ((/** @type {?} */ (this))).classList ? !((/** @type {?} */ (this))).classList.contains('gd-highlight') : true; - return this.nodeType === 3 && - this.textContent.trim().length !== 0 && - nodeName !== 'style' && - nodeName !== 'title' && - nodeName !== 'body' && - nodeName !== 'script' && - checkClass; - })); - /** @type {?} */ - var text = this.text; - /** @type {?} */ - var highlight = this._highlight; - textNodes.each((/** - * @return {?} - */ - function () { - /** @type {?} */ - var $this = $$6(this); - /** @type {?} */ - var content = $this.text(); - content = highlight.transform(content, text); - $this.replaceWith(content); - })); - el.normalize(); - }; - /** - * @private - * @param {?} el - * @return {?} - */ - SearchableDirective.prototype.cleanHighlight = /** - * @private - * @param {?} el - * @return {?} - */ - function (el) { - /** @type {?} */ - var nodeListOf = el.querySelectorAll('.gd-highlight'); - for (var i = 0; i < nodeListOf.length; i++) { - /** @type {?} */ - var element = nodeListOf.item(i); - element.replaceWith(((/** @type {?} */ (element))).innerText); - } - el.normalize(); - }; - /** - * @private - * @return {?} - */ - SearchableDirective.prototype.getZoom = /** - * @private - * @return {?} - */ - function () { - return this.zoom / 100; - }; - SearchableDirective.decorators = [ - { type: core.Directive, args: [{ - selector: '[gdSearchable]' - },] } - ]; - /** @nocollapse */ - SearchableDirective.ctorParameters = function () { return [ - { type: core.ElementRef }, - { type: SearchService }, - { type: HighlightSearchPipe }, - { type: ZoomService } - ]; }; - return SearchableDirective; - }()); - if (false) { - /** @type {?} */ - SearchableDirective.prototype.text; - /** @type {?} */ - SearchableDirective.prototype.current; - /** @type {?} */ - SearchableDirective.prototype.total; - /** - * @type {?} - * @private - */ - SearchableDirective.prototype.zoom; - /** - * @type {?} - * @private - */ - SearchableDirective.prototype._elementRef; - /** - * @type {?} - * @private - */ - SearchableDirective.prototype._searchService; - /** - * @type {?} - * @private - */ - SearchableDirective.prototype._highlight; - /** - * @type {?} - * @private - */ - SearchableDirective.prototype._zoomService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** @type {?} */ + var $$6 = jquery; + var SearchableDirective = /** @class */ (function () { + function SearchableDirective(_elementRef, _searchService, _highlight, _zoomService) { + var _this = this; + this._elementRef = _elementRef; + this._searchService = _searchService; + this._highlight = _highlight; + this._zoomService = _zoomService; + this.current = 0; + this.total = 0; + this.zoom = 100; + _searchService.currentChange.subscribe((/** + * @param {?} current + * @return {?} + */ + function (current) { + _this.current = current; + if (_this.current !== 0) { + _this.moveToCurrent(); + } + })); + _searchService.textChange.subscribe((/** + * @param {?} text + * @return {?} + */ + function (text) { + _this.text = text; + _this.highlightSearch(); + })); + this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom; + _zoomService.zoomChange.subscribe((/** + * @param {?} val + * @return {?} + */ + function (val) { + _this.zoom = val ? val : _this.zoom; + })); + } + /** + * @private + * @return {?} + */ + SearchableDirective.prototype.highlightSearch = /** + * @private + * @return {?} + */ + function () { + /** @type {?} */ + var el = this._elementRef ? this._elementRef.nativeElement : null; + if (el) { + this.cleanHighlight(el); + if (this.text) { + this.highlightEl(el); + /** @type {?} */ + var count = el.querySelectorAll('.gd-highlight').length; + this.total = count; + } + else { + this.total = 0; + } + this._searchService.setTotal(this.total); + } + }; + /** + * @private + * @return {?} + */ + SearchableDirective.prototype.moveToCurrent = /** + * @private + * @return {?} + */ + function () { + if (this.current === 0) { + return; + } + /** @type {?} */ + var currentZoom = this.getZoom(); + /** @type {?} */ + var el = this._elementRef ? this._elementRef.nativeElement : null; + if (el) { + el.querySelectorAll('.gd-highlight-select').forEach((/** + * @param {?} value + * @return {?} + */ + function (value) { + $$6(value).removeClass('gd-highlight-select'); + })); + /** @type {?} */ + var currentEl = el.querySelectorAll('.gd-highlight')[this.current - 1]; + $$6(currentEl).addClass('gd-highlight-select'); + if (currentEl) { + /** @type {?} */ + var options = { + left: 0, + top: ($$6(currentEl).offset().top) + el.parentElement.parentElement.scrollTop - 150, + }; + // using polyfill + el.parentElement.parentElement.scroll(options); + } + } + }; + /** + * @private + * @param {?} el + * @return {?} + */ + SearchableDirective.prototype.highlightEl = /** + * @private + * @param {?} el + * @return {?} + */ + function (el) { + /** @type {?} */ + var textNodes = $$6(el).find('*').contents().filter((/** + * @return {?} + */ + function () { + /** @type {?} */ + var nodeName = this.parentElement.nodeName.toLowerCase(); + /** @type {?} */ + var checkClass = ((/** @type {?} */ (this))).classList ? !((/** @type {?} */ (this))).classList.contains('gd-highlight') : true; + return this.nodeType === 3 && + this.textContent.trim().length !== 0 && + nodeName !== 'style' && + nodeName !== 'title' && + nodeName !== 'body' && + nodeName !== 'script' && + checkClass; + })); + /** @type {?} */ + var text = this.text; + /** @type {?} */ + var highlight = this._highlight; + textNodes.each((/** + * @return {?} + */ + function () { + /** @type {?} */ + var $this = $$6(this); + /** @type {?} */ + var content = $this.text(); + content = highlight.transform(content, text); + $this.replaceWith(content); + })); + el.normalize(); + }; + /** + * @private + * @param {?} el + * @return {?} + */ + SearchableDirective.prototype.cleanHighlight = /** + * @private + * @param {?} el + * @return {?} + */ + function (el) { + /** @type {?} */ + var nodeListOf = el.querySelectorAll('.gd-highlight'); + for (var i = 0; i < nodeListOf.length; i++) { + /** @type {?} */ + var element = nodeListOf.item(i); + element.replaceWith(((/** @type {?} */ (element))).innerText); + } + el.normalize(); + }; + /** + * @private + * @return {?} + */ + SearchableDirective.prototype.getZoom = /** + * @private + * @return {?} + */ + function () { + return this.zoom / 100; + }; + SearchableDirective.decorators = [ + { type: core.Directive, args: [{ + selector: '[gdSearchable]' + },] } + ]; + /** @nocollapse */ + SearchableDirective.ctorParameters = function () { return [ + { type: core.ElementRef }, + { type: SearchService }, + { type: HighlightSearchPipe }, + { type: ZoomService } + ]; }; + return SearchableDirective; + }()); + if (false) { + /** @type {?} */ + SearchableDirective.prototype.text; + /** @type {?} */ + SearchableDirective.prototype.current; + /** @type {?} */ + SearchableDirective.prototype.total; + /** + * @type {?} + * @private + */ + SearchableDirective.prototype.zoom; + /** + * @type {?} + * @private + */ + SearchableDirective.prototype._elementRef; + /** + * @type {?} + * @private + */ + SearchableDirective.prototype._searchService; + /** + * @type {?} + * @private + */ + SearchableDirective.prototype._highlight; + /** + * @type {?} + * @private + */ + SearchableDirective.prototype._zoomService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var TabbedToolbarsComponent = /** @class */ (function () { - function TabbedToolbarsComponent() { - } - /** - * @return {?} - */ - TabbedToolbarsComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - }; - TabbedToolbarsComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-tabbed-toolbars', - template: "
\n \n \n
\n", - styles: [".top-panel{background:#3e4e5a;display:-webkit-box;display:flex;width:100%;height:90px}.top-panel ::ng-deep .logo{height:30px;font-size:16px}@media (max-width:1037px){.top-panel{height:60px}.top-panel ::ng-deep .logo{height:60px}}"] - }] } - ]; - /** @nocollapse */ - TabbedToolbarsComponent.ctorParameters = function () { return []; }; - TabbedToolbarsComponent.propDecorators = { - logo: [{ type: core.Input }], - icon: [{ type: core.Input }] - }; - return TabbedToolbarsComponent; - }()); - if (false) { - /** @type {?} */ - TabbedToolbarsComponent.prototype.logo; - /** @type {?} */ - TabbedToolbarsComponent.prototype.icon; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var TabbedToolbarsComponent = /** @class */ (function () { + function TabbedToolbarsComponent() { + } + /** + * @return {?} + */ + TabbedToolbarsComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + }; + TabbedToolbarsComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-tabbed-toolbars', + template: "
\r\n \r\n \r\n
\r\n", + styles: [".top-panel{background:#3e4e5a;display:flex;width:100%;height:90px}.top-panel ::ng-deep .logo{height:30px;font-size:16px}@media (max-width:1037px){.top-panel{height:60px}.top-panel ::ng-deep .logo{height:60px}}"] + }] } + ]; + /** @nocollapse */ + TabbedToolbarsComponent.ctorParameters = function () { return []; }; + TabbedToolbarsComponent.propDecorators = { + logo: [{ type: core.Input }], + icon: [{ type: core.Input }] + }; + return TabbedToolbarsComponent; + }()); + if (false) { + /** @type {?} */ + TabbedToolbarsComponent.prototype.logo; + /** @type {?} */ + TabbedToolbarsComponent.prototype.icon; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var TabActivatorService = /** @class */ (function () { - function TabActivatorService() { - this._observer = new rxjs.Subject(); - this._activeTabChange = this._observer.asObservable(); - } - Object.defineProperty(TabActivatorService.prototype, "activeTabChange", { - get: /** - * @return {?} - */ - function () { - return this._activeTabChange; - }, - enumerable: true, - configurable: true - }); - /** - * @param {?} tabId - * @return {?} - */ - TabActivatorService.prototype.changeActiveTab = /** - * @param {?} tabId - * @return {?} - */ - function (tabId) { - this._observer.next(tabId); - }; - return TabActivatorService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - TabActivatorService.prototype._observer; - /** - * @type {?} - * @private - */ - TabActivatorService.prototype._activeTabChange; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var TabActivatorService = /** @class */ (function () { + function TabActivatorService() { + this._observer = new rxjs.Subject(); + this._activeTabChange = this._observer.asObservable(); + } + Object.defineProperty(TabActivatorService.prototype, "activeTabChange", { + get: /** + * @return {?} + */ + function () { + return this._activeTabChange; + }, + enumerable: true, + configurable: true + }); + /** + * @param {?} tabId + * @return {?} + */ + TabActivatorService.prototype.changeActiveTab = /** + * @param {?} tabId + * @return {?} + */ + function (tabId) { + this._observer.next(tabId); + }; + return TabActivatorService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + TabActivatorService.prototype._observer; + /** + * @type {?} + * @private + */ + TabActivatorService.prototype._activeTabChange; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var TabComponent = /** @class */ (function () { - function TabComponent(_tabActivatorService) { - var _this = this; - this._tabActivatorService = _tabActivatorService; - this.disabled = false; - this.active = false; - this.content = true; - this._tabActivatorService.activeTabChange.subscribe((/** - * @param {?} tabId - * @return {?} - */ - function (tabId) { - _this.activation(tabId); - })); - } - /** - * @private - * @param {?} tabId - * @return {?} - */ - TabComponent.prototype.activation = /** - * @private - * @param {?} tabId - * @return {?} - */ - function (tabId) { - if (this.id === tabId) { - this.active = true; - } - else { - this.active = false; - } - }; - /** - * @return {?} - */ - TabComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - }; - /** - * @return {?} - */ - TabComponent.prototype.selectTab = /** - * @return {?} - */ - function () { - if (this.disabled) { - return; - } - this._tabActivatorService.changeActiveTab(this.id); - }; - TabComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-tab', - template: "
\n
{{tabTitle}}
\n \n
\n
\n \n
\n", - styles: [".tab-content{height:60px;position:absolute;background-color:#fff;width:100%;left:0;line-height:60px;display:none;z-index:9}.tab-content ::ng-deep .toolbar-panel{height:60px}.tab-content.active{display:-webkit-box;display:flex}.gd-tab{text-align:center;font-size:11px;color:#e5e5e5;height:30px;line-height:30px;cursor:pointer;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center}.gd-tab .icon{display:none;font-size:14px}.gd-tab .title{margin:auto 23px}.gd-tab.active{background-color:#fff;color:#3e4e5a;font-weight:700}@media (max-width:1037px){.gd-tab{height:60px;line-height:60px;width:60px}.gd-tab .title{display:none}.gd-tab .icon{display:block;font-size:22px}}"] - }] } - ]; - /** @nocollapse */ - TabComponent.ctorParameters = function () { return [ - { type: TabActivatorService } - ]; }; - TabComponent.propDecorators = { - id: [{ type: core.Input }], - tabTitle: [{ type: core.Input }], - icon: [{ type: core.Input }], - disabled: [{ type: core.Input }], - active: [{ type: core.Input }], - content: [{ type: core.Input }] - }; - return TabComponent; - }()); - if (false) { - /** @type {?} */ - TabComponent.prototype.id; - /** @type {?} */ - TabComponent.prototype.tabTitle; - /** @type {?} */ - TabComponent.prototype.icon; - /** @type {?} */ - TabComponent.prototype.disabled; - /** @type {?} */ - TabComponent.prototype.active; - /** @type {?} */ - TabComponent.prototype.content; - /** - * @type {?} - * @private - */ - TabComponent.prototype._tabActivatorService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var TabComponent = /** @class */ (function () { + function TabComponent(_tabActivatorService) { + var _this = this; + this._tabActivatorService = _tabActivatorService; + this.disabled = false; + this.active = false; + this.content = true; + this._tabActivatorService.activeTabChange.subscribe((/** + * @param {?} tabId + * @return {?} + */ + function (tabId) { + _this.activation(tabId); + })); + } + /** + * @private + * @param {?} tabId + * @return {?} + */ + TabComponent.prototype.activation = /** + * @private + * @param {?} tabId + * @return {?} + */ + function (tabId) { + if (this.id === tabId) { + this.active = true; + } + else { + this.active = false; + } + }; + /** + * @return {?} + */ + TabComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + }; + /** + * @return {?} + */ + TabComponent.prototype.selectTab = /** + * @return {?} + */ + function () { + if (this.disabled) { + return; + } + this._tabActivatorService.changeActiveTab(this.id); + }; + TabComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-tab', + template: "
\r\n
{{tabTitle}}
\r\n \r\n
\r\n
\r\n \r\n
\r\n", + styles: [".tab-content{height:60px;position:absolute;background-color:#fff;width:100%;left:0;line-height:60px;display:none;z-index:9}.tab-content ::ng-deep .toolbar-panel{height:60px}.tab-content.active{display:flex}.gd-tab{text-align:center;font-size:11px;color:#e5e5e5;height:30px;line-height:30px;cursor:pointer;display:flex;align-items:center;justify-content:center}.gd-tab .icon{display:none;font-size:14px}.gd-tab .title{margin:auto 23px}.gd-tab.active{background-color:#fff;color:#3e4e5a;font-weight:700}@media (max-width:1037px){.gd-tab{height:60px;line-height:60px;width:60px}.gd-tab .title{display:none}.gd-tab .icon{display:block;font-size:22px}}"] + }] } + ]; + /** @nocollapse */ + TabComponent.ctorParameters = function () { return [ + { type: TabActivatorService } + ]; }; + TabComponent.propDecorators = { + id: [{ type: core.Input }], + tabTitle: [{ type: core.Input }], + icon: [{ type: core.Input }], + disabled: [{ type: core.Input }], + active: [{ type: core.Input }], + content: [{ type: core.Input }] + }; + return TabComponent; + }()); + if (false) { + /** @type {?} */ + TabComponent.prototype.id; + /** @type {?} */ + TabComponent.prototype.tabTitle; + /** @type {?} */ + TabComponent.prototype.icon; + /** @type {?} */ + TabComponent.prototype.disabled; + /** @type {?} */ + TabComponent.prototype.active; + /** @type {?} */ + TabComponent.prototype.content; + /** + * @type {?} + * @private + */ + TabComponent.prototype._tabActivatorService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var TabsComponent = /** @class */ (function () { - function TabsComponent() { - } - TabsComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-tabs', - template: "
\n \n
\n", - styles: [".gd-tabs{display:-webkit-box;display:flex}"] - }] } - ]; - /** @nocollapse */ - TabsComponent.ctorParameters = function () { return []; }; - return TabsComponent; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var TabsComponent = /** @class */ (function () { + function TabsComponent() { + } + TabsComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-tabs', + template: "
\r\n \r\n
\r\n", + styles: [".gd-tabs{display:flex}"] + }] } + ]; + /** @nocollapse */ + TabsComponent.ctorParameters = function () { return []; }; + return TabsComponent; }()); - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var Formatting = /** @class */ (function () { - function Formatting(fontSize, color, bgColor, bold, italic, underline, font, strikeout, align, list) { - this.fontSize = fontSize; - this.color = color; - this.bgColor = bgColor; - this.bold = bold; - this.italic = italic; - this.underline = underline; - this.font = font; - this.strikeout = strikeout; - this.align = align; - this.list = list; - } - /** - * @return {?} - */ - Formatting.default = /** - * @return {?} - */ - function () { - return new Formatting(10, '#000000', '#FFFFFF', false, false, false, 'Arial', false, "", ""); - }; - return Formatting; - }()); - if (false) { - /** @type {?} */ - Formatting.prototype.bold; - /** @type {?} */ - Formatting.prototype.italic; - /** @type {?} */ - Formatting.prototype.underline; - /** @type {?} */ - Formatting.prototype.fontSize; - /** @type {?} */ - Formatting.prototype.color; - /** @type {?} */ - Formatting.prototype.bgColor; - /** @type {?} */ - Formatting.prototype.font; - /** @type {?} */ - Formatting.prototype.strikeout; - /** @type {?} */ - Formatting.prototype.align; - /** @type {?} */ - Formatting.prototype.list; - } - var FormattingService = /** @class */ (function () { - function FormattingService() { - this._observerBold = new rxjs.Subject(); - this._formatBoldChange = this._observerBold.asObservable(); - this._observerUnderline = new rxjs.Subject(); - this._formatUnderlineChange = this._observerUnderline.asObservable(); - this._observerUndo = new rxjs.Subject(); - this._undo = this._observerUndo.asObservable(); - this._observerRedo = new rxjs.Subject(); - this._redo = this._observerRedo.asObservable(); - this._observerItalic = new rxjs.Subject(); - this._formatItalicChange = this._observerItalic.asObservable(); - this._observerColor = new rxjs.Subject(); - this._formatColorChange = this._observerColor.asObservable(); - this._observerBgColor = new rxjs.Subject(); - this._formatBgColorChange = this._observerBgColor.asObservable(); - this._observerFontSize = new rxjs.Subject(); - this._formatFontSizeChange = this._observerFontSize.asObservable(); - this._observerFont = new rxjs.Subject(); - this._formatFontChange = this._observerFont.asObservable(); - this._observerStrikeout = new rxjs.Subject(); - this._formatStrikeoutChange = this._observerStrikeout.asObservable(); - this._observerAlign = new rxjs.Subject(); - this._formatAlignChange = this._observerAlign.asObservable(); - this._observerList = new rxjs.Subject(); - this._formatListChange = this._observerList.asObservable(); - } - Object.defineProperty(FormattingService.prototype, "formatBoldChange", { - get: /** - * @return {?} - */ - function () { - return this._formatBoldChange; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(FormattingService.prototype, "formatUnderlineChange", { - get: /** - * @return {?} - */ - function () { - return this._formatUnderlineChange; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(FormattingService.prototype, "formatColorChange", { - get: /** - * @return {?} - */ - function () { - return this._formatColorChange; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(FormattingService.prototype, "formatBgColorChange", { - get: /** - * @return {?} - */ - function () { - return this._formatBgColorChange; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(FormattingService.prototype, "formatFontSizeChange", { - get: /** - * @return {?} - */ - function () { - return this._formatFontSizeChange; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(FormattingService.prototype, "formatFontChange", { - get: /** - * @return {?} - */ - function () { - return this._formatFontChange; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(FormattingService.prototype, "undo", { - get: /** - * @return {?} - */ - function () { - return this._undo; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(FormattingService.prototype, "redo", { - get: /** - * @return {?} - */ - function () { - return this._redo; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(FormattingService.prototype, "formatItalicChange", { - get: /** - * @return {?} - */ - function () { - return this._formatItalicChange; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(FormattingService.prototype, "formatStrikeoutChange", { - get: /** - * @return {?} - */ - function () { - return this._formatStrikeoutChange; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(FormattingService.prototype, "formatAlignChange", { - get: /** - * @return {?} - */ - function () { - return this._formatAlignChange; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(FormattingService.prototype, "formatListChange", { - get: /** - * @return {?} - */ - function () { - return this._formatListChange; - }, - enumerable: true, - configurable: true - }); - /** - * @param {?} val - * @return {?} - */ - FormattingService.createFontSizeOption = /** - * @param {?} val - * @return {?} - */ - function (val) { - return { value: val, name: val + 'px', separator: false }; - }; - /** - * @return {?} - */ - FormattingService.getFontSizeOptions = /** - * @return {?} - */ - function () { - return [ - FormattingService.createFontSizeOption(8), - FormattingService.createFontSizeOption(10), - FormattingService.createFontSizeOption(12), - FormattingService.createFontSizeOption(14), - FormattingService.createFontSizeOption(16), - FormattingService.createFontSizeOption(18), - FormattingService.createFontSizeOption(20), - FormattingService.createFontSizeOption(22), - FormattingService.createFontSizeOption(24), - ]; - }; - /** - * @param {?} val - * @return {?} - */ - FormattingService.createFontOption = /** - * @param {?} val - * @return {?} - */ - function (val) { - return { value: val, name: val, separator: false }; - }; - /** - * @return {?} - */ - FormattingService.getFontOptions = /** - * @return {?} - */ - function () { - var _this = this; - /** @type {?} */ - var fonts = ["Arial", "Calibri", "Century Gothic", "Comic Sans", "Consolas", "Courier", "Dejavu Sans", "Dejavu Serif", "Georgia", "Gill Sans", "Helvetica", "Impact", "Lucida Sans", - "Myriad Pro", "Open Sans", "Palatino", "Tahoma", "Times New Roman", "Trebuchet"]; - /** @type {?} */ - var fontOptions = []; - fonts.forEach((/** - * @param {?} font - * @return {?} - */ - function (font) { - fontOptions.push(_this.createFontOption(font)); - })); - return fontOptions; - }; - /** - * @param {?} $event - * @return {?} - */ - FormattingService.prototype.changeFormatFontSize = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - this._observerFontSize.next($event); - }; - /** - * @param {?} bold - * @return {?} - */ - FormattingService.prototype.changeFormatBold = /** - * @param {?} bold - * @return {?} - */ - function (bold) { - this._observerBold.next(bold); - }; - /** - * @param {?} underline - * @return {?} - */ - FormattingService.prototype.changeFormatUnderline = /** - * @param {?} underline - * @return {?} - */ - function (underline) { - this._observerUnderline.next(underline); - }; - /** - * @return {?} - */ - FormattingService.prototype.Undo = /** - * @return {?} - */ - function () { - this._observerUndo.next(); - }; - /** - * @return {?} - */ - FormattingService.prototype.Redo = /** - * @return {?} - */ - function () { - this._observerRedo.next(); - }; - /** - * @param {?} italic - * @return {?} - */ - FormattingService.prototype.changeFormatItalic = /** - * @param {?} italic - * @return {?} - */ - function (italic) { - this._observerItalic.next(italic); - }; - /** - * @param {?} color - * @return {?} - */ - FormattingService.prototype.changeFormatColor = /** - * @param {?} color - * @return {?} - */ - function (color) { - this._observerColor.next(color); - }; - /** - * @param {?} bgcolor - * @return {?} - */ - FormattingService.prototype.changeFormatBgColor = /** - * @param {?} bgcolor - * @return {?} - */ - function (bgcolor) { - this._observerBgColor.next(bgcolor); - }; - /** - * @param {?} font - * @return {?} - */ - FormattingService.prototype.changeFormatFont = /** - * @param {?} font - * @return {?} - */ - function (font) { - this._observerFont.next(font); - }; - /** - * @param {?} strikeout - * @return {?} - */ - FormattingService.prototype.changeFormatStrikeout = /** - * @param {?} strikeout - * @return {?} - */ - function (strikeout) { - this._observerStrikeout.next(strikeout); - }; - /** - * @param {?} align - * @return {?} - */ - FormattingService.prototype.changeFormatAlign = /** - * @param {?} align - * @return {?} - */ - function (align) { - this._observerAlign.next(align); - }; - /** - * @param {?} list - * @return {?} - */ - FormattingService.prototype.changeFormatList = /** - * @param {?} list - * @return {?} - */ - function (list) { - this._observerList.next(list); - }; - return FormattingService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - FormattingService.prototype._observerBold; - /** - * @type {?} - * @private - */ - FormattingService.prototype._formatBoldChange; - /** - * @type {?} - * @private - */ - FormattingService.prototype._observerUnderline; - /** - * @type {?} - * @private - */ - FormattingService.prototype._formatUnderlineChange; - /** - * @type {?} - * @private - */ - FormattingService.prototype._observerUndo; - /** - * @type {?} - * @private - */ - FormattingService.prototype._undo; - /** - * @type {?} - * @private - */ - FormattingService.prototype._observerRedo; - /** - * @type {?} - * @private - */ - FormattingService.prototype._redo; - /** - * @type {?} - * @private - */ - FormattingService.prototype._observerItalic; - /** - * @type {?} - * @private - */ - FormattingService.prototype._formatItalicChange; - /** - * @type {?} - * @private - */ - FormattingService.prototype._observerColor; - /** - * @type {?} - * @private - */ - FormattingService.prototype._formatColorChange; - /** - * @type {?} - * @private - */ - FormattingService.prototype._observerBgColor; - /** - * @type {?} - * @private - */ - FormattingService.prototype._formatBgColorChange; - /** - * @type {?} - * @private - */ - FormattingService.prototype._observerFontSize; - /** - * @type {?} - * @private - */ - FormattingService.prototype._formatFontSizeChange; - /** - * @type {?} - * @private - */ - FormattingService.prototype._observerFont; - /** - * @type {?} - * @private - */ - FormattingService.prototype._formatFontChange; - /** - * @type {?} - * @private - */ - FormattingService.prototype._observerStrikeout; - /** - * @type {?} - * @private - */ - FormattingService.prototype._formatStrikeoutChange; - /** - * @type {?} - * @private - */ - FormattingService.prototype._observerAlign; - /** - * @type {?} - * @private - */ - FormattingService.prototype._formatAlignChange; - /** - * @type {?} - * @private - */ - FormattingService.prototype._observerList; - /** - * @type {?} - * @private - */ - FormattingService.prototype._formatListChange; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var Formatting = /** @class */ (function () { + function Formatting(fontSize, color, bgColor, bold, italic, underline, font, strikeout, align, list) { + this.fontSize = fontSize; + this.color = color; + this.bgColor = bgColor; + this.bold = bold; + this.italic = italic; + this.underline = underline; + this.font = font; + this.strikeout = strikeout; + this.align = align; + this.list = list; + } + /** + * @return {?} + */ + Formatting.default = /** + * @return {?} + */ + function () { + return new Formatting(10, '#000000', '#FFFFFF', false, false, false, 'Arial', false, "", ""); + }; + return Formatting; + }()); + if (false) { + /** @type {?} */ + Formatting.prototype.bold; + /** @type {?} */ + Formatting.prototype.italic; + /** @type {?} */ + Formatting.prototype.underline; + /** @type {?} */ + Formatting.prototype.fontSize; + /** @type {?} */ + Formatting.prototype.color; + /** @type {?} */ + Formatting.prototype.bgColor; + /** @type {?} */ + Formatting.prototype.font; + /** @type {?} */ + Formatting.prototype.strikeout; + /** @type {?} */ + Formatting.prototype.align; + /** @type {?} */ + Formatting.prototype.list; + } + var FormattingService = /** @class */ (function () { + function FormattingService() { + this._observerBold = new rxjs.Subject(); + this._formatBoldChange = this._observerBold.asObservable(); + this._observerUnderline = new rxjs.Subject(); + this._formatUnderlineChange = this._observerUnderline.asObservable(); + this._observerUndo = new rxjs.Subject(); + this._undo = this._observerUndo.asObservable(); + this._observerRedo = new rxjs.Subject(); + this._redo = this._observerRedo.asObservable(); + this._observerItalic = new rxjs.Subject(); + this._formatItalicChange = this._observerItalic.asObservable(); + this._observerColor = new rxjs.Subject(); + this._formatColorChange = this._observerColor.asObservable(); + this._observerBgColor = new rxjs.Subject(); + this._formatBgColorChange = this._observerBgColor.asObservable(); + this._observerFontSize = new rxjs.Subject(); + this._formatFontSizeChange = this._observerFontSize.asObservable(); + this._observerFont = new rxjs.Subject(); + this._formatFontChange = this._observerFont.asObservable(); + this._observerStrikeout = new rxjs.Subject(); + this._formatStrikeoutChange = this._observerStrikeout.asObservable(); + this._observerAlign = new rxjs.Subject(); + this._formatAlignChange = this._observerAlign.asObservable(); + this._observerList = new rxjs.Subject(); + this._formatListChange = this._observerList.asObservable(); + } + Object.defineProperty(FormattingService.prototype, "formatBoldChange", { + get: /** + * @return {?} + */ + function () { + return this._formatBoldChange; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(FormattingService.prototype, "formatUnderlineChange", { + get: /** + * @return {?} + */ + function () { + return this._formatUnderlineChange; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(FormattingService.prototype, "formatColorChange", { + get: /** + * @return {?} + */ + function () { + return this._formatColorChange; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(FormattingService.prototype, "formatBgColorChange", { + get: /** + * @return {?} + */ + function () { + return this._formatBgColorChange; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(FormattingService.prototype, "formatFontSizeChange", { + get: /** + * @return {?} + */ + function () { + return this._formatFontSizeChange; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(FormattingService.prototype, "formatFontChange", { + get: /** + * @return {?} + */ + function () { + return this._formatFontChange; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(FormattingService.prototype, "undo", { + get: /** + * @return {?} + */ + function () { + return this._undo; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(FormattingService.prototype, "redo", { + get: /** + * @return {?} + */ + function () { + return this._redo; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(FormattingService.prototype, "formatItalicChange", { + get: /** + * @return {?} + */ + function () { + return this._formatItalicChange; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(FormattingService.prototype, "formatStrikeoutChange", { + get: /** + * @return {?} + */ + function () { + return this._formatStrikeoutChange; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(FormattingService.prototype, "formatAlignChange", { + get: /** + * @return {?} + */ + function () { + return this._formatAlignChange; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(FormattingService.prototype, "formatListChange", { + get: /** + * @return {?} + */ + function () { + return this._formatListChange; + }, + enumerable: true, + configurable: true + }); + /** + * @param {?} val + * @return {?} + */ + FormattingService.createFontSizeOption = /** + * @param {?} val + * @return {?} + */ + function (val) { + return { value: val, name: val + 'px', separator: false }; + }; + /** + * @return {?} + */ + FormattingService.getFontSizeOptions = /** + * @return {?} + */ + function () { + return [ + FormattingService.createFontSizeOption(8), + FormattingService.createFontSizeOption(10), + FormattingService.createFontSizeOption(12), + FormattingService.createFontSizeOption(14), + FormattingService.createFontSizeOption(16), + FormattingService.createFontSizeOption(18), + FormattingService.createFontSizeOption(20), + FormattingService.createFontSizeOption(22), + FormattingService.createFontSizeOption(24), + ]; + }; + /** + * @param {?} val + * @return {?} + */ + FormattingService.createFontOption = /** + * @param {?} val + * @return {?} + */ + function (val) { + return { value: val, name: val, separator: false }; + }; + /** + * @return {?} + */ + FormattingService.getFontOptions = /** + * @return {?} + */ + function () { + var _this = this; + /** @type {?} */ + var fonts = ["Arial", "Calibri", "Century Gothic", "Comic Sans", "Consolas", "Courier", "Dejavu Sans", "Dejavu Serif", "Georgia", "Gill Sans", "Helvetica", "Impact", "Lucida Sans", + "Myriad Pro", "Open Sans", "Palatino", "Tahoma", "Times New Roman", "Trebuchet"]; + /** @type {?} */ + var fontOptions = []; + fonts.forEach((/** + * @param {?} font + * @return {?} + */ + function (font) { + fontOptions.push(_this.createFontOption(font)); + })); + return fontOptions; + }; + /** + * @param {?} $event + * @return {?} + */ + FormattingService.prototype.changeFormatFontSize = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + this._observerFontSize.next($event); + }; + /** + * @param {?} bold + * @return {?} + */ + FormattingService.prototype.changeFormatBold = /** + * @param {?} bold + * @return {?} + */ + function (bold) { + this._observerBold.next(bold); + }; + /** + * @param {?} underline + * @return {?} + */ + FormattingService.prototype.changeFormatUnderline = /** + * @param {?} underline + * @return {?} + */ + function (underline) { + this._observerUnderline.next(underline); + }; + /** + * @return {?} + */ + FormattingService.prototype.Undo = /** + * @return {?} + */ + function () { + this._observerUndo.next(); + }; + /** + * @return {?} + */ + FormattingService.prototype.Redo = /** + * @return {?} + */ + function () { + this._observerRedo.next(); + }; + /** + * @param {?} italic + * @return {?} + */ + FormattingService.prototype.changeFormatItalic = /** + * @param {?} italic + * @return {?} + */ + function (italic) { + this._observerItalic.next(italic); + }; + /** + * @param {?} color + * @return {?} + */ + FormattingService.prototype.changeFormatColor = /** + * @param {?} color + * @return {?} + */ + function (color) { + this._observerColor.next(color); + }; + /** + * @param {?} bgcolor + * @return {?} + */ + FormattingService.prototype.changeFormatBgColor = /** + * @param {?} bgcolor + * @return {?} + */ + function (bgcolor) { + this._observerBgColor.next(bgcolor); + }; + /** + * @param {?} font + * @return {?} + */ + FormattingService.prototype.changeFormatFont = /** + * @param {?} font + * @return {?} + */ + function (font) { + this._observerFont.next(font); + }; + /** + * @param {?} strikeout + * @return {?} + */ + FormattingService.prototype.changeFormatStrikeout = /** + * @param {?} strikeout + * @return {?} + */ + function (strikeout) { + this._observerStrikeout.next(strikeout); + }; + /** + * @param {?} align + * @return {?} + */ + FormattingService.prototype.changeFormatAlign = /** + * @param {?} align + * @return {?} + */ + function (align) { + this._observerAlign.next(align); + }; + /** + * @param {?} list + * @return {?} + */ + FormattingService.prototype.changeFormatList = /** + * @param {?} list + * @return {?} + */ + function (list) { + this._observerList.next(list); + }; + return FormattingService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + FormattingService.prototype._observerBold; + /** + * @type {?} + * @private + */ + FormattingService.prototype._formatBoldChange; + /** + * @type {?} + * @private + */ + FormattingService.prototype._observerUnderline; + /** + * @type {?} + * @private + */ + FormattingService.prototype._formatUnderlineChange; + /** + * @type {?} + * @private + */ + FormattingService.prototype._observerUndo; + /** + * @type {?} + * @private + */ + FormattingService.prototype._undo; + /** + * @type {?} + * @private + */ + FormattingService.prototype._observerRedo; + /** + * @type {?} + * @private + */ + FormattingService.prototype._redo; + /** + * @type {?} + * @private + */ + FormattingService.prototype._observerItalic; + /** + * @type {?} + * @private + */ + FormattingService.prototype._formatItalicChange; + /** + * @type {?} + * @private + */ + FormattingService.prototype._observerColor; + /** + * @type {?} + * @private + */ + FormattingService.prototype._formatColorChange; + /** + * @type {?} + * @private + */ + FormattingService.prototype._observerBgColor; + /** + * @type {?} + * @private + */ + FormattingService.prototype._formatBgColorChange; + /** + * @type {?} + * @private + */ + FormattingService.prototype._observerFontSize; + /** + * @type {?} + * @private + */ + FormattingService.prototype._formatFontSizeChange; + /** + * @type {?} + * @private + */ + FormattingService.prototype._observerFont; + /** + * @type {?} + * @private + */ + FormattingService.prototype._formatFontChange; + /** + * @type {?} + * @private + */ + FormattingService.prototype._observerStrikeout; + /** + * @type {?} + * @private + */ + FormattingService.prototype._formatStrikeoutChange; + /** + * @type {?} + * @private + */ + FormattingService.prototype._observerAlign; + /** + * @type {?} + * @private + */ + FormattingService.prototype._formatAlignChange; + /** + * @type {?} + * @private + */ + FormattingService.prototype._observerList; + /** + * @type {?} + * @private + */ + FormattingService.prototype._formatListChange; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** @type {?} */ - var DEFAULT_COLORS = [ - '#000000', '#434343', '#666666', '#999999', '#B7B7B7', '#CCCCCC', '#D9D9D9', '#EFEFEF', '#F3F3F3', '#FFFFFF', - '#980000', '#FF0000', '#FF9900', '#FFFF00', '#00FF00', '#00FFFF', '#4986E8', '#0000FF', '#9900FF', '#FF00FF', - '#E6B8AF', '#F4CCCC', '#FDE5CD', '#FFF2CC', '#D9EAD3', '#D0E0E2', '#C9DAF8', '#CFE2F3', '#D9D2E9', '#EAD1DC', - '#DD7E6B', '#EA9899', '#F9CB9C', '#FFE59A', '#B7D7A8', '#A2C4C9', '#A4C2F4', '#9FC5E8', '#B4A7D7', '#D5A6BD', - '#CC4125', '#E06666', '#F6B26B', '#FFD966', '#92C47D', '#75A5AF', '#6D9EEB', '#6FA9DB', '#8E7CC3', '#C27BA0', - '#A61C00', '#CC0000', '#E69138', '#F2C131', '#6AA84F', '#45818E', '#3C78D8', '#3C85C6', '#674EA7', '#A64D79', - '#85200B', '#990000', '#B45F05', '#BF9000', '#37761D', '#144F5C', '#1254CC', '#0A5394', '#351C75', '#741B47', - '#5B0F00', '#660000', '#783F03', '#7F6000', '#284E13', '#0B343D', '#1B4586', '#063763', '#20124D', '#4C1030', - ]; - var ColorPickerComponent = /** @class */ (function () { - function ColorPickerComponent() { - this.isOpen = false; - this.selectedColor = new core.EventEmitter(); - this.closeOutside = new core.EventEmitter(); - this.colors = DEFAULT_COLORS; - this.white = '#FFFFFF'; - } - /** - * @return {?} - */ - ColorPickerComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - }; - /** - * @param {?} $event - * @param {?} color - * @return {?} - */ - ColorPickerComponent.prototype.select = /** - * @param {?} $event - * @param {?} color - * @return {?} - */ - function ($event, color) { - $event.preventDefault(); - $event.stopPropagation(); - this.selectedColor.emit(color); - }; - /** - * @return {?} - */ - ColorPickerComponent.prototype.close = /** - * @return {?} - */ - function () { - this.isOpen = false; - this.closeOutside.emit(true); - }; - ColorPickerComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-color-picker', - template: "
\n
\n
\n
\n
\n", - styles: [".bcPicker-picker{border:1px;border-radius:100%}.bcPicker-palette{width:250px;background-color:#fdfdfd;z-index:999;box-shadow:0 0 5px #efefef;display:-webkit-box;display:flex;flex-wrap:wrap;-webkit-box-pack:center;justify-content:center}.bcPicker-palette>.bcPicker-color{width:18px;height:18px;margin:2px;cursor:pointer}"] - }] } - ]; - /** @nocollapse */ - ColorPickerComponent.ctorParameters = function () { return []; }; - ColorPickerComponent.propDecorators = { - isOpen: [{ type: core.Input }], - selectedColor: [{ type: core.Output }], - closeOutside: [{ type: core.Output }] - }; - return ColorPickerComponent; - }()); - if (false) { - /** @type {?} */ - ColorPickerComponent.prototype.isOpen; - /** @type {?} */ - ColorPickerComponent.prototype.selectedColor; - /** @type {?} */ - ColorPickerComponent.prototype.closeOutside; - /** @type {?} */ - ColorPickerComponent.prototype.colors; - /** @type {?} */ - ColorPickerComponent.prototype.white; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** @type {?} */ + var DEFAULT_COLORS = [ + '#000000', '#434343', '#666666', '#999999', '#B7B7B7', '#CCCCCC', '#D9D9D9', '#EFEFEF', '#F3F3F3', '#FFFFFF', + '#980000', '#FF0000', '#FF9900', '#FFFF00', '#00FF00', '#00FFFF', '#4986E8', '#0000FF', '#9900FF', '#FF00FF', + '#E6B8AF', '#F4CCCC', '#FDE5CD', '#FFF2CC', '#D9EAD3', '#D0E0E2', '#C9DAF8', '#CFE2F3', '#D9D2E9', '#EAD1DC', + '#DD7E6B', '#EA9899', '#F9CB9C', '#FFE59A', '#B7D7A8', '#A2C4C9', '#A4C2F4', '#9FC5E8', '#B4A7D7', '#D5A6BD', + '#CC4125', '#E06666', '#F6B26B', '#FFD966', '#92C47D', '#75A5AF', '#6D9EEB', '#6FA9DB', '#8E7CC3', '#C27BA0', + '#A61C00', '#CC0000', '#E69138', '#F2C131', '#6AA84F', '#45818E', '#3C78D8', '#3C85C6', '#674EA7', '#A64D79', + '#85200B', '#990000', '#B45F05', '#BF9000', '#37761D', '#144F5C', '#1254CC', '#0A5394', '#351C75', '#741B47', + '#5B0F00', '#660000', '#783F03', '#7F6000', '#284E13', '#0B343D', '#1B4586', '#063763', '#20124D', '#4C1030', + ]; + var ColorPickerComponent = /** @class */ (function () { + function ColorPickerComponent() { + this.isOpen = false; + this.selectedColor = new core.EventEmitter(); + this.closeOutside = new core.EventEmitter(); + this.colors = DEFAULT_COLORS; + this.white = '#FFFFFF'; + } + /** + * @return {?} + */ + ColorPickerComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + }; + /** + * @param {?} $event + * @param {?} color + * @return {?} + */ + ColorPickerComponent.prototype.select = /** + * @param {?} $event + * @param {?} color + * @return {?} + */ + function ($event, color) { + $event.preventDefault(); + $event.stopPropagation(); + this.selectedColor.emit(color); + }; + /** + * @return {?} + */ + ColorPickerComponent.prototype.close = /** + * @return {?} + */ + function () { + this.isOpen = false; + this.closeOutside.emit(true); + }; + ColorPickerComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-color-picker', + template: "
\r\n
\r\n
\r\n
\r\n
\r\n", + styles: [".bcPicker-picker{border:1px;border-radius:100%}.bcPicker-palette{width:250px;background-color:#fdfdfd;z-index:999;box-shadow:0 0 5px #efefef;display:flex;flex-wrap:wrap;justify-content:center}.bcPicker-palette>.bcPicker-color{width:18px;height:18px;margin:2px;cursor:pointer}"] + }] } + ]; + /** @nocollapse */ + ColorPickerComponent.ctorParameters = function () { return []; }; + ColorPickerComponent.propDecorators = { + isOpen: [{ type: core.Input }], + selectedColor: [{ type: core.Output }], + closeOutside: [{ type: core.Output }] + }; + return ColorPickerComponent; + }()); + if (false) { + /** @type {?} */ + ColorPickerComponent.prototype.isOpen; + /** @type {?} */ + ColorPickerComponent.prototype.selectedColor; + /** @type {?} */ + ColorPickerComponent.prototype.closeOutside; + /** @type {?} */ + ColorPickerComponent.prototype.colors; + /** @type {?} */ + ColorPickerComponent.prototype.white; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var BackFormattingService = /** @class */ (function (_super) { - __extends(BackFormattingService, _super); - function BackFormattingService() { - return _super.call(this) || this; - } - BackFormattingService.decorators = [ - { type: core.Injectable, args: [{ - providedIn: 'root' - },] } - ]; - /** @nocollapse */ - BackFormattingService.ctorParameters = function () { return []; }; - /** @nocollapse */ BackFormattingService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function BackFormattingService_Factory() { return new BackFormattingService(); }, token: BackFormattingService, providedIn: "root" }); - return BackFormattingService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var BackFormattingService = /** @class */ (function (_super) { + __extends(BackFormattingService, _super); + function BackFormattingService() { + return _super.call(this) || this; + } + BackFormattingService.decorators = [ + { type: core.Injectable, args: [{ + providedIn: 'root' + },] } + ]; + /** @nocollapse */ + BackFormattingService.ctorParameters = function () { return []; }; + /** @nocollapse */ BackFormattingService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function BackFormattingService_Factory() { return new BackFormattingService(); }, token: BackFormattingService, providedIn: "root" }); + return BackFormattingService; }(FormattingService)); - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var SelectionService = /** @class */ (function () { - function SelectionService() { - this.isIE = false || !!/(MSIE|Trident\/|Edge\/)/i.test(navigator.userAgent); - } - /** - * @return {?} - */ - SelectionService.prototype.restoreSelection = /** - * @return {?} - */ - function () { - if (this.selection && !this.selection.collapsed || this.isIE) { - this.putSelection(this.selection); - } - }; - /** - * @return {?} - */ - SelectionService.prototype.captureSelection = /** - * @return {?} - */ - function () { - /** @type {?} */ - var selection = window.getSelection(); - if (selection.rangeCount > 0) { - this.selection = selection.getRangeAt(0); - } - }; - /** - * @private - * @param {?} selection - * @return {?} - */ - SelectionService.prototype.putSelection = /** - * @private - * @param {?} selection - * @return {?} - */ - function (selection) { - /** @type {?} */ - var sel = window.getSelection(); - sel.removeAllRanges(); - sel.addRange(selection.cloneRange()); - }; - /** - * @return {?} - */ - SelectionService.prototype.refreshSelection = /** - * @return {?} - */ - function () { - this.captureSelection(); - this.restoreSelection(); - }; - SelectionService.decorators = [ - { type: core.Injectable, args: [{ - providedIn: 'root' - },] } - ]; - /** @nocollapse */ SelectionService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function SelectionService_Factory() { return new SelectionService(); }, token: SelectionService, providedIn: "root" }); - return SelectionService; - }()); - if (false) { - /** @type {?} */ - SelectionService.prototype.selection; - /** @type {?} */ - SelectionService.prototype.isIE; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var SelectionService = /** @class */ (function () { + function SelectionService() { + this.isIE = false || !!/(MSIE|Trident\/|Edge\/)/i.test(navigator.userAgent); + } + /** + * @return {?} + */ + SelectionService.prototype.restoreSelection = /** + * @return {?} + */ + function () { + if (this.selection && !this.selection.collapsed || this.isIE) { + this.putSelection(this.selection); + } + }; + /** + * @return {?} + */ + SelectionService.prototype.captureSelection = /** + * @return {?} + */ + function () { + /** @type {?} */ + var selection = window.getSelection(); + if (selection.rangeCount > 0) { + this.selection = selection.getRangeAt(0); + } + }; + /** + * @private + * @param {?} selection + * @return {?} + */ + SelectionService.prototype.putSelection = /** + * @private + * @param {?} selection + * @return {?} + */ + function (selection) { + /** @type {?} */ + var sel = window.getSelection(); + sel.removeAllRanges(); + sel.addRange(selection.cloneRange()); + }; + /** + * @return {?} + */ + SelectionService.prototype.refreshSelection = /** + * @return {?} + */ + function () { + this.captureSelection(); + this.restoreSelection(); + }; + SelectionService.decorators = [ + { type: core.Injectable, args: [{ + providedIn: 'root' + },] } + ]; + /** @nocollapse */ SelectionService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function SelectionService_Factory() { return new SelectionService(); }, token: SelectionService, providedIn: "root" }); + return SelectionService; + }()); + if (false) { + /** @type {?} */ + SelectionService.prototype.selection; + /** @type {?} */ + SelectionService.prototype.isIE; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** @type {?} */ - var $$7 = jquery; - var FormattingDirective = /** @class */ (function () { - function FormattingDirective(_formattingService, _backFormattingService, _selectionService) { - this._formattingService = _formattingService; - this._backFormattingService = _backFormattingService; - this._selectionService = _selectionService; - this.bold = false; - this.italic = false; - this.underline = false; - this.strikeout = false; - this.isIE = false; - this.isIE = /*@cc_on!@*/ false || !!/(MSIE|Trident\/|Edge\/)/i.test(navigator.userAgent); - } - /** - * @return {?} - */ - FormattingDirective.prototype.mouseup = /** - * @return {?} - */ - function () { - this.bold = document.queryCommandState("bold"); - this.strikeout = document.queryCommandState("strikeThrough"); - this.italic = document.queryCommandState("italic"); - this.bgColor = document.queryCommandValue("backColor"); - this.underline = document.queryCommandState("underline"); - this.align = this.checkJustify(); - this.list = this.checkList(); - //fix required by FireFox to get correct background color - if (this.bgColor === "transparent") { - this.bgColor = $$7(window.getSelection().focusNode.parentNode).css('background-color').toString(); - } - this.font = document.queryCommandValue("FontName").replace(/"/g, ''); - if (this.font.split(",").length > 1) { - this.font = this.font.split(",")[0]; - } - this.color = document.queryCommandValue("foreColor"); - this._backFormattingService.changeFormatBold(this.bold); - this._backFormattingService.changeFormatUnderline(this.underline); - this._backFormattingService.changeFormatItalic(this.italic); - this._backFormattingService.changeFormatColor(this.color); - this._backFormattingService.changeFormatBgColor(this.bgColor); - this._backFormattingService.changeFormatFontSize(this.reportFontSize()); - this._backFormattingService.changeFormatFont(this.font); - this._backFormattingService.changeFormatStrikeout(this.strikeout); - this._backFormattingService.changeFormatAlign(this.align); - this._backFormattingService.changeFormatList(this.list); - }; - /** - * @private - * @return {?} - */ - FormattingDirective.prototype.checkJustify = /** - * @private - * @return {?} - */ - function () { - /** @type {?} */ - var align = ""; - align = document.queryCommandState("justifyCenter") ? "center" : align; - align = document.queryCommandState("justifyFull") ? "full" : align; - align = document.queryCommandState("justifyLeft") ? "left" : align; - align = document.queryCommandState("justifyRight") ? "right" : align; - return align; - }; - /** - * @private - * @return {?} - */ - FormattingDirective.prototype.checkList = /** - * @private - * @return {?} - */ - function () { - /** @type {?} */ - var list = ""; - list = document.queryCommandState("insertUnorderedList") ? "unordered" : list; - list = document.queryCommandState("insertOrderedList") ? "ordered" : list; - return list; - }; - /** - * @return {?} - */ - FormattingDirective.prototype.reportFontSize = /** - * @return {?} - */ - function () { - /** @type {?} */ - var containerEl; - /** @type {?} */ - var sel; - if (window.getSelection) { - sel = window.getSelection(); - if (sel.rangeCount) { - containerEl = sel.getRangeAt(0).commonAncestorContainer; - // Make sure we have an element rather than a text node - if (containerEl.nodeType === 3) { - containerEl = containerEl.parentNode; - } - } - } - else if ((sel = document.getSelection()) && sel.type !== "Control") { - containerEl = sel.createRange().parentElement(); - } - if (containerEl) { - return parseInt(this.getComputedStyleProperty(containerEl, "fontSize").replace("px", ""), 10); - } - }; - /** - * @param {?} el - * @param {?} propName - * @return {?} - */ - FormattingDirective.prototype.getComputedStyleProperty = /** - * @param {?} el - * @param {?} propName - * @return {?} - */ - function (el, propName) { - if (window.getComputedStyle) { - return window.getComputedStyle(el, null)[propName]; - } - else if (el.currentStyle) { - return el.currentStyle[propName]; - } - }; - /** - * @return {?} - */ - FormattingDirective.prototype.ngOnInit = /** - * @return {?} - */ - function () { - var _this = this; - this._formattingService.undo.subscribe((/** - * @return {?} - */ - function () { - _this.toggleUndo(); - })); - this._formattingService.redo.subscribe((/** - * @return {?} - */ - function () { - _this.toggleRedo(); - })); - this._formattingService.formatBoldChange.subscribe((/** - * @param {?} bold - * @return {?} - */ - function (bold) { - _this.bold = bold; - _this.toggleBold(); - })); - this._formattingService.formatUnderlineChange.subscribe((/** - * @param {?} underline - * @return {?} - */ - function (underline) { - _this.underline = underline; - _this.toggleUnderline(); - })); - this._formattingService.formatItalicChange.subscribe((/** - * @param {?} italic - * @return {?} - */ - function (italic) { - _this.italic = italic; - _this.toggleItalic(); - })); - this._formattingService.formatColorChange.subscribe(((/** - * @param {?} color - * @return {?} - */ - function (color) { - _this.color = color; - _this.setColor(color); - }))); - this._formattingService.formatBgColorChange.subscribe(((/** - * @param {?} bgcolor - * @return {?} - */ - function (bgcolor) { - _this.bgColor = bgcolor; - _this.setBgColor(bgcolor); - }))); - this._formattingService.formatFontSizeChange.subscribe(((/** - * @param {?} fontSize - * @return {?} - */ - function (fontSize) { - _this.setFontSize(fontSize); - }))); - this._formattingService.formatFontChange.subscribe(((/** - * @param {?} font - * @return {?} - */ - function (font) { - _this.font = font; - _this.setFont(font); - }))); - this._formattingService.formatStrikeoutChange.subscribe((/** - * @param {?} strikeout - * @return {?} - */ - function (strikeout) { - _this.strikeout = strikeout; - _this.toggleStrikeout(); - })); - this._formattingService.formatAlignChange.subscribe((/** - * @param {?} align - * @return {?} - */ - function (align) { - _this.align = align; - _this.toggleAlign(_this.align); - })); - this._formattingService.formatListChange.subscribe((/** - * @param {?} list - * @return {?} - */ - function (list) { - /** @type {?} */ - var remove = _this.list === list; - _this.list = list; - _this.toggleList(_this.list, remove); - })); - }; - /** - * @private - * @return {?} - */ - FormattingDirective.prototype.toggleBold = /** - * @private - * @return {?} - */ - function () { - document.execCommand("bold"); - this._selectionService.refreshSelection(); - }; - /** - * @private - * @return {?} - */ - FormattingDirective.prototype.toggleUnderline = /** - * @private - * @return {?} - */ - function () { - document.execCommand("underline"); - this._selectionService.refreshSelection(); - }; - /** - * @private - * @return {?} - */ - FormattingDirective.prototype.toggleItalic = /** - * @private - * @return {?} - */ - function () { - document.execCommand("italic"); - this._selectionService.refreshSelection(); - }; - /** - * @private - * @param {?} bgColor - * @return {?} - */ - FormattingDirective.prototype.setBgColor = /** - * @private - * @param {?} bgColor - * @return {?} - */ - function (bgColor) { - document.execCommand("backColor", false, bgColor); - this._selectionService.refreshSelection(); - }; - /** - * @private - * @param {?} color - * @return {?} - */ - FormattingDirective.prototype.setColor = /** - * @private - * @param {?} color - * @return {?} - */ - function (color) { - document.execCommand("foreColor", false, color); - this._selectionService.refreshSelection(); - }; - /** - * @private - * @param {?} fontSize - * @return {?} - */ - FormattingDirective.prototype.setFontSize = /** - * @private - * @param {?} fontSize - * @return {?} - */ - function (fontSize) { - if (document.getSelection().toString()) { - /** @type {?} */ - var spanString = "" + - document.getSelection() + ""; - if (this.bold) { - spanString = "" + spanString + ""; - } - if (this.italic) { - spanString = "" + spanString + ""; - } - if (this.underline) { - spanString = "" + spanString + ""; - } - if (this.strikeout) { - spanString = "" + spanString + ""; - } - document.execCommand('insertHTML', false, spanString); - } - else { - document.execCommand("fontsize", false, "7"); - } - this._selectionService.refreshSelection(); - }; - /** - * @private - * @return {?} - */ - FormattingDirective.prototype.toggleUndo = /** - * @private - * @return {?} - */ - function () { - document.execCommand("undo"); - }; - /** - * @private - * @return {?} - */ - FormattingDirective.prototype.toggleRedo = /** - * @private - * @return {?} - */ - function () { - document.execCommand("redo"); - }; - /** - * @private - * @param {?} font - * @return {?} - */ - FormattingDirective.prototype.setFont = /** - * @private - * @param {?} font - * @return {?} - */ - function (font) { - document.execCommand("fontName", false, font); - this._selectionService.refreshSelection(); - }; - /** - * @private - * @return {?} - */ - FormattingDirective.prototype.toggleStrikeout = /** - * @private - * @return {?} - */ - function () { - document.execCommand("strikeThrough"); - this._selectionService.refreshSelection(); - }; - /** - * @private - * @param {?} align - * @return {?} - */ - FormattingDirective.prototype.toggleAlign = /** - * @private - * @param {?} align - * @return {?} - */ - function (align) { - if (this.isIE) { - this.toggleAlignIE(align); - return; - } - document.execCommand("styleWithCSS", false, 'true'); - switch (align) { - case 'center': - document.execCommand('justifyCenter'); - break; - case 'full': - document.execCommand('justifyFull'); - break; - case 'left': - document.execCommand('justifyLeft'); - break; - case 'right': - document.execCommand('justifyRight'); - break; - } - this._selectionService.refreshSelection(); - }; - /** - * @private - * @param {?} align - * @return {?} - */ - FormattingDirective.prototype.toggleAlignIE = /** - * @private - * @param {?} align - * @return {?} - */ - function (align) { - this._selectionService.restoreSelection(); - this._selectionService.captureSelection(); - /** @type {?} */ - var selection = window.getSelection().focusNode.parentNode.parentNode; - if (align === "full") { - align = "justify"; - } - $$7(selection).css("text-align", align); - this._selectionService.refreshSelection(); - }; - /** - * @private - * @param {?} list - * @param {?} remove - * @return {?} - */ - FormattingDirective.prototype.toggleList = /** - * @private - * @param {?} list - * @param {?} remove - * @return {?} - */ - function (list, remove) { - switch (list) { - case 'unordered': - document.execCommand('insertUnorderedList', remove); - break; - case 'ordered': - document.execCommand('insertOrderedList', remove); - break; - } - this._selectionService.refreshSelection(); - }; - FormattingDirective.decorators = [ - { type: core.Directive, args: [{ - selector: '[gdFormatting]' - },] } - ]; - /** @nocollapse */ - FormattingDirective.ctorParameters = function () { return [ - { type: FormattingService }, - { type: BackFormattingService }, - { type: SelectionService } - ]; }; - FormattingDirective.propDecorators = { - mouseup: [{ type: core.HostListener, args: ['mouseup',] }] - }; - return FormattingDirective; - }()); - if (false) { - /** - * @type {?} - * @private - */ - FormattingDirective.prototype.bold; - /** - * @type {?} - * @private - */ - FormattingDirective.prototype.italic; - /** - * @type {?} - * @private - */ - FormattingDirective.prototype.underline; - /** - * @type {?} - * @private - */ - FormattingDirective.prototype.color; - /** - * @type {?} - * @private - */ - FormattingDirective.prototype.bgColor; - /** - * @type {?} - * @private - */ - FormattingDirective.prototype.font; - /** - * @type {?} - * @private - */ - FormattingDirective.prototype.strikeout; - /** - * @type {?} - * @private - */ - FormattingDirective.prototype.align; - /** - * @type {?} - * @private - */ - FormattingDirective.prototype.list; - /** - * @type {?} - * @private - */ - FormattingDirective.prototype.isIE; - /** - * @type {?} - * @private - */ - FormattingDirective.prototype._formattingService; - /** - * @type {?} - * @private - */ - FormattingDirective.prototype._backFormattingService; - /** - * @type {?} - * @private - */ - FormattingDirective.prototype._selectionService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** @type {?} */ + var $$7 = jquery; + var FormattingDirective = /** @class */ (function () { + function FormattingDirective(_formattingService, _backFormattingService, _selectionService) { + this._formattingService = _formattingService; + this._backFormattingService = _backFormattingService; + this._selectionService = _selectionService; + this.bold = false; + this.italic = false; + this.underline = false; + this.strikeout = false; + this.isIE = false; + this.isIE = /*@cc_on!@*/ false || !!/(MSIE|Trident\/|Edge\/)/i.test(navigator.userAgent); + } + /** + * @return {?} + */ + FormattingDirective.prototype.mouseup = /** + * @return {?} + */ + function () { + this.bold = document.queryCommandState("bold"); + this.strikeout = document.queryCommandState("strikeThrough"); + this.italic = document.queryCommandState("italic"); + this.bgColor = document.queryCommandValue("backColor"); + this.underline = document.queryCommandState("underline"); + this.align = this.checkJustify(); + this.list = this.checkList(); + //fix required by FireFox to get correct background color + if (this.bgColor === "transparent") { + this.bgColor = $$7(window.getSelection().focusNode.parentNode).css('background-color').toString(); + } + this.font = document.queryCommandValue("FontName").replace(/"/g, ''); + if (this.font.split(",").length > 1) { + this.font = this.font.split(",")[0]; + } + this.color = document.queryCommandValue("foreColor"); + this._backFormattingService.changeFormatBold(this.bold); + this._backFormattingService.changeFormatUnderline(this.underline); + this._backFormattingService.changeFormatItalic(this.italic); + this._backFormattingService.changeFormatColor(this.color); + this._backFormattingService.changeFormatBgColor(this.bgColor); + this._backFormattingService.changeFormatFontSize(this.reportFontSize()); + this._backFormattingService.changeFormatFont(this.font); + this._backFormattingService.changeFormatStrikeout(this.strikeout); + this._backFormattingService.changeFormatAlign(this.align); + this._backFormattingService.changeFormatList(this.list); + }; + /** + * @private + * @return {?} + */ + FormattingDirective.prototype.checkJustify = /** + * @private + * @return {?} + */ + function () { + /** @type {?} */ + var align = ""; + align = document.queryCommandState("justifyCenter") ? "center" : align; + align = document.queryCommandState("justifyFull") ? "full" : align; + align = document.queryCommandState("justifyLeft") ? "left" : align; + align = document.queryCommandState("justifyRight") ? "right" : align; + return align; + }; + /** + * @private + * @return {?} + */ + FormattingDirective.prototype.checkList = /** + * @private + * @return {?} + */ + function () { + /** @type {?} */ + var list = ""; + list = document.queryCommandState("insertUnorderedList") ? "unordered" : list; + list = document.queryCommandState("insertOrderedList") ? "ordered" : list; + return list; + }; + /** + * @return {?} + */ + FormattingDirective.prototype.reportFontSize = /** + * @return {?} + */ + function () { + /** @type {?} */ + var containerEl; + /** @type {?} */ + var sel; + if (window.getSelection) { + sel = window.getSelection(); + if (sel.rangeCount) { + containerEl = sel.getRangeAt(0).commonAncestorContainer; + // Make sure we have an element rather than a text node + if (containerEl.nodeType === 3) { + containerEl = containerEl.parentNode; + } + } + } + else if ((sel = document.getSelection()) && sel.type !== "Control") { + containerEl = sel.createRange().parentElement(); + } + if (containerEl) { + return parseInt(this.getComputedStyleProperty(containerEl, "fontSize").replace("px", ""), 10); + } + }; + /** + * @param {?} el + * @param {?} propName + * @return {?} + */ + FormattingDirective.prototype.getComputedStyleProperty = /** + * @param {?} el + * @param {?} propName + * @return {?} + */ + function (el, propName) { + if (window.getComputedStyle) { + return window.getComputedStyle(el, null)[propName]; + } + else if (el.currentStyle) { + return el.currentStyle[propName]; + } + }; + /** + * @return {?} + */ + FormattingDirective.prototype.ngOnInit = /** + * @return {?} + */ + function () { + var _this = this; + this._formattingService.undo.subscribe((/** + * @return {?} + */ + function () { + _this.toggleUndo(); + })); + this._formattingService.redo.subscribe((/** + * @return {?} + */ + function () { + _this.toggleRedo(); + })); + this._formattingService.formatBoldChange.subscribe((/** + * @param {?} bold + * @return {?} + */ + function (bold) { + _this.bold = bold; + _this.toggleBold(); + })); + this._formattingService.formatUnderlineChange.subscribe((/** + * @param {?} underline + * @return {?} + */ + function (underline) { + _this.underline = underline; + _this.toggleUnderline(); + })); + this._formattingService.formatItalicChange.subscribe((/** + * @param {?} italic + * @return {?} + */ + function (italic) { + _this.italic = italic; + _this.toggleItalic(); + })); + this._formattingService.formatColorChange.subscribe(((/** + * @param {?} color + * @return {?} + */ + function (color) { + _this.color = color; + _this.setColor(color); + }))); + this._formattingService.formatBgColorChange.subscribe(((/** + * @param {?} bgcolor + * @return {?} + */ + function (bgcolor) { + _this.bgColor = bgcolor; + _this.setBgColor(bgcolor); + }))); + this._formattingService.formatFontSizeChange.subscribe(((/** + * @param {?} fontSize + * @return {?} + */ + function (fontSize) { + _this.setFontSize(fontSize); + }))); + this._formattingService.formatFontChange.subscribe(((/** + * @param {?} font + * @return {?} + */ + function (font) { + _this.font = font; + _this.setFont(font); + }))); + this._formattingService.formatStrikeoutChange.subscribe((/** + * @param {?} strikeout + * @return {?} + */ + function (strikeout) { + _this.strikeout = strikeout; + _this.toggleStrikeout(); + })); + this._formattingService.formatAlignChange.subscribe((/** + * @param {?} align + * @return {?} + */ + function (align) { + _this.align = align; + _this.toggleAlign(_this.align); + })); + this._formattingService.formatListChange.subscribe((/** + * @param {?} list + * @return {?} + */ + function (list) { + /** @type {?} */ + var remove = _this.list === list; + _this.list = list; + _this.toggleList(_this.list, remove); + })); + }; + /** + * @private + * @return {?} + */ + FormattingDirective.prototype.toggleBold = /** + * @private + * @return {?} + */ + function () { + document.execCommand("bold"); + this._selectionService.refreshSelection(); + }; + /** + * @private + * @return {?} + */ + FormattingDirective.prototype.toggleUnderline = /** + * @private + * @return {?} + */ + function () { + document.execCommand("underline"); + this._selectionService.refreshSelection(); + }; + /** + * @private + * @return {?} + */ + FormattingDirective.prototype.toggleItalic = /** + * @private + * @return {?} + */ + function () { + document.execCommand("italic"); + this._selectionService.refreshSelection(); + }; + /** + * @private + * @param {?} bgColor + * @return {?} + */ + FormattingDirective.prototype.setBgColor = /** + * @private + * @param {?} bgColor + * @return {?} + */ + function (bgColor) { + document.execCommand("backColor", false, bgColor); + this._selectionService.refreshSelection(); + }; + /** + * @private + * @param {?} color + * @return {?} + */ + FormattingDirective.prototype.setColor = /** + * @private + * @param {?} color + * @return {?} + */ + function (color) { + document.execCommand("foreColor", false, color); + this._selectionService.refreshSelection(); + }; + /** + * @private + * @param {?} fontSize + * @return {?} + */ + FormattingDirective.prototype.setFontSize = /** + * @private + * @param {?} fontSize + * @return {?} + */ + function (fontSize) { + if (document.getSelection().toString()) { + /** @type {?} */ + var spanString = "" + + document.getSelection() + ""; + if (this.bold) { + spanString = "" + spanString + ""; + } + if (this.italic) { + spanString = "" + spanString + ""; + } + if (this.underline) { + spanString = "" + spanString + ""; + } + if (this.strikeout) { + spanString = "" + spanString + ""; + } + document.execCommand('insertHTML', false, spanString); + } + else { + document.execCommand("fontsize", false, "7"); + } + this._selectionService.refreshSelection(); + }; + /** + * @private + * @return {?} + */ + FormattingDirective.prototype.toggleUndo = /** + * @private + * @return {?} + */ + function () { + document.execCommand("undo"); + }; + /** + * @private + * @return {?} + */ + FormattingDirective.prototype.toggleRedo = /** + * @private + * @return {?} + */ + function () { + document.execCommand("redo"); + }; + /** + * @private + * @param {?} font + * @return {?} + */ + FormattingDirective.prototype.setFont = /** + * @private + * @param {?} font + * @return {?} + */ + function (font) { + document.execCommand("fontName", false, font); + this._selectionService.refreshSelection(); + }; + /** + * @private + * @return {?} + */ + FormattingDirective.prototype.toggleStrikeout = /** + * @private + * @return {?} + */ + function () { + document.execCommand("strikeThrough"); + this._selectionService.refreshSelection(); + }; + /** + * @private + * @param {?} align + * @return {?} + */ + FormattingDirective.prototype.toggleAlign = /** + * @private + * @param {?} align + * @return {?} + */ + function (align) { + if (this.isIE) { + this.toggleAlignIE(align); + return; + } + document.execCommand("styleWithCSS", false, 'true'); + switch (align) { + case 'center': + document.execCommand('justifyCenter'); + break; + case 'full': + document.execCommand('justifyFull'); + break; + case 'left': + document.execCommand('justifyLeft'); + break; + case 'right': + document.execCommand('justifyRight'); + break; + } + this._selectionService.refreshSelection(); + }; + /** + * @private + * @param {?} align + * @return {?} + */ + FormattingDirective.prototype.toggleAlignIE = /** + * @private + * @param {?} align + * @return {?} + */ + function (align) { + this._selectionService.restoreSelection(); + this._selectionService.captureSelection(); + /** @type {?} */ + var selection = window.getSelection().focusNode.parentNode.parentNode; + if (align === "full") { + align = "justify"; + } + $$7(selection).css("text-align", align); + this._selectionService.refreshSelection(); + }; + /** + * @private + * @param {?} list + * @param {?} remove + * @return {?} + */ + FormattingDirective.prototype.toggleList = /** + * @private + * @param {?} list + * @param {?} remove + * @return {?} + */ + function (list, remove) { + switch (list) { + case 'unordered': + document.execCommand('insertUnorderedList', remove); + break; + case 'ordered': + document.execCommand('insertOrderedList', remove); + break; + } + this._selectionService.refreshSelection(); + }; + FormattingDirective.decorators = [ + { type: core.Directive, args: [{ + selector: '[gdFormatting]' + },] } + ]; + /** @nocollapse */ + FormattingDirective.ctorParameters = function () { return [ + { type: FormattingService }, + { type: BackFormattingService }, + { type: SelectionService } + ]; }; + FormattingDirective.propDecorators = { + mouseup: [{ type: core.HostListener, args: ['mouseup',] }] + }; + return FormattingDirective; + }()); + if (false) { + /** + * @type {?} + * @private + */ + FormattingDirective.prototype.bold; + /** + * @type {?} + * @private + */ + FormattingDirective.prototype.italic; + /** + * @type {?} + * @private + */ + FormattingDirective.prototype.underline; + /** + * @type {?} + * @private + */ + FormattingDirective.prototype.color; + /** + * @type {?} + * @private + */ + FormattingDirective.prototype.bgColor; + /** + * @type {?} + * @private + */ + FormattingDirective.prototype.font; + /** + * @type {?} + * @private + */ + FormattingDirective.prototype.strikeout; + /** + * @type {?} + * @private + */ + FormattingDirective.prototype.align; + /** + * @type {?} + * @private + */ + FormattingDirective.prototype.list; + /** + * @type {?} + * @private + */ + FormattingDirective.prototype.isIE; + /** + * @type {?} + * @private + */ + FormattingDirective.prototype._formattingService; + /** + * @type {?} + * @private + */ + FormattingDirective.prototype._backFormattingService; + /** + * @type {?} + * @private + */ + FormattingDirective.prototype._selectionService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var SuccessModalComponent = /** @class */ (function () { - function SuccessModalComponent() { - } - /** - * @return {?} - */ - SuccessModalComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - }; - SuccessModalComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-success-modal', - template: "\n
\n
\n \n \n
\n
\n
\n
\n
\n", - styles: [".check_mark{margin:47px auto}.sa-icon{width:80px;height:80px;border:4px solid gray;border-radius:50%;padding:0;position:relative;box-sizing:content-box}#gd-modal-success{display:-webkit-box;display:flex;overflow:hidden;width:469px;height:183px}.sa-icon.sa-success{border-color:#4caf50;-webkit-transform:scale(1.18);transform:scale(1.18)}.sa-icon.sa-success::after,.sa-icon.sa-success::before{content:'';position:absolute;width:60px;height:120px;background:#fff}.sa-icon.sa-success::before{border-radius:120px 0 0 120px;top:-7px;left:-33px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform-origin:60px 60px;transform-origin:60px 60px}.sa-icon.sa-success::after{border-radius:0 120px 120px 0;top:-11px;left:30px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform-origin:0 60px;transform-origin:0 60px}.sa-icon.sa-success .sa-placeholder{width:80px;height:80px;border:4px solid rgba(76,175,80,.5);border-radius:50%;box-sizing:content-box;position:absolute;left:-4px;top:-4px;z-index:2}.sa-icon.sa-success .sa-fix{width:5px;height:90px;background-color:#fff;position:absolute;left:28px;top:8px;z-index:1;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.sa-icon.sa-success.animate::after{-webkit-animation:4.25s ease-in rotatePlaceholder;animation:4.25s ease-in rotatePlaceholder}.animateSuccessTip{-webkit-animation:.75s animateSuccessTip;animation:.75s animateSuccessTip}.animateSuccessLong{-webkit-animation:.75s animateSuccessLong;animation:.75s animateSuccessLong}@-webkit-keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}@-webkit-keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}.sa-icon.sa-success .sa-line{height:5px;background-color:#4caf50;display:block;border-radius:2px;position:absolute;z-index:2}.sa-icon.sa-success .sa-line.sa-tip{width:25px;left:14px;top:46px;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.sa-icon.sa-success .sa-line.sa-long{width:47px;right:8px;top:38px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}@-webkit-keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@media (max-width:1037px){#gd-modal-success{left:50%;top:50%;position:relative;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}}"] - }] } - ]; - /** @nocollapse */ - SuccessModalComponent.ctorParameters = function () { return []; }; - return SuccessModalComponent; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var SuccessModalComponent = /** @class */ (function () { + function SuccessModalComponent() { + } + /** + * @return {?} + */ + SuccessModalComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + }; + SuccessModalComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-success-modal', + template: "\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n", + styles: [".check_mark{margin:47px auto}.sa-icon{width:80px;height:80px;border:4px solid gray;border-radius:50%;padding:0;position:relative;box-sizing:content-box}#gd-modal-success{display:flex;overflow:hidden;width:469px;height:183px}.sa-icon.sa-success{border-color:#4caf50;transform:scale(1.18)}.sa-icon.sa-success::after,.sa-icon.sa-success::before{content:'';position:absolute;width:60px;height:120px;background:#fff}.sa-icon.sa-success::before{border-radius:120px 0 0 120px;top:-7px;left:-33px;transform:rotate(-45deg);transform-origin:60px 60px}.sa-icon.sa-success::after{border-radius:0 120px 120px 0;top:-11px;left:30px;transform:rotate(-45deg);transform-origin:0 60px}.sa-icon.sa-success .sa-placeholder{width:80px;height:80px;border:4px solid rgba(76,175,80,.5);border-radius:50%;box-sizing:content-box;position:absolute;left:-4px;top:-4px;z-index:2}.sa-icon.sa-success .sa-fix{width:5px;height:90px;background-color:#fff;position:absolute;left:28px;top:8px;z-index:1;transform:rotate(-45deg)}.sa-icon.sa-success.animate::after{-webkit-animation:4.25s ease-in rotatePlaceholder;animation:4.25s ease-in rotatePlaceholder}.animateSuccessTip{-webkit-animation:.75s animateSuccessTip;animation:.75s animateSuccessTip}.animateSuccessLong{-webkit-animation:.75s animateSuccessLong;animation:.75s animateSuccessLong}@-webkit-keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}@-webkit-keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}.sa-icon.sa-success .sa-line{height:5px;background-color:#4caf50;display:block;border-radius:2px;position:absolute;z-index:2}.sa-icon.sa-success .sa-line.sa-tip{width:25px;left:14px;top:46px;transform:rotate(45deg)}.sa-icon.sa-success .sa-line.sa-long{width:47px;right:8px;top:38px;transform:rotate(-45deg)}@-webkit-keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@media (max-width:1037px){#gd-modal-success{left:50%;top:50%;position:relative;transform:translate(-50%,-50%)}}"] + }] } + ]; + /** @nocollapse */ + SuccessModalComponent.ctorParameters = function () { return []; }; + return SuccessModalComponent; }()); - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var EditHtmlService = /** @class */ (function () { - function EditHtmlService() { - this._observer = new rxjs.Subject(); - this._htmlContent = this._observer.asObservable(); - } - Object.defineProperty(EditHtmlService.prototype, "observer", { - get: /** - * @return {?} - */ - function () { - return this._observer; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(EditHtmlService.prototype, "htmlContent", { - get: /** - * @return {?} - */ - function () { - return this._htmlContent; - }, - enumerable: true, - configurable: true - }); - EditHtmlService.decorators = [ - { type: core.Injectable, args: [{ - providedIn: 'root' - },] } - ]; - /** @nocollapse */ - EditHtmlService.ctorParameters = function () { return []; }; - /** @nocollapse */ EditHtmlService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function EditHtmlService_Factory() { return new EditHtmlService(); }, token: EditHtmlService, providedIn: "root" }); - return EditHtmlService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - EditHtmlService.prototype._observer; - /** - * @type {?} - * @private - */ - EditHtmlService.prototype._htmlContent; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var EditHtmlService = /** @class */ (function () { + function EditHtmlService() { + this._observer = new rxjs.Subject(); + this._htmlContent = this._observer.asObservable(); + } + Object.defineProperty(EditHtmlService.prototype, "observer", { + get: /** + * @return {?} + */ + function () { + return this._observer; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(EditHtmlService.prototype, "htmlContent", { + get: /** + * @return {?} + */ + function () { + return this._htmlContent; + }, + enumerable: true, + configurable: true + }); + EditHtmlService.decorators = [ + { type: core.Injectable, args: [{ + providedIn: 'root' + },] } + ]; + /** @nocollapse */ + EditHtmlService.ctorParameters = function () { return []; }; + /** @nocollapse */ EditHtmlService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function EditHtmlService_Factory() { return new EditHtmlService(); }, token: EditHtmlService, providedIn: "root" }); + return EditHtmlService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + EditHtmlService.prototype._observer; + /** + * @type {?} + * @private + */ + EditHtmlService.prototype._htmlContent; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var EditorDirective = /** @class */ (function () { - function EditorDirective(_selectionService, _htmlService) { - this._selectionService = _selectionService; - this._htmlService = _htmlService; - this.isIE = false || !!/(MSIE|Trident\/|Edge\/)/i.test(navigator.userAgent); - } - /** - * @param {?} event - * @return {?} - */ - EditorDirective.prototype.onInput = /** - * @param {?} event - * @return {?} - */ - function (event) { - this.text = event.target; - if (this.isIE) { - if (this.text.innerHTML) { - /** @type {?} */ - var html = this.text.innerHTML.toString(); - this._htmlService.observer.next(html); - } - } - }; - /** - * @param {?} event - * @return {?} - */ - EditorDirective.prototype.onMouseleave = /** - * @param {?} event - * @return {?} - */ - function (event) { - this._selectionService.captureSelection(); - // this code is required to fix IE11 issue - it doesn't trigger blur event, since that we need to save updated HTML here - if (this.isIE) { - this._htmlService.observer.next(event.target.innerHTML.toString()); - } - }; - /** - * @param {?} event - * @return {?} - */ - EditorDirective.prototype.onBlur = /** - * @param {?} event - * @return {?} - */ - function (event) { - event.preventDefault(); - this._selectionService.restoreSelection(); - if (this.text.innerHTML) { - /** @type {?} */ - var html = this.text.innerHTML.toString(); - this._htmlService.observer.next(html); - } - else { - this._htmlService.observer.next(event.target.innerHTML.toString()); - } - }; - EditorDirective.decorators = [ - { type: core.Directive, args: [{ - selector: '[gdEditor]' - },] } - ]; - /** @nocollapse */ - EditorDirective.ctorParameters = function () { return [ - { type: SelectionService }, - { type: EditHtmlService } - ]; }; - EditorDirective.propDecorators = { - text: [{ type: core.Input }], - onInput: [{ type: core.HostListener, args: ['keyup', ['$event'],] }], - onMouseleave: [{ type: core.HostListener, args: ['mouseleave', ['$event'],] }], - onBlur: [{ type: core.HostListener, args: ['blur', ['$event'],] }] - }; - return EditorDirective; - }()); - if (false) { - /** @type {?} */ - EditorDirective.prototype.text; - /** - * @type {?} - * @private - */ - EditorDirective.prototype.isIE; - /** - * @type {?} - * @private - */ - EditorDirective.prototype._selectionService; - /** - * @type {?} - * @private - */ - EditorDirective.prototype._htmlService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var EditorDirective = /** @class */ (function () { + function EditorDirective(_selectionService, _htmlService) { + this._selectionService = _selectionService; + this._htmlService = _htmlService; + this.isIE = false || !!/(MSIE|Trident\/|Edge\/)/i.test(navigator.userAgent); + } + /** + * @param {?} event + * @return {?} + */ + EditorDirective.prototype.onInput = /** + * @param {?} event + * @return {?} + */ + function (event) { + this.text = event.target; + if (this.isIE) { + if (this.text.innerHTML) { + /** @type {?} */ + var html = this.text.innerHTML.toString(); + this._htmlService.observer.next(html); + } + } + }; + /** + * @param {?} event + * @return {?} + */ + EditorDirective.prototype.onMouseleave = /** + * @param {?} event + * @return {?} + */ + function (event) { + this._selectionService.captureSelection(); + // this code is required to fix IE11 issue - it doesn't trigger blur event, since that we need to save updated HTML here + if (this.isIE) { + this._htmlService.observer.next(event.target.innerHTML.toString()); + } + }; + /** + * @param {?} event + * @return {?} + */ + EditorDirective.prototype.onBlur = /** + * @param {?} event + * @return {?} + */ + function (event) { + event.preventDefault(); + this._selectionService.restoreSelection(); + if (this.text.innerHTML) { + /** @type {?} */ + var html = this.text.innerHTML.toString(); + this._htmlService.observer.next(html); + } + else { + this._htmlService.observer.next(event.target.innerHTML.toString()); + } + }; + EditorDirective.decorators = [ + { type: core.Directive, args: [{ + selector: '[gdEditor]' + },] } + ]; + /** @nocollapse */ + EditorDirective.ctorParameters = function () { return [ + { type: SelectionService }, + { type: EditHtmlService } + ]; }; + EditorDirective.propDecorators = { + text: [{ type: core.Input }], + onInput: [{ type: core.HostListener, args: ['keyup', ['$event'],] }], + onMouseleave: [{ type: core.HostListener, args: ['mouseleave', ['$event'],] }], + onBlur: [{ type: core.HostListener, args: ['blur', ['$event'],] }] + }; + return EditorDirective; + }()); + if (false) { + /** @type {?} */ + EditorDirective.prototype.text; + /** + * @type {?} + * @private + */ + EditorDirective.prototype.isIE; + /** + * @type {?} + * @private + */ + EditorDirective.prototype._selectionService; + /** + * @type {?} + * @private + */ + EditorDirective.prototype._htmlService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var LoadingMaskService = /** @class */ (function () { - function LoadingMaskService() { - this.onLoadingChanged = new core.EventEmitter(); - this.stopList = []; - this.requests = []; - this.stopList.push(Api.SAVE_TEXT); - this.stopList.push(Api.SAVE_OPTICAL_CODE); - this.stopList.push(Api.LOAD_DOCUMENT_PAGE); - this.stopList.push(Api.LOAD_THUMBNAILS); - this.stopList.push(Api.GET_FILE_STATUS); - this.stopList.push(Api.LOAD_PRINT); - } - /** - * @param {?} req - * @return {?} - */ - LoadingMaskService.prototype.onRequestStart = /** - * @param {?} req - * @return {?} - */ - function (req) { - /** @type {?} */ - var stop = this.stopList.find((/** - * @param {?} x - * @return {?} - */ - function (x) { return req.url.includes(x); })); - if (!stop) { - this.requests.push(req); - this.notify(); - } - }; - /** - * @param {?} req - * @return {?} - */ - LoadingMaskService.prototype.onRequestFinish = /** - * @param {?} req - * @return {?} - */ - function (req) { - /** @type {?} */ - var index = this.requests.indexOf(req); - if (index !== -1) { - this.requests.splice(index, 1); - } - this.notify(); - }; - /** - * @private - * @return {?} - */ - LoadingMaskService.prototype.notify = /** - * @private - * @return {?} - */ - function () { - this.onLoadingChanged.emit(this.requests.length !== 0); - }; - LoadingMaskService.decorators = [ - { type: core.Injectable } - ]; - /** @nocollapse */ - LoadingMaskService.ctorParameters = function () { return []; }; - return LoadingMaskService; - }()); - if (false) { - /** @type {?} */ - LoadingMaskService.prototype.onLoadingChanged; - /** - * @type {?} - * @private - */ - LoadingMaskService.prototype.stopList; - /** - * @type {?} - * @private - */ - LoadingMaskService.prototype.requests; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var LoadingMaskService = /** @class */ (function () { + function LoadingMaskService() { + this.onLoadingChanged = new core.EventEmitter(); + this.stopList = []; + this.requests = []; + this.stopList.push(Api.SAVE_TEXT); + this.stopList.push(Api.SAVE_OPTICAL_CODE); + this.stopList.push(Api.LOAD_DOCUMENT_PAGE); + this.stopList.push(Api.LOAD_THUMBNAILS); + this.stopList.push(Api.GET_FILE_STATUS); + this.stopList.push(Api.LOAD_PRINT); + } + /** + * @param {?} req + * @return {?} + */ + LoadingMaskService.prototype.onRequestStart = /** + * @param {?} req + * @return {?} + */ + function (req) { + /** @type {?} */ + var stop = this.stopList.find((/** + * @param {?} x + * @return {?} + */ + function (x) { return req.url.includes(x); })); + if (!stop) { + this.requests.push(req); + this.notify(); + } + }; + /** + * @param {?} req + * @return {?} + */ + LoadingMaskService.prototype.onRequestFinish = /** + * @param {?} req + * @return {?} + */ + function (req) { + /** @type {?} */ + var index = this.requests.indexOf(req); + if (index !== -1) { + this.requests.splice(index, 1); + } + this.notify(); + }; + /** + * @private + * @return {?} + */ + LoadingMaskService.prototype.notify = /** + * @private + * @return {?} + */ + function () { + this.onLoadingChanged.emit(this.requests.length !== 0); + }; + LoadingMaskService.decorators = [ + { type: core.Injectable } + ]; + /** @nocollapse */ + LoadingMaskService.ctorParameters = function () { return []; }; + return LoadingMaskService; + }()); + if (false) { + /** @type {?} */ + LoadingMaskService.prototype.onLoadingChanged; + /** + * @type {?} + * @private + */ + LoadingMaskService.prototype.stopList; + /** + * @type {?} + * @private + */ + LoadingMaskService.prototype.requests; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var LoadingMaskComponent = /** @class */ (function () { - function LoadingMaskComponent(_loadingMaskService) { - this._loadingMaskService = _loadingMaskService; - this.loadingMask = false; - } - /** - * @return {?} - */ - LoadingMaskComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - }; - /** - * @return {?} - */ - LoadingMaskComponent.prototype.ngAfterViewInit = /** - * @return {?} - */ - function () { - var _this = this; - this._loadingMaskService - .onLoadingChanged - .subscribe((/** - * @param {?} loading - * @return {?} - */ - function (loading) { return _this.loadingMask = loading; })); - }; - LoadingMaskComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-loading-mask', - template: "
\n
\n  Loading... Please wait.\n
\n
\n", - styles: [".loading-wrapper{background:rgba(0,0,0,.5);width:100%;height:100%;font-size:14px;color:#fff;position:fixed;top:0;left:0;z-index:99999}.loading-message{position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}"] - }] } - ]; - /** @nocollapse */ - LoadingMaskComponent.ctorParameters = function () { return [ - { type: LoadingMaskService } - ]; }; - LoadingMaskComponent.propDecorators = { - loadingMask: [{ type: core.Input }] - }; - return LoadingMaskComponent; - }()); - if (false) { - /** @type {?} */ - LoadingMaskComponent.prototype.loadingMask; - /** - * @type {?} - * @private - */ - LoadingMaskComponent.prototype._loadingMaskService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var LoadingMaskComponent = /** @class */ (function () { + function LoadingMaskComponent(_loadingMaskService) { + this._loadingMaskService = _loadingMaskService; + this.loadingMask = false; + } + /** + * @return {?} + */ + LoadingMaskComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + }; + /** + * @return {?} + */ + LoadingMaskComponent.prototype.ngAfterViewInit = /** + * @return {?} + */ + function () { + var _this = this; + this._loadingMaskService + .onLoadingChanged + .subscribe((/** + * @param {?} loading + * @return {?} + */ + function (loading) { return _this.loadingMask = loading; })); + }; + LoadingMaskComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-loading-mask', + template: "
\r\n
\r\n  Loading... Please wait.\r\n
\r\n
\r\n", + styles: [".loading-wrapper{background:rgba(0,0,0,.5);width:100%;height:100%;font-size:14px;color:#fff;position:fixed;top:0;left:0;z-index:99999}.loading-message{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}"] + }] } + ]; + /** @nocollapse */ + LoadingMaskComponent.ctorParameters = function () { return [ + { type: LoadingMaskService } + ]; }; + LoadingMaskComponent.propDecorators = { + loadingMask: [{ type: core.Input }] + }; + return LoadingMaskComponent; + }()); + if (false) { + /** @type {?} */ + LoadingMaskComponent.prototype.loadingMask; + /** + * @type {?} + * @private + */ + LoadingMaskComponent.prototype._loadingMaskService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var LoadingMaskInterceptorService = /** @class */ (function () { - function LoadingMaskInterceptorService(_loadingMaskService) { - this._loadingMaskService = _loadingMaskService; - } - /** - * @param {?} req - * @param {?} next - * @return {?} - */ - LoadingMaskInterceptorService.prototype.intercept = /** - * @param {?} req - * @param {?} next - * @return {?} - */ - function (req, next) { - var _this = this; - this._loadingMaskService.onRequestStart(req); - /** @type {?} */ - var callback = (/** - * @return {?} - */ - function () { return _this._loadingMaskService.onRequestFinish(req); }); - return next.handle(req).pipe(operators.finalize(callback)); - }; - LoadingMaskInterceptorService.decorators = [ - { type: core.Injectable, args: [{ - providedIn: 'root' - },] } - ]; - /** @nocollapse */ - LoadingMaskInterceptorService.ctorParameters = function () { return [ - { type: LoadingMaskService } - ]; }; - /** @nocollapse */ LoadingMaskInterceptorService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function LoadingMaskInterceptorService_Factory() { return new LoadingMaskInterceptorService(core.ɵɵinject(LoadingMaskService)); }, token: LoadingMaskInterceptorService, providedIn: "root" }); - return LoadingMaskInterceptorService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - LoadingMaskInterceptorService.prototype._loadingMaskService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var LoadingMaskInterceptorService = /** @class */ (function () { + function LoadingMaskInterceptorService(_loadingMaskService) { + this._loadingMaskService = _loadingMaskService; + } + /** + * @param {?} req + * @param {?} next + * @return {?} + */ + LoadingMaskInterceptorService.prototype.intercept = /** + * @param {?} req + * @param {?} next + * @return {?} + */ + function (req, next) { + var _this = this; + this._loadingMaskService.onRequestStart(req); + /** @type {?} */ + var callback = (/** + * @return {?} + */ + function () { return _this._loadingMaskService.onRequestFinish(req); }); + return next.handle(req).pipe(operators.finalize(callback)); + }; + LoadingMaskInterceptorService.decorators = [ + { type: core.Injectable, args: [{ + providedIn: 'root' + },] } + ]; + /** @nocollapse */ + LoadingMaskInterceptorService.ctorParameters = function () { return [ + { type: LoadingMaskService } + ]; }; + /** @nocollapse */ LoadingMaskInterceptorService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function LoadingMaskInterceptorService_Factory() { return new LoadingMaskInterceptorService(core.ɵɵinject(LoadingMaskService)); }, token: LoadingMaskInterceptorService, providedIn: "root" }); + return LoadingMaskInterceptorService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + LoadingMaskInterceptorService.prototype._loadingMaskService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** @type {?} */ - var horizontalAlignment = { - center: { - right: 'auto' - }, - left: { - right: '100%' - }, - right: { - right: '-100%' - } - }; - /** @type {?} */ - var verticalAlignment = { - center: { - top: '0px', - }, - top: { - top: '-100%', - right: '100%' - }, - bottom: { - top: 'autos' - } - }; - /** - * DropDownToggleComponent - */ - var DropDownToggleComponent = /** @class */ (function () { - function DropDownToggleComponent(dropdown) { - var _this = this; - this.dropdown = dropdown; - this.click = (/** - * @param {?} event - * @return {?} - */ - function (event) { return _this.dropdown.toggle(event); }); - } - DropDownToggleComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-drop-down-toggle', - template: '', - encapsulation: core.ViewEncapsulation.None, - styles: [".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] - }] } - ]; - /** @nocollapse */ - DropDownToggleComponent.ctorParameters = function () { return [ - { type: undefined, decorators: [{ type: core.Inject, args: [core.forwardRef((/** - * @return {?} - */ - function () { return DropDownComponent; })),] }] } - ]; }; - DropDownToggleComponent.propDecorators = { - click: [{ type: core.HostListener, args: ['click', ['$event'],] }] - }; - return DropDownToggleComponent; - }()); - if (false) { - /** @type {?} */ - DropDownToggleComponent.prototype.click; - /** @type {?} */ - DropDownToggleComponent.prototype.dropdown; - } - /** - * DropDownItemsComponent - */ - var DropDownItemsComponent = /** @class */ (function () { - function DropDownItemsComponent(dropdown) { - this.dropdown = dropdown; - } - Object.defineProperty(DropDownItemsComponent.prototype, "horizontalAlign", { - get: /** - * @return {?} - */ - function () { - return horizontalAlignment[this.dropdown.getPlacement().h].right; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DropDownItemsComponent.prototype, "verticalAlign", { - get: /** - * @return {?} - */ - function () { - return verticalAlignment[this.dropdown.getPlacement().v].top; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DropDownItemsComponent.prototype, "isOpen", { - get: /** - * @return {?} - */ - function () { - return this.dropdown.open; - }, - enumerable: true, - configurable: true - }); - /** - * @param {?} event - * @return {?} - */ - DropDownItemsComponent.prototype.onClickOutside = /** - * @param {?} event - * @return {?} - */ - function (event) { - this.dropdown.close(); - }; - DropDownItemsComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-drop-down-items', - template: '', - encapsulation: core.ViewEncapsulation.None, - styles: [".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] - }] } - ]; - /** @nocollapse */ - DropDownItemsComponent.ctorParameters = function () { return [ - { type: undefined, decorators: [{ type: core.Inject, args: [core.forwardRef((/** - * @return {?} - */ - function () { return DropDownComponent; })),] }] } - ]; }; - return DropDownItemsComponent; - }()); - if (false) { - /** @type {?} */ - DropDownItemsComponent.prototype.dropdown; - } - /** - * DropDownItemComponent - */ - var DropDownItemComponent = /** @class */ (function () { - function DropDownItemComponent(dropdown) { - var _this = this; - this.dropdown = dropdown; - this.class = 'drop-down-item'; - this.selected = new core.EventEmitter(); - this.click = (/** - * @return {?} - */ - function () { return _this.selectEntry(); }); - } - /** - * @return {?} - */ - DropDownItemComponent.prototype.selectEntry = /** - * @return {?} - */ - function () { - this.selected.next(); - this.dropdown.close(); - }; - DropDownItemComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-drop-down-item', - template: '', - styles: [".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] - }] } - ]; - /** @nocollapse */ - DropDownItemComponent.ctorParameters = function () { return [ - { type: undefined, decorators: [{ type: core.Inject, args: [core.forwardRef((/** - * @return {?} - */ - function () { return DropDownComponent; })),] }] } - ]; }; - DropDownItemComponent.propDecorators = { - class: [{ type: core.HostBinding, args: ['class',] }], - selected: [{ type: core.Output }], - click: [{ type: core.HostListener, args: ['click',] }] - }; - return DropDownItemComponent; - }()); - if (false) { - /** @type {?} */ - DropDownItemComponent.prototype.class; - /** @type {?} */ - DropDownItemComponent.prototype.selected; - /** @type {?} */ - DropDownItemComponent.prototype.click; - /** @type {?} */ - DropDownItemComponent.prototype.dropdown; - } - /** - * DropDownComponent - */ - var DropDownComponent = /** @class */ (function () { - function DropDownComponent() { - this.placement = { - h: "center", - v: "bottom" - }; - this.open = false; - this.class = 'drop-down'; - } - /** - * @return {?} - */ - DropDownComponent.prototype.close = /** - * @return {?} - */ - function () { - this.open = false; - }; - /** - * @param {?} event - * @return {?} - */ - DropDownComponent.prototype.toggle = /** - * @param {?} event - * @return {?} - */ - function (event) { - event.stopPropagation(); - this.open = !this.open; - document.body.click(); - }; - /** - * @return {?} - */ - DropDownComponent.prototype.getPlacement = /** - * @return {?} - */ - function () { - return this.placement; - }; - DropDownComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-drop-down', - template: '', - encapsulation: core.ViewEncapsulation.None, - styles: [".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] - }] } - ]; - DropDownComponent.propDecorators = { - placement: [{ type: core.Input }], - open: [{ type: core.Input }, { type: core.HostBinding, args: ['class.show',] }], - class: [{ type: core.HostBinding, args: ['class',] }] - }; - return DropDownComponent; - }()); - if (false) { - /** @type {?} */ - DropDownComponent.prototype.placement; - /** @type {?} */ - DropDownComponent.prototype.open; - /** @type {?} */ - DropDownComponent.prototype.class; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** @type {?} */ + var horizontalAlignment = { + center: { + right: 'auto' + }, + left: { + right: '100%' + }, + right: { + right: '-100%' + } + }; + /** @type {?} */ + var verticalAlignment = { + center: { + top: '0px', + }, + top: { + top: '-100%', + right: '100%' + }, + bottom: { + top: 'autos' + } + }; + /** + * DropDownToggleComponent + */ + var DropDownToggleComponent = /** @class */ (function () { + function DropDownToggleComponent(dropdown) { + var _this = this; + this.dropdown = dropdown; + this.click = (/** + * @param {?} event + * @return {?} + */ + function (event) { return _this.dropdown.toggle(event); }); + } + DropDownToggleComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-drop-down-toggle', + template: '', + encapsulation: core.ViewEncapsulation.None, + styles: [".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] + }] } + ]; + /** @nocollapse */ + DropDownToggleComponent.ctorParameters = function () { return [ + { type: undefined, decorators: [{ type: core.Inject, args: [core.forwardRef((/** + * @return {?} + */ + function () { return DropDownComponent; })),] }] } + ]; }; + DropDownToggleComponent.propDecorators = { + click: [{ type: core.HostListener, args: ['click', ['$event'],] }] + }; + return DropDownToggleComponent; + }()); + if (false) { + /** @type {?} */ + DropDownToggleComponent.prototype.click; + /** @type {?} */ + DropDownToggleComponent.prototype.dropdown; + } + /** + * DropDownItemsComponent + */ + var DropDownItemsComponent = /** @class */ (function () { + function DropDownItemsComponent(dropdown) { + this.dropdown = dropdown; + } + Object.defineProperty(DropDownItemsComponent.prototype, "horizontalAlign", { + get: /** + * @return {?} + */ + function () { + return horizontalAlignment[this.dropdown.getPlacement().h].right; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(DropDownItemsComponent.prototype, "verticalAlign", { + get: /** + * @return {?} + */ + function () { + return verticalAlignment[this.dropdown.getPlacement().v].top; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(DropDownItemsComponent.prototype, "isOpen", { + get: /** + * @return {?} + */ + function () { + return this.dropdown.open; + }, + enumerable: true, + configurable: true + }); + /** + * @param {?} event + * @return {?} + */ + DropDownItemsComponent.prototype.onClickOutside = /** + * @param {?} event + * @return {?} + */ + function (event) { + this.dropdown.close(); + }; + DropDownItemsComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-drop-down-items', + template: '', + encapsulation: core.ViewEncapsulation.None, + styles: [".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] + }] } + ]; + /** @nocollapse */ + DropDownItemsComponent.ctorParameters = function () { return [ + { type: undefined, decorators: [{ type: core.Inject, args: [core.forwardRef((/** + * @return {?} + */ + function () { return DropDownComponent; })),] }] } + ]; }; + return DropDownItemsComponent; + }()); + if (false) { + /** @type {?} */ + DropDownItemsComponent.prototype.dropdown; + } + /** + * DropDownItemComponent + */ + var DropDownItemComponent = /** @class */ (function () { + function DropDownItemComponent(dropdown) { + var _this = this; + this.dropdown = dropdown; + this.class = 'drop-down-item'; + this.selected = new core.EventEmitter(); + this.click = (/** + * @return {?} + */ + function () { return _this.selectEntry(); }); + } + /** + * @return {?} + */ + DropDownItemComponent.prototype.selectEntry = /** + * @return {?} + */ + function () { + this.selected.next(); + this.dropdown.close(); + }; + DropDownItemComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-drop-down-item', + template: '', + styles: [".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] + }] } + ]; + /** @nocollapse */ + DropDownItemComponent.ctorParameters = function () { return [ + { type: undefined, decorators: [{ type: core.Inject, args: [core.forwardRef((/** + * @return {?} + */ + function () { return DropDownComponent; })),] }] } + ]; }; + DropDownItemComponent.propDecorators = { + class: [{ type: core.HostBinding, args: ['class',] }], + selected: [{ type: core.Output }], + click: [{ type: core.HostListener, args: ['click',] }] + }; + return DropDownItemComponent; + }()); + if (false) { + /** @type {?} */ + DropDownItemComponent.prototype.class; + /** @type {?} */ + DropDownItemComponent.prototype.selected; + /** @type {?} */ + DropDownItemComponent.prototype.click; + /** @type {?} */ + DropDownItemComponent.prototype.dropdown; + } + /** + * DropDownComponent + */ + var DropDownComponent = /** @class */ (function () { + function DropDownComponent() { + this.placement = { + h: "center", + v: "bottom" + }; + this.open = false; + this.class = 'drop-down'; + } + /** + * @return {?} + */ + DropDownComponent.prototype.close = /** + * @return {?} + */ + function () { + this.open = false; + }; + /** + * @param {?} event + * @return {?} + */ + DropDownComponent.prototype.toggle = /** + * @param {?} event + * @return {?} + */ + function (event) { + event.stopPropagation(); + this.open = !this.open; + document.body.click(); + }; + /** + * @return {?} + */ + DropDownComponent.prototype.getPlacement = /** + * @return {?} + */ + function () { + return this.placement; + }; + DropDownComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-drop-down', + template: '', + encapsulation: core.ViewEncapsulation.None, + styles: [".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] + }] } + ]; + DropDownComponent.propDecorators = { + placement: [{ type: core.Input }], + open: [{ type: core.Input }, { type: core.HostBinding, args: ['class.show',] }], + class: [{ type: core.HostBinding, args: ['class',] }] + }; + return DropDownComponent; + }()); + if (false) { + /** @type {?} */ + DropDownComponent.prototype.placement; + /** @type {?} */ + DropDownComponent.prototype.open; + /** @type {?} */ + DropDownComponent.prototype.class; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var LeftSideBarComponent = /** @class */ (function () { - function LeftSideBarComponent() { - this.showSpinner = false; - } - /** - * @return {?} - */ - LeftSideBarComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - }; - LeftSideBarComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-left-side-bar', - template: "
\n
\n
 Loading...\n
\n
\n \n
\n", - styles: [".left-panel{border-radius:0;float:left}.gd-left-bar-fade{margin:auto;overflow:hidden;-webkit-overflow-scrolling:touch;-webkit-transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;width:100%;height:100%;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;position:fixed;z-index:1000}@media (max-width:1037px){.gd-left-bar-fade{top:100px;right:0}.gd-left-bar-spinner{top:20%}}"] - }] } - ]; - /** @nocollapse */ - LeftSideBarComponent.ctorParameters = function () { return []; }; - LeftSideBarComponent.propDecorators = { - showSpinner: [{ type: core.Input }] - }; - return LeftSideBarComponent; - }()); - if (false) { - /** @type {?} */ - LeftSideBarComponent.prototype.showSpinner; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var LeftSideBarComponent = /** @class */ (function () { + function LeftSideBarComponent() { + this.showSpinner = false; + } + /** + * @return {?} + */ + LeftSideBarComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + }; + LeftSideBarComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-left-side-bar', + template: "
\r\n
\r\n
 Loading...\r\n
\r\n
\r\n \r\n
\r\n", + styles: [".left-panel{border-radius:0;float:left}.gd-left-bar-fade{margin:auto;overflow:hidden;-webkit-overflow-scrolling:touch;transition:transform .3s ease-out;width:100%;height:100%;display:flex;justify-content:center;align-items:center;position:fixed;z-index:1000}@media (max-width:1037px){.gd-left-bar-fade{top:100px;right:0}.gd-left-bar-spinner{top:20%}}"] + }] } + ]; + /** @nocollapse */ + LeftSideBarComponent.ctorParameters = function () { return []; }; + LeftSideBarComponent.propDecorators = { + showSpinner: [{ type: core.Input }] + }; + return LeftSideBarComponent; + }()); + if (false) { + /** @type {?} */ + LeftSideBarComponent.prototype.showSpinner; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var TooltipDirective = /** @class */ (function () { - function TooltipDirective() { - this.showToolTip = new core.EventEmitter(); - } - /** - * @return {?} - */ - TooltipDirective.prototype.onHovering = /** - * @return {?} - */ - function () { - this.showToolTip.emit(true); - }; - /** - * @return {?} - */ - TooltipDirective.prototype.onUnhovering = /** - * @return {?} - */ - function () { - this.showToolTip.emit(false); - }; - TooltipDirective.decorators = [ - { type: core.Directive, args: [{ - selector: '[gdTooltip]' - },] } - ]; - /** @nocollapse */ - TooltipDirective.ctorParameters = function () { return []; }; - TooltipDirective.propDecorators = { - showToolTip: [{ type: core.Output }], - onHovering: [{ type: core.HostListener, args: ['mouseenter',] }], - onUnhovering: [{ type: core.HostListener, args: ['mouseleave',] }] - }; - return TooltipDirective; - }()); - if (false) { - /** @type {?} */ - TooltipDirective.prototype.showToolTip; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var TooltipDirective = /** @class */ (function () { + function TooltipDirective() { + this.showToolTip = new core.EventEmitter(); + } + /** + * @return {?} + */ + TooltipDirective.prototype.onHovering = /** + * @return {?} + */ + function () { + this.showToolTip.emit(true); + }; + /** + * @return {?} + */ + TooltipDirective.prototype.onUnhovering = /** + * @return {?} + */ + function () { + this.showToolTip.emit(false); + }; + TooltipDirective.decorators = [ + { type: core.Directive, args: [{ + selector: '[gdTooltip]' + },] } + ]; + /** @nocollapse */ + TooltipDirective.ctorParameters = function () { return []; }; + TooltipDirective.propDecorators = { + showToolTip: [{ type: core.Output }], + onHovering: [{ type: core.HostListener, args: ['mouseenter',] }], + onUnhovering: [{ type: core.HostListener, args: ['mouseleave',] }] + }; + return TooltipDirective; + }()); + if (false) { + /** @type {?} */ + TooltipDirective.prototype.showToolTip; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var AddDynamicComponentService = /** @class */ (function () { - function AddDynamicComponentService(_factoryResolver, _appRef) { - this._factoryResolver = _factoryResolver; - this._appRef = _appRef; - } - /** - * @param {?} viewContainerRef - * @param {?} component - * @return {?} - */ - AddDynamicComponentService.prototype.addDynamicComponent = /** - * @param {?} viewContainerRef - * @param {?} component - * @return {?} - */ - function (viewContainerRef, component) { - var _this = this; - /** @type {?} */ - var factory = this._factoryResolver.resolveComponentFactory(component); - /** @type {?} */ - var componentRef = viewContainerRef.createComponent(factory); - componentRef.onDestroy((/** - * @return {?} - */ - function () { - _this._appRef.detachView(componentRef.hostView); - })); - return componentRef; - }; - AddDynamicComponentService.decorators = [ - { type: core.Injectable, args: [{ - providedIn: 'root' - },] } - ]; - /** @nocollapse */ - AddDynamicComponentService.ctorParameters = function () { return [ - { type: core.ComponentFactoryResolver }, - { type: core.ApplicationRef } - ]; }; - /** @nocollapse */ AddDynamicComponentService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function AddDynamicComponentService_Factory() { return new AddDynamicComponentService(core.ɵɵinject(core.ComponentFactoryResolver), core.ɵɵinject(core.ApplicationRef)); }, token: AddDynamicComponentService, providedIn: "root" }); - return AddDynamicComponentService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - AddDynamicComponentService.prototype._factoryResolver; - /** - * @type {?} - * @private - */ - AddDynamicComponentService.prototype._appRef; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var AddDynamicComponentService = /** @class */ (function () { + function AddDynamicComponentService(_factoryResolver, _appRef) { + this._factoryResolver = _factoryResolver; + this._appRef = _appRef; + } + /** + * @param {?} viewContainerRef + * @param {?} component + * @return {?} + */ + AddDynamicComponentService.prototype.addDynamicComponent = /** + * @param {?} viewContainerRef + * @param {?} component + * @return {?} + */ + function (viewContainerRef, component) { + var _this = this; + /** @type {?} */ + var factory = this._factoryResolver.resolveComponentFactory(component); + /** @type {?} */ + var componentRef = viewContainerRef.createComponent(factory); + componentRef.onDestroy((/** + * @return {?} + */ + function () { + _this._appRef.detachView(componentRef.hostView); + })); + return componentRef; + }; + AddDynamicComponentService.decorators = [ + { type: core.Injectable, args: [{ + providedIn: 'root' + },] } + ]; + /** @nocollapse */ + AddDynamicComponentService.ctorParameters = function () { return [ + { type: core.ComponentFactoryResolver }, + { type: core.ApplicationRef } + ]; }; + /** @nocollapse */ AddDynamicComponentService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function AddDynamicComponentService_Factory() { return new AddDynamicComponentService(core.ɵɵinject(core.ComponentFactoryResolver), core.ɵɵinject(core.ApplicationRef)); }, token: AddDynamicComponentService, providedIn: "root" }); + return AddDynamicComponentService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + AddDynamicComponentService.prototype._factoryResolver; + /** + * @type {?} + * @private + */ + AddDynamicComponentService.prototype._appRef; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var HostingDynamicComponentService = /** @class */ (function () { - function HostingDynamicComponentService() { - this.hosts = []; - } - /** - * @param {?} host - * @return {?} - */ - HostingDynamicComponentService.prototype.add = /** - * @param {?} host - * @return {?} - */ - function (host) { - this.hosts = this.hosts.filter((/** - * @param {?} h - * @return {?} - */ - function (h) { - return h.ident !== host.ident; - })); - this.hosts.push(host); - }; - /** - * @param {?} host - * @return {?} - */ - HostingDynamicComponentService.prototype.remove = /** - * @param {?} host - * @return {?} - */ - function (host) { - this.hosts = this.hosts.filter((/** - * @param {?} h - * @return {?} - */ - function (h) { - return h.ident !== host.ident; - })); - }; - /** - * @param {?} ident - * @return {?} - */ - HostingDynamicComponentService.prototype.find = /** - * @param {?} ident - * @return {?} - */ - function (ident) { - return this.hosts.find((/** - * @param {?} h - * @return {?} - */ - function (h) { - return h.ident === ident; - })); - }; - return HostingDynamicComponentService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - HostingDynamicComponentService.prototype.hosts; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var HostingDynamicComponentService = /** @class */ (function () { + function HostingDynamicComponentService() { + this.hosts = []; + } + /** + * @param {?} host + * @return {?} + */ + HostingDynamicComponentService.prototype.add = /** + * @param {?} host + * @return {?} + */ + function (host) { + this.hosts = this.hosts.filter((/** + * @param {?} h + * @return {?} + */ + function (h) { + return h.ident !== host.ident; + })); + this.hosts.push(host); + }; + /** + * @param {?} host + * @return {?} + */ + HostingDynamicComponentService.prototype.remove = /** + * @param {?} host + * @return {?} + */ + function (host) { + this.hosts = this.hosts.filter((/** + * @param {?} h + * @return {?} + */ + function (h) { + return h.ident !== host.ident; + })); + }; + /** + * @param {?} ident + * @return {?} + */ + HostingDynamicComponentService.prototype.find = /** + * @param {?} ident + * @return {?} + */ + function (ident) { + return this.hosts.find((/** + * @param {?} h + * @return {?} + */ + function (h) { + return h.ident === ident; + })); + }; + return HostingDynamicComponentService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + HostingDynamicComponentService.prototype.hosts; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var HostDynamicDirective = /** @class */ (function () { - function HostDynamicDirective(viewContainerRef, _hostingService) { - this.viewContainerRef = viewContainerRef; - this._hostingService = _hostingService; - } - /** - * @return {?} - */ - HostDynamicDirective.prototype.ngAfterViewInit = /** - * @return {?} - */ - function () { - this._hostingService.add(this); - }; - /** - * @return {?} - */ - HostDynamicDirective.prototype.ngOnDestroy = /** - * @return {?} - */ - function () { - this._hostingService.remove(this); - this.viewContainerRef.clear(); - }; - HostDynamicDirective.decorators = [ - { type: core.Directive, args: [{ - selector: '[gdHostDynamic]' - },] } - ]; - /** @nocollapse */ - HostDynamicDirective.ctorParameters = function () { return [ - { type: core.ViewContainerRef }, - { type: HostingDynamicComponentService } - ]; }; - HostDynamicDirective.propDecorators = { - ident: [{ type: core.Input }] - }; - return HostDynamicDirective; - }()); - if (false) { - /** @type {?} */ - HostDynamicDirective.prototype.ident; - /** @type {?} */ - HostDynamicDirective.prototype.viewContainerRef; - /** - * @type {?} - * @private - */ - HostDynamicDirective.prototype._hostingService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var HostDynamicDirective = /** @class */ (function () { + function HostDynamicDirective(viewContainerRef, _hostingService) { + this.viewContainerRef = viewContainerRef; + this._hostingService = _hostingService; + } + /** + * @return {?} + */ + HostDynamicDirective.prototype.ngAfterViewInit = /** + * @return {?} + */ + function () { + this._hostingService.add(this); + }; + /** + * @return {?} + */ + HostDynamicDirective.prototype.ngOnDestroy = /** + * @return {?} + */ + function () { + this._hostingService.remove(this); + this.viewContainerRef.clear(); + }; + HostDynamicDirective.decorators = [ + { type: core.Directive, args: [{ + selector: '[gdHostDynamic]' + },] } + ]; + /** @nocollapse */ + HostDynamicDirective.ctorParameters = function () { return [ + { type: core.ViewContainerRef }, + { type: HostingDynamicComponentService } + ]; }; + HostDynamicDirective.propDecorators = { + ident: [{ type: core.Input }] + }; + return HostDynamicDirective; + }()); + if (false) { + /** @type {?} */ + HostDynamicDirective.prototype.ident; + /** @type {?} */ + HostDynamicDirective.prototype.viewContainerRef; + /** + * @type {?} + * @private + */ + HostDynamicDirective.prototype._hostingService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** @type {?} */ - var $$8 = jquery; - var ResizingComponent = /** @class */ (function () { - function ResizingComponent() { - this.se = false; - this.ne = false; - this.sw = false; - this.nw = false; - this.SE = 'se'; - this.NE = 'ne'; - this.SW = 'sw'; - this.NW = 'nw'; - this.offsetX = new core.EventEmitter(); - this.offsetY = new core.EventEmitter(); - this.offsetTop = new core.EventEmitter(); - this.offsetLeft = new core.EventEmitter(); - this.release = new core.EventEmitter(); - this.grab = false; - } - /** - * @return {?} - */ - ResizingComponent.prototype.ngAfterViewInit = /** - * @return {?} - */ - function () { - var _this = this; - /** @type {?} */ - var elSE = $$8(this.getElementId(this.SE)); - /** @type {?} */ - var elNW = $$8(this.getElementId(this.NW)); - if (this.init && elSE && elNW && elSE.offset() && elNW.offset()) { - /** @type {?} */ - var width_1 = elSE.offset().left - elNW.offset().left; - /** @type {?} */ - var height_1 = elSE.offset().top - elNW.offset().top; - while (width_1 >= this.pageWidth || height_1 >= this.pageHeight) { - width_1 = width_1 / 2; - height_1 = height_1 / 2; - } - setTimeout((/** - * @return {?} - */ - function () { - _this.offsetX.emit(width_1); - _this.offsetY.emit(height_1); - }), 100); - } - }; - /** - * @return {?} - */ - ResizingComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - }; - /** - * @param {?} $event - * @return {?} - */ - ResizingComponent.prototype.catchUp = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - // ff - $event.preventDefault(); - if ($event.dataTransfer) { // ff - $event.dataTransfer.setData('text', 'foo'); - } - this.grab = true; - this.oldPosition = Utils.getMousePosition($event); - }; - /** - * @param {?} $event - * @param {?} el - * @return {?} - */ - ResizingComponent.prototype.resize = /** - * @param {?} $event - * @param {?} el - * @return {?} - */ - function ($event, el) { - if (!this.grab) { - return; - } - /** @type {?} */ - var position = Utils.getMousePosition($event); - if (position.x === 0 && position.y === 0) { - return; - } - /** @type {?} */ - var notSW = this.NE === el || this.NW === el; - /** @type {?} */ - var notNE = this.SW === el || this.NW === el; - this.setOffsets(position, notNE, notSW); - if (notSW) { - this.offsetTop.emit(position.y - this.oldPosition.y); - } - if (notNE) { - this.offsetLeft.emit(position.x - this.oldPosition.x); - } - this.oldPosition = position; - }; - /** - * @private - * @param {?} position - * @param {?} x - * @param {?} y - * @return {?} - */ - ResizingComponent.prototype.setOffsets = /** - * @private - * @param {?} position - * @param {?} x - * @param {?} y - * @return {?} - */ - function (position, x, y) { - /** @type {?} */ - var offsetX = x ? this.oldPosition.x - position.x : position.x - this.oldPosition.x; - /** @type {?} */ - var offsetY = y ? this.oldPosition.y - position.y : position.y - this.oldPosition.y; - this.offsetX.emit(offsetX); - this.offsetY.emit(offsetY); - }; - /** - * @param {?} $event - * @param {?} el - * @return {?} - */ - ResizingComponent.prototype.end = /** - * @param {?} $event - * @param {?} el - * @return {?} - */ - function ($event, el) { - // ff - this.resize($event, el); - this.release.emit(true); - this.grab = false; - }; - /** - * @param {?} $event - * @return {?} - */ - ResizingComponent.prototype.start = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - this.drop($event); - }; - /** - * @param {?} $event - * @return {?} - */ - ResizingComponent.prototype.drop = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - $event.stopPropagation(); - $event.preventDefault(); - }; - /** - * @private - * @param {?} el - * @return {?} - */ - ResizingComponent.prototype.getElementId = /** - * @private - * @param {?} el - * @return {?} - */ - function (el) { - return "#" + el + "-" + this.id; - }; - ResizingComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-resizing', - template: "
\n\n
\n\n
\n\n
\n", - styles: [".ui-resizable-handle{background-color:#679ffa;width:8px;height:8px;border-radius:100%;position:absolute;font-size:.1px;display:block}.se-resize{bottom:-5px;right:-5px;cursor:se-resize}.ne-resize{top:-5px;right:-5px;cursor:ne-resize}.sw-resize{bottom:-5px;left:-5px;cursor:sw-resize}.nw-resize{top:-5px;left:-5px;cursor:nw-resize}"] - }] } - ]; - /** @nocollapse */ - ResizingComponent.ctorParameters = function () { return []; }; - ResizingComponent.propDecorators = { - init: [{ type: core.Input }], - id: [{ type: core.Input }], - se: [{ type: core.Input }], - ne: [{ type: core.Input }], - sw: [{ type: core.Input }], - nw: [{ type: core.Input }], - pageWidth: [{ type: core.Input }], - pageHeight: [{ type: core.Input }], - offsetX: [{ type: core.Output }], - offsetY: [{ type: core.Output }], - offsetTop: [{ type: core.Output }], - offsetLeft: [{ type: core.Output }], - release: [{ type: core.Output }] - }; - return ResizingComponent; - }()); - if (false) { - /** @type {?} */ - ResizingComponent.prototype.init; - /** @type {?} */ - ResizingComponent.prototype.id; - /** @type {?} */ - ResizingComponent.prototype.se; - /** @type {?} */ - ResizingComponent.prototype.ne; - /** @type {?} */ - ResizingComponent.prototype.sw; - /** @type {?} */ - ResizingComponent.prototype.nw; - /** @type {?} */ - ResizingComponent.prototype.pageWidth; - /** @type {?} */ - ResizingComponent.prototype.pageHeight; - /** @type {?} */ - ResizingComponent.prototype.SE; - /** @type {?} */ - ResizingComponent.prototype.NE; - /** @type {?} */ - ResizingComponent.prototype.SW; - /** @type {?} */ - ResizingComponent.prototype.NW; - /** @type {?} */ - ResizingComponent.prototype.offsetX; - /** @type {?} */ - ResizingComponent.prototype.offsetY; - /** @type {?} */ - ResizingComponent.prototype.offsetTop; - /** @type {?} */ - ResizingComponent.prototype.offsetLeft; - /** @type {?} */ - ResizingComponent.prototype.release; - /** - * @type {?} - * @private - */ - ResizingComponent.prototype.grab; - /** - * @type {?} - * @private - */ - ResizingComponent.prototype.oldPosition; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** @type {?} */ + var $$8 = jquery; + var ResizingComponent = /** @class */ (function () { + function ResizingComponent() { + this.se = false; + this.ne = false; + this.sw = false; + this.nw = false; + this.SE = 'se'; + this.NE = 'ne'; + this.SW = 'sw'; + this.NW = 'nw'; + this.offsetX = new core.EventEmitter(); + this.offsetY = new core.EventEmitter(); + this.offsetTop = new core.EventEmitter(); + this.offsetLeft = new core.EventEmitter(); + this.release = new core.EventEmitter(); + this.grab = false; + } + /** + * @return {?} + */ + ResizingComponent.prototype.ngAfterViewInit = /** + * @return {?} + */ + function () { + var _this = this; + /** @type {?} */ + var elSE = $$8(this.getElementId(this.SE)); + /** @type {?} */ + var elNW = $$8(this.getElementId(this.NW)); + if (this.init && elSE && elNW && elSE.offset() && elNW.offset()) { + /** @type {?} */ + var width_1 = elSE.offset().left - elNW.offset().left; + /** @type {?} */ + var height_1 = elSE.offset().top - elNW.offset().top; + while (width_1 >= this.pageWidth || height_1 >= this.pageHeight) { + width_1 = width_1 / 2; + height_1 = height_1 / 2; + } + setTimeout((/** + * @return {?} + */ + function () { + _this.offsetX.emit(width_1); + _this.offsetY.emit(height_1); + }), 100); + } + }; + /** + * @return {?} + */ + ResizingComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + }; + /** + * @param {?} $event + * @return {?} + */ + ResizingComponent.prototype.catchUp = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + // ff + $event.preventDefault(); + if ($event.dataTransfer) { // ff + $event.dataTransfer.setData('text', 'foo'); + } + this.grab = true; + this.oldPosition = Utils.getMousePosition($event); + }; + /** + * @param {?} $event + * @param {?} el + * @return {?} + */ + ResizingComponent.prototype.resize = /** + * @param {?} $event + * @param {?} el + * @return {?} + */ + function ($event, el) { + if (!this.grab) { + return; + } + /** @type {?} */ + var position = Utils.getMousePosition($event); + if (position.x === 0 && position.y === 0) { + return; + } + /** @type {?} */ + var notSW = this.NE === el || this.NW === el; + /** @type {?} */ + var notNE = this.SW === el || this.NW === el; + this.setOffsets(position, notNE, notSW); + if (notSW) { + this.offsetTop.emit(position.y - this.oldPosition.y); + } + if (notNE) { + this.offsetLeft.emit(position.x - this.oldPosition.x); + } + this.oldPosition = position; + }; + /** + * @private + * @param {?} position + * @param {?} x + * @param {?} y + * @return {?} + */ + ResizingComponent.prototype.setOffsets = /** + * @private + * @param {?} position + * @param {?} x + * @param {?} y + * @return {?} + */ + function (position, x, y) { + /** @type {?} */ + var offsetX = x ? this.oldPosition.x - position.x : position.x - this.oldPosition.x; + /** @type {?} */ + var offsetY = y ? this.oldPosition.y - position.y : position.y - this.oldPosition.y; + this.offsetX.emit(offsetX); + this.offsetY.emit(offsetY); + }; + /** + * @param {?} $event + * @param {?} el + * @return {?} + */ + ResizingComponent.prototype.end = /** + * @param {?} $event + * @param {?} el + * @return {?} + */ + function ($event, el) { + // ff + this.resize($event, el); + this.release.emit(true); + this.grab = false; + }; + /** + * @param {?} $event + * @return {?} + */ + ResizingComponent.prototype.start = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + this.drop($event); + }; + /** + * @param {?} $event + * @return {?} + */ + ResizingComponent.prototype.drop = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + $event.stopPropagation(); + $event.preventDefault(); + }; + /** + * @private + * @param {?} el + * @return {?} + */ + ResizingComponent.prototype.getElementId = /** + * @private + * @param {?} el + * @return {?} + */ + function (el) { + return "#" + el + "-" + this.id; + }; + ResizingComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-resizing', + template: "
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n", + styles: [".ui-resizable-handle{background-color:#679ffa;width:8px;height:8px;border-radius:100%;position:absolute;font-size:.1px;display:block}.se-resize{bottom:-5px;right:-5px;cursor:se-resize}.ne-resize{top:-5px;right:-5px;cursor:ne-resize}.sw-resize{bottom:-5px;left:-5px;cursor:sw-resize}.nw-resize{top:-5px;left:-5px;cursor:nw-resize}@media (max-width:1037px){.ui-resizable-handle{width:12px;height:12px}}"] + }] } + ]; + /** @nocollapse */ + ResizingComponent.ctorParameters = function () { return []; }; + ResizingComponent.propDecorators = { + init: [{ type: core.Input }], + id: [{ type: core.Input }], + se: [{ type: core.Input }], + ne: [{ type: core.Input }], + sw: [{ type: core.Input }], + nw: [{ type: core.Input }], + pageWidth: [{ type: core.Input }], + pageHeight: [{ type: core.Input }], + offsetX: [{ type: core.Output }], + offsetY: [{ type: core.Output }], + offsetTop: [{ type: core.Output }], + offsetLeft: [{ type: core.Output }], + release: [{ type: core.Output }] + }; + return ResizingComponent; + }()); + if (false) { + /** @type {?} */ + ResizingComponent.prototype.init; + /** @type {?} */ + ResizingComponent.prototype.id; + /** @type {?} */ + ResizingComponent.prototype.se; + /** @type {?} */ + ResizingComponent.prototype.ne; + /** @type {?} */ + ResizingComponent.prototype.sw; + /** @type {?} */ + ResizingComponent.prototype.nw; + /** @type {?} */ + ResizingComponent.prototype.pageWidth; + /** @type {?} */ + ResizingComponent.prototype.pageHeight; + /** @type {?} */ + ResizingComponent.prototype.SE; + /** @type {?} */ + ResizingComponent.prototype.NE; + /** @type {?} */ + ResizingComponent.prototype.SW; + /** @type {?} */ + ResizingComponent.prototype.NW; + /** @type {?} */ + ResizingComponent.prototype.offsetX; + /** @type {?} */ + ResizingComponent.prototype.offsetY; + /** @type {?} */ + ResizingComponent.prototype.offsetTop; + /** @type {?} */ + ResizingComponent.prototype.offsetLeft; + /** @type {?} */ + ResizingComponent.prototype.release; + /** + * @type {?} + * @private + */ + ResizingComponent.prototype.grab; + /** + * @type {?} + * @private + */ + ResizingComponent.prototype.oldPosition; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var TopTabActivatorService = /** @class */ (function (_super) { - __extends(TopTabActivatorService, _super); - function TopTabActivatorService() { - return _super.call(this) || this; - } - return TopTabActivatorService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var TopTabActivatorService = /** @class */ (function (_super) { + __extends(TopTabActivatorService, _super); + function TopTabActivatorService() { + return _super.call(this) || this; + } + return TopTabActivatorService; }(TabActivatorService)); - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var TopTabComponent = /** @class */ (function () { - function TopTabComponent(_tabActivatorService, _modalService, _excMessageService) { - var _this = this; - this._tabActivatorService = _tabActivatorService; - this._modalService = _modalService; - this._excMessageService = _excMessageService; - this.disabled = false; - this.activeTab = new core.EventEmitter(); - this.elementPosition = 0; - this.active = false; - this.showToolTip = false; - this._tabActivatorService.activeTabChange.subscribe((/** - * @param {?} tabId - * @return {?} - */ - function (tabId) { - _this.activation(tabId); - if (tabId === null) { - _this.activeTab.emit(""); - } - })); - } - /** - * @private - * @param {?} tabId - * @return {?} - */ - TopTabComponent.prototype.activation = /** - * @private - * @param {?} tabId - * @return {?} - */ - function (tabId) { - if (this.id === tabId) { - this.active = !this.active; - if (this.active) { - this.activeTab.emit(this.id); - } - else { - this.activeTab.emit(""); - } - } - else { - this.active = false; - } - }; - /** - * @return {?} - */ - TopTabComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - }; - /** - * @return {?} - */ - TopTabComponent.prototype.toggleTab = /** - * @return {?} - */ - function () { - if (this.disabled) { - this._modalService.open(CommonModals.ErrorMessage); - this._excMessageService.changeMessage("Please open document first"); - return; - } - this._tabActivatorService.changeActiveTab(this.id); - }; - TopTabComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-top-tab', - template: "
\n \n \n
\n", - styles: [".gd-tab{font-size:14px;color:#3e4e5a;cursor:pointer;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;align-content:center;-webkit-box-pack:center;justify-content:center;min-width:36px;height:36px;text-align:center;position:relative;white-space:nowrap;padding:0!important;margin:0 10px}.gd-tab .gd-tab-tooltip{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;margin:0!important}.gd-tab.active{background-color:#acacac;color:#fff!important;font-weight:700}.gd-tab.disabled{cursor:not-allowed;opacity:.4}.gd-tab ::ng-deep .tooltip{font-size:12px;margin:20px -57px}.gd-tab .title{margin:auto 23px}@media (max-width:1037px){.gd-tab{font-size:20px}}"] - }] } - ]; - /** @nocollapse */ - TopTabComponent.ctorParameters = function () { return [ - { type: TopTabActivatorService }, - { type: ModalService }, - { type: ExceptionMessageService } - ]; }; - TopTabComponent.propDecorators = { - id: [{ type: core.Input }], - icon: [{ type: core.Input }], - disabled: [{ type: core.Input }], - tooltip: [{ type: core.Input }], - activeTab: [{ type: core.Output }], - elementPosition: [{ type: core.Input }] - }; - return TopTabComponent; - }()); - if (false) { - /** @type {?} */ - TopTabComponent.prototype.id; - /** @type {?} */ - TopTabComponent.prototype.icon; - /** @type {?} */ - TopTabComponent.prototype.disabled; - /** @type {?} */ - TopTabComponent.prototype.tooltip; - /** @type {?} */ - TopTabComponent.prototype.activeTab; - /** @type {?} */ - TopTabComponent.prototype.elementPosition; - /** @type {?} */ - TopTabComponent.prototype.active; - /** @type {?} */ - TopTabComponent.prototype.showToolTip; - /** - * @type {?} - * @private - */ - TopTabComponent.prototype._tabActivatorService; - /** - * @type {?} - * @private - */ - TopTabComponent.prototype._modalService; - /** - * @type {?} - * @private - */ - TopTabComponent.prototype._excMessageService; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var TopTabComponent = /** @class */ (function () { + function TopTabComponent(_tabActivatorService, _modalService, _excMessageService) { + var _this = this; + this._tabActivatorService = _tabActivatorService; + this._modalService = _modalService; + this._excMessageService = _excMessageService; + this.disabled = false; + this.activeTab = new core.EventEmitter(); + this.elementPosition = 0; + this.active = false; + this.showToolTip = false; + this._tabActivatorService.activeTabChange.subscribe((/** + * @param {?} tabId + * @return {?} + */ + function (tabId) { + _this.activation(tabId); + if (tabId === null) { + _this.activeTab.emit(""); + } + })); + } + /** + * @private + * @param {?} tabId + * @return {?} + */ + TopTabComponent.prototype.activation = /** + * @private + * @param {?} tabId + * @return {?} + */ + function (tabId) { + if (this.id === tabId) { + this.active = !this.active; + if (this.active) { + this.activeTab.emit(this.id); + } + else { + this.activeTab.emit(""); + } + } + else { + this.active = false; + } + }; + /** + * @return {?} + */ + TopTabComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + }; + /** + * @return {?} + */ + TopTabComponent.prototype.toggleTab = /** + * @return {?} + */ + function () { + if (this.disabled) { + this._modalService.open(CommonModals.ErrorMessage); + this._excMessageService.changeMessage("Please open document first"); + return; + } + this._tabActivatorService.changeActiveTab(this.id); + }; + TopTabComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-top-tab', + template: "
\r\n \r\n \r\n
\r\n", + styles: [".gd-tab{font-size:14px;color:#3e4e5a;cursor:pointer;display:flex;flex-direction:column;align-items:center;align-content:center;justify-content:center;min-width:36px;height:36px;text-align:center;position:relative;white-space:nowrap;padding:0!important;margin:0 10px}.gd-tab .gd-tab-tooltip{display:flex;flex-direction:column;margin:0!important}.gd-tab.active{background-color:#acacac;color:#fff!important;font-weight:700}.gd-tab.disabled{cursor:not-allowed;opacity:.4}.gd-tab ::ng-deep .tooltip{font-size:12px;margin:20px -57px}.gd-tab .title{margin:auto 23px}@media (max-width:1037px){.gd-tab{font-size:20px}}"] + }] } + ]; + /** @nocollapse */ + TopTabComponent.ctorParameters = function () { return [ + { type: TopTabActivatorService }, + { type: ModalService }, + { type: ExceptionMessageService } + ]; }; + TopTabComponent.propDecorators = { + id: [{ type: core.Input }], + icon: [{ type: core.Input }], + disabled: [{ type: core.Input }], + tooltip: [{ type: core.Input }], + activeTab: [{ type: core.Output }], + elementPosition: [{ type: core.Input }] + }; + return TopTabComponent; + }()); + if (false) { + /** @type {?} */ + TopTabComponent.prototype.id; + /** @type {?} */ + TopTabComponent.prototype.icon; + /** @type {?} */ + TopTabComponent.prototype.disabled; + /** @type {?} */ + TopTabComponent.prototype.tooltip; + /** @type {?} */ + TopTabComponent.prototype.activeTab; + /** @type {?} */ + TopTabComponent.prototype.elementPosition; + /** @type {?} */ + TopTabComponent.prototype.active; + /** @type {?} */ + TopTabComponent.prototype.showToolTip; + /** + * @type {?} + * @private + */ + TopTabComponent.prototype._tabActivatorService; + /** + * @type {?} + * @private + */ + TopTabComponent.prototype._modalService; + /** + * @type {?} + * @private + */ + TopTabComponent.prototype._excMessageService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** @type {?} */ - var $$9 = jquery; - var TextMenuComponent = /** @class */ (function () { - function TextMenuComponent(_onCloseService, _zoomService, _windowService, _elementRef, renderer) { - var _this = this; - this._onCloseService = _onCloseService; - this._zoomService = _zoomService; - this._windowService = _windowService; - this._elementRef = _elementRef; - this.renderer = renderer; - this.decoration = true; - this.showTooltips = true; - this.outFontSize = new core.EventEmitter(); - this.outFont = new core.EventEmitter(); - this.outBold = new core.EventEmitter(); - this.outItalic = new core.EventEmitter(); - this.outUnderline = new core.EventEmitter(); - this.outColor = new core.EventEmitter(); - this.fontSizeOptions = FormattingService.getFontSizeOptions(); - this.fontOptions = FormattingService.getFontOptions(); - this.colorPickerShow = false; - _onCloseService.onClose.subscribe((/** - * @return {?} - */ - function () { - _this.colorPickerShow = false; - })); - this.isMobile = _windowService.isMobile(); - _windowService.onResize.subscribe((/** - * @param {?} w - * @return {?} - */ - function (w) { - _this.isMobile = _windowService.isMobile(); - })); - _zoomService.zoomChange.subscribe((/** - * @param {?} val - * @return {?} - */ - function (val) { - if (_this.isMobile) { - _this.changePosition(val); - } - })); - } - /** - * @return {?} - */ - TextMenuComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - }; - /** - * @param {?} val - * @return {?} - */ - TextMenuComponent.prototype.changePosition = /** - * @param {?} val - * @return {?} - */ - function (val) { - /** @type {?} */ - var top = (window.innerHeight - 24 - this._elementRef.nativeElement.parentElement.getBoundingClientRect().top - this._elementRef.nativeElement.parentElement.getBoundingClientRect().height); - /** @type {?} */ - var left = this._elementRef.nativeElement.parentElement.getBoundingClientRect().left; - this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'width', window.innerWidth + 'px'); - this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'top', top + 'px'); - this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'left', -left + 'px'); - }; - /** - * @param {?} $event - * @return {?} - */ - TextMenuComponent.prototype.selectFontSize = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - $$9(".gd-wrapper").off("keyup"); - this.outFontSize.emit($event.value); - $$9(".gd-wrapper").on("keyup", (/** - * @return {?} - */ - function () { - /** @type {?} */ - var fontElements = document.getElementsByTagName("font"); - for (var i = 0, len = fontElements.length; i < len; ++i) { - if (fontElements[i].getAttribute('size') === "7") { - fontElements[i].removeAttribute("size"); - fontElements[i].style.fontSize = $event + "px"; - } - } - })); - }; - /** - * @param {?} $event - * @return {?} - */ - TextMenuComponent.prototype.selectFont = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - event.preventDefault(); - event.stopPropagation(); - this.outFont.emit($event.value); - }; - /** - * @param {?} $event - * @return {?} - */ - TextMenuComponent.prototype.toggleColorPicker = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - $event.preventDefault(); - $event.stopPropagation(); - this.colorPickerShow = !this.colorPickerShow; - }; - /** - * @param {?} $event - * @return {?} - */ - TextMenuComponent.prototype.selectColor = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - this.colorPickerShow = false; - this.outColor.emit($event); - }; - /** - * @param {?} event - * @return {?} - */ - TextMenuComponent.prototype.toggleBold = /** - * @param {?} event - * @return {?} - */ - function (event) { - event.preventDefault(); - event.stopPropagation(); - this.outBold.emit(!this.bold); - }; - /** - * @param {?} event - * @return {?} - */ - TextMenuComponent.prototype.toggleItalic = /** - * @param {?} event - * @return {?} - */ - function (event) { - event.preventDefault(); - event.stopPropagation(); - this.outItalic.emit(!this.italic); - }; - /** - * @param {?} event - * @return {?} - */ - TextMenuComponent.prototype.toggleUnderline = /** - * @param {?} event - * @return {?} - */ - function (event) { - event.preventDefault(); - event.stopPropagation(); - this.outUnderline.emit(!this.underline); - }; - /** - * @param {?} $event - * @return {?} - */ - TextMenuComponent.prototype.closePicker = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - this.colorPickerShow = !$event; - }; - TextMenuComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-text-menu', - template: "
\n \n \n \n \n \n \n
\n
\n \n \n
\n", - styles: ["::ng-deep .active{background-color:#e7e7e7}.gd-text-menu{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row}.gd-text-menu .format-select{height:37px;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;max-width:80px;margin:0 3px}.gd-text-menu .first-component{margin-left:8px}.gd-text-menu ::ng-deep .dropdown-menu{top:40px!important;height:120px;overflow-y:auto}.gd-text-menu ::ng-deep .icon-button{margin:0!important}.bg-color-pic{border-radius:100%;border:1px solid #ccc;position:absolute;height:8px;width:8px;right:6px;bottom:6px}.palette{position:relative;top:40px;left:-55px;z-index:100}@media (max-width:1037px){.gd-text-menu{position:fixed;left:0;right:0;width:inherit;height:60px;-webkit-box-align:center;align-items:center;padding:0;margin:0;background-color:#fff;border-top:2px solid #707070;-webkit-transform-origin:top left;transform-origin:top left;z-index:1000}.gd-text-menu ::ng-deep .selected-value{white-space:normal!important;word-wrap:break-word}.gd-text-menu .icon{color:#fff;margin:0 9px}.gd-text-menu ::ng-deep .bcPicker-palette{left:-200px;top:-185px}.gd-text-menu .palette{top:unset;bottom:40px;left:unset;right:5px}.gd-text-menu ::ng-deep .dropdown-menu{bottom:40px;top:unset!important}.gd-text-menu ::ng-deep .first-component ::ng-deep .dropdown-menu{left:0}.gd-text-menu ::ng-deep .button{margin:3px!important;font-size:16px}}"] - }] } - ]; - /** @nocollapse */ - TextMenuComponent.ctorParameters = function () { return [ - { type: OnCloseService }, - { type: ZoomService }, - { type: WindowService }, - { type: core.ElementRef }, - { type: core.Renderer2 } - ]; }; - TextMenuComponent.propDecorators = { - blur: [{ type: core.Input }], - fontSize: [{ type: core.Input }], - font: [{ type: core.Input }], - bold: [{ type: core.Input }], - italic: [{ type: core.Input }], - underline: [{ type: core.Input }], - color: [{ type: core.Input }], - decoration: [{ type: core.Input }], - showTooltips: [{ type: core.Input }], - outFontSize: [{ type: core.Output }], - outFont: [{ type: core.Output }], - outBold: [{ type: core.Output }], - outItalic: [{ type: core.Output }], - outUnderline: [{ type: core.Output }], - outColor: [{ type: core.Output }] - }; - return TextMenuComponent; - }()); - if (false) { - /** @type {?} */ - TextMenuComponent.prototype.blur; - /** @type {?} */ - TextMenuComponent.prototype.fontSize; - /** @type {?} */ - TextMenuComponent.prototype.font; - /** @type {?} */ - TextMenuComponent.prototype.bold; - /** @type {?} */ - TextMenuComponent.prototype.italic; - /** @type {?} */ - TextMenuComponent.prototype.underline; - /** @type {?} */ - TextMenuComponent.prototype.color; - /** @type {?} */ - TextMenuComponent.prototype.decoration; - /** @type {?} */ - TextMenuComponent.prototype.showTooltips; - /** @type {?} */ - TextMenuComponent.prototype.outFontSize; - /** @type {?} */ - TextMenuComponent.prototype.outFont; - /** @type {?} */ - TextMenuComponent.prototype.outBold; - /** @type {?} */ - TextMenuComponent.prototype.outItalic; - /** @type {?} */ - TextMenuComponent.prototype.outUnderline; - /** @type {?} */ - TextMenuComponent.prototype.outColor; - /** @type {?} */ - TextMenuComponent.prototype.fontSizeOptions; - /** @type {?} */ - TextMenuComponent.prototype.fontOptions; - /** @type {?} */ - TextMenuComponent.prototype.colorPickerShow; - /** @type {?} */ - TextMenuComponent.prototype.isMobile; - /** - * @type {?} - * @private - */ - TextMenuComponent.prototype._onCloseService; - /** - * @type {?} - * @private - */ - TextMenuComponent.prototype._zoomService; - /** - * @type {?} - * @private - */ - TextMenuComponent.prototype._windowService; - /** - * @type {?} - * @protected - */ - TextMenuComponent.prototype._elementRef; - /** - * @type {?} - * @private - */ - TextMenuComponent.prototype.renderer; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** @type {?} */ + var $$9 = jquery; + var TextMenuComponent = /** @class */ (function () { + function TextMenuComponent(_onCloseService, _zoomService, _windowService, _elementRef, renderer) { + var _this = this; + this._onCloseService = _onCloseService; + this._zoomService = _zoomService; + this._windowService = _windowService; + this._elementRef = _elementRef; + this.renderer = renderer; + this.decoration = true; + this.showTooltips = true; + this.outFontSize = new core.EventEmitter(); + this.outFont = new core.EventEmitter(); + this.outBold = new core.EventEmitter(); + this.outItalic = new core.EventEmitter(); + this.outUnderline = new core.EventEmitter(); + this.outColor = new core.EventEmitter(); + this.fontSizeOptions = FormattingService.getFontSizeOptions(); + this.fontOptions = FormattingService.getFontOptions(); + this.colorPickerShow = false; + _onCloseService.onClose.subscribe((/** + * @return {?} + */ + function () { + _this.colorPickerShow = false; + })); + this.isMobile = _windowService.isMobile(); + _windowService.onResize.subscribe((/** + * @param {?} w + * @return {?} + */ + function (w) { + _this.isMobile = _windowService.isMobile(); + })); + _zoomService.zoomChange.subscribe((/** + * @param {?} val + * @return {?} + */ + function (val) { + if (_this.isMobile) { + _this.changePosition(val); + } + })); + } + /** + * @return {?} + */ + TextMenuComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + }; + /** + * @param {?} val + * @return {?} + */ + TextMenuComponent.prototype.changePosition = /** + * @param {?} val + * @return {?} + */ + function (val) { + /** @type {?} */ + var top = (window.innerHeight - 24 - this._elementRef.nativeElement.parentElement.getBoundingClientRect().top - this._elementRef.nativeElement.parentElement.getBoundingClientRect().height); + /** @type {?} */ + var left = this._elementRef.nativeElement.parentElement.getBoundingClientRect().left; + this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'width', window.innerWidth + 'px'); + this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'top', top + 'px'); + this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'left', -left + 'px'); + }; + /** + * @param {?} $event + * @return {?} + */ + TextMenuComponent.prototype.selectFontSize = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + $$9(".gd-wrapper").off("keyup"); + this.outFontSize.emit($event.value); + $$9(".gd-wrapper").on("keyup", (/** + * @return {?} + */ + function () { + /** @type {?} */ + var fontElements = document.getElementsByTagName("font"); + for (var i = 0, len = fontElements.length; i < len; ++i) { + if (fontElements[i].getAttribute('size') === "7") { + fontElements[i].removeAttribute("size"); + fontElements[i].style.fontSize = $event + "px"; + } + } + })); + }; + /** + * @param {?} $event + * @return {?} + */ + TextMenuComponent.prototype.selectFont = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + event.preventDefault(); + event.stopPropagation(); + this.outFont.emit($event.value); + }; + /** + * @param {?} $event + * @return {?} + */ + TextMenuComponent.prototype.toggleColorPicker = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + $event.preventDefault(); + $event.stopPropagation(); + this.colorPickerShow = !this.colorPickerShow; + }; + /** + * @param {?} $event + * @return {?} + */ + TextMenuComponent.prototype.selectColor = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + this.colorPickerShow = false; + this.outColor.emit($event); + }; + /** + * @param {?} event + * @return {?} + */ + TextMenuComponent.prototype.toggleBold = /** + * @param {?} event + * @return {?} + */ + function (event) { + event.preventDefault(); + event.stopPropagation(); + this.outBold.emit(!this.bold); + }; + /** + * @param {?} event + * @return {?} + */ + TextMenuComponent.prototype.toggleItalic = /** + * @param {?} event + * @return {?} + */ + function (event) { + event.preventDefault(); + event.stopPropagation(); + this.outItalic.emit(!this.italic); + }; + /** + * @param {?} event + * @return {?} + */ + TextMenuComponent.prototype.toggleUnderline = /** + * @param {?} event + * @return {?} + */ + function (event) { + event.preventDefault(); + event.stopPropagation(); + this.outUnderline.emit(!this.underline); + }; + /** + * @param {?} $event + * @return {?} + */ + TextMenuComponent.prototype.closePicker = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + this.colorPickerShow = !$event; + }; + TextMenuComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-text-menu', + template: "
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n", + styles: ["::ng-deep .active{background-color:#e7e7e7}.gd-text-menu{display:flex;flex-direction:row}.gd-text-menu .format-select{height:37px;display:flex;justify-content:center;align-items:center;max-width:80px;margin:0 3px}.gd-text-menu .first-component{margin-left:8px}.gd-text-menu ::ng-deep .dropdown-menu{top:40px!important;height:120px;overflow-y:auto}.gd-text-menu ::ng-deep .icon-button{margin:0!important}.bg-color-pic{border-radius:100%;border:1px solid #ccc;position:absolute;height:8px;width:8px;right:6px;bottom:6px}.palette{position:relative;top:40px;left:-55px;z-index:100}@media (max-width:1037px){.gd-text-menu{position:fixed;left:0;right:0;width:inherit;height:60px;align-items:center;padding:0;margin:0;background-color:#fff;border-top:2px solid #707070;transform-origin:top left;z-index:1000}.gd-text-menu ::ng-deep .selected-value{white-space:normal!important;word-wrap:break-word}.gd-text-menu .icon{color:#fff;margin:0 9px}.gd-text-menu ::ng-deep .bcPicker-palette{left:-200px;top:-185px}.gd-text-menu .palette{top:unset;bottom:40px;left:unset;right:5px}.gd-text-menu ::ng-deep .dropdown-menu{bottom:40px;top:unset!important}.gd-text-menu ::ng-deep .first-component ::ng-deep .dropdown-menu{left:0}.gd-text-menu ::ng-deep .button{margin:3px!important;font-size:16px}}"] + }] } + ]; + /** @nocollapse */ + TextMenuComponent.ctorParameters = function () { return [ + { type: OnCloseService }, + { type: ZoomService }, + { type: WindowService }, + { type: core.ElementRef }, + { type: core.Renderer2 } + ]; }; + TextMenuComponent.propDecorators = { + blur: [{ type: core.Input }], + fontSize: [{ type: core.Input }], + font: [{ type: core.Input }], + bold: [{ type: core.Input }], + italic: [{ type: core.Input }], + underline: [{ type: core.Input }], + color: [{ type: core.Input }], + decoration: [{ type: core.Input }], + showTooltips: [{ type: core.Input }], + outFontSize: [{ type: core.Output }], + outFont: [{ type: core.Output }], + outBold: [{ type: core.Output }], + outItalic: [{ type: core.Output }], + outUnderline: [{ type: core.Output }], + outColor: [{ type: core.Output }] + }; + return TextMenuComponent; + }()); + if (false) { + /** @type {?} */ + TextMenuComponent.prototype.blur; + /** @type {?} */ + TextMenuComponent.prototype.fontSize; + /** @type {?} */ + TextMenuComponent.prototype.font; + /** @type {?} */ + TextMenuComponent.prototype.bold; + /** @type {?} */ + TextMenuComponent.prototype.italic; + /** @type {?} */ + TextMenuComponent.prototype.underline; + /** @type {?} */ + TextMenuComponent.prototype.color; + /** @type {?} */ + TextMenuComponent.prototype.decoration; + /** @type {?} */ + TextMenuComponent.prototype.showTooltips; + /** @type {?} */ + TextMenuComponent.prototype.outFontSize; + /** @type {?} */ + TextMenuComponent.prototype.outFont; + /** @type {?} */ + TextMenuComponent.prototype.outBold; + /** @type {?} */ + TextMenuComponent.prototype.outItalic; + /** @type {?} */ + TextMenuComponent.prototype.outUnderline; + /** @type {?} */ + TextMenuComponent.prototype.outColor; + /** @type {?} */ + TextMenuComponent.prototype.fontSizeOptions; + /** @type {?} */ + TextMenuComponent.prototype.fontOptions; + /** @type {?} */ + TextMenuComponent.prototype.colorPickerShow; + /** @type {?} */ + TextMenuComponent.prototype.isMobile; + /** + * @type {?} + * @private + */ + TextMenuComponent.prototype._onCloseService; + /** + * @type {?} + * @private + */ + TextMenuComponent.prototype._zoomService; + /** + * @type {?} + * @private + */ + TextMenuComponent.prototype._windowService; + /** + * @type {?} + * @protected + */ + TextMenuComponent.prototype._elementRef; + /** + * @type {?} + * @private + */ + TextMenuComponent.prototype.renderer; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var MenuType = /** @class */ (function () { - function MenuType() { - } - MenuType.FOR_SIGNATURE = "signature"; - MenuType.FOR_ANNOTATION = "annotation"; - return MenuType; - }()); - if (false) { - /** @type {?} */ - MenuType.FOR_SIGNATURE; - /** @type {?} */ - MenuType.FOR_ANNOTATION; - } - var ContextMenuComponent = /** @class */ (function () { - function ContextMenuComponent(_windowService, _zoomService, _elementRef, renderer) { - var _this = this; - this._windowService = _windowService; - this._zoomService = _zoomService; - this._elementRef = _elementRef; - this.renderer = renderer; - this.formatting = Formatting.default(); - this.lock = false; - this.translation = 0; - this.changeFormatting = new core.EventEmitter(); - this.removeItem = new core.EventEmitter(); - this.copySign = new core.EventEmitter(); - this.lockOut = new core.EventEmitter(); - this.comment = new core.EventEmitter(); - this.isMobile = _windowService.isMobile(); - _windowService.onResize.subscribe((/** - * @param {?} w - * @return {?} - */ - function (w) { - _this.isMobile = _windowService.isMobile(); - })); - _zoomService.zoomChange.subscribe((/** - * @param {?} val - * @return {?} - */ - function (val) { - if (_this.isMobile) { - _this.changeScale(val); - } - })); - } - /** - * @return {?} - */ - ContextMenuComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - }; - /** - * @param {?} val - * @return {?} - */ - ContextMenuComponent.prototype.changeScale = /** - * @param {?} val - * @return {?} - */ - function (val) { - this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-context-menu'), 'transform', 'scale(' + 1 / (val / 100) + ')'); - }; - /** - * @return {?} - */ - ContextMenuComponent.prototype.saveChanges = /** - * @return {?} - */ - function () { - this.changeFormatting.emit(this.formatting); - }; - /** - * @param {?} $event - * @return {?} - */ - ContextMenuComponent.prototype.selectFontSize = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - this.formatting.fontSize = $event; - this.saveChanges(); - }; - /** - * @param {?} $event - * @return {?} - */ - ContextMenuComponent.prototype.selectFont = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - this.formatting.font = $event; - this.saveChanges(); - }; - /** - * @param {?} $event - * @return {?} - */ - ContextMenuComponent.prototype.selectColor = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - this.formatting.color = $event; - this.saveChanges(); - }; - /** - * @param {?} $event - * @return {?} - */ - ContextMenuComponent.prototype.toggleBold = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - this.formatting.bold = $event; - this.saveChanges(); - }; - /** - * @param {?} $event - * @return {?} - */ - ContextMenuComponent.prototype.toggleItalic = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - this.formatting.italic = $event; - this.saveChanges(); - }; - /** - * @param {?} $event - * @return {?} - */ - ContextMenuComponent.prototype.toggleUnderline = /** - * @param {?} $event - * @return {?} - */ - function ($event) { - this.formatting.underline = $event; - this.saveChanges(); - }; - /** - * @return {?} - */ - ContextMenuComponent.prototype.deleteItem = /** - * @return {?} - */ - function () { - this.removeItem.emit(true); - }; - /** - * @return {?} - */ - ContextMenuComponent.prototype.toggleLock = /** - * @return {?} - */ - function () { - this.lock = !this.lock; - this.lockOut.emit(this.lock); - }; - /** - * @return {?} - */ - ContextMenuComponent.prototype.onCopySign = /** - * @return {?} - */ - function () { - this.copySign.emit(true); - }; - /** - * @return {?} - */ - ContextMenuComponent.prototype.isSignature = /** - * @return {?} - */ - function () { - return this.menuType === MenuType.FOR_SIGNATURE; - }; - /** - * @return {?} - */ - ContextMenuComponent.prototype.isAnnotation = /** - * @return {?} - */ - function () { - return this.menuType === MenuType.FOR_ANNOTATION; - }; - /** - * @return {?} - */ - ContextMenuComponent.prototype.addComment = /** - * @return {?} - */ - function () { - this.comment.emit(true); - }; - ContextMenuComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'gd-context-menu', - template: "
10 ? 'gd-context-menu-top' : 'gd-context-menu-bottom'\">\n \n \n \n \n \n \n
\n", - styles: [".gd-context-menu-top{top:-44px}.gd-context-menu-bottom{bottom:-40px}.gd-context-menu{box-shadow:rgba(0,0,0,.52) 0 0 5px;background-color:#fff;position:absolute;left:0;right:0;margin:auto;cursor:default;width:max-content;width:-moz-max-content;width:-webkit-max-content;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;z-index:999}.gd-context-menu .arrows{cursor:move}.gd-context-menu ::ng-deep .active{background-color:#e7e7e7}.gd-context-menu ::ng-deep .icon-button{margin:0!important}@media (max-width:1037px){.gd-context-menu-top{top:-42px;-webkit-transform-origin:bottom center;transform-origin:bottom center}}"] - }] } - ]; - /** @nocollapse */ - ContextMenuComponent.ctorParameters = function () { return [ - { type: WindowService }, - { type: ZoomService }, - { type: core.ElementRef }, - { type: core.Renderer2 } - ]; }; - ContextMenuComponent.propDecorators = { - formatting: [{ type: core.Input }], - textMenu: [{ type: core.Input }], - topPosition: [{ type: core.Input }], - lock: [{ type: core.Input }], - translation: [{ type: core.Input }], - menuType: [{ type: core.Input }], - changeFormatting: [{ type: core.Output }], - removeItem: [{ type: core.Output }], - copySign: [{ type: core.Output }], - lockOut: [{ type: core.Output }], - comment: [{ type: core.Output }] - }; - return ContextMenuComponent; - }()); - if (false) { - /** @type {?} */ - ContextMenuComponent.prototype.formatting; - /** @type {?} */ - ContextMenuComponent.prototype.textMenu; - /** @type {?} */ - ContextMenuComponent.prototype.topPosition; - /** @type {?} */ - ContextMenuComponent.prototype.lock; - /** @type {?} */ - ContextMenuComponent.prototype.translation; - /** @type {?} */ - ContextMenuComponent.prototype.menuType; - /** @type {?} */ - ContextMenuComponent.prototype.changeFormatting; - /** @type {?} */ - ContextMenuComponent.prototype.removeItem; - /** @type {?} */ - ContextMenuComponent.prototype.copySign; - /** @type {?} */ - ContextMenuComponent.prototype.lockOut; - /** @type {?} */ - ContextMenuComponent.prototype.comment; - /** @type {?} */ - ContextMenuComponent.prototype.isMobile; - /** - * @type {?} - * @private - */ - ContextMenuComponent.prototype._windowService; - /** - * @type {?} - * @private - */ - ContextMenuComponent.prototype._zoomService; - /** - * @type {?} - * @protected - */ - ContextMenuComponent.prototype._elementRef; - /** - * @type {?} - * @private - */ - ContextMenuComponent.prototype.renderer; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var MenuType = /** @class */ (function () { + function MenuType() { + } + MenuType.FOR_SIGNATURE = "signature"; + MenuType.FOR_ANNOTATION = "annotation"; + return MenuType; + }()); + if (false) { + /** @type {?} */ + MenuType.FOR_SIGNATURE; + /** @type {?} */ + MenuType.FOR_ANNOTATION; + } + var ContextMenuComponent = /** @class */ (function () { + function ContextMenuComponent(_windowService, _zoomService, _elementRef, renderer) { + var _this = this; + this._windowService = _windowService; + this._zoomService = _zoomService; + this._elementRef = _elementRef; + this.renderer = renderer; + this.formatting = Formatting.default(); + this.lock = false; + this.translation = 0; + this.changeFormatting = new core.EventEmitter(); + this.removeItem = new core.EventEmitter(); + this.copySign = new core.EventEmitter(); + this.lockOut = new core.EventEmitter(); + this.comment = new core.EventEmitter(); + this.isMobile = _windowService.isMobile(); + _windowService.onResize.subscribe((/** + * @param {?} w + * @return {?} + */ + function (w) { + _this.isMobile = _windowService.isMobile(); + })); + _zoomService.zoomChange.subscribe((/** + * @param {?} val + * @return {?} + */ + function (val) { + if (_this.isMobile) { + _this.changeScale(val); + } + })); + } + /** + * @return {?} + */ + ContextMenuComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + }; + /** + * @param {?} val + * @return {?} + */ + ContextMenuComponent.prototype.changeScale = /** + * @param {?} val + * @return {?} + */ + function (val) { + this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-context-menu'), 'transform', 'scale(' + 1 / (val / 100) + ')'); + }; + /** + * @return {?} + */ + ContextMenuComponent.prototype.saveChanges = /** + * @return {?} + */ + function () { + this.changeFormatting.emit(this.formatting); + }; + /** + * @param {?} $event + * @return {?} + */ + ContextMenuComponent.prototype.selectFontSize = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + this.formatting.fontSize = $event; + this.saveChanges(); + }; + /** + * @param {?} $event + * @return {?} + */ + ContextMenuComponent.prototype.selectFont = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + this.formatting.font = $event; + this.saveChanges(); + }; + /** + * @param {?} $event + * @return {?} + */ + ContextMenuComponent.prototype.selectColor = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + this.formatting.color = $event; + this.saveChanges(); + }; + /** + * @param {?} $event + * @return {?} + */ + ContextMenuComponent.prototype.toggleBold = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + this.formatting.bold = $event; + this.saveChanges(); + }; + /** + * @param {?} $event + * @return {?} + */ + ContextMenuComponent.prototype.toggleItalic = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + this.formatting.italic = $event; + this.saveChanges(); + }; + /** + * @param {?} $event + * @return {?} + */ + ContextMenuComponent.prototype.toggleUnderline = /** + * @param {?} $event + * @return {?} + */ + function ($event) { + this.formatting.underline = $event; + this.saveChanges(); + }; + /** + * @return {?} + */ + ContextMenuComponent.prototype.deleteItem = /** + * @return {?} + */ + function () { + this.removeItem.emit(true); + }; + /** + * @return {?} + */ + ContextMenuComponent.prototype.toggleLock = /** + * @return {?} + */ + function () { + this.lock = !this.lock; + this.lockOut.emit(this.lock); + }; + /** + * @return {?} + */ + ContextMenuComponent.prototype.onCopySign = /** + * @return {?} + */ + function () { + this.copySign.emit(true); + }; + /** + * @return {?} + */ + ContextMenuComponent.prototype.isSignature = /** + * @return {?} + */ + function () { + return this.menuType === MenuType.FOR_SIGNATURE; + }; + /** + * @return {?} + */ + ContextMenuComponent.prototype.isAnnotation = /** + * @return {?} + */ + function () { + return this.menuType === MenuType.FOR_ANNOTATION; + }; + /** + * @return {?} + */ + ContextMenuComponent.prototype.addComment = /** + * @return {?} + */ + function () { + this.comment.emit(true); + }; + ContextMenuComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'gd-context-menu', + template: "
10 ? 'gd-context-menu-top' : 'gd-context-menu-bottom'\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n", + styles: [".gd-context-menu-top{top:-44px}.gd-context-menu-bottom{bottom:-40px}.gd-context-menu{box-shadow:rgba(0,0,0,.52) 0 0 5px;background-color:#fff;position:absolute;left:0;right:0;margin:auto;cursor:default;width:max-content;width:-moz-max-content;width:-webkit-max-content;display:flex;flex-direction:row;z-index:999}.gd-context-menu .arrows{cursor:move}.gd-context-menu ::ng-deep .active{background-color:#e7e7e7}.gd-context-menu ::ng-deep .icon-button{margin:0!important}@media (max-width:1037px){.gd-context-menu-top{top:-42px;transform-origin:bottom center}}"] + }] } + ]; + /** @nocollapse */ + ContextMenuComponent.ctorParameters = function () { return [ + { type: WindowService }, + { type: ZoomService }, + { type: core.ElementRef }, + { type: core.Renderer2 } + ]; }; + ContextMenuComponent.propDecorators = { + formatting: [{ type: core.Input }], + textMenu: [{ type: core.Input }], + topPosition: [{ type: core.Input }], + lock: [{ type: core.Input }], + translation: [{ type: core.Input }], + menuType: [{ type: core.Input }], + changeFormatting: [{ type: core.Output }], + removeItem: [{ type: core.Output }], + copySign: [{ type: core.Output }], + lockOut: [{ type: core.Output }], + comment: [{ type: core.Output }] + }; + return ContextMenuComponent; + }()); + if (false) { + /** @type {?} */ + ContextMenuComponent.prototype.formatting; + /** @type {?} */ + ContextMenuComponent.prototype.textMenu; + /** @type {?} */ + ContextMenuComponent.prototype.topPosition; + /** @type {?} */ + ContextMenuComponent.prototype.lock; + /** @type {?} */ + ContextMenuComponent.prototype.translation; + /** @type {?} */ + ContextMenuComponent.prototype.menuType; + /** @type {?} */ + ContextMenuComponent.prototype.changeFormatting; + /** @type {?} */ + ContextMenuComponent.prototype.removeItem; + /** @type {?} */ + ContextMenuComponent.prototype.copySign; + /** @type {?} */ + ContextMenuComponent.prototype.lockOut; + /** @type {?} */ + ContextMenuComponent.prototype.comment; + /** @type {?} */ + ContextMenuComponent.prototype.isMobile; + /** + * @type {?} + * @private + */ + ContextMenuComponent.prototype._windowService; + /** + * @type {?} + * @private + */ + ContextMenuComponent.prototype._zoomService; + /** + * @type {?} + * @protected + */ + ContextMenuComponent.prototype._elementRef; + /** + * @type {?} + * @private + */ + ContextMenuComponent.prototype.renderer; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** @type {?} */ - var providers = [ConfigService, - Api, - ModalService, - FileService, - FileModel, - FileUtil, - Utils, - SanitizeHtmlPipe, - SanitizeResourceHtmlPipe, - SanitizeStylePipe, - HighlightSearchPipe, - UploadFilesService, - RenderPrintService, - NavigateService, - PagePreloadService, - ZoomService, - ExceptionMessageService, - PasswordService, - ErrorInterceptorService, - SearchService, - WindowService, - ViewportService, - FormattingService, - BackFormattingService, - OnCloseService, - LoadingMaskInterceptorService, - LoadingMaskService, - TabActivatorService, - AddDynamicComponentService, - HostingDynamicComponentService, - TopTabActivatorService]; - var CommonComponentsModule = /** @class */ (function () { - function CommonComponentsModule() { - fontawesomeSvgCore.library.add(freeSolidSvgIcons.fas, freeRegularSvgIcons.far); - } - CommonComponentsModule.decorators = [ - { type: core.NgModule, args: [{ - imports: [common.CommonModule, angularFontawesome.FontAwesomeModule, ngClickOutside.ClickOutsideModule], - declarations: [ - TopToolbarComponent, - SidePanelComponent, - ButtonComponent, - LogoComponent, - TooltipComponent, - ModalComponent, - BrowseFilesModalComponent, - DocumentComponent, - PageComponent, - SanitizeHtmlPipe, - SanitizeResourceHtmlPipe, - SanitizeStylePipe, - HighlightSearchPipe, - UploadFileZoneComponent, - DndDirective, - ScrollableDirective, - MouseWheelDirective, - ZoomDirective, - SelectComponent, - DisabledCursorDirective, - RotationDirective, - InitStateComponent, - RenderPrintDirective, - ErrorModalComponent, - PasswordRequiredComponent, - SearchComponent, - SearchableDirective, - TabbedToolbarsComponent, - TabComponent, - TabsComponent, - ColorPickerComponent, - FormattingDirective, - SuccessModalComponent, - EditorDirective, - LoadingMaskComponent, - DropDownComponent, - DropDownItemComponent, - DropDownItemsComponent, - DropDownToggleComponent, - LeftSideBarComponent, - TooltipDirective, - HostDynamicDirective, - ResizingComponent, - TopTabComponent, - TextMenuComponent, - ContextMenuComponent - ], - exports: [ - TopToolbarComponent, - SidePanelComponent, - ButtonComponent, - LogoComponent, - TooltipComponent, - ModalComponent, - BrowseFilesModalComponent, - DocumentComponent, - PageComponent, - SanitizeResourceHtmlPipe, - SanitizeStylePipe, - HighlightSearchPipe, - SanitizeHtmlPipe, - UploadFileZoneComponent, - ScrollableDirective, - MouseWheelDirective, - SelectComponent, - RotationDirective, - InitStateComponent, - RenderPrintDirective, - ErrorModalComponent, - PasswordRequiredComponent, - SearchComponent, - SearchableDirective, - TabbedToolbarsComponent, - TabComponent, - TabsComponent, - ColorPickerComponent, - FormattingDirective, - SuccessModalComponent, - LoadingMaskComponent, - DndDirective, - DropDownComponent, - DropDownItemComponent, - DropDownItemsComponent, - DropDownToggleComponent, - ZoomDirective, - DropDownToggleComponent, - LeftSideBarComponent, - TooltipDirective, - HostDynamicDirective, - ResizingComponent, - TopTabComponent, - TextMenuComponent, - ContextMenuComponent - ], - providers: providers - },] } - ]; - /** @nocollapse */ - CommonComponentsModule.ctorParameters = function () { return []; }; - return CommonComponentsModule; + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** @type {?} */ + var providers = [ConfigService, + Api, + ModalService, + FileService, + FileModel, + FileUtil, + Utils, + SanitizeHtmlPipe, + SanitizeResourceHtmlPipe, + SanitizeStylePipe, + HighlightSearchPipe, + UploadFilesService, + RenderPrintService, + NavigateService, + PagePreloadService, + ZoomService, + ExceptionMessageService, + PasswordService, + ErrorInterceptorService, + SearchService, + WindowService, + ViewportService, + FormattingService, + BackFormattingService, + OnCloseService, + LoadingMaskInterceptorService, + LoadingMaskService, + TabActivatorService, + AddDynamicComponentService, + HostingDynamicComponentService, + TopTabActivatorService]; + var CommonComponentsModule = /** @class */ (function () { + function CommonComponentsModule() { + fontawesomeSvgCore.library.add(freeSolidSvgIcons.fas, freeRegularSvgIcons.far); + } + CommonComponentsModule.decorators = [ + { type: core.NgModule, args: [{ + imports: [common.CommonModule, angularFontawesome.FontAwesomeModule, ngClickOutside.ClickOutsideModule], + declarations: [ + TopToolbarComponent, + SidePanelComponent, + ButtonComponent, + LogoComponent, + TooltipComponent, + ModalComponent, + BrowseFilesModalComponent, + DocumentComponent, + PageComponent, + SanitizeHtmlPipe, + SanitizeResourceHtmlPipe, + SanitizeStylePipe, + HighlightSearchPipe, + UploadFileZoneComponent, + DndDirective, + ScrollableDirective, + MouseWheelDirective, + ZoomDirective, + SelectComponent, + DisabledCursorDirective, + RotationDirective, + InitStateComponent, + RenderPrintDirective, + ErrorModalComponent, + PasswordRequiredComponent, + SearchComponent, + SearchableDirective, + TabbedToolbarsComponent, + TabComponent, + TabsComponent, + ColorPickerComponent, + FormattingDirective, + SuccessModalComponent, + EditorDirective, + LoadingMaskComponent, + DropDownComponent, + DropDownItemComponent, + DropDownItemsComponent, + DropDownToggleComponent, + LeftSideBarComponent, + TooltipDirective, + HostDynamicDirective, + ResizingComponent, + TopTabComponent, + TextMenuComponent, + ContextMenuComponent + ], + exports: [ + TopToolbarComponent, + SidePanelComponent, + ButtonComponent, + LogoComponent, + TooltipComponent, + ModalComponent, + BrowseFilesModalComponent, + DocumentComponent, + PageComponent, + SanitizeResourceHtmlPipe, + SanitizeStylePipe, + HighlightSearchPipe, + SanitizeHtmlPipe, + UploadFileZoneComponent, + ScrollableDirective, + MouseWheelDirective, + SelectComponent, + RotationDirective, + InitStateComponent, + RenderPrintDirective, + ErrorModalComponent, + PasswordRequiredComponent, + SearchComponent, + SearchableDirective, + TabbedToolbarsComponent, + TabComponent, + TabsComponent, + ColorPickerComponent, + FormattingDirective, + SuccessModalComponent, + LoadingMaskComponent, + DndDirective, + DropDownComponent, + DropDownItemComponent, + DropDownItemsComponent, + DropDownToggleComponent, + ZoomDirective, + DropDownToggleComponent, + LeftSideBarComponent, + TooltipDirective, + HostDynamicDirective, + ResizingComponent, + TopTabComponent, + TextMenuComponent, + ContextMenuComponent + ], + providers: providers + },] } + ]; + /** @nocollapse */ + CommonComponentsModule.ctorParameters = function () { return []; }; + return CommonComponentsModule; }()); exports.AddDynamicComponentService = AddDynamicComponentService; diff --git a/dist/libs/common-components/bundles/groupdocs.examples.angular-common-components.umd.js.map b/dist/libs/common-components/bundles/groupdocs.examples.angular-common-components.umd.js.map index efe4072f6..4d5689db6 100644 --- a/dist/libs/common-components/bundles/groupdocs.examples.angular-common-components.umd.js.map +++ b/dist/libs/common-components/bundles/groupdocs.examples.angular-common-components.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"groupdocs.examples.angular-common-components.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","ng://@groupdocs.examples.angular/common-components/lib/top-toolbar/top-toolbar.component.ts","ng://@groupdocs.examples.angular/common-components/lib/side-panel/side-panel.component.ts","ng://@groupdocs.examples.angular/common-components/lib/window.service.ts","ng://@groupdocs.examples.angular/common-components/lib/button/button.component.ts","ng://@groupdocs.examples.angular/common-components/lib/logo/logo.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tooltip/tooltip.component.ts","ng://@groupdocs.examples.angular/common-components/lib/config.service.ts","ng://@groupdocs.examples.angular/common-components/lib/modal.service.ts","ng://@groupdocs.examples.angular/common-components/lib/modal/modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/file.service.ts","ng://@groupdocs.examples.angular/common-components/lib/upload-files.service.ts","ng://@groupdocs.examples.angular/common-components/lib/browse-files-modal/browse-files-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/zoom.service.ts","ng://@groupdocs.examples.angular/common-components/lib/page-preload.service.ts","ng://@groupdocs.examples.angular/common-components/lib/navigate.service.ts","ng://@groupdocs.examples.angular/common-components/lib/document/document.component.ts","ng://@groupdocs.examples.angular/common-components/lib/page/page.component.ts","ng://@groupdocs.examples.angular/common-components/lib/pipes.ts","ng://@groupdocs.examples.angular/common-components/lib/upload-file-zone/upload-file-zone.component.ts","ng://@groupdocs.examples.angular/common-components/lib/dnd.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/viewport.service.ts","ng://@groupdocs.examples.angular/common-components/lib/scrollable.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/mousewheel.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/zoom.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/on-close.service.ts","ng://@groupdocs.examples.angular/common-components/lib/select/select.component.ts","ng://@groupdocs.examples.angular/common-components/lib/disabled-cursor.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/rotation.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/init-state/init-state.component.ts","ng://@groupdocs.examples.angular/common-components/lib/render-print.service.ts","ng://@groupdocs.examples.angular/common-components/lib/render-print.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/exception-message.service.ts","ng://@groupdocs.examples.angular/common-components/lib/error-modal/error-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/password.service.ts","ng://@groupdocs.examples.angular/common-components/lib/password-required/password-required.component.ts","ng://@groupdocs.examples.angular/common-components/lib/error-interceptor.service.ts","ng://@groupdocs.examples.angular/common-components/lib/search.service.ts","ng://@groupdocs.examples.angular/common-components/lib/search/search.component.ts","ng://@groupdocs.examples.angular/common-components/lib/searchable.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/tabbed-toolbars/tabbed-toolbars.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tab-activator.service.ts","ng://@groupdocs.examples.angular/common-components/lib/tab/tab.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tabs/tabs.component.ts","ng://@groupdocs.examples.angular/common-components/lib/formatting.service.ts","ng://@groupdocs.examples.angular/common-components/lib/color-picker/color-picker.component.ts","ng://@groupdocs.examples.angular/common-components/lib/back-formatting.service.ts","ng://@groupdocs.examples.angular/common-components/lib/selection.service.ts","ng://@groupdocs.examples.angular/common-components/lib/formatting.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/success-modal/success-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/edit-html.service.ts","ng://@groupdocs.examples.angular/common-components/lib/editor.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask.service.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask/loading-mask.component.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask-interceptor.service.ts","ng://@groupdocs.examples.angular/common-components/lib/drop-down/drop-down.component.ts","ng://@groupdocs.examples.angular/common-components/lib/left-side-bar/left-side-bar.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tooltip.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/add-dynamic-component.service.ts","ng://@groupdocs.examples.angular/common-components/lib/hosting-dynamic-component.service.ts","ng://@groupdocs.examples.angular/common-components/lib/host-dynamic.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/resizing/resizing.component.ts","ng://@groupdocs.examples.angular/common-components/lib/top-tab-activator.service.ts","ng://@groupdocs.examples.angular/common-components/lib/top-tab/top-tab.component.ts","ng://@groupdocs.examples.angular/common-components/lib/text-menu/text-menu.component.ts","ng://@groupdocs.examples.angular/common-components/lib/context-menu/context-menu.component.ts","ng://@groupdocs.examples.angular/common-components/lib/common-components.module.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import {Component, Input} from '@angular/core';\n\n@Component({\n selector: 'gd-top-toolbar',\n templateUrl: './top-toolbar.component.html',\n styleUrls: ['./top-toolbar.component.less']\n})\nexport class TopToolbarComponent {\n\n constructor() {\n }\n}\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\n\n@Component({\n selector: 'gd-side-panel',\n templateUrl: './side-panel.component.html',\n styleUrls: ['./side-panel.component.less']\n})\n\nexport class SidePanelComponent {\n @Input() title: string;\n @Input() icon: string;\n @Input() closable = true;\n @Input() saveable = true;\n @Output() hideSidePanel = new EventEmitter();\n @Output() saveInSidePanel = new EventEmitter();\n\n onlyTitle = false;\n\n constructor() {\n }\n\n closeSidePanel() {\n this.hideSidePanel.emit(true);\n }\n\n saveBySidePanel() {\n this.saveInSidePanel.emit(true);\n }\n\n toggleTitleMode(){\n if (this.closable && !this.saveable) {\n this.onlyTitle = !this.onlyTitle;\n }\n }\n}\n","import {fromEvent, Observable, Subject} from \"rxjs\";\nimport {debounceTime, distinctUntilChanged, startWith, tap} from \"rxjs/operators\";\n\nconst MOBILE_MAX_WIDTH = 425;\nconst TABLET_MAX_WIDTH = 1024;\n\nexport class WindowService {\n\n private resizeSubject: Subject = new Subject();\n private _resize$;\n private width: number;\n private height: number;\n\n constructor() {\n this.width = window.innerWidth;\n this.height = window.innerHeight;\n\n this._resize$ = fromEvent(window, 'resize')\n .pipe(\n debounceTime(200),\n distinctUntilChanged(),\n startWith({target: {innerWidth: window.innerWidth, innerHeight: window.innerHeight}}),\n tap(event => {\n this.resizeSubject.next(event.target);\n this.width = (event.target as Window).innerWidth;\n this.height = (event.target as Window).innerHeight;\n }),\n );\n this._resize$.subscribe();\n }\n\n get onResize(): Observable {\n return this.resizeSubject.asObservable();\n }\n\n isMobile() {\n return this.width <= MOBILE_MAX_WIDTH;\n }\n\n isTablet() {\n return this.width <= TABLET_MAX_WIDTH;\n }\n\n isDesktop() {\n return !this.isMobile() && !this.isTablet();\n }\n\n getWidth() {\n return this.width;\n }\n\n getHeight() {\n return this.height;\n }\n\n isEdge() {\n return window.navigator.userAgent.toLowerCase().indexOf('edge') > -1;\n }\n\n isFirefox() {\n return navigator.userAgent.toLowerCase().indexOf('firefox') > -1;\n }\n}\n","import {Component, Input} from '@angular/core';\nimport {WindowService} from \"../window.service\";\n\n@Component({\n selector: 'gd-button',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.less']\n})\nexport class ButtonComponent {\n @Input() iconOnly = true;\n @Input() intent = 'default';\n @Input() disabled = false;\n @Input() icon: string;\n @Input() iconClass: string;\n @Input() tooltip: string;\n @Input() className: string;\n @Input() toggle = false;\n @Input() iconSize: string;\n @Input() iconRegular = false;\n @Input() elementPosition = 0;\n\n showToolTip = false;\n private isDesktop: boolean;\n\n constructor(windowService: WindowService) {\n this.isDesktop = windowService.isDesktop();\n windowService.onResize.subscribe((w) => {\n this.isDesktop = windowService.isDesktop();\n });\n }\n\n iconButtonClass() {\n return this.iconOnly ? 'icon-button' : '';\n }\n\n onHovering() {\n if (this.isDesktop && !this.disabled) {\n this.className += ' active';\n }\n }\n\n onUnhovering() {\n if (this.isDesktop && !this.disabled) {\n this.className = this.cleanAll(this.className, ' active');\n }\n }\n\n private cleanAll(str: string, val: string) {\n while (str && str.indexOf(val) !== -1) {\n str = str.replace(val, '');\n }\n return str;\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-logo',\n templateUrl: './logo.component.html',\n styleUrls: ['./logo.component.less']\n})\nexport class LogoComponent implements OnInit {\n\n @Input() logo;\n @Input() icon;\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-tooltip',\n templateUrl: './tooltip.component.html',\n styleUrls: ['./tooltip.component.less']\n})\nexport class TooltipComponent implements OnInit {\n\n @Input() text: string;\n @Input() position = 0;\n visibility = 'hidden';\n\n constructor() {\n }\n\n getClass() {\n if (this.position === 0) {\n return 'tooltip';\n }\n return 'tooltip ' + (this.position > 0 ? 'last-element' : 'first-element');\n }\n\n @Input()\n set show(value: boolean) {\n this.visibility = value ? 'shown' : 'hidden';\n }\n\n ngOnInit() {\n }\n\n}\n","import {HttpHeaders} from \"@angular/common/http\";\nimport {Injectable} from \"@angular/core\";\n\nexport class Api {\n public static VIEWER_APP = '/viewer';\n public static SIGNATURE_APP = '/signature';\n public static ANNOTATION_APP = '/annotation';\n public static SEARCH_APP = '/search';\n public static EDITOR_APP = '/editor';\n public static COMPARISON_APP = '/comparison';\n public static CONVERSION_APP = '/conversion';\n public static METADATA_APP = '/metadata';\n public static DEFAULT_API_ENDPOINT = window.location.href;\n public static LOAD_FILE_TREE = '/loadFileTree';\n public static LOAD_CONFIG = '/loadConfig';\n public static LOAD_DOCUMENT_DESCRIPTION = '/loadDocumentDescription';\n public static LOAD_DOCUMENT_PAGE = '/loadDocumentPage';\n public static LOAD_DOCUMENT_PROPERTIES = '/loadProperties';\n public static LOAD_DOCUMENT_PROPERTIES_NAMES = '/loadPropertiesNames';\n public static SAVE_PROPERTY = '/saveProperty';\n public static REMOVE_PROPERTY = '/removeProperty';\n public static ROTATE_DOCUMENT_PAGE = '/rotateDocumentPages';\n public static UPLOAD_DOCUMENTS = '/uploadDocument';\n public static DOWNLOAD_DOCUMENTS = '/downloadDocument';\n public static LOAD_PRINT = '/loadPrint';\n public static LOAD_PRINT_PDF = '/printPdf';\n public static LOAD_THUMBNAILS = '/loadThumbnails';\n public static LOAD_FORMATS = '/loadFormats';\n public static SAVE_FILE = '/saveFile';\n public static CREATE_FILE = '/createFile';\n public static COMPARE_FILES = '/compare';\n public static CONVERT_FILE = '/convert';\n public static DELETE_SIGNATURE_FILE = '/deleteSignatureFile';\n public static REMOVE_FROM_INDEX = '/removeFromIndex';\n public static GET_FILE_STATUS = '/getFileStatus';\n public static SAVE_OPTICAL_CODE = '/saveOpticalCode';\n public static SAVE_TEXT = '/saveText';\n public static SAVE_IMAGE = '/saveImage';\n public static SAVE_STAMP = '/saveStamp';\n public static SIGN = '/sign';\n public static DOWNLOAD_SIGNED = '/downloadSigned';\n public static LOAD_SIGNATURE_IMAGE = '/loadSignatureImage';\n public static ANNOTATE = '/annotate';\n public static SEARCH = '/search';\n public static ADD_FILES_TO_INDEX = '/addFilesToIndex';\n\n public static httpOptionsJson = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n })\n };\n public static httpOptionsJsonResponseTypeBlob = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n }),\n responseType: 'blob' as 'blob'\n };\n}\n\n@Injectable()\nexport class ConfigService {\n\n private _apiEndpoint: string;\n\n constructor() {\n this.apiEndpoint = Api.DEFAULT_API_ENDPOINT;\n }\n\n set apiEndpoint(url: string) {\n this._apiEndpoint = url && url.trim().endsWith('/') ? url.substring(0, url.length - 1) : url;\n }\n\n getConfigEndpoint(app) {\n return (this.apiEndpoint.endsWith(app) ? this.apiEndpoint : this.apiEndpoint + app) + Api.LOAD_CONFIG;\n }\n\n getViewerApiEndpoint() {\n return this._apiEndpoint.endsWith(Api.VIEWER_APP) ? this._apiEndpoint : this._apiEndpoint + Api.VIEWER_APP;\n }\n\n getEditorApiEndpoint() {\n return this._apiEndpoint.trim().endsWith(Api.EDITOR_APP) ? this._apiEndpoint : this._apiEndpoint + Api.EDITOR_APP;\n }\n\n getComparisonApiEndpoint() {\n return this._apiEndpoint.trim().endsWith(Api.COMPARISON_APP) ? this._apiEndpoint : this._apiEndpoint + Api.COMPARISON_APP;\n }\n\n getConversionApiEndpoint() {\n return this._apiEndpoint.trim().endsWith(Api.CONVERSION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.CONVERSION_APP;\n }\n\n getMetadataApiEndpoint() {\n return this._apiEndpoint.trim().endsWith(Api.METADATA_APP) ? this._apiEndpoint : this._apiEndpoint + Api.METADATA_APP;\n }\n\n get apiEndpoint() {\n return this._apiEndpoint;\n }\n\n getSignatureApiEndpoint() {\n return this._apiEndpoint.endsWith(Api.SIGNATURE_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SIGNATURE_APP;\n }\n\n getAnnotationApiEndpoint() {\n return this._apiEndpoint.endsWith(Api.ANNOTATION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.ANNOTATION_APP;\n }\n\n getSearchApiEndpoint() {\n return this._apiEndpoint.endsWith(Api.SEARCH_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SEARCH_APP;\n }\n}\n","export class CommonModals {\n static PasswordRequired = \"gd-password-required\";\n static ErrorMessage = \"gd-error-message\";\n static BrowseFiles = \"gd-browse-files\";\n static CreateDocument = \"gd-create-document\";\n static OperationSuccess = \"gd-success-modal\";\n static DrawHandSignature = \"gd-draw-hand-signature\";\n static DrawStampSignature = \"gd-draw-stamp-signature\";\n static InformationMessage = \"gd-information-message\";\n}\n\nexport class ModalService {\n private modals: any[] = [];\n\n add(modal: any) {\n this.modals.push(modal);\n }\n\n remove(id: string) {\n this.modals = this.modals.filter(x => x.id !== id);\n }\n\n open(id: string) {\n const modal: any = this.modals.filter(x => x.id === id)[0];\n if (modal) {\n modal.open();\n }\n }\n\n close(id: string) {\n const modal: any = this.modals.filter(x => x.id === id)[0];\n if (modal) {\n modal.close();\n }\n }\n}\n","import {Component, ElementRef, EventEmitter, Input, OnDestroy, OnInit, Output} from '@angular/core';\nimport {ModalService} from \"../modal.service\";\n\n@Component({\n selector: 'gd-modal',\n templateUrl: './modal.component.html',\n styleUrls: ['./modal.component.less']\n})\nexport class ModalComponent implements OnInit, OnDestroy {\n @Input() id: string;\n @Input() title: string;\n @Output() visible = new EventEmitter();\n @Output() cancel = new EventEmitter();\n visibility = false;\n private element: any;\n\n constructor(private modalService: ModalService, el: ElementRef) {\n this.element = el.nativeElement;\n }\n\n ngOnInit(): void {\n if (!this.id) {\n console.error('modal must have an id');\n return;\n }\n\n document.body.appendChild(this.element);\n\n this.modalService.add(this);\n }\n\n ngOnDestroy(): void {\n this.modalService.remove(this.id);\n this.element.remove();\n }\n\n open(): void {\n this.visibility = true;\n this.visible.emit(true);\n }\n\n close(): void {\n event.preventDefault();\n event.stopPropagation();\n this.visibility = false;\n this.visible.emit(false);\n }\n\n onClose($event: MouseEvent) {\n $event.stopPropagation();\n if ($event && $event.target && ($event.target).id === 'modalDialog') {\n this.close();\n }\n }\n\n cancelClose() {\n this.cancel.emit(false);\n this.close();\n }\n}\n","export class PageModel {\n data: string;\n angle: number;\n width: number;\n height: number;\n number: number;\n editable: boolean;\n}\n\nexport class RotatedPage {\n pageNumber: number;\n angle: number;\n}\n\nexport class FileCredentials {\n guid: string;\n password: string;\n\n constructor(guid: string, password: string) {\n this.guid = guid;\n this.password = password;\n }\n}\n\nexport class SaveFile extends FileCredentials {\n content: string;\n\n constructor(guid: string, password: string, content: string) {\n super(guid, password);\n this.content = content;\n }\n}\n\nexport class FileDescription {\n guid: string;\n pages: PageModel[];\n printAllowed = true;\n showGridLines: boolean;\n thumbnails: PageModel[];\n}\n\nexport class FileModel {\n guid: string;\n name: string;\n directory: boolean;\n size: number;\n isDirectory: boolean;\n}\n\nexport class HttpError {\n static BadRequest = 400;\n static Unauthorized = 401;\n static Forbidden = 403;\n static NotFound = 404;\n static TimeOut = 408;\n static Conflict = 409;\n static InternalServerError = 500;\n}\n\nexport class Utils {\n public static getMousePosition(event) {\n const mouse = {\n x: 0,\n y: 0\n };\n const wEvent: DragEvent = window.event;\n const ev = event || wEvent; //Moz || IE\n if (ev.pageX || wEvent.pageX || wEvent.screenX || (ev.touches && ev.touches[0] && ev.touches[0].pageX)) { //Moz\n const pageX = typeof ev.pageX !== \"undefined\" && ev.pageX !== 0 ? ev.pageX : wEvent.pageX;\n const pageY = typeof ev.pageY !== \"undefined\" && ev.pageY !== 0 ? ev.pageY : wEvent.pageY;\n const screenX = typeof wEvent.screenX !== \"undefined\" && wEvent.screenY !== 0;\n const screenY = typeof wEvent.screenY !== \"undefined\" && wEvent.screenY !== 0;\n mouse.x = pageX ? pageX : (screenX ? wEvent.screenX : ev.touches[0].pageX);\n mouse.y = pageY ? pageY : (screenY ? wEvent.screenY : ev.touches[0].pageY);\n } else if (ev.clientX) { //IE\n mouse.x = ev.clientX + document.body.scrollLeft;\n mouse.y = ev.clientY + document.body.scrollTop;\n }\n return mouse;\n }\n\n public static toRgb(color: string) {\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(color);\n if (result) {\n const r = parseInt(result[1], 16);\n const g = parseInt(result[2], 16);\n const b = parseInt(result[3], 16);\n return result ? 'rgb(' + r + ',' + g + ',' + b + ')' : '';\n }\n return color;\n }\n\n public static toHex(color: string) {\n // check if color is standard hex value\n if (color.match(/[0-9A-F]{6}|[0-9A-F]{3}$/i)) {\n return (color.charAt(0) === \"#\") ? color : (\"#\" + color);\n // check if color is RGB value -> convert to hex\n } else if (color.match(/^rgb\\(\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*\\)$/)) {\n const c = ([parseInt(RegExp.$1, 10), parseInt(RegExp.$2, 10), parseInt(RegExp.$3, 10)]),\n pad = function (str) {\n if (str.length < 2) {\n for (let i = 0, len = 2 - str.length; i < len; i++) {\n str = '0' + str;\n }\n }\n return str;\n };\n if (c.length === 3) {\n const r = pad(c[0].toString(16)),\n g = pad(c[1].toString(16)),\n b = pad(c[2].toString(16));\n return '#' + r + g + b;\n }\n // else do nothing\n } else {\n return '';\n }\n }\n}\n\nexport class FileUtil {\n public static map = {\n 'folder': {'format': '', 'icon': 'folder'},\n 'pdf': {'format': 'Portable Document Format', 'icon': 'file-pdf', 'unit': 'pt'},\n 'doc': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'docx': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'docm': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'dot': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'dotx': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'dotm': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'xls': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xlsx': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xlsm': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xlsb': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xls2003': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xltx': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xltm': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'ppt': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'pptx': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'pps': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'ppsx': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'vsd': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vdx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vss': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vsx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vst': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vtx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vsdx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vdw': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vstx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vssx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'mpp': {'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt'},\n 'mpt': {'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt'},\n 'msg': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\n 'eml': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\n 'emlx': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\n 'one': {'format': 'Microsoft OneNote', 'icon': 'file-word', 'unit': 'pt'},\n 'odt': {'format': 'Open Document Text', 'icon': 'file-word', 'unit': 'pt'},\n 'ott': {'format': 'Open Document Text Template', 'icon': 'file-word', 'unit': 'pt'},\n 'ods': {'format': 'Open Document Spreadsheet', 'icon': 'file-excel', 'unit': 'px'},\n 'odp': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'otp': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'ots': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'potx': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'potm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'pptm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'ppsm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'rtf': {'format': 'Rich Text Format', 'icon': 'file-alt', 'unit': 'pt'},\n 'txt': {'format': 'Plain Text File', 'icon': 'file-alt', 'unit': 'pt'},\n 'csv': {'format': 'Comma-Separated Values', 'icon': 'file-excel', 'unit': 'px'},\n 'html': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\n 'mht': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\n 'mhtml': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\n 'xml': {'format': 'Extensible Markup Language', 'icon': 'file-word', 'unit': 'pt'},\n 'xps': {'format': 'XML Paper Specification', 'icon': 'file-word', 'unit': 'pt'},\n 'dxf': {'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px'},\n 'dwg': {'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px'},\n 'bmp': {'format': 'Bitmap Picture', 'icon': 'file-image', 'unit': 'px'},\n 'gif': {'format': 'Graphics Interchange Format', 'icon': 'file-image', 'unit': 'px'},\n 'jpg': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\n 'jpe': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\n 'jpeg': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\n 'jfif': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\n 'png': {'format': 'Portable Network Graphics', 'icon': 'file-image', 'unit': 'px'},\n 'tiff': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'tif': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'psd': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'svg': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'jp2': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'epub': {'format': 'Electronic Publication', 'icon': 'file-pdf', 'unit': 'pt'},\n 'ico': {'format': 'Windows Icon', 'icon': 'file-image', 'unit': 'px'},\n 'webp': {'format': 'Compressed Image', 'icon': 'file-image', 'unit': 'px'},\n 'mobi': {'format': 'Mobipocket eBook', 'icon': 'file-pdf', 'unit': 'pt'},\n 'tex': {'format': 'LaTeX Source Document', 'icon': 'file-pdf', 'unit': 'pt'},\n 'djvu': {'format': 'Multi-Layer Raster Image', 'icon': 'file-alt', 'unit': 'pt'},\n 'unknown': {'format': 'This format is not supported', 'icon': 'file'},\n };\n\n public static find(filename: string, isDirectory: boolean) {\n if (filename && !isDirectory) {\n const strings = filename.split('.');\n const name = strings.pop().toLowerCase();\n if (typeof FileUtil.map[name] === \"undefined\") {\n return strings.length > 0 ? FileUtil.map['unknown'] : FileUtil.map['folder'];\n } else {\n return FileUtil.map[name];\n }\n } else {\n return FileUtil.map['folder'];\n }\n }\n}\n\nexport class FileService {\n\n constructor() {\n }\n}\n","import {Observable, Observer} from \"rxjs\";\n\nexport class UploadFilesService {\n private _uploadsChange: Observable;\n private _observer: Observer;\n\n constructor() {\n this._uploadsChange = new Observable(observer =>\n this._observer = observer);\n }\n\n get uploadsChange(): Observable {\n return this._uploadsChange;\n }\n\n changeFilesList(filesList: FileList) {\n this._observer.next(filesList);\n }\n}\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {FileModel, FileUtil} from \"../file.service\";\nimport {UploadFilesService} from \"../upload-files.service\";\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\nconst upload_disc = 'Disc';\n\nconst upload_url = 'URL';\n\nconst uploads_choices = [{name: upload_disc, icon: 'hdd'}, {name: upload_url, icon: 'link'}];\n\n@Component({\n selector: 'gd-browse-files-modal',\n templateUrl: './browse-files-modal.component.html',\n styleUrls: ['./browse-files-modal.component.less']\n})\nexport class BrowseFilesModalComponent implements OnInit {\n uploads = uploads_choices;\n\n @Input() files;\n @Input() uploadConfig;\n @Output() selectedFileGuid = new EventEmitter();\n @Output() selectedDirectory = new EventEmitter();\n @Output() urlForUpload = new EventEmitter();\n @Output() closing = new EventEmitter();\n private selectedFile: FileModel;\n showUploadUrl = false;\n showUploadFile = false;\n\n constructor(private _uploadService: UploadFilesService) {\n }\n\n ngOnInit() {\n }\n\n getSize(size: number) {\n const mb = size / 1024 / 1024;\n if (mb > 1) {\n return (Math.round(mb * 100) / 100) + ' MB';\n } else {\n const kb = size / 1024;\n if (kb > 1) {\n return (Math.round(kb * 100) / 100) + ' KB';\n }\n }\n return size + ' Bytes';\n }\n\n getFormatName(file: FileModel) {\n return FileUtil.find(file.name, file.directory).format;\n }\n\n getFormatIcon(file: FileModel) {\n return FileUtil.find(file.name, file.directory).icon;\n }\n\n choose(file: FileModel) {\n this.selectedFile = file;\n if (file.directory || file.isDirectory) {\n this.selectedDirectory.emit(file.name);\n } else {\n this.selectedFileGuid.emit(file.guid);\n }\n }\n\n goUp() {\n if (this.selectedFile) {\n let guid = this.selectedFile.guid;\n if (guid.length > 0 && guid.indexOf('/') === -1) {\n guid = '';\n } else {\n guid = guid.replace(/\\/[^\\/]+\\/?$/, '');\n }\n this.selectedDirectory.emit(guid);\n }\n }\n\n selectUpload($event: string) {\n if (upload_url === $event) {\n this.showUploadUrl = true;\n } else {\n this.showUploadUrl = false;\n $(\"#gd-upload-input\").trigger('click');\n }\n }\n\n refresh($event) {\n\n if ($event) {\n this.files = null;\n this.selectedDirectory.emit('');\n this.showUploadUrl = false;\n this.selectedFile = null;\n } else {\n this.closing.emit(true);\n }\n }\n\n showSpinner() {\n return !this.files;\n }\n\n uploadUrl(url: string) {\n if (url) {\n this.urlForUpload.emit(url);\n this.cleanUpload();\n }\n }\n\n handleFileInput(files: FileList) {\n this._uploadService.changeFilesList(files);\n }\n\n cleanUpload() {\n this.showUploadFile = false;\n this.showUploadUrl = false;\n }\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class ZoomService {\n private _observer: Subject = new Subject();\n private readonly _zoomChange: Observable = this._observer.asObservable();\n private _zoom: number;\n\n constructor() {\n }\n\n get zoom(): number {\n return this._zoom;\n }\n\n get zoomChange(): Observable {\n return this._zoomChange;\n }\n\n changeZoom(zoom: number) {\n this._zoom = zoom;\n this._observer.next(zoom);\n }\n\n private createZoomOption(val: any, name: string, sep: boolean = false) {\n return {value: val, name: name, separator: sep}\n }\n\n zoomOptions(width, height) {\n return [this.createZoomOption(25, '25%'),\n this.createZoomOption(50, '50%'),\n this.createZoomOption(100,'100%'),\n this.createZoomOption(150, '150%'),\n this.createZoomOption(200, '200%'),\n this.createZoomOption(300, '300%'),\n this.createZoomOption(0, '', true),\n this.createZoomOption(width, 'Fit Width'),\n this.createZoomOption(height, 'Fit Height')];\n }\n}\n","import {Observable, Observer} from \"rxjs\";\n\nexport class PagePreloadService {\n private readonly _checkPreload: Observable;\n private _observer: Observer;\n\n constructor() {\n this._checkPreload = new Observable(observer =>\n this._observer = observer);\n }\n\n get checkPreload(): Observable {\n return this._checkPreload;\n }\n\n changeLastPageInView(page: number) {\n if(this._observer) {\n this._observer.next(page);\n }\n }\n}\n","import {BehaviorSubject, Observable} from \"rxjs\";\nimport {PagePreloadService} from \"./page-preload.service\";\nimport {Injectable} from \"@angular/core\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NavigateService {\n private _currentPage = 0;\n private _countPages = 0;\n private _observer: BehaviorSubject = new BehaviorSubject(null);\n private _navigate: Observable = this._observer.asObservable();\n\n constructor(private _pagePreloadService: PagePreloadService) {\n }\n\n get navigate(): Observable {\n return this._navigate;\n }\n\n get countPages(): number {\n return this._countPages;\n }\n\n set countPages(value: number) {\n this._countPages = value;\n }\n\n get currentPage(): number {\n return this._currentPage;\n }\n\n set currentPage(value: number) {\n this._currentPage = value;\n }\n\n nextPage() {\n if (this._currentPage < this._countPages) {\n this._currentPage++;\n this.navigateTo(this._currentPage);\n }\n }\n\n prevPage() {\n if (this._currentPage > 1) {\n this._currentPage--;\n this.navigateTo(this._currentPage);\n }\n }\n\n toLastPage() {\n this._currentPage = this._countPages;\n this.navigateTo(this._currentPage);\n }\n\n toFirstPage() {\n this._currentPage = 1;\n this.navigateTo(this._currentPage);\n }\n\n navigateTo(page: number) {\n this.currentPage = page;\n this._pagePreloadService.changeLastPageInView(page);\n this._observer.next(page);\n }\n}\n","import {\n AfterViewChecked,\n Component,\n ElementRef,\n Input,\n OnInit,\n AfterViewInit,\n OnChanges,\n Output,\n EventEmitter\n} from '@angular/core';\nimport {FileDescription, FileUtil} from \"../file.service\";\nimport {ZoomService} from \"../zoom.service\";\nimport * as Hammer from 'hammerjs';\nimport {WindowService} from '../window.service';\nimport * as jquery from 'jquery';\nimport { NavigateService } from '../navigate.service';\n\nconst $ = jquery;\n\n@Component({\n selector: 'gd-document',\n templateUrl: './document.component.html',\n styleUrls: ['./document.component.less']\n})\nexport class DocumentComponent implements OnInit, AfterViewChecked, AfterViewInit, OnChanges {\n\n @Input() mode: boolean;\n @Input() preloadPageCount: number;\n @Input() file: FileDescription;\n @Input() selectedPage: number;\n wait = false;\n zoom: number;\n\n docWidth = null;\n docHeight = null;\n viewportWidth = null;\n viewportHeight = null;\n scale = null;\n lastScale = null;\n container = null;\n doc = null;\n x = 0;\n lastX = 0;\n y = 0;\n lastY = 0;\n pinchCenter = null;\n pinchCenterOffset = null;\n curWidth = 0;\n curHeight = 0;\n isDesktop: boolean;\n\n constructor(protected _elementRef: ElementRef,\n private _zoomService: ZoomService,\n private _windowService: WindowService,\n private _navigateService: NavigateService,) {\n _zoomService.zoomChange.subscribe((val: number) => {\n this.zoom = val;\n });\n\n this.isDesktop = _windowService.isDesktop();\n\n this._navigateService.navigate.subscribe(((\n value => {\n this.selectedPage = value;\n })));\n }\n\n ngOnInit() {\n if (this.ifPresentation())\n {\n this.selectedPage = this._navigateService.currentPage;\n }\n }\n\n ngOnChanges() {\n }\n\n ngAfterViewInit() {\n // For current iteration we take .panzoom as a document\n this.doc = this._elementRef.nativeElement.children.item(0).children.item(0);\n // For current iteration we take .gd-document as a container\n this.container = this._elementRef.nativeElement;\n\n this.docWidth = this.doc.clientWidth;\n this.docHeight = this.doc.clientHeight;\n this.viewportWidth = this.doc.offsetWidth;\n\n // For cases where we already have zoom defined we should include it\n this.scale = (this.viewportWidth / this.docWidth) * this._zoomService.zoom / 100;\n\n this.lastScale = this.scale;\n this.viewportHeight = this.container.offsetHeight;\n this.curWidth = this.docWidth * this.scale;\n this.curHeight = this.docHeight * this.scale;\n\n const hammer = new Hammer(this.container);\n }\n\n // TODO: this temporary crutch for Excel files should be documented\n ifExcel() {\n return FileUtil.find(this.file.guid, false).format === \"Microsoft Excel\";\n }\n\n ifPresentation() {\n return FileUtil.find(this.file.guid, false).format === \"Microsoft PowerPoint\";\n }\n\n getDimensionWithUnit(value: number, pageNumber: number) {\n return this.ifPresentation() && !this.isVisible(pageNumber) ? 0 : value + (this.mode ? FileUtil.find(this.file.guid, false).unit : 'px');\n }\n\n ifEdge() {\n return navigator.userAgent.toLowerCase().indexOf('edge') > -1;\n }\n\n ngAfterViewChecked(): void {\n const elementNodeListOf = this._elementRef.nativeElement.querySelectorAll('.gd-wrapper');\n const element = elementNodeListOf.item(0);\n if (element) {\n $(element).trigger('focus');\n }\n }\n\n isVisible(pageNumber) {\n if (this.ifPresentation()) {\n return pageNumber === this.selectedPage ? true : false;\n }\n else {\n return true;\n }\n }\n}\n","import {Component, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\n\n@Component({\n selector: 'gd-page',\n templateUrl: './page.component.html',\n styleUrls: ['./page.component.less']\n})\nexport class PageComponent implements OnInit, OnChanges {\n\n @Input() angle: number;\n @Input() width: number;\n @Input() height: number;\n @Input() number: number;\n @Input() data: string;\n @Input() isHtml: boolean;\n @Input() editable: boolean;\n imgData: string;\n\n constructor() {\n }\n\n ngOnInit() {\n const isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\n if(isIE && this.number === 0){\n this.editable = false;\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n // TODO: this is temporary needed to remove unneeded spaces and BOM symbol \n // which leads to undesired spaces on the top of the docs pages\n this.data = this.data !== null ? this.data.replace(/>\\s+<')\n .replace(/\\uFEFF/g,\"\")\n .replace(/href=\"\\/viewer/g, 'href=\"http://localhost:8080/viewer')\n .replace(/src=\"\\/viewer/g, 'src=\"http://localhost:8080/viewer')\n .replace(/data=\"\\/viewer/g, 'data=\"http://localhost:8080/viewer')\n : null;\n const dataImagePngBase64 = 'data:image/png;base64,';\n this.imgData = dataImagePngBase64;\n if (!this.isHtml) {\n this.imgData += this.data;\n }\n }\n}\n","import {Pipe, PipeTransform} from '@angular/core';\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\n\n@Pipe({name: 'safeHtml'})\nexport class SanitizeHtmlPipe implements PipeTransform{\n constructor(private sanitizer: DomSanitizer) {\n }\n\n transform(html: string): SafeHtml {\n return this.sanitizer.bypassSecurityTrustHtml(html);\n }\n}\n\n@Pipe({name: 'safeResourceHtml'})\nexport class SanitizeResourceHtmlPipe implements PipeTransform{\n constructor(private sanitizer: DomSanitizer) {\n }\n\n transform(html: string): SafeHtml {\n return this.sanitizer.bypassSecurityTrustResourceUrl(html);\n }\n}\n\n@Pipe({name: 'safeStyle'})\nexport class SanitizeStylePipe implements PipeTransform{\n constructor(private sanitizer: DomSanitizer) {\n }\n\n transform(html: string): SafeHtml {\n return this.sanitizer.bypassSecurityTrustStyle(html);\n }\n}\n\n@Pipe({name: 'highlight'})\nexport class HighlightSearchPipe implements PipeTransform {\n\n transform(value: string, args: string): any {\n if (!args) {\n return value;\n }\n const re = new RegExp(args, 'gi'); //'gi' for case insensitive and can use 'g' if you want the search to be case sensitive.\n return value.replace(re, \"$&\");\n }\n}\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\nimport {UploadFilesService} from \"../upload-files.service\";\n\n@Component({\n selector: 'gd-upload-file-zone',\n templateUrl: './upload-file-zone.component.html',\n styleUrls: ['./upload-file-zone.component.less']\n})\nexport class UploadFileZoneComponent implements OnInit {\n\n @Output() closeUpload = new EventEmitter();\n\n constructor(private _uploadService: UploadFilesService) { }\n\n ngOnInit() {\n }\n\n handleFileInput(files: FileList) {\n this._uploadService.changeFilesList(files);\n this.onCloseUpload();\n }\n\n onCloseUpload() {\n this.closeUpload.emit(true);\n }\n\n close($event) {\n if ($event.target.id === 'gd-dropZone') {\n this.onCloseUpload();\n }\n }\n}\n","import {Directive, EventEmitter, HostBinding, HostListener, Input, Output} from '@angular/core';\nimport {UploadFilesService} from \"./upload-files.service\";\n\n@Directive({\n selector: '[gdDnd]'\n})\nexport class DndDirective {\n\n @Output() closing = new EventEmitter();\n @Output() opening = new EventEmitter();\n @Output() dropped = new EventEmitter();\n\n @HostBinding('class.active') active = false;\n\n private dragCounter = 0;\n\n constructor(protected _uploadFilesService: UploadFilesService) {\n }\n\n @HostListener('dragenter', ['$event'])\n public onDragEnter(evt) {\n evt.preventDefault();\n evt.stopPropagation();\n this.dragCounter++;\n this.active = true;\n this.opening.emit(true);\n }\n\n @HostListener('dragover', ['$event'])\n public onDragOver(evt) {\n evt.preventDefault();\n evt.stopPropagation();\n return false;\n }\n\n @HostListener('dragleave', ['$event'])\n public onDragLeave(evt) {\n evt.preventDefault();\n evt.stopPropagation();\n this.dragCounter--;\n if (this.dragCounter === 0) {\n this.active = false;\n this.closeArea();\n }\n }\n\n @HostListener('drop', ['$event'])\n public onDrop(evt) {\n evt.preventDefault();\n evt.stopPropagation();\n const files = evt.dataTransfer.files;\n if (files.length > 0) {\n this.active = false;\n this.dropped.emit(true);\n this._uploadFilesService.changeFilesList(files);\n this.closeArea();\n }\n }\n\n @HostListener('click', ['$event'])\n public onClick(event) {\n this.closeArea();\n }\n\n private closeArea() {\n this.closing.emit(true);\n this.opening.emit(false);\n }\n}\n","import {Injectable} from '@angular/core';\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ViewportService {\n\n constructor() {\n }\n\n checkInViewport(el, zoom: number = 100, leftOffset: number = 0, deltaX: number = 0.5) {\n if (!el) {\n return false;\n }\n const x = deltaX;\n const y = 0.5;\n\n const win = $(window);\n\n const viewport = {\n top: win.scrollTop(),\n left: win.scrollLeft() + leftOffset,\n right: win.scrollLeft() + win.width() - 10,\n bottom: win.scrollTop() + win.height()\n };\n\n\n if (isNaN(zoom)) {\n zoom = 100;\n }\n\n const zoomN = zoom / 100;\n const height = $(el).outerHeight() * (zoomN);\n const width = $(el).outerWidth() * (zoomN);\n\n if (!width || !height) {\n return false;\n }\n\n const bounds = $(el).offset();\n const right = (bounds.left * (zoomN)) + width;\n const bottom = (bounds.top * (zoomN)) + height;\n\n const visible = (!(viewport.right < (bounds.left * (zoomN)) || viewport.left > right || viewport.bottom < (bounds.top * (zoomN)) || viewport.top > bottom));\n\n if (!visible) {\n return false;\n }\n\n const deltas = {\n top: parseFloat(Math.min(1, (bottom - viewport.top) / height).toFixed(2)),\n bottom: parseFloat(Math.min(1, (viewport.bottom - (bounds.top * (zoomN))) / height).toFixed(2)),\n left: parseFloat(Math.min(1, (right - viewport.left) / width).toFixed(2)),\n right: parseFloat(Math.min(1, (viewport.right - (bounds.left * (zoomN))) / width).toFixed(2))\n };\n\n return (deltas.left * deltas.right) >= x && (deltas.top * deltas.bottom) >= y;\n }\n}\n","import {\n AfterViewInit,\n Directive,\n ElementRef,\n HostListener,\n Input,\n OnChanges,\n OnInit,\n SimpleChanges\n} from '@angular/core';\nimport {NavigateService} from \"./navigate.service\";\nimport {PagePreloadService} from \"./page-preload.service\";\nimport {ZoomService} from \"./zoom.service\";\nimport {WindowService} from \"./window.service\";\nimport {ViewportService} from \"./viewport.service\";\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\n@Directive({\n selector: '[gdScrollable]'\n})\nexport class ScrollableDirective implements AfterViewInit, OnChanges, OnInit {\n\n private currentPage: number;\n private zoom = 100;\n private loadedPagesSet = new Set();\n\n constructor(private _elementRef: ElementRef,\n private _navigateService: NavigateService,\n private _pagePreloadService: PagePreloadService,\n private _zoomService: ZoomService,\n private _windowService: WindowService,\n private _viewportService: ViewportService) {\n\n this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom;\n _zoomService.zoomChange.subscribe((val: number) => {\n this.zoom = val ? val : this.zoom;\n this.refresh();\n });\n }\n\n ngAfterViewInit() {\n this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom;\n this._navigateService.navigate.subscribe((value => {\n this.currentPage = value;\n this.scrollToPage(value);\n }));\n this.refresh();\n }\n\n @HostListener('scroll') scrolling() {\n this.refresh();\n }\n\n @HostListener('window:resize') resizing() {\n this.refresh();\n }\n\n scrollToPage(pageNumber: number) {\n const el = this._elementRef.nativeElement;\n const page = this.getPage(pageNumber);\n const prev = pageNumber > 0 ? this.getPage(pageNumber - 1) : null;\n const isSameTop = (prev && $(prev).offset().top === $(page).offset().top);\n if (this._viewportService.checkInViewport(page, this.zoom) && isSameTop) {\n return;\n }\n const pagesHeight = this.calculateOffset(pageNumber);\n const options = {\n left: 0,\n top: pagesHeight\n };\n if(el){\n // using polyfill\n el.scroll(options);\n }\n }\n\n private getChildren() {\n const el = this._elementRef ? this._elementRef.nativeElement : null;\n if (el) {\n // here and in the similar line below we getting the document pages\n return el.children.item(0).children.item(0).children;\n }\n }\n\n private getPage(pageNumber: number) {\n const el = this._elementRef ? this._elementRef.nativeElement : null;\n if (el) {\n return el.children.item(0).children.item(0).children.item(pageNumber - 1);\n }\n }\n\n private calculateOffset(pageNumber: number) {\n const count = this._windowService.isFirefox() ? 1 : this.countPagesOnWidth();\n const margin = this._windowService.isDesktop() ? 40 : 10;\n let pagesHeight = 0;\n for (let i = 1; i < pageNumber / count; i++) {\n const item = this.getPage(i);\n const clientHeight = item ? item.clientHeight : 0;\n pagesHeight += clientHeight > 0 ? clientHeight * this.getZoom() + margin : 0;\n }\n return pagesHeight;\n }\n\n private countPagesOnWidth() {\n const pageEl = this.getPage(1);\n const offset = 150;\n const count = Math.floor((this.getWidth() - offset) / (pageEl.getBoundingClientRect().width * this.getZoom()));\n return count === 0 ? 1 : count;\n }\n\n refresh() {\n let page;\n let currentPageSet = false;\n const pageElem = this.getPage(this.currentPage);\n const currentPageRect = this.currentPage && pageElem ? pageElem.getBoundingClientRect() : null;\n for (page = 1; page < this.getChildren().length + 1; page++) {\n const element = this.getPage(page);\n if (this._viewportService.checkInViewport(element, this.zoom)) {\n if (!currentPageSet) {\n if (!this.currentPage || !pageElem || (this.currentPage && currentPageRect && element.getBoundingClientRect().top !== currentPageRect.top)) {\n this.currentPage = page;\n if (this._navigateService.currentPage === 0) {\n this._navigateService.currentPage = page;\n }\n }\n currentPageSet = true;\n }\n if (!this.loadedPagesSet.has(page)) {\n this._pagePreloadService.changeLastPageInView(page);\n this.loadedPagesSet.add(page);\n }\n }\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.refresh();\n }\n\n ngOnInit(): void {\n this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom;\n }\n\n\n private getWidth() {\n return this._elementRef ? this._elementRef.nativeElement.offsetWidth : window.innerWidth;\n }\n\n private getZoom() {\n return this.zoom / 100;\n }\n}\n","import {\n Directive,\n EventEmitter,\n HostListener,\n Output} from '@angular/core';\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\n@Directive({\n selector: '[gdMouseWheel]'\n})\nexport class MouseWheelDirective {\n @Output() mouseWheelUp = new EventEmitter();\n @Output() mouseWheelDown = new EventEmitter();\n\n @HostListener('mousewheel', ['$event']) onMouseWheelChrome(event: any) {\n this.mouseWheelFunc(event);\n }\n\n @HostListener('DOMMouseScroll', ['$event']) onMouseWheelFirefox(event: any) {\n this.mouseWheelFunc(event);\n }\n\n @HostListener('onmousewheel', ['$event']) onMouseWheelIE(event: any) {\n this.mouseWheelFunc(event);\n }\n\n mouseWheelFunc(event: any) {\n event = window.event ;\n const delta = Math.max(-1, Math.min(1, (event.wheelDelta || -event.detail)));\n if(delta > 0) {\n this.mouseWheelUp.emit(event);\n } else if(delta < 0) {\n this.mouseWheelDown.emit(event);\n }\n }\n}\n","import {AfterViewInit, Directive, HostBinding, Input, OnDestroy, OnInit, ElementRef, OnChanges} from '@angular/core';\nimport {ZoomService} from \"./zoom.service\";\nimport {FileUtil} from \"./file.service\";\nimport { WindowService } from './window.service';\n\n@Directive({\n selector: '[gdZoom]'\n})\nexport class ZoomDirective implements OnInit, OnDestroy, AfterViewInit, OnChanges {\n\n @Input() zoomActive = true;\n @Input() file;\n\n @HostBinding('style.zoom') zoomInt: number;\n @HostBinding('style.transform') transform: string;\n @HostBinding('style.transform-origin') transformOrigin: string;\n @HostBinding('style.width') width: string;\n @HostBinding('style.height') height: string;\n @HostBinding('style.min-width') minWidth: string;\n el: ElementRef;\n\n constructor(private _zoomService: ZoomService, private _windowService: WindowService, el: ElementRef) {\n this.el = el;\n }\n\n ngOnDestroy(): void {\n }\n\n ngOnChanges(): void {\n this.setStyles(this._zoomService.zoom);\n this.resizePages(this._zoomService.zoom);\n }\n\n ngOnInit(): void {\n if (! this.zoomActive) {\n return;\n }\n\n this.setStyles(this._zoomService.zoom);\n this._zoomService.zoomChange.subscribe((zoom) => {\n this.setStyles(zoom);\n this.resizePages(zoom);\n });\n }\n\n private setStyles(zoom) {\n if (! this.zoomActive) {\n return;\n }\n\n const zoomInt = zoom === 100 ? 1 : zoom / 100;\n \n if (this._windowService.isEdge()) {\n this.zoomInt = zoomInt;\n }\n else {\n this.zoomInt = null;\n }\n \n if (!this._windowService.isEdge()) {\n this.transform = 'scale(' + zoomInt + ')';\n this.transformOrigin = 'top left';\n }\n else {\n this.transform = \"\";\n this.transformOrigin = \"\";\n }\n\n let maxWidth = 0;\n this.file.pages.forEach(page => {\n {\n if (page.width > maxWidth){\n maxWidth = page.width;\n }\n }\n });\n\n // Images and Excel-related files receiving dimensions in px from server\n this.minWidth = maxWidth + FileUtil.find(this.file.guid, false).unit;\n }\n\n private getScrollWidth(elm){\n return elm.offsetWidth - elm.clientWidth;\n }\n\n private getScrollHeight(elm){\n return elm.offsetHeight - elm.clientHeight;\n }\n\n private resizePages(zoom){\n const zoomInt = zoom === 100 ? 1 : zoom / 100;\n\n const viewPortWidth = this.el.nativeElement.parentElement.offsetWidth;\n const viewPortHeight = this.el.nativeElement.parentElement.offsetHeight;\n const scrollWidth = this.getScrollWidth(this.el.nativeElement.parentElement);\n const scrollHeight = this.getScrollHeight(this.el.nativeElement.parentElement);\n this.width = (viewPortWidth/zoomInt - scrollWidth/zoomInt) + 'px';\n this.height = (viewPortHeight/zoomInt - scrollHeight/zoomInt) + 'px';\n }\n\n ngAfterViewInit(): void {\n this.setStyles(this._zoomService.zoom);\n }\n}\n","import {Injectable} from '@angular/core';\nimport {Observable, Subject} from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class OnCloseService {\n private _observer: Subject = new Subject();\n private readonly _onClose: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get onClose() {\n return this._onClose;\n }\n\n close(close: boolean) {\n this._observer.next(close)\n }\n}\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\nimport {OnCloseService} from \"../on-close.service\";\n\nexport interface Option {\n name: string;\n value: any;\n separator: boolean;\n}\n\n@Component({\n selector: 'gd-select',\n templateUrl: './select.component.html',\n styleUrls: ['./select.component.less']\n})\nexport class SelectComponent {\n\n @Input() options: Option[];\n @Input() disabled = false;\n @Input() showSelected: Option;\n @Output() selected: EventEmitter = new EventEmitter();\n @Input() isOpen = false;\n @Input() icon: string;\n\n constructor(protected _onCloseService: OnCloseService) {\n _onCloseService.onClose.subscribe(() => {\n this.close();\n });\n }\n\n open() {\n if (!this.disabled) {\n this.isOpen = true;\n }\n }\n\n close() {\n this.isOpen = false;\n }\n\n onClickOutside(event : Event){\n this.close();\n }\n\n toggle($event) {\n // TODO: following lines were uncommented due to needness in signature app\n $event.preventDefault();\n $event.stopPropagation();\n if (!this.disabled) {\n this.isOpen = !this.isOpen;\n }\n }\n\n select($event, value: Option) {\n $event.preventDefault();\n $event.stopPropagation();\n this.selected.emit(value);\n this.close();\n }\n}\n","import {Directive, HostBinding, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\n\n@Directive({\n selector: '[gdDisabledCursor]'\n})\nexport class DisabledCursorDirective implements OnInit, OnChanges {\n\n @Input() dis: boolean;\n\n constructor() {\n }\n\n @HostBinding('class.inactive') cursor: boolean;\n\n private updateCursor() {\n this.cursor = this.dis ? true : false;\n }\n\n ngOnInit(): void {\n this.updateCursor();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.updateCursor()\n }\n}\n","import {Directive, HostBinding, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\n\n@Directive({\n selector: '[gdRotation]'\n})\nexport class RotationDirective implements OnInit, OnChanges {\n\n @Input() angle: number;\n @Input() isHtmlMode: boolean;\n @Input() width: number;\n @Input() height: number;\n @Input() withMargin = true;\n\n @HostBinding('style.animation') animation: string;\n @HostBinding('style.transition-property') transition: string;\n @HostBinding('style.transform') transform: string;\n\n @HostBinding('style.margin') margin: string;\n\n constructor() {\n }\n\n private updateCursor() {\n if (typeof this.angle === \"string\"){\n this.angle = parseInt(this.angle, 10);\n }\n\n if (this.angle) {\n this.animation = 'none';\n this.transition = 'none';\n this.transform = 'rotate(' + this.angle + 'deg)';\n } else if (this.angle === 0 && this.animation) {\n this.animation = null;\n this.transition = null;\n this.transform = null;\n }\n\n if (this.withMargin) {\n if (this.angle === 90 || this.angle === 270 || this.angle === -90 || this.angle === -270) {\n if (this.isHtmlMode) {\n if (this.isLandscape()) {\n this.margin = '164px 254px';\n } else {\n this.margin = '-111px 254px';\n }\n } else {\n if (this.isLandscape()) {\n this.margin = '129px 100px -79px';\n } else {\n this.margin = '-72px 100px -79px';\n }\n }\n } else if (this.angle === -180 || this.angle === 180) {\n this.margin = '280px';\n } else {\n this.margin = null;\n }\n }\n\n }\n\n isLandscape() {\n return this.width > this.height;\n }\n\n ngOnInit(): void {\n this.updateCursor();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.updateCursor()\n }\n\n}\n","import {Component, Input, Output, EventEmitter, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-init-state',\n templateUrl: './init-state.component.html',\n styleUrls: ['./init-state.component.less']\n})\nexport class InitStateComponent implements OnInit {\n @Input() icon: string;\n @Input() text: string;\n @Output() fileDropped = new EventEmitter();\n showUploadFile = false;\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n dropped($event) {\n if ($event) {\n this.fileDropped.emit($event);\n this.showUploadFile = false;\n }\n }\n}\n","import {Observable, Observer} from \"rxjs\";\nimport {PageModel} from \"./file.service\";\n\nexport class RenderPrintService {\n private _render: Observable;\n private _observer: Observer;\n private _renderBlob: Observable;\n private _observerBlob: Observer;\n\n constructor() {\n this._render = new Observable(observer =>\n this._observer = observer);\n this._renderBlob = new Observable(observer =>\n this._observerBlob = observer);\n }\n\n get renderPrint(): Observable {\n return this._render;\n }\n\n changePages(pages: PageModel[]) {\n this._observer.next(pages);\n }\n\n get renderPrintBlob(): Observable {\n return this._renderBlob;\n }\n\n changeBlob(file: Blob) {\n this._observerBlob.next(file);\n }\n}\n","import {Directive, Input} from '@angular/core';\nimport {PageModel} from \"./file.service\";\nimport {RenderPrintService} from \"./render-print.service\";\n\n@Directive({\n selector: '[gdRenderPrint]'\n})\nexport class RenderPrintDirective {\n @Input() htmlMode: boolean;\n\n constructor(private _renderService: RenderPrintService) {\n _renderService.renderPrint.subscribe(pages => {\n this.renderPrint(pages);\n });\n _renderService.renderPrintBlob.subscribe(file => {\n this.renderPrintBlob(file);\n });\n }\n\n private renderPrint(pages: PageModel[]) {\n let pagesHtml = '';\n\n for (const page of pages) {\n pagesHtml += '
' +\n '
' +\n '
';\n }\n\n this.openWindow(pagesHtml, pages[0].width, pages[0].height);\n }\n\n private openWindow(pagesHtml, width, height) {\n const a4Height = 842;\n const a4Width = 595;\n let imageA4Adjusted = '';\n if(width > a4Width && height > a4Height){\n const zoom = Math.round(height / a4Height) / 100;\n imageA4Adjusted = '.gd-page img { width: 100%; margin: 0; padding: 0;}';\n if(navigator.userAgent.toLowerCase().indexOf('firefox') > -1){\n imageA4Adjusted = '.gd-page img { transform: scale(' + zoom + ');}';\n }\n }\n let cssPrint = '';\n\n const windowObject = window.open('', \"PrintWindow\", \"width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes\");\n windowObject.focus();\n windowObject.document.writeln(cssPrint);\n windowObject.document.writeln(pagesHtml);\n windowObject.document.close();\n setTimeout(() => {\n windowObject.focus();\n windowObject.print();\n windowObject.close();\n }, 100);\n }\n\n private renderPrintBlob(file: Blob) {\n const fileURL = URL.createObjectURL(file);\n const windowObject = window.open(fileURL, \"PrintWindow\", \"width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes\");\n windowObject.focus();\n windowObject.print();\n windowObject.close();\n }\n}\n","import {BehaviorSubject, Observable} from \"rxjs\";\n\nexport class ExceptionMessageService {\n private _observer: BehaviorSubject = new BehaviorSubject('Server is not available');\n private _messageChange: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get messageChange(): Observable {\n return this._messageChange;\n }\n\n changeMessage(message: string) {\n this._observer.next(message);\n }\n}\n","import {Component, OnInit} from '@angular/core';\nimport {ExceptionMessageService} from \"../exception-message.service\";\n\n@Component({\n selector: 'gd-error-modal',\n templateUrl: './error-modal.component.html',\n styleUrls: ['./error-modal.component.less']\n})\nexport class ErrorModalComponent implements OnInit {\n\n message: string;\n\n constructor(messageService: ExceptionMessageService) {\n messageService.messageChange.subscribe(message => this.message = message);\n }\n\n ngOnInit() {\n }\n\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class PasswordService {\n private _observer: Subject = new Subject();\n private readonly _passChange: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get passChange(): Observable {\n return this._passChange;\n }\n\n setPassword(pass: string) {\n this._observer.next(pass);\n }\n}\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\nimport {ExceptionMessageService} from \"../exception-message.service\";\nimport {PasswordService} from \"../password.service\";\nimport * as jquery from \"jquery\";\n\nconst $ = jquery;\n\n@Component({\n selector: 'gd-password-required',\n templateUrl: './password-required.component.html',\n styleUrls: ['./password-required.component.less']\n})\nexport class PasswordRequiredComponent implements OnInit {\n message: string;\n @Output() cancelEvent = new EventEmitter();\n\n constructor(messageService: ExceptionMessageService, private _passwordService: PasswordService) {\n messageService.messageChange.subscribe(message => this.message = message);\n }\n\n ngOnInit() {\n }\n\n setPassword(value: string) {\n this._passwordService.setPassword(value);\n }\n\n onCloseOpen($event: boolean) {\n if ($event) {\n setTimeout(() => {\n const element = $(\"#password\");\n if (element) {\n element.focus();\n }\n }, 100);\n } else {\n $(\"#password\").val(\"\");\n }\n }\n\n cancel($event: boolean) {\n $(\"#password\").val(\"\");\n this.cancelEvent.emit(true);\n }\n}\n","import {Injectable} from '@angular/core';\nimport {HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from \"@angular/common/http\";\nimport {Observable, throwError} from \"rxjs\";\nimport {catchError, map} from \"rxjs/operators\";\nimport {ExceptionMessageService} from \"./exception-message.service\";\nimport {HttpError} from \"./file.service\";\nimport {CommonModals, ModalService} from \"./modal.service\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ErrorInterceptorService implements HttpInterceptor {\n\n constructor(private _modalService: ModalService, private _messageService: ExceptionMessageService) {\n }\n\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\n const logFormat = 'background: maroon; color: white';\n\n return next.handle(req)\n .pipe(map(data => {\n return data;\n }),\n catchError((exception: HttpEvent) => {\n if (exception instanceof HttpErrorResponse) {\n switch (exception.status) {\n\n case HttpError.BadRequest:\n console.error('%c Bad Request 400', logFormat);\n break;\n case HttpError.Unauthorized:\n console.error('%c Unauthorized 401', logFormat);\n break;\n case HttpError.NotFound:\n console.error('%c Not Found 404', logFormat);\n break;\n case HttpError.TimeOut:\n console.error('%c TimeOut 408', logFormat);\n break;\n case HttpError.InternalServerError:\n console.error('%c big bad 500', logFormat);\n this._messageService.changeMessage(exception.error.message);\n this._modalService.open(CommonModals.ErrorMessage);\n break;\n\n case HttpError.Forbidden:\n console.error('%c Forbidden 403', logFormat);\n this._messageService.changeMessage(exception.error.message);\n this._modalService.open(CommonModals.PasswordRequired);\n break;\n }\n }\n return throwError(exception);\n }));\n }\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class SearchService {\n private _observer: Subject = new Subject();\n private readonly _textChange: Observable = this._observer.asObservable();\n\n private _observerCurrent: Subject = new Subject();\n private readonly _currentChange: Observable = this._observerCurrent.asObservable();\n\n private _observerTotal: Subject = new Subject();\n private readonly _totalChange: Observable = this._observerTotal.asObservable();\n\n constructor() {\n }\n\n get textChange(): Observable {\n return this._textChange;\n }\n\n setText(text: string) {\n this._observer.next(text);\n }\n\n get currentChange(): Observable {\n return this._currentChange;\n }\n\n get totalChange(): Observable {\n return this._totalChange;\n }\n\n setCurrent(current: number) {\n this._observerCurrent.next(current);\n }\n\n setTotal(total: number) {\n this._observerTotal.next(total);\n }\n}\n","import {AfterViewInit, Component, ElementRef, EventEmitter, OnInit, Output, ViewChild} from '@angular/core';\nimport {SearchService} from \"../search.service\";\n\n@Component({\n selector: 'gd-search',\n templateUrl: './search.component.html',\n styleUrls: ['./search.component.less']\n})\nexport class SearchComponent implements OnInit, AfterViewInit {\n\n @Output() hidePanel = new EventEmitter(false);\n\n current = 0;\n total = 0;\n\n @ViewChild('text',{\n static : true\n }) textElement: ElementRef;\n\n constructor(private _searchService: SearchService) {\n _searchService.totalChange.subscribe((total: number) => {\n this.total = total;\n if (total !== 0) {\n this.current = 1;\n } else {\n this.current = 0;\n }\n this._searchService.setCurrent(this.current);\n });\n }\n\n ngOnInit() {\n }\n\n setText(text: string) {\n this._searchService.setText(text);\n }\n\n hide() {\n this.setText('');\n this.hidePanel.emit(true);\n }\n\n prev() {\n if (this.current > 1) {\n this.current--;\n this._searchService.setCurrent(this.current);\n }\n }\n\n next() {\n if (this.current < this.total) {\n this.current++;\n this._searchService.setCurrent(this.current);\n }\n }\n\n ngAfterViewInit(): void {\n this.textElement.nativeElement.focus();\n }\n}\n","import {Directive, ElementRef} from '@angular/core';\nimport {SearchService} from \"./search.service\";\nimport {HighlightSearchPipe} from \"./pipes\";\nimport {ZoomService} from \"./zoom.service\";\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\n@Directive({\n selector: '[gdSearchable]'\n})\nexport class SearchableDirective {\n\n text: string;\n current = 0;\n total = 0;\n private zoom = 100;\n\n constructor(private _elementRef: ElementRef,\n private _searchService: SearchService,\n private _highlight: HighlightSearchPipe,\n private _zoomService: ZoomService) {\n _searchService.currentChange.subscribe((current: number) => {\n this.current = current;\n if (this.current !== 0) {\n this.moveToCurrent();\n }\n });\n\n _searchService.textChange.subscribe((text: string) => {\n this.text = text;\n this.highlightSearch();\n });\n\n this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom;\n _zoomService.zoomChange.subscribe((val: number) => {\n this.zoom = val ? val : this.zoom;\n });\n }\n\n private highlightSearch() {\n const el = this._elementRef ? this._elementRef.nativeElement : null;\n if (el) {\n this.cleanHighlight(el);\n if (this.text) {\n this.highlightEl(el);\n const count = el.querySelectorAll('.gd-highlight').length;\n this.total = count;\n } else {\n this.total = 0;\n }\n this._searchService.setTotal(this.total);\n }\n }\n\n private moveToCurrent() {\n if (this.current === 0) {\n return;\n }\n const currentZoom = this.getZoom();\n const el = this._elementRef ? this._elementRef.nativeElement : null;\n if (el) {\n el.querySelectorAll('.gd-highlight-select').forEach(function (value) {\n $(value).removeClass('gd-highlight-select');\n });\n const currentEl = el.querySelectorAll('.gd-highlight')[this.current - 1];\n $(currentEl).addClass('gd-highlight-select');\n if (currentEl) {\n const options = {\n left: 0,\n top: ($(currentEl).offset().top) + el.parentElement.parentElement.scrollTop - 150,\n };\n // using polyfill\n el.parentElement.parentElement.scroll(options);\n }\n }\n }\n\n private highlightEl(el: Element) {\n const textNodes = $(el).find('*').contents().filter(function () {\n const nodeName = this.parentElement.nodeName.toLowerCase();\n const checkClass = (this).classList ? !(this).classList.contains('gd-highlight') : true;\n return this.nodeType === 3 &&\n this.textContent.trim().length !== 0 &&\n nodeName !== 'style' &&\n nodeName !== 'title' &&\n nodeName !== 'body' &&\n nodeName !== 'script' &&\n checkClass;\n });\n const text = this.text;\n const highlight = this._highlight;\n textNodes.each(function () {\n const $this = $(this);\n let content = $this.text();\n content = highlight.transform(content, text);\n $this.replaceWith(content);\n });\n el.normalize();\n }\n\n private cleanHighlight(el: HTMLElement) {\n const nodeListOf = el.querySelectorAll('.gd-highlight');\n for (let i = 0; i < nodeListOf.length; i++) {\n const element = nodeListOf.item(i);\n element.replaceWith((element).innerText);\n }\n el.normalize();\n }\n\n private getZoom() {\n return this.zoom / 100;\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-tabbed-toolbars',\n templateUrl: './tabbed-toolbars.component.html',\n styleUrls: ['./tabbed-toolbars.component.less']\n})\nexport class TabbedToolbarsComponent implements OnInit {\n @Input() logo: string;\n @Input() icon: string;\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class TabActivatorService {\n private _observer: Subject = new Subject();\n private readonly _activeTabChange: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get activeTabChange(): Observable {\n return this._activeTabChange;\n }\n\n changeActiveTab(tabId: string) {\n this._observer.next(tabId);\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\nimport {TabActivatorService} from \"../tab-activator.service\";\n\n@Component({\n selector: 'gd-tab',\n templateUrl: './tab.component.html',\n styleUrls: ['./tab.component.less']\n})\nexport class TabComponent implements OnInit {\n @Input() id: string;\n @Input() tabTitle: string;\n @Input() icon: string;\n @Input() disabled = false;\n @Input() active = false;\n @Input() content = true;\n\n constructor(private _tabActivatorService: TabActivatorService) {\n this._tabActivatorService.activeTabChange.subscribe((tabId: string) => {\n this.activation(tabId);\n });\n }\n\n private activation(tabId: string) {\n if (this.id === tabId) {\n this.active = true;\n } else {\n this.active = false;\n }\n }\n\n ngOnInit() {\n }\n\n selectTab() {\n if (this.disabled) {\n return;\n }\n this._tabActivatorService.changeActiveTab(this.id);\n }\n}\n","import {Component} from '@angular/core';\n\n@Component({\n selector: 'gd-tabs',\n templateUrl: './tabs.component.html',\n styleUrls: ['./tabs.component.less']\n})\nexport class TabsComponent {\n constructor() {\n }\n\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class Formatting {\n constructor(fontSize: number, color: string, bgColor: string, bold: boolean, italic: boolean, underline: boolean, font: string, strikeout: boolean, align: string, list: string) {\n this.fontSize = fontSize;\n this.color = color;\n this.bgColor = bgColor;\n this.bold = bold;\n this.italic = italic;\n this.underline = underline;\n this.font = font;\n this.strikeout = strikeout;\n this.align = align;\n this.list = list;\n }\n\n bold: boolean;\n italic: boolean;\n underline: boolean;\n fontSize: number;\n color: string;\n bgColor: string;\n font: string;\n strikeout: boolean;\n align: string;\n list: string;\n\n public static default(): Formatting {\n return new Formatting(10, '#000000', '#FFFFFF', false, false, false, 'Arial', false, \"\", \"\");\n }\n}\n\nexport class FormattingService {\n private _observerBold: Subject = new Subject();\n private readonly _formatBoldChange: Observable = this._observerBold.asObservable();\n private _observerUnderline: Subject = new Subject();\n private readonly _formatUnderlineChange: Observable = this._observerUnderline.asObservable();\n private _observerUndo: Subject = new Subject();\n private readonly _undo: Observable = this._observerUndo.asObservable();\n private _observerRedo: Subject = new Subject();\n private readonly _redo: Observable = this._observerRedo.asObservable();\n private _observerItalic: Subject = new Subject();\n private readonly _formatItalicChange: Observable = this._observerItalic.asObservable();\n private _observerColor: Subject = new Subject();\n private readonly _formatColorChange: Observable = this._observerColor.asObservable();\n private _observerBgColor: Subject = new Subject();\n private readonly _formatBgColorChange: Observable = this._observerBgColor.asObservable();\n private _observerFontSize: Subject = new Subject();\n private readonly _formatFontSizeChange: Observable = this._observerFontSize.asObservable();\n private _observerFont: Subject = new Subject();\n private readonly _formatFontChange: Observable = this._observerFont.asObservable();\n private _observerStrikeout: Subject = new Subject();\n private readonly _formatStrikeoutChange: Observable = this._observerStrikeout.asObservable();\n private _observerAlign: Subject = new Subject();\n private readonly _formatAlignChange: Observable = this._observerAlign.asObservable();\n private _observerList: Subject = new Subject();\n private readonly _formatListChange: Observable = this._observerList.asObservable();\n\n constructor() {\n }\n\n get formatBoldChange() {\n return this._formatBoldChange;\n }\n\n get formatUnderlineChange() {\n return this._formatUnderlineChange;\n }\n\n get formatColorChange() {\n return this._formatColorChange;\n }\n\n get formatBgColorChange() {\n return this._formatBgColorChange;\n }\n\n get formatFontSizeChange() {\n return this._formatFontSizeChange;\n }\n\n get formatFontChange() {\n return this._formatFontChange;\n }\n\n get undo() {\n return this._undo;\n }\n\n get redo() {\n return this._redo;\n }\n\n get formatItalicChange() {\n return this._formatItalicChange;\n }\n\n get formatStrikeoutChange() {\n return this._formatStrikeoutChange;\n }\n\n get formatAlignChange() {\n return this._formatAlignChange;\n }\n\n get formatListChange() {\n return this._formatListChange;\n }\n\n static createFontSizeOption(val: number) {\n return {value: val, name: val + 'px', separator: false}\n }\n\n static getFontSizeOptions() {\n return [\n FormattingService.createFontSizeOption(8),\n FormattingService.createFontSizeOption(10),\n FormattingService.createFontSizeOption(12),\n FormattingService.createFontSizeOption(14),\n FormattingService.createFontSizeOption(16),\n FormattingService.createFontSizeOption(18),\n FormattingService.createFontSizeOption(20),\n FormattingService.createFontSizeOption(22),\n FormattingService.createFontSizeOption(24),\n ];\n }\n\n static createFontOption(val: string) {\n return {value: val, name: val, separator: false}\n }\n\n static getFontOptions() {\n const fonts = [\"Arial\", \"Calibri\", \"Century Gothic\", \"Comic Sans\", \"Consolas\", \"Courier\", \"Dejavu Sans\", \"Dejavu Serif\", \"Georgia\", \"Gill Sans\", \"Helvetica\", \"Impact\", \"Lucida Sans\",\n \"Myriad Pro\", \"Open Sans\", \"Palatino\", \"Tahoma\", \"Times New Roman\", \"Trebuchet\"];\n const fontOptions = [];\n fonts.forEach(font => {\n fontOptions.push(this.createFontOption(font));\n })\n\n return fontOptions;\n }\n\n changeFormatFontSize($event: number) {\n this._observerFontSize.next($event);\n }\n\n changeFormatBold(bold: boolean) {\n this._observerBold.next(bold);\n }\n\n changeFormatUnderline(underline: boolean) {\n this._observerUnderline.next(underline);\n }\n\n Undo() {\n this._observerUndo.next();\n }\n\n Redo() {\n this._observerRedo.next();\n }\n\n changeFormatItalic(italic: boolean) {\n this._observerItalic.next(italic);\n }\n\n changeFormatColor(color: string) {\n this._observerColor.next(color);\n }\n\n changeFormatBgColor(bgcolor: string) {\n this._observerBgColor.next(bgcolor);\n }\n\n changeFormatFont(font: string) {\n this._observerFont.next(font);\n }\n\n changeFormatStrikeout(strikeout: boolean) {\n this._observerStrikeout.next(strikeout);\n }\n\n changeFormatAlign(align: string) {\n this._observerAlign.next(align);\n }\n\n changeFormatList(list: string) {\n this._observerList.next(list);\n }\n}\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\n\nconst DEFAULT_COLORS = [\n '#000000', '#434343', '#666666', '#999999', '#B7B7B7', '#CCCCCC', '#D9D9D9', '#EFEFEF', '#F3F3F3', '#FFFFFF',\n '#980000', '#FF0000', '#FF9900', '#FFFF00', '#00FF00', '#00FFFF', '#4986E8', '#0000FF', '#9900FF', '#FF00FF',\n '#E6B8AF', '#F4CCCC', '#FDE5CD', '#FFF2CC', '#D9EAD3', '#D0E0E2', '#C9DAF8', '#CFE2F3', '#D9D2E9', '#EAD1DC',\n '#DD7E6B', '#EA9899', '#F9CB9C', '#FFE59A', '#B7D7A8', '#A2C4C9', '#A4C2F4', '#9FC5E8', '#B4A7D7', '#D5A6BD',\n '#CC4125', '#E06666', '#F6B26B', '#FFD966', '#92C47D', '#75A5AF', '#6D9EEB', '#6FA9DB', '#8E7CC3', '#C27BA0',\n '#A61C00', '#CC0000', '#E69138', '#F2C131', '#6AA84F', '#45818E', '#3C78D8', '#3C85C6', '#674EA7', '#A64D79',\n '#85200B', '#990000', '#B45F05', '#BF9000', '#37761D', '#144F5C', '#1254CC', '#0A5394', '#351C75', '#741B47',\n '#5B0F00', '#660000', '#783F03', '#7F6000', '#284E13', '#0B343D', '#1B4586', '#063763', '#20124D', '#4C1030',\n];\n\n@Component({\n selector: 'gd-color-picker',\n templateUrl: './color-picker.component.html',\n styleUrls: ['./color-picker.component.less']\n})\nexport class ColorPickerComponent implements OnInit {\n @Input() isOpen = false;\n @Output() selectedColor = new EventEmitter();\n @Output() closeOutside = new EventEmitter();\n colors: any = DEFAULT_COLORS;\n white = '#FFFFFF';\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n select($event, color: string) {\n $event.preventDefault();\n $event.stopPropagation();\n this.selectedColor.emit(color);\n }\n\n close() {\n this.isOpen = false;\n this.closeOutside.emit(true);\n }\n}\n","import {Injectable} from '@angular/core';\nimport {FormattingService} from \"./formatting.service\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BackFormattingService extends FormattingService {\n\n constructor() {\n super();\n }\n}\n","import {Injectable} from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SelectionService {\n selection: Range;\n isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\n\n restoreSelection() {\n if(this.selection && !this.selection.collapsed || this.isIE){\n this.putSelection(this.selection );\n }\n }\n\n captureSelection() {\n const selection = window.getSelection();\n if (selection.rangeCount > 0) {\n this.selection = selection.getRangeAt(0);\n }\n }\n\n private putSelection(selection) {\n const sel = window.getSelection();\n sel.removeAllRanges();\n sel.addRange(selection.cloneRange());\n }\n\n refreshSelection() {\n this.captureSelection();\n this.restoreSelection();\n }\n}\n","import {Directive, HostListener, OnInit} from '@angular/core';\nimport {FormattingService} from \"./formatting.service\";\nimport {BackFormattingService} from \"./back-formatting.service\";\nimport * as jquery from 'jquery';\nconst $ = jquery;\nimport {SelectionService} from './selection.service';\n\n@Directive({\n selector: '[gdFormatting]'\n})\nexport class FormattingDirective implements OnInit {\n\n private bold = false;\n private italic = false;\n private underline = false;\n private color: string;\n private bgColor: string;\n private font: string;\n private strikeout = false;\n private align: string;\n private list: string;\n private isIE = false;\n\n constructor(private _formattingService: FormattingService,\n private _backFormattingService: BackFormattingService,\n private _selectionService: SelectionService) {\n this.isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\n }\n\n @HostListener('mouseup') mouseup() {\n\n this.bold = document.queryCommandState(\"bold\");\n this.strikeout = document.queryCommandState(\"strikeThrough\");\n this.italic = document.queryCommandState(\"italic\");\n this.bgColor = document.queryCommandValue(\"backColor\");\n this.underline = document.queryCommandState(\"underline\");\n this.align = this.checkJustify();\n this.list = this.checkList();\n\n //fix required by FireFox to get correct background color\n if (this.bgColor === \"transparent\") {\n this.bgColor = $(window.getSelection().focusNode.parentNode).css('background-color').toString();\n }\n this.font = document.queryCommandValue(\"FontName\").replace(/\"/g, '');\n if(this.font.split(\",\").length > 1){\n this.font = this.font.split(\",\")[0];\n }\n this.color = document.queryCommandValue(\"foreColor\");\n this._backFormattingService.changeFormatBold(this.bold);\n this._backFormattingService.changeFormatUnderline(this.underline);\n this._backFormattingService.changeFormatItalic(this.italic);\n this._backFormattingService.changeFormatColor(this.color);\n this._backFormattingService.changeFormatBgColor(this.bgColor);\n this._backFormattingService.changeFormatFontSize(this.reportFontSize());\n this._backFormattingService.changeFormatFont(this.font);\n this._backFormattingService.changeFormatStrikeout(this.strikeout);\n this._backFormattingService.changeFormatAlign(this.align);\n this._backFormattingService.changeFormatList(this.list);\n }\n\n private checkJustify() {\n let align = \"\";\n align = document.queryCommandState(\"justifyCenter\") ? \"center\" : align;\n align = document.queryCommandState(\"justifyFull\") ? \"full\" : align;\n align = document.queryCommandState(\"justifyLeft\") ? \"left\" : align;\n align = document.queryCommandState(\"justifyRight\") ? \"right\" : align;\n return align;\n }\n\n private checkList() {\n let list = \"\";\n list = document.queryCommandState(\"insertUnorderedList\") ? \"unordered\" : list;\n list = document.queryCommandState(\"insertOrderedList\") ? \"ordered\" : list;\n return list;\n }\n\n reportFontSize(): number {\n let containerEl, sel;\n if (window.getSelection) {\n sel = window.getSelection();\n if (sel.rangeCount) {\n containerEl = sel.getRangeAt(0).commonAncestorContainer;\n // Make sure we have an element rather than a text node\n if (containerEl.nodeType === 3) {\n containerEl = containerEl.parentNode;\n }\n }\n } else if ((sel = document.getSelection()) && sel.type !== \"Control\") {\n containerEl = sel.createRange().parentElement();\n }\n\n if (containerEl) {\n return parseInt(this.getComputedStyleProperty(containerEl, \"fontSize\").replace(\"px\", \"\"), 10);\n }\n }\n\n getComputedStyleProperty(el, propName) {\n if (window.getComputedStyle) {\n return window.getComputedStyle(el, null)[propName];\n } else if (el.currentStyle) {\n return el.currentStyle[propName];\n }\n }\n\n ngOnInit(): void {\n this._formattingService.undo.subscribe(() => {\n this.toggleUndo();\n });\n this._formattingService.redo.subscribe(() => {\n this.toggleRedo();\n });\n this._formattingService.formatBoldChange.subscribe((bold: boolean) => {\n this.bold = bold;\n this.toggleBold();\n });\n this._formattingService.formatUnderlineChange.subscribe((underline: boolean) => {\n this.underline = underline;\n this.toggleUnderline();\n });\n this._formattingService.formatItalicChange.subscribe((italic: boolean) => {\n this.italic = italic;\n this.toggleItalic();\n });\n this._formattingService.formatColorChange.subscribe(((color: string) => {\n this.color = color;\n this.setColor(color);\n }));\n this._formattingService.formatBgColorChange.subscribe(((bgcolor: string) => {\n this.bgColor = bgcolor;\n this.setBgColor(bgcolor);\n }));\n this._formattingService.formatFontSizeChange.subscribe(((fontSize: number) => {\n this.setFontSize(fontSize);\n }));\n\n this._formattingService.formatFontChange.subscribe(((font: string) => {\n this.font = font;\n this.setFont(font);\n }));\n this._formattingService.formatStrikeoutChange.subscribe((strikeout: boolean) => {\n this.strikeout = strikeout;\n this.toggleStrikeout();\n });\n this._formattingService.formatAlignChange.subscribe((align: string) => {\n this.align = align;\n this.toggleAlign(this.align);\n });\n this._formattingService.formatListChange.subscribe((list: string) => {\n const remove = this.list === list;\n this.list = list;\n this.toggleList(this.list, remove);\n });\n }\n\n private toggleBold() {\n document.execCommand(\"bold\");\n this._selectionService.refreshSelection();\n }\n\n private toggleUnderline() {\n document.execCommand(\"underline\");\n this._selectionService.refreshSelection();\n }\n\n private toggleItalic() {\n document.execCommand(\"italic\");\n this._selectionService.refreshSelection();\n }\n\n private setBgColor(bgColor: string) {\n document.execCommand(\"backColor\", false, bgColor);\n this._selectionService.refreshSelection();\n }\n\n private setColor(color: string) {\n document.execCommand(\"foreColor\", false, color);\n this._selectionService.refreshSelection();\n }\n\n private setFontSize(fontSize: number) {\n if (document.getSelection().toString()) {\n let spanString = \"\" +\n document.getSelection() + \"\";\n if (this.bold) {\n spanString = \"\" + spanString + \"\";\n }\n if (this.italic) {\n spanString = \"\" + spanString + \"\";\n }\n if (this.underline) {\n spanString = \"\" + spanString + \"\";\n }\n if (this.strikeout) {\n spanString = \"\" + spanString + \"\";\n }\n document.execCommand('insertHTML', false, spanString);\n } else {\n document.execCommand(\"fontsize\", false, \"7\");\n }\n this._selectionService.refreshSelection();\n }\n\n private toggleUndo() {\n document.execCommand(\"undo\");\n }\n\n private toggleRedo() {\n document.execCommand(\"redo\");\n }\n\n private setFont(font: string) {\n document.execCommand(\"fontName\", false, font);\n this._selectionService.refreshSelection();\n }\n\n private toggleStrikeout() {\n document.execCommand(\"strikeThrough\");\n this._selectionService.refreshSelection();\n }\n\n private toggleAlign(align: string) {\n if(this.isIE) {\n this.toggleAlignIE(align);\n return;\n }\n document.execCommand(\"styleWithCSS\", false, 'true');\n switch (align) {\n case 'center':\n document.execCommand('justifyCenter');\n break;\n case 'full':\n document.execCommand('justifyFull');\n break;\n case 'left':\n document.execCommand('justifyLeft');\n break;\n case 'right':\n document.execCommand('justifyRight');\n break;\n }\n this._selectionService.refreshSelection();\n }\n\n private toggleAlignIE(align: string) {\n this._selectionService.restoreSelection()\n this._selectionService.captureSelection()\n const selection = window.getSelection().focusNode.parentNode.parentNode;\n if(align === \"full\"){\n align = \"justify\";\n }\n $(selection).css(\"text-align\", align);\n this._selectionService.refreshSelection()\n }\n\n private toggleList(list: string, remove: boolean) {\n switch (list) {\n case 'unordered':\n document.execCommand('insertUnorderedList', remove);\n break;\n case 'ordered':\n document.execCommand('insertOrderedList', remove);\n break;\n }\n this._selectionService.refreshSelection();\n }\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'gd-success-modal',\n templateUrl: './success-modal.component.html',\n styleUrls: ['./success-modal.component.less']\n})\nexport class SuccessModalComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","import {Injectable} from '@angular/core';\nimport {Observable, Subject} from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class EditHtmlService {\n private _observer: Subject = new Subject();\n private readonly _htmlContent: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get observer(): Subject {\n return this._observer;\n }\n\n get htmlContent(): Observable {\n return this._htmlContent;\n }\n\n}\n","import {Directive, HostListener, Input} from '@angular/core';\nimport {SelectionService} from './selection.service';\nimport {EditHtmlService} from \"./edit-html.service\";\n\n@Directive({\n selector: '[gdEditor]'\n})\nexport class EditorDirective {\n @Input() text: any;\n\n private isIE: boolean = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\n\n constructor(private _selectionService: SelectionService, private _htmlService: EditHtmlService) {\n }\n\n @HostListener('keyup', ['$event'])\n public onInput(event) {\n this.text = event.target;\n if(this.isIE){\n if (this.text.innerHTML) {\n const html = this.text.innerHTML.toString();\n this._htmlService.observer.next(html);\n }\n }\n }\n\n @HostListener('mouseleave', ['$event'])\n public onMouseleave(event) {\n this._selectionService.captureSelection();\n // this code is required to fix IE11 issue - it doesn't trigger blur event, since that we need to save updated HTML here\n if(this.isIE){\n this._htmlService.observer.next(event.target.innerHTML.toString());\n }\n }\n\n @HostListener('blur', ['$event'])\n public onBlur(event) {\n event.preventDefault();\n this._selectionService.restoreSelection();\n if (this.text.innerHTML) {\n const html = this.text.innerHTML.toString();\n this._htmlService.observer.next(html);\n } else {\n this._htmlService.observer.next(event.target.innerHTML.toString());\n }\n }\n}\n","import {EventEmitter, Injectable} from '@angular/core'\nimport {HttpRequest} from '@angular/common/http';\nimport {Api} from \"./config.service\";\n\n@Injectable()\nexport class LoadingMaskService {\n onLoadingChanged: EventEmitter = new EventEmitter();\n\n private stopList = [];\n private requests: HttpRequest[] = [];\n\n constructor() {\n this.stopList.push(Api.SAVE_TEXT);\n this.stopList.push(Api.SAVE_OPTICAL_CODE);\n this.stopList.push(Api.LOAD_DOCUMENT_PAGE);\n this.stopList.push(Api.LOAD_THUMBNAILS);\n this.stopList.push(Api.GET_FILE_STATUS);\n this.stopList.push(Api.LOAD_PRINT);\n }\n\n onRequestStart(req: HttpRequest): void {\n const stop = this.stopList.find(x => req.url.includes(x));\n if (!stop) {\n this.requests.push(req);\n this.notify();\n }\n }\n\n onRequestFinish(req: HttpRequest): void {\n const index = this.requests.indexOf(req);\n if (index !== -1) {\n this.requests.splice(index, 1);\n }\n this.notify();\n }\n\n private notify(): void {\n this.onLoadingChanged.emit(this.requests.length !== 0);\n }\n}\n","import {AfterViewInit, Component, Input, OnInit} from '@angular/core';\nimport {LoadingMaskService} from \"../loading-mask.service\";\n\n@Component({\n selector: 'gd-loading-mask',\n templateUrl: './loading-mask.component.html',\n styleUrls: ['./loading-mask.component.less']\n})\n\nexport class LoadingMaskComponent implements OnInit, AfterViewInit {\n @Input() loadingMask = false;\n\n constructor(private _loadingMaskService: LoadingMaskService) {\n }\n\n ngOnInit() {\n }\n\n ngAfterViewInit() {\n this._loadingMaskService\n .onLoadingChanged\n .subscribe((loading: boolean) => this.loadingMask = loading);\n }\n}\n","import {Injectable} from '@angular/core';\nimport {HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from \"@angular/common/http\";\nimport {Observable} from \"rxjs\";\nimport {finalize} from 'rxjs/operators'\nimport {LoadingMaskService} from \"./loading-mask.service\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LoadingMaskInterceptorService implements HttpInterceptor {\n\n constructor(private _loadingMaskService: LoadingMaskService) {\n }\n\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\n this._loadingMaskService.onRequestStart(req);\n const callback = () => this._loadingMaskService.onRequestFinish(req);\n return next.handle(req).pipe( finalize( callback));\n }\n}\n","import {\n Component,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n Output,\n ViewEncapsulation\n} from '@angular/core';\n\n\nconst horizontalAlignment = {\n center : {\n right: 'auto'\n },\n left : {\n right: '100%'\n },\n right : {\n right: '-100%'\n }\n};\n\nconst verticalAlignment = {\n center : {\n top : '0px',\n },\n top : {\n top : '-100%',\n right: '100%'\n },\n bottom : {\n top: 'autos'\n }\n};\n\n/**\n * DropDownToggleComponent\n */\n@Component({\n selector: 'gd-drop-down-toggle',\n template: '',\n styleUrls: ['./drop-down.component.less'],\n encapsulation : ViewEncapsulation.None\n})\nexport class DropDownToggleComponent{\n @HostListener('click',['$event'])\n click = (event: any) => this.dropdown.toggle(event);\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\n}\n\n/**\n * DropDownItemsComponent\n */\n@Component({\n selector: 'gd-drop-down-items',\n template: '
',\n styleUrls: ['./drop-down.component.less'],\n encapsulation : ViewEncapsulation.None\n})\nexport class DropDownItemsComponent{\n\n get horizontalAlign(){\n return horizontalAlignment[this.dropdown.getPlacement().h].right;\n }\n\n get verticalAlign(){\n return verticalAlignment[this.dropdown.getPlacement().v].top;\n }\n\n get isOpen(){\n return this.dropdown.open;\n }\n\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\n\n onClickOutside(event : Event ){\n this.dropdown.close();\n }\n}\n\n/**\n * DropDownItemComponent\n */\n@Component({\n selector: 'gd-drop-down-item',\n template: '
',\n styleUrls: ['./drop-down.component.less'],\n})\nexport class DropDownItemComponent{\n @HostBinding('class')\n class = 'drop-down-item';\n\n @Output()\n selected = new EventEmitter();\n\n @HostListener('click')\n click = () => this.selectEntry();\n\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\n\n selectEntry(){\n this.selected.next();\n this.dropdown.close();\n }\n}\n\n/**\n * DropDownComponent\n */\n@Component({\n selector: 'gd-drop-down',\n template: '
',\n styleUrls: ['./drop-down.component.less'],\n encapsulation : ViewEncapsulation.None\n})\nexport class DropDownComponent{\n @Input()\n placement = {\n h: \"center\",\n v: \"bottom\"\n };\n\n\n @Input()\n @HostBinding('class.show')\n open = false;\n\n @HostBinding('class')\n class = 'drop-down';\n\n close(){\n this.open = false;\n }\n\n toggle(event : MouseEvent){\n event.stopPropagation();\n this.open = !this.open;\n document.body.click();\n }\n\n getPlacement(){\n return this.placement;\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-left-side-bar',\n templateUrl: './left-side-bar.component.html',\n styleUrls: ['./left-side-bar.component.less']\n})\nexport class LeftSideBarComponent implements OnInit {\n @Input() showSpinner = false;\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n}\n","import {Directive, EventEmitter, HostListener, Input, Output} from '@angular/core';\n\n@Directive({\n selector: '[gdTooltip]'\n})\nexport class TooltipDirective {\n\n @Output() showToolTip = new EventEmitter();\n\n constructor() {\n }\n\n @HostListener('mouseenter')\n public onHovering() {\n this.showToolTip.emit(true);\n }\n\n @HostListener('mouseleave')\n public onUnhovering() {\n this.showToolTip.emit(false);\n }\n\n}\n","import {\n ApplicationRef,\n ComponentFactoryResolver,\n Injectable,\n ViewContainerRef\n} from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AddDynamicComponentService {\n\n constructor(private _factoryResolver: ComponentFactoryResolver,\n private _appRef: ApplicationRef) {\n }\n\n addDynamicComponent(viewContainerRef: ViewContainerRef, component: any) {\n const factory = this._factoryResolver.resolveComponentFactory(component);\n const componentRef = viewContainerRef.createComponent(factory);\n\n componentRef.onDestroy(() => {\n this._appRef.detachView(componentRef.hostView);\n });\n\n return componentRef;\n }\n\n}\n","import {HostDynamicDirective} from \"./host-dynamic.directive\";\n\nexport class HostingDynamicComponentService {\n private hosts: HostDynamicDirective[];\n\n constructor() {\n this.hosts = [];\n }\n\n add(host: HostDynamicDirective) {\n this.hosts = this.hosts.filter(function (h) {\n return h.ident !== host.ident;\n });\n this.hosts.push(host);\n }\n\n remove(host: HostDynamicDirective) {\n this.hosts = this.hosts.filter(function (h) {\n return h.ident !== host.ident;\n });\n }\n\n find(ident: number) {\n return this.hosts.find(function (h) {\n return h.ident === ident;\n });\n }\n}\n","import {AfterViewInit, Directive, Input, OnDestroy, ViewContainerRef} from '@angular/core';\nimport {HostingDynamicComponentService} from \"./hosting-dynamic-component.service\";\n\n@Directive({\n selector: '[gdHostDynamic]'\n})\nexport class HostDynamicDirective implements AfterViewInit, OnDestroy {\n @Input() ident: number;\n\n constructor(public viewContainerRef: ViewContainerRef,\n private _hostingService: HostingDynamicComponentService) {\n }\n\n ngAfterViewInit(): void {\n this._hostingService.add(this);\n }\n\n ngOnDestroy(): void {\n this._hostingService.remove(this);\n this.viewContainerRef.clear();\n }\n\n}\n","import {AfterViewInit, Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport * as jquery from \"jquery\";\nimport {Utils} from \"../file.service\";\n\nconst $ = jquery;\n\n@Component({\n selector: 'gd-resizing',\n templateUrl: './resizing.component.html',\n styleUrls: ['./resizing.component.less']\n})\nexport class ResizingComponent implements OnInit, AfterViewInit {\n\n @Input() init: boolean;\n @Input() id: number;\n @Input() se = false;\n @Input() ne = false;\n @Input() sw = false;\n @Input() nw = false;\n @Input() pageWidth: number;\n @Input() pageHeight: number;\n SE = 'se';\n NE = 'ne';\n SW = 'sw';\n NW = 'nw';\n\n @Output() offsetX = new EventEmitter();\n @Output() offsetY = new EventEmitter();\n @Output() offsetTop = new EventEmitter();\n @Output() offsetLeft = new EventEmitter();\n @Output() release = new EventEmitter();\n\n private grab = false;\n private oldPosition: { x: number, y: number };\n\n constructor() {\n }\n\n ngAfterViewInit(): void {\n const elSE = $(this.getElementId(this.SE));\n const elNW = $(this.getElementId(this.NW));\n if (this.init && elSE && elNW && elSE.offset() && elNW.offset()) {\n let width = elSE.offset().left - elNW.offset().left;\n let height = elSE.offset().top - elNW.offset().top;\n while (width >= this.pageWidth || height >= this.pageHeight) {\n width = width / 2;\n height = height / 2;\n }\n setTimeout(() => {\n this.offsetX.emit(width);\n this.offsetY.emit(height);\n }, 100);\n }\n }\n\n ngOnInit() {\n }\n\n catchUp($event: DragEvent) {\n // ff\n $event.preventDefault();\n if ($event.dataTransfer) { // ff\n $event.dataTransfer.setData('text', 'foo');\n }\n this.grab = true;\n this.oldPosition = Utils.getMousePosition($event);\n }\n\n resize($event: DragEvent, el: string) {\n if (!this.grab) {\n return;\n }\n const position = Utils.getMousePosition($event);\n if (position.x === 0 && position.y === 0) {\n return;\n }\n const notSW = this.NE === el || this.NW === el;\n const notNE = this.SW === el || this.NW === el;\n this.setOffsets(position, notNE, notSW);\n if (notSW) {\n this.offsetTop.emit(position.y - this.oldPosition.y);\n }\n if (notNE) {\n this.offsetLeft.emit(position.x - this.oldPosition.x);\n }\n this.oldPosition = position;\n }\n\n private setOffsets(position, x: boolean, y: boolean) {\n const offsetX = x ? this.oldPosition.x - position.x : position.x - this.oldPosition.x;\n const offsetY = y ? this.oldPosition.y - position.y : position.y - this.oldPosition.y;\n this.offsetX.emit(offsetX);\n this.offsetY.emit(offsetY);\n }\n\n end($event: DragEvent, el: string) {\n // ff\n this.resize($event, el);\n this.release.emit(true);\n this.grab = false;\n }\n\n start($event: DragEvent) {\n this.drop($event);\n }\n\n drop($event: DragEvent) {\n $event.stopPropagation();\n $event.preventDefault();\n }\n\n private getElementId(el: string) {\n return \"#\" + el + \"-\" + this.id;\n }\n}\n","import {TabActivatorService} from \"./tab-activator.service\";\n\nexport class TopTabActivatorService extends TabActivatorService {\n\n constructor() {\n super();\n }\n}\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {ExceptionMessageService} from \"../exception-message.service\";\nimport {TopTabActivatorService} from \"../top-tab-activator.service\";\nimport {ModalService, CommonModals} from \"../modal.service\";\n\n@Component({\n selector: 'gd-top-tab',\n templateUrl: './top-tab.component.html',\n styleUrls: ['./top-tab.component.less']\n})\nexport class TopTabComponent implements OnInit {\n @Input() id: string;\n @Input() icon: string;\n @Input() disabled = false;\n @Input() tooltip: string;\n @Output() activeTab = new EventEmitter();\n @Input() elementPosition = 0;\n public active = false;\n public showToolTip = false;\n\n constructor(private _tabActivatorService: TopTabActivatorService,\n private _modalService: ModalService,\n private _excMessageService: ExceptionMessageService) {\n this._tabActivatorService.activeTabChange.subscribe((tabId: string) => {\n this.activation(tabId);\n if (tabId === null) {\n this.activeTab.emit(\"\");\n }\n });\n }\n\n private activation(tabId: string) {\n if (this.id === tabId) {\n this.active = !this.active;\n if (this.active) {\n this.activeTab.emit(this.id);\n } else {\n this.activeTab.emit(\"\");\n }\n } else {\n this.active = false;\n }\n }\n\n ngOnInit() {\n }\n\n toggleTab() {\n if (this.disabled) {\n this._modalService.open(CommonModals.ErrorMessage);\n this._excMessageService.changeMessage(\"Please open document first\");\n return;\n }\n this._tabActivatorService.changeActiveTab(this.id);\n }\n\n}\n","import {Component, EventEmitter, Input, OnInit, Output, ElementRef, Renderer2} from '@angular/core';\nimport * as jquery from 'jquery';\nimport {FormattingService} from \"../formatting.service\";\nimport {OnCloseService} from \"../on-close.service\";\nimport {Option} from \"../select/select.component\";\nimport { ZoomService } from '../zoom.service';\nimport { WindowService } from '../window.service';\n\nconst $ = jquery;\n\n@Component({\n selector: 'gd-text-menu',\n templateUrl: './text-menu.component.html',\n styleUrls: ['./text-menu.component.less']\n})\nexport class TextMenuComponent implements OnInit {\n @Input() blur: boolean;\n @Input() fontSize: number;\n @Input() font: string;\n @Input() bold: boolean;\n @Input() italic: boolean;\n @Input() underline: boolean;\n @Input() color: string;\n @Input() decoration = true;\n @Input() showTooltips = true;\n\n @Output() outFontSize = new EventEmitter();\n @Output() outFont = new EventEmitter();\n @Output() outBold = new EventEmitter();\n @Output() outItalic = new EventEmitter();\n @Output() outUnderline = new EventEmitter();\n @Output() outColor = new EventEmitter();\n\n fontSizeOptions = FormattingService.getFontSizeOptions();\n fontOptions = FormattingService.getFontOptions();\n colorPickerShow = false;\n\n isMobile: boolean;\n\n constructor(private _onCloseService: OnCloseService,\n private _zoomService: ZoomService,\n private _windowService: WindowService,\n protected _elementRef: ElementRef,\n private renderer: Renderer2) {\n \n _onCloseService.onClose.subscribe(() => {\n this.colorPickerShow = false;\n });\n\n this.isMobile = _windowService.isMobile();\n _windowService.onResize.subscribe((w) => {\n this.isMobile = _windowService.isMobile();\n });\n\n _zoomService.zoomChange.subscribe((val: number) => {\n if (this.isMobile)\n {\n this.changePosition(val);\n }\n });\n }\n\n ngOnInit() {\n }\n\n changePosition(val: number) {\n const top = (window.innerHeight - 24 - this._elementRef.nativeElement.parentElement.getBoundingClientRect().top - this._elementRef.nativeElement.parentElement.getBoundingClientRect().height);\n const left = this._elementRef.nativeElement.parentElement.getBoundingClientRect().left;\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'width', window.innerWidth + 'px');\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'top', top + 'px');\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'left', -left + 'px');\n }\n\n selectFontSize($event: Option) {\n $(\".gd-wrapper\").off(\"keyup\");\n this.outFontSize.emit($event.value);\n $(\".gd-wrapper\").on(\"keyup\", () => {\n const fontElements = document.getElementsByTagName(\"font\");\n for (let i = 0, len = fontElements.length; i < len; ++i) {\n if (fontElements[i].getAttribute('size') === \"7\") {\n fontElements[i].removeAttribute(\"size\");\n fontElements[i].style.fontSize = $event + \"px\";\n }\n }\n });\n }\n\n selectFont($event: Option) {\n event.preventDefault();\n event.stopPropagation();\n this.outFont.emit($event.value);\n }\n\n toggleColorPicker($event) {\n $event.preventDefault();\n $event.stopPropagation();\n this.colorPickerShow = !this.colorPickerShow;\n }\n\n selectColor($event: string) {\n this.colorPickerShow = false;\n this.outColor.emit($event);\n }\n\n toggleBold(event) {\n event.preventDefault();\n event.stopPropagation();\n this.outBold.emit(!this.bold);\n }\n\n toggleItalic(event) {\n event.preventDefault();\n event.stopPropagation();\n this.outItalic.emit(!this.italic);\n }\n\n toggleUnderline(event) {\n event.preventDefault();\n event.stopPropagation();\n this.outUnderline.emit(!this.underline);\n }\n\n closePicker($event) {\n this.colorPickerShow = !$event;\n }\n}\n","import {Component, EventEmitter, Input, OnInit, Output, Renderer2, ElementRef} from '@angular/core';\nimport {Formatting} from \"../formatting.service\";\nimport {WindowService} from \"../window.service\";\nimport { ZoomService } from '../zoom.service';\n\nexport class MenuType {\n public static FOR_SIGNATURE = \"signature\";\n public static FOR_ANNOTATION = \"annotation\";\n}\n\n@Component({\n selector: 'gd-context-menu',\n templateUrl: './context-menu.component.html',\n styleUrls: ['./context-menu.component.less']\n})\nexport class ContextMenuComponent implements OnInit {\n @Input() formatting: Formatting = Formatting.default();\n @Input() textMenu: boolean;\n @Input() topPosition: number;\n @Input() lock = false;\n @Input() translation = 0;\n @Input() menuType: string;\n @Output() changeFormatting = new EventEmitter();\n @Output() removeItem = new EventEmitter();\n @Output() copySign = new EventEmitter();\n @Output() lockOut = new EventEmitter();\n @Output() comment = new EventEmitter();\n\n isMobile: boolean;\n\n constructor(private _windowService: WindowService,\n private _zoomService: ZoomService,\n protected _elementRef: ElementRef,\n private renderer: Renderer2) {\n this.isMobile = _windowService.isMobile();\n _windowService.onResize.subscribe((w) => {\n this.isMobile = _windowService.isMobile();\n });\n\n _zoomService.zoomChange.subscribe((val: number) => {\n if (this.isMobile)\n {\n this.changeScale(val);\n }\n });\n }\n\n ngOnInit() {\n }\n\n changeScale(val: number){\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-context-menu'), 'transform', 'scale(' + 1/(val/100) + ')');\n }\n\n saveChanges() {\n this.changeFormatting.emit(this.formatting);\n }\n\n selectFontSize($event: number) {\n this.formatting.fontSize = $event;\n this.saveChanges();\n }\n\n selectFont($event: string) {\n this.formatting.font = $event;\n this.saveChanges();\n }\n\n selectColor($event: string) {\n this.formatting.color = $event;\n this.saveChanges();\n }\n\n toggleBold($event) {\n this.formatting.bold = $event;\n this.saveChanges();\n }\n\n toggleItalic($event) {\n this.formatting.italic = $event;\n this.saveChanges();\n }\n\n toggleUnderline($event) {\n this.formatting.underline = $event;\n this.saveChanges();\n }\n\n deleteItem() {\n this.removeItem.emit(true);\n }\n\n toggleLock() {\n this.lock = !this.lock;\n this.lockOut.emit(this.lock);\n }\n\n onCopySign() {\n this.copySign.emit(true);\n }\n\n isSignature() {\n return this.menuType === MenuType.FOR_SIGNATURE;\n }\n\n isAnnotation() {\n return this.menuType === MenuType.FOR_ANNOTATION;\n }\n\n addComment() {\n this.comment.emit(true);\n }\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {TopToolbarComponent} from './top-toolbar/top-toolbar.component';\nimport {SidePanelComponent} from './side-panel/side-panel.component';\nimport {ButtonComponent} from './button/button.component';\nimport {LogoComponent} from './logo/logo.component';\nimport {TooltipComponent} from './tooltip/tooltip.component';\nimport {FontAwesomeModule} from '@fortawesome/angular-fontawesome';\nimport {library} from '@fortawesome/fontawesome-svg-core';\nimport {fas} from '@fortawesome/free-solid-svg-icons';\nimport {far} from '@fortawesome/free-regular-svg-icons';\nimport {Api, ConfigService,} from \"./config.service\";\nimport {ModalService} from \"./modal.service\";\nimport {ModalComponent} from './modal/modal.component';\nimport {BrowseFilesModalComponent} from './browse-files-modal/browse-files-modal.component';\nimport {FileModel, FileService, FileUtil, Utils} from \"./file.service\";\nimport {DocumentComponent} from './document/document.component';\nimport {PageComponent} from './page/page.component';\nimport {HighlightSearchPipe, SanitizeHtmlPipe, SanitizeResourceHtmlPipe, SanitizeStylePipe} from \"./pipes\";\nimport {UploadFileZoneComponent} from './upload-file-zone/upload-file-zone.component';\nimport {UploadFilesService} from \"./upload-files.service\";\nimport {DndDirective} from './dnd.directive';\nimport {ScrollableDirective} from './scrollable.directive';\nimport {MouseWheelDirective} from './mousewheel.directive';\nimport {NavigateService} from \"./navigate.service\";\nimport {PagePreloadService} from \"./page-preload.service\";\nimport {ZoomDirective} from './zoom.directive';\nimport {ZoomService} from \"./zoom.service\";\nimport {SelectComponent} from './select/select.component';\nimport {DisabledCursorDirective} from './disabled-cursor.directive';\nimport {RotationDirective} from './rotation.directive';\nimport {InitStateComponent} from './init-state/init-state.component';\nimport {RenderPrintService} from \"./render-print.service\";\nimport {RenderPrintDirective} from './render-print.directive';\nimport {ErrorModalComponent} from './error-modal/error-modal.component';\nimport {PasswordRequiredComponent} from './password-required/password-required.component';\nimport {ExceptionMessageService} from \"./exception-message.service\";\nimport {PasswordService} from \"./password.service\";\nimport {ErrorInterceptorService} from \"./error-interceptor.service\";\nimport {SearchComponent} from './search/search.component';\nimport {SearchableDirective} from './searchable.directive';\nimport {SearchService} from \"./search.service\";\nimport {WindowService} from \"./window.service\";\nimport {ViewportService} from \"./viewport.service\";\nimport {TabbedToolbarsComponent} from './tabbed-toolbars/tabbed-toolbars.component';\nimport {TabComponent} from \"./tab/tab.component\";\nimport {TabsComponent} from \"./tabs/tabs.component\";\nimport {FormattingService} from \"./formatting.service\";\nimport {ColorPickerComponent} from './color-picker/color-picker.component';\nimport {FormattingDirective} from './formatting.directive';\nimport {BackFormattingService} from \"./back-formatting.service\";\nimport {OnCloseService} from \"./on-close.service\";\nimport {SuccessModalComponent} from './success-modal/success-modal.component';\nimport {EditorDirective} from './editor.directive';\nimport {LoadingMaskComponent} from './loading-mask/loading-mask.component';\nimport {LoadingMaskService} from './loading-mask.service';\nimport {LoadingMaskInterceptorService} from \"./loading-mask-interceptor.service\";\nimport {TabActivatorService} from \"./tab-activator.service\";\nimport {\n DropDownComponent,\n DropDownItemComponent,\n DropDownItemsComponent,\n DropDownToggleComponent\n} from './drop-down/drop-down.component';\nimport {ClickOutsideModule} from 'ng-click-outside';\nimport {LeftSideBarComponent} from './left-side-bar/left-side-bar.component';\nimport {TooltipDirective} from './tooltip.directive';\nimport {AddDynamicComponentService} from \"./add-dynamic-component.service\";\nimport {HostDynamicDirective} from './host-dynamic.directive';\nimport {HostingDynamicComponentService} from \"./hosting-dynamic-component.service\";\nimport {ResizingComponent} from './resizing/resizing.component';\nimport {TopTabComponent} from './top-tab/top-tab.component';\nimport {TopTabActivatorService} from \"./top-tab-activator.service\";\nimport {TextMenuComponent} from './text-menu/text-menu.component';\nimport {ContextMenuComponent} from './context-menu/context-menu.component';\n\nconst providers = [ConfigService,\n Api,\n ModalService,\n FileService,\n FileModel,\n FileUtil,\n Utils,\n SanitizeHtmlPipe,\n SanitizeResourceHtmlPipe,\n SanitizeStylePipe,\n HighlightSearchPipe,\n UploadFilesService,\n RenderPrintService,\n NavigateService,\n PagePreloadService,\n ZoomService,\n ExceptionMessageService,\n PasswordService,\n ErrorInterceptorService,\n SearchService,\n WindowService,\n ViewportService,\n FormattingService,\n BackFormattingService,\n OnCloseService,\n LoadingMaskInterceptorService,\n LoadingMaskService,\n TabActivatorService,\n AddDynamicComponentService,\n HostingDynamicComponentService,\n TopTabActivatorService];\n\n@NgModule({\n imports: [CommonModule, FontAwesomeModule, ClickOutsideModule],\n declarations: [\n TopToolbarComponent,\n SidePanelComponent,\n ButtonComponent,\n LogoComponent,\n TooltipComponent,\n ModalComponent,\n BrowseFilesModalComponent,\n DocumentComponent,\n PageComponent,\n SanitizeHtmlPipe,\n SanitizeResourceHtmlPipe,\n SanitizeStylePipe,\n HighlightSearchPipe,\n UploadFileZoneComponent,\n DndDirective,\n ScrollableDirective,\n MouseWheelDirective,\n ZoomDirective,\n SelectComponent,\n DisabledCursorDirective,\n RotationDirective,\n InitStateComponent,\n RenderPrintDirective,\n ErrorModalComponent,\n PasswordRequiredComponent,\n SearchComponent,\n SearchableDirective,\n TabbedToolbarsComponent,\n TabComponent,\n TabsComponent,\n ColorPickerComponent,\n FormattingDirective,\n SuccessModalComponent,\n EditorDirective,\n LoadingMaskComponent,\n DropDownComponent,\n DropDownItemComponent,\n DropDownItemsComponent,\n DropDownToggleComponent,\n LeftSideBarComponent,\n TooltipDirective,\n HostDynamicDirective,\n ResizingComponent,\n TopTabComponent,\n TextMenuComponent,\n ContextMenuComponent\n ],\n exports: [\n TopToolbarComponent,\n SidePanelComponent,\n ButtonComponent,\n LogoComponent,\n TooltipComponent,\n ModalComponent,\n BrowseFilesModalComponent,\n DocumentComponent,\n PageComponent,\n SanitizeResourceHtmlPipe,\n SanitizeStylePipe,\n HighlightSearchPipe,\n SanitizeHtmlPipe,\n UploadFileZoneComponent,\n ScrollableDirective,\n MouseWheelDirective,\n SelectComponent,\n RotationDirective,\n InitStateComponent,\n RenderPrintDirective,\n ErrorModalComponent,\n PasswordRequiredComponent,\n SearchComponent,\n SearchableDirective,\n TabbedToolbarsComponent,\n TabComponent,\n TabsComponent,\n ColorPickerComponent,\n FormattingDirective,\n SuccessModalComponent,\n LoadingMaskComponent,\n DndDirective,\n DropDownComponent,\n DropDownItemComponent,\n DropDownItemsComponent,\n DropDownToggleComponent,\n ZoomDirective,\n DropDownToggleComponent,\n LeftSideBarComponent,\n TooltipDirective,\n HostDynamicDirective,\n ResizingComponent,\n TopTabComponent,\n TextMenuComponent,\n ContextMenuComponent\n ],\n providers: providers\n})\nexport class CommonComponentsModule {\n constructor() {\n library.add(fas, far);\n }\n}\n"],"names":["Component","EventEmitter","Input","Output","Subject","fromEvent","debounceTime","distinctUntilChanged","startWith","tap","HttpHeaders","Injectable","ElementRef","tslib_1.__extends","Observable","BehaviorSubject","$","Pipe","DomSanitizer","Directive","HostBinding","HostListener","tslib_1.__values","map","catchError","HttpErrorResponse","throwError","ViewChild","finalize","ViewEncapsulation","Inject","forwardRef","ComponentFactoryResolver","ApplicationRef","ViewContainerRef","Renderer2","library","fas","far","NgModule","CommonModule","FontAwesomeModule","ClickOutsideModule"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"groupdocs.examples.angular-common-components.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","ng://@groupdocs.examples.angular/common-components/lib/top-toolbar/top-toolbar.component.ts","ng://@groupdocs.examples.angular/common-components/lib/side-panel/side-panel.component.ts","ng://@groupdocs.examples.angular/common-components/lib/window.service.ts","ng://@groupdocs.examples.angular/common-components/lib/button/button.component.ts","ng://@groupdocs.examples.angular/common-components/lib/logo/logo.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tooltip/tooltip.component.ts","ng://@groupdocs.examples.angular/common-components/lib/config.service.ts","ng://@groupdocs.examples.angular/common-components/lib/modal.service.ts","ng://@groupdocs.examples.angular/common-components/lib/modal/modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/file.service.ts","ng://@groupdocs.examples.angular/common-components/lib/upload-files.service.ts","ng://@groupdocs.examples.angular/common-components/lib/browse-files-modal/browse-files-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/zoom.service.ts","ng://@groupdocs.examples.angular/common-components/lib/page-preload.service.ts","ng://@groupdocs.examples.angular/common-components/lib/navigate.service.ts","ng://@groupdocs.examples.angular/common-components/lib/document/document.component.ts","ng://@groupdocs.examples.angular/common-components/lib/page/page.component.ts","ng://@groupdocs.examples.angular/common-components/lib/pipes.ts","ng://@groupdocs.examples.angular/common-components/lib/upload-file-zone/upload-file-zone.component.ts","ng://@groupdocs.examples.angular/common-components/lib/dnd.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/viewport.service.ts","ng://@groupdocs.examples.angular/common-components/lib/scrollable.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/mousewheel.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/zoom.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/on-close.service.ts","ng://@groupdocs.examples.angular/common-components/lib/select/select.component.ts","ng://@groupdocs.examples.angular/common-components/lib/disabled-cursor.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/rotation.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/init-state/init-state.component.ts","ng://@groupdocs.examples.angular/common-components/lib/render-print.service.ts","ng://@groupdocs.examples.angular/common-components/lib/render-print.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/exception-message.service.ts","ng://@groupdocs.examples.angular/common-components/lib/error-modal/error-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/password.service.ts","ng://@groupdocs.examples.angular/common-components/lib/password-required/password-required.component.ts","ng://@groupdocs.examples.angular/common-components/lib/error-interceptor.service.ts","ng://@groupdocs.examples.angular/common-components/lib/search.service.ts","ng://@groupdocs.examples.angular/common-components/lib/search/search.component.ts","ng://@groupdocs.examples.angular/common-components/lib/searchable.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/tabbed-toolbars/tabbed-toolbars.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tab-activator.service.ts","ng://@groupdocs.examples.angular/common-components/lib/tab/tab.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tabs/tabs.component.ts","ng://@groupdocs.examples.angular/common-components/lib/formatting.service.ts","ng://@groupdocs.examples.angular/common-components/lib/color-picker/color-picker.component.ts","ng://@groupdocs.examples.angular/common-components/lib/back-formatting.service.ts","ng://@groupdocs.examples.angular/common-components/lib/selection.service.ts","ng://@groupdocs.examples.angular/common-components/lib/formatting.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/success-modal/success-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/edit-html.service.ts","ng://@groupdocs.examples.angular/common-components/lib/editor.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask.service.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask/loading-mask.component.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask-interceptor.service.ts","ng://@groupdocs.examples.angular/common-components/lib/drop-down/drop-down.component.ts","ng://@groupdocs.examples.angular/common-components/lib/left-side-bar/left-side-bar.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tooltip.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/add-dynamic-component.service.ts","ng://@groupdocs.examples.angular/common-components/lib/hosting-dynamic-component.service.ts","ng://@groupdocs.examples.angular/common-components/lib/host-dynamic.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/resizing/resizing.component.ts","ng://@groupdocs.examples.angular/common-components/lib/top-tab-activator.service.ts","ng://@groupdocs.examples.angular/common-components/lib/top-tab/top-tab.component.ts","ng://@groupdocs.examples.angular/common-components/lib/text-menu/text-menu.component.ts","ng://@groupdocs.examples.angular/common-components/lib/context-menu/context-menu.component.ts","ng://@groupdocs.examples.angular/common-components/lib/common-components.module.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {Component, Input} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-top-toolbar',\r\n templateUrl: './top-toolbar.component.html',\r\n styleUrls: ['./top-toolbar.component.less']\r\n})\r\nexport class TopToolbarComponent {\r\n\r\n constructor() {\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-side-panel',\r\n templateUrl: './side-panel.component.html',\r\n styleUrls: ['./side-panel.component.less']\r\n})\r\n\r\nexport class SidePanelComponent {\r\n @Input() title: string;\r\n @Input() icon: string;\r\n @Input() closable = true;\r\n @Input() saveable = true;\r\n @Output() hideSidePanel = new EventEmitter();\r\n @Output() saveInSidePanel = new EventEmitter();\r\n\r\n onlyTitle = false;\r\n\r\n constructor() {\r\n }\r\n\r\n closeSidePanel() {\r\n this.hideSidePanel.emit(true);\r\n }\r\n\r\n saveBySidePanel() {\r\n this.saveInSidePanel.emit(true);\r\n }\r\n\r\n toggleTitleMode(){\r\n if (this.closable && !this.saveable) {\r\n this.onlyTitle = !this.onlyTitle;\r\n }\r\n }\r\n}\r\n","import {fromEvent, Observable, Subject} from \"rxjs\";\r\nimport {debounceTime, distinctUntilChanged, startWith, tap} from \"rxjs/operators\";\r\n\r\nconst MOBILE_MAX_WIDTH = 425;\r\nconst TABLET_MAX_WIDTH = 1024;\r\n\r\nexport class WindowService {\r\n\r\n private resizeSubject: Subject = new Subject();\r\n private _resize$;\r\n private width: number;\r\n private height: number;\r\n\r\n constructor() {\r\n this.width = window.innerWidth;\r\n this.height = window.innerHeight;\r\n\r\n this._resize$ = fromEvent(window, 'resize')\r\n .pipe(\r\n debounceTime(200),\r\n distinctUntilChanged(),\r\n startWith({target: {innerWidth: window.innerWidth, innerHeight: window.innerHeight}}),\r\n tap(event => {\r\n this.resizeSubject.next(event.target);\r\n this.width = (event.target as Window).innerWidth;\r\n this.height = (event.target as Window).innerHeight;\r\n }),\r\n );\r\n this._resize$.subscribe();\r\n }\r\n\r\n get onResize(): Observable {\r\n return this.resizeSubject.asObservable();\r\n }\r\n\r\n isMobile() {\r\n return this.width <= MOBILE_MAX_WIDTH;\r\n }\r\n\r\n isTablet() {\r\n return this.width <= TABLET_MAX_WIDTH;\r\n }\r\n\r\n isDesktop() {\r\n return !this.isMobile() && !this.isTablet();\r\n }\r\n\r\n getWidth() {\r\n return this.width;\r\n }\r\n\r\n getHeight() {\r\n return this.height;\r\n }\r\n\r\n isEdge() {\r\n return window.navigator.userAgent.toLowerCase().indexOf('edge') > -1;\r\n }\r\n\r\n isFirefox() {\r\n return navigator.userAgent.toLowerCase().indexOf('firefox') > -1;\r\n }\r\n}\r\n","import {Component, Input} from '@angular/core';\r\nimport {WindowService} from \"../window.service\";\r\n\r\n@Component({\r\n selector: 'gd-button',\r\n templateUrl: './button.component.html',\r\n styleUrls: ['./button.component.less']\r\n})\r\nexport class ButtonComponent {\r\n @Input() iconOnly = true;\r\n @Input() intent = 'default';\r\n @Input() disabled = false;\r\n @Input() icon: string;\r\n @Input() iconClass: string;\r\n @Input() tooltip: string;\r\n @Input() className: string;\r\n @Input() toggle = false;\r\n @Input() iconSize: string;\r\n @Input() iconRegular = false;\r\n @Input() elementPosition = 0;\r\n\r\n showToolTip = false;\r\n private isDesktop: boolean;\r\n\r\n constructor(windowService: WindowService) {\r\n this.isDesktop = windowService.isDesktop();\r\n windowService.onResize.subscribe((w) => {\r\n this.isDesktop = windowService.isDesktop();\r\n });\r\n }\r\n\r\n iconButtonClass() {\r\n return this.iconOnly ? 'icon-button' : '';\r\n }\r\n\r\n onHovering() {\r\n if (this.isDesktop && !this.disabled) {\r\n this.className += ' active';\r\n }\r\n }\r\n\r\n onUnhovering() {\r\n if (this.isDesktop && !this.disabled) {\r\n this.className = this.cleanAll(this.className, ' active');\r\n }\r\n }\r\n\r\n private cleanAll(str: string, val: string) {\r\n while (str && str.indexOf(val) !== -1) {\r\n str = str.replace(val, '');\r\n }\r\n return str;\r\n }\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-logo',\r\n templateUrl: './logo.component.html',\r\n styleUrls: ['./logo.component.less']\r\n})\r\nexport class LogoComponent implements OnInit {\r\n\r\n @Input() logo;\r\n @Input() icon;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-tooltip',\r\n templateUrl: './tooltip.component.html',\r\n styleUrls: ['./tooltip.component.less']\r\n})\r\nexport class TooltipComponent implements OnInit {\r\n\r\n @Input() text: string;\r\n @Input() position = 0;\r\n visibility = 'hidden';\r\n\r\n constructor() {\r\n }\r\n\r\n getClass() {\r\n if (this.position === 0) {\r\n return 'tooltip';\r\n }\r\n return 'tooltip ' + (this.position > 0 ? 'last-element' : 'first-element');\r\n }\r\n\r\n @Input()\r\n set show(value: boolean) {\r\n this.visibility = value ? 'shown' : 'hidden';\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {HttpHeaders} from \"@angular/common/http\";\r\nimport {Injectable} from \"@angular/core\";\r\n\r\nexport class Api {\r\n public static VIEWER_APP = '/viewer';\r\n public static SIGNATURE_APP = '/signature';\r\n public static ANNOTATION_APP = '/annotation';\r\n public static SEARCH_APP = '/search';\r\n public static EDITOR_APP = '/editor';\r\n public static COMPARISON_APP = '/comparison';\r\n public static CONVERSION_APP = '/conversion';\r\n public static METADATA_APP = '/metadata';\r\n public static DEFAULT_API_ENDPOINT = window.location.href;\r\n public static LOAD_FILE_TREE = '/loadFileTree';\r\n public static LOAD_CONFIG = '/loadConfig';\r\n public static LOAD_DOCUMENT_DESCRIPTION = '/loadDocumentDescription';\r\n public static LOAD_DOCUMENT_PAGE = '/loadDocumentPage';\r\n public static LOAD_DOCUMENT_PROPERTIES = '/loadProperties';\r\n public static LOAD_DOCUMENT_PROPERTIES_NAMES = '/loadPropertiesNames';\r\n public static SAVE_PROPERTY = '/saveProperty';\r\n public static REMOVE_PROPERTY = '/removeProperty';\r\n public static ROTATE_DOCUMENT_PAGE = '/rotateDocumentPages';\r\n public static UPLOAD_DOCUMENTS = '/uploadDocument';\r\n public static DOWNLOAD_DOCUMENTS = '/downloadDocument';\r\n public static LOAD_PRINT = '/loadPrint';\r\n public static LOAD_PRINT_PDF = '/printPdf';\r\n public static LOAD_THUMBNAILS = '/loadThumbnails';\r\n public static LOAD_FORMATS = '/loadFormats';\r\n public static SAVE_FILE = '/saveFile';\r\n public static CREATE_FILE = '/createFile';\r\n public static COMPARE_FILES = '/compare';\r\n public static CONVERT_FILE = '/convert';\r\n public static DELETE_SIGNATURE_FILE = '/deleteSignatureFile';\r\n public static REMOVE_FROM_INDEX = '/removeFromIndex';\r\n public static GET_FILE_STATUS = '/getFileStatus';\r\n public static SAVE_OPTICAL_CODE = '/saveOpticalCode';\r\n public static SAVE_TEXT = '/saveText';\r\n public static SAVE_IMAGE = '/saveImage';\r\n public static SAVE_STAMP = '/saveStamp';\r\n public static SIGN = '/sign';\r\n public static DOWNLOAD_SIGNED = '/downloadSigned';\r\n public static LOAD_SIGNATURE_IMAGE = '/loadSignatureImage';\r\n public static ANNOTATE = '/annotate';\r\n public static SEARCH = '/search';\r\n public static ADD_FILES_TO_INDEX = '/addFilesToIndex';\r\n\r\n public static httpOptionsJson = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n })\r\n };\r\n public static httpOptionsJsonResponseTypeBlob = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n }),\r\n responseType: 'blob' as 'blob'\r\n };\r\n}\r\n\r\n@Injectable()\r\nexport class ConfigService {\r\n\r\n private _apiEndpoint: string;\r\n\r\n constructor() {\r\n this.apiEndpoint = Api.DEFAULT_API_ENDPOINT;\r\n }\r\n\r\n set apiEndpoint(url: string) {\r\n this._apiEndpoint = url && url.trim().endsWith('/') ? url.substring(0, url.length - 1) : url;\r\n }\r\n\r\n getConfigEndpoint(app) {\r\n return (this.apiEndpoint.endsWith(app) ? this.apiEndpoint : this.apiEndpoint + app) + Api.LOAD_CONFIG;\r\n }\r\n\r\n getViewerApiEndpoint() {\r\n return this._apiEndpoint.endsWith(Api.VIEWER_APP) ? this._apiEndpoint : this._apiEndpoint + Api.VIEWER_APP;\r\n }\r\n\r\n getEditorApiEndpoint() {\r\n return this._apiEndpoint.trim().endsWith(Api.EDITOR_APP) ? this._apiEndpoint : this._apiEndpoint + Api.EDITOR_APP;\r\n }\r\n\r\n getComparisonApiEndpoint() {\r\n return this._apiEndpoint.trim().endsWith(Api.COMPARISON_APP) ? this._apiEndpoint : this._apiEndpoint + Api.COMPARISON_APP;\r\n }\r\n\r\n getConversionApiEndpoint() {\r\n return this._apiEndpoint.trim().endsWith(Api.CONVERSION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.CONVERSION_APP;\r\n }\r\n\r\n getMetadataApiEndpoint() {\r\n return this._apiEndpoint.trim().endsWith(Api.METADATA_APP) ? this._apiEndpoint : this._apiEndpoint + Api.METADATA_APP;\r\n }\r\n\r\n get apiEndpoint() {\r\n return this._apiEndpoint;\r\n }\r\n\r\n getSignatureApiEndpoint() {\r\n return this._apiEndpoint.endsWith(Api.SIGNATURE_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SIGNATURE_APP;\r\n }\r\n\r\n getAnnotationApiEndpoint() {\r\n return this._apiEndpoint.endsWith(Api.ANNOTATION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.ANNOTATION_APP;\r\n }\r\n\r\n getSearchApiEndpoint() {\r\n return this._apiEndpoint.endsWith(Api.SEARCH_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SEARCH_APP;\r\n }\r\n}\r\n","export class CommonModals {\r\n static PasswordRequired = \"gd-password-required\";\r\n static ErrorMessage = \"gd-error-message\";\r\n static BrowseFiles = \"gd-browse-files\";\r\n static CreateDocument = \"gd-create-document\";\r\n static OperationSuccess = \"gd-success-modal\";\r\n static DrawHandSignature = \"gd-draw-hand-signature\";\r\n static DrawStampSignature = \"gd-draw-stamp-signature\";\r\n static InformationMessage = \"gd-information-message\";\r\n}\r\n\r\nexport class ModalService {\r\n private modals: any[] = [];\r\n\r\n add(modal: any) {\r\n this.modals.push(modal);\r\n }\r\n\r\n remove(id: string) {\r\n this.modals = this.modals.filter(x => x.id !== id);\r\n }\r\n\r\n open(id: string) {\r\n const modal: any = this.modals.filter(x => x.id === id)[0];\r\n if (modal) {\r\n modal.open();\r\n }\r\n }\r\n\r\n close(id: string) {\r\n const modal: any = this.modals.filter(x => x.id === id)[0];\r\n if (modal) {\r\n modal.close();\r\n }\r\n }\r\n}\r\n","import {Component, ElementRef, EventEmitter, Input, OnDestroy, OnInit, Output} from '@angular/core';\r\nimport {ModalService} from \"../modal.service\";\r\n\r\n@Component({\r\n selector: 'gd-modal',\r\n templateUrl: './modal.component.html',\r\n styleUrls: ['./modal.component.less']\r\n})\r\nexport class ModalComponent implements OnInit, OnDestroy {\r\n @Input() id: string;\r\n @Input() title: string;\r\n @Output() visible = new EventEmitter();\r\n @Output() cancel = new EventEmitter();\r\n visibility = false;\r\n private element: any;\r\n\r\n constructor(private modalService: ModalService, el: ElementRef) {\r\n this.element = el.nativeElement;\r\n }\r\n\r\n ngOnInit(): void {\r\n if (!this.id) {\r\n console.error('modal must have an id');\r\n return;\r\n }\r\n\r\n document.body.appendChild(this.element);\r\n\r\n this.modalService.add(this);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.modalService.remove(this.id);\r\n this.element.remove();\r\n }\r\n\r\n open(): void {\r\n this.visibility = true;\r\n this.visible.emit(true);\r\n }\r\n\r\n close(): void {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.visibility = false;\r\n this.visible.emit(false);\r\n }\r\n\r\n onClose($event: MouseEvent) {\r\n $event.stopPropagation();\r\n if ($event && $event.target && ($event.target).id === 'modalDialog') {\r\n this.close();\r\n }\r\n }\r\n\r\n cancelClose() {\r\n this.cancel.emit(false);\r\n this.close();\r\n }\r\n}\r\n","export class PageModel {\r\n data: string;\r\n angle: number;\r\n width: number;\r\n height: number;\r\n number: number;\r\n editable: boolean;\r\n}\r\n\r\nexport class RotatedPage {\r\n pageNumber: number;\r\n angle: number;\r\n}\r\n\r\nexport class FileCredentials {\r\n guid: string;\r\n password: string;\r\n\r\n constructor(guid: string, password: string) {\r\n this.guid = guid;\r\n this.password = password;\r\n }\r\n}\r\n\r\nexport class SaveFile extends FileCredentials {\r\n content: string;\r\n\r\n constructor(guid: string, password: string, content: string) {\r\n super(guid, password);\r\n this.content = content;\r\n }\r\n}\r\n\r\nexport class FileDescription {\r\n guid: string;\r\n pages: PageModel[];\r\n printAllowed = true;\r\n showGridLines: boolean;\r\n thumbnails: PageModel[];\r\n}\r\n\r\nexport class FileModel {\r\n guid: string;\r\n name: string;\r\n directory: boolean;\r\n size: number;\r\n isDirectory: boolean;\r\n}\r\n\r\nexport class HttpError {\r\n static BadRequest = 400;\r\n static Unauthorized = 401;\r\n static Forbidden = 403;\r\n static NotFound = 404;\r\n static TimeOut = 408;\r\n static Conflict = 409;\r\n static InternalServerError = 500;\r\n}\r\n\r\nexport class Utils {\r\n public static getMousePosition(event) {\r\n const mouse = {\r\n x: 0,\r\n y: 0\r\n };\r\n const wEvent: DragEvent = window.event;\r\n const ev = event || wEvent; //Moz || IE\r\n if (ev.pageX || wEvent.pageX || wEvent.screenX || (ev.touches && ev.touches[0] && ev.touches[0].pageX)) { //Moz\r\n const pageX = typeof ev.pageX !== \"undefined\" && ev.pageX !== 0 ? ev.pageX : wEvent.pageX;\r\n const pageY = typeof ev.pageY !== \"undefined\" && ev.pageY !== 0 ? ev.pageY : wEvent.pageY;\r\n const screenX = typeof wEvent.screenX !== \"undefined\" && wEvent.screenY !== 0;\r\n const screenY = typeof wEvent.screenY !== \"undefined\" && wEvent.screenY !== 0;\r\n mouse.x = pageX ? pageX : (screenX ? wEvent.screenX : ev.touches[0].pageX);\r\n mouse.y = pageY ? pageY : (screenY ? wEvent.screenY : ev.touches[0].pageY);\r\n } else if (ev.clientX) { //IE\r\n mouse.x = ev.clientX + document.body.scrollLeft;\r\n mouse.y = ev.clientY + document.body.scrollTop;\r\n }\r\n return mouse;\r\n }\r\n\r\n public static toRgb(color: string) {\r\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(color);\r\n if (result) {\r\n const r = parseInt(result[1], 16);\r\n const g = parseInt(result[2], 16);\r\n const b = parseInt(result[3], 16);\r\n return result ? 'rgb(' + r + ',' + g + ',' + b + ')' : '';\r\n }\r\n return color;\r\n }\r\n\r\n public static toHex(color: string) {\r\n // check if color is standard hex value\r\n if (color.match(/[0-9A-F]{6}|[0-9A-F]{3}$/i)) {\r\n return (color.charAt(0) === \"#\") ? color : (\"#\" + color);\r\n // check if color is RGB value -> convert to hex\r\n } else if (color.match(/^rgb\\(\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*\\)$/)) {\r\n const c = ([parseInt(RegExp.$1, 10), parseInt(RegExp.$2, 10), parseInt(RegExp.$3, 10)]),\r\n pad = function (str) {\r\n if (str.length < 2) {\r\n for (let i = 0, len = 2 - str.length; i < len; i++) {\r\n str = '0' + str;\r\n }\r\n }\r\n return str;\r\n };\r\n if (c.length === 3) {\r\n const r = pad(c[0].toString(16)),\r\n g = pad(c[1].toString(16)),\r\n b = pad(c[2].toString(16));\r\n return '#' + r + g + b;\r\n }\r\n // else do nothing\r\n } else {\r\n return '';\r\n }\r\n }\r\n}\r\n\r\nexport class FileUtil {\r\n public static map = {\r\n 'folder': {'format': '', 'icon': 'folder'},\r\n 'pdf': {'format': 'Portable Document Format', 'icon': 'file-pdf', 'unit': 'pt'},\r\n 'doc': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'docx': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'docm': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'dot': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'dotx': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'dotm': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'xls': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xlsx': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xlsm': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xlsb': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xls2003': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xltx': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xltm': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'ppt': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'pptx': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'pps': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'ppsx': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'vsd': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vdx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vss': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vsx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vst': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vtx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vsdx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vdw': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vstx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vssx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'mpp': {'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'mpt': {'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'msg': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'eml': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'emlx': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'one': {'format': 'Microsoft OneNote', 'icon': 'file-word', 'unit': 'pt'},\r\n 'odt': {'format': 'Open Document Text', 'icon': 'file-word', 'unit': 'pt'},\r\n 'ott': {'format': 'Open Document Text Template', 'icon': 'file-word', 'unit': 'pt'},\r\n 'ods': {'format': 'Open Document Spreadsheet', 'icon': 'file-excel', 'unit': 'px'},\r\n 'odp': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'otp': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'ots': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'potx': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'potm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'pptm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'ppsm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'rtf': {'format': 'Rich Text Format', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'txt': {'format': 'Plain Text File', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'csv': {'format': 'Comma-Separated Values', 'icon': 'file-excel', 'unit': 'px'},\r\n 'html': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\r\n 'mht': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\r\n 'mhtml': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\r\n 'xml': {'format': 'Extensible Markup Language', 'icon': 'file-word', 'unit': 'pt'},\r\n 'xps': {'format': 'XML Paper Specification', 'icon': 'file-word', 'unit': 'pt'},\r\n 'dxf': {'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'dwg': {'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'bmp': {'format': 'Bitmap Picture', 'icon': 'file-image', 'unit': 'px'},\r\n 'gif': {'format': 'Graphics Interchange Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'jpg': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\r\n 'jpe': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\r\n 'jpeg': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\r\n 'jfif': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\r\n 'png': {'format': 'Portable Network Graphics', 'icon': 'file-image', 'unit': 'px'},\r\n 'tiff': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'tif': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'psd': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'svg': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'jp2': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'epub': {'format': 'Electronic Publication', 'icon': 'file-pdf', 'unit': 'pt'},\r\n 'ico': {'format': 'Windows Icon', 'icon': 'file-image', 'unit': 'px'},\r\n 'webp': {'format': 'Compressed Image', 'icon': 'file-image', 'unit': 'px'},\r\n 'mobi': {'format': 'Mobipocket eBook', 'icon': 'file-pdf', 'unit': 'pt'},\r\n 'tex': {'format': 'LaTeX Source Document', 'icon': 'file-pdf', 'unit': 'pt'},\r\n 'djvu': {'format': 'Multi-Layer Raster Image', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'unknown': {'format': 'This format is not supported', 'icon': 'file'},\r\n };\r\n\r\n public static find(filename: string, isDirectory: boolean) {\r\n if (filename && !isDirectory) {\r\n const strings = filename.split('.');\r\n const name = strings.pop().toLowerCase();\r\n if (typeof FileUtil.map[name] === \"undefined\") {\r\n return strings.length > 0 ? FileUtil.map['unknown'] : FileUtil.map['folder'];\r\n } else {\r\n return FileUtil.map[name];\r\n }\r\n } else {\r\n return FileUtil.map['folder'];\r\n }\r\n }\r\n}\r\n\r\nexport class FileService {\r\n\r\n constructor() {\r\n }\r\n}\r\n","import {Observable, Observer} from \"rxjs\";\r\n\r\nexport class UploadFilesService {\r\n private _uploadsChange: Observable;\r\n private _observer: Observer;\r\n\r\n constructor() {\r\n this._uploadsChange = new Observable(observer =>\r\n this._observer = observer);\r\n }\r\n\r\n get uploadsChange(): Observable {\r\n return this._uploadsChange;\r\n }\r\n\r\n changeFilesList(filesList: FileList) {\r\n this._observer.next(filesList);\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {FileModel, FileUtil} from \"../file.service\";\r\nimport {UploadFilesService} from \"../upload-files.service\";\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\nconst upload_disc = 'Disc';\r\n\r\nconst upload_url = 'URL';\r\n\r\nconst uploads_choices = [{name: upload_disc, icon: 'hdd'}, {name: upload_url, icon: 'link'}];\r\n\r\n@Component({\r\n selector: 'gd-browse-files-modal',\r\n templateUrl: './browse-files-modal.component.html',\r\n styleUrls: ['./browse-files-modal.component.less']\r\n})\r\nexport class BrowseFilesModalComponent implements OnInit {\r\n uploads = uploads_choices;\r\n\r\n @Input() files;\r\n @Input() uploadConfig;\r\n @Output() selectedFileGuid = new EventEmitter();\r\n @Output() selectedDirectory = new EventEmitter();\r\n @Output() urlForUpload = new EventEmitter();\r\n @Output() closing = new EventEmitter();\r\n private selectedFile: FileModel;\r\n showUploadUrl = false;\r\n showUploadFile = false;\r\n\r\n constructor(private _uploadService: UploadFilesService) {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n getSize(size: number) {\r\n const mb = size / 1024 / 1024;\r\n if (mb > 1) {\r\n return (Math.round(mb * 100) / 100) + ' MB';\r\n } else {\r\n const kb = size / 1024;\r\n if (kb > 1) {\r\n return (Math.round(kb * 100) / 100) + ' KB';\r\n }\r\n }\r\n return size + ' Bytes';\r\n }\r\n\r\n getFormatName(file: FileModel) {\r\n return FileUtil.find(file.name, file.directory).format;\r\n }\r\n\r\n getFormatIcon(file: FileModel) {\r\n return FileUtil.find(file.name, file.directory).icon;\r\n }\r\n\r\n choose(file: FileModel) {\r\n this.selectedFile = file;\r\n if (file.directory || file.isDirectory) {\r\n this.selectedDirectory.emit(file.name);\r\n } else {\r\n this.selectedFileGuid.emit(file.guid);\r\n }\r\n }\r\n\r\n goUp() {\r\n if (this.selectedFile) {\r\n let guid = this.selectedFile.guid;\r\n if (guid.length > 0 && guid.indexOf('/') === -1) {\r\n guid = '';\r\n } else {\r\n guid = guid.replace(/\\/[^\\/]+\\/?$/, '');\r\n }\r\n this.selectedDirectory.emit(guid);\r\n }\r\n }\r\n\r\n selectUpload($event: string) {\r\n if (upload_url === $event) {\r\n this.showUploadUrl = true;\r\n } else {\r\n this.showUploadUrl = false;\r\n $(\"#gd-upload-input\").trigger('click');\r\n }\r\n }\r\n\r\n refresh($event) {\r\n\r\n if ($event) {\r\n this.files = null;\r\n this.selectedDirectory.emit('');\r\n this.showUploadUrl = false;\r\n this.selectedFile = null;\r\n } else {\r\n this.closing.emit(true);\r\n }\r\n }\r\n\r\n showSpinner() {\r\n return !this.files;\r\n }\r\n\r\n uploadUrl(url: string) {\r\n if (url) {\r\n this.urlForUpload.emit(url);\r\n this.cleanUpload();\r\n }\r\n }\r\n\r\n handleFileInput(files: FileList) {\r\n this._uploadService.changeFilesList(files);\r\n }\r\n\r\n cleanUpload() {\r\n this.showUploadFile = false;\r\n this.showUploadUrl = false;\r\n }\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class ZoomService {\r\n private _observer: Subject = new Subject();\r\n private readonly _zoomChange: Observable = this._observer.asObservable();\r\n private _zoom: number;\r\n\r\n constructor() {\r\n }\r\n\r\n get zoom(): number {\r\n return this._zoom;\r\n }\r\n\r\n get zoomChange(): Observable {\r\n return this._zoomChange;\r\n }\r\n\r\n changeZoom(zoom: number) {\r\n this._zoom = zoom;\r\n this._observer.next(zoom);\r\n }\r\n\r\n private createZoomOption(val: any, name: string, sep: boolean = false) {\r\n return {value: val, name: name, separator: sep}\r\n }\r\n\r\n zoomOptions(width, height) {\r\n return [this.createZoomOption(25, '25%'),\r\n this.createZoomOption(50, '50%'),\r\n this.createZoomOption(100,'100%'),\r\n this.createZoomOption(150, '150%'),\r\n this.createZoomOption(200, '200%'),\r\n this.createZoomOption(300, '300%'),\r\n this.createZoomOption(0, '', true),\r\n this.createZoomOption(width, 'Fit Width'),\r\n this.createZoomOption(height, 'Fit Height')];\r\n }\r\n}\r\n","import {Observable, Observer} from \"rxjs\";\r\n\r\nexport class PagePreloadService {\r\n private readonly _checkPreload: Observable;\r\n private _observer: Observer;\r\n\r\n constructor() {\r\n this._checkPreload = new Observable(observer =>\r\n this._observer = observer);\r\n }\r\n\r\n get checkPreload(): Observable {\r\n return this._checkPreload;\r\n }\r\n\r\n changeLastPageInView(page: number) {\r\n if(this._observer) {\r\n this._observer.next(page);\r\n }\r\n }\r\n}\r\n","import {BehaviorSubject, Observable} from \"rxjs\";\r\nimport {PagePreloadService} from \"./page-preload.service\";\r\nimport {Injectable} from \"@angular/core\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NavigateService {\r\n private _currentPage = 0;\r\n private _countPages = 0;\r\n private _observer: BehaviorSubject = new BehaviorSubject(null);\r\n private _navigate: Observable = this._observer.asObservable();\r\n\r\n constructor(private _pagePreloadService: PagePreloadService) {\r\n }\r\n\r\n get navigate(): Observable {\r\n return this._navigate;\r\n }\r\n\r\n get countPages(): number {\r\n return this._countPages;\r\n }\r\n\r\n set countPages(value: number) {\r\n this._countPages = value;\r\n }\r\n\r\n get currentPage(): number {\r\n return this._currentPage;\r\n }\r\n\r\n set currentPage(value: number) {\r\n this._currentPage = value;\r\n }\r\n\r\n nextPage() {\r\n if (this._currentPage < this._countPages) {\r\n this._currentPage++;\r\n this.navigateTo(this._currentPage);\r\n }\r\n }\r\n\r\n prevPage() {\r\n if (this._currentPage > 1) {\r\n this._currentPage--;\r\n this.navigateTo(this._currentPage);\r\n }\r\n }\r\n\r\n toLastPage() {\r\n this._currentPage = this._countPages;\r\n this.navigateTo(this._currentPage);\r\n }\r\n\r\n toFirstPage() {\r\n this._currentPage = 1;\r\n this.navigateTo(this._currentPage);\r\n }\r\n\r\n navigateTo(page: number) {\r\n this.currentPage = page;\r\n this._pagePreloadService.changeLastPageInView(page);\r\n this._observer.next(page);\r\n }\r\n}\r\n","import {\r\n AfterViewChecked,\r\n Component,\r\n ElementRef,\r\n Input,\r\n OnInit,\r\n AfterViewInit,\r\n OnChanges,\r\n Output,\r\n EventEmitter\r\n} from '@angular/core';\r\nimport {FileDescription, FileUtil} from \"../file.service\";\r\nimport {ZoomService} from \"../zoom.service\";\r\nimport * as Hammer from 'hammerjs';\r\nimport {WindowService} from '../window.service';\r\nimport * as jquery from 'jquery';\r\nimport { NavigateService } from '../navigate.service';\r\n\r\nconst $ = jquery;\r\n\r\n@Component({\r\n selector: 'gd-document',\r\n templateUrl: './document.component.html',\r\n styleUrls: ['./document.component.less']\r\n})\r\nexport class DocumentComponent implements OnInit, AfterViewChecked, AfterViewInit, OnChanges {\r\n\r\n @Input() mode: boolean;\r\n @Input() preloadPageCount: number;\r\n @Input() file: FileDescription;\r\n @Input() selectedPage: number;\r\n wait = false;\r\n zoom: number;\r\n\r\n docWidth = null;\r\n docHeight = null;\r\n viewportWidth = null;\r\n viewportHeight = null;\r\n scale = null;\r\n lastScale = null;\r\n container = null;\r\n doc = null;\r\n x = 0;\r\n lastX = 0;\r\n y = 0;\r\n lastY = 0;\r\n pinchCenter = null;\r\n pinchCenterOffset = null;\r\n curWidth = 0;\r\n curHeight = 0;\r\n isDesktop: boolean;\r\n\r\n constructor(protected _elementRef: ElementRef,\r\n private _zoomService: ZoomService,\r\n private _windowService: WindowService,\r\n private _navigateService: NavigateService,) {\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n this.zoom = val;\r\n });\r\n\r\n this.isDesktop = _windowService.isDesktop();\r\n\r\n this._navigateService.navigate.subscribe(((\r\n value => {\r\n this.selectedPage = value;\r\n })));\r\n }\r\n\r\n ngOnInit() {\r\n if (this.ifPresentation())\r\n {\r\n this.selectedPage = this._navigateService.currentPage;\r\n }\r\n }\r\n\r\n ngOnChanges() {\r\n }\r\n\r\n ngAfterViewInit() {\r\n // For current iteration we take .panzoom as a document\r\n this.doc = this._elementRef.nativeElement.children.item(0).children.item(0);\r\n // For current iteration we take .gd-document as a container\r\n this.container = this._elementRef.nativeElement;\r\n\r\n this.docWidth = this.doc.clientWidth;\r\n this.docHeight = this.doc.clientHeight;\r\n this.viewportWidth = this.doc.offsetWidth;\r\n\r\n // For cases where we already have zoom defined we should include it\r\n this.scale = (this.viewportWidth / this.docWidth) * this._zoomService.zoom / 100;\r\n\r\n this.lastScale = this.scale;\r\n this.viewportHeight = this.container.offsetHeight;\r\n this.curWidth = this.docWidth * this.scale;\r\n this.curHeight = this.docHeight * this.scale;\r\n\r\n const hammer = new Hammer(this.container);\r\n }\r\n\r\n // TODO: this temporary crutch for Excel files should be documented\r\n ifExcel() {\r\n return FileUtil.find(this.file.guid, false).format === \"Microsoft Excel\";\r\n }\r\n\r\n ifPresentation() {\r\n return FileUtil.find(this.file.guid, false).format === \"Microsoft PowerPoint\";\r\n }\r\n\r\n getDimensionWithUnit(value: number, pageNumber: number) {\r\n return this.ifPresentation() && !this.isVisible(pageNumber) ? 0 : value + (this.mode ? FileUtil.find(this.file.guid, false).unit : 'px');\r\n }\r\n\r\n ifEdge() {\r\n return navigator.userAgent.toLowerCase().indexOf('edge') > -1;\r\n }\r\n\r\n ngAfterViewChecked(): void {\r\n const elementNodeListOf = this._elementRef.nativeElement.querySelectorAll('.gd-wrapper');\r\n const element = elementNodeListOf.item(0);\r\n if (element) {\r\n $(element).trigger('focus');\r\n }\r\n }\r\n\r\n isVisible(pageNumber) {\r\n if (this.ifPresentation()) {\r\n return pageNumber === this.selectedPage ? true : false;\r\n }\r\n else {\r\n return true;\r\n }\r\n }\r\n}\r\n","import {Component, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-page',\r\n templateUrl: './page.component.html',\r\n styleUrls: ['./page.component.less']\r\n})\r\nexport class PageComponent implements OnInit, OnChanges {\r\n\r\n @Input() angle: number;\r\n @Input() width: number;\r\n @Input() height: number;\r\n @Input() number: number;\r\n @Input() data: string;\r\n @Input() isHtml: boolean;\r\n @Input() editable: boolean;\r\n imgData: string;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n const isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\r\n if(isIE && this.number === 0){\r\n this.editable = false;\r\n }\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n // TODO: this is temporary needed to remove unneeded spaces and BOM symbol \r\n // which leads to undesired spaces on the top of the docs pages\r\n this.data = this.data !== null ? this.data.replace(/>\\s+<')\r\n .replace(/\\uFEFF/g,\"\")\r\n .replace(/href=\"\\/viewer/g, 'href=\"http://localhost:8080/viewer')\r\n .replace(/src=\"\\/viewer/g, 'src=\"http://localhost:8080/viewer')\r\n .replace(/data=\"\\/viewer/g, 'data=\"http://localhost:8080/viewer')\r\n : null;\r\n const dataImagePngBase64 = 'data:image/png;base64,';\r\n this.imgData = dataImagePngBase64;\r\n if (!this.isHtml) {\r\n this.imgData += this.data;\r\n }\r\n }\r\n}\r\n","import {Pipe, PipeTransform} from '@angular/core';\r\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\r\n\r\n@Pipe({name: 'safeHtml'})\r\nexport class SanitizeHtmlPipe implements PipeTransform{\r\n constructor(private sanitizer: DomSanitizer) {\r\n }\r\n\r\n transform(html: string): SafeHtml {\r\n return this.sanitizer.bypassSecurityTrustHtml(html);\r\n }\r\n}\r\n\r\n@Pipe({name: 'safeResourceHtml'})\r\nexport class SanitizeResourceHtmlPipe implements PipeTransform{\r\n constructor(private sanitizer: DomSanitizer) {\r\n }\r\n\r\n transform(html: string): SafeHtml {\r\n return this.sanitizer.bypassSecurityTrustResourceUrl(html);\r\n }\r\n}\r\n\r\n@Pipe({name: 'safeStyle'})\r\nexport class SanitizeStylePipe implements PipeTransform{\r\n constructor(private sanitizer: DomSanitizer) {\r\n }\r\n\r\n transform(html: string): SafeHtml {\r\n return this.sanitizer.bypassSecurityTrustStyle(html);\r\n }\r\n}\r\n\r\n@Pipe({name: 'highlight'})\r\nexport class HighlightSearchPipe implements PipeTransform {\r\n\r\n transform(value: string, args: string): any {\r\n if (!args) {\r\n return value;\r\n }\r\n const re = new RegExp(args, 'gi'); //'gi' for case insensitive and can use 'g' if you want the search to be case sensitive.\r\n return value.replace(re, \"$&\");\r\n }\r\n}\r\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\r\nimport {UploadFilesService} from \"../upload-files.service\";\r\n\r\n@Component({\r\n selector: 'gd-upload-file-zone',\r\n templateUrl: './upload-file-zone.component.html',\r\n styleUrls: ['./upload-file-zone.component.less']\r\n})\r\nexport class UploadFileZoneComponent implements OnInit {\r\n\r\n @Output() closeUpload = new EventEmitter();\r\n\r\n constructor(private _uploadService: UploadFilesService) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n handleFileInput(files: FileList) {\r\n this._uploadService.changeFilesList(files);\r\n this.onCloseUpload();\r\n }\r\n\r\n onCloseUpload() {\r\n this.closeUpload.emit(true);\r\n }\r\n\r\n close($event) {\r\n if ($event.target.id === 'gd-dropZone') {\r\n this.onCloseUpload();\r\n }\r\n }\r\n}\r\n","import {Directive, EventEmitter, HostBinding, HostListener, Input, Output} from '@angular/core';\r\nimport {UploadFilesService} from \"./upload-files.service\";\r\n\r\n@Directive({\r\n selector: '[gdDnd]'\r\n})\r\nexport class DndDirective {\r\n\r\n @Output() closing = new EventEmitter();\r\n @Output() opening = new EventEmitter();\r\n @Output() dropped = new EventEmitter();\r\n\r\n @HostBinding('class.active') active = false;\r\n\r\n private dragCounter = 0;\r\n\r\n constructor(protected _uploadFilesService: UploadFilesService) {\r\n }\r\n\r\n @HostListener('dragenter', ['$event'])\r\n public onDragEnter(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.dragCounter++;\r\n this.active = true;\r\n this.opening.emit(true);\r\n }\r\n\r\n @HostListener('dragover', ['$event'])\r\n public onDragOver(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n return false;\r\n }\r\n\r\n @HostListener('dragleave', ['$event'])\r\n public onDragLeave(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.dragCounter--;\r\n if (this.dragCounter === 0) {\r\n this.active = false;\r\n this.closeArea();\r\n }\r\n }\r\n\r\n @HostListener('drop', ['$event'])\r\n public onDrop(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n const files = evt.dataTransfer.files;\r\n if (files.length > 0) {\r\n this.active = false;\r\n this.dropped.emit(true);\r\n this._uploadFilesService.changeFilesList(files);\r\n this.closeArea();\r\n }\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n public onClick(event) {\r\n this.closeArea();\r\n }\r\n\r\n private closeArea() {\r\n this.closing.emit(true);\r\n this.opening.emit(false);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ViewportService {\r\n\r\n constructor() {\r\n }\r\n\r\n checkInViewport(el, zoom: number = 100, leftOffset: number = 0, deltaX: number = 0.5) {\r\n if (!el) {\r\n return false;\r\n }\r\n const x = deltaX;\r\n const y = 0.5;\r\n\r\n const win = $(window);\r\n\r\n const viewport = {\r\n top: win.scrollTop(),\r\n left: win.scrollLeft() + leftOffset,\r\n right: win.scrollLeft() + win.width() - 10,\r\n bottom: win.scrollTop() + win.height()\r\n };\r\n\r\n\r\n if (isNaN(zoom)) {\r\n zoom = 100;\r\n }\r\n\r\n const zoomN = zoom / 100;\r\n const height = $(el).outerHeight() * (zoomN);\r\n const width = $(el).outerWidth() * (zoomN);\r\n\r\n if (!width || !height) {\r\n return false;\r\n }\r\n\r\n const bounds = $(el).offset();\r\n const right = (bounds.left * (zoomN)) + width;\r\n const bottom = (bounds.top * (zoomN)) + height;\r\n\r\n const visible = (!(viewport.right < (bounds.left * (zoomN)) || viewport.left > right || viewport.bottom < (bounds.top * (zoomN)) || viewport.top > bottom));\r\n\r\n if (!visible) {\r\n return false;\r\n }\r\n\r\n const deltas = {\r\n top: parseFloat(Math.min(1, (bottom - viewport.top) / height).toFixed(2)),\r\n bottom: parseFloat(Math.min(1, (viewport.bottom - (bounds.top * (zoomN))) / height).toFixed(2)),\r\n left: parseFloat(Math.min(1, (right - viewport.left) / width).toFixed(2)),\r\n right: parseFloat(Math.min(1, (viewport.right - (bounds.left * (zoomN))) / width).toFixed(2))\r\n };\r\n\r\n return (deltas.left * deltas.right) >= x && (deltas.top * deltas.bottom) >= y;\r\n }\r\n}\r\n","import {\r\n AfterViewInit,\r\n Directive,\r\n ElementRef,\r\n HostListener,\r\n Input,\r\n OnChanges,\r\n OnInit,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport {NavigateService} from \"./navigate.service\";\r\nimport {PagePreloadService} from \"./page-preload.service\";\r\nimport {ZoomService} from \"./zoom.service\";\r\nimport {WindowService} from \"./window.service\";\r\nimport {ViewportService} from \"./viewport.service\";\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\n@Directive({\r\n selector: '[gdScrollable]'\r\n})\r\nexport class ScrollableDirective implements AfterViewInit, OnChanges, OnInit {\r\n\r\n private currentPage: number;\r\n private zoom = 100;\r\n private loadedPagesSet = new Set();\r\n\r\n constructor(private _elementRef: ElementRef,\r\n private _navigateService: NavigateService,\r\n private _pagePreloadService: PagePreloadService,\r\n private _zoomService: ZoomService,\r\n private _windowService: WindowService,\r\n private _viewportService: ViewportService) {\r\n\r\n this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom;\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n this.zoom = val ? val : this.zoom;\r\n this.refresh();\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom;\r\n this._navigateService.navigate.subscribe((value => {\r\n this.currentPage = value;\r\n this.scrollToPage(value);\r\n }));\r\n this.refresh();\r\n }\r\n\r\n @HostListener('scroll') scrolling() {\r\n this.refresh();\r\n }\r\n\r\n @HostListener('window:resize') resizing() {\r\n this.refresh();\r\n }\r\n\r\n scrollToPage(pageNumber: number) {\r\n const el = this._elementRef.nativeElement;\r\n const page = this.getPage(pageNumber);\r\n const prev = pageNumber > 0 ? this.getPage(pageNumber - 1) : null;\r\n const isSameTop = (prev && $(prev).offset().top === $(page).offset().top);\r\n if (this._viewportService.checkInViewport(page, this.zoom) && isSameTop) {\r\n return;\r\n }\r\n const pagesHeight = this.calculateOffset(pageNumber);\r\n const options = {\r\n left: 0,\r\n top: pagesHeight\r\n };\r\n if(el){\r\n // using polyfill\r\n el.scroll(options);\r\n }\r\n }\r\n\r\n private getChildren() {\r\n const el = this._elementRef ? this._elementRef.nativeElement : null;\r\n if (el) {\r\n // here and in the similar line below we getting the document pages\r\n return el.children.item(0).children.item(0).children;\r\n }\r\n }\r\n\r\n private getPage(pageNumber: number) {\r\n const el = this._elementRef ? this._elementRef.nativeElement : null;\r\n if (el) {\r\n return el.children.item(0).children.item(0).children.item(pageNumber - 1);\r\n }\r\n }\r\n\r\n private calculateOffset(pageNumber: number) {\r\n const count = this._windowService.isFirefox() ? 1 : this.countPagesOnWidth();\r\n const margin = this._windowService.isDesktop() ? 40 : 10;\r\n let pagesHeight = 0;\r\n for (let i = 1; i < pageNumber / count; i++) {\r\n const item = this.getPage(i);\r\n const clientHeight = item ? item.clientHeight : 0;\r\n pagesHeight += clientHeight > 0 ? clientHeight * this.getZoom() + margin : 0;\r\n }\r\n return pagesHeight;\r\n }\r\n\r\n private countPagesOnWidth() {\r\n const pageEl = this.getPage(1);\r\n const offset = 150;\r\n const count = Math.floor((this.getWidth() - offset) / (pageEl.getBoundingClientRect().width * this.getZoom()));\r\n return count === 0 ? 1 : count;\r\n }\r\n\r\n refresh() {\r\n let page;\r\n let currentPageSet = false;\r\n const pageElem = this.getPage(this.currentPage);\r\n const currentPageRect = this.currentPage && pageElem ? pageElem.getBoundingClientRect() : null;\r\n for (page = 1; page < this.getChildren().length + 1; page++) {\r\n const element = this.getPage(page);\r\n if (this._viewportService.checkInViewport(element, this.zoom)) {\r\n if (!currentPageSet) {\r\n if (!this.currentPage || !pageElem || (this.currentPage && currentPageRect && element.getBoundingClientRect().top !== currentPageRect.top)) {\r\n this.currentPage = page;\r\n if (this._navigateService.currentPage === 0) {\r\n this._navigateService.currentPage = page;\r\n }\r\n }\r\n currentPageSet = true;\r\n }\r\n if (!this.loadedPagesSet.has(page)) {\r\n this._pagePreloadService.changeLastPageInView(page);\r\n this.loadedPagesSet.add(page);\r\n }\r\n }\r\n }\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.refresh();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom;\r\n }\r\n\r\n\r\n private getWidth() {\r\n return this._elementRef ? this._elementRef.nativeElement.offsetWidth : window.innerWidth;\r\n }\r\n\r\n private getZoom() {\r\n return this.zoom / 100;\r\n }\r\n}\r\n","import {\r\n Directive,\r\n EventEmitter,\r\n HostListener,\r\n Output} from '@angular/core';\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\n@Directive({\r\n selector: '[gdMouseWheel]'\r\n})\r\nexport class MouseWheelDirective {\r\n @Output() mouseWheelUp = new EventEmitter();\r\n @Output() mouseWheelDown = new EventEmitter();\r\n\r\n @HostListener('mousewheel', ['$event']) onMouseWheelChrome(event: any) {\r\n this.mouseWheelFunc(event);\r\n }\r\n\r\n @HostListener('DOMMouseScroll', ['$event']) onMouseWheelFirefox(event: any) {\r\n this.mouseWheelFunc(event);\r\n }\r\n\r\n @HostListener('onmousewheel', ['$event']) onMouseWheelIE(event: any) {\r\n this.mouseWheelFunc(event);\r\n }\r\n\r\n mouseWheelFunc(event: any) {\r\n event = window.event ;\r\n const delta = Math.max(-1, Math.min(1, (event.wheelDelta || -event.detail)));\r\n if(delta > 0) {\r\n this.mouseWheelUp.emit(event);\r\n } else if(delta < 0) {\r\n this.mouseWheelDown.emit(event);\r\n }\r\n }\r\n}\r\n","import {AfterViewInit, Directive, HostBinding, Input, OnDestroy, OnInit, ElementRef, OnChanges} from '@angular/core';\r\nimport {ZoomService} from \"./zoom.service\";\r\nimport {FileUtil} from \"./file.service\";\r\nimport { WindowService } from './window.service';\r\n\r\n@Directive({\r\n selector: '[gdZoom]'\r\n})\r\nexport class ZoomDirective implements OnInit, OnDestroy, AfterViewInit, OnChanges {\r\n\r\n @Input() zoomActive = true;\r\n @Input() file;\r\n\r\n @HostBinding('style.zoom') zoomInt: number;\r\n @HostBinding('style.transform') transform: string;\r\n @HostBinding('style.transform-origin') transformOrigin: string;\r\n @HostBinding('style.width') width: string;\r\n @HostBinding('style.height') height: string;\r\n @HostBinding('style.min-width') minWidth: string;\r\n el: ElementRef;\r\n\r\n constructor(private _zoomService: ZoomService, private _windowService: WindowService, el: ElementRef) {\r\n this.el = el;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n }\r\n\r\n ngOnChanges(): void {\r\n this.setStyles(this._zoomService.zoom);\r\n this.resizePages(this._zoomService.zoom);\r\n }\r\n\r\n ngOnInit(): void {\r\n if (! this.zoomActive) {\r\n return;\r\n }\r\n\r\n this.setStyles(this._zoomService.zoom);\r\n this._zoomService.zoomChange.subscribe((zoom) => {\r\n this.setStyles(zoom);\r\n this.resizePages(zoom);\r\n });\r\n }\r\n\r\n private setStyles(zoom) {\r\n if (! this.zoomActive) {\r\n return;\r\n }\r\n\r\n const zoomInt = zoom === 100 ? 1 : zoom / 100;\r\n \r\n if (this._windowService.isEdge()) {\r\n this.zoomInt = zoomInt;\r\n }\r\n else {\r\n this.zoomInt = null;\r\n }\r\n \r\n if (!this._windowService.isEdge()) {\r\n this.transform = 'scale(' + zoomInt + ')';\r\n this.transformOrigin = 'top left';\r\n }\r\n else {\r\n this.transform = \"\";\r\n this.transformOrigin = \"\";\r\n }\r\n\r\n let maxWidth = 0;\r\n this.file.pages.forEach(page => {\r\n {\r\n if (page.width > maxWidth){\r\n maxWidth = page.width;\r\n }\r\n }\r\n });\r\n\r\n // Images and Excel-related files receiving dimensions in px from server\r\n this.minWidth = maxWidth + FileUtil.find(this.file.guid, false).unit;\r\n }\r\n\r\n private getScrollWidth(elm){\r\n return elm.offsetWidth - elm.clientWidth;\r\n }\r\n\r\n private getScrollHeight(elm){\r\n return elm.offsetHeight - elm.clientHeight;\r\n }\r\n\r\n private resizePages(zoom){\r\n const zoomInt = zoom === 100 ? 1 : zoom / 100;\r\n\r\n const viewPortWidth = this.el.nativeElement.parentElement.offsetWidth;\r\n const viewPortHeight = this.el.nativeElement.parentElement.offsetHeight;\r\n const scrollWidth = this.getScrollWidth(this.el.nativeElement.parentElement);\r\n const scrollHeight = this.getScrollHeight(this.el.nativeElement.parentElement);\r\n this.width = (viewPortWidth/zoomInt - scrollWidth/zoomInt) + 'px';\r\n this.height = (viewPortHeight/zoomInt - scrollHeight/zoomInt) + 'px';\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.setStyles(this._zoomService.zoom);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Observable, Subject} from \"rxjs\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OnCloseService {\r\n private _observer: Subject = new Subject();\r\n private readonly _onClose: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get onClose() {\r\n return this._onClose;\r\n }\r\n\r\n close(close: boolean) {\r\n this._observer.next(close)\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\r\nimport {OnCloseService} from \"../on-close.service\";\r\n\r\nexport interface Option {\r\n name: string;\r\n value: any;\r\n separator: boolean;\r\n}\r\n\r\n@Component({\r\n selector: 'gd-select',\r\n templateUrl: './select.component.html',\r\n styleUrls: ['./select.component.less']\r\n})\r\nexport class SelectComponent {\r\n\r\n @Input() options: Option[];\r\n @Input() disabled = false;\r\n @Input() showSelected: Option;\r\n @Output() selected: EventEmitter = new EventEmitter();\r\n @Input() isOpen = false;\r\n @Input() icon: string;\r\n\r\n constructor(protected _onCloseService: OnCloseService) {\r\n _onCloseService.onClose.subscribe(() => {\r\n this.close();\r\n });\r\n }\r\n\r\n open() {\r\n if (!this.disabled) {\r\n this.isOpen = true;\r\n }\r\n }\r\n\r\n close() {\r\n this.isOpen = false;\r\n }\r\n\r\n onClickOutside(event : Event){\r\n this.close();\r\n }\r\n\r\n toggle($event) {\r\n // TODO: following lines were uncommented due to needness in signature app\r\n $event.preventDefault();\r\n $event.stopPropagation();\r\n if (!this.disabled) {\r\n this.isOpen = !this.isOpen;\r\n }\r\n }\r\n\r\n select($event, value: Option) {\r\n $event.preventDefault();\r\n $event.stopPropagation();\r\n this.selected.emit(value);\r\n this.close();\r\n }\r\n}\r\n","import {Directive, HostBinding, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[gdDisabledCursor]'\r\n})\r\nexport class DisabledCursorDirective implements OnInit, OnChanges {\r\n\r\n @Input() dis: boolean;\r\n\r\n constructor() {\r\n }\r\n\r\n @HostBinding('class.inactive') cursor: boolean;\r\n\r\n private updateCursor() {\r\n this.cursor = this.dis ? true : false;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.updateCursor();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.updateCursor()\r\n }\r\n}\r\n","import {Directive, HostBinding, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[gdRotation]'\r\n})\r\nexport class RotationDirective implements OnInit, OnChanges {\r\n\r\n @Input() angle: number;\r\n @Input() isHtmlMode: boolean;\r\n @Input() width: number;\r\n @Input() height: number;\r\n @Input() withMargin = true;\r\n\r\n @HostBinding('style.animation') animation: string;\r\n @HostBinding('style.transition-property') transition: string;\r\n @HostBinding('style.transform') transform: string;\r\n\r\n @HostBinding('style.margin') margin: string;\r\n\r\n constructor() {\r\n }\r\n\r\n private updateCursor() {\r\n if (typeof this.angle === \"string\"){\r\n this.angle = parseInt(this.angle, 10);\r\n }\r\n\r\n if (this.angle) {\r\n this.animation = 'none';\r\n this.transition = 'none';\r\n this.transform = 'rotate(' + this.angle + 'deg)';\r\n } else if (this.angle === 0 && this.animation) {\r\n this.animation = null;\r\n this.transition = null;\r\n this.transform = null;\r\n }\r\n\r\n if (this.withMargin) {\r\n if (this.angle === 90 || this.angle === 270 || this.angle === -90 || this.angle === -270) {\r\n if (this.isHtmlMode) {\r\n if (this.isLandscape()) {\r\n this.margin = '164px 254px';\r\n } else {\r\n this.margin = '-111px 254px';\r\n }\r\n } else {\r\n if (this.isLandscape()) {\r\n this.margin = '129px 100px -79px';\r\n } else {\r\n this.margin = '-72px 100px -79px';\r\n }\r\n }\r\n } else if (this.angle === -180 || this.angle === 180) {\r\n this.margin = '280px';\r\n } else {\r\n this.margin = null;\r\n }\r\n }\r\n\r\n }\r\n\r\n isLandscape() {\r\n return this.width > this.height;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.updateCursor();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.updateCursor()\r\n }\r\n\r\n}\r\n","import {Component, Input, Output, EventEmitter, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-init-state',\r\n templateUrl: './init-state.component.html',\r\n styleUrls: ['./init-state.component.less']\r\n})\r\nexport class InitStateComponent implements OnInit {\r\n @Input() icon: string;\r\n @Input() text: string;\r\n @Output() fileDropped = new EventEmitter();\r\n showUploadFile = false;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n dropped($event) {\r\n if ($event) {\r\n this.fileDropped.emit($event);\r\n this.showUploadFile = false;\r\n }\r\n }\r\n}\r\n","import {Observable, Observer} from \"rxjs\";\r\nimport {PageModel} from \"./file.service\";\r\n\r\nexport class RenderPrintService {\r\n private _render: Observable;\r\n private _observer: Observer;\r\n private _renderBlob: Observable;\r\n private _observerBlob: Observer;\r\n\r\n constructor() {\r\n this._render = new Observable(observer =>\r\n this._observer = observer);\r\n this._renderBlob = new Observable(observer =>\r\n this._observerBlob = observer);\r\n }\r\n\r\n get renderPrint(): Observable {\r\n return this._render;\r\n }\r\n\r\n changePages(pages: PageModel[]) {\r\n this._observer.next(pages);\r\n }\r\n\r\n get renderPrintBlob(): Observable {\r\n return this._renderBlob;\r\n }\r\n\r\n changeBlob(file: Blob) {\r\n this._observerBlob.next(file);\r\n }\r\n}\r\n","import {Directive, Input} from '@angular/core';\r\nimport {PageModel} from \"./file.service\";\r\nimport {RenderPrintService} from \"./render-print.service\";\r\n\r\n@Directive({\r\n selector: '[gdRenderPrint]'\r\n})\r\nexport class RenderPrintDirective {\r\n @Input() htmlMode: boolean;\r\n\r\n constructor(private _renderService: RenderPrintService) {\r\n _renderService.renderPrint.subscribe(pages => {\r\n this.renderPrint(pages);\r\n });\r\n _renderService.renderPrintBlob.subscribe(file => {\r\n this.renderPrintBlob(file);\r\n });\r\n }\r\n\r\n private renderPrint(pages: PageModel[]) {\r\n let pagesHtml = '';\r\n\r\n for (const page of pages) {\r\n pagesHtml += '
' +\r\n '
' +\r\n '
';\r\n }\r\n\r\n this.openWindow(pagesHtml, pages[0].width, pages[0].height);\r\n }\r\n\r\n private openWindow(pagesHtml, width, height) {\r\n const a4Height = 842;\r\n const a4Width = 595;\r\n let imageA4Adjusted = '';\r\n if(width > a4Width && height > a4Height){\r\n const zoom = Math.round(height / a4Height) / 100;\r\n imageA4Adjusted = '.gd-page img { width: 100%; margin: 0; padding: 0;}';\r\n if(navigator.userAgent.toLowerCase().indexOf('firefox') > -1){\r\n imageA4Adjusted = '.gd-page img { transform: scale(' + zoom + ');}';\r\n }\r\n }\r\n let cssPrint = '';\r\n\r\n const windowObject = window.open('', \"PrintWindow\", \"width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes\");\r\n windowObject.focus();\r\n windowObject.document.writeln(cssPrint);\r\n windowObject.document.writeln(pagesHtml);\r\n windowObject.document.close();\r\n setTimeout(() => {\r\n windowObject.focus();\r\n windowObject.print();\r\n windowObject.close();\r\n }, 100);\r\n }\r\n\r\n private renderPrintBlob(file: Blob) {\r\n const fileURL = URL.createObjectURL(file);\r\n const windowObject = window.open(fileURL, \"PrintWindow\", \"width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes\");\r\n windowObject.focus();\r\n windowObject.print();\r\n windowObject.close();\r\n }\r\n}\r\n","import {BehaviorSubject, Observable} from \"rxjs\";\r\n\r\nexport class ExceptionMessageService {\r\n private _observer: BehaviorSubject = new BehaviorSubject('Server is not available');\r\n private _messageChange: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get messageChange(): Observable {\r\n return this._messageChange;\r\n }\r\n\r\n changeMessage(message: string) {\r\n this._observer.next(message);\r\n }\r\n}\r\n","import {Component, OnInit} from '@angular/core';\r\nimport {ExceptionMessageService} from \"../exception-message.service\";\r\n\r\n@Component({\r\n selector: 'gd-error-modal',\r\n templateUrl: './error-modal.component.html',\r\n styleUrls: ['./error-modal.component.less']\r\n})\r\nexport class ErrorModalComponent implements OnInit {\r\n\r\n message: string;\r\n\r\n constructor(messageService: ExceptionMessageService) {\r\n messageService.messageChange.subscribe(message => this.message = message);\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class PasswordService {\r\n private _observer: Subject = new Subject();\r\n private readonly _passChange: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get passChange(): Observable {\r\n return this._passChange;\r\n }\r\n\r\n setPassword(pass: string) {\r\n this._observer.next(pass);\r\n }\r\n}\r\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\r\nimport {ExceptionMessageService} from \"../exception-message.service\";\r\nimport {PasswordService} from \"../password.service\";\r\nimport * as jquery from \"jquery\";\r\n\r\nconst $ = jquery;\r\n\r\n@Component({\r\n selector: 'gd-password-required',\r\n templateUrl: './password-required.component.html',\r\n styleUrls: ['./password-required.component.less']\r\n})\r\nexport class PasswordRequiredComponent implements OnInit {\r\n message: string;\r\n @Output() cancelEvent = new EventEmitter();\r\n\r\n constructor(messageService: ExceptionMessageService, private _passwordService: PasswordService) {\r\n messageService.messageChange.subscribe(message => this.message = message);\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n setPassword(value: string) {\r\n this._passwordService.setPassword(value);\r\n }\r\n\r\n onCloseOpen($event: boolean) {\r\n if ($event) {\r\n setTimeout(() => {\r\n const element = $(\"#password\");\r\n if (element) {\r\n element.focus();\r\n }\r\n }, 100);\r\n } else {\r\n $(\"#password\").val(\"\");\r\n }\r\n }\r\n\r\n cancel($event: boolean) {\r\n $(\"#password\").val(\"\");\r\n this.cancelEvent.emit(true);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from \"@angular/common/http\";\r\nimport {Observable, throwError} from \"rxjs\";\r\nimport {catchError, map} from \"rxjs/operators\";\r\nimport {ExceptionMessageService} from \"./exception-message.service\";\r\nimport {HttpError} from \"./file.service\";\r\nimport {CommonModals, ModalService} from \"./modal.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ErrorInterceptorService implements HttpInterceptor {\r\n\r\n constructor(private _modalService: ModalService, private _messageService: ExceptionMessageService) {\r\n }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n const logFormat = 'background: maroon; color: white';\r\n\r\n return next.handle(req)\r\n .pipe(map(data => {\r\n return data;\r\n }),\r\n catchError((exception: HttpEvent) => {\r\n if (exception instanceof HttpErrorResponse) {\r\n switch (exception.status) {\r\n\r\n case HttpError.BadRequest:\r\n console.error('%c Bad Request 400', logFormat);\r\n break;\r\n case HttpError.Unauthorized:\r\n console.error('%c Unauthorized 401', logFormat);\r\n break;\r\n case HttpError.NotFound:\r\n console.error('%c Not Found 404', logFormat);\r\n break;\r\n case HttpError.TimeOut:\r\n console.error('%c TimeOut 408', logFormat);\r\n break;\r\n case HttpError.InternalServerError:\r\n console.error('%c big bad 500', logFormat);\r\n this._messageService.changeMessage(exception.error.message);\r\n this._modalService.open(CommonModals.ErrorMessage);\r\n break;\r\n\r\n case HttpError.Forbidden:\r\n console.error('%c Forbidden 403', logFormat);\r\n this._messageService.changeMessage(exception.error.message);\r\n this._modalService.open(CommonModals.PasswordRequired);\r\n break;\r\n }\r\n }\r\n return throwError(exception);\r\n }));\r\n }\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class SearchService {\r\n private _observer: Subject = new Subject();\r\n private readonly _textChange: Observable = this._observer.asObservable();\r\n\r\n private _observerCurrent: Subject = new Subject();\r\n private readonly _currentChange: Observable = this._observerCurrent.asObservable();\r\n\r\n private _observerTotal: Subject = new Subject();\r\n private readonly _totalChange: Observable = this._observerTotal.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get textChange(): Observable {\r\n return this._textChange;\r\n }\r\n\r\n setText(text: string) {\r\n this._observer.next(text);\r\n }\r\n\r\n get currentChange(): Observable {\r\n return this._currentChange;\r\n }\r\n\r\n get totalChange(): Observable {\r\n return this._totalChange;\r\n }\r\n\r\n setCurrent(current: number) {\r\n this._observerCurrent.next(current);\r\n }\r\n\r\n setTotal(total: number) {\r\n this._observerTotal.next(total);\r\n }\r\n}\r\n","import {AfterViewInit, Component, ElementRef, EventEmitter, OnInit, Output, ViewChild} from '@angular/core';\r\nimport {SearchService} from \"../search.service\";\r\n\r\n@Component({\r\n selector: 'gd-search',\r\n templateUrl: './search.component.html',\r\n styleUrls: ['./search.component.less']\r\n})\r\nexport class SearchComponent implements OnInit, AfterViewInit {\r\n\r\n @Output() hidePanel = new EventEmitter(false);\r\n\r\n current = 0;\r\n total = 0;\r\n\r\n @ViewChild('text',{\r\n static : true\r\n }) textElement: ElementRef;\r\n\r\n constructor(private _searchService: SearchService) {\r\n _searchService.totalChange.subscribe((total: number) => {\r\n this.total = total;\r\n if (total !== 0) {\r\n this.current = 1;\r\n } else {\r\n this.current = 0;\r\n }\r\n this._searchService.setCurrent(this.current);\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n setText(text: string) {\r\n this._searchService.setText(text);\r\n }\r\n\r\n hide() {\r\n this.setText('');\r\n this.hidePanel.emit(true);\r\n }\r\n\r\n prev() {\r\n if (this.current > 1) {\r\n this.current--;\r\n this._searchService.setCurrent(this.current);\r\n }\r\n }\r\n\r\n next() {\r\n if (this.current < this.total) {\r\n this.current++;\r\n this._searchService.setCurrent(this.current);\r\n }\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.textElement.nativeElement.focus();\r\n }\r\n}\r\n","import {Directive, ElementRef} from '@angular/core';\r\nimport {SearchService} from \"./search.service\";\r\nimport {HighlightSearchPipe} from \"./pipes\";\r\nimport {ZoomService} from \"./zoom.service\";\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\n@Directive({\r\n selector: '[gdSearchable]'\r\n})\r\nexport class SearchableDirective {\r\n\r\n text: string;\r\n current = 0;\r\n total = 0;\r\n private zoom = 100;\r\n\r\n constructor(private _elementRef: ElementRef,\r\n private _searchService: SearchService,\r\n private _highlight: HighlightSearchPipe,\r\n private _zoomService: ZoomService) {\r\n _searchService.currentChange.subscribe((current: number) => {\r\n this.current = current;\r\n if (this.current !== 0) {\r\n this.moveToCurrent();\r\n }\r\n });\r\n\r\n _searchService.textChange.subscribe((text: string) => {\r\n this.text = text;\r\n this.highlightSearch();\r\n });\r\n\r\n this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom;\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n this.zoom = val ? val : this.zoom;\r\n });\r\n }\r\n\r\n private highlightSearch() {\r\n const el = this._elementRef ? this._elementRef.nativeElement : null;\r\n if (el) {\r\n this.cleanHighlight(el);\r\n if (this.text) {\r\n this.highlightEl(el);\r\n const count = el.querySelectorAll('.gd-highlight').length;\r\n this.total = count;\r\n } else {\r\n this.total = 0;\r\n }\r\n this._searchService.setTotal(this.total);\r\n }\r\n }\r\n\r\n private moveToCurrent() {\r\n if (this.current === 0) {\r\n return;\r\n }\r\n const currentZoom = this.getZoom();\r\n const el = this._elementRef ? this._elementRef.nativeElement : null;\r\n if (el) {\r\n el.querySelectorAll('.gd-highlight-select').forEach(function (value) {\r\n $(value).removeClass('gd-highlight-select');\r\n });\r\n const currentEl = el.querySelectorAll('.gd-highlight')[this.current - 1];\r\n $(currentEl).addClass('gd-highlight-select');\r\n if (currentEl) {\r\n const options = {\r\n left: 0,\r\n top: ($(currentEl).offset().top) + el.parentElement.parentElement.scrollTop - 150,\r\n };\r\n // using polyfill\r\n el.parentElement.parentElement.scroll(options);\r\n }\r\n }\r\n }\r\n\r\n private highlightEl(el: Element) {\r\n const textNodes = $(el).find('*').contents().filter(function () {\r\n const nodeName = this.parentElement.nodeName.toLowerCase();\r\n const checkClass = (this).classList ? !(this).classList.contains('gd-highlight') : true;\r\n return this.nodeType === 3 &&\r\n this.textContent.trim().length !== 0 &&\r\n nodeName !== 'style' &&\r\n nodeName !== 'title' &&\r\n nodeName !== 'body' &&\r\n nodeName !== 'script' &&\r\n checkClass;\r\n });\r\n const text = this.text;\r\n const highlight = this._highlight;\r\n textNodes.each(function () {\r\n const $this = $(this);\r\n let content = $this.text();\r\n content = highlight.transform(content, text);\r\n $this.replaceWith(content);\r\n });\r\n el.normalize();\r\n }\r\n\r\n private cleanHighlight(el: HTMLElement) {\r\n const nodeListOf = el.querySelectorAll('.gd-highlight');\r\n for (let i = 0; i < nodeListOf.length; i++) {\r\n const element = nodeListOf.item(i);\r\n element.replaceWith((element).innerText);\r\n }\r\n el.normalize();\r\n }\r\n\r\n private getZoom() {\r\n return this.zoom / 100;\r\n }\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-tabbed-toolbars',\r\n templateUrl: './tabbed-toolbars.component.html',\r\n styleUrls: ['./tabbed-toolbars.component.less']\r\n})\r\nexport class TabbedToolbarsComponent implements OnInit {\r\n @Input() logo: string;\r\n @Input() icon: string;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class TabActivatorService {\r\n private _observer: Subject = new Subject();\r\n private readonly _activeTabChange: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get activeTabChange(): Observable {\r\n return this._activeTabChange;\r\n }\r\n\r\n changeActiveTab(tabId: string) {\r\n this._observer.next(tabId);\r\n }\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\nimport {TabActivatorService} from \"../tab-activator.service\";\r\n\r\n@Component({\r\n selector: 'gd-tab',\r\n templateUrl: './tab.component.html',\r\n styleUrls: ['./tab.component.less']\r\n})\r\nexport class TabComponent implements OnInit {\r\n @Input() id: string;\r\n @Input() tabTitle: string;\r\n @Input() icon: string;\r\n @Input() disabled = false;\r\n @Input() active = false;\r\n @Input() content = true;\r\n\r\n constructor(private _tabActivatorService: TabActivatorService) {\r\n this._tabActivatorService.activeTabChange.subscribe((tabId: string) => {\r\n this.activation(tabId);\r\n });\r\n }\r\n\r\n private activation(tabId: string) {\r\n if (this.id === tabId) {\r\n this.active = true;\r\n } else {\r\n this.active = false;\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n selectTab() {\r\n if (this.disabled) {\r\n return;\r\n }\r\n this._tabActivatorService.changeActiveTab(this.id);\r\n }\r\n}\r\n","import {Component} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-tabs',\r\n templateUrl: './tabs.component.html',\r\n styleUrls: ['./tabs.component.less']\r\n})\r\nexport class TabsComponent {\r\n constructor() {\r\n }\r\n\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class Formatting {\r\n constructor(fontSize: number, color: string, bgColor: string, bold: boolean, italic: boolean, underline: boolean, font: string, strikeout: boolean, align: string, list: string) {\r\n this.fontSize = fontSize;\r\n this.color = color;\r\n this.bgColor = bgColor;\r\n this.bold = bold;\r\n this.italic = italic;\r\n this.underline = underline;\r\n this.font = font;\r\n this.strikeout = strikeout;\r\n this.align = align;\r\n this.list = list;\r\n }\r\n\r\n bold: boolean;\r\n italic: boolean;\r\n underline: boolean;\r\n fontSize: number;\r\n color: string;\r\n bgColor: string;\r\n font: string;\r\n strikeout: boolean;\r\n align: string;\r\n list: string;\r\n\r\n public static default(): Formatting {\r\n return new Formatting(10, '#000000', '#FFFFFF', false, false, false, 'Arial', false, \"\", \"\");\r\n }\r\n}\r\n\r\nexport class FormattingService {\r\n private _observerBold: Subject = new Subject();\r\n private readonly _formatBoldChange: Observable = this._observerBold.asObservable();\r\n private _observerUnderline: Subject = new Subject();\r\n private readonly _formatUnderlineChange: Observable = this._observerUnderline.asObservable();\r\n private _observerUndo: Subject = new Subject();\r\n private readonly _undo: Observable = this._observerUndo.asObservable();\r\n private _observerRedo: Subject = new Subject();\r\n private readonly _redo: Observable = this._observerRedo.asObservable();\r\n private _observerItalic: Subject = new Subject();\r\n private readonly _formatItalicChange: Observable = this._observerItalic.asObservable();\r\n private _observerColor: Subject = new Subject();\r\n private readonly _formatColorChange: Observable = this._observerColor.asObservable();\r\n private _observerBgColor: Subject = new Subject();\r\n private readonly _formatBgColorChange: Observable = this._observerBgColor.asObservable();\r\n private _observerFontSize: Subject = new Subject();\r\n private readonly _formatFontSizeChange: Observable = this._observerFontSize.asObservable();\r\n private _observerFont: Subject = new Subject();\r\n private readonly _formatFontChange: Observable = this._observerFont.asObservable();\r\n private _observerStrikeout: Subject = new Subject();\r\n private readonly _formatStrikeoutChange: Observable = this._observerStrikeout.asObservable();\r\n private _observerAlign: Subject = new Subject();\r\n private readonly _formatAlignChange: Observable = this._observerAlign.asObservable();\r\n private _observerList: Subject = new Subject();\r\n private readonly _formatListChange: Observable = this._observerList.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get formatBoldChange() {\r\n return this._formatBoldChange;\r\n }\r\n\r\n get formatUnderlineChange() {\r\n return this._formatUnderlineChange;\r\n }\r\n\r\n get formatColorChange() {\r\n return this._formatColorChange;\r\n }\r\n\r\n get formatBgColorChange() {\r\n return this._formatBgColorChange;\r\n }\r\n\r\n get formatFontSizeChange() {\r\n return this._formatFontSizeChange;\r\n }\r\n\r\n get formatFontChange() {\r\n return this._formatFontChange;\r\n }\r\n\r\n get undo() {\r\n return this._undo;\r\n }\r\n\r\n get redo() {\r\n return this._redo;\r\n }\r\n\r\n get formatItalicChange() {\r\n return this._formatItalicChange;\r\n }\r\n\r\n get formatStrikeoutChange() {\r\n return this._formatStrikeoutChange;\r\n }\r\n\r\n get formatAlignChange() {\r\n return this._formatAlignChange;\r\n }\r\n\r\n get formatListChange() {\r\n return this._formatListChange;\r\n }\r\n\r\n static createFontSizeOption(val: number) {\r\n return {value: val, name: val + 'px', separator: false}\r\n }\r\n\r\n static getFontSizeOptions() {\r\n return [\r\n FormattingService.createFontSizeOption(8),\r\n FormattingService.createFontSizeOption(10),\r\n FormattingService.createFontSizeOption(12),\r\n FormattingService.createFontSizeOption(14),\r\n FormattingService.createFontSizeOption(16),\r\n FormattingService.createFontSizeOption(18),\r\n FormattingService.createFontSizeOption(20),\r\n FormattingService.createFontSizeOption(22),\r\n FormattingService.createFontSizeOption(24),\r\n ];\r\n }\r\n\r\n static createFontOption(val: string) {\r\n return {value: val, name: val, separator: false}\r\n }\r\n\r\n static getFontOptions() {\r\n const fonts = [\"Arial\", \"Calibri\", \"Century Gothic\", \"Comic Sans\", \"Consolas\", \"Courier\", \"Dejavu Sans\", \"Dejavu Serif\", \"Georgia\", \"Gill Sans\", \"Helvetica\", \"Impact\", \"Lucida Sans\",\r\n \"Myriad Pro\", \"Open Sans\", \"Palatino\", \"Tahoma\", \"Times New Roman\", \"Trebuchet\"];\r\n const fontOptions = [];\r\n fonts.forEach(font => {\r\n fontOptions.push(this.createFontOption(font));\r\n })\r\n\r\n return fontOptions;\r\n }\r\n\r\n changeFormatFontSize($event: number) {\r\n this._observerFontSize.next($event);\r\n }\r\n\r\n changeFormatBold(bold: boolean) {\r\n this._observerBold.next(bold);\r\n }\r\n\r\n changeFormatUnderline(underline: boolean) {\r\n this._observerUnderline.next(underline);\r\n }\r\n\r\n Undo() {\r\n this._observerUndo.next();\r\n }\r\n\r\n Redo() {\r\n this._observerRedo.next();\r\n }\r\n\r\n changeFormatItalic(italic: boolean) {\r\n this._observerItalic.next(italic);\r\n }\r\n\r\n changeFormatColor(color: string) {\r\n this._observerColor.next(color);\r\n }\r\n\r\n changeFormatBgColor(bgcolor: string) {\r\n this._observerBgColor.next(bgcolor);\r\n }\r\n\r\n changeFormatFont(font: string) {\r\n this._observerFont.next(font);\r\n }\r\n\r\n changeFormatStrikeout(strikeout: boolean) {\r\n this._observerStrikeout.next(strikeout);\r\n }\r\n\r\n changeFormatAlign(align: string) {\r\n this._observerAlign.next(align);\r\n }\r\n\r\n changeFormatList(list: string) {\r\n this._observerList.next(list);\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\n\r\nconst DEFAULT_COLORS = [\r\n '#000000', '#434343', '#666666', '#999999', '#B7B7B7', '#CCCCCC', '#D9D9D9', '#EFEFEF', '#F3F3F3', '#FFFFFF',\r\n '#980000', '#FF0000', '#FF9900', '#FFFF00', '#00FF00', '#00FFFF', '#4986E8', '#0000FF', '#9900FF', '#FF00FF',\r\n '#E6B8AF', '#F4CCCC', '#FDE5CD', '#FFF2CC', '#D9EAD3', '#D0E0E2', '#C9DAF8', '#CFE2F3', '#D9D2E9', '#EAD1DC',\r\n '#DD7E6B', '#EA9899', '#F9CB9C', '#FFE59A', '#B7D7A8', '#A2C4C9', '#A4C2F4', '#9FC5E8', '#B4A7D7', '#D5A6BD',\r\n '#CC4125', '#E06666', '#F6B26B', '#FFD966', '#92C47D', '#75A5AF', '#6D9EEB', '#6FA9DB', '#8E7CC3', '#C27BA0',\r\n '#A61C00', '#CC0000', '#E69138', '#F2C131', '#6AA84F', '#45818E', '#3C78D8', '#3C85C6', '#674EA7', '#A64D79',\r\n '#85200B', '#990000', '#B45F05', '#BF9000', '#37761D', '#144F5C', '#1254CC', '#0A5394', '#351C75', '#741B47',\r\n '#5B0F00', '#660000', '#783F03', '#7F6000', '#284E13', '#0B343D', '#1B4586', '#063763', '#20124D', '#4C1030',\r\n];\r\n\r\n@Component({\r\n selector: 'gd-color-picker',\r\n templateUrl: './color-picker.component.html',\r\n styleUrls: ['./color-picker.component.less']\r\n})\r\nexport class ColorPickerComponent implements OnInit {\r\n @Input() isOpen = false;\r\n @Output() selectedColor = new EventEmitter();\r\n @Output() closeOutside = new EventEmitter();\r\n colors: any = DEFAULT_COLORS;\r\n white = '#FFFFFF';\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n select($event, color: string) {\r\n $event.preventDefault();\r\n $event.stopPropagation();\r\n this.selectedColor.emit(color);\r\n }\r\n\r\n close() {\r\n this.isOpen = false;\r\n this.closeOutside.emit(true);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {FormattingService} from \"./formatting.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BackFormattingService extends FormattingService {\r\n\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SelectionService {\r\n selection: Range;\r\n isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\r\n\r\n restoreSelection() {\r\n if(this.selection && !this.selection.collapsed || this.isIE){\r\n this.putSelection(this.selection );\r\n }\r\n }\r\n\r\n captureSelection() {\r\n const selection = window.getSelection();\r\n if (selection.rangeCount > 0) {\r\n this.selection = selection.getRangeAt(0);\r\n }\r\n }\r\n\r\n private putSelection(selection) {\r\n const sel = window.getSelection();\r\n sel.removeAllRanges();\r\n sel.addRange(selection.cloneRange());\r\n }\r\n\r\n refreshSelection() {\r\n this.captureSelection();\r\n this.restoreSelection();\r\n }\r\n}\r\n","import {Directive, HostListener, OnInit} from '@angular/core';\r\nimport {FormattingService} from \"./formatting.service\";\r\nimport {BackFormattingService} from \"./back-formatting.service\";\r\nimport * as jquery from 'jquery';\r\nconst $ = jquery;\r\nimport {SelectionService} from './selection.service';\r\n\r\n@Directive({\r\n selector: '[gdFormatting]'\r\n})\r\nexport class FormattingDirective implements OnInit {\r\n\r\n private bold = false;\r\n private italic = false;\r\n private underline = false;\r\n private color: string;\r\n private bgColor: string;\r\n private font: string;\r\n private strikeout = false;\r\n private align: string;\r\n private list: string;\r\n private isIE = false;\r\n\r\n constructor(private _formattingService: FormattingService,\r\n private _backFormattingService: BackFormattingService,\r\n private _selectionService: SelectionService) {\r\n this.isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\r\n }\r\n\r\n @HostListener('mouseup') mouseup() {\r\n\r\n this.bold = document.queryCommandState(\"bold\");\r\n this.strikeout = document.queryCommandState(\"strikeThrough\");\r\n this.italic = document.queryCommandState(\"italic\");\r\n this.bgColor = document.queryCommandValue(\"backColor\");\r\n this.underline = document.queryCommandState(\"underline\");\r\n this.align = this.checkJustify();\r\n this.list = this.checkList();\r\n\r\n //fix required by FireFox to get correct background color\r\n if (this.bgColor === \"transparent\") {\r\n this.bgColor = $(window.getSelection().focusNode.parentNode).css('background-color').toString();\r\n }\r\n this.font = document.queryCommandValue(\"FontName\").replace(/\"/g, '');\r\n if(this.font.split(\",\").length > 1){\r\n this.font = this.font.split(\",\")[0];\r\n }\r\n this.color = document.queryCommandValue(\"foreColor\");\r\n this._backFormattingService.changeFormatBold(this.bold);\r\n this._backFormattingService.changeFormatUnderline(this.underline);\r\n this._backFormattingService.changeFormatItalic(this.italic);\r\n this._backFormattingService.changeFormatColor(this.color);\r\n this._backFormattingService.changeFormatBgColor(this.bgColor);\r\n this._backFormattingService.changeFormatFontSize(this.reportFontSize());\r\n this._backFormattingService.changeFormatFont(this.font);\r\n this._backFormattingService.changeFormatStrikeout(this.strikeout);\r\n this._backFormattingService.changeFormatAlign(this.align);\r\n this._backFormattingService.changeFormatList(this.list);\r\n }\r\n\r\n private checkJustify() {\r\n let align = \"\";\r\n align = document.queryCommandState(\"justifyCenter\") ? \"center\" : align;\r\n align = document.queryCommandState(\"justifyFull\") ? \"full\" : align;\r\n align = document.queryCommandState(\"justifyLeft\") ? \"left\" : align;\r\n align = document.queryCommandState(\"justifyRight\") ? \"right\" : align;\r\n return align;\r\n }\r\n\r\n private checkList() {\r\n let list = \"\";\r\n list = document.queryCommandState(\"insertUnorderedList\") ? \"unordered\" : list;\r\n list = document.queryCommandState(\"insertOrderedList\") ? \"ordered\" : list;\r\n return list;\r\n }\r\n\r\n reportFontSize(): number {\r\n let containerEl, sel;\r\n if (window.getSelection) {\r\n sel = window.getSelection();\r\n if (sel.rangeCount) {\r\n containerEl = sel.getRangeAt(0).commonAncestorContainer;\r\n // Make sure we have an element rather than a text node\r\n if (containerEl.nodeType === 3) {\r\n containerEl = containerEl.parentNode;\r\n }\r\n }\r\n } else if ((sel = document.getSelection()) && sel.type !== \"Control\") {\r\n containerEl = sel.createRange().parentElement();\r\n }\r\n\r\n if (containerEl) {\r\n return parseInt(this.getComputedStyleProperty(containerEl, \"fontSize\").replace(\"px\", \"\"), 10);\r\n }\r\n }\r\n\r\n getComputedStyleProperty(el, propName) {\r\n if (window.getComputedStyle) {\r\n return window.getComputedStyle(el, null)[propName];\r\n } else if (el.currentStyle) {\r\n return el.currentStyle[propName];\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this._formattingService.undo.subscribe(() => {\r\n this.toggleUndo();\r\n });\r\n this._formattingService.redo.subscribe(() => {\r\n this.toggleRedo();\r\n });\r\n this._formattingService.formatBoldChange.subscribe((bold: boolean) => {\r\n this.bold = bold;\r\n this.toggleBold();\r\n });\r\n this._formattingService.formatUnderlineChange.subscribe((underline: boolean) => {\r\n this.underline = underline;\r\n this.toggleUnderline();\r\n });\r\n this._formattingService.formatItalicChange.subscribe((italic: boolean) => {\r\n this.italic = italic;\r\n this.toggleItalic();\r\n });\r\n this._formattingService.formatColorChange.subscribe(((color: string) => {\r\n this.color = color;\r\n this.setColor(color);\r\n }));\r\n this._formattingService.formatBgColorChange.subscribe(((bgcolor: string) => {\r\n this.bgColor = bgcolor;\r\n this.setBgColor(bgcolor);\r\n }));\r\n this._formattingService.formatFontSizeChange.subscribe(((fontSize: number) => {\r\n this.setFontSize(fontSize);\r\n }));\r\n\r\n this._formattingService.formatFontChange.subscribe(((font: string) => {\r\n this.font = font;\r\n this.setFont(font);\r\n }));\r\n this._formattingService.formatStrikeoutChange.subscribe((strikeout: boolean) => {\r\n this.strikeout = strikeout;\r\n this.toggleStrikeout();\r\n });\r\n this._formattingService.formatAlignChange.subscribe((align: string) => {\r\n this.align = align;\r\n this.toggleAlign(this.align);\r\n });\r\n this._formattingService.formatListChange.subscribe((list: string) => {\r\n const remove = this.list === list;\r\n this.list = list;\r\n this.toggleList(this.list, remove);\r\n });\r\n }\r\n\r\n private toggleBold() {\r\n document.execCommand(\"bold\");\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleUnderline() {\r\n document.execCommand(\"underline\");\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleItalic() {\r\n document.execCommand(\"italic\");\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private setBgColor(bgColor: string) {\r\n document.execCommand(\"backColor\", false, bgColor);\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private setColor(color: string) {\r\n document.execCommand(\"foreColor\", false, color);\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private setFontSize(fontSize: number) {\r\n if (document.getSelection().toString()) {\r\n let spanString = \"\" +\r\n document.getSelection() + \"\";\r\n if (this.bold) {\r\n spanString = \"\" + spanString + \"\";\r\n }\r\n if (this.italic) {\r\n spanString = \"\" + spanString + \"\";\r\n }\r\n if (this.underline) {\r\n spanString = \"\" + spanString + \"\";\r\n }\r\n if (this.strikeout) {\r\n spanString = \"\" + spanString + \"\";\r\n }\r\n document.execCommand('insertHTML', false, spanString);\r\n } else {\r\n document.execCommand(\"fontsize\", false, \"7\");\r\n }\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleUndo() {\r\n document.execCommand(\"undo\");\r\n }\r\n\r\n private toggleRedo() {\r\n document.execCommand(\"redo\");\r\n }\r\n\r\n private setFont(font: string) {\r\n document.execCommand(\"fontName\", false, font);\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleStrikeout() {\r\n document.execCommand(\"strikeThrough\");\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleAlign(align: string) {\r\n if(this.isIE) {\r\n this.toggleAlignIE(align);\r\n return;\r\n }\r\n document.execCommand(\"styleWithCSS\", false, 'true');\r\n switch (align) {\r\n case 'center':\r\n document.execCommand('justifyCenter');\r\n break;\r\n case 'full':\r\n document.execCommand('justifyFull');\r\n break;\r\n case 'left':\r\n document.execCommand('justifyLeft');\r\n break;\r\n case 'right':\r\n document.execCommand('justifyRight');\r\n break;\r\n }\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleAlignIE(align: string) {\r\n this._selectionService.restoreSelection()\r\n this._selectionService.captureSelection()\r\n const selection = window.getSelection().focusNode.parentNode.parentNode;\r\n if(align === \"full\"){\r\n align = \"justify\";\r\n }\r\n $(selection).css(\"text-align\", align);\r\n this._selectionService.refreshSelection()\r\n }\r\n\r\n private toggleList(list: string, remove: boolean) {\r\n switch (list) {\r\n case 'unordered':\r\n document.execCommand('insertUnorderedList', remove);\r\n break;\r\n case 'ordered':\r\n document.execCommand('insertOrderedList', remove);\r\n break;\r\n }\r\n this._selectionService.refreshSelection();\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-success-modal',\r\n templateUrl: './success-modal.component.html',\r\n styleUrls: ['./success-modal.component.less']\r\n})\r\nexport class SuccessModalComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Observable, Subject} from \"rxjs\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class EditHtmlService {\r\n private _observer: Subject = new Subject();\r\n private readonly _htmlContent: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get observer(): Subject {\r\n return this._observer;\r\n }\r\n\r\n get htmlContent(): Observable {\r\n return this._htmlContent;\r\n }\r\n\r\n}\r\n","import {Directive, HostListener, Input} from '@angular/core';\r\nimport {SelectionService} from './selection.service';\r\nimport {EditHtmlService} from \"./edit-html.service\";\r\n\r\n@Directive({\r\n selector: '[gdEditor]'\r\n})\r\nexport class EditorDirective {\r\n @Input() text: any;\r\n\r\n private isIE: boolean = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\r\n\r\n constructor(private _selectionService: SelectionService, private _htmlService: EditHtmlService) {\r\n }\r\n\r\n @HostListener('keyup', ['$event'])\r\n public onInput(event) {\r\n this.text = event.target;\r\n if(this.isIE){\r\n if (this.text.innerHTML) {\r\n const html = this.text.innerHTML.toString();\r\n this._htmlService.observer.next(html);\r\n }\r\n }\r\n }\r\n\r\n @HostListener('mouseleave', ['$event'])\r\n public onMouseleave(event) {\r\n this._selectionService.captureSelection();\r\n // this code is required to fix IE11 issue - it doesn't trigger blur event, since that we need to save updated HTML here\r\n if(this.isIE){\r\n this._htmlService.observer.next(event.target.innerHTML.toString());\r\n }\r\n }\r\n\r\n @HostListener('blur', ['$event'])\r\n public onBlur(event) {\r\n event.preventDefault();\r\n this._selectionService.restoreSelection();\r\n if (this.text.innerHTML) {\r\n const html = this.text.innerHTML.toString();\r\n this._htmlService.observer.next(html);\r\n } else {\r\n this._htmlService.observer.next(event.target.innerHTML.toString());\r\n }\r\n }\r\n}\r\n","import {EventEmitter, Injectable} from '@angular/core'\r\nimport {HttpRequest} from '@angular/common/http';\r\nimport {Api} from \"./config.service\";\r\n\r\n@Injectable()\r\nexport class LoadingMaskService {\r\n onLoadingChanged: EventEmitter = new EventEmitter();\r\n\r\n private stopList = [];\r\n private requests: HttpRequest[] = [];\r\n\r\n constructor() {\r\n this.stopList.push(Api.SAVE_TEXT);\r\n this.stopList.push(Api.SAVE_OPTICAL_CODE);\r\n this.stopList.push(Api.LOAD_DOCUMENT_PAGE);\r\n this.stopList.push(Api.LOAD_THUMBNAILS);\r\n this.stopList.push(Api.GET_FILE_STATUS);\r\n this.stopList.push(Api.LOAD_PRINT);\r\n }\r\n\r\n onRequestStart(req: HttpRequest): void {\r\n const stop = this.stopList.find(x => req.url.includes(x));\r\n if (!stop) {\r\n this.requests.push(req);\r\n this.notify();\r\n }\r\n }\r\n\r\n onRequestFinish(req: HttpRequest): void {\r\n const index = this.requests.indexOf(req);\r\n if (index !== -1) {\r\n this.requests.splice(index, 1);\r\n }\r\n this.notify();\r\n }\r\n\r\n private notify(): void {\r\n this.onLoadingChanged.emit(this.requests.length !== 0);\r\n }\r\n}\r\n","import {AfterViewInit, Component, Input, OnInit} from '@angular/core';\r\nimport {LoadingMaskService} from \"../loading-mask.service\";\r\n\r\n@Component({\r\n selector: 'gd-loading-mask',\r\n templateUrl: './loading-mask.component.html',\r\n styleUrls: ['./loading-mask.component.less']\r\n})\r\n\r\nexport class LoadingMaskComponent implements OnInit, AfterViewInit {\r\n @Input() loadingMask = false;\r\n\r\n constructor(private _loadingMaskService: LoadingMaskService) {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this._loadingMaskService\r\n .onLoadingChanged\r\n .subscribe((loading: boolean) => this.loadingMask = loading);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from \"@angular/common/http\";\r\nimport {Observable} from \"rxjs\";\r\nimport {finalize} from 'rxjs/operators'\r\nimport {LoadingMaskService} from \"./loading-mask.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LoadingMaskInterceptorService implements HttpInterceptor {\r\n\r\n constructor(private _loadingMaskService: LoadingMaskService) {\r\n }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n this._loadingMaskService.onRequestStart(req);\r\n const callback = () => this._loadingMaskService.onRequestFinish(req);\r\n return next.handle(req).pipe( finalize( callback));\r\n }\r\n}\r\n","import {\r\n Component,\r\n EventEmitter,\r\n forwardRef,\r\n HostBinding,\r\n HostListener,\r\n Inject,\r\n Input,\r\n Output,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\n\r\n\r\nconst horizontalAlignment = {\r\n center : {\r\n right: 'auto'\r\n },\r\n left : {\r\n right: '100%'\r\n },\r\n right : {\r\n right: '-100%'\r\n }\r\n};\r\n\r\nconst verticalAlignment = {\r\n center : {\r\n top : '0px',\r\n },\r\n top : {\r\n top : '-100%',\r\n right: '100%'\r\n },\r\n bottom : {\r\n top: 'autos'\r\n }\r\n};\r\n\r\n/**\r\n * DropDownToggleComponent\r\n */\r\n@Component({\r\n selector: 'gd-drop-down-toggle',\r\n template: '',\r\n styleUrls: ['./drop-down.component.less'],\r\n encapsulation : ViewEncapsulation.None\r\n})\r\nexport class DropDownToggleComponent{\r\n @HostListener('click',['$event'])\r\n click = (event: any) => this.dropdown.toggle(event);\r\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\r\n}\r\n\r\n/**\r\n * DropDownItemsComponent\r\n */\r\n@Component({\r\n selector: 'gd-drop-down-items',\r\n template: '
',\r\n styleUrls: ['./drop-down.component.less'],\r\n encapsulation : ViewEncapsulation.None\r\n})\r\nexport class DropDownItemsComponent{\r\n\r\n get horizontalAlign(){\r\n return horizontalAlignment[this.dropdown.getPlacement().h].right;\r\n }\r\n\r\n get verticalAlign(){\r\n return verticalAlignment[this.dropdown.getPlacement().v].top;\r\n }\r\n\r\n get isOpen(){\r\n return this.dropdown.open;\r\n }\r\n\r\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\r\n\r\n onClickOutside(event : Event ){\r\n this.dropdown.close();\r\n }\r\n}\r\n\r\n/**\r\n * DropDownItemComponent\r\n */\r\n@Component({\r\n selector: 'gd-drop-down-item',\r\n template: '
',\r\n styleUrls: ['./drop-down.component.less'],\r\n})\r\nexport class DropDownItemComponent{\r\n @HostBinding('class')\r\n class = 'drop-down-item';\r\n\r\n @Output()\r\n selected = new EventEmitter();\r\n\r\n @HostListener('click')\r\n click = () => this.selectEntry();\r\n\r\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\r\n\r\n selectEntry(){\r\n this.selected.next();\r\n this.dropdown.close();\r\n }\r\n}\r\n\r\n/**\r\n * DropDownComponent\r\n */\r\n@Component({\r\n selector: 'gd-drop-down',\r\n template: '
',\r\n styleUrls: ['./drop-down.component.less'],\r\n encapsulation : ViewEncapsulation.None\r\n})\r\nexport class DropDownComponent{\r\n @Input()\r\n placement = {\r\n h: \"center\",\r\n v: \"bottom\"\r\n };\r\n\r\n\r\n @Input()\r\n @HostBinding('class.show')\r\n open = false;\r\n\r\n @HostBinding('class')\r\n class = 'drop-down';\r\n\r\n close(){\r\n this.open = false;\r\n }\r\n\r\n toggle(event : MouseEvent){\r\n event.stopPropagation();\r\n this.open = !this.open;\r\n document.body.click();\r\n }\r\n\r\n getPlacement(){\r\n return this.placement;\r\n }\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-left-side-bar',\r\n templateUrl: './left-side-bar.component.html',\r\n styleUrls: ['./left-side-bar.component.less']\r\n})\r\nexport class LeftSideBarComponent implements OnInit {\r\n @Input() showSpinner = false;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Directive, EventEmitter, HostListener, Input, Output} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[gdTooltip]'\r\n})\r\nexport class TooltipDirective {\r\n\r\n @Output() showToolTip = new EventEmitter();\r\n\r\n constructor() {\r\n }\r\n\r\n @HostListener('mouseenter')\r\n public onHovering() {\r\n this.showToolTip.emit(true);\r\n }\r\n\r\n @HostListener('mouseleave')\r\n public onUnhovering() {\r\n this.showToolTip.emit(false);\r\n }\r\n\r\n}\r\n","import {\r\n ApplicationRef,\r\n ComponentFactoryResolver,\r\n Injectable,\r\n ViewContainerRef\r\n} from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AddDynamicComponentService {\r\n\r\n constructor(private _factoryResolver: ComponentFactoryResolver,\r\n private _appRef: ApplicationRef) {\r\n }\r\n\r\n addDynamicComponent(viewContainerRef: ViewContainerRef, component: any) {\r\n const factory = this._factoryResolver.resolveComponentFactory(component);\r\n const componentRef = viewContainerRef.createComponent(factory);\r\n\r\n componentRef.onDestroy(() => {\r\n this._appRef.detachView(componentRef.hostView);\r\n });\r\n\r\n return componentRef;\r\n }\r\n\r\n}\r\n","import {HostDynamicDirective} from \"./host-dynamic.directive\";\r\n\r\nexport class HostingDynamicComponentService {\r\n private hosts: HostDynamicDirective[];\r\n\r\n constructor() {\r\n this.hosts = [];\r\n }\r\n\r\n add(host: HostDynamicDirective) {\r\n this.hosts = this.hosts.filter(function (h) {\r\n return h.ident !== host.ident;\r\n });\r\n this.hosts.push(host);\r\n }\r\n\r\n remove(host: HostDynamicDirective) {\r\n this.hosts = this.hosts.filter(function (h) {\r\n return h.ident !== host.ident;\r\n });\r\n }\r\n\r\n find(ident: number) {\r\n return this.hosts.find(function (h) {\r\n return h.ident === ident;\r\n });\r\n }\r\n}\r\n","import {AfterViewInit, Directive, Input, OnDestroy, ViewContainerRef} from '@angular/core';\r\nimport {HostingDynamicComponentService} from \"./hosting-dynamic-component.service\";\r\n\r\n@Directive({\r\n selector: '[gdHostDynamic]'\r\n})\r\nexport class HostDynamicDirective implements AfterViewInit, OnDestroy {\r\n @Input() ident: number;\r\n\r\n constructor(public viewContainerRef: ViewContainerRef,\r\n private _hostingService: HostingDynamicComponentService) {\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this._hostingService.add(this);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._hostingService.remove(this);\r\n this.viewContainerRef.clear();\r\n }\r\n\r\n}\r\n","import {AfterViewInit, Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport * as jquery from \"jquery\";\r\nimport {Utils} from \"../file.service\";\r\n\r\nconst $ = jquery;\r\n\r\n@Component({\r\n selector: 'gd-resizing',\r\n templateUrl: './resizing.component.html',\r\n styleUrls: ['./resizing.component.less']\r\n})\r\nexport class ResizingComponent implements OnInit, AfterViewInit {\r\n\r\n @Input() init: boolean;\r\n @Input() id: number;\r\n @Input() se = false;\r\n @Input() ne = false;\r\n @Input() sw = false;\r\n @Input() nw = false;\r\n @Input() pageWidth: number;\r\n @Input() pageHeight: number;\r\n SE = 'se';\r\n NE = 'ne';\r\n SW = 'sw';\r\n NW = 'nw';\r\n\r\n @Output() offsetX = new EventEmitter();\r\n @Output() offsetY = new EventEmitter();\r\n @Output() offsetTop = new EventEmitter();\r\n @Output() offsetLeft = new EventEmitter();\r\n @Output() release = new EventEmitter();\r\n\r\n private grab = false;\r\n private oldPosition: { x: number, y: number };\r\n\r\n constructor() {\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n const elSE = $(this.getElementId(this.SE));\r\n const elNW = $(this.getElementId(this.NW));\r\n if (this.init && elSE && elNW && elSE.offset() && elNW.offset()) {\r\n let width = elSE.offset().left - elNW.offset().left;\r\n let height = elSE.offset().top - elNW.offset().top;\r\n while (width >= this.pageWidth || height >= this.pageHeight) {\r\n width = width / 2;\r\n height = height / 2;\r\n }\r\n setTimeout(() => {\r\n this.offsetX.emit(width);\r\n this.offsetY.emit(height);\r\n }, 100);\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n catchUp($event: DragEvent) {\r\n // ff\r\n $event.preventDefault();\r\n if ($event.dataTransfer) { // ff\r\n $event.dataTransfer.setData('text', 'foo');\r\n }\r\n this.grab = true;\r\n this.oldPosition = Utils.getMousePosition($event);\r\n }\r\n\r\n resize($event: DragEvent, el: string) {\r\n if (!this.grab) {\r\n return;\r\n }\r\n const position = Utils.getMousePosition($event);\r\n if (position.x === 0 && position.y === 0) {\r\n return;\r\n }\r\n const notSW = this.NE === el || this.NW === el;\r\n const notNE = this.SW === el || this.NW === el;\r\n this.setOffsets(position, notNE, notSW);\r\n if (notSW) {\r\n this.offsetTop.emit(position.y - this.oldPosition.y);\r\n }\r\n if (notNE) {\r\n this.offsetLeft.emit(position.x - this.oldPosition.x);\r\n }\r\n this.oldPosition = position;\r\n }\r\n\r\n private setOffsets(position, x: boolean, y: boolean) {\r\n const offsetX = x ? this.oldPosition.x - position.x : position.x - this.oldPosition.x;\r\n const offsetY = y ? this.oldPosition.y - position.y : position.y - this.oldPosition.y;\r\n this.offsetX.emit(offsetX);\r\n this.offsetY.emit(offsetY);\r\n }\r\n\r\n end($event: DragEvent, el: string) {\r\n // ff\r\n this.resize($event, el);\r\n this.release.emit(true);\r\n this.grab = false;\r\n }\r\n\r\n start($event: DragEvent) {\r\n this.drop($event);\r\n }\r\n\r\n drop($event: DragEvent) {\r\n $event.stopPropagation();\r\n $event.preventDefault();\r\n }\r\n\r\n private getElementId(el: string) {\r\n return \"#\" + el + \"-\" + this.id;\r\n }\r\n}\r\n","import {TabActivatorService} from \"./tab-activator.service\";\r\n\r\nexport class TopTabActivatorService extends TabActivatorService {\r\n\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {ExceptionMessageService} from \"../exception-message.service\";\r\nimport {TopTabActivatorService} from \"../top-tab-activator.service\";\r\nimport {ModalService, CommonModals} from \"../modal.service\";\r\n\r\n@Component({\r\n selector: 'gd-top-tab',\r\n templateUrl: './top-tab.component.html',\r\n styleUrls: ['./top-tab.component.less']\r\n})\r\nexport class TopTabComponent implements OnInit {\r\n @Input() id: string;\r\n @Input() icon: string;\r\n @Input() disabled = false;\r\n @Input() tooltip: string;\r\n @Output() activeTab = new EventEmitter();\r\n @Input() elementPosition = 0;\r\n public active = false;\r\n public showToolTip = false;\r\n\r\n constructor(private _tabActivatorService: TopTabActivatorService,\r\n private _modalService: ModalService,\r\n private _excMessageService: ExceptionMessageService) {\r\n this._tabActivatorService.activeTabChange.subscribe((tabId: string) => {\r\n this.activation(tabId);\r\n if (tabId === null) {\r\n this.activeTab.emit(\"\");\r\n }\r\n });\r\n }\r\n\r\n private activation(tabId: string) {\r\n if (this.id === tabId) {\r\n this.active = !this.active;\r\n if (this.active) {\r\n this.activeTab.emit(this.id);\r\n } else {\r\n this.activeTab.emit(\"\");\r\n }\r\n } else {\r\n this.active = false;\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n toggleTab() {\r\n if (this.disabled) {\r\n this._modalService.open(CommonModals.ErrorMessage);\r\n this._excMessageService.changeMessage(\"Please open document first\");\r\n return;\r\n }\r\n this._tabActivatorService.changeActiveTab(this.id);\r\n }\r\n\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output, ElementRef, Renderer2} from '@angular/core';\r\nimport * as jquery from 'jquery';\r\nimport {FormattingService} from \"../formatting.service\";\r\nimport {OnCloseService} from \"../on-close.service\";\r\nimport {Option} from \"../select/select.component\";\r\nimport { ZoomService } from '../zoom.service';\r\nimport { WindowService } from '../window.service';\r\n\r\nconst $ = jquery;\r\n\r\n@Component({\r\n selector: 'gd-text-menu',\r\n templateUrl: './text-menu.component.html',\r\n styleUrls: ['./text-menu.component.less']\r\n})\r\nexport class TextMenuComponent implements OnInit {\r\n @Input() blur: boolean;\r\n @Input() fontSize: number;\r\n @Input() font: string;\r\n @Input() bold: boolean;\r\n @Input() italic: boolean;\r\n @Input() underline: boolean;\r\n @Input() color: string;\r\n @Input() decoration = true;\r\n @Input() showTooltips = true;\r\n\r\n @Output() outFontSize = new EventEmitter();\r\n @Output() outFont = new EventEmitter();\r\n @Output() outBold = new EventEmitter();\r\n @Output() outItalic = new EventEmitter();\r\n @Output() outUnderline = new EventEmitter();\r\n @Output() outColor = new EventEmitter();\r\n\r\n fontSizeOptions = FormattingService.getFontSizeOptions();\r\n fontOptions = FormattingService.getFontOptions();\r\n colorPickerShow = false;\r\n\r\n isMobile: boolean;\r\n\r\n constructor(private _onCloseService: OnCloseService,\r\n private _zoomService: ZoomService,\r\n private _windowService: WindowService,\r\n protected _elementRef: ElementRef,\r\n private renderer: Renderer2) {\r\n \r\n _onCloseService.onClose.subscribe(() => {\r\n this.colorPickerShow = false;\r\n });\r\n\r\n this.isMobile = _windowService.isMobile();\r\n _windowService.onResize.subscribe((w) => {\r\n this.isMobile = _windowService.isMobile();\r\n });\r\n\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n if (this.isMobile)\r\n {\r\n this.changePosition(val);\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n changePosition(val: number) {\r\n const top = (window.innerHeight - 24 - this._elementRef.nativeElement.parentElement.getBoundingClientRect().top - this._elementRef.nativeElement.parentElement.getBoundingClientRect().height);\r\n const left = this._elementRef.nativeElement.parentElement.getBoundingClientRect().left;\r\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'width', window.innerWidth + 'px');\r\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'top', top + 'px');\r\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'left', -left + 'px');\r\n }\r\n\r\n selectFontSize($event: Option) {\r\n $(\".gd-wrapper\").off(\"keyup\");\r\n this.outFontSize.emit($event.value);\r\n $(\".gd-wrapper\").on(\"keyup\", () => {\r\n const fontElements = document.getElementsByTagName(\"font\");\r\n for (let i = 0, len = fontElements.length; i < len; ++i) {\r\n if (fontElements[i].getAttribute('size') === \"7\") {\r\n fontElements[i].removeAttribute(\"size\");\r\n fontElements[i].style.fontSize = $event + \"px\";\r\n }\r\n }\r\n });\r\n }\r\n\r\n selectFont($event: Option) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.outFont.emit($event.value);\r\n }\r\n\r\n toggleColorPicker($event) {\r\n $event.preventDefault();\r\n $event.stopPropagation();\r\n this.colorPickerShow = !this.colorPickerShow;\r\n }\r\n\r\n selectColor($event: string) {\r\n this.colorPickerShow = false;\r\n this.outColor.emit($event);\r\n }\r\n\r\n toggleBold(event) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.outBold.emit(!this.bold);\r\n }\r\n\r\n toggleItalic(event) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.outItalic.emit(!this.italic);\r\n }\r\n\r\n toggleUnderline(event) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.outUnderline.emit(!this.underline);\r\n }\r\n\r\n closePicker($event) {\r\n this.colorPickerShow = !$event;\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output, Renderer2, ElementRef} from '@angular/core';\r\nimport {Formatting} from \"../formatting.service\";\r\nimport {WindowService} from \"../window.service\";\r\nimport { ZoomService } from '../zoom.service';\r\n\r\nexport class MenuType {\r\n public static FOR_SIGNATURE = \"signature\";\r\n public static FOR_ANNOTATION = \"annotation\";\r\n}\r\n\r\n@Component({\r\n selector: 'gd-context-menu',\r\n templateUrl: './context-menu.component.html',\r\n styleUrls: ['./context-menu.component.less']\r\n})\r\nexport class ContextMenuComponent implements OnInit {\r\n @Input() formatting: Formatting = Formatting.default();\r\n @Input() textMenu: boolean;\r\n @Input() topPosition: number;\r\n @Input() lock = false;\r\n @Input() translation = 0;\r\n @Input() menuType: string;\r\n @Output() changeFormatting = new EventEmitter();\r\n @Output() removeItem = new EventEmitter();\r\n @Output() copySign = new EventEmitter();\r\n @Output() lockOut = new EventEmitter();\r\n @Output() comment = new EventEmitter();\r\n\r\n isMobile: boolean;\r\n\r\n constructor(private _windowService: WindowService,\r\n private _zoomService: ZoomService,\r\n protected _elementRef: ElementRef,\r\n private renderer: Renderer2) {\r\n this.isMobile = _windowService.isMobile();\r\n _windowService.onResize.subscribe((w) => {\r\n this.isMobile = _windowService.isMobile();\r\n });\r\n\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n if (this.isMobile)\r\n {\r\n this.changeScale(val);\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n changeScale(val: number){\r\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-context-menu'), 'transform', 'scale(' + 1/(val/100) + ')');\r\n }\r\n\r\n saveChanges() {\r\n this.changeFormatting.emit(this.formatting);\r\n }\r\n\r\n selectFontSize($event: number) {\r\n this.formatting.fontSize = $event;\r\n this.saveChanges();\r\n }\r\n\r\n selectFont($event: string) {\r\n this.formatting.font = $event;\r\n this.saveChanges();\r\n }\r\n\r\n selectColor($event: string) {\r\n this.formatting.color = $event;\r\n this.saveChanges();\r\n }\r\n\r\n toggleBold($event) {\r\n this.formatting.bold = $event;\r\n this.saveChanges();\r\n }\r\n\r\n toggleItalic($event) {\r\n this.formatting.italic = $event;\r\n this.saveChanges();\r\n }\r\n\r\n toggleUnderline($event) {\r\n this.formatting.underline = $event;\r\n this.saveChanges();\r\n }\r\n\r\n deleteItem() {\r\n this.removeItem.emit(true);\r\n }\r\n\r\n toggleLock() {\r\n this.lock = !this.lock;\r\n this.lockOut.emit(this.lock);\r\n }\r\n\r\n onCopySign() {\r\n this.copySign.emit(true);\r\n }\r\n\r\n isSignature() {\r\n return this.menuType === MenuType.FOR_SIGNATURE;\r\n }\r\n\r\n isAnnotation() {\r\n return this.menuType === MenuType.FOR_ANNOTATION;\r\n }\r\n\r\n addComment() {\r\n this.comment.emit(true);\r\n }\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {TopToolbarComponent} from './top-toolbar/top-toolbar.component';\r\nimport {SidePanelComponent} from './side-panel/side-panel.component';\r\nimport {ButtonComponent} from './button/button.component';\r\nimport {LogoComponent} from './logo/logo.component';\r\nimport {TooltipComponent} from './tooltip/tooltip.component';\r\nimport {FontAwesomeModule} from '@fortawesome/angular-fontawesome';\r\nimport {library} from '@fortawesome/fontawesome-svg-core';\r\nimport {fas} from '@fortawesome/free-solid-svg-icons';\r\nimport {far} from '@fortawesome/free-regular-svg-icons';\r\nimport {Api, ConfigService,} from \"./config.service\";\r\nimport {ModalService} from \"./modal.service\";\r\nimport {ModalComponent} from './modal/modal.component';\r\nimport {BrowseFilesModalComponent} from './browse-files-modal/browse-files-modal.component';\r\nimport {FileModel, FileService, FileUtil, Utils} from \"./file.service\";\r\nimport {DocumentComponent} from './document/document.component';\r\nimport {PageComponent} from './page/page.component';\r\nimport {HighlightSearchPipe, SanitizeHtmlPipe, SanitizeResourceHtmlPipe, SanitizeStylePipe} from \"./pipes\";\r\nimport {UploadFileZoneComponent} from './upload-file-zone/upload-file-zone.component';\r\nimport {UploadFilesService} from \"./upload-files.service\";\r\nimport {DndDirective} from './dnd.directive';\r\nimport {ScrollableDirective} from './scrollable.directive';\r\nimport {MouseWheelDirective} from './mousewheel.directive';\r\nimport {NavigateService} from \"./navigate.service\";\r\nimport {PagePreloadService} from \"./page-preload.service\";\r\nimport {ZoomDirective} from './zoom.directive';\r\nimport {ZoomService} from \"./zoom.service\";\r\nimport {SelectComponent} from './select/select.component';\r\nimport {DisabledCursorDirective} from './disabled-cursor.directive';\r\nimport {RotationDirective} from './rotation.directive';\r\nimport {InitStateComponent} from './init-state/init-state.component';\r\nimport {RenderPrintService} from \"./render-print.service\";\r\nimport {RenderPrintDirective} from './render-print.directive';\r\nimport {ErrorModalComponent} from './error-modal/error-modal.component';\r\nimport {PasswordRequiredComponent} from './password-required/password-required.component';\r\nimport {ExceptionMessageService} from \"./exception-message.service\";\r\nimport {PasswordService} from \"./password.service\";\r\nimport {ErrorInterceptorService} from \"./error-interceptor.service\";\r\nimport {SearchComponent} from './search/search.component';\r\nimport {SearchableDirective} from './searchable.directive';\r\nimport {SearchService} from \"./search.service\";\r\nimport {WindowService} from \"./window.service\";\r\nimport {ViewportService} from \"./viewport.service\";\r\nimport {TabbedToolbarsComponent} from './tabbed-toolbars/tabbed-toolbars.component';\r\nimport {TabComponent} from \"./tab/tab.component\";\r\nimport {TabsComponent} from \"./tabs/tabs.component\";\r\nimport {FormattingService} from \"./formatting.service\";\r\nimport {ColorPickerComponent} from './color-picker/color-picker.component';\r\nimport {FormattingDirective} from './formatting.directive';\r\nimport {BackFormattingService} from \"./back-formatting.service\";\r\nimport {OnCloseService} from \"./on-close.service\";\r\nimport {SuccessModalComponent} from './success-modal/success-modal.component';\r\nimport {EditorDirective} from './editor.directive';\r\nimport {LoadingMaskComponent} from './loading-mask/loading-mask.component';\r\nimport {LoadingMaskService} from './loading-mask.service';\r\nimport {LoadingMaskInterceptorService} from \"./loading-mask-interceptor.service\";\r\nimport {TabActivatorService} from \"./tab-activator.service\";\r\nimport {\r\n DropDownComponent,\r\n DropDownItemComponent,\r\n DropDownItemsComponent,\r\n DropDownToggleComponent\r\n} from './drop-down/drop-down.component';\r\nimport {ClickOutsideModule} from 'ng-click-outside';\r\nimport {LeftSideBarComponent} from './left-side-bar/left-side-bar.component';\r\nimport {TooltipDirective} from './tooltip.directive';\r\nimport {AddDynamicComponentService} from \"./add-dynamic-component.service\";\r\nimport {HostDynamicDirective} from './host-dynamic.directive';\r\nimport {HostingDynamicComponentService} from \"./hosting-dynamic-component.service\";\r\nimport {ResizingComponent} from './resizing/resizing.component';\r\nimport {TopTabComponent} from './top-tab/top-tab.component';\r\nimport {TopTabActivatorService} from \"./top-tab-activator.service\";\r\nimport {TextMenuComponent} from './text-menu/text-menu.component';\r\nimport {ContextMenuComponent} from './context-menu/context-menu.component';\r\n\r\nconst providers = [ConfigService,\r\n Api,\r\n ModalService,\r\n FileService,\r\n FileModel,\r\n FileUtil,\r\n Utils,\r\n SanitizeHtmlPipe,\r\n SanitizeResourceHtmlPipe,\r\n SanitizeStylePipe,\r\n HighlightSearchPipe,\r\n UploadFilesService,\r\n RenderPrintService,\r\n NavigateService,\r\n PagePreloadService,\r\n ZoomService,\r\n ExceptionMessageService,\r\n PasswordService,\r\n ErrorInterceptorService,\r\n SearchService,\r\n WindowService,\r\n ViewportService,\r\n FormattingService,\r\n BackFormattingService,\r\n OnCloseService,\r\n LoadingMaskInterceptorService,\r\n LoadingMaskService,\r\n TabActivatorService,\r\n AddDynamicComponentService,\r\n HostingDynamicComponentService,\r\n TopTabActivatorService];\r\n\r\n@NgModule({\r\n imports: [CommonModule, FontAwesomeModule, ClickOutsideModule],\r\n declarations: [\r\n TopToolbarComponent,\r\n SidePanelComponent,\r\n ButtonComponent,\r\n LogoComponent,\r\n TooltipComponent,\r\n ModalComponent,\r\n BrowseFilesModalComponent,\r\n DocumentComponent,\r\n PageComponent,\r\n SanitizeHtmlPipe,\r\n SanitizeResourceHtmlPipe,\r\n SanitizeStylePipe,\r\n HighlightSearchPipe,\r\n UploadFileZoneComponent,\r\n DndDirective,\r\n ScrollableDirective,\r\n MouseWheelDirective,\r\n ZoomDirective,\r\n SelectComponent,\r\n DisabledCursorDirective,\r\n RotationDirective,\r\n InitStateComponent,\r\n RenderPrintDirective,\r\n ErrorModalComponent,\r\n PasswordRequiredComponent,\r\n SearchComponent,\r\n SearchableDirective,\r\n TabbedToolbarsComponent,\r\n TabComponent,\r\n TabsComponent,\r\n ColorPickerComponent,\r\n FormattingDirective,\r\n SuccessModalComponent,\r\n EditorDirective,\r\n LoadingMaskComponent,\r\n DropDownComponent,\r\n DropDownItemComponent,\r\n DropDownItemsComponent,\r\n DropDownToggleComponent,\r\n LeftSideBarComponent,\r\n TooltipDirective,\r\n HostDynamicDirective,\r\n ResizingComponent,\r\n TopTabComponent,\r\n TextMenuComponent,\r\n ContextMenuComponent\r\n ],\r\n exports: [\r\n TopToolbarComponent,\r\n SidePanelComponent,\r\n ButtonComponent,\r\n LogoComponent,\r\n TooltipComponent,\r\n ModalComponent,\r\n BrowseFilesModalComponent,\r\n DocumentComponent,\r\n PageComponent,\r\n SanitizeResourceHtmlPipe,\r\n SanitizeStylePipe,\r\n HighlightSearchPipe,\r\n SanitizeHtmlPipe,\r\n UploadFileZoneComponent,\r\n ScrollableDirective,\r\n MouseWheelDirective,\r\n SelectComponent,\r\n RotationDirective,\r\n InitStateComponent,\r\n RenderPrintDirective,\r\n ErrorModalComponent,\r\n PasswordRequiredComponent,\r\n SearchComponent,\r\n SearchableDirective,\r\n TabbedToolbarsComponent,\r\n TabComponent,\r\n TabsComponent,\r\n ColorPickerComponent,\r\n FormattingDirective,\r\n SuccessModalComponent,\r\n LoadingMaskComponent,\r\n DndDirective,\r\n DropDownComponent,\r\n DropDownItemComponent,\r\n DropDownItemsComponent,\r\n DropDownToggleComponent,\r\n ZoomDirective,\r\n DropDownToggleComponent,\r\n LeftSideBarComponent,\r\n TooltipDirective,\r\n HostDynamicDirective,\r\n ResizingComponent,\r\n TopTabComponent,\r\n TextMenuComponent,\r\n ContextMenuComponent\r\n ],\r\n providers: providers\r\n})\r\nexport class CommonComponentsModule {\r\n constructor() {\r\n library.add(fas, far);\r\n }\r\n}\r\n"],"names":["Component","EventEmitter","Input","Output","Subject","fromEvent","debounceTime","distinctUntilChanged","startWith","tap","HttpHeaders","Injectable","ElementRef","tslib_1.__extends","Observable","BehaviorSubject","$","Pipe","DomSanitizer","Directive","HostBinding","HostListener","tslib_1.__values","map","catchError","HttpErrorResponse","throwError","ViewChild","finalize","ViewEncapsulation","Inject","forwardRef","ComponentFactoryResolver","ApplicationRef","ViewContainerRef","Renderer2","library","fas","far","NgModule","CommonModule","FontAwesomeModule","ClickOutsideModule"],"mappings":"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"} \ No newline at end of file diff --git a/dist/libs/common-components/bundles/groupdocs.examples.angular-common-components.umd.min.js b/dist/libs/common-components/bundles/groupdocs.examples.angular-common-components.umd.min.js index 28a731430..51f7b9f84 100644 --- a/dist/libs/common-components/bundles/groupdocs.examples.angular-common-components.umd.min.js +++ b/dist/libs/common-components/bundles/groupdocs.examples.angular-common-components.umd.min.js @@ -1,16 +1,16 @@ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/common"),require("rxjs"),require("rxjs/operators"),require("@fortawesome/angular-fontawesome"),require("@fortawesome/fontawesome-svg-core"),require("@fortawesome/free-solid-svg-icons"),require("@fortawesome/free-regular-svg-icons"),require("@angular/common/http"),require("jquery"),require("hammerjs"),require("@angular/platform-browser"),require("ng-click-outside")):"function"==typeof define&&define.amd?define("@groupdocs.examples.angular/common-components",["exports","@angular/core","@angular/common","rxjs","rxjs/operators","@fortawesome/angular-fontawesome","@fortawesome/fontawesome-svg-core","@fortawesome/free-solid-svg-icons","@fortawesome/free-regular-svg-icons","@angular/common/http","jquery","hammerjs","@angular/platform-browser","ng-click-outside"],e):e(((t=t||self).groupdocs=t.groupdocs||{},t.groupdocs.examples=t.groupdocs.examples||{},t.groupdocs.examples.angular=t.groupdocs.examples.angular||{},t.groupdocs.examples.angular["common-components"]={}),t.ng.core,t.ng.common,t.rxjs,t.rxjs.operators,t.angularFontawesome,t.fontawesomeSvgCore,t.freeSolidSvgIcons,t.freeRegularSvgIcons,t.ng.common.http,t.jquery,t.Hammer,t.ng.platformBrowser,t.ngClickOutside)}(this,(function(t,e,o,n,i,r,s,a,c,p,l,d,u,g){"use strict"; /*! ***************************************************************************** - Copyright (c) Microsoft Corporation. All rights reserved. - Licensed under the Apache License, Version 2.0 (the "License"); you may not use - this file except in compliance with the License. You may obtain a copy of the - License at http://www.apache.org/licenses/LICENSE-2.0 + Copyright (c) Microsoft Corporation. - THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED - WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, - MERCHANTABLITY OR NON-INFRINGEMENT. + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. - See the Apache Version 2.0 License for specific language governing permissions - and limitations under the License. - ***************************************************************************** */var h=function(t,e){return(h=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var o in e)e.hasOwnProperty(o)&&(t[o]=e[o])})(t,e)};function f(t,e){function o(){this.constructor=t}h(t,e),t.prototype=null===e?Object.create(e):(o.prototype=e.prototype,new o)}function m(t){var e="function"==typeof Symbol&&t[Symbol.iterator],o=0;return e?e.call(t):{next:function(){return t&&o>=t.length&&(t=void 0),{value:t&&t[o++],done:!t}}}}var b=function(){function t(){}return t.decorators=[{type:e.Component,args:[{selector:"gd-top-toolbar",template:'
\n
\n \n
\n
\n',styles:[".top-toolbar{width:100%;height:60px;z-index:999;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.tools{width:100%;height:100%;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}@media (max-width:1037px){.top-toolbar{height:60px}.tools{height:100%;overflow-x:auto;overflow-scrolling:touch;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.tools::-webkit-scrollbar{width:0;height:0;background-color:#3e4e5a}}"]}]}],t.ctorParameters=function(){return[]},t}(),v=function(){function t(){this.closable=!0,this.saveable=!0,this.hideSidePanel=new e.EventEmitter,this.saveInSidePanel=new e.EventEmitter,this.onlyTitle=!1}return t.prototype.closeSidePanel=function(){this.hideSidePanel.emit(!0)},t.prototype.saveBySidePanel=function(){this.saveInSidePanel.emit(!0)},t.prototype.toggleTitleMode=function(){this.closable&&!this.saveable&&(this.onlyTitle=!this.onlyTitle)},t.decorators=[{type:e.Component,args:[{selector:"gd-side-panel",template:'
\n
\n \n
{{title}}
\n
\n \n
\n
\n \n
\n
\n
\n \n
\n
\n',styles:[".gd-side-panel-wrapper{margin-right:0;width:334px;z-index:999;background-color:#fff;-webkit-transition:margin-right .2s;transition:margin-right .2s;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-flow:column;height:100vh}.gd-side-panel-wrapper .gd-side-panel-header{height:60px;background-color:#222e35;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;flex-wrap:nowrap}.gd-side-panel-wrapper .gd-side-panel-header .icon{font-size:24px;color:#959da5;margin:18px;line-height:24px}.gd-side-panel-wrapper .gd-side-panel-header .title{font-size:13px;font-weight:700;color:#edf0f2;opacity:.57;margin-top:20px;width:100%}.gd-side-panel-wrapper .gd-side-panel-header .close,.gd-side-panel-wrapper .gd-side-panel-header .save{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.gd-side-panel-wrapper .gd-side-panel-header ::ng-deep gd-button .text{padding:0}.gd-side-panel-wrapper .gd-side-panel-body{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-flow:column;overflow:visible;overflow-y:auto;overflow-x:hidden;height:100%}@media (max-width:1037px){.gd-side-panel-wrapper{width:100%;position:absolute;left:0;right:0;top:0;bottom:0}.gd-side-panel-wrapper.only-title{height:60px!important}}"]}]}],t.ctorParameters=function(){return[]},t.propDecorators={title:[{type:e.Input}],icon:[{type:e.Input}],closable:[{type:e.Input}],saveable:[{type:e.Input}],hideSidePanel:[{type:e.Output}],saveInSidePanel:[{type:e.Output}]},t}();var x=function(){function t(){var t=this;this.resizeSubject=new n.Subject,this.width=window.innerWidth,this.height=window.innerHeight,this._resize$=n.fromEvent(window,"resize").pipe(i.debounceTime(200),i.distinctUntilChanged(),i.startWith({target:{innerWidth:window.innerWidth,innerHeight:window.innerHeight}}),i.tap((function(e){t.resizeSubject.next(e.target),t.width=e.target.innerWidth,t.height=e.target.innerHeight}))),this._resize$.subscribe()}return Object.defineProperty(t.prototype,"onResize",{get:function(){return this.resizeSubject.asObservable()},enumerable:!0,configurable:!0}),t.prototype.isMobile=function(){return this.width<=425},t.prototype.isTablet=function(){return this.width<=1024},t.prototype.isDesktop=function(){return!this.isMobile()&&!this.isTablet()},t.prototype.getWidth=function(){return this.width},t.prototype.getHeight=function(){return this.height},t.prototype.isEdge=function(){return window.navigator.userAgent.toLowerCase().indexOf("edge")>-1},t.prototype.isFirefox=function(){return navigator.userAgent.toLowerCase().indexOf("firefox")>-1},t}();var w=function(){function t(t){var e=this;this.iconOnly=!0,this.intent="default",this.disabled=!1,this.toggle=!1,this.iconRegular=!1,this.elementPosition=0,this.showToolTip=!1,this.isDesktop=t.isDesktop(),t.onResize.subscribe((function(o){e.isDesktop=t.isDesktop()}))}return t.prototype.iconButtonClass=function(){return this.iconOnly?"icon-button":""},t.prototype.onHovering=function(){this.isDesktop&&!this.disabled&&(this.className+=" active")},t.prototype.onUnhovering=function(){this.isDesktop&&!this.disabled&&(this.className=this.cleanAll(this.className," active"))},t.prototype.cleanAll=function(t,e){for(;t&&-1!==t.indexOf(e);)t=t.replace(e,"");return t},t.decorators=[{type:e.Component,args:[{selector:"gd-button",template:'
\n \n \n
\n \n
\n
\n',styles:[".icon-button{padding:0!important;margin:0 7px}.button{padding:0 10px;font-size:14px;color:#959da5;cursor:pointer;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;align-content:center;-webkit-box-pack:center;justify-content:center;min-width:37px;height:37px;text-align:center;position:relative;white-space:nowrap}.button.inactive{cursor:not-allowed;opacity:.4}.button.active *{color:#ccd0d4}.button.primary{background-color:#3e4e5a;color:#fff}.button.primary.active{color:#fff;background-color:#688296}.button.brand{background-color:#25c2d4;color:#fff}.button.brand.active{color:#fff;background-color:#688296}.button .text{font-size:13px;padding-left:10px}.button .button-tooltip{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}@media (max-width:1037px){.button{font-size:22px}.arrow-button{margin:5px}}"]}]}],t.ctorParameters=function(){return[{type:x}]},t.propDecorators={iconOnly:[{type:e.Input}],intent:[{type:e.Input}],disabled:[{type:e.Input}],icon:[{type:e.Input}],iconClass:[{type:e.Input}],tooltip:[{type:e.Input}],className:[{type:e.Input}],toggle:[{type:e.Input}],iconSize:[{type:e.Input}],iconRegular:[{type:e.Input}],elementPosition:[{type:e.Input}]},t}();var y=function(){function t(){}return t.prototype.ngOnInit=function(){},t.decorators=[{type:e.Component,args:[{selector:"gd-logo",template:'\n\n',styles:[".logo{background-color:#25c2d4;height:60px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center}.text{color:#fff;font-size:15px;text-transform:uppercase;margin:0 14px}.icon{display:none;font-size:32px;color:rgba(255,255,255,.5);margin:14px}@media (max-width:1037px){.logo{width:60px;height:60px}.logo .text{display:none}.logo .icon{display:block}}"]}]}],t.ctorParameters=function(){return[]},t.propDecorators={logo:[{type:e.Input}],icon:[{type:e.Input}]},t}();var k=function(){function t(){this.position=0,this.visibility="hidden"}return t.prototype.getClass=function(){return 0===this.position?"tooltip":"tooltip "+(this.position>0?"last-element":"first-element")},Object.defineProperty(t.prototype,"show",{set:function(t){this.visibility=t?"shown":"hidden"},enumerable:!0,configurable:!0}),t.prototype.ngOnInit=function(){},t.decorators=[{type:e.Component,args:[{selector:"gd-tooltip",template:'\n',styles:['.tooltip{position:absolute;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;background-color:#000;color:#fff;text-align:center;border-radius:0;padding:5px;z-index:1;font-size:10px;height:11px;line-height:11px;-ms-grid-row-align:center;align-self:center;margin:0!important}.first-element{margin-left:10px!important}.last-element{margin-left:-10px!important}.tooltip.hidden{visibility:hidden}.tooltip.shown{visibility:visible}.shown:after{content:" ";position:absolute;bottom:100%;left:50%;margin-left:-5px;border:5px solid transparent;border-bottom-color:#000}']}]}],t.ctorParameters=function(){return[]},t.propDecorators={text:[{type:e.Input}],position:[{type:e.Input}],show:[{type:e.Input}]},t}();var S=function(){function t(){}return t.VIEWER_APP="/viewer",t.SIGNATURE_APP="/signature",t.ANNOTATION_APP="/annotation",t.SEARCH_APP="/search",t.EDITOR_APP="/editor",t.COMPARISON_APP="/comparison",t.CONVERSION_APP="/conversion",t.METADATA_APP="/metadata",t.DEFAULT_API_ENDPOINT=window.location.href,t.LOAD_FILE_TREE="/loadFileTree",t.LOAD_CONFIG="/loadConfig",t.LOAD_DOCUMENT_DESCRIPTION="/loadDocumentDescription",t.LOAD_DOCUMENT_PAGE="/loadDocumentPage",t.LOAD_DOCUMENT_PROPERTIES="/loadProperties",t.LOAD_DOCUMENT_PROPERTIES_NAMES="/loadPropertiesNames",t.SAVE_PROPERTY="/saveProperty",t.REMOVE_PROPERTY="/removeProperty",t.ROTATE_DOCUMENT_PAGE="/rotateDocumentPages",t.UPLOAD_DOCUMENTS="/uploadDocument",t.DOWNLOAD_DOCUMENTS="/downloadDocument",t.LOAD_PRINT="/loadPrint",t.LOAD_PRINT_PDF="/printPdf",t.LOAD_THUMBNAILS="/loadThumbnails",t.LOAD_FORMATS="/loadFormats",t.SAVE_FILE="/saveFile",t.CREATE_FILE="/createFile",t.COMPARE_FILES="/compare",t.CONVERT_FILE="/convert",t.DELETE_SIGNATURE_FILE="/deleteSignatureFile",t.REMOVE_FROM_INDEX="/removeFromIndex",t.GET_FILE_STATUS="/getFileStatus",t.SAVE_OPTICAL_CODE="/saveOpticalCode",t.SAVE_TEXT="/saveText",t.SAVE_IMAGE="/saveImage",t.SAVE_STAMP="/saveStamp",t.SIGN="/sign",t.DOWNLOAD_SIGNED="/downloadSigned",t.LOAD_SIGNATURE_IMAGE="/loadSignatureImage",t.ANNOTATE="/annotate",t.SEARCH="/search",t.ADD_FILES_TO_INDEX="/addFilesToIndex",t.httpOptionsJson={headers:new p.HttpHeaders({"Content-Type":"application/json"})},t.httpOptionsJsonResponseTypeBlob={headers:new p.HttpHeaders({"Content-Type":"application/json"}),responseType:"blob"},t}();var C=function(){function t(){this.apiEndpoint=S.DEFAULT_API_ENDPOINT}return Object.defineProperty(t.prototype,"apiEndpoint",{get:function(){return this._apiEndpoint},set:function(t){this._apiEndpoint=t&&t.trim().endsWith("/")?t.substring(0,t.length-1):t},enumerable:!0,configurable:!0}),t.prototype.getConfigEndpoint=function(t){return(this.apiEndpoint.endsWith(t)?this.apiEndpoint:this.apiEndpoint+t)+S.LOAD_CONFIG},t.prototype.getViewerApiEndpoint=function(){return this._apiEndpoint.endsWith(S.VIEWER_APP)?this._apiEndpoint:this._apiEndpoint+S.VIEWER_APP},t.prototype.getEditorApiEndpoint=function(){return this._apiEndpoint.trim().endsWith(S.EDITOR_APP)?this._apiEndpoint:this._apiEndpoint+S.EDITOR_APP},t.prototype.getComparisonApiEndpoint=function(){return this._apiEndpoint.trim().endsWith(S.COMPARISON_APP)?this._apiEndpoint:this._apiEndpoint+S.COMPARISON_APP},t.prototype.getConversionApiEndpoint=function(){return this._apiEndpoint.trim().endsWith(S.CONVERSION_APP)?this._apiEndpoint:this._apiEndpoint+S.CONVERSION_APP},t.prototype.getMetadataApiEndpoint=function(){return this._apiEndpoint.trim().endsWith(S.METADATA_APP)?this._apiEndpoint:this._apiEndpoint+S.METADATA_APP},t.prototype.getSignatureApiEndpoint=function(){return this._apiEndpoint.endsWith(S.SIGNATURE_APP)?this._apiEndpoint:this._apiEndpoint+S.SIGNATURE_APP},t.prototype.getAnnotationApiEndpoint=function(){return this._apiEndpoint.endsWith(S.ANNOTATION_APP)?this._apiEndpoint:this._apiEndpoint+S.ANNOTATION_APP},t.prototype.getSearchApiEndpoint=function(){return this._apiEndpoint.endsWith(S.SEARCH_APP)?this._apiEndpoint:this._apiEndpoint+S.SEARCH_APP},t.decorators=[{type:e.Injectable}],t.ctorParameters=function(){return[]},t}();var _=function(){function t(){}return t.PasswordRequired="gd-password-required",t.ErrorMessage="gd-error-message",t.BrowseFiles="gd-browse-files",t.CreateDocument="gd-create-document",t.OperationSuccess="gd-success-modal",t.DrawHandSignature="gd-draw-hand-signature",t.DrawStampSignature="gd-draw-stamp-signature",t.InformationMessage="gd-information-message",t}();var P=function(){function t(){this.modals=[]}return t.prototype.add=function(t){this.modals.push(t)},t.prototype.remove=function(t){this.modals=this.modals.filter((function(e){return e.id!==t}))},t.prototype.open=function(t){var e=this.modals.filter((function(e){return e.id===t}))[0];e&&e.open()},t.prototype.close=function(t){var e=this.modals.filter((function(e){return e.id===t}))[0];e&&e.close()},t}();var E=function(){function t(t,o){this.modalService=t,this.visible=new e.EventEmitter,this.cancel=new e.EventEmitter,this.visibility=!1,this.element=o.nativeElement}return t.prototype.ngOnInit=function(){this.id?(document.body.appendChild(this.element),this.modalService.add(this)):console.error("modal must have an id")},t.prototype.ngOnDestroy=function(){this.modalService.remove(this.id),this.element.remove()},t.prototype.open=function(){this.visibility=!0,this.visible.emit(!0)},t.prototype.close=function(){event.preventDefault(),event.stopPropagation(),this.visibility=!1,this.visible.emit(!1)},t.prototype.onClose=function(t){t.stopPropagation(),t&&t.target&&"modalDialog"===t.target.id&&this.close()},t.prototype.cancelClose=function(){this.cancel.emit(!1),this.close()},t.decorators=[{type:e.Component,args:[{selector:"gd-modal",template:'
\n
\n
\n
\n\n
\n
×
\n

{{title}}

\n
\n\n
\n \n
\n\n \n
\n
\n\n\n',styles:["@import url(https://fonts.googleapis.com/css?family=Montserrat&display=swap);:host *{font-family:'Open Sans',Arial,Helvetica,sans-serif}.gd-modal{overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0;background-color:rgba(0,0,0,.5)}.gd-modal-dialog{box-shadow:#0005 0 0 10px;position:fixed;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);z-index:1051}.gd-modal-dialog ::ng-deep .button{-webkit-box-orient:unset!important;-webkit-box-direction:unset!important;flex-direction:unset!important}.gd-modal-content{background-color:#fff;height:100%;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.gd-modal-header{height:60px;padding:0 12px 0 24px;background-color:#3e4e5a}.gd-modal-close{position:absolute;right:12px;top:12px;cursor:pointer;color:#fff;width:37px;height:37px;text-align:center}.gd-modal-close span{font-size:18px;font-weight:900;height:19px;width:10px;line-height:36px}.gd-modal-title{font-size:16px;font-weight:400;padding-top:17px;padding-bottom:22px;margin:0;color:#fff}.gd-modal-body{background-color:#fff;overflow:hidden;overflow-y:auto;height:calc(100% - 75px)}.gd-modal-footer{height:auto}.gd-modal-footer>.btn{float:right;margin:20px 15px;padding:10px 20px;cursor:pointer;font-size:12px}@media (max-width:1037px){.gd-modal-dialog{width:100%;height:100%}.gd-modal-body{height:100%}}"]}]}],t.ctorParameters=function(){return[{type:P},{type:e.ElementRef}]},t.propDecorators={id:[{type:e.Input}],title:[{type:e.Input}],visible:[{type:e.Output}],cancel:[{type:e.Output}]},t}();var I=function(){};var O=function(){};var z=function(t,e){this.guid=t,this.password=e};var F=function(t){function e(e,o,n){var i=t.call(this,e,o)||this;return i.content=n,i}return f(e,t),e}(z);var D=function(){this.printAllowed=!0};var T=function(){};var A=function(){function t(){}return t.BadRequest=400,t.Unauthorized=401,t.Forbidden=403,t.NotFound=404,t.TimeOut=408,t.Conflict=409,t.InternalServerError=500,t}();var M=function(){function t(){}return t.getMousePosition=function(t){var e={x:0,y:0},o=window.event,n=t||o;if(n.pageX||o.pageX||o.screenX||n.touches&&n.touches[0]&&n.touches[0].pageX){var i=void 0!==n.pageX&&0!==n.pageX?n.pageX:o.pageX,r=void 0!==n.pageY&&0!==n.pageY?n.pageY:o.pageY,s=void 0!==o.screenX&&0!==o.screenY,a=void 0!==o.screenY&&0!==o.screenY;e.x=i||(s?o.screenX:n.touches[0].pageX),e.y=r||(a?o.screenY:n.touches[0].pageY)}else n.clientX&&(e.x=n.clientX+document.body.scrollLeft,e.y=n.clientY+document.body.scrollTop);return e},t.toRgb=function(t){var e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);if(e){var o=parseInt(e[1],16),n=parseInt(e[2],16),i=parseInt(e[3],16);return e?"rgb("+o+","+n+","+i+")":""}return t},t.toHex=function(t){if(t.match(/[0-9A-F]{6}|[0-9A-F]{3}$/i))return"#"===t.charAt(0)?t:"#"+t;if(!t.match(/^rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)$/))return"";var e=[parseInt(RegExp.$1,10),parseInt(RegExp.$2,10),parseInt(RegExp.$3,10)],o=function(t){if(t.length<2)for(var e=0,o=2-t.length;e0?t.map.unknown:t.map.folder:t.map[i]}return t.map.folder},t.map={folder:{format:"",icon:"folder"},pdf:{format:"Portable Document Format",icon:"file-pdf",unit:"pt"},doc:{format:"Microsoft Word",icon:"file-word",unit:"pt"},docx:{format:"Microsoft Word",icon:"file-word",unit:"pt"},docm:{format:"Microsoft Word",icon:"file-word",unit:"pt"},dot:{format:"Microsoft Word",icon:"file-word",unit:"pt"},dotx:{format:"Microsoft Word",icon:"file-word",unit:"pt"},dotm:{format:"Microsoft Word",icon:"file-word",unit:"pt"},xls:{format:"Microsoft Excel",icon:"file-excel",unit:"px"},xlsx:{format:"Microsoft Excel",icon:"file-excel",unit:"px"},xlsm:{format:"Microsoft Excel",icon:"file-excel",unit:"px"},xlsb:{format:"Microsoft Excel",icon:"file-excel",unit:"px"},xls2003:{format:"Microsoft Excel",icon:"file-excel",unit:"px"},xltx:{format:"Microsoft Excel",icon:"file-excel",unit:"px"},xltm:{format:"Microsoft Excel",icon:"file-excel",unit:"px"},ppt:{format:"Microsoft PowerPoint",icon:"file-powerpoint",unit:"pt"},pptx:{format:"Microsoft PowerPoint",icon:"file-powerpoint",unit:"pt"},pps:{format:"Microsoft PowerPoint",icon:"file-powerpoint",unit:"pt"},ppsx:{format:"Microsoft PowerPoint",icon:"file-powerpoint",unit:"pt"},vsd:{format:"Microsoft Visio",icon:"file-code",unit:"px"},vdx:{format:"Microsoft Visio",icon:"file-code",unit:"px"},vss:{format:"Microsoft Visio",icon:"file-code",unit:"px"},vsx:{format:"Microsoft Visio",icon:"file-code",unit:"px"},vst:{format:"Microsoft Visio",icon:"file-code",unit:"px"},vtx:{format:"Microsoft Visio",icon:"file-code",unit:"px"},vsdx:{format:"Microsoft Visio",icon:"file-code",unit:"px"},vdw:{format:"Microsoft Visio",icon:"file-code",unit:"px"},vstx:{format:"Microsoft Visio",icon:"file-code",unit:"px"},vssx:{format:"Microsoft Visio",icon:"file-code",unit:"px"},mpp:{format:"Microsoft Project",icon:"file-alt",unit:"pt"},mpt:{format:"Microsoft Project",icon:"file-alt",unit:"pt"},msg:{format:"Microsoft Outlook",icon:"file-alt",unit:"pt"},eml:{format:"Microsoft Outlook",icon:"file-alt",unit:"pt"},emlx:{format:"Microsoft Outlook",icon:"file-alt",unit:"pt"},one:{format:"Microsoft OneNote",icon:"file-word",unit:"pt"},odt:{format:"Open Document Text",icon:"file-word",unit:"pt"},ott:{format:"Open Document Text Template",icon:"file-word",unit:"pt"},ods:{format:"Open Document Spreadsheet",icon:"file-excel",unit:"px"},odp:{format:"Open Document Presentation",icon:"file-powerpoint",unit:"pt"},otp:{format:"Open Document Presentation",icon:"file-powerpoint",unit:"pt"},ots:{format:"Open Document Presentation",icon:"file-powerpoint",unit:"pt"},potx:{format:"Open Document Presentation",icon:"file-powerpoint",unit:"pt"},potm:{format:"Open Document Presentation",icon:"file-powerpoint",unit:"pt"},pptm:{format:"Open Document Presentation",icon:"file-powerpoint",unit:"pt"},ppsm:{format:"Open Document Presentation",icon:"file-powerpoint",unit:"pt"},rtf:{format:"Rich Text Format",icon:"file-alt",unit:"pt"},txt:{format:"Plain Text File",icon:"file-alt",unit:"pt"},csv:{format:"Comma-Separated Values",icon:"file-excel",unit:"px"},html:{format:"HyperText Markup Language",icon:"file-word",unit:"pt"},mht:{format:"HyperText Markup Language",icon:"file-word",unit:"pt"},mhtml:{format:"HyperText Markup Language",icon:"file-word",unit:"pt"},xml:{format:"Extensible Markup Language",icon:"file-word",unit:"pt"},xps:{format:"XML Paper Specification",icon:"file-word",unit:"pt"},dxf:{format:"AutoCAD Drawing File Format",icon:"file-image",unit:"px"},dwg:{format:"AutoCAD Drawing File Format",icon:"file-image",unit:"px"},bmp:{format:"Bitmap Picture",icon:"file-image",unit:"px"},gif:{format:"Graphics Interchange Format",icon:"file-image",unit:"px"},jpg:{format:"Joint Photographic Experts Group",icon:"file-image",unit:"px"},jpe:{format:"Joint Photographic Experts Group",icon:"file-image",unit:"px"},jpeg:{format:"Joint Photographic Experts Group",icon:"file-image",unit:"px"},jfif:{format:"Joint Photographic Experts Group",icon:"file-image",unit:"px"},png:{format:"Portable Network Graphics",icon:"file-image",unit:"px"},tiff:{format:"Tagged Image File Format",icon:"file-image",unit:"px"},tif:{format:"Tagged Image File Format",icon:"file-image",unit:"px"},psd:{format:"Tagged Image File Format",icon:"file-image",unit:"px"},svg:{format:"Tagged Image File Format",icon:"file-image",unit:"px"},jp2:{format:"Tagged Image File Format",icon:"file-image",unit:"px"},epub:{format:"Electronic Publication",icon:"file-pdf",unit:"pt"},ico:{format:"Windows Icon",icon:"file-image",unit:"px"},webp:{format:"Compressed Image",icon:"file-image",unit:"px"},mobi:{format:"Mobipocket eBook",icon:"file-pdf",unit:"pt"},tex:{format:"LaTeX Source Document",icon:"file-pdf",unit:"pt"},djvu:{format:"Multi-Layer Raster Image",icon:"file-alt",unit:"pt"},unknown:{format:"This format is not supported",icon:"file"}},t}();var R=function(){},L=function(){function t(){var t=this;this._uploadsChange=new n.Observable((function(e){return t._observer=e}))}return Object.defineProperty(t.prototype,"uploadsChange",{get:function(){return this._uploadsChange},enumerable:!0,configurable:!0}),t.prototype.changeFilesList=function(t){this._observer.next(t)},t}();var U=l,H=[{name:"Disc",icon:"hdd"},{name:"URL",icon:"link"}],B=function(){function t(t){this._uploadService=t,this.uploads=H,this.selectedFileGuid=new e.EventEmitter,this.selectedDirectory=new e.EventEmitter,this.urlForUpload=new e.EventEmitter,this.closing=new e.EventEmitter,this.showUploadUrl=!1,this.showUploadFile=!1}return t.prototype.ngOnInit=function(){},t.prototype.getSize=function(t){var e=t/1024/1024;if(e>1)return Math.round(100*e)/100+" MB";var o=t/1024;return o>1?Math.round(100*o)/100+" KB":t+" Bytes"},t.prototype.getFormatName=function(t){return j.find(t.name,t.directory).format},t.prototype.getFormatIcon=function(t){return j.find(t.name,t.directory).icon},t.prototype.choose=function(t){this.selectedFile=t,t.directory||t.isDirectory?this.selectedDirectory.emit(t.name):this.selectedFileGuid.emit(t.guid)},t.prototype.goUp=function(){if(this.selectedFile){var t=this.selectedFile.guid;t=t.length>0&&-1===t.indexOf("/")?"":t.replace(/\/[^\/]+\/?$/,""),this.selectedDirectory.emit(t)}},t.prototype.selectUpload=function(t){"URL"===t?this.showUploadUrl=!0:(this.showUploadUrl=!1,U("#gd-upload-input").trigger("click"))},t.prototype.refresh=function(t){t?(this.files=null,this.selectedDirectory.emit(""),this.showUploadUrl=!1,this.selectedFile=null):this.closing.emit(!0)},t.prototype.showSpinner=function(){return!this.files},t.prototype.uploadUrl=function(t){t&&(this.urlForUpload.emit(t),this.cleanUpload())},t.prototype.handleFileInput=function(t){this._uploadService.changeFilesList(t)},t.prototype.cleanUpload=function(){this.showUploadFile=!1,this.showUploadUrl=!1},t.decorators=[{type:e.Component,args:[{selector:"gd-browse-files-modal",template:'\n
\n
\n \n Drop file here to upload\n
\n
\n
\n \n
\n
\n \n \n \n Upload file\n \n \n \n \n \n
{{item.name}}
\n
\n
\n
\n
\n
\n
\n \n
\n \n
\n
\n
\n
\n
\n
\n
FILE
\n
SIZE
\n
\n
\n
\n
\n
\n
\n \n
\n
..
\n
\n
\n
\n \n
\n
{{file?.name}}
\n
{{getFormatName(file)}}
\n
\n
\n
\n {{getSize(file?.size)}}\n
\n
\n
\n
\n
\n \n  Loading... Please wait.\n
\n
\n
\n',styles:[".gd-modal-table{width:100%;text-align:left}#gd-browse-section{width:1036px;height:561px;overflow-y:auto}.list-files-header{height:60px;color:#6e6e6e;font-size:13px;font-weight:700;background-color:#f4f4f4;margin-top:24px}.list-files-header.upload-url{margin-top:20px}.header-name{padding-left:24px;width:90%;line-height:60px}.header-size{padding-right:27px;line-height:60px}.file-size,.header-size{width:10%;color:#777;text-align:right}.file-description{display:-webkit-box;display:flex;width:90%;padding:18px 0 18px 24px;font-size:14px;-webkit-box-flex:1;flex:1;cursor:pointer;overflow:hidden}.file-size{font-size:12px;padding:0 27px 0 0;width:10%;line-height:79px}.list-files-header,.list-files-lines{display:-webkit-box;display:flex;width:100%;-webkit-box-pack:justify;justify-content:space-between}.gd-modal-spinner{background-color:#fff;width:100%;height:20px;text-align:center;font-size:16px}.gd-cancel-button{padding:7px;background:0 0;width:28px;overflow:hidden}.gd-cancel-button i{font-size:21px}.gd-file-name{white-space:nowrap;overflow:hidden;width:100%;text-overflow:ellipsis}.go-up{display:-webkit-box;display:flex;font-size:26px;cursor:pointer;color:#4b566c;height:79px}.go-up-dots{margin-left:20px;margin-top:22px;font-size:16px}.go-up-icon{display:block;padding:18px 0 18px 24px}.upload-panel{display:-webkit-box;display:flex;position:relative;width:100%}.upload-panel .context{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;width:100%;margin-left:24px;margin-top:24px;margin-right:24px}.upload-panel .context .context-actions{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;width:100%}.upload-panel .context .context-actions :last-child{margin-right:0}.upload-panel .context .context-actions ::ng-deep .button{height:37px;width:96px;padding:0;-webkit-box-pack:center;justify-content:center}.upload-panel .context .context-actions ::ng-deep .button ::ng-deep .text{font-size:10px}.upload-panel .context .context-panel{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;width:100%;margin-top:20px}.upload-panel .context .context-panel .upload-url{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;width:100%}.upload-panel .context .context-panel .upload-url .url-input{width:100%;height:27px;border:1px solid #25c2d4;font-size:14px;padding-left:6px}.upload-panel .context .context-panel .upload-url .url-check{width:31px;height:31px;color:#fff;font-size:15px;background-color:#25c2d4}.upload-panel .context .context-panel .upload-url .url-check .ng-fa-icon{display:block;padding:8px}.upload-panel gd-drop-down{margin-right:10px}.file-description .ng-fa-icon.fa-file-pdf{color:#e04e4e}.file-description .ng-fa-icon.fa-file-word{color:#539cf0}.file-description .ng-fa-icon.fa-file-powerpoint{color:#e29e1e}.file-description .ng-fa-icon.fa-file-excel{color:#7cbc46}.file-description .ng-fa-icon.fa-file-image{color:#c375ed}.file-description .ng-fa-icon.fa-file,.file-description .ng-fa-icon.fa-file-alt,.file-description .ng-fa-icon.fa-file-text .fa-folder{color:#4b566c}.file-description .ng-fa-icon{font-size:32px}.file-name{font-size:16px;color:#6e6e6e;overflow:hidden;text-overflow:ellipsis}.file-name-format{padding-left:11px;overflow:hidden}.file-format{font-size:10px;padding-top:3px;color:#acacac}.go-up,.list-files-lines{border-bottom:1px solid #e7e7e7}.list-files-lines:hover{background-color:#e5e5e5}.gd-dnd-wrap{background-color:#fff;cursor:default;position:absolute;width:100%;height:calc(100% - 60px);background:rgba(255,255,255,.7);z-index:1;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center}.dnd-wrapper{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;top:259px;position:absolute}.dnd-wrapper .text{color:#6e6e6e;font-size:14px}.dnd-wrapper .icon{display:-webkit-box;display:flex;width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}@media (max-width:1037px){.file-size,.header-size{width:18%}.gd-dnd-wrap{width:95%}#gd-browse-section{width:100%;height:calc(100% - 146px)}}"]}]}],t.ctorParameters=function(){return[{type:L}]},t.propDecorators={files:[{type:e.Input}],uploadConfig:[{type:e.Input}],selectedFileGuid:[{type:e.Output}],selectedDirectory:[{type:e.Output}],urlForUpload:[{type:e.Output}],closing:[{type:e.Output}]},t}();var N=function(){function t(){this._observer=new n.Subject,this._zoomChange=this._observer.asObservable()}return Object.defineProperty(t.prototype,"zoom",{get:function(){return this._zoom},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"zoomChange",{get:function(){return this._zoomChange},enumerable:!0,configurable:!0}),t.prototype.changeZoom=function(t){this._zoom=t,this._observer.next(t)},t.prototype.createZoomOption=function(t,e,o){return void 0===o&&(o=!1),{value:t,name:e,separator:o}},t.prototype.zoomOptions=function(t,e){return[this.createZoomOption(25,"25%"),this.createZoomOption(50,"50%"),this.createZoomOption(100,"100%"),this.createZoomOption(150,"150%"),this.createZoomOption(200,"200%"),this.createZoomOption(300,"300%"),this.createZoomOption(0,"",!0),this.createZoomOption(t,"Fit Width"),this.createZoomOption(e,"Fit Height")]},t}();var W=function(){function t(){var t=this;this._checkPreload=new n.Observable((function(e){return t._observer=e}))}return Object.defineProperty(t.prototype,"checkPreload",{get:function(){return this._checkPreload},enumerable:!0,configurable:!0}),t.prototype.changeLastPageInView=function(t){this._observer&&this._observer.next(t)},t}();var $=function(){function t(t){this._pagePreloadService=t,this._currentPage=0,this._countPages=0,this._observer=new n.BehaviorSubject(null),this._navigate=this._observer.asObservable()}return Object.defineProperty(t.prototype,"navigate",{get:function(){return this._navigate},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"countPages",{get:function(){return this._countPages},set:function(t){this._countPages=t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"currentPage",{get:function(){return this._currentPage},set:function(t){this._currentPage=t},enumerable:!0,configurable:!0}),t.prototype.nextPage=function(){this._currentPage1&&(this._currentPage--,this.navigateTo(this._currentPage))},t.prototype.toLastPage=function(){this._currentPage=this._countPages,this.navigateTo(this._currentPage)},t.prototype.toFirstPage=function(){this._currentPage=1,this.navigateTo(this._currentPage)},t.prototype.navigateTo=function(t){this.currentPage=t,this._pagePreloadService.changeLastPageInView(t),this._observer.next(t)},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[{type:W}]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t(e.ɵɵinject(W))},token:t,providedIn:"root"}),t}();var V=l,q=function(){function t(t,e,o,n){var i=this;this._elementRef=t,this._zoomService=e,this._windowService=o,this._navigateService=n,this.wait=!1,this.docWidth=null,this.docHeight=null,this.viewportWidth=null,this.viewportHeight=null,this.scale=null,this.lastScale=null,this.container=null,this.doc=null,this.x=0,this.lastX=0,this.y=0,this.lastY=0,this.pinchCenter=null,this.pinchCenterOffset=null,this.curWidth=0,this.curHeight=0,e.zoomChange.subscribe((function(t){i.zoom=t})),this.isDesktop=o.isDesktop(),this._navigateService.navigate.subscribe((function(t){i.selectedPage=t}))}return t.prototype.ngOnInit=function(){this.ifPresentation()&&(this.selectedPage=this._navigateService.currentPage)},t.prototype.ngOnChanges=function(){},t.prototype.ngAfterViewInit=function(){this.doc=this._elementRef.nativeElement.children.item(0).children.item(0),this.container=this._elementRef.nativeElement,this.docWidth=this.doc.clientWidth,this.docHeight=this.doc.clientHeight,this.viewportWidth=this.doc.offsetWidth,this.scale=this.viewportWidth/this.docWidth*this._zoomService.zoom/100,this.lastScale=this.scale,this.viewportHeight=this.container.offsetHeight,this.curWidth=this.docWidth*this.scale,this.curHeight=this.docHeight*this.scale;new d(this.container)},t.prototype.ifExcel=function(){return"Microsoft Excel"===j.find(this.file.guid,!1).format},t.prototype.ifPresentation=function(){return"Microsoft PowerPoint"===j.find(this.file.guid,!1).format},t.prototype.getDimensionWithUnit=function(t,e){return this.ifPresentation()&&!this.isVisible(e)?0:t+(this.mode?j.find(this.file.guid,!1).unit:"px")},t.prototype.ifEdge=function(){return navigator.userAgent.toLowerCase().indexOf("edge")>-1},t.prototype.ngAfterViewChecked=function(){var t=this._elementRef.nativeElement.querySelectorAll(".gd-wrapper").item(0);t&&V(t).trigger("focus")},t.prototype.isVisible=function(t){return!this.ifPresentation()||t===this.selectedPage},t.decorators=[{type:e.Component,args:[{selector:"gd-document",template:'
Please wait...
\n
\n
\n
\n \n
\n
\n \n
\n',styles:[":host{-webkit-box-flex:1;flex:1;-webkit-transition:.4s;transition:.4s;background-color:#e7e7e7;height:100%;overflow:scroll;touch-action:auto!important}:host .document{-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;user-select:text!important;touch-action:auto!important}.page{display:inline-block;background-color:#fff;margin:20px;box-shadow:0 3px 6px rgba(0,0,0,.16);-webkit-transition:.3s;transition:.3s}.page.excel{overflow:auto}.page.presentation{margin:0;-webkit-transition:unset;transition:unset}.page.presentation.active{margin:20px}.wait{position:absolute;top:55px;left:Calc(30%)}.panzoom{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;flex-wrap:wrap;-webkit-box-pack:center;justify-content:center;align-content:flex-start}@media (max-width:1037px){.page{min-width:unset!important;min-height:unset!important;margin:5px 0}}"]}]}],t.ctorParameters=function(){return[{type:e.ElementRef},{type:N},{type:x},{type:$}]},t.propDecorators={mode:[{type:e.Input}],preloadPageCount:[{type:e.Input}],file:[{type:e.Input}],selectedPage:[{type:e.Input}]},t}();var G=function(){function t(){}return t.prototype.ngOnInit=function(){!!/(MSIE|Trident\/|Edge\/)/i.test(navigator.userAgent)&&0===this.number&&(this.editable=!1)},t.prototype.ngOnChanges=function(t){this.data=null!==this.data?this.data.replace(/>\s+<").replace(/\uFEFF/g,"").replace(/href="\/viewer/g,'href="http://localhost:8080/viewer').replace(/src="\/viewer/g,'src="http://localhost:8080/viewer').replace(/data="\/viewer/g,'data="http://localhost:8080/viewer'):null;this.imgData="data:image/png;base64,",this.isHtml||(this.imgData+=this.data)},t.decorators=[{type:e.Component,args:[{selector:"gd-page",template:'
\n
\n \n
\n \n  Loading... Please wait.\n
\n
\n',styles:[".gd-page-spinner{margin-top:150px;text-align:center}.gd-wrapper{width:inherit;height:inherit}.gd-wrapper div{width:100%}::ng-deep .gd-highlight{background-color:#ff0}::ng-deep .gd-highlight-select{background-color:#ff9b00}"]}]}],t.ctorParameters=function(){return[]},t.propDecorators={angle:[{type:e.Input}],width:[{type:e.Input}],height:[{type:e.Input}],number:[{type:e.Input}],data:[{type:e.Input}],isHtml:[{type:e.Input}],editable:[{type:e.Input}]},t}();var X=function(){function t(t){this.sanitizer=t}return t.prototype.transform=function(t){return this.sanitizer.bypassSecurityTrustHtml(t)},t.decorators=[{type:e.Pipe,args:[{name:"safeHtml"}]}],t.ctorParameters=function(){return[{type:u.DomSanitizer}]},t}();var Z=function(){function t(t){this.sanitizer=t}return t.prototype.transform=function(t){return this.sanitizer.bypassSecurityTrustResourceUrl(t)},t.decorators=[{type:e.Pipe,args:[{name:"safeResourceHtml"}]}],t.ctorParameters=function(){return[{type:u.DomSanitizer}]},t}();var Y=function(){function t(t){this.sanitizer=t}return t.prototype.transform=function(t){return this.sanitizer.bypassSecurityTrustStyle(t)},t.decorators=[{type:e.Pipe,args:[{name:"safeStyle"}]}],t.ctorParameters=function(){return[{type:u.DomSanitizer}]},t}();var J=function(){function t(){}return t.prototype.transform=function(t,e){if(!e)return t;var o=new RegExp(e,"gi");return t.replace(o,"$&")},t.decorators=[{type:e.Pipe,args:[{name:"highlight"}]}],t}(),K=function(){function t(t){this._uploadService=t,this.closeUpload=new e.EventEmitter}return t.prototype.ngOnInit=function(){},t.prototype.handleFileInput=function(t){this._uploadService.changeFilesList(t),this.onCloseUpload()},t.prototype.onCloseUpload=function(){this.closeUpload.emit(!0)},t.prototype.close=function(t){"gd-dropZone"===t.target.id&&this.onCloseUpload()},t.decorators=[{type:e.Component,args:[{selector:"gd-upload-file-zone",template:'
\n
\n \n
\n

Drag & Drop your files here

\n

OR

\n
\n \n
\n
\n',styles:[".gd-drag-n-drop-wrap{border:2px dashed #ccc;background-color:#f8f8f8;text-align:center;cursor:default;position:absolute;width:-webkit-fill-available;left:1px;display:-webkit-box;display:flex;align-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:center;justify-content:center;opacity:.9;z-index:1}.gd-drag-n-drop-wrap h2{color:#959da5;margin:5px 0;font-size:15px;font-weight:300}.gd-drag-n-drop-wrap h4{color:#cacaca;font-weight:300;font-size:12px;margin:10px 0 15px}.gd-drag-n-drop-icon .fa-cloud-download-alt{color:#d1d1d1;font-size:110px}.gd-drag-n-drop-buttons i{margin-right:5px}.gd-drag-n-drop-buttons .btn{width:134px;height:35px;margin:0 10px;font-size:12px;font-weight:400}.gd-drag-n-drop-wrap.hover{background:#ddd;border-color:#aaa}"]}]}],t.ctorParameters=function(){return[{type:L}]},t.propDecorators={closeUpload:[{type:e.Output}]},t}();var Q=function(){function t(t){this._uploadFilesService=t,this.closing=new e.EventEmitter,this.opening=new e.EventEmitter,this.dropped=new e.EventEmitter,this.active=!1,this.dragCounter=0}return t.prototype.onDragEnter=function(t){t.preventDefault(),t.stopPropagation(),this.dragCounter++,this.active=!0,this.opening.emit(!0)},t.prototype.onDragOver=function(t){return t.preventDefault(),t.stopPropagation(),!1},t.prototype.onDragLeave=function(t){t.preventDefault(),t.stopPropagation(),this.dragCounter--,0===this.dragCounter&&(this.active=!1,this.closeArea())},t.prototype.onDrop=function(t){t.preventDefault(),t.stopPropagation();var e=t.dataTransfer.files;e.length>0&&(this.active=!1,this.dropped.emit(!0),this._uploadFilesService.changeFilesList(e),this.closeArea())},t.prototype.onClick=function(t){this.closeArea()},t.prototype.closeArea=function(){this.closing.emit(!0),this.opening.emit(!1)},t.decorators=[{type:e.Directive,args:[{selector:"[gdDnd]"}]}],t.ctorParameters=function(){return[{type:L}]},t.propDecorators={closing:[{type:e.Output}],opening:[{type:e.Output}],dropped:[{type:e.Output}],active:[{type:e.HostBinding,args:["class.active"]}],onDragEnter:[{type:e.HostListener,args:["dragenter",["$event"]]}],onDragOver:[{type:e.HostListener,args:["dragover",["$event"]]}],onDragLeave:[{type:e.HostListener,args:["dragleave",["$event"]]}],onDrop:[{type:e.HostListener,args:["drop",["$event"]]}],onClick:[{type:e.HostListener,args:["click",["$event"]]}]},t}();var tt=l,et=function(){function t(){}return t.prototype.checkInViewport=function(t,e,o,n){if(void 0===e&&(e=100),void 0===o&&(o=0),void 0===n&&(n=.5),!t)return!1;var i=n,r=tt(window),s=r.scrollTop(),a=r.scrollLeft()+o,c=r.scrollLeft()+r.width()-10,p=r.scrollTop()+r.height();isNaN(e)&&(e=100);var l=e/100,d=tt(t).outerHeight()*l,u=tt(t).outerWidth()*l;if(!u||!d)return!1;var g=tt(t).offset(),h=g.left*l+u,f=g.top*l+d;if(!!(ch||pf))return!1;var m=parseFloat(Math.min(1,(f-s)/d).toFixed(2)),b=parseFloat(Math.min(1,(p-g.top*l)/d).toFixed(2));return parseFloat(Math.min(1,(h-a)/u).toFixed(2))*parseFloat(Math.min(1,(c-g.left*l)/u).toFixed(2))>=i&&m*b>=.5},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t},token:t,providedIn:"root"}),t}(),ot=l,nt=function(){function t(t,e,o,n,i,r){var s=this;this._elementRef=t,this._navigateService=e,this._pagePreloadService=o,this._zoomService=n,this._windowService=i,this._viewportService=r,this.zoom=100,this.loadedPagesSet=new Set,this.zoom=n.zoom?n.zoom:this.zoom,n.zoomChange.subscribe((function(t){s.zoom=t||s.zoom,s.refresh()}))}return t.prototype.ngAfterViewInit=function(){var t=this;this.zoom=this._zoomService.zoom?this._zoomService.zoom:this.zoom,this._navigateService.navigate.subscribe((function(e){t.currentPage=e,t.scrollToPage(e)})),this.refresh()},t.prototype.scrolling=function(){this.refresh()},t.prototype.resizing=function(){this.refresh()},t.prototype.scrollToPage=function(t){var e=this._elementRef.nativeElement,o=this.getPage(t),n=t>0?this.getPage(t-1):null,i=n&&ot(n).offset().top===ot(o).offset().top;if(!this._viewportService.checkInViewport(o,this.zoom)||!i){var r={left:0,top:this.calculateOffset(t)};e&&e.scroll(r)}},t.prototype.getChildren=function(){var t=this._elementRef?this._elementRef.nativeElement:null;if(t)return t.children.item(0).children.item(0).children},t.prototype.getPage=function(t){var e=this._elementRef?this._elementRef.nativeElement:null;if(e)return e.children.item(0).children.item(0).children.item(t-1)},t.prototype.calculateOffset=function(t){for(var e=this._windowService.isFirefox()?1:this.countPagesOnWidth(),o=this._windowService.isDesktop()?40:10,n=0,i=1;i0?s*this.getZoom()+o:0}return n},t.prototype.countPagesOnWidth=function(){var t=this.getPage(1),e=Math.floor((this.getWidth()-150)/(t.getBoundingClientRect().width*this.getZoom()));return 0===e?1:e},t.prototype.refresh=function(){var t,e=!1,o=this.getPage(this.currentPage),n=this.currentPage&&o?o.getBoundingClientRect():null;for(t=1;t0?this.mouseWheelUp.emit(t):e<0&&this.mouseWheelDown.emit(t)},t.decorators=[{type:e.Directive,args:[{selector:"[gdMouseWheel]"}]}],t.propDecorators={mouseWheelUp:[{type:e.Output}],mouseWheelDown:[{type:e.Output}],onMouseWheelChrome:[{type:e.HostListener,args:["mousewheel",["$event"]]}],onMouseWheelFirefox:[{type:e.HostListener,args:["DOMMouseScroll",["$event"]]}],onMouseWheelIE:[{type:e.HostListener,args:["onmousewheel",["$event"]]}]},t}();var rt=function(){function t(t,e,o){this._zoomService=t,this._windowService=e,this.zoomActive=!0,this.el=o}return t.prototype.ngOnDestroy=function(){},t.prototype.ngOnChanges=function(){this.setStyles(this._zoomService.zoom),this.resizePages(this._zoomService.zoom)},t.prototype.ngOnInit=function(){var t=this;this.zoomActive&&(this.setStyles(this._zoomService.zoom),this._zoomService.zoomChange.subscribe((function(e){t.setStyles(e),t.resizePages(e)})))},t.prototype.setStyles=function(t){if(this.zoomActive){var e=100===t?1:t/100;this._windowService.isEdge()?this.zoomInt=e:this.zoomInt=null,this._windowService.isEdge()?(this.transform="",this.transformOrigin=""):(this.transform="scale("+e+")",this.transformOrigin="top left");var o=0;this.file.pages.forEach((function(t){t.width>o&&(o=t.width)})),this.minWidth=o+j.find(this.file.guid,!1).unit}},t.prototype.getScrollWidth=function(t){return t.offsetWidth-t.clientWidth},t.prototype.getScrollHeight=function(t){return t.offsetHeight-t.clientHeight},t.prototype.resizePages=function(t){var e=100===t?1:t/100,o=this.el.nativeElement.parentElement.offsetWidth,n=this.el.nativeElement.parentElement.offsetHeight,i=this.getScrollWidth(this.el.nativeElement.parentElement),r=this.getScrollHeight(this.el.nativeElement.parentElement);this.width=o/e-i/e+"px",this.height=n/e-r/e+"px"},t.prototype.ngAfterViewInit=function(){this.setStyles(this._zoomService.zoom)},t.decorators=[{type:e.Directive,args:[{selector:"[gdZoom]"}]}],t.ctorParameters=function(){return[{type:N},{type:x},{type:e.ElementRef}]},t.propDecorators={zoomActive:[{type:e.Input}],file:[{type:e.Input}],zoomInt:[{type:e.HostBinding,args:["style.zoom"]}],transform:[{type:e.HostBinding,args:["style.transform"]}],transformOrigin:[{type:e.HostBinding,args:["style.transform-origin"]}],width:[{type:e.HostBinding,args:["style.width"]}],height:[{type:e.HostBinding,args:["style.height"]}],minWidth:[{type:e.HostBinding,args:["style.min-width"]}]},t}();var st=function(){function t(){this._observer=new n.Subject,this._onClose=this._observer.asObservable()}return Object.defineProperty(t.prototype,"onClose",{get:function(){return this._onClose},enumerable:!0,configurable:!0}),t.prototype.close=function(t){this._observer.next(t)},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t},token:t,providedIn:"root"}),t}();var at=function(){function t(t){var o=this;this._onCloseService=t,this.disabled=!1,this.selected=new e.EventEmitter,this.isOpen=!1,t.onClose.subscribe((function(){o.close()}))}return t.prototype.open=function(){this.disabled||(this.isOpen=!0)},t.prototype.close=function(){this.isOpen=!1},t.prototype.onClickOutside=function(t){this.close()},t.prototype.toggle=function(t){t.preventDefault(),t.stopPropagation(),this.disabled||(this.isOpen=!this.isOpen)},t.prototype.select=function(t,e){t.preventDefault(),t.stopPropagation(),this.selected.emit(e),this.close()},t.decorators=[{type:e.Component,args:[{selector:"gd-select",template:'
\n
\n {{showSelected?.name}}\n
\n \n \n \n
\n',styles:[".select{min-width:50px;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;color:#959da5}.selected-value{font-size:14px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:clip;max-width:70px}.selected-value.inactive{cursor:not-allowed;color:#ccc}.nav-caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-right:4px solid transparent;border-left:4px solid transparent;cursor:pointer}.nav-caret.inactive{cursor:not-allowed;color:#ccc}.dropdown-menu{position:absolute;top:49px;z-index:1000;float:left;min-width:96px;list-style:none;font-size:13px;text-align:left;background-color:#fff;box-shadow:0 3px 6px rgba(0,0,0,.3);background-clip:padding-box}.dropdown-menu .option{display:block;padding:7px 0 7px 7px;clear:both;font-weight:400;line-height:1.42857143;white-space:nowrap;cursor:pointer;font-size:10px}.dropdown-menu .option:hover{background-color:#25c2d4;color:#fff!important}.dropdown-menu-separator{height:1px;overflow:hidden;background-color:#f4f4f4;padding:0!important}"]}]}],t.ctorParameters=function(){return[{type:st}]},t.propDecorators={options:[{type:e.Input}],disabled:[{type:e.Input}],showSelected:[{type:e.Input}],selected:[{type:e.Output}],isOpen:[{type:e.Input}],icon:[{type:e.Input}]},t}();var ct=function(){function t(){}return t.prototype.updateCursor=function(){this.cursor=!!this.dis},t.prototype.ngOnInit=function(){this.updateCursor()},t.prototype.ngOnChanges=function(t){this.updateCursor()},t.decorators=[{type:e.Directive,args:[{selector:"[gdDisabledCursor]"}]}],t.ctorParameters=function(){return[]},t.propDecorators={dis:[{type:e.Input}],cursor:[{type:e.HostBinding,args:["class.inactive"]}]},t}();var pt=function(){function t(){this.withMargin=!0}return t.prototype.updateCursor=function(){"string"==typeof this.angle&&(this.angle=parseInt(this.angle,10)),this.angle?(this.animation="none",this.transition="none",this.transform="rotate("+this.angle+"deg)"):0===this.angle&&this.animation&&(this.animation=null,this.transition=null,this.transform=null),this.withMargin&&(90===this.angle||270===this.angle||-90===this.angle||-270===this.angle?this.isHtmlMode?this.isLandscape()?this.margin="164px 254px":this.margin="-111px 254px":this.isLandscape()?this.margin="129px 100px -79px":this.margin="-72px 100px -79px":-180===this.angle||180===this.angle?this.margin="280px":this.margin=null)},t.prototype.isLandscape=function(){return this.width>this.height},t.prototype.ngOnInit=function(){this.updateCursor()},t.prototype.ngOnChanges=function(t){this.updateCursor()},t.decorators=[{type:e.Directive,args:[{selector:"[gdRotation]"}]}],t.ctorParameters=function(){return[]},t.propDecorators={angle:[{type:e.Input}],isHtmlMode:[{type:e.Input}],width:[{type:e.Input}],height:[{type:e.Input}],withMargin:[{type:e.Input}],animation:[{type:e.HostBinding,args:["style.animation"]}],transition:[{type:e.HostBinding,args:["style.transition-property"]}],transform:[{type:e.HostBinding,args:["style.transform"]}],margin:[{type:e.HostBinding,args:["style.margin"]}]},t}();var lt=function(){function t(){this.fileDropped=new e.EventEmitter,this.showUploadFile=!1}return t.prototype.ngOnInit=function(){},t.prototype.dropped=function(t){t&&(this.fileDropped.emit(t),this.showUploadFile=!1)},t.decorators=[{type:e.Component,args:[{selector:"gd-init-state",template:'
\n
\n \n \n \n \n
\n
\n \n {{text}}\n
\n
\n',styles:[".wrapper{color:#959da5;background-color:#e7e7e7;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;width:100%;height:100%}.icon{font-size:65px;margin-bottom:43px;display:-webkit-box;display:flex;color:#959da5}.start{font-size:15px;text-align:center;color:#959da5}.gd-drag-n-drop-wrap.active{background-color:#fff;position:fixed;top:0;background:rgba(255,255,255,.8)}.gd-drag-n-drop-wrap.active .init-state-wrapper{position:absolute;opacity:.2;top:unset}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper{top:0;z-index:999}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper .icon{width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}.gd-drag-n-drop-wrap.active .text{color:#6e6e6e;font-size:14px}.init-state-dnd-wrapper,.init-state-wrapper{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;width:250px;height:250px;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center}.init-state-wrapper{top:-60px;position:relative}"]}]}],t.ctorParameters=function(){return[]},t.propDecorators={icon:[{type:e.Input}],text:[{type:e.Input}],fileDropped:[{type:e.Output}]},t}();var dt=function(){function t(){var t=this;this._render=new n.Observable((function(e){return t._observer=e})),this._renderBlob=new n.Observable((function(e){return t._observerBlob=e}))}return Object.defineProperty(t.prototype,"renderPrint",{get:function(){return this._render},enumerable:!0,configurable:!0}),t.prototype.changePages=function(t){this._observer.next(t)},Object.defineProperty(t.prototype,"renderPrintBlob",{get:function(){return this._renderBlob},enumerable:!0,configurable:!0}),t.prototype.changeBlob=function(t){this._observerBlob.next(t)},t}();var ut=function(){function t(t){var e=this;this._renderService=t,t.renderPrint.subscribe((function(t){e.renderPrint(t)})),t.renderPrintBlob.subscribe((function(t){e.renderPrintBlob(t)}))}return t.prototype.renderPrint=function(t){var e,o,n="";try{for(var i=m(t),r=i.next();!r.done;r=i.next()){var s=r.value;n+='
'}}catch(t){e={error:t}}finally{try{r&&!r.done&&(o=i.return)&&o.call(i)}finally{if(e)throw e.error}}this.openWindow(n,t[0].width,t[0].height)},t.prototype.openWindow=function(t,e,o){var n="";if(e>595&&o>842){var i=Math.round(o/842)/100;n=".gd-page img { width: 100%; margin: 0; padding: 0;}",navigator.userAgent.toLowerCase().indexOf("firefox")>-1&&(n=".gd-page img { transform: scale("+i+");}")}var r="";var s=window.open("","PrintWindow","width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes");s.focus(),s.document.writeln(r),s.document.writeln(t),s.document.close(),setTimeout((function(){s.focus(),s.print(),s.close()}),100)},t.prototype.renderPrintBlob=function(t){var e=URL.createObjectURL(t),o=window.open(e,"PrintWindow","width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes");o.focus(),o.print(),o.close()},t.decorators=[{type:e.Directive,args:[{selector:"[gdRenderPrint]"}]}],t.ctorParameters=function(){return[{type:dt}]},t.propDecorators={htmlMode:[{type:e.Input}]},t}();var gt=function(){function t(){this._observer=new n.BehaviorSubject("Server is not available"),this._messageChange=this._observer.asObservable()}return Object.defineProperty(t.prototype,"messageChange",{get:function(){return this._messageChange},enumerable:!0,configurable:!0}),t.prototype.changeMessage=function(t){this._observer.next(t)},t}();var ht=function(){function t(t){var e=this;t.messageChange.subscribe((function(t){return e.message=t}))}return t.prototype.ngOnInit=function(){},t.decorators=[{type:e.Component,args:[{selector:"gd-error-modal",template:'\n
\n \n
\n
Something went wrong
\n
{{message ? message : \'Server is not available\'}}
\n
\n
\n
\n',styles:[".gd-modal-error{display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-flex:1;flex:1}.gd-modal-error .gd-modal-error-message{font-size:12px;margin:0 24px 24px 0;word-break:break-word}.gd-modal-error .gd-modal-error-title{font-size:16px;font-weight:700;margin:14px 0 10px}#gd-error-section{max-width:468px;max-height:204px;display:-webkit-box;display:flex}#gd-error-section fa-icon{-webkit-box-flex:1;flex:1;color:#e04e4e;font-size:40px;margin:13px 23px 90px;text-align:center;max-width:46px}"]}]}],t.ctorParameters=function(){return[{type:gt}]},t}();var ft=function(){function t(){this._observer=new n.Subject,this._passChange=this._observer.asObservable()}return Object.defineProperty(t.prototype,"passChange",{get:function(){return this._passChange},enumerable:!0,configurable:!0}),t.prototype.setPassword=function(t){this._observer.next(t)},t}();var mt=l,bt=function(){function t(t,o){var n=this;this._passwordService=o,this.cancelEvent=new e.EventEmitter,t.messageChange.subscribe((function(t){return n.message=t}))}return t.prototype.ngOnInit=function(){},t.prototype.setPassword=function(t){this._passwordService.setPassword(t)},t.prototype.onCloseOpen=function(t){t?setTimeout((function(){var t=mt("#password");t&&t.focus()}),100):mt("#password").val("")},t.prototype.cancel=function(t){mt("#password").val(""),this.cancelEvent.emit(!0)},t.decorators=[{type:e.Component,args:[{selector:"gd-password-required",template:'\n
\n
\n \n \n {{message}}\n \n Open\n \n
\n
\n
\n',styles:["#gd-password-section{width:375px;height:164px}.gd-password-wrap{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;margin:24px}.gd-password-wrap label{font-size:14px;color:#acacac;padding-bottom:12px}.gd-password-wrap input{height:30px;border:1px solid #25c2d4}.gd-password-wrap input.error{border-color:#e04e4e}.gd-password-wrap gd-button{align-self:flex-end}.gd-password-wrap ::ng-deep .button{height:37px;width:72px;padding:0;-webkit-box-pack:center;justify-content:center}.gd-password-wrap ::ng-deep .button ::ng-deep .text{font-size:10px!important}.gd-password-error{color:#e04e4e;padding:10px 0 12px;height:12px;line-height:12px;font-size:12px}@media (max-width:1037px){#gd-password-section{min-width:375px}}"]}]}],t.ctorParameters=function(){return[{type:gt},{type:ft}]},t.propDecorators={cancelEvent:[{type:e.Output}]},t}();var vt=function(){function t(t,e){this._modalService=t,this._messageService=e}return t.prototype.intercept=function(t,e){var o=this,r="background: maroon; color: white";return e.handle(t).pipe(i.map((function(t){return t})),i.catchError((function(t){if(t instanceof p.HttpErrorResponse)switch(t.status){case A.BadRequest:console.error("%c Bad Request 400",r);break;case A.Unauthorized:console.error("%c Unauthorized 401",r);break;case A.NotFound:console.error("%c Not Found 404",r);break;case A.TimeOut:console.error("%c TimeOut 408",r);break;case A.InternalServerError:console.error("%c big bad 500",r),o._messageService.changeMessage(t.error.message),o._modalService.open(_.ErrorMessage);break;case A.Forbidden:console.error("%c Forbidden 403",r),o._messageService.changeMessage(t.error.message),o._modalService.open(_.PasswordRequired)}return n.throwError(t)})))},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[{type:P},{type:gt}]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t(e.ɵɵinject(P),e.ɵɵinject(gt))},token:t,providedIn:"root"}),t}();var xt=function(){function t(){this._observer=new n.Subject,this._textChange=this._observer.asObservable(),this._observerCurrent=new n.Subject,this._currentChange=this._observerCurrent.asObservable(),this._observerTotal=new n.Subject,this._totalChange=this._observerTotal.asObservable()}return Object.defineProperty(t.prototype,"textChange",{get:function(){return this._textChange},enumerable:!0,configurable:!0}),t.prototype.setText=function(t){this._observer.next(t)},Object.defineProperty(t.prototype,"currentChange",{get:function(){return this._currentChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"totalChange",{get:function(){return this._totalChange},enumerable:!0,configurable:!0}),t.prototype.setCurrent=function(t){this._observerCurrent.next(t)},t.prototype.setTotal=function(t){this._observerTotal.next(t)},t}();var wt=function(){function t(t){var o=this;this._searchService=t,this.hidePanel=new e.EventEmitter(!1),this.current=0,this.total=0,t.totalChange.subscribe((function(t){o.total=t,o.current=0!==t?1:0,o._searchService.setCurrent(o.current)}))}return t.prototype.ngOnInit=function(){},t.prototype.setText=function(t){this._searchService.setText(t)},t.prototype.hide=function(){this.setText(""),this.hidePanel.emit(!0)},t.prototype.prev=function(){this.current>1&&(this.current--,this._searchService.setCurrent(this.current))},t.prototype.next=function(){this.current\n \n
{{current}} of {{total}}
\n \n \n \n \n \n \n\n',styles:[".gd-nav-search-btn{margin:3px 0 4px}.gd-nav-search-cancel{color:#fff;font-size:14px;width:37px}.gd-search-count{color:#959da5;font-size:12px;position:absolute;right:148px;top:14px}.gd-nav-search-container{background-color:#3e4e5a;width:410px;position:fixed;left:50%;top:60px;z-index:2;-webkit-transform:translate(-50%,0);transform:translate(-50%,0);display:-webkit-box;display:flex}.gd-search-input{float:left;height:30px;width:267px;font-size:14px;color:#6e6e6e;border:1px solid #25c2d4;margin:7px 0 7px 7px;box-sizing:border-box;padding:6px 0 5px 9px}input[type=text]::-ms-clear{display:none}@media (max-width:1037px){.gd-search-input{width:231px;height:30px;margin:7px 0 7px 5px}.gd-search-count{position:absolute;left:193px;top:15px}.gd-nav-search-container{width:100%}}"]}]}],t.ctorParameters=function(){return[{type:xt}]},t.propDecorators={hidePanel:[{type:e.Output}],textElement:[{type:e.ViewChild,args:["text",{static:!0}]}]},t}();var yt=l,kt=function(){function t(t,e,o,n){var i=this;this._elementRef=t,this._searchService=e,this._highlight=o,this._zoomService=n,this.current=0,this.total=0,this.zoom=100,e.currentChange.subscribe((function(t){i.current=t,0!==i.current&&i.moveToCurrent()})),e.textChange.subscribe((function(t){i.text=t,i.highlightSearch()})),this.zoom=n.zoom?n.zoom:this.zoom,n.zoomChange.subscribe((function(t){i.zoom=t||i.zoom}))}return t.prototype.highlightSearch=function(){var t=this._elementRef?this._elementRef.nativeElement:null;if(t){if(this.cleanHighlight(t),this.text){this.highlightEl(t);var e=t.querySelectorAll(".gd-highlight").length;this.total=e}else this.total=0;this._searchService.setTotal(this.total)}},t.prototype.moveToCurrent=function(){if(0!==this.current){this.getZoom();var t=this._elementRef?this._elementRef.nativeElement:null;if(t){t.querySelectorAll(".gd-highlight-select").forEach((function(t){yt(t).removeClass("gd-highlight-select")}));var e=t.querySelectorAll(".gd-highlight")[this.current-1];if(yt(e).addClass("gd-highlight-select"),e){var o={left:0,top:yt(e).offset().top+t.parentElement.parentElement.scrollTop-150};t.parentElement.parentElement.scroll(o)}}}},t.prototype.highlightEl=function(t){var e=yt(t).find("*").contents().filter((function(){var t=this.parentElement.nodeName.toLowerCase(),e=!this.classList||!this.classList.contains("gd-highlight");return 3===this.nodeType&&0!==this.textContent.trim().length&&"style"!==t&&"title"!==t&&"body"!==t&&"script"!==t&&e})),o=this.text,n=this._highlight;e.each((function(){var t=yt(this),e=t.text();e=n.transform(e,o),t.replaceWith(e)})),t.normalize()},t.prototype.cleanHighlight=function(t){for(var e=t.querySelectorAll(".gd-highlight"),o=0;o\n \n \n\n',styles:[".top-panel{background:#3e4e5a;display:-webkit-box;display:flex;width:100%;height:90px}.top-panel ::ng-deep .logo{height:30px;font-size:16px}@media (max-width:1037px){.top-panel{height:60px}.top-panel ::ng-deep .logo{height:60px}}"]}]}],t.ctorParameters=function(){return[]},t.propDecorators={logo:[{type:e.Input}],icon:[{type:e.Input}]},t}();var Ct=function(){function t(){this._observer=new n.Subject,this._activeTabChange=this._observer.asObservable()}return Object.defineProperty(t.prototype,"activeTabChange",{get:function(){return this._activeTabChange},enumerable:!0,configurable:!0}),t.prototype.changeActiveTab=function(t){this._observer.next(t)},t}();var _t=function(){function t(t){var e=this;this._tabActivatorService=t,this.disabled=!1,this.active=!1,this.content=!0,this._tabActivatorService.activeTabChange.subscribe((function(t){e.activation(t)}))}return t.prototype.activation=function(t){this.id===t?this.active=!0:this.active=!1},t.prototype.ngOnInit=function(){},t.prototype.selectTab=function(){this.disabled||this._tabActivatorService.changeActiveTab(this.id)},t.decorators=[{type:e.Component,args:[{selector:"gd-tab",template:'
\n
{{tabTitle}}
\n \n
\n
\n \n
\n',styles:[".tab-content{height:60px;position:absolute;background-color:#fff;width:100%;left:0;line-height:60px;display:none;z-index:9}.tab-content ::ng-deep .toolbar-panel{height:60px}.tab-content.active{display:-webkit-box;display:flex}.gd-tab{text-align:center;font-size:11px;color:#e5e5e5;height:30px;line-height:30px;cursor:pointer;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center}.gd-tab .icon{display:none;font-size:14px}.gd-tab .title{margin:auto 23px}.gd-tab.active{background-color:#fff;color:#3e4e5a;font-weight:700}@media (max-width:1037px){.gd-tab{height:60px;line-height:60px;width:60px}.gd-tab .title{display:none}.gd-tab .icon{display:block;font-size:22px}}"]}]}],t.ctorParameters=function(){return[{type:Ct}]},t.propDecorators={id:[{type:e.Input}],tabTitle:[{type:e.Input}],icon:[{type:e.Input}],disabled:[{type:e.Input}],active:[{type:e.Input}],content:[{type:e.Input}]},t}();var Pt=function(){function t(){}return t.decorators=[{type:e.Component,args:[{selector:"gd-tabs",template:'
\n \n
\n',styles:[".gd-tabs{display:-webkit-box;display:flex}"]}]}],t.ctorParameters=function(){return[]},t}(),Et=function(){function t(t,e,o,n,i,r,s,a,c,p){this.fontSize=t,this.color=e,this.bgColor=o,this.bold=n,this.italic=i,this.underline=r,this.font=s,this.strikeout=a,this.align=c,this.list=p}return t.default=function(){return new t(10,"#000000","#FFFFFF",!1,!1,!1,"Arial",!1,"","")},t}();var It=function(){function t(){this._observerBold=new n.Subject,this._formatBoldChange=this._observerBold.asObservable(),this._observerUnderline=new n.Subject,this._formatUnderlineChange=this._observerUnderline.asObservable(),this._observerUndo=new n.Subject,this._undo=this._observerUndo.asObservable(),this._observerRedo=new n.Subject,this._redo=this._observerRedo.asObservable(),this._observerItalic=new n.Subject,this._formatItalicChange=this._observerItalic.asObservable(),this._observerColor=new n.Subject,this._formatColorChange=this._observerColor.asObservable(),this._observerBgColor=new n.Subject,this._formatBgColorChange=this._observerBgColor.asObservable(),this._observerFontSize=new n.Subject,this._formatFontSizeChange=this._observerFontSize.asObservable(),this._observerFont=new n.Subject,this._formatFontChange=this._observerFont.asObservable(),this._observerStrikeout=new n.Subject,this._formatStrikeoutChange=this._observerStrikeout.asObservable(),this._observerAlign=new n.Subject,this._formatAlignChange=this._observerAlign.asObservable(),this._observerList=new n.Subject,this._formatListChange=this._observerList.asObservable()}return Object.defineProperty(t.prototype,"formatBoldChange",{get:function(){return this._formatBoldChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formatUnderlineChange",{get:function(){return this._formatUnderlineChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formatColorChange",{get:function(){return this._formatColorChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formatBgColorChange",{get:function(){return this._formatBgColorChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formatFontSizeChange",{get:function(){return this._formatFontSizeChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formatFontChange",{get:function(){return this._formatFontChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"undo",{get:function(){return this._undo},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"redo",{get:function(){return this._redo},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formatItalicChange",{get:function(){return this._formatItalicChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formatStrikeoutChange",{get:function(){return this._formatStrikeoutChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formatAlignChange",{get:function(){return this._formatAlignChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formatListChange",{get:function(){return this._formatListChange},enumerable:!0,configurable:!0}),t.createFontSizeOption=function(t){return{value:t,name:t+"px",separator:!1}},t.getFontSizeOptions=function(){return[t.createFontSizeOption(8),t.createFontSizeOption(10),t.createFontSizeOption(12),t.createFontSizeOption(14),t.createFontSizeOption(16),t.createFontSizeOption(18),t.createFontSizeOption(20),t.createFontSizeOption(22),t.createFontSizeOption(24)]},t.createFontOption=function(t){return{value:t,name:t,separator:!1}},t.getFontOptions=function(){var t=this,e=[];return["Arial","Calibri","Century Gothic","Comic Sans","Consolas","Courier","Dejavu Sans","Dejavu Serif","Georgia","Gill Sans","Helvetica","Impact","Lucida Sans","Myriad Pro","Open Sans","Palatino","Tahoma","Times New Roman","Trebuchet"].forEach((function(o){e.push(t.createFontOption(o))})),e},t.prototype.changeFormatFontSize=function(t){this._observerFontSize.next(t)},t.prototype.changeFormatBold=function(t){this._observerBold.next(t)},t.prototype.changeFormatUnderline=function(t){this._observerUnderline.next(t)},t.prototype.Undo=function(){this._observerUndo.next()},t.prototype.Redo=function(){this._observerRedo.next()},t.prototype.changeFormatItalic=function(t){this._observerItalic.next(t)},t.prototype.changeFormatColor=function(t){this._observerColor.next(t)},t.prototype.changeFormatBgColor=function(t){this._observerBgColor.next(t)},t.prototype.changeFormatFont=function(t){this._observerFont.next(t)},t.prototype.changeFormatStrikeout=function(t){this._observerStrikeout.next(t)},t.prototype.changeFormatAlign=function(t){this._observerAlign.next(t)},t.prototype.changeFormatList=function(t){this._observerList.next(t)},t}();var Ot=["#000000","#434343","#666666","#999999","#B7B7B7","#CCCCCC","#D9D9D9","#EFEFEF","#F3F3F3","#FFFFFF","#980000","#FF0000","#FF9900","#FFFF00","#00FF00","#00FFFF","#4986E8","#0000FF","#9900FF","#FF00FF","#E6B8AF","#F4CCCC","#FDE5CD","#FFF2CC","#D9EAD3","#D0E0E2","#C9DAF8","#CFE2F3","#D9D2E9","#EAD1DC","#DD7E6B","#EA9899","#F9CB9C","#FFE59A","#B7D7A8","#A2C4C9","#A4C2F4","#9FC5E8","#B4A7D7","#D5A6BD","#CC4125","#E06666","#F6B26B","#FFD966","#92C47D","#75A5AF","#6D9EEB","#6FA9DB","#8E7CC3","#C27BA0","#A61C00","#CC0000","#E69138","#F2C131","#6AA84F","#45818E","#3C78D8","#3C85C6","#674EA7","#A64D79","#85200B","#990000","#B45F05","#BF9000","#37761D","#144F5C","#1254CC","#0A5394","#351C75","#741B47","#5B0F00","#660000","#783F03","#7F6000","#284E13","#0B343D","#1B4586","#063763","#20124D","#4C1030"],zt=function(){function t(){this.isOpen=!1,this.selectedColor=new e.EventEmitter,this.closeOutside=new e.EventEmitter,this.colors=Ot,this.white="#FFFFFF"}return t.prototype.ngOnInit=function(){},t.prototype.select=function(t,e){t.preventDefault(),t.stopPropagation(),this.selectedColor.emit(e)},t.prototype.close=function(){this.isOpen=!1,this.closeOutside.emit(!0)},t.decorators=[{type:e.Component,args:[{selector:"gd-color-picker",template:'
\n
\n
\n
\n
\n',styles:[".bcPicker-picker{border:1px;border-radius:100%}.bcPicker-palette{width:250px;background-color:#fdfdfd;z-index:999;box-shadow:0 0 5px #efefef;display:-webkit-box;display:flex;flex-wrap:wrap;-webkit-box-pack:center;justify-content:center}.bcPicker-palette>.bcPicker-color{width:18px;height:18px;margin:2px;cursor:pointer}"]}]}],t.ctorParameters=function(){return[]},t.propDecorators={isOpen:[{type:e.Input}],selectedColor:[{type:e.Output}],closeOutside:[{type:e.Output}]},t}();var Ft=function(t){function o(){return t.call(this)||this}return f(o,t),o.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],o.ctorParameters=function(){return[]},o.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new o},token:o,providedIn:"root"}),o}(It),Dt=function(){function t(){this.isIE=!!/(MSIE|Trident\/|Edge\/)/i.test(navigator.userAgent)}return t.prototype.restoreSelection=function(){(this.selection&&!this.selection.collapsed||this.isIE)&&this.putSelection(this.selection)},t.prototype.captureSelection=function(){var t=window.getSelection();t.rangeCount>0&&(this.selection=t.getRangeAt(0))},t.prototype.putSelection=function(t){var e=window.getSelection();e.removeAllRanges(),e.addRange(t.cloneRange())},t.prototype.refreshSelection=function(){this.captureSelection(),this.restoreSelection()},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t},token:t,providedIn:"root"}),t}();var Tt=l,At=function(){function t(t,e,o){this._formattingService=t,this._backFormattingService=e,this._selectionService=o,this.bold=!1,this.italic=!1,this.underline=!1,this.strikeout=!1,this.isIE=!1,this.isIE=!!/(MSIE|Trident\/|Edge\/)/i.test(navigator.userAgent)}return t.prototype.mouseup=function(){this.bold=document.queryCommandState("bold"),this.strikeout=document.queryCommandState("strikeThrough"),this.italic=document.queryCommandState("italic"),this.bgColor=document.queryCommandValue("backColor"),this.underline=document.queryCommandState("underline"),this.align=this.checkJustify(),this.list=this.checkList(),"transparent"===this.bgColor&&(this.bgColor=Tt(window.getSelection().focusNode.parentNode).css("background-color").toString()),this.font=document.queryCommandValue("FontName").replace(/"/g,""),this.font.split(",").length>1&&(this.font=this.font.split(",")[0]),this.color=document.queryCommandValue("foreColor"),this._backFormattingService.changeFormatBold(this.bold),this._backFormattingService.changeFormatUnderline(this.underline),this._backFormattingService.changeFormatItalic(this.italic),this._backFormattingService.changeFormatColor(this.color),this._backFormattingService.changeFormatBgColor(this.bgColor),this._backFormattingService.changeFormatFontSize(this.reportFontSize()),this._backFormattingService.changeFormatFont(this.font),this._backFormattingService.changeFormatStrikeout(this.strikeout),this._backFormattingService.changeFormatAlign(this.align),this._backFormattingService.changeFormatList(this.list)},t.prototype.checkJustify=function(){var t="";return t=document.queryCommandState("justifyCenter")?"center":t,t=document.queryCommandState("justifyFull")?"full":t,t=document.queryCommandState("justifyLeft")?"left":t,t=document.queryCommandState("justifyRight")?"right":t},t.prototype.checkList=function(){var t="";return t=document.queryCommandState("insertUnorderedList")?"unordered":t,t=document.queryCommandState("insertOrderedList")?"ordered":t},t.prototype.reportFontSize=function(){var t,e;if(window.getSelection?(e=window.getSelection()).rangeCount&&3===(t=e.getRangeAt(0).commonAncestorContainer).nodeType&&(t=t.parentNode):(e=document.getSelection())&&"Control"!==e.type&&(t=e.createRange().parentElement()),t)return parseInt(this.getComputedStyleProperty(t,"fontSize").replace("px",""),10)},t.prototype.getComputedStyleProperty=function(t,e){return window.getComputedStyle?window.getComputedStyle(t,null)[e]:t.currentStyle?t.currentStyle[e]:void 0},t.prototype.ngOnInit=function(){var t=this;this._formattingService.undo.subscribe((function(){t.toggleUndo()})),this._formattingService.redo.subscribe((function(){t.toggleRedo()})),this._formattingService.formatBoldChange.subscribe((function(e){t.bold=e,t.toggleBold()})),this._formattingService.formatUnderlineChange.subscribe((function(e){t.underline=e,t.toggleUnderline()})),this._formattingService.formatItalicChange.subscribe((function(e){t.italic=e,t.toggleItalic()})),this._formattingService.formatColorChange.subscribe((function(e){t.color=e,t.setColor(e)})),this._formattingService.formatBgColorChange.subscribe((function(e){t.bgColor=e,t.setBgColor(e)})),this._formattingService.formatFontSizeChange.subscribe((function(e){t.setFontSize(e)})),this._formattingService.formatFontChange.subscribe((function(e){t.font=e,t.setFont(e)})),this._formattingService.formatStrikeoutChange.subscribe((function(e){t.strikeout=e,t.toggleStrikeout()})),this._formattingService.formatAlignChange.subscribe((function(e){t.align=e,t.toggleAlign(t.align)})),this._formattingService.formatListChange.subscribe((function(e){var o=t.list===e;t.list=e,t.toggleList(t.list,o)}))},t.prototype.toggleBold=function(){document.execCommand("bold"),this._selectionService.refreshSelection()},t.prototype.toggleUnderline=function(){document.execCommand("underline"),this._selectionService.refreshSelection()},t.prototype.toggleItalic=function(){document.execCommand("italic"),this._selectionService.refreshSelection()},t.prototype.setBgColor=function(t){document.execCommand("backColor",!1,t),this._selectionService.refreshSelection()},t.prototype.setColor=function(t){document.execCommand("foreColor",!1,t),this._selectionService.refreshSelection()},t.prototype.setFontSize=function(t){if(document.getSelection().toString()){var e=""+document.getSelection()+"";this.bold&&(e=""+e+""),this.italic&&(e=""+e+""),this.underline&&(e=""+e+""),this.strikeout&&(e=""+e+""),document.execCommand("insertHTML",!1,e)}else document.execCommand("fontsize",!1,"7");this._selectionService.refreshSelection()},t.prototype.toggleUndo=function(){document.execCommand("undo")},t.prototype.toggleRedo=function(){document.execCommand("redo")},t.prototype.setFont=function(t){document.execCommand("fontName",!1,t),this._selectionService.refreshSelection()},t.prototype.toggleStrikeout=function(){document.execCommand("strikeThrough"),this._selectionService.refreshSelection()},t.prototype.toggleAlign=function(t){if(this.isIE)this.toggleAlignIE(t);else{switch(document.execCommand("styleWithCSS",!1,"true"),t){case"center":document.execCommand("justifyCenter");break;case"full":document.execCommand("justifyFull");break;case"left":document.execCommand("justifyLeft");break;case"right":document.execCommand("justifyRight")}this._selectionService.refreshSelection()}},t.prototype.toggleAlignIE=function(t){this._selectionService.restoreSelection(),this._selectionService.captureSelection();var e=window.getSelection().focusNode.parentNode.parentNode;"full"===t&&(t="justify"),Tt(e).css("text-align",t),this._selectionService.refreshSelection()},t.prototype.toggleList=function(t,e){switch(t){case"unordered":document.execCommand("insertUnorderedList",e);break;case"ordered":document.execCommand("insertOrderedList",e)}this._selectionService.refreshSelection()},t.decorators=[{type:e.Directive,args:[{selector:"[gdFormatting]"}]}],t.ctorParameters=function(){return[{type:It},{type:Ft},{type:Dt}]},t.propDecorators={mouseup:[{type:e.HostListener,args:["mouseup"]}]},t}();var Mt=function(){function t(){}return t.prototype.ngOnInit=function(){},t.decorators=[{type:e.Component,args:[{selector:"gd-success-modal",template:'\n
\n
\n \n \n
\n
\n
\n
\n
\n',styles:[".check_mark{margin:47px auto}.sa-icon{width:80px;height:80px;border:4px solid gray;border-radius:50%;padding:0;position:relative;box-sizing:content-box}#gd-modal-success{display:-webkit-box;display:flex;overflow:hidden;width:469px;height:183px}.sa-icon.sa-success{border-color:#4caf50;-webkit-transform:scale(1.18);transform:scale(1.18)}.sa-icon.sa-success::after,.sa-icon.sa-success::before{content:'';position:absolute;width:60px;height:120px;background:#fff}.sa-icon.sa-success::before{border-radius:120px 0 0 120px;top:-7px;left:-33px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform-origin:60px 60px;transform-origin:60px 60px}.sa-icon.sa-success::after{border-radius:0 120px 120px 0;top:-11px;left:30px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform-origin:0 60px;transform-origin:0 60px}.sa-icon.sa-success .sa-placeholder{width:80px;height:80px;border:4px solid rgba(76,175,80,.5);border-radius:50%;box-sizing:content-box;position:absolute;left:-4px;top:-4px;z-index:2}.sa-icon.sa-success .sa-fix{width:5px;height:90px;background-color:#fff;position:absolute;left:28px;top:8px;z-index:1;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.sa-icon.sa-success.animate::after{-webkit-animation:4.25s ease-in rotatePlaceholder;animation:4.25s ease-in rotatePlaceholder}.animateSuccessTip{-webkit-animation:.75s animateSuccessTip;animation:.75s animateSuccessTip}.animateSuccessLong{-webkit-animation:.75s animateSuccessLong;animation:.75s animateSuccessLong}@-webkit-keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}@-webkit-keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}.sa-icon.sa-success .sa-line{height:5px;background-color:#4caf50;display:block;border-radius:2px;position:absolute;z-index:2}.sa-icon.sa-success .sa-line.sa-tip{width:25px;left:14px;top:46px;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.sa-icon.sa-success .sa-line.sa-long{width:47px;right:8px;top:38px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}@-webkit-keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@media (max-width:1037px){#gd-modal-success{left:50%;top:50%;position:relative;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}}"]}]}],t.ctorParameters=function(){return[]},t}(),jt=function(){function t(){this._observer=new n.Subject,this._htmlContent=this._observer.asObservable()}return Object.defineProperty(t.prototype,"observer",{get:function(){return this._observer},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"htmlContent",{get:function(){return this._htmlContent},enumerable:!0,configurable:!0}),t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t},token:t,providedIn:"root"}),t}();var Rt=function(){function t(t,e){this._selectionService=t,this._htmlService=e,this.isIE=!!/(MSIE|Trident\/|Edge\/)/i.test(navigator.userAgent)}return t.prototype.onInput=function(t){if(this.text=t.target,this.isIE&&this.text.innerHTML){var e=this.text.innerHTML.toString();this._htmlService.observer.next(e)}},t.prototype.onMouseleave=function(t){this._selectionService.captureSelection(),this.isIE&&this._htmlService.observer.next(t.target.innerHTML.toString())},t.prototype.onBlur=function(t){if(t.preventDefault(),this._selectionService.restoreSelection(),this.text.innerHTML){var e=this.text.innerHTML.toString();this._htmlService.observer.next(e)}else this._htmlService.observer.next(t.target.innerHTML.toString())},t.decorators=[{type:e.Directive,args:[{selector:"[gdEditor]"}]}],t.ctorParameters=function(){return[{type:Dt},{type:jt}]},t.propDecorators={text:[{type:e.Input}],onInput:[{type:e.HostListener,args:["keyup",["$event"]]}],onMouseleave:[{type:e.HostListener,args:["mouseleave",["$event"]]}],onBlur:[{type:e.HostListener,args:["blur",["$event"]]}]},t}();var Lt=function(){function t(){this.onLoadingChanged=new e.EventEmitter,this.stopList=[],this.requests=[],this.stopList.push(S.SAVE_TEXT),this.stopList.push(S.SAVE_OPTICAL_CODE),this.stopList.push(S.LOAD_DOCUMENT_PAGE),this.stopList.push(S.LOAD_THUMBNAILS),this.stopList.push(S.GET_FILE_STATUS),this.stopList.push(S.LOAD_PRINT)}return t.prototype.onRequestStart=function(t){this.stopList.find((function(e){return t.url.includes(e)}))||(this.requests.push(t),this.notify())},t.prototype.onRequestFinish=function(t){var e=this.requests.indexOf(t);-1!==e&&this.requests.splice(e,1),this.notify()},t.prototype.notify=function(){this.onLoadingChanged.emit(0!==this.requests.length)},t.decorators=[{type:e.Injectable}],t.ctorParameters=function(){return[]},t}();var Ut=function(){function t(t){this._loadingMaskService=t,this.loadingMask=!1}return t.prototype.ngOnInit=function(){},t.prototype.ngAfterViewInit=function(){var t=this;this._loadingMaskService.onLoadingChanged.subscribe((function(e){return t.loadingMask=e}))},t.decorators=[{type:e.Component,args:[{selector:"gd-loading-mask",template:'
\n
\n  Loading... Please wait.\n
\n
\n',styles:[".loading-wrapper{background:rgba(0,0,0,.5);width:100%;height:100%;font-size:14px;color:#fff;position:fixed;top:0;left:0;z-index:99999}.loading-message{position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}"]}]}],t.ctorParameters=function(){return[{type:Lt}]},t.propDecorators={loadingMask:[{type:e.Input}]},t}();var Ht=function(){function t(t){this._loadingMaskService=t}return t.prototype.intercept=function(t,e){var o=this;this._loadingMaskService.onRequestStart(t);return e.handle(t).pipe(i.finalize((function(){return o._loadingMaskService.onRequestFinish(t)})))},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[{type:Lt}]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t(e.ɵɵinject(Lt))},token:t,providedIn:"root"}),t}();var Bt={center:{right:"auto"},left:{right:"100%"},right:{right:"-100%"}},Nt={center:{top:"0px"},top:{top:"-100%",right:"100%"},bottom:{top:"autos"}},Wt=function(){function t(t){var e=this;this.dropdown=t,this.click=function(t){return e.dropdown.toggle(t)}}return t.decorators=[{type:e.Component,args:[{selector:"gd-drop-down-toggle",template:"",encapsulation:e.ViewEncapsulation.None,styles:[".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"]}]}],t.ctorParameters=function(){return[{type:void 0,decorators:[{type:e.Inject,args:[e.forwardRef((function(){return qt}))]}]}]},t.propDecorators={click:[{type:e.HostListener,args:["click",["$event"]]}]},t}();var $t=function(){function t(t){this.dropdown=t}return Object.defineProperty(t.prototype,"horizontalAlign",{get:function(){return Bt[this.dropdown.getPlacement().h].right},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"verticalAlign",{get:function(){return Nt[this.dropdown.getPlacement().v].top},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isOpen",{get:function(){return this.dropdown.open},enumerable:!0,configurable:!0}),t.prototype.onClickOutside=function(t){this.dropdown.close()},t.decorators=[{type:e.Component,args:[{selector:"gd-drop-down-items",template:'',encapsulation:e.ViewEncapsulation.None,styles:[".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"]}]}],t.ctorParameters=function(){return[{type:void 0,decorators:[{type:e.Inject,args:[e.forwardRef((function(){return qt}))]}]}]},t}();var Vt=function(){function t(t){var o=this;this.dropdown=t,this.class="drop-down-item",this.selected=new e.EventEmitter,this.click=function(){return o.selectEntry()}}return t.prototype.selectEntry=function(){this.selected.next(),this.dropdown.close()},t.decorators=[{type:e.Component,args:[{selector:"gd-drop-down-item",template:'',styles:[".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"]}]}],t.ctorParameters=function(){return[{type:void 0,decorators:[{type:e.Inject,args:[e.forwardRef((function(){return qt}))]}]}]},t.propDecorators={class:[{type:e.HostBinding,args:["class"]}],selected:[{type:e.Output}],click:[{type:e.HostListener,args:["click"]}]},t}();var qt=function(){function t(){this.placement={h:"center",v:"bottom"},this.open=!1,this.class="drop-down"}return t.prototype.close=function(){this.open=!1},t.prototype.toggle=function(t){t.stopPropagation(),this.open=!this.open,document.body.click()},t.prototype.getPlacement=function(){return this.placement},t.decorators=[{type:e.Component,args:[{selector:"gd-drop-down",template:'',encapsulation:e.ViewEncapsulation.None,styles:[".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"]}]}],t.propDecorators={placement:[{type:e.Input}],open:[{type:e.Input},{type:e.HostBinding,args:["class.show"]}],class:[{type:e.HostBinding,args:["class"]}]},t}();var Gt=function(){function t(){this.showSpinner=!1}return t.prototype.ngOnInit=function(){},t.decorators=[{type:e.Component,args:[{selector:"gd-left-side-bar",template:'
\n
\n
 Loading...\n
\n
\n \n
\n',styles:[".left-panel{border-radius:0;float:left}.gd-left-bar-fade{margin:auto;overflow:hidden;-webkit-overflow-scrolling:touch;-webkit-transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;width:100%;height:100%;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;position:fixed;z-index:1000}@media (max-width:1037px){.gd-left-bar-fade{top:100px;right:0}.gd-left-bar-spinner{top:20%}}"]}]}],t.ctorParameters=function(){return[]},t.propDecorators={showSpinner:[{type:e.Input}]},t}();var Xt=function(){function t(){this.showToolTip=new e.EventEmitter}return t.prototype.onHovering=function(){this.showToolTip.emit(!0)},t.prototype.onUnhovering=function(){this.showToolTip.emit(!1)},t.decorators=[{type:e.Directive,args:[{selector:"[gdTooltip]"}]}],t.ctorParameters=function(){return[]},t.propDecorators={showToolTip:[{type:e.Output}],onHovering:[{type:e.HostListener,args:["mouseenter"]}],onUnhovering:[{type:e.HostListener,args:["mouseleave"]}]},t}();var Zt=function(){function t(t,e){this._factoryResolver=t,this._appRef=e}return t.prototype.addDynamicComponent=function(t,e){var o=this,n=this._factoryResolver.resolveComponentFactory(e),i=t.createComponent(n);return i.onDestroy((function(){o._appRef.detachView(i.hostView)})),i},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[{type:e.ComponentFactoryResolver},{type:e.ApplicationRef}]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t(e.ɵɵinject(e.ComponentFactoryResolver),e.ɵɵinject(e.ApplicationRef))},token:t,providedIn:"root"}),t}();var Yt=function(){function t(){this.hosts=[]}return t.prototype.add=function(t){this.hosts=this.hosts.filter((function(e){return e.ident!==t.ident})),this.hosts.push(t)},t.prototype.remove=function(t){this.hosts=this.hosts.filter((function(e){return e.ident!==t.ident}))},t.prototype.find=function(t){return this.hosts.find((function(e){return e.ident===t}))},t}();var Jt=function(){function t(t,e){this.viewContainerRef=t,this._hostingService=e}return t.prototype.ngAfterViewInit=function(){this._hostingService.add(this)},t.prototype.ngOnDestroy=function(){this._hostingService.remove(this),this.viewContainerRef.clear()},t.decorators=[{type:e.Directive,args:[{selector:"[gdHostDynamic]"}]}],t.ctorParameters=function(){return[{type:e.ViewContainerRef},{type:Yt}]},t.propDecorators={ident:[{type:e.Input}]},t}();var Kt=l,Qt=function(){function t(){this.se=!1,this.ne=!1,this.sw=!1,this.nw=!1,this.SE="se",this.NE="ne",this.SW="sw",this.NW="nw",this.offsetX=new e.EventEmitter,this.offsetY=new e.EventEmitter,this.offsetTop=new e.EventEmitter,this.offsetLeft=new e.EventEmitter,this.release=new e.EventEmitter,this.grab=!1}return t.prototype.ngAfterViewInit=function(){var t=this,e=Kt(this.getElementId(this.SE)),o=Kt(this.getElementId(this.NW));if(this.init&&e&&o&&e.offset()&&o.offset()){for(var n=e.offset().left-o.offset().left,i=e.offset().top-o.offset().top;n>=this.pageWidth||i>=this.pageHeight;)n/=2,i/=2;setTimeout((function(){t.offsetX.emit(n),t.offsetY.emit(i)}),100)}},t.prototype.ngOnInit=function(){},t.prototype.catchUp=function(t){t.preventDefault(),t.dataTransfer&&t.dataTransfer.setData("text","foo"),this.grab=!0,this.oldPosition=M.getMousePosition(t)},t.prototype.resize=function(t,e){if(this.grab){var o=M.getMousePosition(t);if(0!==o.x||0!==o.y){var n=this.NE===e||this.NW===e,i=this.SW===e||this.NW===e;this.setOffsets(o,i,n),n&&this.offsetTop.emit(o.y-this.oldPosition.y),i&&this.offsetLeft.emit(o.x-this.oldPosition.x),this.oldPosition=o}}},t.prototype.setOffsets=function(t,e,o){var n=e?this.oldPosition.x-t.x:t.x-this.oldPosition.x,i=o?this.oldPosition.y-t.y:t.y-this.oldPosition.y;this.offsetX.emit(n),this.offsetY.emit(i)},t.prototype.end=function(t,e){this.resize(t,e),this.release.emit(!0),this.grab=!1},t.prototype.start=function(t){this.drop(t)},t.prototype.drop=function(t){t.stopPropagation(),t.preventDefault()},t.prototype.getElementId=function(t){return"#"+t+"-"+this.id},t.decorators=[{type:e.Component,args:[{selector:"gd-resizing",template:'
\n\n
\n\n
\n\n
\n',styles:[".ui-resizable-handle{background-color:#679ffa;width:8px;height:8px;border-radius:100%;position:absolute;font-size:.1px;display:block}.se-resize{bottom:-5px;right:-5px;cursor:se-resize}.ne-resize{top:-5px;right:-5px;cursor:ne-resize}.sw-resize{bottom:-5px;left:-5px;cursor:sw-resize}.nw-resize{top:-5px;left:-5px;cursor:nw-resize}"]}]}],t.ctorParameters=function(){return[]},t.propDecorators={init:[{type:e.Input}],id:[{type:e.Input}],se:[{type:e.Input}],ne:[{type:e.Input}],sw:[{type:e.Input}],nw:[{type:e.Input}],pageWidth:[{type:e.Input}],pageHeight:[{type:e.Input}],offsetX:[{type:e.Output}],offsetY:[{type:e.Output}],offsetTop:[{type:e.Output}],offsetLeft:[{type:e.Output}],release:[{type:e.Output}]},t}();var te=function(t){function e(){return t.call(this)||this}return f(e,t),e}(Ct),ee=function(){function t(t,o,n){var i=this;this._tabActivatorService=t,this._modalService=o,this._excMessageService=n,this.disabled=!1,this.activeTab=new e.EventEmitter,this.elementPosition=0,this.active=!1,this.showToolTip=!1,this._tabActivatorService.activeTabChange.subscribe((function(t){i.activation(t),null===t&&i.activeTab.emit("")}))}return t.prototype.activation=function(t){this.id===t?(this.active=!this.active,this.active?this.activeTab.emit(this.id):this.activeTab.emit("")):this.active=!1},t.prototype.ngOnInit=function(){},t.prototype.toggleTab=function(){if(this.disabled)return this._modalService.open(_.ErrorMessage),void this._excMessageService.changeMessage("Please open document first");this._tabActivatorService.changeActiveTab(this.id)},t.decorators=[{type:e.Component,args:[{selector:"gd-top-tab",template:'
\n \n \n
\n',styles:[".gd-tab{font-size:14px;color:#3e4e5a;cursor:pointer;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;align-content:center;-webkit-box-pack:center;justify-content:center;min-width:36px;height:36px;text-align:center;position:relative;white-space:nowrap;padding:0!important;margin:0 10px}.gd-tab .gd-tab-tooltip{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;margin:0!important}.gd-tab.active{background-color:#acacac;color:#fff!important;font-weight:700}.gd-tab.disabled{cursor:not-allowed;opacity:.4}.gd-tab ::ng-deep .tooltip{font-size:12px;margin:20px -57px}.gd-tab .title{margin:auto 23px}@media (max-width:1037px){.gd-tab{font-size:20px}}"]}]}],t.ctorParameters=function(){return[{type:te},{type:P},{type:gt}]},t.propDecorators={id:[{type:e.Input}],icon:[{type:e.Input}],disabled:[{type:e.Input}],tooltip:[{type:e.Input}],activeTab:[{type:e.Output}],elementPosition:[{type:e.Input}]},t}();var oe=l,ne=function(){function t(t,o,n,i,r){var s=this;this._onCloseService=t,this._zoomService=o,this._windowService=n,this._elementRef=i,this.renderer=r,this.decoration=!0,this.showTooltips=!0,this.outFontSize=new e.EventEmitter,this.outFont=new e.EventEmitter,this.outBold=new e.EventEmitter,this.outItalic=new e.EventEmitter,this.outUnderline=new e.EventEmitter,this.outColor=new e.EventEmitter,this.fontSizeOptions=It.getFontSizeOptions(),this.fontOptions=It.getFontOptions(),this.colorPickerShow=!1,t.onClose.subscribe((function(){s.colorPickerShow=!1})),this.isMobile=n.isMobile(),n.onResize.subscribe((function(t){s.isMobile=n.isMobile()})),o.zoomChange.subscribe((function(t){s.isMobile&&s.changePosition(t)}))}return t.prototype.ngOnInit=function(){},t.prototype.changePosition=function(t){var e=window.innerHeight-24-this._elementRef.nativeElement.parentElement.getBoundingClientRect().top-this._elementRef.nativeElement.parentElement.getBoundingClientRect().height,o=this._elementRef.nativeElement.parentElement.getBoundingClientRect().left;this.renderer.setStyle(this._elementRef.nativeElement.querySelector(".gd-text-menu"),"width",window.innerWidth+"px"),this.renderer.setStyle(this._elementRef.nativeElement.querySelector(".gd-text-menu"),"top",e+"px"),this.renderer.setStyle(this._elementRef.nativeElement.querySelector(".gd-text-menu"),"left",-o+"px")},t.prototype.selectFontSize=function(t){oe(".gd-wrapper").off("keyup"),this.outFontSize.emit(t.value),oe(".gd-wrapper").on("keyup",(function(){for(var e=document.getElementsByTagName("font"),o=0,n=e.length;o\n \n \n \n \n \n \n
\n
\n \n \n\n',styles:["::ng-deep .active{background-color:#e7e7e7}.gd-text-menu{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row}.gd-text-menu .format-select{height:37px;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;max-width:80px;margin:0 3px}.gd-text-menu .first-component{margin-left:8px}.gd-text-menu ::ng-deep .dropdown-menu{top:40px!important;height:120px;overflow-y:auto}.gd-text-menu ::ng-deep .icon-button{margin:0!important}.bg-color-pic{border-radius:100%;border:1px solid #ccc;position:absolute;height:8px;width:8px;right:6px;bottom:6px}.palette{position:relative;top:40px;left:-55px;z-index:100}@media (max-width:1037px){.gd-text-menu{position:fixed;left:0;right:0;width:inherit;height:60px;-webkit-box-align:center;align-items:center;padding:0;margin:0;background-color:#fff;border-top:2px solid #707070;-webkit-transform-origin:top left;transform-origin:top left;z-index:1000}.gd-text-menu ::ng-deep .selected-value{white-space:normal!important;word-wrap:break-word}.gd-text-menu .icon{color:#fff;margin:0 9px}.gd-text-menu ::ng-deep .bcPicker-palette{left:-200px;top:-185px}.gd-text-menu .palette{top:unset;bottom:40px;left:unset;right:5px}.gd-text-menu ::ng-deep .dropdown-menu{bottom:40px;top:unset!important}.gd-text-menu ::ng-deep .first-component ::ng-deep .dropdown-menu{left:0}.gd-text-menu ::ng-deep .button{margin:3px!important;font-size:16px}}"]}]}],t.ctorParameters=function(){return[{type:st},{type:N},{type:x},{type:e.ElementRef},{type:e.Renderer2}]},t.propDecorators={blur:[{type:e.Input}],fontSize:[{type:e.Input}],font:[{type:e.Input}],bold:[{type:e.Input}],italic:[{type:e.Input}],underline:[{type:e.Input}],color:[{type:e.Input}],decoration:[{type:e.Input}],showTooltips:[{type:e.Input}],outFontSize:[{type:e.Output}],outFont:[{type:e.Output}],outBold:[{type:e.Output}],outItalic:[{type:e.Output}],outUnderline:[{type:e.Output}],outColor:[{type:e.Output}]},t}();var ie=function(){function t(){}return t.FOR_SIGNATURE="signature",t.FOR_ANNOTATION="annotation",t}();var re=function(){function t(t,o,n,i){var r=this;this._windowService=t,this._zoomService=o,this._elementRef=n,this.renderer=i,this.formatting=Et.default(),this.lock=!1,this.translation=0,this.changeFormatting=new e.EventEmitter,this.removeItem=new e.EventEmitter,this.copySign=new e.EventEmitter,this.lockOut=new e.EventEmitter,this.comment=new e.EventEmitter,this.isMobile=t.isMobile(),t.onResize.subscribe((function(e){r.isMobile=t.isMobile()})),o.zoomChange.subscribe((function(t){r.isMobile&&r.changeScale(t)}))}return t.prototype.ngOnInit=function(){},t.prototype.changeScale=function(t){this.renderer.setStyle(this._elementRef.nativeElement.querySelector(".gd-context-menu"),"transform","scale("+1/(t/100)+")")},t.prototype.saveChanges=function(){this.changeFormatting.emit(this.formatting)},t.prototype.selectFontSize=function(t){this.formatting.fontSize=t,this.saveChanges()},t.prototype.selectFont=function(t){this.formatting.font=t,this.saveChanges()},t.prototype.selectColor=function(t){this.formatting.color=t,this.saveChanges()},t.prototype.toggleBold=function(t){this.formatting.bold=t,this.saveChanges()},t.prototype.toggleItalic=function(t){this.formatting.italic=t,this.saveChanges()},t.prototype.toggleUnderline=function(t){this.formatting.underline=t,this.saveChanges()},t.prototype.deleteItem=function(){this.removeItem.emit(!0)},t.prototype.toggleLock=function(){this.lock=!this.lock,this.lockOut.emit(this.lock)},t.prototype.onCopySign=function(){this.copySign.emit(!0)},t.prototype.isSignature=function(){return this.menuType===ie.FOR_SIGNATURE},t.prototype.isAnnotation=function(){return this.menuType===ie.FOR_ANNOTATION},t.prototype.addComment=function(){this.comment.emit(!0)},t.decorators=[{type:e.Component,args:[{selector:"gd-context-menu",template:'
\n \n \n \n \n \n \n
\n',styles:[".gd-context-menu-top{top:-44px}.gd-context-menu-bottom{bottom:-40px}.gd-context-menu{box-shadow:rgba(0,0,0,.52) 0 0 5px;background-color:#fff;position:absolute;left:0;right:0;margin:auto;cursor:default;width:max-content;width:-moz-max-content;width:-webkit-max-content;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;z-index:999}.gd-context-menu .arrows{cursor:move}.gd-context-menu ::ng-deep .active{background-color:#e7e7e7}.gd-context-menu ::ng-deep .icon-button{margin:0!important}@media (max-width:1037px){.gd-context-menu-top{top:-42px;-webkit-transform-origin:bottom center;transform-origin:bottom center}}"]}]}],t.ctorParameters=function(){return[{type:x},{type:N},{type:e.ElementRef},{type:e.Renderer2}]},t.propDecorators={formatting:[{type:e.Input}],textMenu:[{type:e.Input}],topPosition:[{type:e.Input}],lock:[{type:e.Input}],translation:[{type:e.Input}],menuType:[{type:e.Input}],changeFormatting:[{type:e.Output}],removeItem:[{type:e.Output}],copySign:[{type:e.Output}],lockOut:[{type:e.Output}],comment:[{type:e.Output}]},t}();var se=[C,S,P,R,T,j,M,X,Z,Y,J,L,dt,$,W,N,gt,ft,vt,xt,x,et,It,Ft,st,Ht,Lt,Ct,Zt,Yt,te],ae=function(){function t(){s.library.add(a.fas,c.far)}return t.decorators=[{type:e.NgModule,args:[{imports:[o.CommonModule,r.FontAwesomeModule,g.ClickOutsideModule],declarations:[b,v,w,y,k,E,B,q,G,X,Z,Y,J,K,Q,nt,it,rt,at,ct,pt,lt,ut,ht,bt,wt,kt,St,_t,Pt,zt,At,Mt,Rt,Ut,qt,Vt,$t,Wt,Gt,Xt,Jt,Qt,ee,ne,re],exports:[b,v,w,y,k,E,B,q,G,Z,Y,J,X,K,nt,it,at,pt,lt,ut,ht,bt,wt,kt,St,_t,Pt,zt,At,Mt,Ut,Q,qt,Vt,$t,Wt,rt,Wt,Gt,Xt,Jt,Qt,ee,ne,re],providers:se}]}],t.ctorParameters=function(){return[]},t}();t.AddDynamicComponentService=Zt,t.Api=S,t.BackFormattingService=Ft,t.BrowseFilesModalComponent=B,t.ButtonComponent=w,t.ColorPickerComponent=zt,t.CommonComponentsModule=ae,t.CommonModals=_,t.ConfigService=C,t.ContextMenuComponent=re,t.DisabledCursorDirective=ct,t.DndDirective=Q,t.DocumentComponent=q,t.DropDownComponent=qt,t.DropDownItemComponent=Vt,t.DropDownItemsComponent=$t,t.DropDownToggleComponent=Wt,t.EditHtmlService=jt,t.EditorDirective=Rt,t.ErrorInterceptorService=vt,t.ErrorModalComponent=ht,t.ExceptionMessageService=gt,t.FileCredentials=z,t.FileDescription=D,t.FileModel=T,t.FileService=R,t.FileUtil=j,t.Formatting=Et,t.FormattingDirective=At,t.FormattingService=It,t.HighlightSearchPipe=J,t.HostDynamicDirective=Jt,t.HostingDynamicComponentService=Yt,t.HttpError=A,t.InitStateComponent=lt,t.LeftSideBarComponent=Gt,t.LoadingMaskComponent=Ut,t.LoadingMaskInterceptorService=Ht,t.LoadingMaskService=Lt,t.LogoComponent=y,t.MenuType=ie,t.ModalComponent=E,t.ModalService=P,t.MouseWheelDirective=it,t.NavigateService=$,t.OnCloseService=st,t.PageComponent=G,t.PageModel=I,t.PagePreloadService=W,t.PasswordRequiredComponent=bt,t.PasswordService=ft,t.RenderPrintDirective=ut,t.RenderPrintService=dt,t.RotatedPage=O,t.RotationDirective=pt,t.SanitizeHtmlPipe=X,t.SanitizeResourceHtmlPipe=Z,t.SanitizeStylePipe=Y,t.SaveFile=F,t.ScrollableDirective=nt,t.SearchComponent=wt,t.SearchService=xt,t.SearchableDirective=kt,t.SelectComponent=at,t.SelectionService=Dt,t.SidePanelComponent=v,t.SuccessModalComponent=Mt,t.TabActivatorService=Ct,t.TabComponent=_t,t.TabbedToolbarsComponent=St,t.TextMenuComponent=ne,t.TooltipComponent=k,t.TopTabActivatorService=te,t.TopToolbarComponent=b,t.UploadFileZoneComponent=K,t.UploadFilesService=L,t.Utils=M,t.ViewportService=et,t.WindowService=x,t.ZoomDirective=rt,t.ZoomService=N,t.ɵa=Pt,t.ɵb=Xt,t.ɵc=Qt,t.ɵd=ee,Object.defineProperty(t,"__esModule",{value:!0})})); + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */var h=function(t,e){return(h=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var o in e)e.hasOwnProperty(o)&&(t[o]=e[o])})(t,e)};function f(t,e){function o(){this.constructor=t}h(t,e),t.prototype=null===e?Object.create(e):(o.prototype=e.prototype,new o)}function m(t){var e="function"==typeof Symbol&&Symbol.iterator,o=e&&t[e],n=0;if(o)return o.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}var v=function(){function t(){}return t.decorators=[{type:e.Component,args:[{selector:"gd-top-toolbar",template:'
\r\n
\r\n \r\n
\r\n
\r\n',styles:[".top-toolbar{width:100%;height:60px;z-index:999;display:flex;align-items:center}.tools{width:100%;height:100%;display:flex;align-items:center}@media (max-width:1037px){.top-toolbar{height:60px}.tools{height:100%;overflow-x:auto;overflow-scrolling:touch;display:flex;align-items:center;transition:.3s ease-in-out;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.tools::-webkit-scrollbar{width:0;height:0;background-color:#3e4e5a}}"]}]}],t.ctorParameters=function(){return[]},t}(),y=function(){function t(){this.closable=!0,this.saveable=!0,this.hideSidePanel=new e.EventEmitter,this.saveInSidePanel=new e.EventEmitter,this.onlyTitle=!1}return t.prototype.closeSidePanel=function(){this.hideSidePanel.emit(!0)},t.prototype.saveBySidePanel=function(){this.saveInSidePanel.emit(!0)},t.prototype.toggleTitleMode=function(){this.closable&&!this.saveable&&(this.onlyTitle=!this.onlyTitle)},t.decorators=[{type:e.Component,args:[{selector:"gd-side-panel",template:'
\r\n
\r\n \r\n
{{title}}
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n',styles:[".gd-side-panel-wrapper{margin-right:0;width:334px;z-index:999;background-color:#fff;transition:margin-right .2s;display:flex;flex-flow:column;height:100vh}.gd-side-panel-wrapper .gd-side-panel-header{height:60px;background-color:#222e35;display:flex;flex-direction:row;flex-wrap:nowrap}.gd-side-panel-wrapper .gd-side-panel-header .icon{font-size:24px;color:#959da5;margin:18px;line-height:24px}.gd-side-panel-wrapper .gd-side-panel-header .title{font-size:13px;font-weight:700;color:#edf0f2;opacity:.57;margin-top:20px;width:100%}.gd-side-panel-wrapper .gd-side-panel-header .close,.gd-side-panel-wrapper .gd-side-panel-header .save{display:flex;align-items:center}.gd-side-panel-wrapper .gd-side-panel-header ::ng-deep gd-button .text{padding:0}.gd-side-panel-wrapper .gd-side-panel-body{display:flex;flex-flow:column;overflow:visible;overflow-y:auto;overflow-x:hidden;height:100%}@media (max-width:1037px){.gd-side-panel-wrapper{width:100%;position:absolute;left:0;right:0;top:0;bottom:0}.gd-side-panel-wrapper.only-title{height:60px!important}}"]}]}],t.ctorParameters=function(){return[]},t.propDecorators={title:[{type:e.Input}],icon:[{type:e.Input}],closable:[{type:e.Input}],saveable:[{type:e.Input}],hideSidePanel:[{type:e.Output}],saveInSidePanel:[{type:e.Output}]},t}();var b=function(){function t(){var t=this;this.resizeSubject=new n.Subject,this.width=window.innerWidth,this.height=window.innerHeight,this._resize$=n.fromEvent(window,"resize").pipe(i.debounceTime(200),i.distinctUntilChanged(),i.startWith({target:{innerWidth:window.innerWidth,innerHeight:window.innerHeight}}),i.tap((function(e){t.resizeSubject.next(e.target),t.width=e.target.innerWidth,t.height=e.target.innerHeight}))),this._resize$.subscribe()}return Object.defineProperty(t.prototype,"onResize",{get:function(){return this.resizeSubject.asObservable()},enumerable:!0,configurable:!0}),t.prototype.isMobile=function(){return this.width<=425},t.prototype.isTablet=function(){return this.width<=1024},t.prototype.isDesktop=function(){return!this.isMobile()&&!this.isTablet()},t.prototype.getWidth=function(){return this.width},t.prototype.getHeight=function(){return this.height},t.prototype.isEdge=function(){return window.navigator.userAgent.toLowerCase().indexOf("edge")>-1},t.prototype.isFirefox=function(){return navigator.userAgent.toLowerCase().indexOf("firefox")>-1},t}();var x=function(){function t(t){var e=this;this.iconOnly=!0,this.intent="default",this.disabled=!1,this.toggle=!1,this.iconRegular=!1,this.elementPosition=0,this.showToolTip=!1,this.isDesktop=t.isDesktop(),t.onResize.subscribe((function(o){e.isDesktop=t.isDesktop()}))}return t.prototype.iconButtonClass=function(){return this.iconOnly?"icon-button":""},t.prototype.onHovering=function(){this.isDesktop&&!this.disabled&&(this.className+=" active")},t.prototype.onUnhovering=function(){this.isDesktop&&!this.disabled&&(this.className=this.cleanAll(this.className," active"))},t.prototype.cleanAll=function(t,e){for(;t&&-1!==t.indexOf(e);)t=t.replace(e,"");return t},t.decorators=[{type:e.Component,args:[{selector:"gd-button",template:'
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n',styles:[".icon-button{padding:0!important;margin:0 7px}.button{padding:0 10px;font-size:14px;color:#959da5;cursor:pointer;display:flex;flex-direction:column;align-items:center;align-content:center;justify-content:center;min-width:37px;height:37px;text-align:center;position:relative;white-space:nowrap}.button.inactive{cursor:not-allowed;opacity:.4}.button.active *{color:#ccd0d4}.button.primary{background-color:#3e4e5a;color:#fff}.button.primary.active{color:#fff;background-color:#688296}.button.brand{background-color:#25c2d4;color:#fff}.button.brand.active{color:#fff;background-color:#688296}.button .text{font-size:13px;padding-left:10px}.button .button-tooltip{display:flex;flex-direction:column}@media (max-width:1037px){.button{font-size:22px}.arrow-button{margin:5px}}"]}]}],t.ctorParameters=function(){return[{type:b}]},t.propDecorators={iconOnly:[{type:e.Input}],intent:[{type:e.Input}],disabled:[{type:e.Input}],icon:[{type:e.Input}],iconClass:[{type:e.Input}],tooltip:[{type:e.Input}],className:[{type:e.Input}],toggle:[{type:e.Input}],iconSize:[{type:e.Input}],iconRegular:[{type:e.Input}],elementPosition:[{type:e.Input}]},t}();var w=function(){function t(){}return t.prototype.ngOnInit=function(){},t.decorators=[{type:e.Component,args:[{selector:"gd-logo",template:'\r\n\r\n',styles:[".logo{background-color:#25c2d4;height:60px;display:flex;align-items:center;justify-content:center}.text{color:#fff;font-size:15px;text-transform:uppercase;margin:0 14px}.icon{display:none;font-size:32px;color:rgba(255,255,255,.5);margin:14px}@media (max-width:1037px){.logo{width:60px;height:60px}.logo .text{display:none}.logo .icon{display:block}}"]}]}],t.ctorParameters=function(){return[]},t.propDecorators={logo:[{type:e.Input}],icon:[{type:e.Input}]},t}();var S=function(){function t(){this.position=0,this.visibility="hidden"}return t.prototype.getClass=function(){return 0===this.position?"tooltip":"tooltip "+(this.position>0?"last-element":"first-element")},Object.defineProperty(t.prototype,"show",{set:function(t){this.visibility=t?"shown":"hidden"},enumerable:!0,configurable:!0}),t.prototype.ngOnInit=function(){},t.decorators=[{type:e.Component,args:[{selector:"gd-tooltip",template:'\r\n',styles:['.tooltip{position:absolute;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;background-color:#000;color:#fff;text-align:center;border-radius:0;padding:5px;z-index:1;font-size:10px;height:11px;line-height:11px;-ms-grid-row-align:center;align-self:center;margin:0!important}.first-element{margin-left:10px!important}.last-element{margin-left:-10px!important}.tooltip.hidden{visibility:hidden}.tooltip.shown{visibility:visible}.shown:after{content:" ";position:absolute;bottom:100%;left:50%;margin-left:-5px;border:5px solid transparent;border-bottom-color:#000}']}]}],t.ctorParameters=function(){return[]},t.propDecorators={text:[{type:e.Input}],position:[{type:e.Input}],show:[{type:e.Input}]},t}();var C=function(){function t(){}return t.VIEWER_APP="/viewer",t.SIGNATURE_APP="/signature",t.ANNOTATION_APP="/annotation",t.SEARCH_APP="/search",t.EDITOR_APP="/editor",t.COMPARISON_APP="/comparison",t.CONVERSION_APP="/conversion",t.METADATA_APP="/metadata",t.DEFAULT_API_ENDPOINT=window.location.href,t.LOAD_FILE_TREE="/loadFileTree",t.LOAD_CONFIG="/loadConfig",t.LOAD_DOCUMENT_DESCRIPTION="/loadDocumentDescription",t.LOAD_DOCUMENT_PAGE="/loadDocumentPage",t.LOAD_DOCUMENT_PROPERTIES="/loadProperties",t.LOAD_DOCUMENT_PROPERTIES_NAMES="/loadPropertiesNames",t.SAVE_PROPERTY="/saveProperty",t.REMOVE_PROPERTY="/removeProperty",t.ROTATE_DOCUMENT_PAGE="/rotateDocumentPages",t.UPLOAD_DOCUMENTS="/uploadDocument",t.DOWNLOAD_DOCUMENTS="/downloadDocument",t.LOAD_PRINT="/loadPrint",t.LOAD_PRINT_PDF="/printPdf",t.LOAD_THUMBNAILS="/loadThumbnails",t.LOAD_FORMATS="/loadFormats",t.SAVE_FILE="/saveFile",t.CREATE_FILE="/createFile",t.COMPARE_FILES="/compare",t.CONVERT_FILE="/convert",t.DELETE_SIGNATURE_FILE="/deleteSignatureFile",t.REMOVE_FROM_INDEX="/removeFromIndex",t.GET_FILE_STATUS="/getFileStatus",t.SAVE_OPTICAL_CODE="/saveOpticalCode",t.SAVE_TEXT="/saveText",t.SAVE_IMAGE="/saveImage",t.SAVE_STAMP="/saveStamp",t.SIGN="/sign",t.DOWNLOAD_SIGNED="/downloadSigned",t.LOAD_SIGNATURE_IMAGE="/loadSignatureImage",t.ANNOTATE="/annotate",t.SEARCH="/search",t.ADD_FILES_TO_INDEX="/addFilesToIndex",t.httpOptionsJson={headers:new p.HttpHeaders({"Content-Type":"application/json"})},t.httpOptionsJsonResponseTypeBlob={headers:new p.HttpHeaders({"Content-Type":"application/json"}),responseType:"blob"},t}();var _=function(){function t(){this.apiEndpoint=C.DEFAULT_API_ENDPOINT}return Object.defineProperty(t.prototype,"apiEndpoint",{get:function(){return this._apiEndpoint},set:function(t){this._apiEndpoint=t&&t.trim().endsWith("/")?t.substring(0,t.length-1):t},enumerable:!0,configurable:!0}),t.prototype.getConfigEndpoint=function(t){return(this.apiEndpoint.endsWith(t)?this.apiEndpoint:this.apiEndpoint+t)+C.LOAD_CONFIG},t.prototype.getViewerApiEndpoint=function(){return this._apiEndpoint.endsWith(C.VIEWER_APP)?this._apiEndpoint:this._apiEndpoint+C.VIEWER_APP},t.prototype.getEditorApiEndpoint=function(){return this._apiEndpoint.trim().endsWith(C.EDITOR_APP)?this._apiEndpoint:this._apiEndpoint+C.EDITOR_APP},t.prototype.getComparisonApiEndpoint=function(){return this._apiEndpoint.trim().endsWith(C.COMPARISON_APP)?this._apiEndpoint:this._apiEndpoint+C.COMPARISON_APP},t.prototype.getConversionApiEndpoint=function(){return this._apiEndpoint.trim().endsWith(C.CONVERSION_APP)?this._apiEndpoint:this._apiEndpoint+C.CONVERSION_APP},t.prototype.getMetadataApiEndpoint=function(){return this._apiEndpoint.trim().endsWith(C.METADATA_APP)?this._apiEndpoint:this._apiEndpoint+C.METADATA_APP},t.prototype.getSignatureApiEndpoint=function(){return this._apiEndpoint.endsWith(C.SIGNATURE_APP)?this._apiEndpoint:this._apiEndpoint+C.SIGNATURE_APP},t.prototype.getAnnotationApiEndpoint=function(){return this._apiEndpoint.endsWith(C.ANNOTATION_APP)?this._apiEndpoint:this._apiEndpoint+C.ANNOTATION_APP},t.prototype.getSearchApiEndpoint=function(){return this._apiEndpoint.endsWith(C.SEARCH_APP)?this._apiEndpoint:this._apiEndpoint+C.SEARCH_APP},t.decorators=[{type:e.Injectable}],t.ctorParameters=function(){return[]},t}();var P=function(){function t(){}return t.PasswordRequired="gd-password-required",t.ErrorMessage="gd-error-message",t.BrowseFiles="gd-browse-files",t.CreateDocument="gd-create-document",t.OperationSuccess="gd-success-modal",t.DrawHandSignature="gd-draw-hand-signature",t.DrawStampSignature="gd-draw-stamp-signature",t.InformationMessage="gd-information-message",t}();var E=function(){function t(){this.modals=[]}return t.prototype.add=function(t){this.modals.push(t)},t.prototype.remove=function(t){this.modals=this.modals.filter((function(e){return e.id!==t}))},t.prototype.open=function(t){var e=this.modals.filter((function(e){return e.id===t}))[0];e&&e.open()},t.prototype.close=function(t){var e=this.modals.filter((function(e){return e.id===t}))[0];e&&e.close()},t}();var I=function(){function t(t,o){this.modalService=t,this.visible=new e.EventEmitter,this.cancel=new e.EventEmitter,this.visibility=!1,this.element=o.nativeElement}return t.prototype.ngOnInit=function(){this.id?(document.body.appendChild(this.element),this.modalService.add(this)):console.error("modal must have an id")},t.prototype.ngOnDestroy=function(){this.modalService.remove(this.id),this.element.remove()},t.prototype.open=function(){this.visibility=!0,this.visible.emit(!0)},t.prototype.close=function(){event.preventDefault(),event.stopPropagation(),this.visibility=!1,this.visible.emit(!1)},t.prototype.onClose=function(t){t.stopPropagation(),t&&t.target&&"modalDialog"===t.target.id&&this.close()},t.prototype.cancelClose=function(){this.cancel.emit(!1),this.close()},t.decorators=[{type:e.Component,args:[{selector:"gd-modal",template:'
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
×
\r\n

{{title}}

\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n\r\n',styles:["@import url(https://fonts.googleapis.com/css?family=Montserrat&display=swap);:host *{font-family:'Open Sans',Arial,Helvetica,sans-serif}.gd-modal{overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0;background-color:rgba(0,0,0,.5)}.gd-modal-dialog{box-shadow:#0005 0 0 10px;position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1051}.gd-modal-dialog ::ng-deep .button{flex-direction:unset!important}.gd-modal-content{background-color:#fff;height:100%;display:flex;flex-direction:column}.gd-modal-header{height:60px;padding:0 12px 0 24px;background-color:#3e4e5a}.gd-modal-close{position:absolute;right:12px;top:12px;cursor:pointer;color:#fff;width:37px;height:37px;text-align:center}.gd-modal-close span{font-size:18px;font-weight:900;height:19px;width:10px;line-height:36px}.gd-modal-title{font-size:16px;font-weight:400;padding-top:17px;padding-bottom:22px;margin:0;color:#fff}.gd-modal-body{background-color:#fff;overflow:hidden;overflow-y:auto;height:calc(100% - 75px)}.gd-modal-footer{height:auto}.gd-modal-footer>.btn{float:right;margin:20px 15px;padding:10px 20px;cursor:pointer;font-size:12px}@media (max-width:1037px){.gd-modal-dialog{width:100%;height:100%}.gd-modal-body{height:100%}}"]}]}],t.ctorParameters=function(){return[{type:E},{type:e.ElementRef}]},t.propDecorators={id:[{type:e.Input}],title:[{type:e.Input}],visible:[{type:e.Output}],cancel:[{type:e.Output}]},t}();var O=function(){};var k=function(){};var F=function(t,e){this.guid=t,this.password=e};var z=function(t){function e(e,o,n){var i=t.call(this,e,o)||this;return i.content=n,i}return f(e,t),e}(F);var D=function(){this.printAllowed=!0};var T=function(){};var A=function(){function t(){}return t.BadRequest=400,t.Unauthorized=401,t.Forbidden=403,t.NotFound=404,t.TimeOut=408,t.Conflict=409,t.InternalServerError=500,t}();var M=function(){function t(){}return t.getMousePosition=function(t){var e={x:0,y:0},o=window.event,n=t||o;if(n.pageX||o.pageX||o.screenX||n.touches&&n.touches[0]&&n.touches[0].pageX){var i=void 0!==n.pageX&&0!==n.pageX?n.pageX:o.pageX,r=void 0!==n.pageY&&0!==n.pageY?n.pageY:o.pageY,s=void 0!==o.screenX&&0!==o.screenY,a=void 0!==o.screenY&&0!==o.screenY;e.x=i||(s?o.screenX:n.touches[0].pageX),e.y=r||(a?o.screenY:n.touches[0].pageY)}else n.clientX&&(e.x=n.clientX+document.body.scrollLeft,e.y=n.clientY+document.body.scrollTop);return e},t.toRgb=function(t){var e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);if(e){var o=parseInt(e[1],16),n=parseInt(e[2],16),i=parseInt(e[3],16);return e?"rgb("+o+","+n+","+i+")":""}return t},t.toHex=function(t){if(t.match(/[0-9A-F]{6}|[0-9A-F]{3}$/i))return"#"===t.charAt(0)?t:"#"+t;if(!t.match(/^rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)$/))return"";var e=[parseInt(RegExp.$1,10),parseInt(RegExp.$2,10),parseInt(RegExp.$3,10)],o=function(t){if(t.length<2)for(var e=0,o=2-t.length;e0?t.map.unknown:t.map.folder:t.map[i]}return t.map.folder},t.map={folder:{format:"",icon:"folder"},pdf:{format:"Portable Document Format",icon:"file-pdf",unit:"pt"},doc:{format:"Microsoft Word",icon:"file-word",unit:"pt"},docx:{format:"Microsoft Word",icon:"file-word",unit:"pt"},docm:{format:"Microsoft Word",icon:"file-word",unit:"pt"},dot:{format:"Microsoft Word",icon:"file-word",unit:"pt"},dotx:{format:"Microsoft Word",icon:"file-word",unit:"pt"},dotm:{format:"Microsoft Word",icon:"file-word",unit:"pt"},xls:{format:"Microsoft Excel",icon:"file-excel",unit:"px"},xlsx:{format:"Microsoft Excel",icon:"file-excel",unit:"px"},xlsm:{format:"Microsoft Excel",icon:"file-excel",unit:"px"},xlsb:{format:"Microsoft Excel",icon:"file-excel",unit:"px"},xls2003:{format:"Microsoft Excel",icon:"file-excel",unit:"px"},xltx:{format:"Microsoft Excel",icon:"file-excel",unit:"px"},xltm:{format:"Microsoft Excel",icon:"file-excel",unit:"px"},ppt:{format:"Microsoft PowerPoint",icon:"file-powerpoint",unit:"pt"},pptx:{format:"Microsoft PowerPoint",icon:"file-powerpoint",unit:"pt"},pps:{format:"Microsoft PowerPoint",icon:"file-powerpoint",unit:"pt"},ppsx:{format:"Microsoft PowerPoint",icon:"file-powerpoint",unit:"pt"},vsd:{format:"Microsoft Visio",icon:"file-code",unit:"px"},vdx:{format:"Microsoft Visio",icon:"file-code",unit:"px"},vss:{format:"Microsoft Visio",icon:"file-code",unit:"px"},vsx:{format:"Microsoft Visio",icon:"file-code",unit:"px"},vst:{format:"Microsoft Visio",icon:"file-code",unit:"px"},vtx:{format:"Microsoft Visio",icon:"file-code",unit:"px"},vsdx:{format:"Microsoft Visio",icon:"file-code",unit:"px"},vdw:{format:"Microsoft Visio",icon:"file-code",unit:"px"},vstx:{format:"Microsoft Visio",icon:"file-code",unit:"px"},vssx:{format:"Microsoft Visio",icon:"file-code",unit:"px"},mpp:{format:"Microsoft Project",icon:"file-alt",unit:"pt"},mpt:{format:"Microsoft Project",icon:"file-alt",unit:"pt"},msg:{format:"Microsoft Outlook",icon:"file-alt",unit:"pt"},eml:{format:"Microsoft Outlook",icon:"file-alt",unit:"pt"},emlx:{format:"Microsoft Outlook",icon:"file-alt",unit:"pt"},one:{format:"Microsoft OneNote",icon:"file-word",unit:"pt"},odt:{format:"Open Document Text",icon:"file-word",unit:"pt"},ott:{format:"Open Document Text Template",icon:"file-word",unit:"pt"},ods:{format:"Open Document Spreadsheet",icon:"file-excel",unit:"px"},odp:{format:"Open Document Presentation",icon:"file-powerpoint",unit:"pt"},otp:{format:"Open Document Presentation",icon:"file-powerpoint",unit:"pt"},ots:{format:"Open Document Presentation",icon:"file-powerpoint",unit:"pt"},potx:{format:"Open Document Presentation",icon:"file-powerpoint",unit:"pt"},potm:{format:"Open Document Presentation",icon:"file-powerpoint",unit:"pt"},pptm:{format:"Open Document Presentation",icon:"file-powerpoint",unit:"pt"},ppsm:{format:"Open Document Presentation",icon:"file-powerpoint",unit:"pt"},rtf:{format:"Rich Text Format",icon:"file-alt",unit:"pt"},txt:{format:"Plain Text File",icon:"file-alt",unit:"pt"},csv:{format:"Comma-Separated Values",icon:"file-excel",unit:"px"},html:{format:"HyperText Markup Language",icon:"file-word",unit:"pt"},mht:{format:"HyperText Markup Language",icon:"file-word",unit:"pt"},mhtml:{format:"HyperText Markup Language",icon:"file-word",unit:"pt"},xml:{format:"Extensible Markup Language",icon:"file-word",unit:"pt"},xps:{format:"XML Paper Specification",icon:"file-word",unit:"pt"},dxf:{format:"AutoCAD Drawing File Format",icon:"file-image",unit:"px"},dwg:{format:"AutoCAD Drawing File Format",icon:"file-image",unit:"px"},bmp:{format:"Bitmap Picture",icon:"file-image",unit:"px"},gif:{format:"Graphics Interchange Format",icon:"file-image",unit:"px"},jpg:{format:"Joint Photographic Experts Group",icon:"file-image",unit:"px"},jpe:{format:"Joint Photographic Experts Group",icon:"file-image",unit:"px"},jpeg:{format:"Joint Photographic Experts Group",icon:"file-image",unit:"px"},jfif:{format:"Joint Photographic Experts Group",icon:"file-image",unit:"px"},png:{format:"Portable Network Graphics",icon:"file-image",unit:"px"},tiff:{format:"Tagged Image File Format",icon:"file-image",unit:"px"},tif:{format:"Tagged Image File Format",icon:"file-image",unit:"px"},psd:{format:"Tagged Image File Format",icon:"file-image",unit:"px"},svg:{format:"Tagged Image File Format",icon:"file-image",unit:"px"},jp2:{format:"Tagged Image File Format",icon:"file-image",unit:"px"},epub:{format:"Electronic Publication",icon:"file-pdf",unit:"pt"},ico:{format:"Windows Icon",icon:"file-image",unit:"px"},webp:{format:"Compressed Image",icon:"file-image",unit:"px"},mobi:{format:"Mobipocket eBook",icon:"file-pdf",unit:"pt"},tex:{format:"LaTeX Source Document",icon:"file-pdf",unit:"pt"},djvu:{format:"Multi-Layer Raster Image",icon:"file-alt",unit:"pt"},unknown:{format:"This format is not supported",icon:"file"}},t}();var j=function(){},L=function(){function t(){var t=this;this._uploadsChange=new n.Observable((function(e){return t._observer=e}))}return Object.defineProperty(t.prototype,"uploadsChange",{get:function(){return this._uploadsChange},enumerable:!0,configurable:!0}),t.prototype.changeFilesList=function(t){this._observer.next(t)},t}();var U=l,H=[{name:"Disc",icon:"hdd"},{name:"URL",icon:"link"}],B=function(){function t(t){this._uploadService=t,this.uploads=H,this.selectedFileGuid=new e.EventEmitter,this.selectedDirectory=new e.EventEmitter,this.urlForUpload=new e.EventEmitter,this.closing=new e.EventEmitter,this.showUploadUrl=!1,this.showUploadFile=!1}return t.prototype.ngOnInit=function(){},t.prototype.getSize=function(t){var e=t/1024/1024;if(e>1)return Math.round(100*e)/100+" MB";var o=t/1024;return o>1?Math.round(100*o)/100+" KB":t+" Bytes"},t.prototype.getFormatName=function(t){return R.find(t.name,t.directory).format},t.prototype.getFormatIcon=function(t){return R.find(t.name,t.directory).icon},t.prototype.choose=function(t){this.selectedFile=t,t.directory||t.isDirectory?this.selectedDirectory.emit(t.name):this.selectedFileGuid.emit(t.guid)},t.prototype.goUp=function(){if(this.selectedFile){var t=this.selectedFile.guid;t=t.length>0&&-1===t.indexOf("/")?"":t.replace(/\/[^\/]+\/?$/,""),this.selectedDirectory.emit(t)}},t.prototype.selectUpload=function(t){"URL"===t?this.showUploadUrl=!0:(this.showUploadUrl=!1,U("#gd-upload-input").trigger("click"))},t.prototype.refresh=function(t){t?(this.files=null,this.selectedDirectory.emit(""),this.showUploadUrl=!1,this.selectedFile=null):this.closing.emit(!0)},t.prototype.showSpinner=function(){return!this.files},t.prototype.uploadUrl=function(t){t&&(this.urlForUpload.emit(t),this.cleanUpload())},t.prototype.handleFileInput=function(t){this._uploadService.changeFilesList(t)},t.prototype.cleanUpload=function(){this.showUploadFile=!1,this.showUploadUrl=!1},t.decorators=[{type:e.Component,args:[{selector:"gd-browse-files-modal",template:'\r\n
\r\n
\r\n \r\n Drop file here to upload\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Upload file\r\n \r\n \r\n \r\n \r\n \r\n
{{item.name}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
FILE
\r\n
SIZE
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
..
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{file?.name}}
\r\n
{{getFormatName(file)}}
\r\n
\r\n
\r\n
\r\n {{getSize(file?.size)}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n  Loading... Please wait.\r\n
\r\n
\r\n
\r\n',styles:[".gd-modal-table{width:100%;text-align:left}#gd-browse-section{width:1036px;height:561px;overflow-y:auto}.list-files-header{height:60px;color:#6e6e6e;font-size:13px;font-weight:700;background-color:#f4f4f4;margin-top:24px}.list-files-header.upload-url{margin-top:20px}.header-name{padding-left:24px;width:90%;line-height:60px}.header-size{padding-right:27px;line-height:60px}.file-size,.header-size{width:10%;color:#777;text-align:right}.file-description{display:flex;width:90%;padding:18px 0 18px 24px;font-size:14px;flex:1;cursor:pointer;overflow:hidden}.file-size{font-size:12px;padding:0 27px 0 0;width:10%;line-height:79px}.list-files-header,.list-files-lines{display:flex;width:100%;justify-content:space-between}.gd-modal-spinner{background-color:#fff;width:100%;height:20px;text-align:center;font-size:16px}.gd-cancel-button{padding:7px;background:0 0;width:28px;overflow:hidden}.gd-cancel-button i{font-size:21px}.gd-file-name{white-space:nowrap;overflow:hidden;width:100%;text-overflow:ellipsis}.go-up{display:flex;font-size:26px;cursor:pointer;color:#4b566c;height:79px}.go-up-dots{margin-left:20px;margin-top:22px;font-size:16px}.go-up-icon{display:block;padding:18px 0 18px 24px}.upload-panel{display:flex;position:relative;width:100%}.upload-panel .context{display:flex;flex-direction:column;width:100%;margin-left:24px;margin-top:24px;margin-right:24px}.upload-panel .context .context-actions{display:flex;flex-direction:row;width:100%}.upload-panel .context .context-actions :last-child{margin-right:0}.upload-panel .context .context-actions ::ng-deep .button{height:37px;width:96px;padding:0;justify-content:center}.upload-panel .context .context-actions ::ng-deep .button ::ng-deep .text{font-size:10px}.upload-panel .context .context-panel{display:flex;flex-direction:row;width:100%;margin-top:20px}.upload-panel .context .context-panel .upload-url{display:flex;flex-direction:row;width:100%}.upload-panel .context .context-panel .upload-url .url-input{width:100%;height:27px;border:1px solid #25c2d4;font-size:14px;padding-left:6px}.upload-panel .context .context-panel .upload-url .url-check{width:31px;height:31px;color:#fff;font-size:15px;background-color:#25c2d4}.upload-panel .context .context-panel .upload-url .url-check .ng-fa-icon{display:block;padding:8px}.upload-panel gd-drop-down{margin-right:10px}.file-description .ng-fa-icon.fa-file-pdf{color:#e04e4e}.file-description .ng-fa-icon.fa-file-word{color:#539cf0}.file-description .ng-fa-icon.fa-file-powerpoint{color:#e29e1e}.file-description .ng-fa-icon.fa-file-excel{color:#7cbc46}.file-description .ng-fa-icon.fa-file-image{color:#c375ed}.file-description .ng-fa-icon.fa-file,.file-description .ng-fa-icon.fa-file-alt,.file-description .ng-fa-icon.fa-file-text .fa-folder{color:#4b566c}.file-description .ng-fa-icon{font-size:32px}.file-name{font-size:16px;color:#6e6e6e;overflow:hidden;text-overflow:ellipsis}.file-name-format{padding-left:11px;overflow:hidden}.file-format{font-size:10px;padding-top:3px;color:#acacac}.go-up,.list-files-lines{border-bottom:1px solid #e7e7e7}.list-files-lines:hover{background-color:#e5e5e5}.gd-dnd-wrap{background-color:#fff;cursor:default;position:absolute;width:100%;height:calc(100% - 60px);background:rgba(255,255,255,.7);z-index:1;display:flex;justify-content:center;align-items:center}.dnd-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;top:259px;position:absolute}.dnd-wrapper .text{color:#6e6e6e;font-size:14px}.dnd-wrapper .icon{display:flex;width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}@media (max-width:1037px){.file-size,.header-size{width:18%}.gd-dnd-wrap{width:95%}#gd-browse-section{width:100%;height:calc(100% - 146px)}}"]}]}],t.ctorParameters=function(){return[{type:L}]},t.propDecorators={files:[{type:e.Input}],uploadConfig:[{type:e.Input}],selectedFileGuid:[{type:e.Output}],selectedDirectory:[{type:e.Output}],urlForUpload:[{type:e.Output}],closing:[{type:e.Output}]},t}();var N=function(){function t(){this._observer=new n.Subject,this._zoomChange=this._observer.asObservable()}return Object.defineProperty(t.prototype,"zoom",{get:function(){return this._zoom},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"zoomChange",{get:function(){return this._zoomChange},enumerable:!0,configurable:!0}),t.prototype.changeZoom=function(t){this._zoom=t,this._observer.next(t)},t.prototype.createZoomOption=function(t,e,o){return void 0===o&&(o=!1),{value:t,name:e,separator:o}},t.prototype.zoomOptions=function(t,e){return[this.createZoomOption(25,"25%"),this.createZoomOption(50,"50%"),this.createZoomOption(100,"100%"),this.createZoomOption(150,"150%"),this.createZoomOption(200,"200%"),this.createZoomOption(300,"300%"),this.createZoomOption(0,"",!0),this.createZoomOption(t,"Fit Width"),this.createZoomOption(e,"Fit Height")]},t}();var W=function(){function t(){var t=this;this._checkPreload=new n.Observable((function(e){return t._observer=e}))}return Object.defineProperty(t.prototype,"checkPreload",{get:function(){return this._checkPreload},enumerable:!0,configurable:!0}),t.prototype.changeLastPageInView=function(t){this._observer&&this._observer.next(t)},t}();var $=function(){function t(t){this._pagePreloadService=t,this._currentPage=0,this._countPages=0,this._observer=new n.BehaviorSubject(null),this._navigate=this._observer.asObservable()}return Object.defineProperty(t.prototype,"navigate",{get:function(){return this._navigate},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"countPages",{get:function(){return this._countPages},set:function(t){this._countPages=t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"currentPage",{get:function(){return this._currentPage},set:function(t){this._currentPage=t},enumerable:!0,configurable:!0}),t.prototype.nextPage=function(){this._currentPage1&&(this._currentPage--,this.navigateTo(this._currentPage))},t.prototype.toLastPage=function(){this._currentPage=this._countPages,this.navigateTo(this._currentPage)},t.prototype.toFirstPage=function(){this._currentPage=1,this.navigateTo(this._currentPage)},t.prototype.navigateTo=function(t){this.currentPage=t,this._pagePreloadService.changeLastPageInView(t),this._observer.next(t)},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[{type:W}]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t(e.ɵɵinject(W))},token:t,providedIn:"root"}),t}();var V=l,q=function(){function t(t,e,o,n){var i=this;this._elementRef=t,this._zoomService=e,this._windowService=o,this._navigateService=n,this.wait=!1,this.docWidth=null,this.docHeight=null,this.viewportWidth=null,this.viewportHeight=null,this.scale=null,this.lastScale=null,this.container=null,this.doc=null,this.x=0,this.lastX=0,this.y=0,this.lastY=0,this.pinchCenter=null,this.pinchCenterOffset=null,this.curWidth=0,this.curHeight=0,e.zoomChange.subscribe((function(t){i.zoom=t})),this.isDesktop=o.isDesktop(),this._navigateService.navigate.subscribe((function(t){i.selectedPage=t}))}return t.prototype.ngOnInit=function(){this.ifPresentation()&&(this.selectedPage=this._navigateService.currentPage)},t.prototype.ngOnChanges=function(){},t.prototype.ngAfterViewInit=function(){this.doc=this._elementRef.nativeElement.children.item(0).children.item(0),this.container=this._elementRef.nativeElement,this.docWidth=this.doc.clientWidth,this.docHeight=this.doc.clientHeight,this.viewportWidth=this.doc.offsetWidth,this.scale=this.viewportWidth/this.docWidth*this._zoomService.zoom/100,this.lastScale=this.scale,this.viewportHeight=this.container.offsetHeight,this.curWidth=this.docWidth*this.scale,this.curHeight=this.docHeight*this.scale;new d(this.container)},t.prototype.ifExcel=function(){return"Microsoft Excel"===R.find(this.file.guid,!1).format},t.prototype.ifPresentation=function(){return"Microsoft PowerPoint"===R.find(this.file.guid,!1).format},t.prototype.getDimensionWithUnit=function(t,e){return this.ifPresentation()&&!this.isVisible(e)?0:t+(this.mode?R.find(this.file.guid,!1).unit:"px")},t.prototype.ifEdge=function(){return navigator.userAgent.toLowerCase().indexOf("edge")>-1},t.prototype.ngAfterViewChecked=function(){var t=this._elementRef.nativeElement.querySelectorAll(".gd-wrapper").item(0);t&&V(t).trigger("focus")},t.prototype.isVisible=function(t){return!this.ifPresentation()||t===this.selectedPage},t.decorators=[{type:e.Component,args:[{selector:"gd-document",template:'
Please wait...
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n',styles:[":host{flex:1;transition:.4s;background-color:#e7e7e7;height:100%;overflow:scroll;touch-action:auto!important}:host .document{-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;user-select:text!important;touch-action:auto!important}.page{display:inline-block;background-color:#fff;margin:20px;box-shadow:0 3px 6px rgba(0,0,0,.16);transition:.3s}.page.excel{overflow:auto}.page.presentation{margin:0;transition:unset}.page.presentation.active{margin:20px}.wait{position:absolute;top:55px;left:Calc(30%)}.panzoom{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-content:flex-start}@media (max-width:1037px){.page{min-width:unset!important;min-height:unset!important;margin:5px 0}}"]}]}],t.ctorParameters=function(){return[{type:e.ElementRef},{type:N},{type:b},{type:$}]},t.propDecorators={mode:[{type:e.Input}],preloadPageCount:[{type:e.Input}],file:[{type:e.Input}],selectedPage:[{type:e.Input}]},t}();var G=function(){function t(){}return t.prototype.ngOnInit=function(){!!/(MSIE|Trident\/|Edge\/)/i.test(navigator.userAgent)&&0===this.number&&(this.editable=!1)},t.prototype.ngOnChanges=function(t){this.data=null!==this.data?this.data.replace(/>\s+<").replace(/\uFEFF/g,"").replace(/href="\/viewer/g,'href="http://localhost:8080/viewer').replace(/src="\/viewer/g,'src="http://localhost:8080/viewer').replace(/data="\/viewer/g,'data="http://localhost:8080/viewer'):null;this.imgData="data:image/png;base64,",this.isHtml||(this.imgData+=this.data)},t.decorators=[{type:e.Component,args:[{selector:"gd-page",template:'
\r\n
\r\n \r\n
\r\n \r\n  Loading... Please wait.\r\n
\r\n
\r\n',styles:[".gd-page-spinner{margin-top:150px;text-align:center}.gd-wrapper{width:inherit;height:inherit}.gd-wrapper div{width:100%}::ng-deep .gd-highlight{background-color:#ff0}::ng-deep .gd-highlight-select{background-color:#ff9b00}"]}]}],t.ctorParameters=function(){return[]},t.propDecorators={angle:[{type:e.Input}],width:[{type:e.Input}],height:[{type:e.Input}],number:[{type:e.Input}],data:[{type:e.Input}],isHtml:[{type:e.Input}],editable:[{type:e.Input}]},t}();var X=function(){function t(t){this.sanitizer=t}return t.prototype.transform=function(t){return this.sanitizer.bypassSecurityTrustHtml(t)},t.decorators=[{type:e.Pipe,args:[{name:"safeHtml"}]}],t.ctorParameters=function(){return[{type:u.DomSanitizer}]},t}();var Z=function(){function t(t){this.sanitizer=t}return t.prototype.transform=function(t){return this.sanitizer.bypassSecurityTrustResourceUrl(t)},t.decorators=[{type:e.Pipe,args:[{name:"safeResourceHtml"}]}],t.ctorParameters=function(){return[{type:u.DomSanitizer}]},t}();var Y=function(){function t(t){this.sanitizer=t}return t.prototype.transform=function(t){return this.sanitizer.bypassSecurityTrustStyle(t)},t.decorators=[{type:e.Pipe,args:[{name:"safeStyle"}]}],t.ctorParameters=function(){return[{type:u.DomSanitizer}]},t}();var J=function(){function t(){}return t.prototype.transform=function(t,e){if(!e)return t;var o=new RegExp(e,"gi");return t.replace(o,"$&")},t.decorators=[{type:e.Pipe,args:[{name:"highlight"}]}],t}(),K=function(){function t(t){this._uploadService=t,this.closeUpload=new e.EventEmitter}return t.prototype.ngOnInit=function(){},t.prototype.handleFileInput=function(t){this._uploadService.changeFilesList(t),this.onCloseUpload()},t.prototype.onCloseUpload=function(){this.closeUpload.emit(!0)},t.prototype.close=function(t){"gd-dropZone"===t.target.id&&this.onCloseUpload()},t.decorators=[{type:e.Component,args:[{selector:"gd-upload-file-zone",template:'
\r\n
\r\n \r\n
\r\n

Drag & Drop your files here

\r\n

OR

\r\n
\r\n \r\n
\r\n
\r\n',styles:[".gd-drag-n-drop-wrap{border:2px dashed #ccc;background-color:#f8f8f8;text-align:center;cursor:default;position:absolute;width:-webkit-fill-available;left:1px;display:flex;align-content:center;flex-direction:column;justify-content:center;opacity:.9;z-index:1}.gd-drag-n-drop-wrap h2{color:#959da5;margin:5px 0;font-size:15px;font-weight:300}.gd-drag-n-drop-wrap h4{color:#cacaca;font-weight:300;font-size:12px;margin:10px 0 15px}.gd-drag-n-drop-icon .fa-cloud-download-alt{color:#d1d1d1;font-size:110px}.gd-drag-n-drop-buttons i{margin-right:5px}.gd-drag-n-drop-buttons .btn{width:134px;height:35px;margin:0 10px;font-size:12px;font-weight:400}.gd-drag-n-drop-wrap.hover{background:#ddd;border-color:#aaa}"]}]}],t.ctorParameters=function(){return[{type:L}]},t.propDecorators={closeUpload:[{type:e.Output}]},t}();var Q=function(){function t(t){this._uploadFilesService=t,this.closing=new e.EventEmitter,this.opening=new e.EventEmitter,this.dropped=new e.EventEmitter,this.active=!1,this.dragCounter=0}return t.prototype.onDragEnter=function(t){t.preventDefault(),t.stopPropagation(),this.dragCounter++,this.active=!0,this.opening.emit(!0)},t.prototype.onDragOver=function(t){return t.preventDefault(),t.stopPropagation(),!1},t.prototype.onDragLeave=function(t){t.preventDefault(),t.stopPropagation(),this.dragCounter--,0===this.dragCounter&&(this.active=!1,this.closeArea())},t.prototype.onDrop=function(t){t.preventDefault(),t.stopPropagation();var e=t.dataTransfer.files;e.length>0&&(this.active=!1,this.dropped.emit(!0),this._uploadFilesService.changeFilesList(e),this.closeArea())},t.prototype.onClick=function(t){this.closeArea()},t.prototype.closeArea=function(){this.closing.emit(!0),this.opening.emit(!1)},t.decorators=[{type:e.Directive,args:[{selector:"[gdDnd]"}]}],t.ctorParameters=function(){return[{type:L}]},t.propDecorators={closing:[{type:e.Output}],opening:[{type:e.Output}],dropped:[{type:e.Output}],active:[{type:e.HostBinding,args:["class.active"]}],onDragEnter:[{type:e.HostListener,args:["dragenter",["$event"]]}],onDragOver:[{type:e.HostListener,args:["dragover",["$event"]]}],onDragLeave:[{type:e.HostListener,args:["dragleave",["$event"]]}],onDrop:[{type:e.HostListener,args:["drop",["$event"]]}],onClick:[{type:e.HostListener,args:["click",["$event"]]}]},t}();var tt=l,et=function(){function t(){}return t.prototype.checkInViewport=function(t,e,o,n){if(void 0===e&&(e=100),void 0===o&&(o=0),void 0===n&&(n=.5),!t)return!1;var i=n,r=tt(window),s=r.scrollTop(),a=r.scrollLeft()+o,c=r.scrollLeft()+r.width()-10,p=r.scrollTop()+r.height();isNaN(e)&&(e=100);var l=e/100,d=tt(t).outerHeight()*l,u=tt(t).outerWidth()*l;if(!u||!d)return!1;var g=tt(t).offset(),h=g.left*l+u,f=g.top*l+d;if(!!(ch||pf))return!1;var m=parseFloat(Math.min(1,(f-s)/d).toFixed(2)),v=parseFloat(Math.min(1,(p-g.top*l)/d).toFixed(2));return parseFloat(Math.min(1,(h-a)/u).toFixed(2))*parseFloat(Math.min(1,(c-g.left*l)/u).toFixed(2))>=i&&m*v>=.5},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t},token:t,providedIn:"root"}),t}(),ot=l,nt=function(){function t(t,e,o,n,i,r){var s=this;this._elementRef=t,this._navigateService=e,this._pagePreloadService=o,this._zoomService=n,this._windowService=i,this._viewportService=r,this.zoom=100,this.loadedPagesSet=new Set,this.zoom=n.zoom?n.zoom:this.zoom,n.zoomChange.subscribe((function(t){s.zoom=t||s.zoom,s.refresh()}))}return t.prototype.ngAfterViewInit=function(){var t=this;this.zoom=this._zoomService.zoom?this._zoomService.zoom:this.zoom,this._navigateService.navigate.subscribe((function(e){t.currentPage=e,t.scrollToPage(e)})),this.refresh()},t.prototype.scrolling=function(){this.refresh()},t.prototype.resizing=function(){this.refresh()},t.prototype.scrollToPage=function(t){var e=this._elementRef.nativeElement,o=this.getPage(t),n=t>0?this.getPage(t-1):null,i=n&&ot(n).offset().top===ot(o).offset().top;if(!this._viewportService.checkInViewport(o,this.zoom)||!i){var r={left:0,top:this.calculateOffset(t)};e&&e.scroll(r)}},t.prototype.getChildren=function(){var t=this._elementRef?this._elementRef.nativeElement:null;if(t)return t.children.item(0).children.item(0).children},t.prototype.getPage=function(t){var e=this._elementRef?this._elementRef.nativeElement:null;if(e)return e.children.item(0).children.item(0).children.item(t-1)},t.prototype.calculateOffset=function(t){for(var e=this._windowService.isFirefox()?1:this.countPagesOnWidth(),o=this._windowService.isDesktop()?40:10,n=0,i=1;i0?s*this.getZoom()+o:0}return n},t.prototype.countPagesOnWidth=function(){var t=this.getPage(1),e=Math.floor((this.getWidth()-150)/(t.getBoundingClientRect().width*this.getZoom()));return 0===e?1:e},t.prototype.refresh=function(){var t,e=!1,o=this.getPage(this.currentPage),n=this.currentPage&&o?o.getBoundingClientRect():null;for(t=1;t0?this.mouseWheelUp.emit(t):e<0&&this.mouseWheelDown.emit(t)},t.decorators=[{type:e.Directive,args:[{selector:"[gdMouseWheel]"}]}],t.propDecorators={mouseWheelUp:[{type:e.Output}],mouseWheelDown:[{type:e.Output}],onMouseWheelChrome:[{type:e.HostListener,args:["mousewheel",["$event"]]}],onMouseWheelFirefox:[{type:e.HostListener,args:["DOMMouseScroll",["$event"]]}],onMouseWheelIE:[{type:e.HostListener,args:["onmousewheel",["$event"]]}]},t}();var rt=function(){function t(t,e,o){this._zoomService=t,this._windowService=e,this.zoomActive=!0,this.el=o}return t.prototype.ngOnDestroy=function(){},t.prototype.ngOnChanges=function(){this.setStyles(this._zoomService.zoom),this.resizePages(this._zoomService.zoom)},t.prototype.ngOnInit=function(){var t=this;this.zoomActive&&(this.setStyles(this._zoomService.zoom),this._zoomService.zoomChange.subscribe((function(e){t.setStyles(e),t.resizePages(e)})))},t.prototype.setStyles=function(t){if(this.zoomActive){var e=100===t?1:t/100;this._windowService.isEdge()?this.zoomInt=e:this.zoomInt=null,this._windowService.isEdge()?(this.transform="",this.transformOrigin=""):(this.transform="scale("+e+")",this.transformOrigin="top left");var o=0;this.file.pages.forEach((function(t){t.width>o&&(o=t.width)})),this.minWidth=o+R.find(this.file.guid,!1).unit}},t.prototype.getScrollWidth=function(t){return t.offsetWidth-t.clientWidth},t.prototype.getScrollHeight=function(t){return t.offsetHeight-t.clientHeight},t.prototype.resizePages=function(t){var e=100===t?1:t/100,o=this.el.nativeElement.parentElement.offsetWidth,n=this.el.nativeElement.parentElement.offsetHeight,i=this.getScrollWidth(this.el.nativeElement.parentElement),r=this.getScrollHeight(this.el.nativeElement.parentElement);this.width=o/e-i/e+"px",this.height=n/e-r/e+"px"},t.prototype.ngAfterViewInit=function(){this.setStyles(this._zoomService.zoom)},t.decorators=[{type:e.Directive,args:[{selector:"[gdZoom]"}]}],t.ctorParameters=function(){return[{type:N},{type:b},{type:e.ElementRef}]},t.propDecorators={zoomActive:[{type:e.Input}],file:[{type:e.Input}],zoomInt:[{type:e.HostBinding,args:["style.zoom"]}],transform:[{type:e.HostBinding,args:["style.transform"]}],transformOrigin:[{type:e.HostBinding,args:["style.transform-origin"]}],width:[{type:e.HostBinding,args:["style.width"]}],height:[{type:e.HostBinding,args:["style.height"]}],minWidth:[{type:e.HostBinding,args:["style.min-width"]}]},t}();var st=function(){function t(){this._observer=new n.Subject,this._onClose=this._observer.asObservable()}return Object.defineProperty(t.prototype,"onClose",{get:function(){return this._onClose},enumerable:!0,configurable:!0}),t.prototype.close=function(t){this._observer.next(t)},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t},token:t,providedIn:"root"}),t}();var at=function(){function t(t){var o=this;this._onCloseService=t,this.disabled=!1,this.selected=new e.EventEmitter,this.isOpen=!1,t.onClose.subscribe((function(){o.close()}))}return t.prototype.open=function(){this.disabled||(this.isOpen=!0)},t.prototype.close=function(){this.isOpen=!1},t.prototype.onClickOutside=function(t){this.close()},t.prototype.toggle=function(t){t.preventDefault(),t.stopPropagation(),this.disabled||(this.isOpen=!this.isOpen)},t.prototype.select=function(t,e){t.preventDefault(),t.stopPropagation(),this.selected.emit(e),this.close()},t.decorators=[{type:e.Component,args:[{selector:"gd-select",template:'
\r\n
\r\n {{showSelected?.name}}\r\n
\r\n \r\n \r\n \r\n
\r\n',styles:[".select{min-width:50px;display:flex;flex-direction:row;justify-content:center;align-items:center;color:#959da5}.selected-value{font-size:14px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:clip;max-width:70px}.selected-value.inactive{cursor:not-allowed;color:#ccc}.nav-caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-right:4px solid transparent;border-left:4px solid transparent;cursor:pointer}.nav-caret.inactive{cursor:not-allowed;color:#ccc}.dropdown-menu{position:absolute;top:49px;z-index:1000;float:left;min-width:96px;list-style:none;font-size:13px;text-align:left;background-color:#fff;box-shadow:0 3px 6px rgba(0,0,0,.3);background-clip:padding-box}.dropdown-menu .option{display:block;padding:7px 0 7px 7px;clear:both;font-weight:400;line-height:1.42857143;white-space:nowrap;cursor:pointer;font-size:10px}.dropdown-menu .option:hover{background-color:#25c2d4;color:#fff!important}.dropdown-menu-separator{height:1px;overflow:hidden;background-color:#f4f4f4;padding:0!important}"]}]}],t.ctorParameters=function(){return[{type:st}]},t.propDecorators={options:[{type:e.Input}],disabled:[{type:e.Input}],showSelected:[{type:e.Input}],selected:[{type:e.Output}],isOpen:[{type:e.Input}],icon:[{type:e.Input}]},t}();var ct=function(){function t(){}return t.prototype.updateCursor=function(){this.cursor=!!this.dis},t.prototype.ngOnInit=function(){this.updateCursor()},t.prototype.ngOnChanges=function(t){this.updateCursor()},t.decorators=[{type:e.Directive,args:[{selector:"[gdDisabledCursor]"}]}],t.ctorParameters=function(){return[]},t.propDecorators={dis:[{type:e.Input}],cursor:[{type:e.HostBinding,args:["class.inactive"]}]},t}();var pt=function(){function t(){this.withMargin=!0}return t.prototype.updateCursor=function(){"string"==typeof this.angle&&(this.angle=parseInt(this.angle,10)),this.angle?(this.animation="none",this.transition="none",this.transform="rotate("+this.angle+"deg)"):0===this.angle&&this.animation&&(this.animation=null,this.transition=null,this.transform=null),this.withMargin&&(90===this.angle||270===this.angle||-90===this.angle||-270===this.angle?this.isHtmlMode?this.isLandscape()?this.margin="164px 254px":this.margin="-111px 254px":this.isLandscape()?this.margin="129px 100px -79px":this.margin="-72px 100px -79px":-180===this.angle||180===this.angle?this.margin="280px":this.margin=null)},t.prototype.isLandscape=function(){return this.width>this.height},t.prototype.ngOnInit=function(){this.updateCursor()},t.prototype.ngOnChanges=function(t){this.updateCursor()},t.decorators=[{type:e.Directive,args:[{selector:"[gdRotation]"}]}],t.ctorParameters=function(){return[]},t.propDecorators={angle:[{type:e.Input}],isHtmlMode:[{type:e.Input}],width:[{type:e.Input}],height:[{type:e.Input}],withMargin:[{type:e.Input}],animation:[{type:e.HostBinding,args:["style.animation"]}],transition:[{type:e.HostBinding,args:["style.transition-property"]}],transform:[{type:e.HostBinding,args:["style.transform"]}],margin:[{type:e.HostBinding,args:["style.margin"]}]},t}();var lt=function(){function t(){this.fileDropped=new e.EventEmitter,this.showUploadFile=!1}return t.prototype.ngOnInit=function(){},t.prototype.dropped=function(t){t&&(this.fileDropped.emit(t),this.showUploadFile=!1)},t.decorators=[{type:e.Component,args:[{selector:"gd-init-state",template:'
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {{text}}\r\n
\r\n
\r\n',styles:[".wrapper{color:#959da5;background-color:#e7e7e7;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%}.icon{font-size:65px;margin-bottom:43px;display:flex;color:#959da5}.start{font-size:15px;text-align:center;color:#959da5}.gd-drag-n-drop-wrap.active{background-color:#fff;position:fixed;top:0;background:rgba(255,255,255,.8)}.gd-drag-n-drop-wrap.active .init-state-wrapper{position:absolute;opacity:.2;top:unset}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper{top:0;z-index:999}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper .icon{width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}.gd-drag-n-drop-wrap.active .text{color:#6e6e6e;font-size:14px}.init-state-dnd-wrapper,.init-state-wrapper{display:flex;flex-direction:column;width:250px;height:250px;align-items:center;justify-content:center}.init-state-wrapper{top:-60px;position:relative}"]}]}],t.ctorParameters=function(){return[]},t.propDecorators={icon:[{type:e.Input}],text:[{type:e.Input}],fileDropped:[{type:e.Output}]},t}();var dt=function(){function t(){var t=this;this._render=new n.Observable((function(e){return t._observer=e})),this._renderBlob=new n.Observable((function(e){return t._observerBlob=e}))}return Object.defineProperty(t.prototype,"renderPrint",{get:function(){return this._render},enumerable:!0,configurable:!0}),t.prototype.changePages=function(t){this._observer.next(t)},Object.defineProperty(t.prototype,"renderPrintBlob",{get:function(){return this._renderBlob},enumerable:!0,configurable:!0}),t.prototype.changeBlob=function(t){this._observerBlob.next(t)},t}();var ut=function(){function t(t){var e=this;this._renderService=t,t.renderPrint.subscribe((function(t){e.renderPrint(t)})),t.renderPrintBlob.subscribe((function(t){e.renderPrintBlob(t)}))}return t.prototype.renderPrint=function(t){var e,o,n="";try{for(var i=m(t),r=i.next();!r.done;r=i.next()){var s=r.value;n+='
'}}catch(t){e={error:t}}finally{try{r&&!r.done&&(o=i.return)&&o.call(i)}finally{if(e)throw e.error}}this.openWindow(n,t[0].width,t[0].height)},t.prototype.openWindow=function(t,e,o){var n="";if(e>595&&o>842){var i=Math.round(o/842)/100;n=".gd-page img { width: 100%; margin: 0; padding: 0;}",navigator.userAgent.toLowerCase().indexOf("firefox")>-1&&(n=".gd-page img { transform: scale("+i+");}")}var r="";var s=window.open("","PrintWindow","width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes");s.focus(),s.document.writeln(r),s.document.writeln(t),s.document.close(),setTimeout((function(){s.focus(),s.print(),s.close()}),100)},t.prototype.renderPrintBlob=function(t){var e=URL.createObjectURL(t),o=window.open(e,"PrintWindow","width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes");o.focus(),o.print(),o.close()},t.decorators=[{type:e.Directive,args:[{selector:"[gdRenderPrint]"}]}],t.ctorParameters=function(){return[{type:dt}]},t.propDecorators={htmlMode:[{type:e.Input}]},t}();var gt=function(){function t(){this._observer=new n.BehaviorSubject("Server is not available"),this._messageChange=this._observer.asObservable()}return Object.defineProperty(t.prototype,"messageChange",{get:function(){return this._messageChange},enumerable:!0,configurable:!0}),t.prototype.changeMessage=function(t){this._observer.next(t)},t}();var ht=function(){function t(t){var e=this;t.messageChange.subscribe((function(t){return e.message=t}))}return t.prototype.ngOnInit=function(){},t.decorators=[{type:e.Component,args:[{selector:"gd-error-modal",template:'\r\n
\r\n \r\n
\r\n
Something went wrong
\r\n
{{message ? message : \'Server is not available\'}}
\r\n
\r\n
\r\n
\r\n',styles:[".gd-modal-error{display:inline-flex;flex-direction:column;flex:1}.gd-modal-error .gd-modal-error-message{font-size:12px;margin:0 24px 24px 0;word-break:break-word}.gd-modal-error .gd-modal-error-title{font-size:16px;font-weight:700;margin:14px 0 10px}#gd-error-section{max-width:468px;max-height:204px;display:flex}#gd-error-section fa-icon{flex:1;color:#e04e4e;font-size:40px;margin:13px 23px 90px;text-align:center;max-width:46px}"]}]}],t.ctorParameters=function(){return[{type:gt}]},t}();var ft=function(){function t(){this._observer=new n.Subject,this._passChange=this._observer.asObservable()}return Object.defineProperty(t.prototype,"passChange",{get:function(){return this._passChange},enumerable:!0,configurable:!0}),t.prototype.setPassword=function(t){this._observer.next(t)},t}();var mt=l,vt=function(){function t(t,o){var n=this;this._passwordService=o,this.cancelEvent=new e.EventEmitter,t.messageChange.subscribe((function(t){return n.message=t}))}return t.prototype.ngOnInit=function(){},t.prototype.setPassword=function(t){this._passwordService.setPassword(t)},t.prototype.onCloseOpen=function(t){t?setTimeout((function(){var t=mt("#password");t&&t.focus()}),100):mt("#password").val("")},t.prototype.cancel=function(t){mt("#password").val(""),this.cancelEvent.emit(!0)},t.decorators=[{type:e.Component,args:[{selector:"gd-password-required",template:'\r\n
\r\n
\r\n \r\n \r\n {{message}}\r\n \r\n Open\r\n \r\n
\r\n
\r\n
\r\n',styles:["#gd-password-section{width:375px;height:164px}.gd-password-wrap{display:flex;flex-direction:column;margin:24px}.gd-password-wrap label{font-size:14px;color:#acacac;padding-bottom:12px}.gd-password-wrap input{height:30px;border:1px solid #25c2d4}.gd-password-wrap input.error{border-color:#e04e4e}.gd-password-wrap gd-button{align-self:flex-end}.gd-password-wrap ::ng-deep .button{height:37px;width:72px;padding:0;justify-content:center}.gd-password-wrap ::ng-deep .button ::ng-deep .text{font-size:10px!important}.gd-password-error{color:#e04e4e;padding:10px 0 12px;height:12px;line-height:12px;font-size:12px}@media (max-width:1037px){#gd-password-section{min-width:375px}}"]}]}],t.ctorParameters=function(){return[{type:gt},{type:ft}]},t.propDecorators={cancelEvent:[{type:e.Output}]},t}();var yt=function(){function t(t,e){this._modalService=t,this._messageService=e}return t.prototype.intercept=function(t,e){var o=this,r="background: maroon; color: white";return e.handle(t).pipe(i.map((function(t){return t})),i.catchError((function(t){if(t instanceof p.HttpErrorResponse)switch(t.status){case A.BadRequest:console.error("%c Bad Request 400",r);break;case A.Unauthorized:console.error("%c Unauthorized 401",r);break;case A.NotFound:console.error("%c Not Found 404",r);break;case A.TimeOut:console.error("%c TimeOut 408",r);break;case A.InternalServerError:console.error("%c big bad 500",r),o._messageService.changeMessage(t.error.message),o._modalService.open(P.ErrorMessage);break;case A.Forbidden:console.error("%c Forbidden 403",r),o._messageService.changeMessage(t.error.message),o._modalService.open(P.PasswordRequired)}return n.throwError(t)})))},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[{type:E},{type:gt}]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t(e.ɵɵinject(E),e.ɵɵinject(gt))},token:t,providedIn:"root"}),t}();var bt=function(){function t(){this._observer=new n.Subject,this._textChange=this._observer.asObservable(),this._observerCurrent=new n.Subject,this._currentChange=this._observerCurrent.asObservable(),this._observerTotal=new n.Subject,this._totalChange=this._observerTotal.asObservable()}return Object.defineProperty(t.prototype,"textChange",{get:function(){return this._textChange},enumerable:!0,configurable:!0}),t.prototype.setText=function(t){this._observer.next(t)},Object.defineProperty(t.prototype,"currentChange",{get:function(){return this._currentChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"totalChange",{get:function(){return this._totalChange},enumerable:!0,configurable:!0}),t.prototype.setCurrent=function(t){this._observerCurrent.next(t)},t.prototype.setTotal=function(t){this._observerTotal.next(t)},t}();var xt=function(){function t(t){var o=this;this._searchService=t,this.hidePanel=new e.EventEmitter(!1),this.current=0,this.total=0,t.totalChange.subscribe((function(t){o.total=t,o.current=0!==t?1:0,o._searchService.setCurrent(o.current)}))}return t.prototype.ngOnInit=function(){},t.prototype.setText=function(t){this._searchService.setText(t)},t.prototype.hide=function(){this.setText(""),this.hidePanel.emit(!0)},t.prototype.prev=function(){this.current>1&&(this.current--,this._searchService.setCurrent(this.current))},t.prototype.next=function(){this.current\r\n \r\n
{{current}} of {{total}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n',styles:[".gd-nav-search-btn{margin:3px 0 4px}.gd-nav-search-cancel{color:#fff;font-size:14px;width:37px}.gd-search-count{color:#959da5;font-size:12px;position:absolute;right:148px;top:14px}.gd-nav-search-container{background-color:#3e4e5a;width:410px;position:fixed;left:50%;top:60px;z-index:2;transform:translate(-50%,0);display:flex}.gd-search-input{float:left;height:30px;width:267px;font-size:14px;color:#6e6e6e;border:1px solid #25c2d4;margin:7px 0 7px 7px;box-sizing:border-box;padding:6px 0 5px 9px}input[type=text]::-ms-clear{display:none}@media (max-width:1037px){.gd-search-input{width:231px;height:30px;margin:7px 0 7px 5px}.gd-search-count{position:absolute;left:193px;top:15px}.gd-nav-search-container{width:100%}}"]}]}],t.ctorParameters=function(){return[{type:bt}]},t.propDecorators={hidePanel:[{type:e.Output}],textElement:[{type:e.ViewChild,args:["text",{static:!0}]}]},t}();var wt=l,St=function(){function t(t,e,o,n){var i=this;this._elementRef=t,this._searchService=e,this._highlight=o,this._zoomService=n,this.current=0,this.total=0,this.zoom=100,e.currentChange.subscribe((function(t){i.current=t,0!==i.current&&i.moveToCurrent()})),e.textChange.subscribe((function(t){i.text=t,i.highlightSearch()})),this.zoom=n.zoom?n.zoom:this.zoom,n.zoomChange.subscribe((function(t){i.zoom=t||i.zoom}))}return t.prototype.highlightSearch=function(){var t=this._elementRef?this._elementRef.nativeElement:null;if(t){if(this.cleanHighlight(t),this.text){this.highlightEl(t);var e=t.querySelectorAll(".gd-highlight").length;this.total=e}else this.total=0;this._searchService.setTotal(this.total)}},t.prototype.moveToCurrent=function(){if(0!==this.current){this.getZoom();var t=this._elementRef?this._elementRef.nativeElement:null;if(t){t.querySelectorAll(".gd-highlight-select").forEach((function(t){wt(t).removeClass("gd-highlight-select")}));var e=t.querySelectorAll(".gd-highlight")[this.current-1];if(wt(e).addClass("gd-highlight-select"),e){var o={left:0,top:wt(e).offset().top+t.parentElement.parentElement.scrollTop-150};t.parentElement.parentElement.scroll(o)}}}},t.prototype.highlightEl=function(t){var e=wt(t).find("*").contents().filter((function(){var t=this.parentElement.nodeName.toLowerCase(),e=!this.classList||!this.classList.contains("gd-highlight");return 3===this.nodeType&&0!==this.textContent.trim().length&&"style"!==t&&"title"!==t&&"body"!==t&&"script"!==t&&e})),o=this.text,n=this._highlight;e.each((function(){var t=wt(this),e=t.text();e=n.transform(e,o),t.replaceWith(e)})),t.normalize()},t.prototype.cleanHighlight=function(t){for(var e=t.querySelectorAll(".gd-highlight"),o=0;o\r\n \r\n \r\n\r\n',styles:[".top-panel{background:#3e4e5a;display:flex;width:100%;height:90px}.top-panel ::ng-deep .logo{height:30px;font-size:16px}@media (max-width:1037px){.top-panel{height:60px}.top-panel ::ng-deep .logo{height:60px}}"]}]}],t.ctorParameters=function(){return[]},t.propDecorators={logo:[{type:e.Input}],icon:[{type:e.Input}]},t}();var _t=function(){function t(){this._observer=new n.Subject,this._activeTabChange=this._observer.asObservable()}return Object.defineProperty(t.prototype,"activeTabChange",{get:function(){return this._activeTabChange},enumerable:!0,configurable:!0}),t.prototype.changeActiveTab=function(t){this._observer.next(t)},t}();var Pt=function(){function t(t){var e=this;this._tabActivatorService=t,this.disabled=!1,this.active=!1,this.content=!0,this._tabActivatorService.activeTabChange.subscribe((function(t){e.activation(t)}))}return t.prototype.activation=function(t){this.id===t?this.active=!0:this.active=!1},t.prototype.ngOnInit=function(){},t.prototype.selectTab=function(){this.disabled||this._tabActivatorService.changeActiveTab(this.id)},t.decorators=[{type:e.Component,args:[{selector:"gd-tab",template:'
\r\n
{{tabTitle}}
\r\n \r\n
\r\n
\r\n \r\n
\r\n',styles:[".tab-content{height:60px;position:absolute;background-color:#fff;width:100%;left:0;line-height:60px;display:none;z-index:9}.tab-content ::ng-deep .toolbar-panel{height:60px}.tab-content.active{display:flex}.gd-tab{text-align:center;font-size:11px;color:#e5e5e5;height:30px;line-height:30px;cursor:pointer;display:flex;align-items:center;justify-content:center}.gd-tab .icon{display:none;font-size:14px}.gd-tab .title{margin:auto 23px}.gd-tab.active{background-color:#fff;color:#3e4e5a;font-weight:700}@media (max-width:1037px){.gd-tab{height:60px;line-height:60px;width:60px}.gd-tab .title{display:none}.gd-tab .icon{display:block;font-size:22px}}"]}]}],t.ctorParameters=function(){return[{type:_t}]},t.propDecorators={id:[{type:e.Input}],tabTitle:[{type:e.Input}],icon:[{type:e.Input}],disabled:[{type:e.Input}],active:[{type:e.Input}],content:[{type:e.Input}]},t}();var Et=function(){function t(){}return t.decorators=[{type:e.Component,args:[{selector:"gd-tabs",template:'
\r\n \r\n
\r\n',styles:[".gd-tabs{display:flex}"]}]}],t.ctorParameters=function(){return[]},t}(),It=function(){function t(t,e,o,n,i,r,s,a,c,p){this.fontSize=t,this.color=e,this.bgColor=o,this.bold=n,this.italic=i,this.underline=r,this.font=s,this.strikeout=a,this.align=c,this.list=p}return t.default=function(){return new t(10,"#000000","#FFFFFF",!1,!1,!1,"Arial",!1,"","")},t}();var Ot=function(){function t(){this._observerBold=new n.Subject,this._formatBoldChange=this._observerBold.asObservable(),this._observerUnderline=new n.Subject,this._formatUnderlineChange=this._observerUnderline.asObservable(),this._observerUndo=new n.Subject,this._undo=this._observerUndo.asObservable(),this._observerRedo=new n.Subject,this._redo=this._observerRedo.asObservable(),this._observerItalic=new n.Subject,this._formatItalicChange=this._observerItalic.asObservable(),this._observerColor=new n.Subject,this._formatColorChange=this._observerColor.asObservable(),this._observerBgColor=new n.Subject,this._formatBgColorChange=this._observerBgColor.asObservable(),this._observerFontSize=new n.Subject,this._formatFontSizeChange=this._observerFontSize.asObservable(),this._observerFont=new n.Subject,this._formatFontChange=this._observerFont.asObservable(),this._observerStrikeout=new n.Subject,this._formatStrikeoutChange=this._observerStrikeout.asObservable(),this._observerAlign=new n.Subject,this._formatAlignChange=this._observerAlign.asObservable(),this._observerList=new n.Subject,this._formatListChange=this._observerList.asObservable()}return Object.defineProperty(t.prototype,"formatBoldChange",{get:function(){return this._formatBoldChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formatUnderlineChange",{get:function(){return this._formatUnderlineChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formatColorChange",{get:function(){return this._formatColorChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formatBgColorChange",{get:function(){return this._formatBgColorChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formatFontSizeChange",{get:function(){return this._formatFontSizeChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formatFontChange",{get:function(){return this._formatFontChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"undo",{get:function(){return this._undo},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"redo",{get:function(){return this._redo},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formatItalicChange",{get:function(){return this._formatItalicChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formatStrikeoutChange",{get:function(){return this._formatStrikeoutChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formatAlignChange",{get:function(){return this._formatAlignChange},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formatListChange",{get:function(){return this._formatListChange},enumerable:!0,configurable:!0}),t.createFontSizeOption=function(t){return{value:t,name:t+"px",separator:!1}},t.getFontSizeOptions=function(){return[t.createFontSizeOption(8),t.createFontSizeOption(10),t.createFontSizeOption(12),t.createFontSizeOption(14),t.createFontSizeOption(16),t.createFontSizeOption(18),t.createFontSizeOption(20),t.createFontSizeOption(22),t.createFontSizeOption(24)]},t.createFontOption=function(t){return{value:t,name:t,separator:!1}},t.getFontOptions=function(){var t=this,e=[];return["Arial","Calibri","Century Gothic","Comic Sans","Consolas","Courier","Dejavu Sans","Dejavu Serif","Georgia","Gill Sans","Helvetica","Impact","Lucida Sans","Myriad Pro","Open Sans","Palatino","Tahoma","Times New Roman","Trebuchet"].forEach((function(o){e.push(t.createFontOption(o))})),e},t.prototype.changeFormatFontSize=function(t){this._observerFontSize.next(t)},t.prototype.changeFormatBold=function(t){this._observerBold.next(t)},t.prototype.changeFormatUnderline=function(t){this._observerUnderline.next(t)},t.prototype.Undo=function(){this._observerUndo.next()},t.prototype.Redo=function(){this._observerRedo.next()},t.prototype.changeFormatItalic=function(t){this._observerItalic.next(t)},t.prototype.changeFormatColor=function(t){this._observerColor.next(t)},t.prototype.changeFormatBgColor=function(t){this._observerBgColor.next(t)},t.prototype.changeFormatFont=function(t){this._observerFont.next(t)},t.prototype.changeFormatStrikeout=function(t){this._observerStrikeout.next(t)},t.prototype.changeFormatAlign=function(t){this._observerAlign.next(t)},t.prototype.changeFormatList=function(t){this._observerList.next(t)},t}();var kt=["#000000","#434343","#666666","#999999","#B7B7B7","#CCCCCC","#D9D9D9","#EFEFEF","#F3F3F3","#FFFFFF","#980000","#FF0000","#FF9900","#FFFF00","#00FF00","#00FFFF","#4986E8","#0000FF","#9900FF","#FF00FF","#E6B8AF","#F4CCCC","#FDE5CD","#FFF2CC","#D9EAD3","#D0E0E2","#C9DAF8","#CFE2F3","#D9D2E9","#EAD1DC","#DD7E6B","#EA9899","#F9CB9C","#FFE59A","#B7D7A8","#A2C4C9","#A4C2F4","#9FC5E8","#B4A7D7","#D5A6BD","#CC4125","#E06666","#F6B26B","#FFD966","#92C47D","#75A5AF","#6D9EEB","#6FA9DB","#8E7CC3","#C27BA0","#A61C00","#CC0000","#E69138","#F2C131","#6AA84F","#45818E","#3C78D8","#3C85C6","#674EA7","#A64D79","#85200B","#990000","#B45F05","#BF9000","#37761D","#144F5C","#1254CC","#0A5394","#351C75","#741B47","#5B0F00","#660000","#783F03","#7F6000","#284E13","#0B343D","#1B4586","#063763","#20124D","#4C1030"],Ft=function(){function t(){this.isOpen=!1,this.selectedColor=new e.EventEmitter,this.closeOutside=new e.EventEmitter,this.colors=kt,this.white="#FFFFFF"}return t.prototype.ngOnInit=function(){},t.prototype.select=function(t,e){t.preventDefault(),t.stopPropagation(),this.selectedColor.emit(e)},t.prototype.close=function(){this.isOpen=!1,this.closeOutside.emit(!0)},t.decorators=[{type:e.Component,args:[{selector:"gd-color-picker",template:'
\r\n
\r\n
\r\n
\r\n
\r\n',styles:[".bcPicker-picker{border:1px;border-radius:100%}.bcPicker-palette{width:250px;background-color:#fdfdfd;z-index:999;box-shadow:0 0 5px #efefef;display:flex;flex-wrap:wrap;justify-content:center}.bcPicker-palette>.bcPicker-color{width:18px;height:18px;margin:2px;cursor:pointer}"]}]}],t.ctorParameters=function(){return[]},t.propDecorators={isOpen:[{type:e.Input}],selectedColor:[{type:e.Output}],closeOutside:[{type:e.Output}]},t}();var zt=function(t){function o(){return t.call(this)||this}return f(o,t),o.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],o.ctorParameters=function(){return[]},o.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new o},token:o,providedIn:"root"}),o}(Ot),Dt=function(){function t(){this.isIE=!!/(MSIE|Trident\/|Edge\/)/i.test(navigator.userAgent)}return t.prototype.restoreSelection=function(){(this.selection&&!this.selection.collapsed||this.isIE)&&this.putSelection(this.selection)},t.prototype.captureSelection=function(){var t=window.getSelection();t.rangeCount>0&&(this.selection=t.getRangeAt(0))},t.prototype.putSelection=function(t){var e=window.getSelection();e.removeAllRanges(),e.addRange(t.cloneRange())},t.prototype.refreshSelection=function(){this.captureSelection(),this.restoreSelection()},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t},token:t,providedIn:"root"}),t}();var Tt=l,At=function(){function t(t,e,o){this._formattingService=t,this._backFormattingService=e,this._selectionService=o,this.bold=!1,this.italic=!1,this.underline=!1,this.strikeout=!1,this.isIE=!1,this.isIE=!!/(MSIE|Trident\/|Edge\/)/i.test(navigator.userAgent)}return t.prototype.mouseup=function(){this.bold=document.queryCommandState("bold"),this.strikeout=document.queryCommandState("strikeThrough"),this.italic=document.queryCommandState("italic"),this.bgColor=document.queryCommandValue("backColor"),this.underline=document.queryCommandState("underline"),this.align=this.checkJustify(),this.list=this.checkList(),"transparent"===this.bgColor&&(this.bgColor=Tt(window.getSelection().focusNode.parentNode).css("background-color").toString()),this.font=document.queryCommandValue("FontName").replace(/"/g,""),this.font.split(",").length>1&&(this.font=this.font.split(",")[0]),this.color=document.queryCommandValue("foreColor"),this._backFormattingService.changeFormatBold(this.bold),this._backFormattingService.changeFormatUnderline(this.underline),this._backFormattingService.changeFormatItalic(this.italic),this._backFormattingService.changeFormatColor(this.color),this._backFormattingService.changeFormatBgColor(this.bgColor),this._backFormattingService.changeFormatFontSize(this.reportFontSize()),this._backFormattingService.changeFormatFont(this.font),this._backFormattingService.changeFormatStrikeout(this.strikeout),this._backFormattingService.changeFormatAlign(this.align),this._backFormattingService.changeFormatList(this.list)},t.prototype.checkJustify=function(){var t="";return t=document.queryCommandState("justifyCenter")?"center":t,t=document.queryCommandState("justifyFull")?"full":t,t=document.queryCommandState("justifyLeft")?"left":t,t=document.queryCommandState("justifyRight")?"right":t},t.prototype.checkList=function(){var t="";return t=document.queryCommandState("insertUnorderedList")?"unordered":t,t=document.queryCommandState("insertOrderedList")?"ordered":t},t.prototype.reportFontSize=function(){var t,e;if(window.getSelection?(e=window.getSelection()).rangeCount&&3===(t=e.getRangeAt(0).commonAncestorContainer).nodeType&&(t=t.parentNode):(e=document.getSelection())&&"Control"!==e.type&&(t=e.createRange().parentElement()),t)return parseInt(this.getComputedStyleProperty(t,"fontSize").replace("px",""),10)},t.prototype.getComputedStyleProperty=function(t,e){return window.getComputedStyle?window.getComputedStyle(t,null)[e]:t.currentStyle?t.currentStyle[e]:void 0},t.prototype.ngOnInit=function(){var t=this;this._formattingService.undo.subscribe((function(){t.toggleUndo()})),this._formattingService.redo.subscribe((function(){t.toggleRedo()})),this._formattingService.formatBoldChange.subscribe((function(e){t.bold=e,t.toggleBold()})),this._formattingService.formatUnderlineChange.subscribe((function(e){t.underline=e,t.toggleUnderline()})),this._formattingService.formatItalicChange.subscribe((function(e){t.italic=e,t.toggleItalic()})),this._formattingService.formatColorChange.subscribe((function(e){t.color=e,t.setColor(e)})),this._formattingService.formatBgColorChange.subscribe((function(e){t.bgColor=e,t.setBgColor(e)})),this._formattingService.formatFontSizeChange.subscribe((function(e){t.setFontSize(e)})),this._formattingService.formatFontChange.subscribe((function(e){t.font=e,t.setFont(e)})),this._formattingService.formatStrikeoutChange.subscribe((function(e){t.strikeout=e,t.toggleStrikeout()})),this._formattingService.formatAlignChange.subscribe((function(e){t.align=e,t.toggleAlign(t.align)})),this._formattingService.formatListChange.subscribe((function(e){var o=t.list===e;t.list=e,t.toggleList(t.list,o)}))},t.prototype.toggleBold=function(){document.execCommand("bold"),this._selectionService.refreshSelection()},t.prototype.toggleUnderline=function(){document.execCommand("underline"),this._selectionService.refreshSelection()},t.prototype.toggleItalic=function(){document.execCommand("italic"),this._selectionService.refreshSelection()},t.prototype.setBgColor=function(t){document.execCommand("backColor",!1,t),this._selectionService.refreshSelection()},t.prototype.setColor=function(t){document.execCommand("foreColor",!1,t),this._selectionService.refreshSelection()},t.prototype.setFontSize=function(t){if(document.getSelection().toString()){var e=""+document.getSelection()+"";this.bold&&(e=""+e+""),this.italic&&(e=""+e+""),this.underline&&(e=""+e+""),this.strikeout&&(e=""+e+""),document.execCommand("insertHTML",!1,e)}else document.execCommand("fontsize",!1,"7");this._selectionService.refreshSelection()},t.prototype.toggleUndo=function(){document.execCommand("undo")},t.prototype.toggleRedo=function(){document.execCommand("redo")},t.prototype.setFont=function(t){document.execCommand("fontName",!1,t),this._selectionService.refreshSelection()},t.prototype.toggleStrikeout=function(){document.execCommand("strikeThrough"),this._selectionService.refreshSelection()},t.prototype.toggleAlign=function(t){if(this.isIE)this.toggleAlignIE(t);else{switch(document.execCommand("styleWithCSS",!1,"true"),t){case"center":document.execCommand("justifyCenter");break;case"full":document.execCommand("justifyFull");break;case"left":document.execCommand("justifyLeft");break;case"right":document.execCommand("justifyRight")}this._selectionService.refreshSelection()}},t.prototype.toggleAlignIE=function(t){this._selectionService.restoreSelection(),this._selectionService.captureSelection();var e=window.getSelection().focusNode.parentNode.parentNode;"full"===t&&(t="justify"),Tt(e).css("text-align",t),this._selectionService.refreshSelection()},t.prototype.toggleList=function(t,e){switch(t){case"unordered":document.execCommand("insertUnorderedList",e);break;case"ordered":document.execCommand("insertOrderedList",e)}this._selectionService.refreshSelection()},t.decorators=[{type:e.Directive,args:[{selector:"[gdFormatting]"}]}],t.ctorParameters=function(){return[{type:Ot},{type:zt},{type:Dt}]},t.propDecorators={mouseup:[{type:e.HostListener,args:["mouseup"]}]},t}();var Mt=function(){function t(){}return t.prototype.ngOnInit=function(){},t.decorators=[{type:e.Component,args:[{selector:"gd-success-modal",template:'\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n',styles:[".check_mark{margin:47px auto}.sa-icon{width:80px;height:80px;border:4px solid gray;border-radius:50%;padding:0;position:relative;box-sizing:content-box}#gd-modal-success{display:flex;overflow:hidden;width:469px;height:183px}.sa-icon.sa-success{border-color:#4caf50;transform:scale(1.18)}.sa-icon.sa-success::after,.sa-icon.sa-success::before{content:'';position:absolute;width:60px;height:120px;background:#fff}.sa-icon.sa-success::before{border-radius:120px 0 0 120px;top:-7px;left:-33px;transform:rotate(-45deg);transform-origin:60px 60px}.sa-icon.sa-success::after{border-radius:0 120px 120px 0;top:-11px;left:30px;transform:rotate(-45deg);transform-origin:0 60px}.sa-icon.sa-success .sa-placeholder{width:80px;height:80px;border:4px solid rgba(76,175,80,.5);border-radius:50%;box-sizing:content-box;position:absolute;left:-4px;top:-4px;z-index:2}.sa-icon.sa-success .sa-fix{width:5px;height:90px;background-color:#fff;position:absolute;left:28px;top:8px;z-index:1;transform:rotate(-45deg)}.sa-icon.sa-success.animate::after{-webkit-animation:4.25s ease-in rotatePlaceholder;animation:4.25s ease-in rotatePlaceholder}.animateSuccessTip{-webkit-animation:.75s animateSuccessTip;animation:.75s animateSuccessTip}.animateSuccessLong{-webkit-animation:.75s animateSuccessLong;animation:.75s animateSuccessLong}@-webkit-keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}@-webkit-keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}.sa-icon.sa-success .sa-line{height:5px;background-color:#4caf50;display:block;border-radius:2px;position:absolute;z-index:2}.sa-icon.sa-success .sa-line.sa-tip{width:25px;left:14px;top:46px;transform:rotate(45deg)}.sa-icon.sa-success .sa-line.sa-long{width:47px;right:8px;top:38px;transform:rotate(-45deg)}@-webkit-keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@media (max-width:1037px){#gd-modal-success{left:50%;top:50%;position:relative;transform:translate(-50%,-50%)}}"]}]}],t.ctorParameters=function(){return[]},t}(),Rt=function(){function t(){this._observer=new n.Subject,this._htmlContent=this._observer.asObservable()}return Object.defineProperty(t.prototype,"observer",{get:function(){return this._observer},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"htmlContent",{get:function(){return this._htmlContent},enumerable:!0,configurable:!0}),t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t},token:t,providedIn:"root"}),t}();var jt=function(){function t(t,e){this._selectionService=t,this._htmlService=e,this.isIE=!!/(MSIE|Trident\/|Edge\/)/i.test(navigator.userAgent)}return t.prototype.onInput=function(t){if(this.text=t.target,this.isIE&&this.text.innerHTML){var e=this.text.innerHTML.toString();this._htmlService.observer.next(e)}},t.prototype.onMouseleave=function(t){this._selectionService.captureSelection(),this.isIE&&this._htmlService.observer.next(t.target.innerHTML.toString())},t.prototype.onBlur=function(t){if(t.preventDefault(),this._selectionService.restoreSelection(),this.text.innerHTML){var e=this.text.innerHTML.toString();this._htmlService.observer.next(e)}else this._htmlService.observer.next(t.target.innerHTML.toString())},t.decorators=[{type:e.Directive,args:[{selector:"[gdEditor]"}]}],t.ctorParameters=function(){return[{type:Dt},{type:Rt}]},t.propDecorators={text:[{type:e.Input}],onInput:[{type:e.HostListener,args:["keyup",["$event"]]}],onMouseleave:[{type:e.HostListener,args:["mouseleave",["$event"]]}],onBlur:[{type:e.HostListener,args:["blur",["$event"]]}]},t}();var Lt=function(){function t(){this.onLoadingChanged=new e.EventEmitter,this.stopList=[],this.requests=[],this.stopList.push(C.SAVE_TEXT),this.stopList.push(C.SAVE_OPTICAL_CODE),this.stopList.push(C.LOAD_DOCUMENT_PAGE),this.stopList.push(C.LOAD_THUMBNAILS),this.stopList.push(C.GET_FILE_STATUS),this.stopList.push(C.LOAD_PRINT)}return t.prototype.onRequestStart=function(t){this.stopList.find((function(e){return t.url.includes(e)}))||(this.requests.push(t),this.notify())},t.prototype.onRequestFinish=function(t){var e=this.requests.indexOf(t);-1!==e&&this.requests.splice(e,1),this.notify()},t.prototype.notify=function(){this.onLoadingChanged.emit(0!==this.requests.length)},t.decorators=[{type:e.Injectable}],t.ctorParameters=function(){return[]},t}();var Ut=function(){function t(t){this._loadingMaskService=t,this.loadingMask=!1}return t.prototype.ngOnInit=function(){},t.prototype.ngAfterViewInit=function(){var t=this;this._loadingMaskService.onLoadingChanged.subscribe((function(e){return t.loadingMask=e}))},t.decorators=[{type:e.Component,args:[{selector:"gd-loading-mask",template:'
\r\n
\r\n  Loading... Please wait.\r\n
\r\n
\r\n',styles:[".loading-wrapper{background:rgba(0,0,0,.5);width:100%;height:100%;font-size:14px;color:#fff;position:fixed;top:0;left:0;z-index:99999}.loading-message{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}"]}]}],t.ctorParameters=function(){return[{type:Lt}]},t.propDecorators={loadingMask:[{type:e.Input}]},t}();var Ht=function(){function t(t){this._loadingMaskService=t}return t.prototype.intercept=function(t,e){var o=this;this._loadingMaskService.onRequestStart(t);return e.handle(t).pipe(i.finalize((function(){return o._loadingMaskService.onRequestFinish(t)})))},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[{type:Lt}]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t(e.ɵɵinject(Lt))},token:t,providedIn:"root"}),t}();var Bt={center:{right:"auto"},left:{right:"100%"},right:{right:"-100%"}},Nt={center:{top:"0px"},top:{top:"-100%",right:"100%"},bottom:{top:"autos"}},Wt=function(){function t(t){var e=this;this.dropdown=t,this.click=function(t){return e.dropdown.toggle(t)}}return t.decorators=[{type:e.Component,args:[{selector:"gd-drop-down-toggle",template:"",encapsulation:e.ViewEncapsulation.None,styles:[".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"]}]}],t.ctorParameters=function(){return[{type:void 0,decorators:[{type:e.Inject,args:[e.forwardRef((function(){return qt}))]}]}]},t.propDecorators={click:[{type:e.HostListener,args:["click",["$event"]]}]},t}();var $t=function(){function t(t){this.dropdown=t}return Object.defineProperty(t.prototype,"horizontalAlign",{get:function(){return Bt[this.dropdown.getPlacement().h].right},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"verticalAlign",{get:function(){return Nt[this.dropdown.getPlacement().v].top},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isOpen",{get:function(){return this.dropdown.open},enumerable:!0,configurable:!0}),t.prototype.onClickOutside=function(t){this.dropdown.close()},t.decorators=[{type:e.Component,args:[{selector:"gd-drop-down-items",template:'',encapsulation:e.ViewEncapsulation.None,styles:[".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"]}]}],t.ctorParameters=function(){return[{type:void 0,decorators:[{type:e.Inject,args:[e.forwardRef((function(){return qt}))]}]}]},t}();var Vt=function(){function t(t){var o=this;this.dropdown=t,this.class="drop-down-item",this.selected=new e.EventEmitter,this.click=function(){return o.selectEntry()}}return t.prototype.selectEntry=function(){this.selected.next(),this.dropdown.close()},t.decorators=[{type:e.Component,args:[{selector:"gd-drop-down-item",template:'',styles:[".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"]}]}],t.ctorParameters=function(){return[{type:void 0,decorators:[{type:e.Inject,args:[e.forwardRef((function(){return qt}))]}]}]},t.propDecorators={class:[{type:e.HostBinding,args:["class"]}],selected:[{type:e.Output}],click:[{type:e.HostListener,args:["click"]}]},t}();var qt=function(){function t(){this.placement={h:"center",v:"bottom"},this.open=!1,this.class="drop-down"}return t.prototype.close=function(){this.open=!1},t.prototype.toggle=function(t){t.stopPropagation(),this.open=!this.open,document.body.click()},t.prototype.getPlacement=function(){return this.placement},t.decorators=[{type:e.Component,args:[{selector:"gd-drop-down",template:'',encapsulation:e.ViewEncapsulation.None,styles:[".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"]}]}],t.propDecorators={placement:[{type:e.Input}],open:[{type:e.Input},{type:e.HostBinding,args:["class.show"]}],class:[{type:e.HostBinding,args:["class"]}]},t}();var Gt=function(){function t(){this.showSpinner=!1}return t.prototype.ngOnInit=function(){},t.decorators=[{type:e.Component,args:[{selector:"gd-left-side-bar",template:'
\r\n
\r\n
 Loading...\r\n
\r\n
\r\n \r\n
\r\n',styles:[".left-panel{border-radius:0;float:left}.gd-left-bar-fade{margin:auto;overflow:hidden;-webkit-overflow-scrolling:touch;transition:transform .3s ease-out;width:100%;height:100%;display:flex;justify-content:center;align-items:center;position:fixed;z-index:1000}@media (max-width:1037px){.gd-left-bar-fade{top:100px;right:0}.gd-left-bar-spinner{top:20%}}"]}]}],t.ctorParameters=function(){return[]},t.propDecorators={showSpinner:[{type:e.Input}]},t}();var Xt=function(){function t(){this.showToolTip=new e.EventEmitter}return t.prototype.onHovering=function(){this.showToolTip.emit(!0)},t.prototype.onUnhovering=function(){this.showToolTip.emit(!1)},t.decorators=[{type:e.Directive,args:[{selector:"[gdTooltip]"}]}],t.ctorParameters=function(){return[]},t.propDecorators={showToolTip:[{type:e.Output}],onHovering:[{type:e.HostListener,args:["mouseenter"]}],onUnhovering:[{type:e.HostListener,args:["mouseleave"]}]},t}();var Zt=function(){function t(t,e){this._factoryResolver=t,this._appRef=e}return t.prototype.addDynamicComponent=function(t,e){var o=this,n=this._factoryResolver.resolveComponentFactory(e),i=t.createComponent(n);return i.onDestroy((function(){o._appRef.detachView(i.hostView)})),i},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[{type:e.ComponentFactoryResolver},{type:e.ApplicationRef}]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t(e.ɵɵinject(e.ComponentFactoryResolver),e.ɵɵinject(e.ApplicationRef))},token:t,providedIn:"root"}),t}();var Yt=function(){function t(){this.hosts=[]}return t.prototype.add=function(t){this.hosts=this.hosts.filter((function(e){return e.ident!==t.ident})),this.hosts.push(t)},t.prototype.remove=function(t){this.hosts=this.hosts.filter((function(e){return e.ident!==t.ident}))},t.prototype.find=function(t){return this.hosts.find((function(e){return e.ident===t}))},t}();var Jt=function(){function t(t,e){this.viewContainerRef=t,this._hostingService=e}return t.prototype.ngAfterViewInit=function(){this._hostingService.add(this)},t.prototype.ngOnDestroy=function(){this._hostingService.remove(this),this.viewContainerRef.clear()},t.decorators=[{type:e.Directive,args:[{selector:"[gdHostDynamic]"}]}],t.ctorParameters=function(){return[{type:e.ViewContainerRef},{type:Yt}]},t.propDecorators={ident:[{type:e.Input}]},t}();var Kt=l,Qt=function(){function t(){this.se=!1,this.ne=!1,this.sw=!1,this.nw=!1,this.SE="se",this.NE="ne",this.SW="sw",this.NW="nw",this.offsetX=new e.EventEmitter,this.offsetY=new e.EventEmitter,this.offsetTop=new e.EventEmitter,this.offsetLeft=new e.EventEmitter,this.release=new e.EventEmitter,this.grab=!1}return t.prototype.ngAfterViewInit=function(){var t=this,e=Kt(this.getElementId(this.SE)),o=Kt(this.getElementId(this.NW));if(this.init&&e&&o&&e.offset()&&o.offset()){for(var n=e.offset().left-o.offset().left,i=e.offset().top-o.offset().top;n>=this.pageWidth||i>=this.pageHeight;)n/=2,i/=2;setTimeout((function(){t.offsetX.emit(n),t.offsetY.emit(i)}),100)}},t.prototype.ngOnInit=function(){},t.prototype.catchUp=function(t){t.preventDefault(),t.dataTransfer&&t.dataTransfer.setData("text","foo"),this.grab=!0,this.oldPosition=M.getMousePosition(t)},t.prototype.resize=function(t,e){if(this.grab){var o=M.getMousePosition(t);if(0!==o.x||0!==o.y){var n=this.NE===e||this.NW===e,i=this.SW===e||this.NW===e;this.setOffsets(o,i,n),n&&this.offsetTop.emit(o.y-this.oldPosition.y),i&&this.offsetLeft.emit(o.x-this.oldPosition.x),this.oldPosition=o}}},t.prototype.setOffsets=function(t,e,o){var n=e?this.oldPosition.x-t.x:t.x-this.oldPosition.x,i=o?this.oldPosition.y-t.y:t.y-this.oldPosition.y;this.offsetX.emit(n),this.offsetY.emit(i)},t.prototype.end=function(t,e){this.resize(t,e),this.release.emit(!0),this.grab=!1},t.prototype.start=function(t){this.drop(t)},t.prototype.drop=function(t){t.stopPropagation(),t.preventDefault()},t.prototype.getElementId=function(t){return"#"+t+"-"+this.id},t.decorators=[{type:e.Component,args:[{selector:"gd-resizing",template:'
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n',styles:[".ui-resizable-handle{background-color:#679ffa;width:8px;height:8px;border-radius:100%;position:absolute;font-size:.1px;display:block}.se-resize{bottom:-5px;right:-5px;cursor:se-resize}.ne-resize{top:-5px;right:-5px;cursor:ne-resize}.sw-resize{bottom:-5px;left:-5px;cursor:sw-resize}.nw-resize{top:-5px;left:-5px;cursor:nw-resize}@media (max-width:1037px){.ui-resizable-handle{width:12px;height:12px}}"]}]}],t.ctorParameters=function(){return[]},t.propDecorators={init:[{type:e.Input}],id:[{type:e.Input}],se:[{type:e.Input}],ne:[{type:e.Input}],sw:[{type:e.Input}],nw:[{type:e.Input}],pageWidth:[{type:e.Input}],pageHeight:[{type:e.Input}],offsetX:[{type:e.Output}],offsetY:[{type:e.Output}],offsetTop:[{type:e.Output}],offsetLeft:[{type:e.Output}],release:[{type:e.Output}]},t}();var te=function(t){function e(){return t.call(this)||this}return f(e,t),e}(_t),ee=function(){function t(t,o,n){var i=this;this._tabActivatorService=t,this._modalService=o,this._excMessageService=n,this.disabled=!1,this.activeTab=new e.EventEmitter,this.elementPosition=0,this.active=!1,this.showToolTip=!1,this._tabActivatorService.activeTabChange.subscribe((function(t){i.activation(t),null===t&&i.activeTab.emit("")}))}return t.prototype.activation=function(t){this.id===t?(this.active=!this.active,this.active?this.activeTab.emit(this.id):this.activeTab.emit("")):this.active=!1},t.prototype.ngOnInit=function(){},t.prototype.toggleTab=function(){if(this.disabled)return this._modalService.open(P.ErrorMessage),void this._excMessageService.changeMessage("Please open document first");this._tabActivatorService.changeActiveTab(this.id)},t.decorators=[{type:e.Component,args:[{selector:"gd-top-tab",template:'
\r\n \r\n \r\n
\r\n',styles:[".gd-tab{font-size:14px;color:#3e4e5a;cursor:pointer;display:flex;flex-direction:column;align-items:center;align-content:center;justify-content:center;min-width:36px;height:36px;text-align:center;position:relative;white-space:nowrap;padding:0!important;margin:0 10px}.gd-tab .gd-tab-tooltip{display:flex;flex-direction:column;margin:0!important}.gd-tab.active{background-color:#acacac;color:#fff!important;font-weight:700}.gd-tab.disabled{cursor:not-allowed;opacity:.4}.gd-tab ::ng-deep .tooltip{font-size:12px;margin:20px -57px}.gd-tab .title{margin:auto 23px}@media (max-width:1037px){.gd-tab{font-size:20px}}"]}]}],t.ctorParameters=function(){return[{type:te},{type:E},{type:gt}]},t.propDecorators={id:[{type:e.Input}],icon:[{type:e.Input}],disabled:[{type:e.Input}],tooltip:[{type:e.Input}],activeTab:[{type:e.Output}],elementPosition:[{type:e.Input}]},t}();var oe=l,ne=function(){function t(t,o,n,i,r){var s=this;this._onCloseService=t,this._zoomService=o,this._windowService=n,this._elementRef=i,this.renderer=r,this.decoration=!0,this.showTooltips=!0,this.outFontSize=new e.EventEmitter,this.outFont=new e.EventEmitter,this.outBold=new e.EventEmitter,this.outItalic=new e.EventEmitter,this.outUnderline=new e.EventEmitter,this.outColor=new e.EventEmitter,this.fontSizeOptions=Ot.getFontSizeOptions(),this.fontOptions=Ot.getFontOptions(),this.colorPickerShow=!1,t.onClose.subscribe((function(){s.colorPickerShow=!1})),this.isMobile=n.isMobile(),n.onResize.subscribe((function(t){s.isMobile=n.isMobile()})),o.zoomChange.subscribe((function(t){s.isMobile&&s.changePosition(t)}))}return t.prototype.ngOnInit=function(){},t.prototype.changePosition=function(t){var e=window.innerHeight-24-this._elementRef.nativeElement.parentElement.getBoundingClientRect().top-this._elementRef.nativeElement.parentElement.getBoundingClientRect().height,o=this._elementRef.nativeElement.parentElement.getBoundingClientRect().left;this.renderer.setStyle(this._elementRef.nativeElement.querySelector(".gd-text-menu"),"width",window.innerWidth+"px"),this.renderer.setStyle(this._elementRef.nativeElement.querySelector(".gd-text-menu"),"top",e+"px"),this.renderer.setStyle(this._elementRef.nativeElement.querySelector(".gd-text-menu"),"left",-o+"px")},t.prototype.selectFontSize=function(t){oe(".gd-wrapper").off("keyup"),this.outFontSize.emit(t.value),oe(".gd-wrapper").on("keyup",(function(){for(var e=document.getElementsByTagName("font"),o=0,n=e.length;o\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n',styles:["::ng-deep .active{background-color:#e7e7e7}.gd-text-menu{display:flex;flex-direction:row}.gd-text-menu .format-select{height:37px;display:flex;justify-content:center;align-items:center;max-width:80px;margin:0 3px}.gd-text-menu .first-component{margin-left:8px}.gd-text-menu ::ng-deep .dropdown-menu{top:40px!important;height:120px;overflow-y:auto}.gd-text-menu ::ng-deep .icon-button{margin:0!important}.bg-color-pic{border-radius:100%;border:1px solid #ccc;position:absolute;height:8px;width:8px;right:6px;bottom:6px}.palette{position:relative;top:40px;left:-55px;z-index:100}@media (max-width:1037px){.gd-text-menu{position:fixed;left:0;right:0;width:inherit;height:60px;align-items:center;padding:0;margin:0;background-color:#fff;border-top:2px solid #707070;transform-origin:top left;z-index:1000}.gd-text-menu ::ng-deep .selected-value{white-space:normal!important;word-wrap:break-word}.gd-text-menu .icon{color:#fff;margin:0 9px}.gd-text-menu ::ng-deep .bcPicker-palette{left:-200px;top:-185px}.gd-text-menu .palette{top:unset;bottom:40px;left:unset;right:5px}.gd-text-menu ::ng-deep .dropdown-menu{bottom:40px;top:unset!important}.gd-text-menu ::ng-deep .first-component ::ng-deep .dropdown-menu{left:0}.gd-text-menu ::ng-deep .button{margin:3px!important;font-size:16px}}"]}]}],t.ctorParameters=function(){return[{type:st},{type:N},{type:b},{type:e.ElementRef},{type:e.Renderer2}]},t.propDecorators={blur:[{type:e.Input}],fontSize:[{type:e.Input}],font:[{type:e.Input}],bold:[{type:e.Input}],italic:[{type:e.Input}],underline:[{type:e.Input}],color:[{type:e.Input}],decoration:[{type:e.Input}],showTooltips:[{type:e.Input}],outFontSize:[{type:e.Output}],outFont:[{type:e.Output}],outBold:[{type:e.Output}],outItalic:[{type:e.Output}],outUnderline:[{type:e.Output}],outColor:[{type:e.Output}]},t}();var ie=function(){function t(){}return t.FOR_SIGNATURE="signature",t.FOR_ANNOTATION="annotation",t}();var re=function(){function t(t,o,n,i){var r=this;this._windowService=t,this._zoomService=o,this._elementRef=n,this.renderer=i,this.formatting=It.default(),this.lock=!1,this.translation=0,this.changeFormatting=new e.EventEmitter,this.removeItem=new e.EventEmitter,this.copySign=new e.EventEmitter,this.lockOut=new e.EventEmitter,this.comment=new e.EventEmitter,this.isMobile=t.isMobile(),t.onResize.subscribe((function(e){r.isMobile=t.isMobile()})),o.zoomChange.subscribe((function(t){r.isMobile&&r.changeScale(t)}))}return t.prototype.ngOnInit=function(){},t.prototype.changeScale=function(t){this.renderer.setStyle(this._elementRef.nativeElement.querySelector(".gd-context-menu"),"transform","scale("+1/(t/100)+")")},t.prototype.saveChanges=function(){this.changeFormatting.emit(this.formatting)},t.prototype.selectFontSize=function(t){this.formatting.fontSize=t,this.saveChanges()},t.prototype.selectFont=function(t){this.formatting.font=t,this.saveChanges()},t.prototype.selectColor=function(t){this.formatting.color=t,this.saveChanges()},t.prototype.toggleBold=function(t){this.formatting.bold=t,this.saveChanges()},t.prototype.toggleItalic=function(t){this.formatting.italic=t,this.saveChanges()},t.prototype.toggleUnderline=function(t){this.formatting.underline=t,this.saveChanges()},t.prototype.deleteItem=function(){this.removeItem.emit(!0)},t.prototype.toggleLock=function(){this.lock=!this.lock,this.lockOut.emit(this.lock)},t.prototype.onCopySign=function(){this.copySign.emit(!0)},t.prototype.isSignature=function(){return this.menuType===ie.FOR_SIGNATURE},t.prototype.isAnnotation=function(){return this.menuType===ie.FOR_ANNOTATION},t.prototype.addComment=function(){this.comment.emit(!0)},t.decorators=[{type:e.Component,args:[{selector:"gd-context-menu",template:'
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n',styles:[".gd-context-menu-top{top:-44px}.gd-context-menu-bottom{bottom:-40px}.gd-context-menu{box-shadow:rgba(0,0,0,.52) 0 0 5px;background-color:#fff;position:absolute;left:0;right:0;margin:auto;cursor:default;width:max-content;width:-moz-max-content;width:-webkit-max-content;display:flex;flex-direction:row;z-index:999}.gd-context-menu .arrows{cursor:move}.gd-context-menu ::ng-deep .active{background-color:#e7e7e7}.gd-context-menu ::ng-deep .icon-button{margin:0!important}@media (max-width:1037px){.gd-context-menu-top{top:-42px;transform-origin:bottom center}}"]}]}],t.ctorParameters=function(){return[{type:b},{type:N},{type:e.ElementRef},{type:e.Renderer2}]},t.propDecorators={formatting:[{type:e.Input}],textMenu:[{type:e.Input}],topPosition:[{type:e.Input}],lock:[{type:e.Input}],translation:[{type:e.Input}],menuType:[{type:e.Input}],changeFormatting:[{type:e.Output}],removeItem:[{type:e.Output}],copySign:[{type:e.Output}],lockOut:[{type:e.Output}],comment:[{type:e.Output}]},t}();var se=[_,C,E,j,T,R,M,X,Z,Y,J,L,dt,$,W,N,gt,ft,yt,bt,b,et,Ot,zt,st,Ht,Lt,_t,Zt,Yt,te],ae=function(){function t(){s.library.add(a.fas,c.far)}return t.decorators=[{type:e.NgModule,args:[{imports:[o.CommonModule,r.FontAwesomeModule,g.ClickOutsideModule],declarations:[v,y,x,w,S,I,B,q,G,X,Z,Y,J,K,Q,nt,it,rt,at,ct,pt,lt,ut,ht,vt,xt,St,Ct,Pt,Et,Ft,At,Mt,jt,Ut,qt,Vt,$t,Wt,Gt,Xt,Jt,Qt,ee,ne,re],exports:[v,y,x,w,S,I,B,q,G,Z,Y,J,X,K,nt,it,at,pt,lt,ut,ht,vt,xt,St,Ct,Pt,Et,Ft,At,Mt,Ut,Q,qt,Vt,$t,Wt,rt,Wt,Gt,Xt,Jt,Qt,ee,ne,re],providers:se}]}],t.ctorParameters=function(){return[]},t}();t.AddDynamicComponentService=Zt,t.Api=C,t.BackFormattingService=zt,t.BrowseFilesModalComponent=B,t.ButtonComponent=x,t.ColorPickerComponent=Ft,t.CommonComponentsModule=ae,t.CommonModals=P,t.ConfigService=_,t.ContextMenuComponent=re,t.DisabledCursorDirective=ct,t.DndDirective=Q,t.DocumentComponent=q,t.DropDownComponent=qt,t.DropDownItemComponent=Vt,t.DropDownItemsComponent=$t,t.DropDownToggleComponent=Wt,t.EditHtmlService=Rt,t.EditorDirective=jt,t.ErrorInterceptorService=yt,t.ErrorModalComponent=ht,t.ExceptionMessageService=gt,t.FileCredentials=F,t.FileDescription=D,t.FileModel=T,t.FileService=j,t.FileUtil=R,t.Formatting=It,t.FormattingDirective=At,t.FormattingService=Ot,t.HighlightSearchPipe=J,t.HostDynamicDirective=Jt,t.HostingDynamicComponentService=Yt,t.HttpError=A,t.InitStateComponent=lt,t.LeftSideBarComponent=Gt,t.LoadingMaskComponent=Ut,t.LoadingMaskInterceptorService=Ht,t.LoadingMaskService=Lt,t.LogoComponent=w,t.MenuType=ie,t.ModalComponent=I,t.ModalService=E,t.MouseWheelDirective=it,t.NavigateService=$,t.OnCloseService=st,t.PageComponent=G,t.PageModel=O,t.PagePreloadService=W,t.PasswordRequiredComponent=vt,t.PasswordService=ft,t.RenderPrintDirective=ut,t.RenderPrintService=dt,t.RotatedPage=k,t.RotationDirective=pt,t.SanitizeHtmlPipe=X,t.SanitizeResourceHtmlPipe=Z,t.SanitizeStylePipe=Y,t.SaveFile=z,t.ScrollableDirective=nt,t.SearchComponent=xt,t.SearchService=bt,t.SearchableDirective=St,t.SelectComponent=at,t.SelectionService=Dt,t.SidePanelComponent=y,t.SuccessModalComponent=Mt,t.TabActivatorService=_t,t.TabComponent=Pt,t.TabbedToolbarsComponent=Ct,t.TextMenuComponent=ne,t.TooltipComponent=S,t.TopTabActivatorService=te,t.TopToolbarComponent=v,t.UploadFileZoneComponent=K,t.UploadFilesService=L,t.Utils=M,t.ViewportService=et,t.WindowService=b,t.ZoomDirective=rt,t.ZoomService=N,t.ɵa=Et,t.ɵb=Xt,t.ɵc=Qt,t.ɵd=ee,Object.defineProperty(t,"__esModule",{value:!0})})); //# sourceMappingURL=groupdocs.examples.angular-common-components.umd.min.js.map \ No newline at end of file diff --git a/dist/libs/common-components/bundles/groupdocs.examples.angular-common-components.umd.min.js.map b/dist/libs/common-components/bundles/groupdocs.examples.angular-common-components.umd.min.js.map index 6ffa204fe..4eb2366e8 100644 --- a/dist/libs/common-components/bundles/groupdocs.examples.angular-common-components.umd.min.js.map +++ b/dist/libs/common-components/bundles/groupdocs.examples.angular-common-components.umd.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["../../../../node_modules/tslib/tslib.es6.js","ng://@groupdocs.examples.angular/common-components/lib/top-toolbar/top-toolbar.component.ts","ng://@groupdocs.examples.angular/common-components/lib/side-panel/side-panel.component.ts","ng://@groupdocs.examples.angular/common-components/lib/window.service.ts","ng://@groupdocs.examples.angular/common-components/lib/button/button.component.ts","ng://@groupdocs.examples.angular/common-components/lib/logo/logo.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tooltip/tooltip.component.ts","ng://@groupdocs.examples.angular/common-components/lib/config.service.ts","ng://@groupdocs.examples.angular/common-components/lib/modal.service.ts","ng://@groupdocs.examples.angular/common-components/lib/modal/modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/file.service.ts","ng://@groupdocs.examples.angular/common-components/lib/upload-files.service.ts","ng://@groupdocs.examples.angular/common-components/lib/browse-files-modal/browse-files-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/zoom.service.ts","ng://@groupdocs.examples.angular/common-components/lib/page-preload.service.ts","ng://@groupdocs.examples.angular/common-components/lib/navigate.service.ts","ng://@groupdocs.examples.angular/common-components/lib/document/document.component.ts","ng://@groupdocs.examples.angular/common-components/lib/page/page.component.ts","ng://@groupdocs.examples.angular/common-components/lib/pipes.ts","ng://@groupdocs.examples.angular/common-components/lib/upload-file-zone/upload-file-zone.component.ts","ng://@groupdocs.examples.angular/common-components/lib/dnd.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/viewport.service.ts","ng://@groupdocs.examples.angular/common-components/lib/scrollable.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/mousewheel.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/zoom.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/on-close.service.ts","ng://@groupdocs.examples.angular/common-components/lib/select/select.component.ts","ng://@groupdocs.examples.angular/common-components/lib/disabled-cursor.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/rotation.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/init-state/init-state.component.ts","ng://@groupdocs.examples.angular/common-components/lib/render-print.service.ts","ng://@groupdocs.examples.angular/common-components/lib/render-print.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/exception-message.service.ts","ng://@groupdocs.examples.angular/common-components/lib/error-modal/error-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/password.service.ts","ng://@groupdocs.examples.angular/common-components/lib/password-required/password-required.component.ts","ng://@groupdocs.examples.angular/common-components/lib/error-interceptor.service.ts","ng://@groupdocs.examples.angular/common-components/lib/search.service.ts","ng://@groupdocs.examples.angular/common-components/lib/search/search.component.ts","ng://@groupdocs.examples.angular/common-components/lib/searchable.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/tabbed-toolbars/tabbed-toolbars.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tab-activator.service.ts","ng://@groupdocs.examples.angular/common-components/lib/tab/tab.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tabs/tabs.component.ts","ng://@groupdocs.examples.angular/common-components/lib/formatting.service.ts","ng://@groupdocs.examples.angular/common-components/lib/color-picker/color-picker.component.ts","ng://@groupdocs.examples.angular/common-components/lib/back-formatting.service.ts","ng://@groupdocs.examples.angular/common-components/lib/selection.service.ts","ng://@groupdocs.examples.angular/common-components/lib/formatting.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/success-modal/success-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/edit-html.service.ts","ng://@groupdocs.examples.angular/common-components/lib/editor.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask.service.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask/loading-mask.component.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask-interceptor.service.ts","ng://@groupdocs.examples.angular/common-components/lib/drop-down/drop-down.component.ts","ng://@groupdocs.examples.angular/common-components/lib/left-side-bar/left-side-bar.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tooltip.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/add-dynamic-component.service.ts","ng://@groupdocs.examples.angular/common-components/lib/hosting-dynamic-component.service.ts","ng://@groupdocs.examples.angular/common-components/lib/host-dynamic.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/resizing/resizing.component.ts","ng://@groupdocs.examples.angular/common-components/lib/top-tab-activator.service.ts","ng://@groupdocs.examples.angular/common-components/lib/top-tab/top-tab.component.ts","ng://@groupdocs.examples.angular/common-components/lib/text-menu/text-menu.component.ts","ng://@groupdocs.examples.angular/common-components/lib/context-menu/context-menu.component.ts","ng://@groupdocs.examples.angular/common-components/lib/common-components.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__extends","__","this","constructor","prototype","create","__values","o","m","Symbol","iterator","i","call","next","length","value","done","TopToolbarComponent","Component","args","selector","template","SidePanelComponent","closable","saveable","hideSidePanel","EventEmitter","saveInSidePanel","onlyTitle","closeSidePanel","emit","saveBySidePanel","toggleTitleMode","Input","Output","WindowService","_this","resizeSubject","Subject","width","window","innerWidth","height","innerHeight","_resize$","fromEvent","pipe","debounceTime","distinctUntilChanged","startWith","target","tap","event","subscribe","defineProperty","asObservable","isMobile","isTablet","isDesktop","getWidth","getHeight","isEdge","navigator","userAgent","toLowerCase","indexOf","isFirefox","ButtonComponent","windowService","iconOnly","intent","disabled","toggle","iconRegular","elementPosition","showToolTip","onResize","w","iconButtonClass","onHovering","className","onUnhovering","cleanAll","str","val","replace","LogoComponent","ngOnInit","TooltipComponent","position","visibility","getClass","Api","VIEWER_APP","SIGNATURE_APP","ANNOTATION_APP","SEARCH_APP","EDITOR_APP","COMPARISON_APP","CONVERSION_APP","METADATA_APP","DEFAULT_API_ENDPOINT","location","href","LOAD_FILE_TREE","LOAD_CONFIG","LOAD_DOCUMENT_DESCRIPTION","LOAD_DOCUMENT_PAGE","LOAD_DOCUMENT_PROPERTIES","LOAD_DOCUMENT_PROPERTIES_NAMES","SAVE_PROPERTY","REMOVE_PROPERTY","ROTATE_DOCUMENT_PAGE","UPLOAD_DOCUMENTS","DOWNLOAD_DOCUMENTS","LOAD_PRINT","LOAD_PRINT_PDF","LOAD_THUMBNAILS","LOAD_FORMATS","SAVE_FILE","CREATE_FILE","COMPARE_FILES","CONVERT_FILE","DELETE_SIGNATURE_FILE","REMOVE_FROM_INDEX","GET_FILE_STATUS","SAVE_OPTICAL_CODE","SAVE_TEXT","SAVE_IMAGE","SAVE_STAMP","SIGN","DOWNLOAD_SIGNED","LOAD_SIGNATURE_IMAGE","ANNOTATE","SEARCH","ADD_FILES_TO_INDEX","httpOptionsJson","headers","HttpHeaders","Content-Type","httpOptionsJsonResponseTypeBlob","responseType","ConfigService","apiEndpoint","_apiEndpoint","url","trim","endsWith","substring","getConfigEndpoint","app","getViewerApiEndpoint","getEditorApiEndpoint","getComparisonApiEndpoint","getConversionApiEndpoint","getMetadataApiEndpoint","getSignatureApiEndpoint","getAnnotationApiEndpoint","getSearchApiEndpoint","Injectable","CommonModals","PasswordRequired","ErrorMessage","BrowseFiles","CreateDocument","OperationSuccess","DrawHandSignature","DrawStampSignature","InformationMessage","ModalService","modals","add","modal","push","remove","id","filter","x","open","close","ModalComponent","modalService","el","visible","cancel","element","nativeElement","document","body","appendChild","console","error","ngOnDestroy","preventDefault","stopPropagation","onClose","$event","cancelClose","ElementRef","RotatedPage","FileCredentials","guid","password","SaveFile","_super","content","tslib_1.__extends","FileDescription","printAllowed","FileModel","HttpError","BadRequest","Unauthorized","Forbidden","NotFound","TimeOut","Conflict","InternalServerError","Utils","getMousePosition","mouse","y","wEvent","ev","pageX","screenX","touches","pageY","screenX_1","screenY","screenY_1","clientX","scrollLeft","clientY","scrollTop","toRgb","color","result","exec","r","parseInt","g","toHex","match","charAt","c","RegExp","$1","$2","$3","pad","len","toString","FileUtil","find","filename","isDirectory","strings","split","name_1","pop","map","folder","format","icon","pdf","unit","doc","docx","docm","dot","dotx","dotm","xls","xlsx","xlsm","xlsb","xls2003","xltx","xltm","ppt","pptx","pps","ppsx","vsd","vdx","vss","vsx","vst","vtx","vsdx","vdw","vstx","vssx","mpp","mpt","msg","eml","emlx","one","odt","ott","ods","odp","otp","ots","potx","potm","pptm","ppsm","rtf","txt","csv","html","mht","mhtml","xml","xps","dxf","dwg","bmp","gif","jpg","jpe","jpeg","jfif","png","tiff","tif","psd","svg","jp2","epub","ico","webp","mobi","tex","djvu","unknown","FileService","UploadFilesService","_uploadsChange","Observable","observer","_observer","changeFilesList","filesList","$","jquery","uploads_choices","name","BrowseFilesModalComponent","_uploadService","uploads","selectedFileGuid","selectedDirectory","urlForUpload","closing","showUploadUrl","showUploadFile","getSize","size","mb","Math","round","kb","getFormatName","file","directory","getFormatIcon","choose","selectedFile","goUp","selectUpload","trigger","refresh","files","showSpinner","uploadUrl","cleanUpload","handleFileInput","ZoomService","_zoomChange","_zoom","changeZoom","zoom","createZoomOption","sep","separator","zoomOptions","PagePreloadService","_checkPreload","changeLastPageInView","page","NavigateService","_pagePreloadService","_currentPage","_countPages","BehaviorSubject","_navigate","nextPage","navigateTo","prevPage","toLastPage","toFirstPage","currentPage","providedIn","DocumentComponent","_elementRef","_zoomService","_windowService","_navigateService","wait","docWidth","docHeight","viewportWidth","viewportHeight","scale","lastScale","container","lastX","lastY","pinchCenter","pinchCenterOffset","curWidth","curHeight","zoomChange","navigate","selectedPage","ifPresentation","ngOnChanges","ngAfterViewInit","children","item","clientWidth","clientHeight","offsetWidth","offsetHeight","Hammer","ifExcel","getDimensionWithUnit","pageNumber","isVisible","mode","ifEdge","ngAfterViewChecked","querySelectorAll","PageComponent","test","number","editable","changes","data","imgData","isHtml","SanitizeHtmlPipe","sanitizer","transform","bypassSecurityTrustHtml","Pipe","DomSanitizer","SanitizeResourceHtmlPipe","bypassSecurityTrustResourceUrl","SanitizeStylePipe","bypassSecurityTrustStyle","HighlightSearchPipe","re","UploadFileZoneComponent","closeUpload","onCloseUpload","DndDirective","_uploadFilesService","opening","dropped","active","dragCounter","onDragEnter","evt","onDragOver","onDragLeave","closeArea","onDrop","dataTransfer","onClick","Directive","HostBinding","HostListener","ViewportService","checkInViewport","leftOffset","deltaX","win","viewport","isNaN","zoomN","outerHeight","outerWidth","bounds","offset","right","left","bottom","top","deltas","parseFloat","min","toFixed","ScrollableDirective","_viewportService","loadedPagesSet","Set","scrollToPage","scrolling","resizing","getPage","prev","isSameTop","options","calculateOffset","scroll","getChildren","count","countPagesOnWidth","margin","pagesHeight","getZoom","pageEl","floor","getBoundingClientRect","currentPageSet","pageElem","currentPageRect","has","MouseWheelDirective","mouseWheelUp","mouseWheelDown","onMouseWheelChrome","mouseWheelFunc","onMouseWheelFirefox","onMouseWheelIE","delta","max","wheelDelta","detail","ZoomDirective","zoomActive","setStyles","resizePages","zoomInt","transformOrigin","maxWidth","pages","forEach","minWidth","getScrollWidth","elm","getScrollHeight","viewPortWidth","parentElement","viewPortHeight","scrollWidth","scrollHeight","OnCloseService","_onClose","SelectComponent","_onCloseService","selected","isOpen","onClickOutside","select","DisabledCursorDirective","updateCursor","cursor","dis","RotationDirective","withMargin","angle","animation","transition","isHtmlMode","isLandscape","InitStateComponent","fileDropped","RenderPrintService","_render","_renderBlob","_observerBlob","changePages","changeBlob","RenderPrintDirective","_renderService","renderPrint","renderPrintBlob","pagesHtml","pages_1","tslib_1.__values","pages_1_1","openWindow","imageA4Adjusted","cssPrint","windowObject","focus","writeln","setTimeout","print","fileURL","URL","createObjectURL","ExceptionMessageService","_messageChange","changeMessage","message","ErrorModalComponent","messageService","messageChange","PasswordService","_passChange","setPassword","pass","PasswordRequiredComponent","_passwordService","cancelEvent","onCloseOpen","ErrorInterceptorService","_modalService","_messageService","intercept","req","logFormat","handle","catchError","exception","HttpErrorResponse","status","throwError","SearchService","_textChange","_observerCurrent","_currentChange","_observerTotal","_totalChange","setText","text","setCurrent","current","setTotal","total","SearchComponent","_searchService","hidePanel","totalChange","hide","textElement","ViewChild","static","SearchableDirective","_highlight","currentChange","moveToCurrent","textChange","highlightSearch","cleanHighlight","highlightEl","removeClass","currentEl","addClass","textNodes","contents","nodeName","checkClass","classList","contains","nodeType","textContent","highlight","each","$this","replaceWith","normalize","nodeListOf","innerText","TabbedToolbarsComponent","TabActivatorService","_activeTabChange","changeActiveTab","tabId","TabComponent","_tabActivatorService","activeTabChange","activation","selectTab","TabsComponent","Formatting","fontSize","bgColor","bold","italic","underline","font","strikeout","align","list","default","FormattingService","_observerBold","_formatBoldChange","_observerUnderline","_formatUnderlineChange","_observerUndo","_undo","_observerRedo","_redo","_observerItalic","_formatItalicChange","_observerColor","_formatColorChange","_observerBgColor","_formatBgColorChange","_observerFontSize","_formatFontSizeChange","_observerFont","_formatFontChange","_observerStrikeout","_formatStrikeoutChange","_observerAlign","_formatAlignChange","_observerList","_formatListChange","createFontSizeOption","getFontSizeOptions","createFontOption","getFontOptions","fontOptions","changeFormatFontSize","changeFormatBold","changeFormatUnderline","Undo","Redo","changeFormatItalic","changeFormatColor","changeFormatBgColor","bgcolor","changeFormatFont","changeFormatStrikeout","changeFormatAlign","changeFormatList","DEFAULT_COLORS","ColorPickerComponent","selectedColor","closeOutside","colors","white","BackFormattingService","SelectionService","isIE","restoreSelection","selection","collapsed","putSelection","captureSelection","getSelection","rangeCount","getRangeAt","sel","removeAllRanges","addRange","cloneRange","refreshSelection","FormattingDirective","_formattingService","_backFormattingService","_selectionService","mouseup","queryCommandState","queryCommandValue","checkJustify","checkList","focusNode","parentNode","css","reportFontSize","containerEl","commonAncestorContainer","type","createRange","getComputedStyleProperty","propName","getComputedStyle","currentStyle","undo","toggleUndo","redo","toggleRedo","formatBoldChange","toggleBold","formatUnderlineChange","toggleUnderline","formatItalicChange","toggleItalic","formatColorChange","setColor","formatBgColorChange","setBgColor","formatFontSizeChange","setFontSize","formatFontChange","setFont","formatStrikeoutChange","toggleStrikeout","formatAlignChange","toggleAlign","formatListChange","toggleList","execCommand","spanString","toggleAlignIE","SuccessModalComponent","EditHtmlService","_htmlContent","EditorDirective","_htmlService","onInput","innerHTML","onMouseleave","onBlur","LoadingMaskService","onLoadingChanged","stopList","requests","onRequestStart","includes","notify","onRequestFinish","index","splice","LoadingMaskComponent","_loadingMaskService","loadingMask","loading","LoadingMaskInterceptorService","finalize","horizontalAlignment","center","verticalAlignment","DropDownToggleComponent","dropdown","click","encapsulation","ViewEncapsulation","None","Inject","forwardRef","DropDownComponent","DropDownItemsComponent","getPlacement","h","v","DropDownItemComponent","class","selectEntry","placement","LeftSideBarComponent","TooltipDirective","AddDynamicComponentService","_factoryResolver","_appRef","addDynamicComponent","viewContainerRef","component","factory","resolveComponentFactory","componentRef","createComponent","onDestroy","detachView","hostView","ComponentFactoryResolver","ApplicationRef","HostingDynamicComponentService","hosts","host","ident","HostDynamicDirective","_hostingService","clear","ViewContainerRef","ResizingComponent","se","ne","sw","nw","SE","NE","SW","NW","offsetX","offsetY","offsetTop","offsetLeft","release","grab","elSE","getElementId","elNW","init","width_1","height_1","pageWidth","pageHeight","catchUp","setData","oldPosition","resize","notSW","notNE","setOffsets","end","start","drop","TopTabActivatorService","TopTabComponent","_excMessageService","activeTab","toggleTab","TextMenuComponent","renderer","decoration","showTooltips","outFontSize","outFont","outBold","outItalic","outUnderline","outColor","fontSizeOptions","colorPickerShow","changePosition","setStyle","querySelector","selectFontSize","off","on","fontElements","getElementsByTagName","getAttribute","removeAttribute","style","selectFont","toggleColorPicker","selectColor","closePicker","Renderer2","MenuType","FOR_SIGNATURE","FOR_ANNOTATION","ContextMenuComponent","formatting","lock","translation","changeFormatting","removeItem","copySign","lockOut","comment","changeScale","saveChanges","deleteItem","toggleLock","onCopySign","isSignature","menuType","isAnnotation","addComment","providers","CommonComponentsModule","library","fas","far","NgModule","imports","CommonModule","FontAwesomeModule","ClickOutsideModule","declarations","exports"],"mappings":"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7B,KAAK27B,KAClB37B,KAAKg8B,QAAQp6B,KAAK5B,KAAK27B,OAGzBF,EAAAv7B,UAAAo8B,WAAA,WACEt8B,KAAK+7B,SAASn6B,MAAK,IAGrB65B,EAAAv7B,UAAAq8B,YAAA,WACE,OAAOv8B,KAAKw8B,WAAalB,GAASC,eAGpCE,EAAAv7B,UAAAu8B,aAAA,WACE,OAAOz8B,KAAKw8B,WAAalB,GAASE,gBAGpCC,EAAAv7B,UAAAw8B,WAAA,WACE18B,KAAKi8B,QAAQr6B,MAAK,wBApGrBZ,EAAAA,UAASC,KAAA,CAAC,CACTC,SAAU,kBACVC,SAAA,stEAVMc,SACC0V,SAH0DvL,EAAAA,kBAAXivB,EAAAA,iDAgBrDt5B,EAAAA,wBACAA,EAAAA,2BACAA,EAAAA,oBACAA,EAAAA,2BACAA,EAAAA,wBACAA,EAAAA,gCACAC,EAAAA,2BACAA,EAAAA,yBACAA,EAAAA,wBACAA,EAAAA,wBACAA,EAAAA,UAsFHy5B,EAtGA,OCkEMkB,GAAY,CAAC/zB,EACjBlD,EACA6E,EACA0K,EACAlI,EACA4C,EACAnC,EACA6O,EACAM,EACAE,EACAE,EACA7H,EACAmP,GACA7L,EACAJ,EACAT,EACAmO,GACAO,GACAQ,GACAY,GACAxlB,EACAoc,GACAwN,GACAiD,GACA9L,GACAqR,GACAd,GACA/I,GACAqL,GACAe,GACAyC,IAEFuD,GAAA,WAoGE,SAAAA,IACEC,EAAAA,QAAQpyB,IAAIqyB,EAAAA,IAAKC,EAAAA,KAErB,2BAvGCC,EAAAA,SAAQ/7B,KAAA,CAAC,CACRg8B,QAAS,CAACC,EAAAA,aAAcC,EAAAA,kBAAmBC,EAAAA,oBAC3CC,aAAc,CACZt8B,EACAK,EACA6C,EACAmB,EACAE,EACA4F,EACA2K,EACAwD,EACAwC,EACAQ,EACAM,EACAE,EACAE,EACAE,EACAG,EACAqC,GACA0B,GACAW,GACAoB,GACAM,GACAI,GACAO,GACAQ,GACAuB,GACAO,GACA4B,GACAQ,GACA0B,GACAK,GACAK,GACAwD,GACAqB,GACAgD,GACAG,GACAgB,GACAiB,GACAK,GACAJ,GACAT,GACAiB,GACAC,GACAoB,GACAI,GACAkC,GACAI,GACA+B,IAEF6B,QAAS,CACPv8B,EACAK,EACA6C,EACAmB,EACAE,EACA4F,EACA2K,EACAwD,EACAwC,EACAc,EACAE,EACAE,EACAV,EACAY,EACAwC,GACA0B,GACA+B,GACAU,GACAO,GACAQ,GACAuB,GACAO,GACA4B,GACAQ,GACA0B,GACAK,GACAK,GACAwD,GACAqB,GACAgD,GACAmB,GACA7W,EACA8X,GACAK,GACAJ,GACAT,GACA5S,GACA4S,GACAiB,GACAC,GACAoB,GACAI,GACAkC,GACAI,GACA+B,IAEFkB,UAAWA,6CAMbC,EAvGA","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import {Component, Input} from '@angular/core';\n\n@Component({\n selector: 'gd-top-toolbar',\n templateUrl: './top-toolbar.component.html',\n styleUrls: ['./top-toolbar.component.less']\n})\nexport class TopToolbarComponent {\n\n constructor() {\n }\n}\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\n\n@Component({\n selector: 'gd-side-panel',\n templateUrl: './side-panel.component.html',\n styleUrls: ['./side-panel.component.less']\n})\n\nexport class SidePanelComponent {\n @Input() title: string;\n @Input() icon: string;\n @Input() closable = true;\n @Input() saveable = true;\n @Output() hideSidePanel = new EventEmitter();\n @Output() saveInSidePanel = new EventEmitter();\n\n onlyTitle = false;\n\n constructor() {\n }\n\n closeSidePanel() {\n this.hideSidePanel.emit(true);\n }\n\n saveBySidePanel() {\n this.saveInSidePanel.emit(true);\n }\n\n toggleTitleMode(){\n if (this.closable && !this.saveable) {\n this.onlyTitle = !this.onlyTitle;\n }\n }\n}\n","import {fromEvent, Observable, Subject} from \"rxjs\";\nimport {debounceTime, distinctUntilChanged, startWith, tap} from \"rxjs/operators\";\n\nconst MOBILE_MAX_WIDTH = 425;\nconst TABLET_MAX_WIDTH = 1024;\n\nexport class WindowService {\n\n private resizeSubject: Subject = new Subject();\n private _resize$;\n private width: number;\n private height: number;\n\n constructor() {\n this.width = window.innerWidth;\n this.height = window.innerHeight;\n\n this._resize$ = fromEvent(window, 'resize')\n .pipe(\n debounceTime(200),\n distinctUntilChanged(),\n startWith({target: {innerWidth: window.innerWidth, innerHeight: window.innerHeight}}),\n tap(event => {\n this.resizeSubject.next(event.target);\n this.width = (event.target as Window).innerWidth;\n this.height = (event.target as Window).innerHeight;\n }),\n );\n this._resize$.subscribe();\n }\n\n get onResize(): Observable {\n return this.resizeSubject.asObservable();\n }\n\n isMobile() {\n return this.width <= MOBILE_MAX_WIDTH;\n }\n\n isTablet() {\n return this.width <= TABLET_MAX_WIDTH;\n }\n\n isDesktop() {\n return !this.isMobile() && !this.isTablet();\n }\n\n getWidth() {\n return this.width;\n }\n\n getHeight() {\n return this.height;\n }\n\n isEdge() {\n return window.navigator.userAgent.toLowerCase().indexOf('edge') > -1;\n }\n\n isFirefox() {\n return navigator.userAgent.toLowerCase().indexOf('firefox') > -1;\n }\n}\n","import {Component, Input} from '@angular/core';\nimport {WindowService} from \"../window.service\";\n\n@Component({\n selector: 'gd-button',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.less']\n})\nexport class ButtonComponent {\n @Input() iconOnly = true;\n @Input() intent = 'default';\n @Input() disabled = false;\n @Input() icon: string;\n @Input() iconClass: string;\n @Input() tooltip: string;\n @Input() className: string;\n @Input() toggle = false;\n @Input() iconSize: string;\n @Input() iconRegular = false;\n @Input() elementPosition = 0;\n\n showToolTip = false;\n private isDesktop: boolean;\n\n constructor(windowService: WindowService) {\n this.isDesktop = windowService.isDesktop();\n windowService.onResize.subscribe((w) => {\n this.isDesktop = windowService.isDesktop();\n });\n }\n\n iconButtonClass() {\n return this.iconOnly ? 'icon-button' : '';\n }\n\n onHovering() {\n if (this.isDesktop && !this.disabled) {\n this.className += ' active';\n }\n }\n\n onUnhovering() {\n if (this.isDesktop && !this.disabled) {\n this.className = this.cleanAll(this.className, ' active');\n }\n }\n\n private cleanAll(str: string, val: string) {\n while (str && str.indexOf(val) !== -1) {\n str = str.replace(val, '');\n }\n return str;\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-logo',\n templateUrl: './logo.component.html',\n styleUrls: ['./logo.component.less']\n})\nexport class LogoComponent implements OnInit {\n\n @Input() logo;\n @Input() icon;\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-tooltip',\n templateUrl: './tooltip.component.html',\n styleUrls: ['./tooltip.component.less']\n})\nexport class TooltipComponent implements OnInit {\n\n @Input() text: string;\n @Input() position = 0;\n visibility = 'hidden';\n\n constructor() {\n }\n\n getClass() {\n if (this.position === 0) {\n return 'tooltip';\n }\n return 'tooltip ' + (this.position > 0 ? 'last-element' : 'first-element');\n }\n\n @Input()\n set show(value: boolean) {\n this.visibility = value ? 'shown' : 'hidden';\n }\n\n ngOnInit() {\n }\n\n}\n","import {HttpHeaders} from \"@angular/common/http\";\nimport {Injectable} from \"@angular/core\";\n\nexport class Api {\n public static VIEWER_APP = '/viewer';\n public static SIGNATURE_APP = '/signature';\n public static ANNOTATION_APP = '/annotation';\n public static SEARCH_APP = '/search';\n public static EDITOR_APP = '/editor';\n public static COMPARISON_APP = '/comparison';\n public static CONVERSION_APP = '/conversion';\n public static METADATA_APP = '/metadata';\n public static DEFAULT_API_ENDPOINT = window.location.href;\n public static LOAD_FILE_TREE = '/loadFileTree';\n public static LOAD_CONFIG = '/loadConfig';\n public static LOAD_DOCUMENT_DESCRIPTION = '/loadDocumentDescription';\n public static LOAD_DOCUMENT_PAGE = '/loadDocumentPage';\n public static LOAD_DOCUMENT_PROPERTIES = '/loadProperties';\n public static LOAD_DOCUMENT_PROPERTIES_NAMES = '/loadPropertiesNames';\n public static SAVE_PROPERTY = '/saveProperty';\n public static REMOVE_PROPERTY = '/removeProperty';\n public static ROTATE_DOCUMENT_PAGE = '/rotateDocumentPages';\n public static UPLOAD_DOCUMENTS = '/uploadDocument';\n public static DOWNLOAD_DOCUMENTS = '/downloadDocument';\n public static LOAD_PRINT = '/loadPrint';\n public static LOAD_PRINT_PDF = '/printPdf';\n public static LOAD_THUMBNAILS = '/loadThumbnails';\n public static LOAD_FORMATS = '/loadFormats';\n public static SAVE_FILE = '/saveFile';\n public static CREATE_FILE = '/createFile';\n public static COMPARE_FILES = '/compare';\n public static CONVERT_FILE = '/convert';\n public static DELETE_SIGNATURE_FILE = '/deleteSignatureFile';\n public static REMOVE_FROM_INDEX = '/removeFromIndex';\n public static GET_FILE_STATUS = '/getFileStatus';\n public static SAVE_OPTICAL_CODE = '/saveOpticalCode';\n public static SAVE_TEXT = '/saveText';\n public static SAVE_IMAGE = '/saveImage';\n public static SAVE_STAMP = '/saveStamp';\n public static SIGN = '/sign';\n public static DOWNLOAD_SIGNED = '/downloadSigned';\n public static LOAD_SIGNATURE_IMAGE = '/loadSignatureImage';\n public static ANNOTATE = '/annotate';\n public static SEARCH = '/search';\n public static ADD_FILES_TO_INDEX = '/addFilesToIndex';\n\n public static httpOptionsJson = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n })\n };\n public static httpOptionsJsonResponseTypeBlob = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n }),\n responseType: 'blob' as 'blob'\n };\n}\n\n@Injectable()\nexport class ConfigService {\n\n private _apiEndpoint: string;\n\n constructor() {\n this.apiEndpoint = Api.DEFAULT_API_ENDPOINT;\n }\n\n set apiEndpoint(url: string) {\n this._apiEndpoint = url && url.trim().endsWith('/') ? url.substring(0, url.length - 1) : url;\n }\n\n getConfigEndpoint(app) {\n return (this.apiEndpoint.endsWith(app) ? this.apiEndpoint : this.apiEndpoint + app) + Api.LOAD_CONFIG;\n }\n\n getViewerApiEndpoint() {\n return this._apiEndpoint.endsWith(Api.VIEWER_APP) ? this._apiEndpoint : this._apiEndpoint + Api.VIEWER_APP;\n }\n\n getEditorApiEndpoint() {\n return this._apiEndpoint.trim().endsWith(Api.EDITOR_APP) ? this._apiEndpoint : this._apiEndpoint + Api.EDITOR_APP;\n }\n\n getComparisonApiEndpoint() {\n return this._apiEndpoint.trim().endsWith(Api.COMPARISON_APP) ? this._apiEndpoint : this._apiEndpoint + Api.COMPARISON_APP;\n }\n\n getConversionApiEndpoint() {\n return this._apiEndpoint.trim().endsWith(Api.CONVERSION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.CONVERSION_APP;\n }\n\n getMetadataApiEndpoint() {\n return this._apiEndpoint.trim().endsWith(Api.METADATA_APP) ? this._apiEndpoint : this._apiEndpoint + Api.METADATA_APP;\n }\n\n get apiEndpoint() {\n return this._apiEndpoint;\n }\n\n getSignatureApiEndpoint() {\n return this._apiEndpoint.endsWith(Api.SIGNATURE_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SIGNATURE_APP;\n }\n\n getAnnotationApiEndpoint() {\n return this._apiEndpoint.endsWith(Api.ANNOTATION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.ANNOTATION_APP;\n }\n\n getSearchApiEndpoint() {\n return this._apiEndpoint.endsWith(Api.SEARCH_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SEARCH_APP;\n }\n}\n","export class CommonModals {\n static PasswordRequired = \"gd-password-required\";\n static ErrorMessage = \"gd-error-message\";\n static BrowseFiles = \"gd-browse-files\";\n static CreateDocument = \"gd-create-document\";\n static OperationSuccess = \"gd-success-modal\";\n static DrawHandSignature = \"gd-draw-hand-signature\";\n static DrawStampSignature = \"gd-draw-stamp-signature\";\n static InformationMessage = \"gd-information-message\";\n}\n\nexport class ModalService {\n private modals: any[] = [];\n\n add(modal: any) {\n this.modals.push(modal);\n }\n\n remove(id: string) {\n this.modals = this.modals.filter(x => x.id !== id);\n }\n\n open(id: string) {\n const modal: any = this.modals.filter(x => x.id === id)[0];\n if (modal) {\n modal.open();\n }\n }\n\n close(id: string) {\n const modal: any = this.modals.filter(x => x.id === id)[0];\n if (modal) {\n modal.close();\n }\n }\n}\n","import {Component, ElementRef, EventEmitter, Input, OnDestroy, OnInit, Output} from '@angular/core';\nimport {ModalService} from \"../modal.service\";\n\n@Component({\n selector: 'gd-modal',\n templateUrl: './modal.component.html',\n styleUrls: ['./modal.component.less']\n})\nexport class ModalComponent implements OnInit, OnDestroy {\n @Input() id: string;\n @Input() title: string;\n @Output() visible = new EventEmitter();\n @Output() cancel = new EventEmitter();\n visibility = false;\n private element: any;\n\n constructor(private modalService: ModalService, el: ElementRef) {\n this.element = el.nativeElement;\n }\n\n ngOnInit(): void {\n if (!this.id) {\n console.error('modal must have an id');\n return;\n }\n\n document.body.appendChild(this.element);\n\n this.modalService.add(this);\n }\n\n ngOnDestroy(): void {\n this.modalService.remove(this.id);\n this.element.remove();\n }\n\n open(): void {\n this.visibility = true;\n this.visible.emit(true);\n }\n\n close(): void {\n event.preventDefault();\n event.stopPropagation();\n this.visibility = false;\n this.visible.emit(false);\n }\n\n onClose($event: MouseEvent) {\n $event.stopPropagation();\n if ($event && $event.target && ($event.target).id === 'modalDialog') {\n this.close();\n }\n }\n\n cancelClose() {\n this.cancel.emit(false);\n this.close();\n }\n}\n","export class PageModel {\n data: string;\n angle: number;\n width: number;\n height: number;\n number: number;\n editable: boolean;\n}\n\nexport class RotatedPage {\n pageNumber: number;\n angle: number;\n}\n\nexport class FileCredentials {\n guid: string;\n password: string;\n\n constructor(guid: string, password: string) {\n this.guid = guid;\n this.password = password;\n }\n}\n\nexport class SaveFile extends FileCredentials {\n content: string;\n\n constructor(guid: string, password: string, content: string) {\n super(guid, password);\n this.content = content;\n }\n}\n\nexport class FileDescription {\n guid: string;\n pages: PageModel[];\n printAllowed = true;\n showGridLines: boolean;\n thumbnails: PageModel[];\n}\n\nexport class FileModel {\n guid: string;\n name: string;\n directory: boolean;\n size: number;\n isDirectory: boolean;\n}\n\nexport class HttpError {\n static BadRequest = 400;\n static Unauthorized = 401;\n static Forbidden = 403;\n static NotFound = 404;\n static TimeOut = 408;\n static Conflict = 409;\n static InternalServerError = 500;\n}\n\nexport class Utils {\n public static getMousePosition(event) {\n const mouse = {\n x: 0,\n y: 0\n };\n const wEvent: DragEvent = window.event;\n const ev = event || wEvent; //Moz || IE\n if (ev.pageX || wEvent.pageX || wEvent.screenX || (ev.touches && ev.touches[0] && ev.touches[0].pageX)) { //Moz\n const pageX = typeof ev.pageX !== \"undefined\" && ev.pageX !== 0 ? ev.pageX : wEvent.pageX;\n const pageY = typeof ev.pageY !== \"undefined\" && ev.pageY !== 0 ? ev.pageY : wEvent.pageY;\n const screenX = typeof wEvent.screenX !== \"undefined\" && wEvent.screenY !== 0;\n const screenY = typeof wEvent.screenY !== \"undefined\" && wEvent.screenY !== 0;\n mouse.x = pageX ? pageX : (screenX ? wEvent.screenX : ev.touches[0].pageX);\n mouse.y = pageY ? pageY : (screenY ? wEvent.screenY : ev.touches[0].pageY);\n } else if (ev.clientX) { //IE\n mouse.x = ev.clientX + document.body.scrollLeft;\n mouse.y = ev.clientY + document.body.scrollTop;\n }\n return mouse;\n }\n\n public static toRgb(color: string) {\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(color);\n if (result) {\n const r = parseInt(result[1], 16);\n const g = parseInt(result[2], 16);\n const b = parseInt(result[3], 16);\n return result ? 'rgb(' + r + ',' + g + ',' + b + ')' : '';\n }\n return color;\n }\n\n public static toHex(color: string) {\n // check if color is standard hex value\n if (color.match(/[0-9A-F]{6}|[0-9A-F]{3}$/i)) {\n return (color.charAt(0) === \"#\") ? color : (\"#\" + color);\n // check if color is RGB value -> convert to hex\n } else if (color.match(/^rgb\\(\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*\\)$/)) {\n const c = ([parseInt(RegExp.$1, 10), parseInt(RegExp.$2, 10), parseInt(RegExp.$3, 10)]),\n pad = function (str) {\n if (str.length < 2) {\n for (let i = 0, len = 2 - str.length; i < len; i++) {\n str = '0' + str;\n }\n }\n return str;\n };\n if (c.length === 3) {\n const r = pad(c[0].toString(16)),\n g = pad(c[1].toString(16)),\n b = pad(c[2].toString(16));\n return '#' + r + g + b;\n }\n // else do nothing\n } else {\n return '';\n }\n }\n}\n\nexport class FileUtil {\n public static map = {\n 'folder': {'format': '', 'icon': 'folder'},\n 'pdf': {'format': 'Portable Document Format', 'icon': 'file-pdf', 'unit': 'pt'},\n 'doc': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'docx': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'docm': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'dot': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'dotx': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'dotm': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'xls': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xlsx': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xlsm': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xlsb': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xls2003': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xltx': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xltm': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'ppt': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'pptx': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'pps': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'ppsx': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'vsd': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vdx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vss': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vsx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vst': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vtx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vsdx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vdw': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vstx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vssx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'mpp': {'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt'},\n 'mpt': {'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt'},\n 'msg': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\n 'eml': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\n 'emlx': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\n 'one': {'format': 'Microsoft OneNote', 'icon': 'file-word', 'unit': 'pt'},\n 'odt': {'format': 'Open Document Text', 'icon': 'file-word', 'unit': 'pt'},\n 'ott': {'format': 'Open Document Text Template', 'icon': 'file-word', 'unit': 'pt'},\n 'ods': {'format': 'Open Document Spreadsheet', 'icon': 'file-excel', 'unit': 'px'},\n 'odp': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'otp': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'ots': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'potx': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'potm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'pptm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'ppsm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'rtf': {'format': 'Rich Text Format', 'icon': 'file-alt', 'unit': 'pt'},\n 'txt': {'format': 'Plain Text File', 'icon': 'file-alt', 'unit': 'pt'},\n 'csv': {'format': 'Comma-Separated Values', 'icon': 'file-excel', 'unit': 'px'},\n 'html': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\n 'mht': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\n 'mhtml': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\n 'xml': {'format': 'Extensible Markup Language', 'icon': 'file-word', 'unit': 'pt'},\n 'xps': {'format': 'XML Paper Specification', 'icon': 'file-word', 'unit': 'pt'},\n 'dxf': {'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px'},\n 'dwg': {'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px'},\n 'bmp': {'format': 'Bitmap Picture', 'icon': 'file-image', 'unit': 'px'},\n 'gif': {'format': 'Graphics Interchange Format', 'icon': 'file-image', 'unit': 'px'},\n 'jpg': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\n 'jpe': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\n 'jpeg': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\n 'jfif': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\n 'png': {'format': 'Portable Network Graphics', 'icon': 'file-image', 'unit': 'px'},\n 'tiff': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'tif': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'psd': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'svg': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'jp2': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'epub': {'format': 'Electronic Publication', 'icon': 'file-pdf', 'unit': 'pt'},\n 'ico': {'format': 'Windows Icon', 'icon': 'file-image', 'unit': 'px'},\n 'webp': {'format': 'Compressed Image', 'icon': 'file-image', 'unit': 'px'},\n 'mobi': {'format': 'Mobipocket eBook', 'icon': 'file-pdf', 'unit': 'pt'},\n 'tex': {'format': 'LaTeX Source Document', 'icon': 'file-pdf', 'unit': 'pt'},\n 'djvu': {'format': 'Multi-Layer Raster Image', 'icon': 'file-alt', 'unit': 'pt'},\n 'unknown': {'format': 'This format is not supported', 'icon': 'file'},\n };\n\n public static find(filename: string, isDirectory: boolean) {\n if (filename && !isDirectory) {\n const strings = filename.split('.');\n const name = strings.pop().toLowerCase();\n if (typeof FileUtil.map[name] === \"undefined\") {\n return strings.length > 0 ? FileUtil.map['unknown'] : FileUtil.map['folder'];\n } else {\n return FileUtil.map[name];\n }\n } else {\n return FileUtil.map['folder'];\n }\n }\n}\n\nexport class FileService {\n\n constructor() {\n }\n}\n","import {Observable, Observer} from \"rxjs\";\n\nexport class UploadFilesService {\n private _uploadsChange: Observable;\n private _observer: Observer;\n\n constructor() {\n this._uploadsChange = new Observable(observer =>\n this._observer = observer);\n }\n\n get uploadsChange(): Observable {\n return this._uploadsChange;\n }\n\n changeFilesList(filesList: FileList) {\n this._observer.next(filesList);\n }\n}\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {FileModel, FileUtil} from \"../file.service\";\nimport {UploadFilesService} from \"../upload-files.service\";\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\nconst upload_disc = 'Disc';\n\nconst upload_url = 'URL';\n\nconst uploads_choices = [{name: upload_disc, icon: 'hdd'}, {name: upload_url, icon: 'link'}];\n\n@Component({\n selector: 'gd-browse-files-modal',\n templateUrl: './browse-files-modal.component.html',\n styleUrls: ['./browse-files-modal.component.less']\n})\nexport class BrowseFilesModalComponent implements OnInit {\n uploads = uploads_choices;\n\n @Input() files;\n @Input() uploadConfig;\n @Output() selectedFileGuid = new EventEmitter();\n @Output() selectedDirectory = new EventEmitter();\n @Output() urlForUpload = new EventEmitter();\n @Output() closing = new EventEmitter();\n private selectedFile: FileModel;\n showUploadUrl = false;\n showUploadFile = false;\n\n constructor(private _uploadService: UploadFilesService) {\n }\n\n ngOnInit() {\n }\n\n getSize(size: number) {\n const mb = size / 1024 / 1024;\n if (mb > 1) {\n return (Math.round(mb * 100) / 100) + ' MB';\n } else {\n const kb = size / 1024;\n if (kb > 1) {\n return (Math.round(kb * 100) / 100) + ' KB';\n }\n }\n return size + ' Bytes';\n }\n\n getFormatName(file: FileModel) {\n return FileUtil.find(file.name, file.directory).format;\n }\n\n getFormatIcon(file: FileModel) {\n return FileUtil.find(file.name, file.directory).icon;\n }\n\n choose(file: FileModel) {\n this.selectedFile = file;\n if (file.directory || file.isDirectory) {\n this.selectedDirectory.emit(file.name);\n } else {\n this.selectedFileGuid.emit(file.guid);\n }\n }\n\n goUp() {\n if (this.selectedFile) {\n let guid = this.selectedFile.guid;\n if (guid.length > 0 && guid.indexOf('/') === -1) {\n guid = '';\n } else {\n guid = guid.replace(/\\/[^\\/]+\\/?$/, '');\n }\n this.selectedDirectory.emit(guid);\n }\n }\n\n selectUpload($event: string) {\n if (upload_url === $event) {\n this.showUploadUrl = true;\n } else {\n this.showUploadUrl = false;\n $(\"#gd-upload-input\").trigger('click');\n }\n }\n\n refresh($event) {\n\n if ($event) {\n this.files = null;\n this.selectedDirectory.emit('');\n this.showUploadUrl = false;\n this.selectedFile = null;\n } else {\n this.closing.emit(true);\n }\n }\n\n showSpinner() {\n return !this.files;\n }\n\n uploadUrl(url: string) {\n if (url) {\n this.urlForUpload.emit(url);\n this.cleanUpload();\n }\n }\n\n handleFileInput(files: FileList) {\n this._uploadService.changeFilesList(files);\n }\n\n cleanUpload() {\n this.showUploadFile = false;\n this.showUploadUrl = false;\n }\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class ZoomService {\n private _observer: Subject = new Subject();\n private readonly _zoomChange: Observable = this._observer.asObservable();\n private _zoom: number;\n\n constructor() {\n }\n\n get zoom(): number {\n return this._zoom;\n }\n\n get zoomChange(): Observable {\n return this._zoomChange;\n }\n\n changeZoom(zoom: number) {\n this._zoom = zoom;\n this._observer.next(zoom);\n }\n\n private createZoomOption(val: any, name: string, sep: boolean = false) {\n return {value: val, name: name, separator: sep}\n }\n\n zoomOptions(width, height) {\n return [this.createZoomOption(25, '25%'),\n this.createZoomOption(50, '50%'),\n this.createZoomOption(100,'100%'),\n this.createZoomOption(150, '150%'),\n this.createZoomOption(200, '200%'),\n this.createZoomOption(300, '300%'),\n this.createZoomOption(0, '', true),\n this.createZoomOption(width, 'Fit Width'),\n this.createZoomOption(height, 'Fit Height')];\n }\n}\n","import {Observable, Observer} from \"rxjs\";\n\nexport class PagePreloadService {\n private readonly _checkPreload: Observable;\n private _observer: Observer;\n\n constructor() {\n this._checkPreload = new Observable(observer =>\n this._observer = observer);\n }\n\n get checkPreload(): Observable {\n return this._checkPreload;\n }\n\n changeLastPageInView(page: number) {\n if(this._observer) {\n this._observer.next(page);\n }\n }\n}\n","import {BehaviorSubject, Observable} from \"rxjs\";\nimport {PagePreloadService} from \"./page-preload.service\";\nimport {Injectable} from \"@angular/core\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NavigateService {\n private _currentPage = 0;\n private _countPages = 0;\n private _observer: BehaviorSubject = new BehaviorSubject(null);\n private _navigate: Observable = this._observer.asObservable();\n\n constructor(private _pagePreloadService: PagePreloadService) {\n }\n\n get navigate(): Observable {\n return this._navigate;\n }\n\n get countPages(): number {\n return this._countPages;\n }\n\n set countPages(value: number) {\n this._countPages = value;\n }\n\n get currentPage(): number {\n return this._currentPage;\n }\n\n set currentPage(value: number) {\n this._currentPage = value;\n }\n\n nextPage() {\n if (this._currentPage < this._countPages) {\n this._currentPage++;\n this.navigateTo(this._currentPage);\n }\n }\n\n prevPage() {\n if (this._currentPage > 1) {\n this._currentPage--;\n this.navigateTo(this._currentPage);\n }\n }\n\n toLastPage() {\n this._currentPage = this._countPages;\n this.navigateTo(this._currentPage);\n }\n\n toFirstPage() {\n this._currentPage = 1;\n this.navigateTo(this._currentPage);\n }\n\n navigateTo(page: number) {\n this.currentPage = page;\n this._pagePreloadService.changeLastPageInView(page);\n this._observer.next(page);\n }\n}\n","import {\n AfterViewChecked,\n Component,\n ElementRef,\n Input,\n OnInit,\n AfterViewInit,\n OnChanges,\n Output,\n EventEmitter\n} from '@angular/core';\nimport {FileDescription, FileUtil} from \"../file.service\";\nimport {ZoomService} from \"../zoom.service\";\nimport * as Hammer from 'hammerjs';\nimport {WindowService} from '../window.service';\nimport * as jquery from 'jquery';\nimport { NavigateService } from '../navigate.service';\n\nconst $ = jquery;\n\n@Component({\n selector: 'gd-document',\n templateUrl: './document.component.html',\n styleUrls: ['./document.component.less']\n})\nexport class DocumentComponent implements OnInit, AfterViewChecked, AfterViewInit, OnChanges {\n\n @Input() mode: boolean;\n @Input() preloadPageCount: number;\n @Input() file: FileDescription;\n @Input() selectedPage: number;\n wait = false;\n zoom: number;\n\n docWidth = null;\n docHeight = null;\n viewportWidth = null;\n viewportHeight = null;\n scale = null;\n lastScale = null;\n container = null;\n doc = null;\n x = 0;\n lastX = 0;\n y = 0;\n lastY = 0;\n pinchCenter = null;\n pinchCenterOffset = null;\n curWidth = 0;\n curHeight = 0;\n isDesktop: boolean;\n\n constructor(protected _elementRef: ElementRef,\n private _zoomService: ZoomService,\n private _windowService: WindowService,\n private _navigateService: NavigateService,) {\n _zoomService.zoomChange.subscribe((val: number) => {\n this.zoom = val;\n });\n\n this.isDesktop = _windowService.isDesktop();\n\n this._navigateService.navigate.subscribe(((\n value => {\n this.selectedPage = value;\n })));\n }\n\n ngOnInit() {\n if (this.ifPresentation())\n {\n this.selectedPage = this._navigateService.currentPage;\n }\n }\n\n ngOnChanges() {\n }\n\n ngAfterViewInit() {\n // For current iteration we take .panzoom as a document\n this.doc = this._elementRef.nativeElement.children.item(0).children.item(0);\n // For current iteration we take .gd-document as a container\n this.container = this._elementRef.nativeElement;\n\n this.docWidth = this.doc.clientWidth;\n this.docHeight = this.doc.clientHeight;\n this.viewportWidth = this.doc.offsetWidth;\n\n // For cases where we already have zoom defined we should include it\n this.scale = (this.viewportWidth / this.docWidth) * this._zoomService.zoom / 100;\n\n this.lastScale = this.scale;\n this.viewportHeight = this.container.offsetHeight;\n this.curWidth = this.docWidth * this.scale;\n this.curHeight = this.docHeight * this.scale;\n\n const hammer = new Hammer(this.container);\n }\n\n // TODO: this temporary crutch for Excel files should be documented\n ifExcel() {\n return FileUtil.find(this.file.guid, false).format === \"Microsoft Excel\";\n }\n\n ifPresentation() {\n return FileUtil.find(this.file.guid, false).format === \"Microsoft PowerPoint\";\n }\n\n getDimensionWithUnit(value: number, pageNumber: number) {\n return this.ifPresentation() && !this.isVisible(pageNumber) ? 0 : value + (this.mode ? FileUtil.find(this.file.guid, false).unit : 'px');\n }\n\n ifEdge() {\n return navigator.userAgent.toLowerCase().indexOf('edge') > -1;\n }\n\n ngAfterViewChecked(): void {\n const elementNodeListOf = this._elementRef.nativeElement.querySelectorAll('.gd-wrapper');\n const element = elementNodeListOf.item(0);\n if (element) {\n $(element).trigger('focus');\n }\n }\n\n isVisible(pageNumber) {\n if (this.ifPresentation()) {\n return pageNumber === this.selectedPage ? true : false;\n }\n else {\n return true;\n }\n }\n}\n","import {Component, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\n\n@Component({\n selector: 'gd-page',\n templateUrl: './page.component.html',\n styleUrls: ['./page.component.less']\n})\nexport class PageComponent implements OnInit, OnChanges {\n\n @Input() angle: number;\n @Input() width: number;\n @Input() height: number;\n @Input() number: number;\n @Input() data: string;\n @Input() isHtml: boolean;\n @Input() editable: boolean;\n imgData: string;\n\n constructor() {\n }\n\n ngOnInit() {\n const isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\n if(isIE && this.number === 0){\n this.editable = false;\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n // TODO: this is temporary needed to remove unneeded spaces and BOM symbol \n // which leads to undesired spaces on the top of the docs pages\n this.data = this.data !== null ? this.data.replace(/>\\s+<')\n .replace(/\\uFEFF/g,\"\")\n .replace(/href=\"\\/viewer/g, 'href=\"http://localhost:8080/viewer')\n .replace(/src=\"\\/viewer/g, 'src=\"http://localhost:8080/viewer')\n .replace(/data=\"\\/viewer/g, 'data=\"http://localhost:8080/viewer')\n : null;\n const dataImagePngBase64 = 'data:image/png;base64,';\n this.imgData = dataImagePngBase64;\n if (!this.isHtml) {\n this.imgData += this.data;\n }\n }\n}\n","import {Pipe, PipeTransform} from '@angular/core';\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\n\n@Pipe({name: 'safeHtml'})\nexport class SanitizeHtmlPipe implements PipeTransform{\n constructor(private sanitizer: DomSanitizer) {\n }\n\n transform(html: string): SafeHtml {\n return this.sanitizer.bypassSecurityTrustHtml(html);\n }\n}\n\n@Pipe({name: 'safeResourceHtml'})\nexport class SanitizeResourceHtmlPipe implements PipeTransform{\n constructor(private sanitizer: DomSanitizer) {\n }\n\n transform(html: string): SafeHtml {\n return this.sanitizer.bypassSecurityTrustResourceUrl(html);\n }\n}\n\n@Pipe({name: 'safeStyle'})\nexport class SanitizeStylePipe implements PipeTransform{\n constructor(private sanitizer: DomSanitizer) {\n }\n\n transform(html: string): SafeHtml {\n return this.sanitizer.bypassSecurityTrustStyle(html);\n }\n}\n\n@Pipe({name: 'highlight'})\nexport class HighlightSearchPipe implements PipeTransform {\n\n transform(value: string, args: string): any {\n if (!args) {\n return value;\n }\n const re = new RegExp(args, 'gi'); //'gi' for case insensitive and can use 'g' if you want the search to be case sensitive.\n return value.replace(re, \"$&\");\n }\n}\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\nimport {UploadFilesService} from \"../upload-files.service\";\n\n@Component({\n selector: 'gd-upload-file-zone',\n templateUrl: './upload-file-zone.component.html',\n styleUrls: ['./upload-file-zone.component.less']\n})\nexport class UploadFileZoneComponent implements OnInit {\n\n @Output() closeUpload = new EventEmitter();\n\n constructor(private _uploadService: UploadFilesService) { }\n\n ngOnInit() {\n }\n\n handleFileInput(files: FileList) {\n this._uploadService.changeFilesList(files);\n this.onCloseUpload();\n }\n\n onCloseUpload() {\n this.closeUpload.emit(true);\n }\n\n close($event) {\n if ($event.target.id === 'gd-dropZone') {\n this.onCloseUpload();\n }\n }\n}\n","import {Directive, EventEmitter, HostBinding, HostListener, Input, Output} from '@angular/core';\nimport {UploadFilesService} from \"./upload-files.service\";\n\n@Directive({\n selector: '[gdDnd]'\n})\nexport class DndDirective {\n\n @Output() closing = new EventEmitter();\n @Output() opening = new EventEmitter();\n @Output() dropped = new EventEmitter();\n\n @HostBinding('class.active') active = false;\n\n private dragCounter = 0;\n\n constructor(protected _uploadFilesService: UploadFilesService) {\n }\n\n @HostListener('dragenter', ['$event'])\n public onDragEnter(evt) {\n evt.preventDefault();\n evt.stopPropagation();\n this.dragCounter++;\n this.active = true;\n this.opening.emit(true);\n }\n\n @HostListener('dragover', ['$event'])\n public onDragOver(evt) {\n evt.preventDefault();\n evt.stopPropagation();\n return false;\n }\n\n @HostListener('dragleave', ['$event'])\n public onDragLeave(evt) {\n evt.preventDefault();\n evt.stopPropagation();\n this.dragCounter--;\n if (this.dragCounter === 0) {\n this.active = false;\n this.closeArea();\n }\n }\n\n @HostListener('drop', ['$event'])\n public onDrop(evt) {\n evt.preventDefault();\n evt.stopPropagation();\n const files = evt.dataTransfer.files;\n if (files.length > 0) {\n this.active = false;\n this.dropped.emit(true);\n this._uploadFilesService.changeFilesList(files);\n this.closeArea();\n }\n }\n\n @HostListener('click', ['$event'])\n public onClick(event) {\n this.closeArea();\n }\n\n private closeArea() {\n this.closing.emit(true);\n this.opening.emit(false);\n }\n}\n","import {Injectable} from '@angular/core';\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ViewportService {\n\n constructor() {\n }\n\n checkInViewport(el, zoom: number = 100, leftOffset: number = 0, deltaX: number = 0.5) {\n if (!el) {\n return false;\n }\n const x = deltaX;\n const y = 0.5;\n\n const win = $(window);\n\n const viewport = {\n top: win.scrollTop(),\n left: win.scrollLeft() + leftOffset,\n right: win.scrollLeft() + win.width() - 10,\n bottom: win.scrollTop() + win.height()\n };\n\n\n if (isNaN(zoom)) {\n zoom = 100;\n }\n\n const zoomN = zoom / 100;\n const height = $(el).outerHeight() * (zoomN);\n const width = $(el).outerWidth() * (zoomN);\n\n if (!width || !height) {\n return false;\n }\n\n const bounds = $(el).offset();\n const right = (bounds.left * (zoomN)) + width;\n const bottom = (bounds.top * (zoomN)) + height;\n\n const visible = (!(viewport.right < (bounds.left * (zoomN)) || viewport.left > right || viewport.bottom < (bounds.top * (zoomN)) || viewport.top > bottom));\n\n if (!visible) {\n return false;\n }\n\n const deltas = {\n top: parseFloat(Math.min(1, (bottom - viewport.top) / height).toFixed(2)),\n bottom: parseFloat(Math.min(1, (viewport.bottom - (bounds.top * (zoomN))) / height).toFixed(2)),\n left: parseFloat(Math.min(1, (right - viewport.left) / width).toFixed(2)),\n right: parseFloat(Math.min(1, (viewport.right - (bounds.left * (zoomN))) / width).toFixed(2))\n };\n\n return (deltas.left * deltas.right) >= x && (deltas.top * deltas.bottom) >= y;\n }\n}\n","import {\n AfterViewInit,\n Directive,\n ElementRef,\n HostListener,\n Input,\n OnChanges,\n OnInit,\n SimpleChanges\n} from '@angular/core';\nimport {NavigateService} from \"./navigate.service\";\nimport {PagePreloadService} from \"./page-preload.service\";\nimport {ZoomService} from \"./zoom.service\";\nimport {WindowService} from \"./window.service\";\nimport {ViewportService} from \"./viewport.service\";\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\n@Directive({\n selector: '[gdScrollable]'\n})\nexport class ScrollableDirective implements AfterViewInit, OnChanges, OnInit {\n\n private currentPage: number;\n private zoom = 100;\n private loadedPagesSet = new Set();\n\n constructor(private _elementRef: ElementRef,\n private _navigateService: NavigateService,\n private _pagePreloadService: PagePreloadService,\n private _zoomService: ZoomService,\n private _windowService: WindowService,\n private _viewportService: ViewportService) {\n\n this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom;\n _zoomService.zoomChange.subscribe((val: number) => {\n this.zoom = val ? val : this.zoom;\n this.refresh();\n });\n }\n\n ngAfterViewInit() {\n this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom;\n this._navigateService.navigate.subscribe((value => {\n this.currentPage = value;\n this.scrollToPage(value);\n }));\n this.refresh();\n }\n\n @HostListener('scroll') scrolling() {\n this.refresh();\n }\n\n @HostListener('window:resize') resizing() {\n this.refresh();\n }\n\n scrollToPage(pageNumber: number) {\n const el = this._elementRef.nativeElement;\n const page = this.getPage(pageNumber);\n const prev = pageNumber > 0 ? this.getPage(pageNumber - 1) : null;\n const isSameTop = (prev && $(prev).offset().top === $(page).offset().top);\n if (this._viewportService.checkInViewport(page, this.zoom) && isSameTop) {\n return;\n }\n const pagesHeight = this.calculateOffset(pageNumber);\n const options = {\n left: 0,\n top: pagesHeight\n };\n if(el){\n // using polyfill\n el.scroll(options);\n }\n }\n\n private getChildren() {\n const el = this._elementRef ? this._elementRef.nativeElement : null;\n if (el) {\n // here and in the similar line below we getting the document pages\n return el.children.item(0).children.item(0).children;\n }\n }\n\n private getPage(pageNumber: number) {\n const el = this._elementRef ? this._elementRef.nativeElement : null;\n if (el) {\n return el.children.item(0).children.item(0).children.item(pageNumber - 1);\n }\n }\n\n private calculateOffset(pageNumber: number) {\n const count = this._windowService.isFirefox() ? 1 : this.countPagesOnWidth();\n const margin = this._windowService.isDesktop() ? 40 : 10;\n let pagesHeight = 0;\n for (let i = 1; i < pageNumber / count; i++) {\n const item = this.getPage(i);\n const clientHeight = item ? item.clientHeight : 0;\n pagesHeight += clientHeight > 0 ? clientHeight * this.getZoom() + margin : 0;\n }\n return pagesHeight;\n }\n\n private countPagesOnWidth() {\n const pageEl = this.getPage(1);\n const offset = 150;\n const count = Math.floor((this.getWidth() - offset) / (pageEl.getBoundingClientRect().width * this.getZoom()));\n return count === 0 ? 1 : count;\n }\n\n refresh() {\n let page;\n let currentPageSet = false;\n const pageElem = this.getPage(this.currentPage);\n const currentPageRect = this.currentPage && pageElem ? pageElem.getBoundingClientRect() : null;\n for (page = 1; page < this.getChildren().length + 1; page++) {\n const element = this.getPage(page);\n if (this._viewportService.checkInViewport(element, this.zoom)) {\n if (!currentPageSet) {\n if (!this.currentPage || !pageElem || (this.currentPage && currentPageRect && element.getBoundingClientRect().top !== currentPageRect.top)) {\n this.currentPage = page;\n if (this._navigateService.currentPage === 0) {\n this._navigateService.currentPage = page;\n }\n }\n currentPageSet = true;\n }\n if (!this.loadedPagesSet.has(page)) {\n this._pagePreloadService.changeLastPageInView(page);\n this.loadedPagesSet.add(page);\n }\n }\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.refresh();\n }\n\n ngOnInit(): void {\n this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom;\n }\n\n\n private getWidth() {\n return this._elementRef ? this._elementRef.nativeElement.offsetWidth : window.innerWidth;\n }\n\n private getZoom() {\n return this.zoom / 100;\n }\n}\n","import {\n Directive,\n EventEmitter,\n HostListener,\n Output} from '@angular/core';\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\n@Directive({\n selector: '[gdMouseWheel]'\n})\nexport class MouseWheelDirective {\n @Output() mouseWheelUp = new EventEmitter();\n @Output() mouseWheelDown = new EventEmitter();\n\n @HostListener('mousewheel', ['$event']) onMouseWheelChrome(event: any) {\n this.mouseWheelFunc(event);\n }\n\n @HostListener('DOMMouseScroll', ['$event']) onMouseWheelFirefox(event: any) {\n this.mouseWheelFunc(event);\n }\n\n @HostListener('onmousewheel', ['$event']) onMouseWheelIE(event: any) {\n this.mouseWheelFunc(event);\n }\n\n mouseWheelFunc(event: any) {\n event = window.event ;\n const delta = Math.max(-1, Math.min(1, (event.wheelDelta || -event.detail)));\n if(delta > 0) {\n this.mouseWheelUp.emit(event);\n } else if(delta < 0) {\n this.mouseWheelDown.emit(event);\n }\n }\n}\n","import {AfterViewInit, Directive, HostBinding, Input, OnDestroy, OnInit, ElementRef, OnChanges} from '@angular/core';\nimport {ZoomService} from \"./zoom.service\";\nimport {FileUtil} from \"./file.service\";\nimport { WindowService } from './window.service';\n\n@Directive({\n selector: '[gdZoom]'\n})\nexport class ZoomDirective implements OnInit, OnDestroy, AfterViewInit, OnChanges {\n\n @Input() zoomActive = true;\n @Input() file;\n\n @HostBinding('style.zoom') zoomInt: number;\n @HostBinding('style.transform') transform: string;\n @HostBinding('style.transform-origin') transformOrigin: string;\n @HostBinding('style.width') width: string;\n @HostBinding('style.height') height: string;\n @HostBinding('style.min-width') minWidth: string;\n el: ElementRef;\n\n constructor(private _zoomService: ZoomService, private _windowService: WindowService, el: ElementRef) {\n this.el = el;\n }\n\n ngOnDestroy(): void {\n }\n\n ngOnChanges(): void {\n this.setStyles(this._zoomService.zoom);\n this.resizePages(this._zoomService.zoom);\n }\n\n ngOnInit(): void {\n if (! this.zoomActive) {\n return;\n }\n\n this.setStyles(this._zoomService.zoom);\n this._zoomService.zoomChange.subscribe((zoom) => {\n this.setStyles(zoom);\n this.resizePages(zoom);\n });\n }\n\n private setStyles(zoom) {\n if (! this.zoomActive) {\n return;\n }\n\n const zoomInt = zoom === 100 ? 1 : zoom / 100;\n \n if (this._windowService.isEdge()) {\n this.zoomInt = zoomInt;\n }\n else {\n this.zoomInt = null;\n }\n \n if (!this._windowService.isEdge()) {\n this.transform = 'scale(' + zoomInt + ')';\n this.transformOrigin = 'top left';\n }\n else {\n this.transform = \"\";\n this.transformOrigin = \"\";\n }\n\n let maxWidth = 0;\n this.file.pages.forEach(page => {\n {\n if (page.width > maxWidth){\n maxWidth = page.width;\n }\n }\n });\n\n // Images and Excel-related files receiving dimensions in px from server\n this.minWidth = maxWidth + FileUtil.find(this.file.guid, false).unit;\n }\n\n private getScrollWidth(elm){\n return elm.offsetWidth - elm.clientWidth;\n }\n\n private getScrollHeight(elm){\n return elm.offsetHeight - elm.clientHeight;\n }\n\n private resizePages(zoom){\n const zoomInt = zoom === 100 ? 1 : zoom / 100;\n\n const viewPortWidth = this.el.nativeElement.parentElement.offsetWidth;\n const viewPortHeight = this.el.nativeElement.parentElement.offsetHeight;\n const scrollWidth = this.getScrollWidth(this.el.nativeElement.parentElement);\n const scrollHeight = this.getScrollHeight(this.el.nativeElement.parentElement);\n this.width = (viewPortWidth/zoomInt - scrollWidth/zoomInt) + 'px';\n this.height = (viewPortHeight/zoomInt - scrollHeight/zoomInt) + 'px';\n }\n\n ngAfterViewInit(): void {\n this.setStyles(this._zoomService.zoom);\n }\n}\n","import {Injectable} from '@angular/core';\nimport {Observable, Subject} from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class OnCloseService {\n private _observer: Subject = new Subject();\n private readonly _onClose: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get onClose() {\n return this._onClose;\n }\n\n close(close: boolean) {\n this._observer.next(close)\n }\n}\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\nimport {OnCloseService} from \"../on-close.service\";\n\nexport interface Option {\n name: string;\n value: any;\n separator: boolean;\n}\n\n@Component({\n selector: 'gd-select',\n templateUrl: './select.component.html',\n styleUrls: ['./select.component.less']\n})\nexport class SelectComponent {\n\n @Input() options: Option[];\n @Input() disabled = false;\n @Input() showSelected: Option;\n @Output() selected: EventEmitter = new EventEmitter();\n @Input() isOpen = false;\n @Input() icon: string;\n\n constructor(protected _onCloseService: OnCloseService) {\n _onCloseService.onClose.subscribe(() => {\n this.close();\n });\n }\n\n open() {\n if (!this.disabled) {\n this.isOpen = true;\n }\n }\n\n close() {\n this.isOpen = false;\n }\n\n onClickOutside(event : Event){\n this.close();\n }\n\n toggle($event) {\n // TODO: following lines were uncommented due to needness in signature app\n $event.preventDefault();\n $event.stopPropagation();\n if (!this.disabled) {\n this.isOpen = !this.isOpen;\n }\n }\n\n select($event, value: Option) {\n $event.preventDefault();\n $event.stopPropagation();\n this.selected.emit(value);\n this.close();\n }\n}\n","import {Directive, HostBinding, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\n\n@Directive({\n selector: '[gdDisabledCursor]'\n})\nexport class DisabledCursorDirective implements OnInit, OnChanges {\n\n @Input() dis: boolean;\n\n constructor() {\n }\n\n @HostBinding('class.inactive') cursor: boolean;\n\n private updateCursor() {\n this.cursor = this.dis ? true : false;\n }\n\n ngOnInit(): void {\n this.updateCursor();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.updateCursor()\n }\n}\n","import {Directive, HostBinding, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\n\n@Directive({\n selector: '[gdRotation]'\n})\nexport class RotationDirective implements OnInit, OnChanges {\n\n @Input() angle: number;\n @Input() isHtmlMode: boolean;\n @Input() width: number;\n @Input() height: number;\n @Input() withMargin = true;\n\n @HostBinding('style.animation') animation: string;\n @HostBinding('style.transition-property') transition: string;\n @HostBinding('style.transform') transform: string;\n\n @HostBinding('style.margin') margin: string;\n\n constructor() {\n }\n\n private updateCursor() {\n if (typeof this.angle === \"string\"){\n this.angle = parseInt(this.angle, 10);\n }\n\n if (this.angle) {\n this.animation = 'none';\n this.transition = 'none';\n this.transform = 'rotate(' + this.angle + 'deg)';\n } else if (this.angle === 0 && this.animation) {\n this.animation = null;\n this.transition = null;\n this.transform = null;\n }\n\n if (this.withMargin) {\n if (this.angle === 90 || this.angle === 270 || this.angle === -90 || this.angle === -270) {\n if (this.isHtmlMode) {\n if (this.isLandscape()) {\n this.margin = '164px 254px';\n } else {\n this.margin = '-111px 254px';\n }\n } else {\n if (this.isLandscape()) {\n this.margin = '129px 100px -79px';\n } else {\n this.margin = '-72px 100px -79px';\n }\n }\n } else if (this.angle === -180 || this.angle === 180) {\n this.margin = '280px';\n } else {\n this.margin = null;\n }\n }\n\n }\n\n isLandscape() {\n return this.width > this.height;\n }\n\n ngOnInit(): void {\n this.updateCursor();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.updateCursor()\n }\n\n}\n","import {Component, Input, Output, EventEmitter, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-init-state',\n templateUrl: './init-state.component.html',\n styleUrls: ['./init-state.component.less']\n})\nexport class InitStateComponent implements OnInit {\n @Input() icon: string;\n @Input() text: string;\n @Output() fileDropped = new EventEmitter();\n showUploadFile = false;\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n dropped($event) {\n if ($event) {\n this.fileDropped.emit($event);\n this.showUploadFile = false;\n }\n }\n}\n","import {Observable, Observer} from \"rxjs\";\nimport {PageModel} from \"./file.service\";\n\nexport class RenderPrintService {\n private _render: Observable;\n private _observer: Observer;\n private _renderBlob: Observable;\n private _observerBlob: Observer;\n\n constructor() {\n this._render = new Observable(observer =>\n this._observer = observer);\n this._renderBlob = new Observable(observer =>\n this._observerBlob = observer);\n }\n\n get renderPrint(): Observable {\n return this._render;\n }\n\n changePages(pages: PageModel[]) {\n this._observer.next(pages);\n }\n\n get renderPrintBlob(): Observable {\n return this._renderBlob;\n }\n\n changeBlob(file: Blob) {\n this._observerBlob.next(file);\n }\n}\n","import {Directive, Input} from '@angular/core';\nimport {PageModel} from \"./file.service\";\nimport {RenderPrintService} from \"./render-print.service\";\n\n@Directive({\n selector: '[gdRenderPrint]'\n})\nexport class RenderPrintDirective {\n @Input() htmlMode: boolean;\n\n constructor(private _renderService: RenderPrintService) {\n _renderService.renderPrint.subscribe(pages => {\n this.renderPrint(pages);\n });\n _renderService.renderPrintBlob.subscribe(file => {\n this.renderPrintBlob(file);\n });\n }\n\n private renderPrint(pages: PageModel[]) {\n let pagesHtml = '';\n\n for (const page of pages) {\n pagesHtml += '
' +\n '
' +\n '
';\n }\n\n this.openWindow(pagesHtml, pages[0].width, pages[0].height);\n }\n\n private openWindow(pagesHtml, width, height) {\n const a4Height = 842;\n const a4Width = 595;\n let imageA4Adjusted = '';\n if(width > a4Width && height > a4Height){\n const zoom = Math.round(height / a4Height) / 100;\n imageA4Adjusted = '.gd-page img { width: 100%; margin: 0; padding: 0;}';\n if(navigator.userAgent.toLowerCase().indexOf('firefox') > -1){\n imageA4Adjusted = '.gd-page img { transform: scale(' + zoom + ');}';\n }\n }\n let cssPrint = '';\n\n const windowObject = window.open('', \"PrintWindow\", \"width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes\");\n windowObject.focus();\n windowObject.document.writeln(cssPrint);\n windowObject.document.writeln(pagesHtml);\n windowObject.document.close();\n setTimeout(() => {\n windowObject.focus();\n windowObject.print();\n windowObject.close();\n }, 100);\n }\n\n private renderPrintBlob(file: Blob) {\n const fileURL = URL.createObjectURL(file);\n const windowObject = window.open(fileURL, \"PrintWindow\", \"width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes\");\n windowObject.focus();\n windowObject.print();\n windowObject.close();\n }\n}\n","import {BehaviorSubject, Observable} from \"rxjs\";\n\nexport class ExceptionMessageService {\n private _observer: BehaviorSubject = new BehaviorSubject('Server is not available');\n private _messageChange: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get messageChange(): Observable {\n return this._messageChange;\n }\n\n changeMessage(message: string) {\n this._observer.next(message);\n }\n}\n","import {Component, OnInit} from '@angular/core';\nimport {ExceptionMessageService} from \"../exception-message.service\";\n\n@Component({\n selector: 'gd-error-modal',\n templateUrl: './error-modal.component.html',\n styleUrls: ['./error-modal.component.less']\n})\nexport class ErrorModalComponent implements OnInit {\n\n message: string;\n\n constructor(messageService: ExceptionMessageService) {\n messageService.messageChange.subscribe(message => this.message = message);\n }\n\n ngOnInit() {\n }\n\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class PasswordService {\n private _observer: Subject = new Subject();\n private readonly _passChange: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get passChange(): Observable {\n return this._passChange;\n }\n\n setPassword(pass: string) {\n this._observer.next(pass);\n }\n}\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\nimport {ExceptionMessageService} from \"../exception-message.service\";\nimport {PasswordService} from \"../password.service\";\nimport * as jquery from \"jquery\";\n\nconst $ = jquery;\n\n@Component({\n selector: 'gd-password-required',\n templateUrl: './password-required.component.html',\n styleUrls: ['./password-required.component.less']\n})\nexport class PasswordRequiredComponent implements OnInit {\n message: string;\n @Output() cancelEvent = new EventEmitter();\n\n constructor(messageService: ExceptionMessageService, private _passwordService: PasswordService) {\n messageService.messageChange.subscribe(message => this.message = message);\n }\n\n ngOnInit() {\n }\n\n setPassword(value: string) {\n this._passwordService.setPassword(value);\n }\n\n onCloseOpen($event: boolean) {\n if ($event) {\n setTimeout(() => {\n const element = $(\"#password\");\n if (element) {\n element.focus();\n }\n }, 100);\n } else {\n $(\"#password\").val(\"\");\n }\n }\n\n cancel($event: boolean) {\n $(\"#password\").val(\"\");\n this.cancelEvent.emit(true);\n }\n}\n","import {Injectable} from '@angular/core';\nimport {HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from \"@angular/common/http\";\nimport {Observable, throwError} from \"rxjs\";\nimport {catchError, map} from \"rxjs/operators\";\nimport {ExceptionMessageService} from \"./exception-message.service\";\nimport {HttpError} from \"./file.service\";\nimport {CommonModals, ModalService} from \"./modal.service\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ErrorInterceptorService implements HttpInterceptor {\n\n constructor(private _modalService: ModalService, private _messageService: ExceptionMessageService) {\n }\n\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\n const logFormat = 'background: maroon; color: white';\n\n return next.handle(req)\n .pipe(map(data => {\n return data;\n }),\n catchError((exception: HttpEvent) => {\n if (exception instanceof HttpErrorResponse) {\n switch (exception.status) {\n\n case HttpError.BadRequest:\n console.error('%c Bad Request 400', logFormat);\n break;\n case HttpError.Unauthorized:\n console.error('%c Unauthorized 401', logFormat);\n break;\n case HttpError.NotFound:\n console.error('%c Not Found 404', logFormat);\n break;\n case HttpError.TimeOut:\n console.error('%c TimeOut 408', logFormat);\n break;\n case HttpError.InternalServerError:\n console.error('%c big bad 500', logFormat);\n this._messageService.changeMessage(exception.error.message);\n this._modalService.open(CommonModals.ErrorMessage);\n break;\n\n case HttpError.Forbidden:\n console.error('%c Forbidden 403', logFormat);\n this._messageService.changeMessage(exception.error.message);\n this._modalService.open(CommonModals.PasswordRequired);\n break;\n }\n }\n return throwError(exception);\n }));\n }\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class SearchService {\n private _observer: Subject = new Subject();\n private readonly _textChange: Observable = this._observer.asObservable();\n\n private _observerCurrent: Subject = new Subject();\n private readonly _currentChange: Observable = this._observerCurrent.asObservable();\n\n private _observerTotal: Subject = new Subject();\n private readonly _totalChange: Observable = this._observerTotal.asObservable();\n\n constructor() {\n }\n\n get textChange(): Observable {\n return this._textChange;\n }\n\n setText(text: string) {\n this._observer.next(text);\n }\n\n get currentChange(): Observable {\n return this._currentChange;\n }\n\n get totalChange(): Observable {\n return this._totalChange;\n }\n\n setCurrent(current: number) {\n this._observerCurrent.next(current);\n }\n\n setTotal(total: number) {\n this._observerTotal.next(total);\n }\n}\n","import {AfterViewInit, Component, ElementRef, EventEmitter, OnInit, Output, ViewChild} from '@angular/core';\nimport {SearchService} from \"../search.service\";\n\n@Component({\n selector: 'gd-search',\n templateUrl: './search.component.html',\n styleUrls: ['./search.component.less']\n})\nexport class SearchComponent implements OnInit, AfterViewInit {\n\n @Output() hidePanel = new EventEmitter(false);\n\n current = 0;\n total = 0;\n\n @ViewChild('text',{\n static : true\n }) textElement: ElementRef;\n\n constructor(private _searchService: SearchService) {\n _searchService.totalChange.subscribe((total: number) => {\n this.total = total;\n if (total !== 0) {\n this.current = 1;\n } else {\n this.current = 0;\n }\n this._searchService.setCurrent(this.current);\n });\n }\n\n ngOnInit() {\n }\n\n setText(text: string) {\n this._searchService.setText(text);\n }\n\n hide() {\n this.setText('');\n this.hidePanel.emit(true);\n }\n\n prev() {\n if (this.current > 1) {\n this.current--;\n this._searchService.setCurrent(this.current);\n }\n }\n\n next() {\n if (this.current < this.total) {\n this.current++;\n this._searchService.setCurrent(this.current);\n }\n }\n\n ngAfterViewInit(): void {\n this.textElement.nativeElement.focus();\n }\n}\n","import {Directive, ElementRef} from '@angular/core';\nimport {SearchService} from \"./search.service\";\nimport {HighlightSearchPipe} from \"./pipes\";\nimport {ZoomService} from \"./zoom.service\";\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\n@Directive({\n selector: '[gdSearchable]'\n})\nexport class SearchableDirective {\n\n text: string;\n current = 0;\n total = 0;\n private zoom = 100;\n\n constructor(private _elementRef: ElementRef,\n private _searchService: SearchService,\n private _highlight: HighlightSearchPipe,\n private _zoomService: ZoomService) {\n _searchService.currentChange.subscribe((current: number) => {\n this.current = current;\n if (this.current !== 0) {\n this.moveToCurrent();\n }\n });\n\n _searchService.textChange.subscribe((text: string) => {\n this.text = text;\n this.highlightSearch();\n });\n\n this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom;\n _zoomService.zoomChange.subscribe((val: number) => {\n this.zoom = val ? val : this.zoom;\n });\n }\n\n private highlightSearch() {\n const el = this._elementRef ? this._elementRef.nativeElement : null;\n if (el) {\n this.cleanHighlight(el);\n if (this.text) {\n this.highlightEl(el);\n const count = el.querySelectorAll('.gd-highlight').length;\n this.total = count;\n } else {\n this.total = 0;\n }\n this._searchService.setTotal(this.total);\n }\n }\n\n private moveToCurrent() {\n if (this.current === 0) {\n return;\n }\n const currentZoom = this.getZoom();\n const el = this._elementRef ? this._elementRef.nativeElement : null;\n if (el) {\n el.querySelectorAll('.gd-highlight-select').forEach(function (value) {\n $(value).removeClass('gd-highlight-select');\n });\n const currentEl = el.querySelectorAll('.gd-highlight')[this.current - 1];\n $(currentEl).addClass('gd-highlight-select');\n if (currentEl) {\n const options = {\n left: 0,\n top: ($(currentEl).offset().top) + el.parentElement.parentElement.scrollTop - 150,\n };\n // using polyfill\n el.parentElement.parentElement.scroll(options);\n }\n }\n }\n\n private highlightEl(el: Element) {\n const textNodes = $(el).find('*').contents().filter(function () {\n const nodeName = this.parentElement.nodeName.toLowerCase();\n const checkClass = (this).classList ? !(this).classList.contains('gd-highlight') : true;\n return this.nodeType === 3 &&\n this.textContent.trim().length !== 0 &&\n nodeName !== 'style' &&\n nodeName !== 'title' &&\n nodeName !== 'body' &&\n nodeName !== 'script' &&\n checkClass;\n });\n const text = this.text;\n const highlight = this._highlight;\n textNodes.each(function () {\n const $this = $(this);\n let content = $this.text();\n content = highlight.transform(content, text);\n $this.replaceWith(content);\n });\n el.normalize();\n }\n\n private cleanHighlight(el: HTMLElement) {\n const nodeListOf = el.querySelectorAll('.gd-highlight');\n for (let i = 0; i < nodeListOf.length; i++) {\n const element = nodeListOf.item(i);\n element.replaceWith((element).innerText);\n }\n el.normalize();\n }\n\n private getZoom() {\n return this.zoom / 100;\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-tabbed-toolbars',\n templateUrl: './tabbed-toolbars.component.html',\n styleUrls: ['./tabbed-toolbars.component.less']\n})\nexport class TabbedToolbarsComponent implements OnInit {\n @Input() logo: string;\n @Input() icon: string;\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class TabActivatorService {\n private _observer: Subject = new Subject();\n private readonly _activeTabChange: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get activeTabChange(): Observable {\n return this._activeTabChange;\n }\n\n changeActiveTab(tabId: string) {\n this._observer.next(tabId);\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\nimport {TabActivatorService} from \"../tab-activator.service\";\n\n@Component({\n selector: 'gd-tab',\n templateUrl: './tab.component.html',\n styleUrls: ['./tab.component.less']\n})\nexport class TabComponent implements OnInit {\n @Input() id: string;\n @Input() tabTitle: string;\n @Input() icon: string;\n @Input() disabled = false;\n @Input() active = false;\n @Input() content = true;\n\n constructor(private _tabActivatorService: TabActivatorService) {\n this._tabActivatorService.activeTabChange.subscribe((tabId: string) => {\n this.activation(tabId);\n });\n }\n\n private activation(tabId: string) {\n if (this.id === tabId) {\n this.active = true;\n } else {\n this.active = false;\n }\n }\n\n ngOnInit() {\n }\n\n selectTab() {\n if (this.disabled) {\n return;\n }\n this._tabActivatorService.changeActiveTab(this.id);\n }\n}\n","import {Component} from '@angular/core';\n\n@Component({\n selector: 'gd-tabs',\n templateUrl: './tabs.component.html',\n styleUrls: ['./tabs.component.less']\n})\nexport class TabsComponent {\n constructor() {\n }\n\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class Formatting {\n constructor(fontSize: number, color: string, bgColor: string, bold: boolean, italic: boolean, underline: boolean, font: string, strikeout: boolean, align: string, list: string) {\n this.fontSize = fontSize;\n this.color = color;\n this.bgColor = bgColor;\n this.bold = bold;\n this.italic = italic;\n this.underline = underline;\n this.font = font;\n this.strikeout = strikeout;\n this.align = align;\n this.list = list;\n }\n\n bold: boolean;\n italic: boolean;\n underline: boolean;\n fontSize: number;\n color: string;\n bgColor: string;\n font: string;\n strikeout: boolean;\n align: string;\n list: string;\n\n public static default(): Formatting {\n return new Formatting(10, '#000000', '#FFFFFF', false, false, false, 'Arial', false, \"\", \"\");\n }\n}\n\nexport class FormattingService {\n private _observerBold: Subject = new Subject();\n private readonly _formatBoldChange: Observable = this._observerBold.asObservable();\n private _observerUnderline: Subject = new Subject();\n private readonly _formatUnderlineChange: Observable = this._observerUnderline.asObservable();\n private _observerUndo: Subject = new Subject();\n private readonly _undo: Observable = this._observerUndo.asObservable();\n private _observerRedo: Subject = new Subject();\n private readonly _redo: Observable = this._observerRedo.asObservable();\n private _observerItalic: Subject = new Subject();\n private readonly _formatItalicChange: Observable = this._observerItalic.asObservable();\n private _observerColor: Subject = new Subject();\n private readonly _formatColorChange: Observable = this._observerColor.asObservable();\n private _observerBgColor: Subject = new Subject();\n private readonly _formatBgColorChange: Observable = this._observerBgColor.asObservable();\n private _observerFontSize: Subject = new Subject();\n private readonly _formatFontSizeChange: Observable = this._observerFontSize.asObservable();\n private _observerFont: Subject = new Subject();\n private readonly _formatFontChange: Observable = this._observerFont.asObservable();\n private _observerStrikeout: Subject = new Subject();\n private readonly _formatStrikeoutChange: Observable = this._observerStrikeout.asObservable();\n private _observerAlign: Subject = new Subject();\n private readonly _formatAlignChange: Observable = this._observerAlign.asObservable();\n private _observerList: Subject = new Subject();\n private readonly _formatListChange: Observable = this._observerList.asObservable();\n\n constructor() {\n }\n\n get formatBoldChange() {\n return this._formatBoldChange;\n }\n\n get formatUnderlineChange() {\n return this._formatUnderlineChange;\n }\n\n get formatColorChange() {\n return this._formatColorChange;\n }\n\n get formatBgColorChange() {\n return this._formatBgColorChange;\n }\n\n get formatFontSizeChange() {\n return this._formatFontSizeChange;\n }\n\n get formatFontChange() {\n return this._formatFontChange;\n }\n\n get undo() {\n return this._undo;\n }\n\n get redo() {\n return this._redo;\n }\n\n get formatItalicChange() {\n return this._formatItalicChange;\n }\n\n get formatStrikeoutChange() {\n return this._formatStrikeoutChange;\n }\n\n get formatAlignChange() {\n return this._formatAlignChange;\n }\n\n get formatListChange() {\n return this._formatListChange;\n }\n\n static createFontSizeOption(val: number) {\n return {value: val, name: val + 'px', separator: false}\n }\n\n static getFontSizeOptions() {\n return [\n FormattingService.createFontSizeOption(8),\n FormattingService.createFontSizeOption(10),\n FormattingService.createFontSizeOption(12),\n FormattingService.createFontSizeOption(14),\n FormattingService.createFontSizeOption(16),\n FormattingService.createFontSizeOption(18),\n FormattingService.createFontSizeOption(20),\n FormattingService.createFontSizeOption(22),\n FormattingService.createFontSizeOption(24),\n ];\n }\n\n static createFontOption(val: string) {\n return {value: val, name: val, separator: false}\n }\n\n static getFontOptions() {\n const fonts = [\"Arial\", \"Calibri\", \"Century Gothic\", \"Comic Sans\", \"Consolas\", \"Courier\", \"Dejavu Sans\", \"Dejavu Serif\", \"Georgia\", \"Gill Sans\", \"Helvetica\", \"Impact\", \"Lucida Sans\",\n \"Myriad Pro\", \"Open Sans\", \"Palatino\", \"Tahoma\", \"Times New Roman\", \"Trebuchet\"];\n const fontOptions = [];\n fonts.forEach(font => {\n fontOptions.push(this.createFontOption(font));\n })\n\n return fontOptions;\n }\n\n changeFormatFontSize($event: number) {\n this._observerFontSize.next($event);\n }\n\n changeFormatBold(bold: boolean) {\n this._observerBold.next(bold);\n }\n\n changeFormatUnderline(underline: boolean) {\n this._observerUnderline.next(underline);\n }\n\n Undo() {\n this._observerUndo.next();\n }\n\n Redo() {\n this._observerRedo.next();\n }\n\n changeFormatItalic(italic: boolean) {\n this._observerItalic.next(italic);\n }\n\n changeFormatColor(color: string) {\n this._observerColor.next(color);\n }\n\n changeFormatBgColor(bgcolor: string) {\n this._observerBgColor.next(bgcolor);\n }\n\n changeFormatFont(font: string) {\n this._observerFont.next(font);\n }\n\n changeFormatStrikeout(strikeout: boolean) {\n this._observerStrikeout.next(strikeout);\n }\n\n changeFormatAlign(align: string) {\n this._observerAlign.next(align);\n }\n\n changeFormatList(list: string) {\n this._observerList.next(list);\n }\n}\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\n\nconst DEFAULT_COLORS = [\n '#000000', '#434343', '#666666', '#999999', '#B7B7B7', '#CCCCCC', '#D9D9D9', '#EFEFEF', '#F3F3F3', '#FFFFFF',\n '#980000', '#FF0000', '#FF9900', '#FFFF00', '#00FF00', '#00FFFF', '#4986E8', '#0000FF', '#9900FF', '#FF00FF',\n '#E6B8AF', '#F4CCCC', '#FDE5CD', '#FFF2CC', '#D9EAD3', '#D0E0E2', '#C9DAF8', '#CFE2F3', '#D9D2E9', '#EAD1DC',\n '#DD7E6B', '#EA9899', '#F9CB9C', '#FFE59A', '#B7D7A8', '#A2C4C9', '#A4C2F4', '#9FC5E8', '#B4A7D7', '#D5A6BD',\n '#CC4125', '#E06666', '#F6B26B', '#FFD966', '#92C47D', '#75A5AF', '#6D9EEB', '#6FA9DB', '#8E7CC3', '#C27BA0',\n '#A61C00', '#CC0000', '#E69138', '#F2C131', '#6AA84F', '#45818E', '#3C78D8', '#3C85C6', '#674EA7', '#A64D79',\n '#85200B', '#990000', '#B45F05', '#BF9000', '#37761D', '#144F5C', '#1254CC', '#0A5394', '#351C75', '#741B47',\n '#5B0F00', '#660000', '#783F03', '#7F6000', '#284E13', '#0B343D', '#1B4586', '#063763', '#20124D', '#4C1030',\n];\n\n@Component({\n selector: 'gd-color-picker',\n templateUrl: './color-picker.component.html',\n styleUrls: ['./color-picker.component.less']\n})\nexport class ColorPickerComponent implements OnInit {\n @Input() isOpen = false;\n @Output() selectedColor = new EventEmitter();\n @Output() closeOutside = new EventEmitter();\n colors: any = DEFAULT_COLORS;\n white = '#FFFFFF';\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n select($event, color: string) {\n $event.preventDefault();\n $event.stopPropagation();\n this.selectedColor.emit(color);\n }\n\n close() {\n this.isOpen = false;\n this.closeOutside.emit(true);\n }\n}\n","import {Injectable} from '@angular/core';\nimport {FormattingService} from \"./formatting.service\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BackFormattingService extends FormattingService {\n\n constructor() {\n super();\n }\n}\n","import {Injectable} from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SelectionService {\n selection: Range;\n isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\n\n restoreSelection() {\n if(this.selection && !this.selection.collapsed || this.isIE){\n this.putSelection(this.selection );\n }\n }\n\n captureSelection() {\n const selection = window.getSelection();\n if (selection.rangeCount > 0) {\n this.selection = selection.getRangeAt(0);\n }\n }\n\n private putSelection(selection) {\n const sel = window.getSelection();\n sel.removeAllRanges();\n sel.addRange(selection.cloneRange());\n }\n\n refreshSelection() {\n this.captureSelection();\n this.restoreSelection();\n }\n}\n","import {Directive, HostListener, OnInit} from '@angular/core';\nimport {FormattingService} from \"./formatting.service\";\nimport {BackFormattingService} from \"./back-formatting.service\";\nimport * as jquery from 'jquery';\nconst $ = jquery;\nimport {SelectionService} from './selection.service';\n\n@Directive({\n selector: '[gdFormatting]'\n})\nexport class FormattingDirective implements OnInit {\n\n private bold = false;\n private italic = false;\n private underline = false;\n private color: string;\n private bgColor: string;\n private font: string;\n private strikeout = false;\n private align: string;\n private list: string;\n private isIE = false;\n\n constructor(private _formattingService: FormattingService,\n private _backFormattingService: BackFormattingService,\n private _selectionService: SelectionService) {\n this.isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\n }\n\n @HostListener('mouseup') mouseup() {\n\n this.bold = document.queryCommandState(\"bold\");\n this.strikeout = document.queryCommandState(\"strikeThrough\");\n this.italic = document.queryCommandState(\"italic\");\n this.bgColor = document.queryCommandValue(\"backColor\");\n this.underline = document.queryCommandState(\"underline\");\n this.align = this.checkJustify();\n this.list = this.checkList();\n\n //fix required by FireFox to get correct background color\n if (this.bgColor === \"transparent\") {\n this.bgColor = $(window.getSelection().focusNode.parentNode).css('background-color').toString();\n }\n this.font = document.queryCommandValue(\"FontName\").replace(/\"/g, '');\n if(this.font.split(\",\").length > 1){\n this.font = this.font.split(\",\")[0];\n }\n this.color = document.queryCommandValue(\"foreColor\");\n this._backFormattingService.changeFormatBold(this.bold);\n this._backFormattingService.changeFormatUnderline(this.underline);\n this._backFormattingService.changeFormatItalic(this.italic);\n this._backFormattingService.changeFormatColor(this.color);\n this._backFormattingService.changeFormatBgColor(this.bgColor);\n this._backFormattingService.changeFormatFontSize(this.reportFontSize());\n this._backFormattingService.changeFormatFont(this.font);\n this._backFormattingService.changeFormatStrikeout(this.strikeout);\n this._backFormattingService.changeFormatAlign(this.align);\n this._backFormattingService.changeFormatList(this.list);\n }\n\n private checkJustify() {\n let align = \"\";\n align = document.queryCommandState(\"justifyCenter\") ? \"center\" : align;\n align = document.queryCommandState(\"justifyFull\") ? \"full\" : align;\n align = document.queryCommandState(\"justifyLeft\") ? \"left\" : align;\n align = document.queryCommandState(\"justifyRight\") ? \"right\" : align;\n return align;\n }\n\n private checkList() {\n let list = \"\";\n list = document.queryCommandState(\"insertUnorderedList\") ? \"unordered\" : list;\n list = document.queryCommandState(\"insertOrderedList\") ? \"ordered\" : list;\n return list;\n }\n\n reportFontSize(): number {\n let containerEl, sel;\n if (window.getSelection) {\n sel = window.getSelection();\n if (sel.rangeCount) {\n containerEl = sel.getRangeAt(0).commonAncestorContainer;\n // Make sure we have an element rather than a text node\n if (containerEl.nodeType === 3) {\n containerEl = containerEl.parentNode;\n }\n }\n } else if ((sel = document.getSelection()) && sel.type !== \"Control\") {\n containerEl = sel.createRange().parentElement();\n }\n\n if (containerEl) {\n return parseInt(this.getComputedStyleProperty(containerEl, \"fontSize\").replace(\"px\", \"\"), 10);\n }\n }\n\n getComputedStyleProperty(el, propName) {\n if (window.getComputedStyle) {\n return window.getComputedStyle(el, null)[propName];\n } else if (el.currentStyle) {\n return el.currentStyle[propName];\n }\n }\n\n ngOnInit(): void {\n this._formattingService.undo.subscribe(() => {\n this.toggleUndo();\n });\n this._formattingService.redo.subscribe(() => {\n this.toggleRedo();\n });\n this._formattingService.formatBoldChange.subscribe((bold: boolean) => {\n this.bold = bold;\n this.toggleBold();\n });\n this._formattingService.formatUnderlineChange.subscribe((underline: boolean) => {\n this.underline = underline;\n this.toggleUnderline();\n });\n this._formattingService.formatItalicChange.subscribe((italic: boolean) => {\n this.italic = italic;\n this.toggleItalic();\n });\n this._formattingService.formatColorChange.subscribe(((color: string) => {\n this.color = color;\n this.setColor(color);\n }));\n this._formattingService.formatBgColorChange.subscribe(((bgcolor: string) => {\n this.bgColor = bgcolor;\n this.setBgColor(bgcolor);\n }));\n this._formattingService.formatFontSizeChange.subscribe(((fontSize: number) => {\n this.setFontSize(fontSize);\n }));\n\n this._formattingService.formatFontChange.subscribe(((font: string) => {\n this.font = font;\n this.setFont(font);\n }));\n this._formattingService.formatStrikeoutChange.subscribe((strikeout: boolean) => {\n this.strikeout = strikeout;\n this.toggleStrikeout();\n });\n this._formattingService.formatAlignChange.subscribe((align: string) => {\n this.align = align;\n this.toggleAlign(this.align);\n });\n this._formattingService.formatListChange.subscribe((list: string) => {\n const remove = this.list === list;\n this.list = list;\n this.toggleList(this.list, remove);\n });\n }\n\n private toggleBold() {\n document.execCommand(\"bold\");\n this._selectionService.refreshSelection();\n }\n\n private toggleUnderline() {\n document.execCommand(\"underline\");\n this._selectionService.refreshSelection();\n }\n\n private toggleItalic() {\n document.execCommand(\"italic\");\n this._selectionService.refreshSelection();\n }\n\n private setBgColor(bgColor: string) {\n document.execCommand(\"backColor\", false, bgColor);\n this._selectionService.refreshSelection();\n }\n\n private setColor(color: string) {\n document.execCommand(\"foreColor\", false, color);\n this._selectionService.refreshSelection();\n }\n\n private setFontSize(fontSize: number) {\n if (document.getSelection().toString()) {\n let spanString = \"\" +\n document.getSelection() + \"\";\n if (this.bold) {\n spanString = \"\" + spanString + \"\";\n }\n if (this.italic) {\n spanString = \"\" + spanString + \"\";\n }\n if (this.underline) {\n spanString = \"\" + spanString + \"\";\n }\n if (this.strikeout) {\n spanString = \"\" + spanString + \"\";\n }\n document.execCommand('insertHTML', false, spanString);\n } else {\n document.execCommand(\"fontsize\", false, \"7\");\n }\n this._selectionService.refreshSelection();\n }\n\n private toggleUndo() {\n document.execCommand(\"undo\");\n }\n\n private toggleRedo() {\n document.execCommand(\"redo\");\n }\n\n private setFont(font: string) {\n document.execCommand(\"fontName\", false, font);\n this._selectionService.refreshSelection();\n }\n\n private toggleStrikeout() {\n document.execCommand(\"strikeThrough\");\n this._selectionService.refreshSelection();\n }\n\n private toggleAlign(align: string) {\n if(this.isIE) {\n this.toggleAlignIE(align);\n return;\n }\n document.execCommand(\"styleWithCSS\", false, 'true');\n switch (align) {\n case 'center':\n document.execCommand('justifyCenter');\n break;\n case 'full':\n document.execCommand('justifyFull');\n break;\n case 'left':\n document.execCommand('justifyLeft');\n break;\n case 'right':\n document.execCommand('justifyRight');\n break;\n }\n this._selectionService.refreshSelection();\n }\n\n private toggleAlignIE(align: string) {\n this._selectionService.restoreSelection()\n this._selectionService.captureSelection()\n const selection = window.getSelection().focusNode.parentNode.parentNode;\n if(align === \"full\"){\n align = \"justify\";\n }\n $(selection).css(\"text-align\", align);\n this._selectionService.refreshSelection()\n }\n\n private toggleList(list: string, remove: boolean) {\n switch (list) {\n case 'unordered':\n document.execCommand('insertUnorderedList', remove);\n break;\n case 'ordered':\n document.execCommand('insertOrderedList', remove);\n break;\n }\n this._selectionService.refreshSelection();\n }\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'gd-success-modal',\n templateUrl: './success-modal.component.html',\n styleUrls: ['./success-modal.component.less']\n})\nexport class SuccessModalComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","import {Injectable} from '@angular/core';\nimport {Observable, Subject} from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class EditHtmlService {\n private _observer: Subject = new Subject();\n private readonly _htmlContent: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get observer(): Subject {\n return this._observer;\n }\n\n get htmlContent(): Observable {\n return this._htmlContent;\n }\n\n}\n","import {Directive, HostListener, Input} from '@angular/core';\nimport {SelectionService} from './selection.service';\nimport {EditHtmlService} from \"./edit-html.service\";\n\n@Directive({\n selector: '[gdEditor]'\n})\nexport class EditorDirective {\n @Input() text: any;\n\n private isIE: boolean = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\n\n constructor(private _selectionService: SelectionService, private _htmlService: EditHtmlService) {\n }\n\n @HostListener('keyup', ['$event'])\n public onInput(event) {\n this.text = event.target;\n if(this.isIE){\n if (this.text.innerHTML) {\n const html = this.text.innerHTML.toString();\n this._htmlService.observer.next(html);\n }\n }\n }\n\n @HostListener('mouseleave', ['$event'])\n public onMouseleave(event) {\n this._selectionService.captureSelection();\n // this code is required to fix IE11 issue - it doesn't trigger blur event, since that we need to save updated HTML here\n if(this.isIE){\n this._htmlService.observer.next(event.target.innerHTML.toString());\n }\n }\n\n @HostListener('blur', ['$event'])\n public onBlur(event) {\n event.preventDefault();\n this._selectionService.restoreSelection();\n if (this.text.innerHTML) {\n const html = this.text.innerHTML.toString();\n this._htmlService.observer.next(html);\n } else {\n this._htmlService.observer.next(event.target.innerHTML.toString());\n }\n }\n}\n","import {EventEmitter, Injectable} from '@angular/core'\nimport {HttpRequest} from '@angular/common/http';\nimport {Api} from \"./config.service\";\n\n@Injectable()\nexport class LoadingMaskService {\n onLoadingChanged: EventEmitter = new EventEmitter();\n\n private stopList = [];\n private requests: HttpRequest[] = [];\n\n constructor() {\n this.stopList.push(Api.SAVE_TEXT);\n this.stopList.push(Api.SAVE_OPTICAL_CODE);\n this.stopList.push(Api.LOAD_DOCUMENT_PAGE);\n this.stopList.push(Api.LOAD_THUMBNAILS);\n this.stopList.push(Api.GET_FILE_STATUS);\n this.stopList.push(Api.LOAD_PRINT);\n }\n\n onRequestStart(req: HttpRequest): void {\n const stop = this.stopList.find(x => req.url.includes(x));\n if (!stop) {\n this.requests.push(req);\n this.notify();\n }\n }\n\n onRequestFinish(req: HttpRequest): void {\n const index = this.requests.indexOf(req);\n if (index !== -1) {\n this.requests.splice(index, 1);\n }\n this.notify();\n }\n\n private notify(): void {\n this.onLoadingChanged.emit(this.requests.length !== 0);\n }\n}\n","import {AfterViewInit, Component, Input, OnInit} from '@angular/core';\nimport {LoadingMaskService} from \"../loading-mask.service\";\n\n@Component({\n selector: 'gd-loading-mask',\n templateUrl: './loading-mask.component.html',\n styleUrls: ['./loading-mask.component.less']\n})\n\nexport class LoadingMaskComponent implements OnInit, AfterViewInit {\n @Input() loadingMask = false;\n\n constructor(private _loadingMaskService: LoadingMaskService) {\n }\n\n ngOnInit() {\n }\n\n ngAfterViewInit() {\n this._loadingMaskService\n .onLoadingChanged\n .subscribe((loading: boolean) => this.loadingMask = loading);\n }\n}\n","import {Injectable} from '@angular/core';\nimport {HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from \"@angular/common/http\";\nimport {Observable} from \"rxjs\";\nimport {finalize} from 'rxjs/operators'\nimport {LoadingMaskService} from \"./loading-mask.service\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LoadingMaskInterceptorService implements HttpInterceptor {\n\n constructor(private _loadingMaskService: LoadingMaskService) {\n }\n\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\n this._loadingMaskService.onRequestStart(req);\n const callback = () => this._loadingMaskService.onRequestFinish(req);\n return next.handle(req).pipe( finalize( callback));\n }\n}\n","import {\n Component,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n Output,\n ViewEncapsulation\n} from '@angular/core';\n\n\nconst horizontalAlignment = {\n center : {\n right: 'auto'\n },\n left : {\n right: '100%'\n },\n right : {\n right: '-100%'\n }\n};\n\nconst verticalAlignment = {\n center : {\n top : '0px',\n },\n top : {\n top : '-100%',\n right: '100%'\n },\n bottom : {\n top: 'autos'\n }\n};\n\n/**\n * DropDownToggleComponent\n */\n@Component({\n selector: 'gd-drop-down-toggle',\n template: '',\n styleUrls: ['./drop-down.component.less'],\n encapsulation : ViewEncapsulation.None\n})\nexport class DropDownToggleComponent{\n @HostListener('click',['$event'])\n click = (event: any) => this.dropdown.toggle(event);\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\n}\n\n/**\n * DropDownItemsComponent\n */\n@Component({\n selector: 'gd-drop-down-items',\n template: '
',\n styleUrls: ['./drop-down.component.less'],\n encapsulation : ViewEncapsulation.None\n})\nexport class DropDownItemsComponent{\n\n get horizontalAlign(){\n return horizontalAlignment[this.dropdown.getPlacement().h].right;\n }\n\n get verticalAlign(){\n return verticalAlignment[this.dropdown.getPlacement().v].top;\n }\n\n get isOpen(){\n return this.dropdown.open;\n }\n\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\n\n onClickOutside(event : Event ){\n this.dropdown.close();\n }\n}\n\n/**\n * DropDownItemComponent\n */\n@Component({\n selector: 'gd-drop-down-item',\n template: '
',\n styleUrls: ['./drop-down.component.less'],\n})\nexport class DropDownItemComponent{\n @HostBinding('class')\n class = 'drop-down-item';\n\n @Output()\n selected = new EventEmitter();\n\n @HostListener('click')\n click = () => this.selectEntry();\n\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\n\n selectEntry(){\n this.selected.next();\n this.dropdown.close();\n }\n}\n\n/**\n * DropDownComponent\n */\n@Component({\n selector: 'gd-drop-down',\n template: '
',\n styleUrls: ['./drop-down.component.less'],\n encapsulation : ViewEncapsulation.None\n})\nexport class DropDownComponent{\n @Input()\n placement = {\n h: \"center\",\n v: \"bottom\"\n };\n\n\n @Input()\n @HostBinding('class.show')\n open = false;\n\n @HostBinding('class')\n class = 'drop-down';\n\n close(){\n this.open = false;\n }\n\n toggle(event : MouseEvent){\n event.stopPropagation();\n this.open = !this.open;\n document.body.click();\n }\n\n getPlacement(){\n return this.placement;\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-left-side-bar',\n templateUrl: './left-side-bar.component.html',\n styleUrls: ['./left-side-bar.component.less']\n})\nexport class LeftSideBarComponent implements OnInit {\n @Input() showSpinner = false;\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n}\n","import {Directive, EventEmitter, HostListener, Input, Output} from '@angular/core';\n\n@Directive({\n selector: '[gdTooltip]'\n})\nexport class TooltipDirective {\n\n @Output() showToolTip = new EventEmitter();\n\n constructor() {\n }\n\n @HostListener('mouseenter')\n public onHovering() {\n this.showToolTip.emit(true);\n }\n\n @HostListener('mouseleave')\n public onUnhovering() {\n this.showToolTip.emit(false);\n }\n\n}\n","import {\n ApplicationRef,\n ComponentFactoryResolver,\n Injectable,\n ViewContainerRef\n} from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AddDynamicComponentService {\n\n constructor(private _factoryResolver: ComponentFactoryResolver,\n private _appRef: ApplicationRef) {\n }\n\n addDynamicComponent(viewContainerRef: ViewContainerRef, component: any) {\n const factory = this._factoryResolver.resolveComponentFactory(component);\n const componentRef = viewContainerRef.createComponent(factory);\n\n componentRef.onDestroy(() => {\n this._appRef.detachView(componentRef.hostView);\n });\n\n return componentRef;\n }\n\n}\n","import {HostDynamicDirective} from \"./host-dynamic.directive\";\n\nexport class HostingDynamicComponentService {\n private hosts: HostDynamicDirective[];\n\n constructor() {\n this.hosts = [];\n }\n\n add(host: HostDynamicDirective) {\n this.hosts = this.hosts.filter(function (h) {\n return h.ident !== host.ident;\n });\n this.hosts.push(host);\n }\n\n remove(host: HostDynamicDirective) {\n this.hosts = this.hosts.filter(function (h) {\n return h.ident !== host.ident;\n });\n }\n\n find(ident: number) {\n return this.hosts.find(function (h) {\n return h.ident === ident;\n });\n }\n}\n","import {AfterViewInit, Directive, Input, OnDestroy, ViewContainerRef} from '@angular/core';\nimport {HostingDynamicComponentService} from \"./hosting-dynamic-component.service\";\n\n@Directive({\n selector: '[gdHostDynamic]'\n})\nexport class HostDynamicDirective implements AfterViewInit, OnDestroy {\n @Input() ident: number;\n\n constructor(public viewContainerRef: ViewContainerRef,\n private _hostingService: HostingDynamicComponentService) {\n }\n\n ngAfterViewInit(): void {\n this._hostingService.add(this);\n }\n\n ngOnDestroy(): void {\n this._hostingService.remove(this);\n this.viewContainerRef.clear();\n }\n\n}\n","import {AfterViewInit, Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport * as jquery from \"jquery\";\nimport {Utils} from \"../file.service\";\n\nconst $ = jquery;\n\n@Component({\n selector: 'gd-resizing',\n templateUrl: './resizing.component.html',\n styleUrls: ['./resizing.component.less']\n})\nexport class ResizingComponent implements OnInit, AfterViewInit {\n\n @Input() init: boolean;\n @Input() id: number;\n @Input() se = false;\n @Input() ne = false;\n @Input() sw = false;\n @Input() nw = false;\n @Input() pageWidth: number;\n @Input() pageHeight: number;\n SE = 'se';\n NE = 'ne';\n SW = 'sw';\n NW = 'nw';\n\n @Output() offsetX = new EventEmitter();\n @Output() offsetY = new EventEmitter();\n @Output() offsetTop = new EventEmitter();\n @Output() offsetLeft = new EventEmitter();\n @Output() release = new EventEmitter();\n\n private grab = false;\n private oldPosition: { x: number, y: number };\n\n constructor() {\n }\n\n ngAfterViewInit(): void {\n const elSE = $(this.getElementId(this.SE));\n const elNW = $(this.getElementId(this.NW));\n if (this.init && elSE && elNW && elSE.offset() && elNW.offset()) {\n let width = elSE.offset().left - elNW.offset().left;\n let height = elSE.offset().top - elNW.offset().top;\n while (width >= this.pageWidth || height >= this.pageHeight) {\n width = width / 2;\n height = height / 2;\n }\n setTimeout(() => {\n this.offsetX.emit(width);\n this.offsetY.emit(height);\n }, 100);\n }\n }\n\n ngOnInit() {\n }\n\n catchUp($event: DragEvent) {\n // ff\n $event.preventDefault();\n if ($event.dataTransfer) { // ff\n $event.dataTransfer.setData('text', 'foo');\n }\n this.grab = true;\n this.oldPosition = Utils.getMousePosition($event);\n }\n\n resize($event: DragEvent, el: string) {\n if (!this.grab) {\n return;\n }\n const position = Utils.getMousePosition($event);\n if (position.x === 0 && position.y === 0) {\n return;\n }\n const notSW = this.NE === el || this.NW === el;\n const notNE = this.SW === el || this.NW === el;\n this.setOffsets(position, notNE, notSW);\n if (notSW) {\n this.offsetTop.emit(position.y - this.oldPosition.y);\n }\n if (notNE) {\n this.offsetLeft.emit(position.x - this.oldPosition.x);\n }\n this.oldPosition = position;\n }\n\n private setOffsets(position, x: boolean, y: boolean) {\n const offsetX = x ? this.oldPosition.x - position.x : position.x - this.oldPosition.x;\n const offsetY = y ? this.oldPosition.y - position.y : position.y - this.oldPosition.y;\n this.offsetX.emit(offsetX);\n this.offsetY.emit(offsetY);\n }\n\n end($event: DragEvent, el: string) {\n // ff\n this.resize($event, el);\n this.release.emit(true);\n this.grab = false;\n }\n\n start($event: DragEvent) {\n this.drop($event);\n }\n\n drop($event: DragEvent) {\n $event.stopPropagation();\n $event.preventDefault();\n }\n\n private getElementId(el: string) {\n return \"#\" + el + \"-\" + this.id;\n }\n}\n","import {TabActivatorService} from \"./tab-activator.service\";\n\nexport class TopTabActivatorService extends TabActivatorService {\n\n constructor() {\n super();\n }\n}\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {ExceptionMessageService} from \"../exception-message.service\";\nimport {TopTabActivatorService} from \"../top-tab-activator.service\";\nimport {ModalService, CommonModals} from \"../modal.service\";\n\n@Component({\n selector: 'gd-top-tab',\n templateUrl: './top-tab.component.html',\n styleUrls: ['./top-tab.component.less']\n})\nexport class TopTabComponent implements OnInit {\n @Input() id: string;\n @Input() icon: string;\n @Input() disabled = false;\n @Input() tooltip: string;\n @Output() activeTab = new EventEmitter();\n @Input() elementPosition = 0;\n public active = false;\n public showToolTip = false;\n\n constructor(private _tabActivatorService: TopTabActivatorService,\n private _modalService: ModalService,\n private _excMessageService: ExceptionMessageService) {\n this._tabActivatorService.activeTabChange.subscribe((tabId: string) => {\n this.activation(tabId);\n if (tabId === null) {\n this.activeTab.emit(\"\");\n }\n });\n }\n\n private activation(tabId: string) {\n if (this.id === tabId) {\n this.active = !this.active;\n if (this.active) {\n this.activeTab.emit(this.id);\n } else {\n this.activeTab.emit(\"\");\n }\n } else {\n this.active = false;\n }\n }\n\n ngOnInit() {\n }\n\n toggleTab() {\n if (this.disabled) {\n this._modalService.open(CommonModals.ErrorMessage);\n this._excMessageService.changeMessage(\"Please open document first\");\n return;\n }\n this._tabActivatorService.changeActiveTab(this.id);\n }\n\n}\n","import {Component, EventEmitter, Input, OnInit, Output, ElementRef, Renderer2} from '@angular/core';\nimport * as jquery from 'jquery';\nimport {FormattingService} from \"../formatting.service\";\nimport {OnCloseService} from \"../on-close.service\";\nimport {Option} from \"../select/select.component\";\nimport { ZoomService } from '../zoom.service';\nimport { WindowService } from '../window.service';\n\nconst $ = jquery;\n\n@Component({\n selector: 'gd-text-menu',\n templateUrl: './text-menu.component.html',\n styleUrls: ['./text-menu.component.less']\n})\nexport class TextMenuComponent implements OnInit {\n @Input() blur: boolean;\n @Input() fontSize: number;\n @Input() font: string;\n @Input() bold: boolean;\n @Input() italic: boolean;\n @Input() underline: boolean;\n @Input() color: string;\n @Input() decoration = true;\n @Input() showTooltips = true;\n\n @Output() outFontSize = new EventEmitter();\n @Output() outFont = new EventEmitter();\n @Output() outBold = new EventEmitter();\n @Output() outItalic = new EventEmitter();\n @Output() outUnderline = new EventEmitter();\n @Output() outColor = new EventEmitter();\n\n fontSizeOptions = FormattingService.getFontSizeOptions();\n fontOptions = FormattingService.getFontOptions();\n colorPickerShow = false;\n\n isMobile: boolean;\n\n constructor(private _onCloseService: OnCloseService,\n private _zoomService: ZoomService,\n private _windowService: WindowService,\n protected _elementRef: ElementRef,\n private renderer: Renderer2) {\n \n _onCloseService.onClose.subscribe(() => {\n this.colorPickerShow = false;\n });\n\n this.isMobile = _windowService.isMobile();\n _windowService.onResize.subscribe((w) => {\n this.isMobile = _windowService.isMobile();\n });\n\n _zoomService.zoomChange.subscribe((val: number) => {\n if (this.isMobile)\n {\n this.changePosition(val);\n }\n });\n }\n\n ngOnInit() {\n }\n\n changePosition(val: number) {\n const top = (window.innerHeight - 24 - this._elementRef.nativeElement.parentElement.getBoundingClientRect().top - this._elementRef.nativeElement.parentElement.getBoundingClientRect().height);\n const left = this._elementRef.nativeElement.parentElement.getBoundingClientRect().left;\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'width', window.innerWidth + 'px');\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'top', top + 'px');\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'left', -left + 'px');\n }\n\n selectFontSize($event: Option) {\n $(\".gd-wrapper\").off(\"keyup\");\n this.outFontSize.emit($event.value);\n $(\".gd-wrapper\").on(\"keyup\", () => {\n const fontElements = document.getElementsByTagName(\"font\");\n for (let i = 0, len = fontElements.length; i < len; ++i) {\n if (fontElements[i].getAttribute('size') === \"7\") {\n fontElements[i].removeAttribute(\"size\");\n fontElements[i].style.fontSize = $event + \"px\";\n }\n }\n });\n }\n\n selectFont($event: Option) {\n event.preventDefault();\n event.stopPropagation();\n this.outFont.emit($event.value);\n }\n\n toggleColorPicker($event) {\n $event.preventDefault();\n $event.stopPropagation();\n this.colorPickerShow = !this.colorPickerShow;\n }\n\n selectColor($event: string) {\n this.colorPickerShow = false;\n this.outColor.emit($event);\n }\n\n toggleBold(event) {\n event.preventDefault();\n event.stopPropagation();\n this.outBold.emit(!this.bold);\n }\n\n toggleItalic(event) {\n event.preventDefault();\n event.stopPropagation();\n this.outItalic.emit(!this.italic);\n }\n\n toggleUnderline(event) {\n event.preventDefault();\n event.stopPropagation();\n this.outUnderline.emit(!this.underline);\n }\n\n closePicker($event) {\n this.colorPickerShow = !$event;\n }\n}\n","import {Component, EventEmitter, Input, OnInit, Output, Renderer2, ElementRef} from '@angular/core';\nimport {Formatting} from \"../formatting.service\";\nimport {WindowService} from \"../window.service\";\nimport { ZoomService } from '../zoom.service';\n\nexport class MenuType {\n public static FOR_SIGNATURE = \"signature\";\n public static FOR_ANNOTATION = \"annotation\";\n}\n\n@Component({\n selector: 'gd-context-menu',\n templateUrl: './context-menu.component.html',\n styleUrls: ['./context-menu.component.less']\n})\nexport class ContextMenuComponent implements OnInit {\n @Input() formatting: Formatting = Formatting.default();\n @Input() textMenu: boolean;\n @Input() topPosition: number;\n @Input() lock = false;\n @Input() translation = 0;\n @Input() menuType: string;\n @Output() changeFormatting = new EventEmitter();\n @Output() removeItem = new EventEmitter();\n @Output() copySign = new EventEmitter();\n @Output() lockOut = new EventEmitter();\n @Output() comment = new EventEmitter();\n\n isMobile: boolean;\n\n constructor(private _windowService: WindowService,\n private _zoomService: ZoomService,\n protected _elementRef: ElementRef,\n private renderer: Renderer2) {\n this.isMobile = _windowService.isMobile();\n _windowService.onResize.subscribe((w) => {\n this.isMobile = _windowService.isMobile();\n });\n\n _zoomService.zoomChange.subscribe((val: number) => {\n if (this.isMobile)\n {\n this.changeScale(val);\n }\n });\n }\n\n ngOnInit() {\n }\n\n changeScale(val: number){\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-context-menu'), 'transform', 'scale(' + 1/(val/100) + ')');\n }\n\n saveChanges() {\n this.changeFormatting.emit(this.formatting);\n }\n\n selectFontSize($event: number) {\n this.formatting.fontSize = $event;\n this.saveChanges();\n }\n\n selectFont($event: string) {\n this.formatting.font = $event;\n this.saveChanges();\n }\n\n selectColor($event: string) {\n this.formatting.color = $event;\n this.saveChanges();\n }\n\n toggleBold($event) {\n this.formatting.bold = $event;\n this.saveChanges();\n }\n\n toggleItalic($event) {\n this.formatting.italic = $event;\n this.saveChanges();\n }\n\n toggleUnderline($event) {\n this.formatting.underline = $event;\n this.saveChanges();\n }\n\n deleteItem() {\n this.removeItem.emit(true);\n }\n\n toggleLock() {\n this.lock = !this.lock;\n this.lockOut.emit(this.lock);\n }\n\n onCopySign() {\n this.copySign.emit(true);\n }\n\n isSignature() {\n return this.menuType === MenuType.FOR_SIGNATURE;\n }\n\n isAnnotation() {\n return this.menuType === MenuType.FOR_ANNOTATION;\n }\n\n addComment() {\n this.comment.emit(true);\n }\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {TopToolbarComponent} from './top-toolbar/top-toolbar.component';\nimport {SidePanelComponent} from './side-panel/side-panel.component';\nimport {ButtonComponent} from './button/button.component';\nimport {LogoComponent} from './logo/logo.component';\nimport {TooltipComponent} from './tooltip/tooltip.component';\nimport {FontAwesomeModule} from '@fortawesome/angular-fontawesome';\nimport {library} from '@fortawesome/fontawesome-svg-core';\nimport {fas} from '@fortawesome/free-solid-svg-icons';\nimport {far} from '@fortawesome/free-regular-svg-icons';\nimport {Api, ConfigService,} from \"./config.service\";\nimport {ModalService} from \"./modal.service\";\nimport {ModalComponent} from './modal/modal.component';\nimport {BrowseFilesModalComponent} from './browse-files-modal/browse-files-modal.component';\nimport {FileModel, FileService, FileUtil, Utils} from \"./file.service\";\nimport {DocumentComponent} from './document/document.component';\nimport {PageComponent} from './page/page.component';\nimport {HighlightSearchPipe, SanitizeHtmlPipe, SanitizeResourceHtmlPipe, SanitizeStylePipe} from \"./pipes\";\nimport {UploadFileZoneComponent} from './upload-file-zone/upload-file-zone.component';\nimport {UploadFilesService} from \"./upload-files.service\";\nimport {DndDirective} from './dnd.directive';\nimport {ScrollableDirective} from './scrollable.directive';\nimport {MouseWheelDirective} from './mousewheel.directive';\nimport {NavigateService} from \"./navigate.service\";\nimport {PagePreloadService} from \"./page-preload.service\";\nimport {ZoomDirective} from './zoom.directive';\nimport {ZoomService} from \"./zoom.service\";\nimport {SelectComponent} from './select/select.component';\nimport {DisabledCursorDirective} from './disabled-cursor.directive';\nimport {RotationDirective} from './rotation.directive';\nimport {InitStateComponent} from './init-state/init-state.component';\nimport {RenderPrintService} from \"./render-print.service\";\nimport {RenderPrintDirective} from './render-print.directive';\nimport {ErrorModalComponent} from './error-modal/error-modal.component';\nimport {PasswordRequiredComponent} from './password-required/password-required.component';\nimport {ExceptionMessageService} from \"./exception-message.service\";\nimport {PasswordService} from \"./password.service\";\nimport {ErrorInterceptorService} from \"./error-interceptor.service\";\nimport {SearchComponent} from './search/search.component';\nimport {SearchableDirective} from './searchable.directive';\nimport {SearchService} from \"./search.service\";\nimport {WindowService} from \"./window.service\";\nimport {ViewportService} from \"./viewport.service\";\nimport {TabbedToolbarsComponent} from './tabbed-toolbars/tabbed-toolbars.component';\nimport {TabComponent} from \"./tab/tab.component\";\nimport {TabsComponent} from \"./tabs/tabs.component\";\nimport {FormattingService} from \"./formatting.service\";\nimport {ColorPickerComponent} from './color-picker/color-picker.component';\nimport {FormattingDirective} from './formatting.directive';\nimport {BackFormattingService} from \"./back-formatting.service\";\nimport {OnCloseService} from \"./on-close.service\";\nimport {SuccessModalComponent} from './success-modal/success-modal.component';\nimport {EditorDirective} from './editor.directive';\nimport {LoadingMaskComponent} from './loading-mask/loading-mask.component';\nimport {LoadingMaskService} from './loading-mask.service';\nimport {LoadingMaskInterceptorService} from \"./loading-mask-interceptor.service\";\nimport {TabActivatorService} from \"./tab-activator.service\";\nimport {\n DropDownComponent,\n DropDownItemComponent,\n DropDownItemsComponent,\n DropDownToggleComponent\n} from './drop-down/drop-down.component';\nimport {ClickOutsideModule} from 'ng-click-outside';\nimport {LeftSideBarComponent} from './left-side-bar/left-side-bar.component';\nimport {TooltipDirective} from './tooltip.directive';\nimport {AddDynamicComponentService} from \"./add-dynamic-component.service\";\nimport {HostDynamicDirective} from './host-dynamic.directive';\nimport {HostingDynamicComponentService} from \"./hosting-dynamic-component.service\";\nimport {ResizingComponent} from './resizing/resizing.component';\nimport {TopTabComponent} from './top-tab/top-tab.component';\nimport {TopTabActivatorService} from \"./top-tab-activator.service\";\nimport {TextMenuComponent} from './text-menu/text-menu.component';\nimport {ContextMenuComponent} from './context-menu/context-menu.component';\n\nconst providers = [ConfigService,\n Api,\n ModalService,\n FileService,\n FileModel,\n FileUtil,\n Utils,\n SanitizeHtmlPipe,\n SanitizeResourceHtmlPipe,\n SanitizeStylePipe,\n HighlightSearchPipe,\n UploadFilesService,\n RenderPrintService,\n NavigateService,\n PagePreloadService,\n ZoomService,\n ExceptionMessageService,\n PasswordService,\n ErrorInterceptorService,\n SearchService,\n WindowService,\n ViewportService,\n FormattingService,\n BackFormattingService,\n OnCloseService,\n LoadingMaskInterceptorService,\n LoadingMaskService,\n TabActivatorService,\n AddDynamicComponentService,\n HostingDynamicComponentService,\n TopTabActivatorService];\n\n@NgModule({\n imports: [CommonModule, FontAwesomeModule, ClickOutsideModule],\n declarations: [\n TopToolbarComponent,\n SidePanelComponent,\n ButtonComponent,\n LogoComponent,\n TooltipComponent,\n ModalComponent,\n BrowseFilesModalComponent,\n DocumentComponent,\n PageComponent,\n SanitizeHtmlPipe,\n SanitizeResourceHtmlPipe,\n SanitizeStylePipe,\n HighlightSearchPipe,\n UploadFileZoneComponent,\n DndDirective,\n ScrollableDirective,\n MouseWheelDirective,\n ZoomDirective,\n SelectComponent,\n DisabledCursorDirective,\n RotationDirective,\n InitStateComponent,\n RenderPrintDirective,\n ErrorModalComponent,\n PasswordRequiredComponent,\n SearchComponent,\n SearchableDirective,\n TabbedToolbarsComponent,\n TabComponent,\n TabsComponent,\n ColorPickerComponent,\n FormattingDirective,\n SuccessModalComponent,\n EditorDirective,\n LoadingMaskComponent,\n DropDownComponent,\n DropDownItemComponent,\n DropDownItemsComponent,\n DropDownToggleComponent,\n LeftSideBarComponent,\n TooltipDirective,\n HostDynamicDirective,\n ResizingComponent,\n TopTabComponent,\n TextMenuComponent,\n ContextMenuComponent\n ],\n exports: [\n TopToolbarComponent,\n SidePanelComponent,\n ButtonComponent,\n LogoComponent,\n TooltipComponent,\n ModalComponent,\n BrowseFilesModalComponent,\n DocumentComponent,\n PageComponent,\n SanitizeResourceHtmlPipe,\n SanitizeStylePipe,\n HighlightSearchPipe,\n SanitizeHtmlPipe,\n UploadFileZoneComponent,\n ScrollableDirective,\n MouseWheelDirective,\n SelectComponent,\n RotationDirective,\n InitStateComponent,\n RenderPrintDirective,\n ErrorModalComponent,\n PasswordRequiredComponent,\n SearchComponent,\n SearchableDirective,\n TabbedToolbarsComponent,\n TabComponent,\n TabsComponent,\n ColorPickerComponent,\n FormattingDirective,\n SuccessModalComponent,\n LoadingMaskComponent,\n DndDirective,\n DropDownComponent,\n DropDownItemComponent,\n DropDownItemsComponent,\n DropDownToggleComponent,\n ZoomDirective,\n DropDownToggleComponent,\n LeftSideBarComponent,\n TooltipDirective,\n HostDynamicDirective,\n ResizingComponent,\n TopTabComponent,\n TextMenuComponent,\n ContextMenuComponent\n ],\n providers: providers\n})\nexport class CommonComponentsModule {\n constructor() {\n library.add(fas, far);\n }\n}\n"]} \ No newline at end of file +{"version":3,"sources":["../../../../node_modules/tslib/tslib.es6.js","ng://@groupdocs.examples.angular/common-components/lib/top-toolbar/top-toolbar.component.ts","ng://@groupdocs.examples.angular/common-components/lib/side-panel/side-panel.component.ts","ng://@groupdocs.examples.angular/common-components/lib/window.service.ts","ng://@groupdocs.examples.angular/common-components/lib/button/button.component.ts","ng://@groupdocs.examples.angular/common-components/lib/logo/logo.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tooltip/tooltip.component.ts","ng://@groupdocs.examples.angular/common-components/lib/config.service.ts","ng://@groupdocs.examples.angular/common-components/lib/modal.service.ts","ng://@groupdocs.examples.angular/common-components/lib/modal/modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/file.service.ts","ng://@groupdocs.examples.angular/common-components/lib/upload-files.service.ts","ng://@groupdocs.examples.angular/common-components/lib/browse-files-modal/browse-files-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/zoom.service.ts","ng://@groupdocs.examples.angular/common-components/lib/page-preload.service.ts","ng://@groupdocs.examples.angular/common-components/lib/navigate.service.ts","ng://@groupdocs.examples.angular/common-components/lib/document/document.component.ts","ng://@groupdocs.examples.angular/common-components/lib/page/page.component.ts","ng://@groupdocs.examples.angular/common-components/lib/pipes.ts","ng://@groupdocs.examples.angular/common-components/lib/upload-file-zone/upload-file-zone.component.ts","ng://@groupdocs.examples.angular/common-components/lib/dnd.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/viewport.service.ts","ng://@groupdocs.examples.angular/common-components/lib/scrollable.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/mousewheel.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/zoom.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/on-close.service.ts","ng://@groupdocs.examples.angular/common-components/lib/select/select.component.ts","ng://@groupdocs.examples.angular/common-components/lib/disabled-cursor.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/rotation.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/init-state/init-state.component.ts","ng://@groupdocs.examples.angular/common-components/lib/render-print.service.ts","ng://@groupdocs.examples.angular/common-components/lib/render-print.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/exception-message.service.ts","ng://@groupdocs.examples.angular/common-components/lib/error-modal/error-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/password.service.ts","ng://@groupdocs.examples.angular/common-components/lib/password-required/password-required.component.ts","ng://@groupdocs.examples.angular/common-components/lib/error-interceptor.service.ts","ng://@groupdocs.examples.angular/common-components/lib/search.service.ts","ng://@groupdocs.examples.angular/common-components/lib/search/search.component.ts","ng://@groupdocs.examples.angular/common-components/lib/searchable.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/tabbed-toolbars/tabbed-toolbars.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tab-activator.service.ts","ng://@groupdocs.examples.angular/common-components/lib/tab/tab.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tabs/tabs.component.ts","ng://@groupdocs.examples.angular/common-components/lib/formatting.service.ts","ng://@groupdocs.examples.angular/common-components/lib/color-picker/color-picker.component.ts","ng://@groupdocs.examples.angular/common-components/lib/back-formatting.service.ts","ng://@groupdocs.examples.angular/common-components/lib/selection.service.ts","ng://@groupdocs.examples.angular/common-components/lib/formatting.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/success-modal/success-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/edit-html.service.ts","ng://@groupdocs.examples.angular/common-components/lib/editor.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask.service.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask/loading-mask.component.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask-interceptor.service.ts","ng://@groupdocs.examples.angular/common-components/lib/drop-down/drop-down.component.ts","ng://@groupdocs.examples.angular/common-components/lib/left-side-bar/left-side-bar.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tooltip.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/add-dynamic-component.service.ts","ng://@groupdocs.examples.angular/common-components/lib/hosting-dynamic-component.service.ts","ng://@groupdocs.examples.angular/common-components/lib/host-dynamic.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/resizing/resizing.component.ts","ng://@groupdocs.examples.angular/common-components/lib/top-tab-activator.service.ts","ng://@groupdocs.examples.angular/common-components/lib/top-tab/top-tab.component.ts","ng://@groupdocs.examples.angular/common-components/lib/text-menu/text-menu.component.ts","ng://@groupdocs.examples.angular/common-components/lib/context-menu/context-menu.component.ts","ng://@groupdocs.examples.angular/common-components/lib/common-components.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__extends","__","this","constructor","prototype","create","__values","o","s","Symbol","iterator","m","i","call","length","next","value","done","TypeError","TopToolbarComponent","Component","args","selector","template","SidePanelComponent","closable","saveable","hideSidePanel","EventEmitter","saveInSidePanel","onlyTitle","closeSidePanel","emit","saveBySidePanel","toggleTitleMode","Input","Output","WindowService","_this","resizeSubject","Subject","width","window","innerWidth","height","innerHeight","_resize$","fromEvent","pipe","debounceTime","distinctUntilChanged","startWith","target","tap","event","subscribe","defineProperty","asObservable","isMobile","isTablet","isDesktop","getWidth","getHeight","isEdge","navigator","userAgent","toLowerCase","indexOf","isFirefox","ButtonComponent","windowService","iconOnly","intent","disabled","toggle","iconRegular","elementPosition","showToolTip","onResize","w","iconButtonClass","onHovering","className","onUnhovering","cleanAll","str","val","replace","LogoComponent","ngOnInit","TooltipComponent","position","visibility","getClass","Api","VIEWER_APP","SIGNATURE_APP","ANNOTATION_APP","SEARCH_APP","EDITOR_APP","COMPARISON_APP","CONVERSION_APP","METADATA_APP","DEFAULT_API_ENDPOINT","location","href","LOAD_FILE_TREE","LOAD_CONFIG","LOAD_DOCUMENT_DESCRIPTION","LOAD_DOCUMENT_PAGE","LOAD_DOCUMENT_PROPERTIES","LOAD_DOCUMENT_PROPERTIES_NAMES","SAVE_PROPERTY","REMOVE_PROPERTY","ROTATE_DOCUMENT_PAGE","UPLOAD_DOCUMENTS","DOWNLOAD_DOCUMENTS","LOAD_PRINT","LOAD_PRINT_PDF","LOAD_THUMBNAILS","LOAD_FORMATS","SAVE_FILE","CREATE_FILE","COMPARE_FILES","CONVERT_FILE","DELETE_SIGNATURE_FILE","REMOVE_FROM_INDEX","GET_FILE_STATUS","SAVE_OPTICAL_CODE","SAVE_TEXT","SAVE_IMAGE","SAVE_STAMP","SIGN","DOWNLOAD_SIGNED","LOAD_SIGNATURE_IMAGE","ANNOTATE","SEARCH","ADD_FILES_TO_INDEX","httpOptionsJson","headers","HttpHeaders","Content-Type","httpOptionsJsonResponseTypeBlob","responseType","ConfigService","apiEndpoint","_apiEndpoint","url","trim","endsWith","substring","getConfigEndpoint","app","getViewerApiEndpoint","getEditorApiEndpoint","getComparisonApiEndpoint","getConversionApiEndpoint","getMetadataApiEndpoint","getSignatureApiEndpoint","getAnnotationApiEndpoint","getSearchApiEndpoint","Injectable","CommonModals","PasswordRequired","ErrorMessage","BrowseFiles","CreateDocument","OperationSuccess","DrawHandSignature","DrawStampSignature","InformationMessage","ModalService","modals","add","modal","push","remove","id","filter","x","open","close","ModalComponent","modalService","el","visible","cancel","element","nativeElement","document","body","appendChild","console","error","ngOnDestroy","preventDefault","stopPropagation","onClose","$event","cancelClose","ElementRef","RotatedPage","FileCredentials","guid","password","SaveFile","_super","content","tslib_1.__extends","FileDescription","printAllowed","FileModel","HttpError","BadRequest","Unauthorized","Forbidden","NotFound","TimeOut","Conflict","InternalServerError","Utils","getMousePosition","mouse","y","wEvent","ev","pageX","screenX","touches","pageY","screenX_1","screenY","screenY_1","clientX","scrollLeft","clientY","scrollTop","toRgb","color","result","exec","r","parseInt","g","toHex","match","charAt","c","RegExp","$1","$2","$3","pad","len","toString","FileUtil","find","filename","isDirectory","strings","split","name_1","pop","map","folder","format","icon","pdf","unit","doc","docx","docm","dot","dotx","dotm","xls","xlsx","xlsm","xlsb","xls2003","xltx","xltm","ppt","pptx","pps","ppsx","vsd","vdx","vss","vsx","vst","vtx","vsdx","vdw","vstx","vssx","mpp","mpt","msg","eml","emlx","one","odt","ott","ods","odp","otp","ots","potx","potm","pptm","ppsm","rtf","txt","csv","html","mht","mhtml","xml","xps","dxf","dwg","bmp","gif","jpg","jpe","jpeg","jfif","png","tiff","tif","psd","svg","jp2","epub","ico","webp","mobi","tex","djvu","unknown","FileService","UploadFilesService","_uploadsChange","Observable","observer","_observer","changeFilesList","filesList","$","jquery","uploads_choices","name","BrowseFilesModalComponent","_uploadService","uploads","selectedFileGuid","selectedDirectory","urlForUpload","closing","showUploadUrl","showUploadFile","getSize","size","mb","Math","round","kb","getFormatName","file","directory","getFormatIcon","choose","selectedFile","goUp","selectUpload","trigger","refresh","files","showSpinner","uploadUrl","cleanUpload","handleFileInput","ZoomService","_zoomChange","_zoom","changeZoom","zoom","createZoomOption","sep","separator","zoomOptions","PagePreloadService","_checkPreload","changeLastPageInView","page","NavigateService","_pagePreloadService","_currentPage","_countPages","BehaviorSubject","_navigate","nextPage","navigateTo","prevPage","toLastPage","toFirstPage","currentPage","providedIn","DocumentComponent","_elementRef","_zoomService","_windowService","_navigateService","wait","docWidth","docHeight","viewportWidth","viewportHeight","scale","lastScale","container","lastX","lastY","pinchCenter","pinchCenterOffset","curWidth","curHeight","zoomChange","navigate","selectedPage","ifPresentation","ngOnChanges","ngAfterViewInit","children","item","clientWidth","clientHeight","offsetWidth","offsetHeight","Hammer","ifExcel","getDimensionWithUnit","pageNumber","isVisible","mode","ifEdge","ngAfterViewChecked","querySelectorAll","PageComponent","test","number","editable","changes","data","imgData","isHtml","SanitizeHtmlPipe","sanitizer","transform","bypassSecurityTrustHtml","Pipe","DomSanitizer","SanitizeResourceHtmlPipe","bypassSecurityTrustResourceUrl","SanitizeStylePipe","bypassSecurityTrustStyle","HighlightSearchPipe","re","UploadFileZoneComponent","closeUpload","onCloseUpload","DndDirective","_uploadFilesService","opening","dropped","active","dragCounter","onDragEnter","evt","onDragOver","onDragLeave","closeArea","onDrop","dataTransfer","onClick","Directive","HostBinding","HostListener","ViewportService","checkInViewport","leftOffset","deltaX","win","viewport","isNaN","zoomN","outerHeight","outerWidth","bounds","offset","right","left","bottom","top","deltas","parseFloat","min","toFixed","ScrollableDirective","_viewportService","loadedPagesSet","Set","scrollToPage","scrolling","resizing","getPage","prev","isSameTop","options","calculateOffset","scroll","getChildren","count","countPagesOnWidth","margin","pagesHeight","getZoom","pageEl","floor","getBoundingClientRect","currentPageSet","pageElem","currentPageRect","has","MouseWheelDirective","mouseWheelUp","mouseWheelDown","onMouseWheelChrome","mouseWheelFunc","onMouseWheelFirefox","onMouseWheelIE","delta","max","wheelDelta","detail","ZoomDirective","zoomActive","setStyles","resizePages","zoomInt","transformOrigin","maxWidth","pages","forEach","minWidth","getScrollWidth","elm","getScrollHeight","viewPortWidth","parentElement","viewPortHeight","scrollWidth","scrollHeight","OnCloseService","_onClose","SelectComponent","_onCloseService","selected","isOpen","onClickOutside","select","DisabledCursorDirective","updateCursor","cursor","dis","RotationDirective","withMargin","angle","animation","transition","isHtmlMode","isLandscape","InitStateComponent","fileDropped","RenderPrintService","_render","_renderBlob","_observerBlob","changePages","changeBlob","RenderPrintDirective","_renderService","renderPrint","renderPrintBlob","pagesHtml","pages_1","tslib_1.__values","pages_1_1","openWindow","imageA4Adjusted","cssPrint","windowObject","focus","writeln","setTimeout","print","fileURL","URL","createObjectURL","ExceptionMessageService","_messageChange","changeMessage","message","ErrorModalComponent","messageService","messageChange","PasswordService","_passChange","setPassword","pass","PasswordRequiredComponent","_passwordService","cancelEvent","onCloseOpen","ErrorInterceptorService","_modalService","_messageService","intercept","req","logFormat","handle","catchError","exception","HttpErrorResponse","status","throwError","SearchService","_textChange","_observerCurrent","_currentChange","_observerTotal","_totalChange","setText","text","setCurrent","current","setTotal","total","SearchComponent","_searchService","hidePanel","totalChange","hide","textElement","ViewChild","static","SearchableDirective","_highlight","currentChange","moveToCurrent","textChange","highlightSearch","cleanHighlight","highlightEl","removeClass","currentEl","addClass","textNodes","contents","nodeName","checkClass","classList","contains","nodeType","textContent","highlight","each","$this","replaceWith","normalize","nodeListOf","innerText","TabbedToolbarsComponent","TabActivatorService","_activeTabChange","changeActiveTab","tabId","TabComponent","_tabActivatorService","activeTabChange","activation","selectTab","TabsComponent","Formatting","fontSize","bgColor","bold","italic","underline","font","strikeout","align","list","default","FormattingService","_observerBold","_formatBoldChange","_observerUnderline","_formatUnderlineChange","_observerUndo","_undo","_observerRedo","_redo","_observerItalic","_formatItalicChange","_observerColor","_formatColorChange","_observerBgColor","_formatBgColorChange","_observerFontSize","_formatFontSizeChange","_observerFont","_formatFontChange","_observerStrikeout","_formatStrikeoutChange","_observerAlign","_formatAlignChange","_observerList","_formatListChange","createFontSizeOption","getFontSizeOptions","createFontOption","getFontOptions","fontOptions","changeFormatFontSize","changeFormatBold","changeFormatUnderline","Undo","Redo","changeFormatItalic","changeFormatColor","changeFormatBgColor","bgcolor","changeFormatFont","changeFormatStrikeout","changeFormatAlign","changeFormatList","DEFAULT_COLORS","ColorPickerComponent","selectedColor","closeOutside","colors","white","BackFormattingService","SelectionService","isIE","restoreSelection","selection","collapsed","putSelection","captureSelection","getSelection","rangeCount","getRangeAt","sel","removeAllRanges","addRange","cloneRange","refreshSelection","FormattingDirective","_formattingService","_backFormattingService","_selectionService","mouseup","queryCommandState","queryCommandValue","checkJustify","checkList","focusNode","parentNode","css","reportFontSize","containerEl","commonAncestorContainer","type","createRange","getComputedStyleProperty","propName","getComputedStyle","currentStyle","undo","toggleUndo","redo","toggleRedo","formatBoldChange","toggleBold","formatUnderlineChange","toggleUnderline","formatItalicChange","toggleItalic","formatColorChange","setColor","formatBgColorChange","setBgColor","formatFontSizeChange","setFontSize","formatFontChange","setFont","formatStrikeoutChange","toggleStrikeout","formatAlignChange","toggleAlign","formatListChange","toggleList","execCommand","spanString","toggleAlignIE","SuccessModalComponent","EditHtmlService","_htmlContent","EditorDirective","_htmlService","onInput","innerHTML","onMouseleave","onBlur","LoadingMaskService","onLoadingChanged","stopList","requests","onRequestStart","includes","notify","onRequestFinish","index","splice","LoadingMaskComponent","_loadingMaskService","loadingMask","loading","LoadingMaskInterceptorService","finalize","horizontalAlignment","center","verticalAlignment","DropDownToggleComponent","dropdown","click","encapsulation","ViewEncapsulation","None","Inject","forwardRef","DropDownComponent","DropDownItemsComponent","getPlacement","h","v","DropDownItemComponent","class","selectEntry","placement","LeftSideBarComponent","TooltipDirective","AddDynamicComponentService","_factoryResolver","_appRef","addDynamicComponent","viewContainerRef","component","factory","resolveComponentFactory","componentRef","createComponent","onDestroy","detachView","hostView","ComponentFactoryResolver","ApplicationRef","HostingDynamicComponentService","hosts","host","ident","HostDynamicDirective","_hostingService","clear","ViewContainerRef","ResizingComponent","se","ne","sw","nw","SE","NE","SW","NW","offsetX","offsetY","offsetTop","offsetLeft","release","grab","elSE","getElementId","elNW","init","width_1","height_1","pageWidth","pageHeight","catchUp","setData","oldPosition","resize","notSW","notNE","setOffsets","end","start","drop","TopTabActivatorService","TopTabComponent","_excMessageService","activeTab","toggleTab","TextMenuComponent","renderer","decoration","showTooltips","outFontSize","outFont","outBold","outItalic","outUnderline","outColor","fontSizeOptions","colorPickerShow","changePosition","setStyle","querySelector","selectFontSize","off","on","fontElements","getElementsByTagName","getAttribute","removeAttribute","style","selectFont","toggleColorPicker","selectColor","closePicker","Renderer2","MenuType","FOR_SIGNATURE","FOR_ANNOTATION","ContextMenuComponent","formatting","lock","translation","changeFormatting","removeItem","copySign","lockOut","comment","changeScale","saveChanges","deleteItem","toggleLock","onCopySign","isSignature","menuType","isAnnotation","addComment","providers","CommonComponentsModule","library","fas","far","NgModule","imports","CommonModule","FontAwesomeModule","ClickOutsideModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {Component, Input} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-top-toolbar',\r\n templateUrl: './top-toolbar.component.html',\r\n styleUrls: ['./top-toolbar.component.less']\r\n})\r\nexport class TopToolbarComponent {\r\n\r\n constructor() {\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-side-panel',\r\n templateUrl: './side-panel.component.html',\r\n styleUrls: ['./side-panel.component.less']\r\n})\r\n\r\nexport class SidePanelComponent {\r\n @Input() title: string;\r\n @Input() icon: string;\r\n @Input() closable = true;\r\n @Input() saveable = true;\r\n @Output() hideSidePanel = new EventEmitter();\r\n @Output() saveInSidePanel = new EventEmitter();\r\n\r\n onlyTitle = false;\r\n\r\n constructor() {\r\n }\r\n\r\n closeSidePanel() {\r\n this.hideSidePanel.emit(true);\r\n }\r\n\r\n saveBySidePanel() {\r\n this.saveInSidePanel.emit(true);\r\n }\r\n\r\n toggleTitleMode(){\r\n if (this.closable && !this.saveable) {\r\n this.onlyTitle = !this.onlyTitle;\r\n }\r\n }\r\n}\r\n","import {fromEvent, Observable, Subject} from \"rxjs\";\r\nimport {debounceTime, distinctUntilChanged, startWith, tap} from \"rxjs/operators\";\r\n\r\nconst MOBILE_MAX_WIDTH = 425;\r\nconst TABLET_MAX_WIDTH = 1024;\r\n\r\nexport class WindowService {\r\n\r\n private resizeSubject: Subject = new Subject();\r\n private _resize$;\r\n private width: number;\r\n private height: number;\r\n\r\n constructor() {\r\n this.width = window.innerWidth;\r\n this.height = window.innerHeight;\r\n\r\n this._resize$ = fromEvent(window, 'resize')\r\n .pipe(\r\n debounceTime(200),\r\n distinctUntilChanged(),\r\n startWith({target: {innerWidth: window.innerWidth, innerHeight: window.innerHeight}}),\r\n tap(event => {\r\n this.resizeSubject.next(event.target);\r\n this.width = (event.target as Window).innerWidth;\r\n this.height = (event.target as Window).innerHeight;\r\n }),\r\n );\r\n this._resize$.subscribe();\r\n }\r\n\r\n get onResize(): Observable {\r\n return this.resizeSubject.asObservable();\r\n }\r\n\r\n isMobile() {\r\n return this.width <= MOBILE_MAX_WIDTH;\r\n }\r\n\r\n isTablet() {\r\n return this.width <= TABLET_MAX_WIDTH;\r\n }\r\n\r\n isDesktop() {\r\n return !this.isMobile() && !this.isTablet();\r\n }\r\n\r\n getWidth() {\r\n return this.width;\r\n }\r\n\r\n getHeight() {\r\n return this.height;\r\n }\r\n\r\n isEdge() {\r\n return window.navigator.userAgent.toLowerCase().indexOf('edge') > -1;\r\n }\r\n\r\n isFirefox() {\r\n return navigator.userAgent.toLowerCase().indexOf('firefox') > -1;\r\n }\r\n}\r\n","import {Component, Input} from '@angular/core';\r\nimport {WindowService} from \"../window.service\";\r\n\r\n@Component({\r\n selector: 'gd-button',\r\n templateUrl: './button.component.html',\r\n styleUrls: ['./button.component.less']\r\n})\r\nexport class ButtonComponent {\r\n @Input() iconOnly = true;\r\n @Input() intent = 'default';\r\n @Input() disabled = false;\r\n @Input() icon: string;\r\n @Input() iconClass: string;\r\n @Input() tooltip: string;\r\n @Input() className: string;\r\n @Input() toggle = false;\r\n @Input() iconSize: string;\r\n @Input() iconRegular = false;\r\n @Input() elementPosition = 0;\r\n\r\n showToolTip = false;\r\n private isDesktop: boolean;\r\n\r\n constructor(windowService: WindowService) {\r\n this.isDesktop = windowService.isDesktop();\r\n windowService.onResize.subscribe((w) => {\r\n this.isDesktop = windowService.isDesktop();\r\n });\r\n }\r\n\r\n iconButtonClass() {\r\n return this.iconOnly ? 'icon-button' : '';\r\n }\r\n\r\n onHovering() {\r\n if (this.isDesktop && !this.disabled) {\r\n this.className += ' active';\r\n }\r\n }\r\n\r\n onUnhovering() {\r\n if (this.isDesktop && !this.disabled) {\r\n this.className = this.cleanAll(this.className, ' active');\r\n }\r\n }\r\n\r\n private cleanAll(str: string, val: string) {\r\n while (str && str.indexOf(val) !== -1) {\r\n str = str.replace(val, '');\r\n }\r\n return str;\r\n }\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-logo',\r\n templateUrl: './logo.component.html',\r\n styleUrls: ['./logo.component.less']\r\n})\r\nexport class LogoComponent implements OnInit {\r\n\r\n @Input() logo;\r\n @Input() icon;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-tooltip',\r\n templateUrl: './tooltip.component.html',\r\n styleUrls: ['./tooltip.component.less']\r\n})\r\nexport class TooltipComponent implements OnInit {\r\n\r\n @Input() text: string;\r\n @Input() position = 0;\r\n visibility = 'hidden';\r\n\r\n constructor() {\r\n }\r\n\r\n getClass() {\r\n if (this.position === 0) {\r\n return 'tooltip';\r\n }\r\n return 'tooltip ' + (this.position > 0 ? 'last-element' : 'first-element');\r\n }\r\n\r\n @Input()\r\n set show(value: boolean) {\r\n this.visibility = value ? 'shown' : 'hidden';\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {HttpHeaders} from \"@angular/common/http\";\r\nimport {Injectable} from \"@angular/core\";\r\n\r\nexport class Api {\r\n public static VIEWER_APP = '/viewer';\r\n public static SIGNATURE_APP = '/signature';\r\n public static ANNOTATION_APP = '/annotation';\r\n public static SEARCH_APP = '/search';\r\n public static EDITOR_APP = '/editor';\r\n public static COMPARISON_APP = '/comparison';\r\n public static CONVERSION_APP = '/conversion';\r\n public static METADATA_APP = '/metadata';\r\n public static DEFAULT_API_ENDPOINT = window.location.href;\r\n public static LOAD_FILE_TREE = '/loadFileTree';\r\n public static LOAD_CONFIG = '/loadConfig';\r\n public static LOAD_DOCUMENT_DESCRIPTION = '/loadDocumentDescription';\r\n public static LOAD_DOCUMENT_PAGE = '/loadDocumentPage';\r\n public static LOAD_DOCUMENT_PROPERTIES = '/loadProperties';\r\n public static LOAD_DOCUMENT_PROPERTIES_NAMES = '/loadPropertiesNames';\r\n public static SAVE_PROPERTY = '/saveProperty';\r\n public static REMOVE_PROPERTY = '/removeProperty';\r\n public static ROTATE_DOCUMENT_PAGE = '/rotateDocumentPages';\r\n public static UPLOAD_DOCUMENTS = '/uploadDocument';\r\n public static DOWNLOAD_DOCUMENTS = '/downloadDocument';\r\n public static LOAD_PRINT = '/loadPrint';\r\n public static LOAD_PRINT_PDF = '/printPdf';\r\n public static LOAD_THUMBNAILS = '/loadThumbnails';\r\n public static LOAD_FORMATS = '/loadFormats';\r\n public static SAVE_FILE = '/saveFile';\r\n public static CREATE_FILE = '/createFile';\r\n public static COMPARE_FILES = '/compare';\r\n public static CONVERT_FILE = '/convert';\r\n public static DELETE_SIGNATURE_FILE = '/deleteSignatureFile';\r\n public static REMOVE_FROM_INDEX = '/removeFromIndex';\r\n public static GET_FILE_STATUS = '/getFileStatus';\r\n public static SAVE_OPTICAL_CODE = '/saveOpticalCode';\r\n public static SAVE_TEXT = '/saveText';\r\n public static SAVE_IMAGE = '/saveImage';\r\n public static SAVE_STAMP = '/saveStamp';\r\n public static SIGN = '/sign';\r\n public static DOWNLOAD_SIGNED = '/downloadSigned';\r\n public static LOAD_SIGNATURE_IMAGE = '/loadSignatureImage';\r\n public static ANNOTATE = '/annotate';\r\n public static SEARCH = '/search';\r\n public static ADD_FILES_TO_INDEX = '/addFilesToIndex';\r\n\r\n public static httpOptionsJson = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n })\r\n };\r\n public static httpOptionsJsonResponseTypeBlob = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n }),\r\n responseType: 'blob' as 'blob'\r\n };\r\n}\r\n\r\n@Injectable()\r\nexport class ConfigService {\r\n\r\n private _apiEndpoint: string;\r\n\r\n constructor() {\r\n this.apiEndpoint = Api.DEFAULT_API_ENDPOINT;\r\n }\r\n\r\n set apiEndpoint(url: string) {\r\n this._apiEndpoint = url && url.trim().endsWith('/') ? url.substring(0, url.length - 1) : url;\r\n }\r\n\r\n getConfigEndpoint(app) {\r\n return (this.apiEndpoint.endsWith(app) ? this.apiEndpoint : this.apiEndpoint + app) + Api.LOAD_CONFIG;\r\n }\r\n\r\n getViewerApiEndpoint() {\r\n return this._apiEndpoint.endsWith(Api.VIEWER_APP) ? this._apiEndpoint : this._apiEndpoint + Api.VIEWER_APP;\r\n }\r\n\r\n getEditorApiEndpoint() {\r\n return this._apiEndpoint.trim().endsWith(Api.EDITOR_APP) ? this._apiEndpoint : this._apiEndpoint + Api.EDITOR_APP;\r\n }\r\n\r\n getComparisonApiEndpoint() {\r\n return this._apiEndpoint.trim().endsWith(Api.COMPARISON_APP) ? this._apiEndpoint : this._apiEndpoint + Api.COMPARISON_APP;\r\n }\r\n\r\n getConversionApiEndpoint() {\r\n return this._apiEndpoint.trim().endsWith(Api.CONVERSION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.CONVERSION_APP;\r\n }\r\n\r\n getMetadataApiEndpoint() {\r\n return this._apiEndpoint.trim().endsWith(Api.METADATA_APP) ? this._apiEndpoint : this._apiEndpoint + Api.METADATA_APP;\r\n }\r\n\r\n get apiEndpoint() {\r\n return this._apiEndpoint;\r\n }\r\n\r\n getSignatureApiEndpoint() {\r\n return this._apiEndpoint.endsWith(Api.SIGNATURE_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SIGNATURE_APP;\r\n }\r\n\r\n getAnnotationApiEndpoint() {\r\n return this._apiEndpoint.endsWith(Api.ANNOTATION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.ANNOTATION_APP;\r\n }\r\n\r\n getSearchApiEndpoint() {\r\n return this._apiEndpoint.endsWith(Api.SEARCH_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SEARCH_APP;\r\n }\r\n}\r\n","export class CommonModals {\r\n static PasswordRequired = \"gd-password-required\";\r\n static ErrorMessage = \"gd-error-message\";\r\n static BrowseFiles = \"gd-browse-files\";\r\n static CreateDocument = \"gd-create-document\";\r\n static OperationSuccess = \"gd-success-modal\";\r\n static DrawHandSignature = \"gd-draw-hand-signature\";\r\n static DrawStampSignature = \"gd-draw-stamp-signature\";\r\n static InformationMessage = \"gd-information-message\";\r\n}\r\n\r\nexport class ModalService {\r\n private modals: any[] = [];\r\n\r\n add(modal: any) {\r\n this.modals.push(modal);\r\n }\r\n\r\n remove(id: string) {\r\n this.modals = this.modals.filter(x => x.id !== id);\r\n }\r\n\r\n open(id: string) {\r\n const modal: any = this.modals.filter(x => x.id === id)[0];\r\n if (modal) {\r\n modal.open();\r\n }\r\n }\r\n\r\n close(id: string) {\r\n const modal: any = this.modals.filter(x => x.id === id)[0];\r\n if (modal) {\r\n modal.close();\r\n }\r\n }\r\n}\r\n","import {Component, ElementRef, EventEmitter, Input, OnDestroy, OnInit, Output} from '@angular/core';\r\nimport {ModalService} from \"../modal.service\";\r\n\r\n@Component({\r\n selector: 'gd-modal',\r\n templateUrl: './modal.component.html',\r\n styleUrls: ['./modal.component.less']\r\n})\r\nexport class ModalComponent implements OnInit, OnDestroy {\r\n @Input() id: string;\r\n @Input() title: string;\r\n @Output() visible = new EventEmitter();\r\n @Output() cancel = new EventEmitter();\r\n visibility = false;\r\n private element: any;\r\n\r\n constructor(private modalService: ModalService, el: ElementRef) {\r\n this.element = el.nativeElement;\r\n }\r\n\r\n ngOnInit(): void {\r\n if (!this.id) {\r\n console.error('modal must have an id');\r\n return;\r\n }\r\n\r\n document.body.appendChild(this.element);\r\n\r\n this.modalService.add(this);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.modalService.remove(this.id);\r\n this.element.remove();\r\n }\r\n\r\n open(): void {\r\n this.visibility = true;\r\n this.visible.emit(true);\r\n }\r\n\r\n close(): void {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.visibility = false;\r\n this.visible.emit(false);\r\n }\r\n\r\n onClose($event: MouseEvent) {\r\n $event.stopPropagation();\r\n if ($event && $event.target && ($event.target).id === 'modalDialog') {\r\n this.close();\r\n }\r\n }\r\n\r\n cancelClose() {\r\n this.cancel.emit(false);\r\n this.close();\r\n }\r\n}\r\n","export class PageModel {\r\n data: string;\r\n angle: number;\r\n width: number;\r\n height: number;\r\n number: number;\r\n editable: boolean;\r\n}\r\n\r\nexport class RotatedPage {\r\n pageNumber: number;\r\n angle: number;\r\n}\r\n\r\nexport class FileCredentials {\r\n guid: string;\r\n password: string;\r\n\r\n constructor(guid: string, password: string) {\r\n this.guid = guid;\r\n this.password = password;\r\n }\r\n}\r\n\r\nexport class SaveFile extends FileCredentials {\r\n content: string;\r\n\r\n constructor(guid: string, password: string, content: string) {\r\n super(guid, password);\r\n this.content = content;\r\n }\r\n}\r\n\r\nexport class FileDescription {\r\n guid: string;\r\n pages: PageModel[];\r\n printAllowed = true;\r\n showGridLines: boolean;\r\n thumbnails: PageModel[];\r\n}\r\n\r\nexport class FileModel {\r\n guid: string;\r\n name: string;\r\n directory: boolean;\r\n size: number;\r\n isDirectory: boolean;\r\n}\r\n\r\nexport class HttpError {\r\n static BadRequest = 400;\r\n static Unauthorized = 401;\r\n static Forbidden = 403;\r\n static NotFound = 404;\r\n static TimeOut = 408;\r\n static Conflict = 409;\r\n static InternalServerError = 500;\r\n}\r\n\r\nexport class Utils {\r\n public static getMousePosition(event) {\r\n const mouse = {\r\n x: 0,\r\n y: 0\r\n };\r\n const wEvent: DragEvent = window.event;\r\n const ev = event || wEvent; //Moz || IE\r\n if (ev.pageX || wEvent.pageX || wEvent.screenX || (ev.touches && ev.touches[0] && ev.touches[0].pageX)) { //Moz\r\n const pageX = typeof ev.pageX !== \"undefined\" && ev.pageX !== 0 ? ev.pageX : wEvent.pageX;\r\n const pageY = typeof ev.pageY !== \"undefined\" && ev.pageY !== 0 ? ev.pageY : wEvent.pageY;\r\n const screenX = typeof wEvent.screenX !== \"undefined\" && wEvent.screenY !== 0;\r\n const screenY = typeof wEvent.screenY !== \"undefined\" && wEvent.screenY !== 0;\r\n mouse.x = pageX ? pageX : (screenX ? wEvent.screenX : ev.touches[0].pageX);\r\n mouse.y = pageY ? pageY : (screenY ? wEvent.screenY : ev.touches[0].pageY);\r\n } else if (ev.clientX) { //IE\r\n mouse.x = ev.clientX + document.body.scrollLeft;\r\n mouse.y = ev.clientY + document.body.scrollTop;\r\n }\r\n return mouse;\r\n }\r\n\r\n public static toRgb(color: string) {\r\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(color);\r\n if (result) {\r\n const r = parseInt(result[1], 16);\r\n const g = parseInt(result[2], 16);\r\n const b = parseInt(result[3], 16);\r\n return result ? 'rgb(' + r + ',' + g + ',' + b + ')' : '';\r\n }\r\n return color;\r\n }\r\n\r\n public static toHex(color: string) {\r\n // check if color is standard hex value\r\n if (color.match(/[0-9A-F]{6}|[0-9A-F]{3}$/i)) {\r\n return (color.charAt(0) === \"#\") ? color : (\"#\" + color);\r\n // check if color is RGB value -> convert to hex\r\n } else if (color.match(/^rgb\\(\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*\\)$/)) {\r\n const c = ([parseInt(RegExp.$1, 10), parseInt(RegExp.$2, 10), parseInt(RegExp.$3, 10)]),\r\n pad = function (str) {\r\n if (str.length < 2) {\r\n for (let i = 0, len = 2 - str.length; i < len; i++) {\r\n str = '0' + str;\r\n }\r\n }\r\n return str;\r\n };\r\n if (c.length === 3) {\r\n const r = pad(c[0].toString(16)),\r\n g = pad(c[1].toString(16)),\r\n b = pad(c[2].toString(16));\r\n return '#' + r + g + b;\r\n }\r\n // else do nothing\r\n } else {\r\n return '';\r\n }\r\n }\r\n}\r\n\r\nexport class FileUtil {\r\n public static map = {\r\n 'folder': {'format': '', 'icon': 'folder'},\r\n 'pdf': {'format': 'Portable Document Format', 'icon': 'file-pdf', 'unit': 'pt'},\r\n 'doc': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'docx': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'docm': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'dot': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'dotx': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'dotm': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'xls': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xlsx': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xlsm': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xlsb': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xls2003': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xltx': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xltm': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'ppt': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'pptx': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'pps': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'ppsx': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'vsd': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vdx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vss': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vsx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vst': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vtx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vsdx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vdw': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vstx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vssx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'mpp': {'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'mpt': {'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'msg': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'eml': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'emlx': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'one': {'format': 'Microsoft OneNote', 'icon': 'file-word', 'unit': 'pt'},\r\n 'odt': {'format': 'Open Document Text', 'icon': 'file-word', 'unit': 'pt'},\r\n 'ott': {'format': 'Open Document Text Template', 'icon': 'file-word', 'unit': 'pt'},\r\n 'ods': {'format': 'Open Document Spreadsheet', 'icon': 'file-excel', 'unit': 'px'},\r\n 'odp': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'otp': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'ots': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'potx': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'potm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'pptm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'ppsm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'rtf': {'format': 'Rich Text Format', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'txt': {'format': 'Plain Text File', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'csv': {'format': 'Comma-Separated Values', 'icon': 'file-excel', 'unit': 'px'},\r\n 'html': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\r\n 'mht': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\r\n 'mhtml': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\r\n 'xml': {'format': 'Extensible Markup Language', 'icon': 'file-word', 'unit': 'pt'},\r\n 'xps': {'format': 'XML Paper Specification', 'icon': 'file-word', 'unit': 'pt'},\r\n 'dxf': {'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'dwg': {'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'bmp': {'format': 'Bitmap Picture', 'icon': 'file-image', 'unit': 'px'},\r\n 'gif': {'format': 'Graphics Interchange Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'jpg': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\r\n 'jpe': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\r\n 'jpeg': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\r\n 'jfif': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\r\n 'png': {'format': 'Portable Network Graphics', 'icon': 'file-image', 'unit': 'px'},\r\n 'tiff': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'tif': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'psd': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'svg': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'jp2': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'epub': {'format': 'Electronic Publication', 'icon': 'file-pdf', 'unit': 'pt'},\r\n 'ico': {'format': 'Windows Icon', 'icon': 'file-image', 'unit': 'px'},\r\n 'webp': {'format': 'Compressed Image', 'icon': 'file-image', 'unit': 'px'},\r\n 'mobi': {'format': 'Mobipocket eBook', 'icon': 'file-pdf', 'unit': 'pt'},\r\n 'tex': {'format': 'LaTeX Source Document', 'icon': 'file-pdf', 'unit': 'pt'},\r\n 'djvu': {'format': 'Multi-Layer Raster Image', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'unknown': {'format': 'This format is not supported', 'icon': 'file'},\r\n };\r\n\r\n public static find(filename: string, isDirectory: boolean) {\r\n if (filename && !isDirectory) {\r\n const strings = filename.split('.');\r\n const name = strings.pop().toLowerCase();\r\n if (typeof FileUtil.map[name] === \"undefined\") {\r\n return strings.length > 0 ? FileUtil.map['unknown'] : FileUtil.map['folder'];\r\n } else {\r\n return FileUtil.map[name];\r\n }\r\n } else {\r\n return FileUtil.map['folder'];\r\n }\r\n }\r\n}\r\n\r\nexport class FileService {\r\n\r\n constructor() {\r\n }\r\n}\r\n","import {Observable, Observer} from \"rxjs\";\r\n\r\nexport class UploadFilesService {\r\n private _uploadsChange: Observable;\r\n private _observer: Observer;\r\n\r\n constructor() {\r\n this._uploadsChange = new Observable(observer =>\r\n this._observer = observer);\r\n }\r\n\r\n get uploadsChange(): Observable {\r\n return this._uploadsChange;\r\n }\r\n\r\n changeFilesList(filesList: FileList) {\r\n this._observer.next(filesList);\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {FileModel, FileUtil} from \"../file.service\";\r\nimport {UploadFilesService} from \"../upload-files.service\";\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\nconst upload_disc = 'Disc';\r\n\r\nconst upload_url = 'URL';\r\n\r\nconst uploads_choices = [{name: upload_disc, icon: 'hdd'}, {name: upload_url, icon: 'link'}];\r\n\r\n@Component({\r\n selector: 'gd-browse-files-modal',\r\n templateUrl: './browse-files-modal.component.html',\r\n styleUrls: ['./browse-files-modal.component.less']\r\n})\r\nexport class BrowseFilesModalComponent implements OnInit {\r\n uploads = uploads_choices;\r\n\r\n @Input() files;\r\n @Input() uploadConfig;\r\n @Output() selectedFileGuid = new EventEmitter();\r\n @Output() selectedDirectory = new EventEmitter();\r\n @Output() urlForUpload = new EventEmitter();\r\n @Output() closing = new EventEmitter();\r\n private selectedFile: FileModel;\r\n showUploadUrl = false;\r\n showUploadFile = false;\r\n\r\n constructor(private _uploadService: UploadFilesService) {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n getSize(size: number) {\r\n const mb = size / 1024 / 1024;\r\n if (mb > 1) {\r\n return (Math.round(mb * 100) / 100) + ' MB';\r\n } else {\r\n const kb = size / 1024;\r\n if (kb > 1) {\r\n return (Math.round(kb * 100) / 100) + ' KB';\r\n }\r\n }\r\n return size + ' Bytes';\r\n }\r\n\r\n getFormatName(file: FileModel) {\r\n return FileUtil.find(file.name, file.directory).format;\r\n }\r\n\r\n getFormatIcon(file: FileModel) {\r\n return FileUtil.find(file.name, file.directory).icon;\r\n }\r\n\r\n choose(file: FileModel) {\r\n this.selectedFile = file;\r\n if (file.directory || file.isDirectory) {\r\n this.selectedDirectory.emit(file.name);\r\n } else {\r\n this.selectedFileGuid.emit(file.guid);\r\n }\r\n }\r\n\r\n goUp() {\r\n if (this.selectedFile) {\r\n let guid = this.selectedFile.guid;\r\n if (guid.length > 0 && guid.indexOf('/') === -1) {\r\n guid = '';\r\n } else {\r\n guid = guid.replace(/\\/[^\\/]+\\/?$/, '');\r\n }\r\n this.selectedDirectory.emit(guid);\r\n }\r\n }\r\n\r\n selectUpload($event: string) {\r\n if (upload_url === $event) {\r\n this.showUploadUrl = true;\r\n } else {\r\n this.showUploadUrl = false;\r\n $(\"#gd-upload-input\").trigger('click');\r\n }\r\n }\r\n\r\n refresh($event) {\r\n\r\n if ($event) {\r\n this.files = null;\r\n this.selectedDirectory.emit('');\r\n this.showUploadUrl = false;\r\n this.selectedFile = null;\r\n } else {\r\n this.closing.emit(true);\r\n }\r\n }\r\n\r\n showSpinner() {\r\n return !this.files;\r\n }\r\n\r\n uploadUrl(url: string) {\r\n if (url) {\r\n this.urlForUpload.emit(url);\r\n this.cleanUpload();\r\n }\r\n }\r\n\r\n handleFileInput(files: FileList) {\r\n this._uploadService.changeFilesList(files);\r\n }\r\n\r\n cleanUpload() {\r\n this.showUploadFile = false;\r\n this.showUploadUrl = false;\r\n }\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class ZoomService {\r\n private _observer: Subject = new Subject();\r\n private readonly _zoomChange: Observable = this._observer.asObservable();\r\n private _zoom: number;\r\n\r\n constructor() {\r\n }\r\n\r\n get zoom(): number {\r\n return this._zoom;\r\n }\r\n\r\n get zoomChange(): Observable {\r\n return this._zoomChange;\r\n }\r\n\r\n changeZoom(zoom: number) {\r\n this._zoom = zoom;\r\n this._observer.next(zoom);\r\n }\r\n\r\n private createZoomOption(val: any, name: string, sep: boolean = false) {\r\n return {value: val, name: name, separator: sep}\r\n }\r\n\r\n zoomOptions(width, height) {\r\n return [this.createZoomOption(25, '25%'),\r\n this.createZoomOption(50, '50%'),\r\n this.createZoomOption(100,'100%'),\r\n this.createZoomOption(150, '150%'),\r\n this.createZoomOption(200, '200%'),\r\n this.createZoomOption(300, '300%'),\r\n this.createZoomOption(0, '', true),\r\n this.createZoomOption(width, 'Fit Width'),\r\n this.createZoomOption(height, 'Fit Height')];\r\n }\r\n}\r\n","import {Observable, Observer} from \"rxjs\";\r\n\r\nexport class PagePreloadService {\r\n private readonly _checkPreload: Observable;\r\n private _observer: Observer;\r\n\r\n constructor() {\r\n this._checkPreload = new Observable(observer =>\r\n this._observer = observer);\r\n }\r\n\r\n get checkPreload(): Observable {\r\n return this._checkPreload;\r\n }\r\n\r\n changeLastPageInView(page: number) {\r\n if(this._observer) {\r\n this._observer.next(page);\r\n }\r\n }\r\n}\r\n","import {BehaviorSubject, Observable} from \"rxjs\";\r\nimport {PagePreloadService} from \"./page-preload.service\";\r\nimport {Injectable} from \"@angular/core\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NavigateService {\r\n private _currentPage = 0;\r\n private _countPages = 0;\r\n private _observer: BehaviorSubject = new BehaviorSubject(null);\r\n private _navigate: Observable = this._observer.asObservable();\r\n\r\n constructor(private _pagePreloadService: PagePreloadService) {\r\n }\r\n\r\n get navigate(): Observable {\r\n return this._navigate;\r\n }\r\n\r\n get countPages(): number {\r\n return this._countPages;\r\n }\r\n\r\n set countPages(value: number) {\r\n this._countPages = value;\r\n }\r\n\r\n get currentPage(): number {\r\n return this._currentPage;\r\n }\r\n\r\n set currentPage(value: number) {\r\n this._currentPage = value;\r\n }\r\n\r\n nextPage() {\r\n if (this._currentPage < this._countPages) {\r\n this._currentPage++;\r\n this.navigateTo(this._currentPage);\r\n }\r\n }\r\n\r\n prevPage() {\r\n if (this._currentPage > 1) {\r\n this._currentPage--;\r\n this.navigateTo(this._currentPage);\r\n }\r\n }\r\n\r\n toLastPage() {\r\n this._currentPage = this._countPages;\r\n this.navigateTo(this._currentPage);\r\n }\r\n\r\n toFirstPage() {\r\n this._currentPage = 1;\r\n this.navigateTo(this._currentPage);\r\n }\r\n\r\n navigateTo(page: number) {\r\n this.currentPage = page;\r\n this._pagePreloadService.changeLastPageInView(page);\r\n this._observer.next(page);\r\n }\r\n}\r\n","import {\r\n AfterViewChecked,\r\n Component,\r\n ElementRef,\r\n Input,\r\n OnInit,\r\n AfterViewInit,\r\n OnChanges,\r\n Output,\r\n EventEmitter\r\n} from '@angular/core';\r\nimport {FileDescription, FileUtil} from \"../file.service\";\r\nimport {ZoomService} from \"../zoom.service\";\r\nimport * as Hammer from 'hammerjs';\r\nimport {WindowService} from '../window.service';\r\nimport * as jquery from 'jquery';\r\nimport { NavigateService } from '../navigate.service';\r\n\r\nconst $ = jquery;\r\n\r\n@Component({\r\n selector: 'gd-document',\r\n templateUrl: './document.component.html',\r\n styleUrls: ['./document.component.less']\r\n})\r\nexport class DocumentComponent implements OnInit, AfterViewChecked, AfterViewInit, OnChanges {\r\n\r\n @Input() mode: boolean;\r\n @Input() preloadPageCount: number;\r\n @Input() file: FileDescription;\r\n @Input() selectedPage: number;\r\n wait = false;\r\n zoom: number;\r\n\r\n docWidth = null;\r\n docHeight = null;\r\n viewportWidth = null;\r\n viewportHeight = null;\r\n scale = null;\r\n lastScale = null;\r\n container = null;\r\n doc = null;\r\n x = 0;\r\n lastX = 0;\r\n y = 0;\r\n lastY = 0;\r\n pinchCenter = null;\r\n pinchCenterOffset = null;\r\n curWidth = 0;\r\n curHeight = 0;\r\n isDesktop: boolean;\r\n\r\n constructor(protected _elementRef: ElementRef,\r\n private _zoomService: ZoomService,\r\n private _windowService: WindowService,\r\n private _navigateService: NavigateService,) {\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n this.zoom = val;\r\n });\r\n\r\n this.isDesktop = _windowService.isDesktop();\r\n\r\n this._navigateService.navigate.subscribe(((\r\n value => {\r\n this.selectedPage = value;\r\n })));\r\n }\r\n\r\n ngOnInit() {\r\n if (this.ifPresentation())\r\n {\r\n this.selectedPage = this._navigateService.currentPage;\r\n }\r\n }\r\n\r\n ngOnChanges() {\r\n }\r\n\r\n ngAfterViewInit() {\r\n // For current iteration we take .panzoom as a document\r\n this.doc = this._elementRef.nativeElement.children.item(0).children.item(0);\r\n // For current iteration we take .gd-document as a container\r\n this.container = this._elementRef.nativeElement;\r\n\r\n this.docWidth = this.doc.clientWidth;\r\n this.docHeight = this.doc.clientHeight;\r\n this.viewportWidth = this.doc.offsetWidth;\r\n\r\n // For cases where we already have zoom defined we should include it\r\n this.scale = (this.viewportWidth / this.docWidth) * this._zoomService.zoom / 100;\r\n\r\n this.lastScale = this.scale;\r\n this.viewportHeight = this.container.offsetHeight;\r\n this.curWidth = this.docWidth * this.scale;\r\n this.curHeight = this.docHeight * this.scale;\r\n\r\n const hammer = new Hammer(this.container);\r\n }\r\n\r\n // TODO: this temporary crutch for Excel files should be documented\r\n ifExcel() {\r\n return FileUtil.find(this.file.guid, false).format === \"Microsoft Excel\";\r\n }\r\n\r\n ifPresentation() {\r\n return FileUtil.find(this.file.guid, false).format === \"Microsoft PowerPoint\";\r\n }\r\n\r\n getDimensionWithUnit(value: number, pageNumber: number) {\r\n return this.ifPresentation() && !this.isVisible(pageNumber) ? 0 : value + (this.mode ? FileUtil.find(this.file.guid, false).unit : 'px');\r\n }\r\n\r\n ifEdge() {\r\n return navigator.userAgent.toLowerCase().indexOf('edge') > -1;\r\n }\r\n\r\n ngAfterViewChecked(): void {\r\n const elementNodeListOf = this._elementRef.nativeElement.querySelectorAll('.gd-wrapper');\r\n const element = elementNodeListOf.item(0);\r\n if (element) {\r\n $(element).trigger('focus');\r\n }\r\n }\r\n\r\n isVisible(pageNumber) {\r\n if (this.ifPresentation()) {\r\n return pageNumber === this.selectedPage ? true : false;\r\n }\r\n else {\r\n return true;\r\n }\r\n }\r\n}\r\n","import {Component, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-page',\r\n templateUrl: './page.component.html',\r\n styleUrls: ['./page.component.less']\r\n})\r\nexport class PageComponent implements OnInit, OnChanges {\r\n\r\n @Input() angle: number;\r\n @Input() width: number;\r\n @Input() height: number;\r\n @Input() number: number;\r\n @Input() data: string;\r\n @Input() isHtml: boolean;\r\n @Input() editable: boolean;\r\n imgData: string;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n const isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\r\n if(isIE && this.number === 0){\r\n this.editable = false;\r\n }\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n // TODO: this is temporary needed to remove unneeded spaces and BOM symbol \r\n // which leads to undesired spaces on the top of the docs pages\r\n this.data = this.data !== null ? this.data.replace(/>\\s+<')\r\n .replace(/\\uFEFF/g,\"\")\r\n .replace(/href=\"\\/viewer/g, 'href=\"http://localhost:8080/viewer')\r\n .replace(/src=\"\\/viewer/g, 'src=\"http://localhost:8080/viewer')\r\n .replace(/data=\"\\/viewer/g, 'data=\"http://localhost:8080/viewer')\r\n : null;\r\n const dataImagePngBase64 = 'data:image/png;base64,';\r\n this.imgData = dataImagePngBase64;\r\n if (!this.isHtml) {\r\n this.imgData += this.data;\r\n }\r\n }\r\n}\r\n","import {Pipe, PipeTransform} from '@angular/core';\r\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\r\n\r\n@Pipe({name: 'safeHtml'})\r\nexport class SanitizeHtmlPipe implements PipeTransform{\r\n constructor(private sanitizer: DomSanitizer) {\r\n }\r\n\r\n transform(html: string): SafeHtml {\r\n return this.sanitizer.bypassSecurityTrustHtml(html);\r\n }\r\n}\r\n\r\n@Pipe({name: 'safeResourceHtml'})\r\nexport class SanitizeResourceHtmlPipe implements PipeTransform{\r\n constructor(private sanitizer: DomSanitizer) {\r\n }\r\n\r\n transform(html: string): SafeHtml {\r\n return this.sanitizer.bypassSecurityTrustResourceUrl(html);\r\n }\r\n}\r\n\r\n@Pipe({name: 'safeStyle'})\r\nexport class SanitizeStylePipe implements PipeTransform{\r\n constructor(private sanitizer: DomSanitizer) {\r\n }\r\n\r\n transform(html: string): SafeHtml {\r\n return this.sanitizer.bypassSecurityTrustStyle(html);\r\n }\r\n}\r\n\r\n@Pipe({name: 'highlight'})\r\nexport class HighlightSearchPipe implements PipeTransform {\r\n\r\n transform(value: string, args: string): any {\r\n if (!args) {\r\n return value;\r\n }\r\n const re = new RegExp(args, 'gi'); //'gi' for case insensitive and can use 'g' if you want the search to be case sensitive.\r\n return value.replace(re, \"$&\");\r\n }\r\n}\r\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\r\nimport {UploadFilesService} from \"../upload-files.service\";\r\n\r\n@Component({\r\n selector: 'gd-upload-file-zone',\r\n templateUrl: './upload-file-zone.component.html',\r\n styleUrls: ['./upload-file-zone.component.less']\r\n})\r\nexport class UploadFileZoneComponent implements OnInit {\r\n\r\n @Output() closeUpload = new EventEmitter();\r\n\r\n constructor(private _uploadService: UploadFilesService) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n handleFileInput(files: FileList) {\r\n this._uploadService.changeFilesList(files);\r\n this.onCloseUpload();\r\n }\r\n\r\n onCloseUpload() {\r\n this.closeUpload.emit(true);\r\n }\r\n\r\n close($event) {\r\n if ($event.target.id === 'gd-dropZone') {\r\n this.onCloseUpload();\r\n }\r\n }\r\n}\r\n","import {Directive, EventEmitter, HostBinding, HostListener, Input, Output} from '@angular/core';\r\nimport {UploadFilesService} from \"./upload-files.service\";\r\n\r\n@Directive({\r\n selector: '[gdDnd]'\r\n})\r\nexport class DndDirective {\r\n\r\n @Output() closing = new EventEmitter();\r\n @Output() opening = new EventEmitter();\r\n @Output() dropped = new EventEmitter();\r\n\r\n @HostBinding('class.active') active = false;\r\n\r\n private dragCounter = 0;\r\n\r\n constructor(protected _uploadFilesService: UploadFilesService) {\r\n }\r\n\r\n @HostListener('dragenter', ['$event'])\r\n public onDragEnter(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.dragCounter++;\r\n this.active = true;\r\n this.opening.emit(true);\r\n }\r\n\r\n @HostListener('dragover', ['$event'])\r\n public onDragOver(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n return false;\r\n }\r\n\r\n @HostListener('dragleave', ['$event'])\r\n public onDragLeave(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.dragCounter--;\r\n if (this.dragCounter === 0) {\r\n this.active = false;\r\n this.closeArea();\r\n }\r\n }\r\n\r\n @HostListener('drop', ['$event'])\r\n public onDrop(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n const files = evt.dataTransfer.files;\r\n if (files.length > 0) {\r\n this.active = false;\r\n this.dropped.emit(true);\r\n this._uploadFilesService.changeFilesList(files);\r\n this.closeArea();\r\n }\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n public onClick(event) {\r\n this.closeArea();\r\n }\r\n\r\n private closeArea() {\r\n this.closing.emit(true);\r\n this.opening.emit(false);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ViewportService {\r\n\r\n constructor() {\r\n }\r\n\r\n checkInViewport(el, zoom: number = 100, leftOffset: number = 0, deltaX: number = 0.5) {\r\n if (!el) {\r\n return false;\r\n }\r\n const x = deltaX;\r\n const y = 0.5;\r\n\r\n const win = $(window);\r\n\r\n const viewport = {\r\n top: win.scrollTop(),\r\n left: win.scrollLeft() + leftOffset,\r\n right: win.scrollLeft() + win.width() - 10,\r\n bottom: win.scrollTop() + win.height()\r\n };\r\n\r\n\r\n if (isNaN(zoom)) {\r\n zoom = 100;\r\n }\r\n\r\n const zoomN = zoom / 100;\r\n const height = $(el).outerHeight() * (zoomN);\r\n const width = $(el).outerWidth() * (zoomN);\r\n\r\n if (!width || !height) {\r\n return false;\r\n }\r\n\r\n const bounds = $(el).offset();\r\n const right = (bounds.left * (zoomN)) + width;\r\n const bottom = (bounds.top * (zoomN)) + height;\r\n\r\n const visible = (!(viewport.right < (bounds.left * (zoomN)) || viewport.left > right || viewport.bottom < (bounds.top * (zoomN)) || viewport.top > bottom));\r\n\r\n if (!visible) {\r\n return false;\r\n }\r\n\r\n const deltas = {\r\n top: parseFloat(Math.min(1, (bottom - viewport.top) / height).toFixed(2)),\r\n bottom: parseFloat(Math.min(1, (viewport.bottom - (bounds.top * (zoomN))) / height).toFixed(2)),\r\n left: parseFloat(Math.min(1, (right - viewport.left) / width).toFixed(2)),\r\n right: parseFloat(Math.min(1, (viewport.right - (bounds.left * (zoomN))) / width).toFixed(2))\r\n };\r\n\r\n return (deltas.left * deltas.right) >= x && (deltas.top * deltas.bottom) >= y;\r\n }\r\n}\r\n","import {\r\n AfterViewInit,\r\n Directive,\r\n ElementRef,\r\n HostListener,\r\n Input,\r\n OnChanges,\r\n OnInit,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport {NavigateService} from \"./navigate.service\";\r\nimport {PagePreloadService} from \"./page-preload.service\";\r\nimport {ZoomService} from \"./zoom.service\";\r\nimport {WindowService} from \"./window.service\";\r\nimport {ViewportService} from \"./viewport.service\";\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\n@Directive({\r\n selector: '[gdScrollable]'\r\n})\r\nexport class ScrollableDirective implements AfterViewInit, OnChanges, OnInit {\r\n\r\n private currentPage: number;\r\n private zoom = 100;\r\n private loadedPagesSet = new Set();\r\n\r\n constructor(private _elementRef: ElementRef,\r\n private _navigateService: NavigateService,\r\n private _pagePreloadService: PagePreloadService,\r\n private _zoomService: ZoomService,\r\n private _windowService: WindowService,\r\n private _viewportService: ViewportService) {\r\n\r\n this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom;\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n this.zoom = val ? val : this.zoom;\r\n this.refresh();\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom;\r\n this._navigateService.navigate.subscribe((value => {\r\n this.currentPage = value;\r\n this.scrollToPage(value);\r\n }));\r\n this.refresh();\r\n }\r\n\r\n @HostListener('scroll') scrolling() {\r\n this.refresh();\r\n }\r\n\r\n @HostListener('window:resize') resizing() {\r\n this.refresh();\r\n }\r\n\r\n scrollToPage(pageNumber: number) {\r\n const el = this._elementRef.nativeElement;\r\n const page = this.getPage(pageNumber);\r\n const prev = pageNumber > 0 ? this.getPage(pageNumber - 1) : null;\r\n const isSameTop = (prev && $(prev).offset().top === $(page).offset().top);\r\n if (this._viewportService.checkInViewport(page, this.zoom) && isSameTop) {\r\n return;\r\n }\r\n const pagesHeight = this.calculateOffset(pageNumber);\r\n const options = {\r\n left: 0,\r\n top: pagesHeight\r\n };\r\n if(el){\r\n // using polyfill\r\n el.scroll(options);\r\n }\r\n }\r\n\r\n private getChildren() {\r\n const el = this._elementRef ? this._elementRef.nativeElement : null;\r\n if (el) {\r\n // here and in the similar line below we getting the document pages\r\n return el.children.item(0).children.item(0).children;\r\n }\r\n }\r\n\r\n private getPage(pageNumber: number) {\r\n const el = this._elementRef ? this._elementRef.nativeElement : null;\r\n if (el) {\r\n return el.children.item(0).children.item(0).children.item(pageNumber - 1);\r\n }\r\n }\r\n\r\n private calculateOffset(pageNumber: number) {\r\n const count = this._windowService.isFirefox() ? 1 : this.countPagesOnWidth();\r\n const margin = this._windowService.isDesktop() ? 40 : 10;\r\n let pagesHeight = 0;\r\n for (let i = 1; i < pageNumber / count; i++) {\r\n const item = this.getPage(i);\r\n const clientHeight = item ? item.clientHeight : 0;\r\n pagesHeight += clientHeight > 0 ? clientHeight * this.getZoom() + margin : 0;\r\n }\r\n return pagesHeight;\r\n }\r\n\r\n private countPagesOnWidth() {\r\n const pageEl = this.getPage(1);\r\n const offset = 150;\r\n const count = Math.floor((this.getWidth() - offset) / (pageEl.getBoundingClientRect().width * this.getZoom()));\r\n return count === 0 ? 1 : count;\r\n }\r\n\r\n refresh() {\r\n let page;\r\n let currentPageSet = false;\r\n const pageElem = this.getPage(this.currentPage);\r\n const currentPageRect = this.currentPage && pageElem ? pageElem.getBoundingClientRect() : null;\r\n for (page = 1; page < this.getChildren().length + 1; page++) {\r\n const element = this.getPage(page);\r\n if (this._viewportService.checkInViewport(element, this.zoom)) {\r\n if (!currentPageSet) {\r\n if (!this.currentPage || !pageElem || (this.currentPage && currentPageRect && element.getBoundingClientRect().top !== currentPageRect.top)) {\r\n this.currentPage = page;\r\n if (this._navigateService.currentPage === 0) {\r\n this._navigateService.currentPage = page;\r\n }\r\n }\r\n currentPageSet = true;\r\n }\r\n if (!this.loadedPagesSet.has(page)) {\r\n this._pagePreloadService.changeLastPageInView(page);\r\n this.loadedPagesSet.add(page);\r\n }\r\n }\r\n }\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.refresh();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom;\r\n }\r\n\r\n\r\n private getWidth() {\r\n return this._elementRef ? this._elementRef.nativeElement.offsetWidth : window.innerWidth;\r\n }\r\n\r\n private getZoom() {\r\n return this.zoom / 100;\r\n }\r\n}\r\n","import {\r\n Directive,\r\n EventEmitter,\r\n HostListener,\r\n Output} from '@angular/core';\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\n@Directive({\r\n selector: '[gdMouseWheel]'\r\n})\r\nexport class MouseWheelDirective {\r\n @Output() mouseWheelUp = new EventEmitter();\r\n @Output() mouseWheelDown = new EventEmitter();\r\n\r\n @HostListener('mousewheel', ['$event']) onMouseWheelChrome(event: any) {\r\n this.mouseWheelFunc(event);\r\n }\r\n\r\n @HostListener('DOMMouseScroll', ['$event']) onMouseWheelFirefox(event: any) {\r\n this.mouseWheelFunc(event);\r\n }\r\n\r\n @HostListener('onmousewheel', ['$event']) onMouseWheelIE(event: any) {\r\n this.mouseWheelFunc(event);\r\n }\r\n\r\n mouseWheelFunc(event: any) {\r\n event = window.event ;\r\n const delta = Math.max(-1, Math.min(1, (event.wheelDelta || -event.detail)));\r\n if(delta > 0) {\r\n this.mouseWheelUp.emit(event);\r\n } else if(delta < 0) {\r\n this.mouseWheelDown.emit(event);\r\n }\r\n }\r\n}\r\n","import {AfterViewInit, Directive, HostBinding, Input, OnDestroy, OnInit, ElementRef, OnChanges} from '@angular/core';\r\nimport {ZoomService} from \"./zoom.service\";\r\nimport {FileUtil} from \"./file.service\";\r\nimport { WindowService } from './window.service';\r\n\r\n@Directive({\r\n selector: '[gdZoom]'\r\n})\r\nexport class ZoomDirective implements OnInit, OnDestroy, AfterViewInit, OnChanges {\r\n\r\n @Input() zoomActive = true;\r\n @Input() file;\r\n\r\n @HostBinding('style.zoom') zoomInt: number;\r\n @HostBinding('style.transform') transform: string;\r\n @HostBinding('style.transform-origin') transformOrigin: string;\r\n @HostBinding('style.width') width: string;\r\n @HostBinding('style.height') height: string;\r\n @HostBinding('style.min-width') minWidth: string;\r\n el: ElementRef;\r\n\r\n constructor(private _zoomService: ZoomService, private _windowService: WindowService, el: ElementRef) {\r\n this.el = el;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n }\r\n\r\n ngOnChanges(): void {\r\n this.setStyles(this._zoomService.zoom);\r\n this.resizePages(this._zoomService.zoom);\r\n }\r\n\r\n ngOnInit(): void {\r\n if (! this.zoomActive) {\r\n return;\r\n }\r\n\r\n this.setStyles(this._zoomService.zoom);\r\n this._zoomService.zoomChange.subscribe((zoom) => {\r\n this.setStyles(zoom);\r\n this.resizePages(zoom);\r\n });\r\n }\r\n\r\n private setStyles(zoom) {\r\n if (! this.zoomActive) {\r\n return;\r\n }\r\n\r\n const zoomInt = zoom === 100 ? 1 : zoom / 100;\r\n \r\n if (this._windowService.isEdge()) {\r\n this.zoomInt = zoomInt;\r\n }\r\n else {\r\n this.zoomInt = null;\r\n }\r\n \r\n if (!this._windowService.isEdge()) {\r\n this.transform = 'scale(' + zoomInt + ')';\r\n this.transformOrigin = 'top left';\r\n }\r\n else {\r\n this.transform = \"\";\r\n this.transformOrigin = \"\";\r\n }\r\n\r\n let maxWidth = 0;\r\n this.file.pages.forEach(page => {\r\n {\r\n if (page.width > maxWidth){\r\n maxWidth = page.width;\r\n }\r\n }\r\n });\r\n\r\n // Images and Excel-related files receiving dimensions in px from server\r\n this.minWidth = maxWidth + FileUtil.find(this.file.guid, false).unit;\r\n }\r\n\r\n private getScrollWidth(elm){\r\n return elm.offsetWidth - elm.clientWidth;\r\n }\r\n\r\n private getScrollHeight(elm){\r\n return elm.offsetHeight - elm.clientHeight;\r\n }\r\n\r\n private resizePages(zoom){\r\n const zoomInt = zoom === 100 ? 1 : zoom / 100;\r\n\r\n const viewPortWidth = this.el.nativeElement.parentElement.offsetWidth;\r\n const viewPortHeight = this.el.nativeElement.parentElement.offsetHeight;\r\n const scrollWidth = this.getScrollWidth(this.el.nativeElement.parentElement);\r\n const scrollHeight = this.getScrollHeight(this.el.nativeElement.parentElement);\r\n this.width = (viewPortWidth/zoomInt - scrollWidth/zoomInt) + 'px';\r\n this.height = (viewPortHeight/zoomInt - scrollHeight/zoomInt) + 'px';\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.setStyles(this._zoomService.zoom);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Observable, Subject} from \"rxjs\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OnCloseService {\r\n private _observer: Subject = new Subject();\r\n private readonly _onClose: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get onClose() {\r\n return this._onClose;\r\n }\r\n\r\n close(close: boolean) {\r\n this._observer.next(close)\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\r\nimport {OnCloseService} from \"../on-close.service\";\r\n\r\nexport interface Option {\r\n name: string;\r\n value: any;\r\n separator: boolean;\r\n}\r\n\r\n@Component({\r\n selector: 'gd-select',\r\n templateUrl: './select.component.html',\r\n styleUrls: ['./select.component.less']\r\n})\r\nexport class SelectComponent {\r\n\r\n @Input() options: Option[];\r\n @Input() disabled = false;\r\n @Input() showSelected: Option;\r\n @Output() selected: EventEmitter = new EventEmitter();\r\n @Input() isOpen = false;\r\n @Input() icon: string;\r\n\r\n constructor(protected _onCloseService: OnCloseService) {\r\n _onCloseService.onClose.subscribe(() => {\r\n this.close();\r\n });\r\n }\r\n\r\n open() {\r\n if (!this.disabled) {\r\n this.isOpen = true;\r\n }\r\n }\r\n\r\n close() {\r\n this.isOpen = false;\r\n }\r\n\r\n onClickOutside(event : Event){\r\n this.close();\r\n }\r\n\r\n toggle($event) {\r\n // TODO: following lines were uncommented due to needness in signature app\r\n $event.preventDefault();\r\n $event.stopPropagation();\r\n if (!this.disabled) {\r\n this.isOpen = !this.isOpen;\r\n }\r\n }\r\n\r\n select($event, value: Option) {\r\n $event.preventDefault();\r\n $event.stopPropagation();\r\n this.selected.emit(value);\r\n this.close();\r\n }\r\n}\r\n","import {Directive, HostBinding, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[gdDisabledCursor]'\r\n})\r\nexport class DisabledCursorDirective implements OnInit, OnChanges {\r\n\r\n @Input() dis: boolean;\r\n\r\n constructor() {\r\n }\r\n\r\n @HostBinding('class.inactive') cursor: boolean;\r\n\r\n private updateCursor() {\r\n this.cursor = this.dis ? true : false;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.updateCursor();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.updateCursor()\r\n }\r\n}\r\n","import {Directive, HostBinding, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[gdRotation]'\r\n})\r\nexport class RotationDirective implements OnInit, OnChanges {\r\n\r\n @Input() angle: number;\r\n @Input() isHtmlMode: boolean;\r\n @Input() width: number;\r\n @Input() height: number;\r\n @Input() withMargin = true;\r\n\r\n @HostBinding('style.animation') animation: string;\r\n @HostBinding('style.transition-property') transition: string;\r\n @HostBinding('style.transform') transform: string;\r\n\r\n @HostBinding('style.margin') margin: string;\r\n\r\n constructor() {\r\n }\r\n\r\n private updateCursor() {\r\n if (typeof this.angle === \"string\"){\r\n this.angle = parseInt(this.angle, 10);\r\n }\r\n\r\n if (this.angle) {\r\n this.animation = 'none';\r\n this.transition = 'none';\r\n this.transform = 'rotate(' + this.angle + 'deg)';\r\n } else if (this.angle === 0 && this.animation) {\r\n this.animation = null;\r\n this.transition = null;\r\n this.transform = null;\r\n }\r\n\r\n if (this.withMargin) {\r\n if (this.angle === 90 || this.angle === 270 || this.angle === -90 || this.angle === -270) {\r\n if (this.isHtmlMode) {\r\n if (this.isLandscape()) {\r\n this.margin = '164px 254px';\r\n } else {\r\n this.margin = '-111px 254px';\r\n }\r\n } else {\r\n if (this.isLandscape()) {\r\n this.margin = '129px 100px -79px';\r\n } else {\r\n this.margin = '-72px 100px -79px';\r\n }\r\n }\r\n } else if (this.angle === -180 || this.angle === 180) {\r\n this.margin = '280px';\r\n } else {\r\n this.margin = null;\r\n }\r\n }\r\n\r\n }\r\n\r\n isLandscape() {\r\n return this.width > this.height;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.updateCursor();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.updateCursor()\r\n }\r\n\r\n}\r\n","import {Component, Input, Output, EventEmitter, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-init-state',\r\n templateUrl: './init-state.component.html',\r\n styleUrls: ['./init-state.component.less']\r\n})\r\nexport class InitStateComponent implements OnInit {\r\n @Input() icon: string;\r\n @Input() text: string;\r\n @Output() fileDropped = new EventEmitter();\r\n showUploadFile = false;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n dropped($event) {\r\n if ($event) {\r\n this.fileDropped.emit($event);\r\n this.showUploadFile = false;\r\n }\r\n }\r\n}\r\n","import {Observable, Observer} from \"rxjs\";\r\nimport {PageModel} from \"./file.service\";\r\n\r\nexport class RenderPrintService {\r\n private _render: Observable;\r\n private _observer: Observer;\r\n private _renderBlob: Observable;\r\n private _observerBlob: Observer;\r\n\r\n constructor() {\r\n this._render = new Observable(observer =>\r\n this._observer = observer);\r\n this._renderBlob = new Observable(observer =>\r\n this._observerBlob = observer);\r\n }\r\n\r\n get renderPrint(): Observable {\r\n return this._render;\r\n }\r\n\r\n changePages(pages: PageModel[]) {\r\n this._observer.next(pages);\r\n }\r\n\r\n get renderPrintBlob(): Observable {\r\n return this._renderBlob;\r\n }\r\n\r\n changeBlob(file: Blob) {\r\n this._observerBlob.next(file);\r\n }\r\n}\r\n","import {Directive, Input} from '@angular/core';\r\nimport {PageModel} from \"./file.service\";\r\nimport {RenderPrintService} from \"./render-print.service\";\r\n\r\n@Directive({\r\n selector: '[gdRenderPrint]'\r\n})\r\nexport class RenderPrintDirective {\r\n @Input() htmlMode: boolean;\r\n\r\n constructor(private _renderService: RenderPrintService) {\r\n _renderService.renderPrint.subscribe(pages => {\r\n this.renderPrint(pages);\r\n });\r\n _renderService.renderPrintBlob.subscribe(file => {\r\n this.renderPrintBlob(file);\r\n });\r\n }\r\n\r\n private renderPrint(pages: PageModel[]) {\r\n let pagesHtml = '';\r\n\r\n for (const page of pages) {\r\n pagesHtml += '
' +\r\n '
' +\r\n '
';\r\n }\r\n\r\n this.openWindow(pagesHtml, pages[0].width, pages[0].height);\r\n }\r\n\r\n private openWindow(pagesHtml, width, height) {\r\n const a4Height = 842;\r\n const a4Width = 595;\r\n let imageA4Adjusted = '';\r\n if(width > a4Width && height > a4Height){\r\n const zoom = Math.round(height / a4Height) / 100;\r\n imageA4Adjusted = '.gd-page img { width: 100%; margin: 0; padding: 0;}';\r\n if(navigator.userAgent.toLowerCase().indexOf('firefox') > -1){\r\n imageA4Adjusted = '.gd-page img { transform: scale(' + zoom + ');}';\r\n }\r\n }\r\n let cssPrint = '';\r\n\r\n const windowObject = window.open('', \"PrintWindow\", \"width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes\");\r\n windowObject.focus();\r\n windowObject.document.writeln(cssPrint);\r\n windowObject.document.writeln(pagesHtml);\r\n windowObject.document.close();\r\n setTimeout(() => {\r\n windowObject.focus();\r\n windowObject.print();\r\n windowObject.close();\r\n }, 100);\r\n }\r\n\r\n private renderPrintBlob(file: Blob) {\r\n const fileURL = URL.createObjectURL(file);\r\n const windowObject = window.open(fileURL, \"PrintWindow\", \"width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes\");\r\n windowObject.focus();\r\n windowObject.print();\r\n windowObject.close();\r\n }\r\n}\r\n","import {BehaviorSubject, Observable} from \"rxjs\";\r\n\r\nexport class ExceptionMessageService {\r\n private _observer: BehaviorSubject = new BehaviorSubject('Server is not available');\r\n private _messageChange: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get messageChange(): Observable {\r\n return this._messageChange;\r\n }\r\n\r\n changeMessage(message: string) {\r\n this._observer.next(message);\r\n }\r\n}\r\n","import {Component, OnInit} from '@angular/core';\r\nimport {ExceptionMessageService} from \"../exception-message.service\";\r\n\r\n@Component({\r\n selector: 'gd-error-modal',\r\n templateUrl: './error-modal.component.html',\r\n styleUrls: ['./error-modal.component.less']\r\n})\r\nexport class ErrorModalComponent implements OnInit {\r\n\r\n message: string;\r\n\r\n constructor(messageService: ExceptionMessageService) {\r\n messageService.messageChange.subscribe(message => this.message = message);\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class PasswordService {\r\n private _observer: Subject = new Subject();\r\n private readonly _passChange: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get passChange(): Observable {\r\n return this._passChange;\r\n }\r\n\r\n setPassword(pass: string) {\r\n this._observer.next(pass);\r\n }\r\n}\r\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\r\nimport {ExceptionMessageService} from \"../exception-message.service\";\r\nimport {PasswordService} from \"../password.service\";\r\nimport * as jquery from \"jquery\";\r\n\r\nconst $ = jquery;\r\n\r\n@Component({\r\n selector: 'gd-password-required',\r\n templateUrl: './password-required.component.html',\r\n styleUrls: ['./password-required.component.less']\r\n})\r\nexport class PasswordRequiredComponent implements OnInit {\r\n message: string;\r\n @Output() cancelEvent = new EventEmitter();\r\n\r\n constructor(messageService: ExceptionMessageService, private _passwordService: PasswordService) {\r\n messageService.messageChange.subscribe(message => this.message = message);\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n setPassword(value: string) {\r\n this._passwordService.setPassword(value);\r\n }\r\n\r\n onCloseOpen($event: boolean) {\r\n if ($event) {\r\n setTimeout(() => {\r\n const element = $(\"#password\");\r\n if (element) {\r\n element.focus();\r\n }\r\n }, 100);\r\n } else {\r\n $(\"#password\").val(\"\");\r\n }\r\n }\r\n\r\n cancel($event: boolean) {\r\n $(\"#password\").val(\"\");\r\n this.cancelEvent.emit(true);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from \"@angular/common/http\";\r\nimport {Observable, throwError} from \"rxjs\";\r\nimport {catchError, map} from \"rxjs/operators\";\r\nimport {ExceptionMessageService} from \"./exception-message.service\";\r\nimport {HttpError} from \"./file.service\";\r\nimport {CommonModals, ModalService} from \"./modal.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ErrorInterceptorService implements HttpInterceptor {\r\n\r\n constructor(private _modalService: ModalService, private _messageService: ExceptionMessageService) {\r\n }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n const logFormat = 'background: maroon; color: white';\r\n\r\n return next.handle(req)\r\n .pipe(map(data => {\r\n return data;\r\n }),\r\n catchError((exception: HttpEvent) => {\r\n if (exception instanceof HttpErrorResponse) {\r\n switch (exception.status) {\r\n\r\n case HttpError.BadRequest:\r\n console.error('%c Bad Request 400', logFormat);\r\n break;\r\n case HttpError.Unauthorized:\r\n console.error('%c Unauthorized 401', logFormat);\r\n break;\r\n case HttpError.NotFound:\r\n console.error('%c Not Found 404', logFormat);\r\n break;\r\n case HttpError.TimeOut:\r\n console.error('%c TimeOut 408', logFormat);\r\n break;\r\n case HttpError.InternalServerError:\r\n console.error('%c big bad 500', logFormat);\r\n this._messageService.changeMessage(exception.error.message);\r\n this._modalService.open(CommonModals.ErrorMessage);\r\n break;\r\n\r\n case HttpError.Forbidden:\r\n console.error('%c Forbidden 403', logFormat);\r\n this._messageService.changeMessage(exception.error.message);\r\n this._modalService.open(CommonModals.PasswordRequired);\r\n break;\r\n }\r\n }\r\n return throwError(exception);\r\n }));\r\n }\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class SearchService {\r\n private _observer: Subject = new Subject();\r\n private readonly _textChange: Observable = this._observer.asObservable();\r\n\r\n private _observerCurrent: Subject = new Subject();\r\n private readonly _currentChange: Observable = this._observerCurrent.asObservable();\r\n\r\n private _observerTotal: Subject = new Subject();\r\n private readonly _totalChange: Observable = this._observerTotal.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get textChange(): Observable {\r\n return this._textChange;\r\n }\r\n\r\n setText(text: string) {\r\n this._observer.next(text);\r\n }\r\n\r\n get currentChange(): Observable {\r\n return this._currentChange;\r\n }\r\n\r\n get totalChange(): Observable {\r\n return this._totalChange;\r\n }\r\n\r\n setCurrent(current: number) {\r\n this._observerCurrent.next(current);\r\n }\r\n\r\n setTotal(total: number) {\r\n this._observerTotal.next(total);\r\n }\r\n}\r\n","import {AfterViewInit, Component, ElementRef, EventEmitter, OnInit, Output, ViewChild} from '@angular/core';\r\nimport {SearchService} from \"../search.service\";\r\n\r\n@Component({\r\n selector: 'gd-search',\r\n templateUrl: './search.component.html',\r\n styleUrls: ['./search.component.less']\r\n})\r\nexport class SearchComponent implements OnInit, AfterViewInit {\r\n\r\n @Output() hidePanel = new EventEmitter(false);\r\n\r\n current = 0;\r\n total = 0;\r\n\r\n @ViewChild('text',{\r\n static : true\r\n }) textElement: ElementRef;\r\n\r\n constructor(private _searchService: SearchService) {\r\n _searchService.totalChange.subscribe((total: number) => {\r\n this.total = total;\r\n if (total !== 0) {\r\n this.current = 1;\r\n } else {\r\n this.current = 0;\r\n }\r\n this._searchService.setCurrent(this.current);\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n setText(text: string) {\r\n this._searchService.setText(text);\r\n }\r\n\r\n hide() {\r\n this.setText('');\r\n this.hidePanel.emit(true);\r\n }\r\n\r\n prev() {\r\n if (this.current > 1) {\r\n this.current--;\r\n this._searchService.setCurrent(this.current);\r\n }\r\n }\r\n\r\n next() {\r\n if (this.current < this.total) {\r\n this.current++;\r\n this._searchService.setCurrent(this.current);\r\n }\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.textElement.nativeElement.focus();\r\n }\r\n}\r\n","import {Directive, ElementRef} from '@angular/core';\r\nimport {SearchService} from \"./search.service\";\r\nimport {HighlightSearchPipe} from \"./pipes\";\r\nimport {ZoomService} from \"./zoom.service\";\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\n@Directive({\r\n selector: '[gdSearchable]'\r\n})\r\nexport class SearchableDirective {\r\n\r\n text: string;\r\n current = 0;\r\n total = 0;\r\n private zoom = 100;\r\n\r\n constructor(private _elementRef: ElementRef,\r\n private _searchService: SearchService,\r\n private _highlight: HighlightSearchPipe,\r\n private _zoomService: ZoomService) {\r\n _searchService.currentChange.subscribe((current: number) => {\r\n this.current = current;\r\n if (this.current !== 0) {\r\n this.moveToCurrent();\r\n }\r\n });\r\n\r\n _searchService.textChange.subscribe((text: string) => {\r\n this.text = text;\r\n this.highlightSearch();\r\n });\r\n\r\n this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom;\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n this.zoom = val ? val : this.zoom;\r\n });\r\n }\r\n\r\n private highlightSearch() {\r\n const el = this._elementRef ? this._elementRef.nativeElement : null;\r\n if (el) {\r\n this.cleanHighlight(el);\r\n if (this.text) {\r\n this.highlightEl(el);\r\n const count = el.querySelectorAll('.gd-highlight').length;\r\n this.total = count;\r\n } else {\r\n this.total = 0;\r\n }\r\n this._searchService.setTotal(this.total);\r\n }\r\n }\r\n\r\n private moveToCurrent() {\r\n if (this.current === 0) {\r\n return;\r\n }\r\n const currentZoom = this.getZoom();\r\n const el = this._elementRef ? this._elementRef.nativeElement : null;\r\n if (el) {\r\n el.querySelectorAll('.gd-highlight-select').forEach(function (value) {\r\n $(value).removeClass('gd-highlight-select');\r\n });\r\n const currentEl = el.querySelectorAll('.gd-highlight')[this.current - 1];\r\n $(currentEl).addClass('gd-highlight-select');\r\n if (currentEl) {\r\n const options = {\r\n left: 0,\r\n top: ($(currentEl).offset().top) + el.parentElement.parentElement.scrollTop - 150,\r\n };\r\n // using polyfill\r\n el.parentElement.parentElement.scroll(options);\r\n }\r\n }\r\n }\r\n\r\n private highlightEl(el: Element) {\r\n const textNodes = $(el).find('*').contents().filter(function () {\r\n const nodeName = this.parentElement.nodeName.toLowerCase();\r\n const checkClass = (this).classList ? !(this).classList.contains('gd-highlight') : true;\r\n return this.nodeType === 3 &&\r\n this.textContent.trim().length !== 0 &&\r\n nodeName !== 'style' &&\r\n nodeName !== 'title' &&\r\n nodeName !== 'body' &&\r\n nodeName !== 'script' &&\r\n checkClass;\r\n });\r\n const text = this.text;\r\n const highlight = this._highlight;\r\n textNodes.each(function () {\r\n const $this = $(this);\r\n let content = $this.text();\r\n content = highlight.transform(content, text);\r\n $this.replaceWith(content);\r\n });\r\n el.normalize();\r\n }\r\n\r\n private cleanHighlight(el: HTMLElement) {\r\n const nodeListOf = el.querySelectorAll('.gd-highlight');\r\n for (let i = 0; i < nodeListOf.length; i++) {\r\n const element = nodeListOf.item(i);\r\n element.replaceWith((element).innerText);\r\n }\r\n el.normalize();\r\n }\r\n\r\n private getZoom() {\r\n return this.zoom / 100;\r\n }\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-tabbed-toolbars',\r\n templateUrl: './tabbed-toolbars.component.html',\r\n styleUrls: ['./tabbed-toolbars.component.less']\r\n})\r\nexport class TabbedToolbarsComponent implements OnInit {\r\n @Input() logo: string;\r\n @Input() icon: string;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class TabActivatorService {\r\n private _observer: Subject = new Subject();\r\n private readonly _activeTabChange: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get activeTabChange(): Observable {\r\n return this._activeTabChange;\r\n }\r\n\r\n changeActiveTab(tabId: string) {\r\n this._observer.next(tabId);\r\n }\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\nimport {TabActivatorService} from \"../tab-activator.service\";\r\n\r\n@Component({\r\n selector: 'gd-tab',\r\n templateUrl: './tab.component.html',\r\n styleUrls: ['./tab.component.less']\r\n})\r\nexport class TabComponent implements OnInit {\r\n @Input() id: string;\r\n @Input() tabTitle: string;\r\n @Input() icon: string;\r\n @Input() disabled = false;\r\n @Input() active = false;\r\n @Input() content = true;\r\n\r\n constructor(private _tabActivatorService: TabActivatorService) {\r\n this._tabActivatorService.activeTabChange.subscribe((tabId: string) => {\r\n this.activation(tabId);\r\n });\r\n }\r\n\r\n private activation(tabId: string) {\r\n if (this.id === tabId) {\r\n this.active = true;\r\n } else {\r\n this.active = false;\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n selectTab() {\r\n if (this.disabled) {\r\n return;\r\n }\r\n this._tabActivatorService.changeActiveTab(this.id);\r\n }\r\n}\r\n","import {Component} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-tabs',\r\n templateUrl: './tabs.component.html',\r\n styleUrls: ['./tabs.component.less']\r\n})\r\nexport class TabsComponent {\r\n constructor() {\r\n }\r\n\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class Formatting {\r\n constructor(fontSize: number, color: string, bgColor: string, bold: boolean, italic: boolean, underline: boolean, font: string, strikeout: boolean, align: string, list: string) {\r\n this.fontSize = fontSize;\r\n this.color = color;\r\n this.bgColor = bgColor;\r\n this.bold = bold;\r\n this.italic = italic;\r\n this.underline = underline;\r\n this.font = font;\r\n this.strikeout = strikeout;\r\n this.align = align;\r\n this.list = list;\r\n }\r\n\r\n bold: boolean;\r\n italic: boolean;\r\n underline: boolean;\r\n fontSize: number;\r\n color: string;\r\n bgColor: string;\r\n font: string;\r\n strikeout: boolean;\r\n align: string;\r\n list: string;\r\n\r\n public static default(): Formatting {\r\n return new Formatting(10, '#000000', '#FFFFFF', false, false, false, 'Arial', false, \"\", \"\");\r\n }\r\n}\r\n\r\nexport class FormattingService {\r\n private _observerBold: Subject = new Subject();\r\n private readonly _formatBoldChange: Observable = this._observerBold.asObservable();\r\n private _observerUnderline: Subject = new Subject();\r\n private readonly _formatUnderlineChange: Observable = this._observerUnderline.asObservable();\r\n private _observerUndo: Subject = new Subject();\r\n private readonly _undo: Observable = this._observerUndo.asObservable();\r\n private _observerRedo: Subject = new Subject();\r\n private readonly _redo: Observable = this._observerRedo.asObservable();\r\n private _observerItalic: Subject = new Subject();\r\n private readonly _formatItalicChange: Observable = this._observerItalic.asObservable();\r\n private _observerColor: Subject = new Subject();\r\n private readonly _formatColorChange: Observable = this._observerColor.asObservable();\r\n private _observerBgColor: Subject = new Subject();\r\n private readonly _formatBgColorChange: Observable = this._observerBgColor.asObservable();\r\n private _observerFontSize: Subject = new Subject();\r\n private readonly _formatFontSizeChange: Observable = this._observerFontSize.asObservable();\r\n private _observerFont: Subject = new Subject();\r\n private readonly _formatFontChange: Observable = this._observerFont.asObservable();\r\n private _observerStrikeout: Subject = new Subject();\r\n private readonly _formatStrikeoutChange: Observable = this._observerStrikeout.asObservable();\r\n private _observerAlign: Subject = new Subject();\r\n private readonly _formatAlignChange: Observable = this._observerAlign.asObservable();\r\n private _observerList: Subject = new Subject();\r\n private readonly _formatListChange: Observable = this._observerList.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get formatBoldChange() {\r\n return this._formatBoldChange;\r\n }\r\n\r\n get formatUnderlineChange() {\r\n return this._formatUnderlineChange;\r\n }\r\n\r\n get formatColorChange() {\r\n return this._formatColorChange;\r\n }\r\n\r\n get formatBgColorChange() {\r\n return this._formatBgColorChange;\r\n }\r\n\r\n get formatFontSizeChange() {\r\n return this._formatFontSizeChange;\r\n }\r\n\r\n get formatFontChange() {\r\n return this._formatFontChange;\r\n }\r\n\r\n get undo() {\r\n return this._undo;\r\n }\r\n\r\n get redo() {\r\n return this._redo;\r\n }\r\n\r\n get formatItalicChange() {\r\n return this._formatItalicChange;\r\n }\r\n\r\n get formatStrikeoutChange() {\r\n return this._formatStrikeoutChange;\r\n }\r\n\r\n get formatAlignChange() {\r\n return this._formatAlignChange;\r\n }\r\n\r\n get formatListChange() {\r\n return this._formatListChange;\r\n }\r\n\r\n static createFontSizeOption(val: number) {\r\n return {value: val, name: val + 'px', separator: false}\r\n }\r\n\r\n static getFontSizeOptions() {\r\n return [\r\n FormattingService.createFontSizeOption(8),\r\n FormattingService.createFontSizeOption(10),\r\n FormattingService.createFontSizeOption(12),\r\n FormattingService.createFontSizeOption(14),\r\n FormattingService.createFontSizeOption(16),\r\n FormattingService.createFontSizeOption(18),\r\n FormattingService.createFontSizeOption(20),\r\n FormattingService.createFontSizeOption(22),\r\n FormattingService.createFontSizeOption(24),\r\n ];\r\n }\r\n\r\n static createFontOption(val: string) {\r\n return {value: val, name: val, separator: false}\r\n }\r\n\r\n static getFontOptions() {\r\n const fonts = [\"Arial\", \"Calibri\", \"Century Gothic\", \"Comic Sans\", \"Consolas\", \"Courier\", \"Dejavu Sans\", \"Dejavu Serif\", \"Georgia\", \"Gill Sans\", \"Helvetica\", \"Impact\", \"Lucida Sans\",\r\n \"Myriad Pro\", \"Open Sans\", \"Palatino\", \"Tahoma\", \"Times New Roman\", \"Trebuchet\"];\r\n const fontOptions = [];\r\n fonts.forEach(font => {\r\n fontOptions.push(this.createFontOption(font));\r\n })\r\n\r\n return fontOptions;\r\n }\r\n\r\n changeFormatFontSize($event: number) {\r\n this._observerFontSize.next($event);\r\n }\r\n\r\n changeFormatBold(bold: boolean) {\r\n this._observerBold.next(bold);\r\n }\r\n\r\n changeFormatUnderline(underline: boolean) {\r\n this._observerUnderline.next(underline);\r\n }\r\n\r\n Undo() {\r\n this._observerUndo.next();\r\n }\r\n\r\n Redo() {\r\n this._observerRedo.next();\r\n }\r\n\r\n changeFormatItalic(italic: boolean) {\r\n this._observerItalic.next(italic);\r\n }\r\n\r\n changeFormatColor(color: string) {\r\n this._observerColor.next(color);\r\n }\r\n\r\n changeFormatBgColor(bgcolor: string) {\r\n this._observerBgColor.next(bgcolor);\r\n }\r\n\r\n changeFormatFont(font: string) {\r\n this._observerFont.next(font);\r\n }\r\n\r\n changeFormatStrikeout(strikeout: boolean) {\r\n this._observerStrikeout.next(strikeout);\r\n }\r\n\r\n changeFormatAlign(align: string) {\r\n this._observerAlign.next(align);\r\n }\r\n\r\n changeFormatList(list: string) {\r\n this._observerList.next(list);\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\n\r\nconst DEFAULT_COLORS = [\r\n '#000000', '#434343', '#666666', '#999999', '#B7B7B7', '#CCCCCC', '#D9D9D9', '#EFEFEF', '#F3F3F3', '#FFFFFF',\r\n '#980000', '#FF0000', '#FF9900', '#FFFF00', '#00FF00', '#00FFFF', '#4986E8', '#0000FF', '#9900FF', '#FF00FF',\r\n '#E6B8AF', '#F4CCCC', '#FDE5CD', '#FFF2CC', '#D9EAD3', '#D0E0E2', '#C9DAF8', '#CFE2F3', '#D9D2E9', '#EAD1DC',\r\n '#DD7E6B', '#EA9899', '#F9CB9C', '#FFE59A', '#B7D7A8', '#A2C4C9', '#A4C2F4', '#9FC5E8', '#B4A7D7', '#D5A6BD',\r\n '#CC4125', '#E06666', '#F6B26B', '#FFD966', '#92C47D', '#75A5AF', '#6D9EEB', '#6FA9DB', '#8E7CC3', '#C27BA0',\r\n '#A61C00', '#CC0000', '#E69138', '#F2C131', '#6AA84F', '#45818E', '#3C78D8', '#3C85C6', '#674EA7', '#A64D79',\r\n '#85200B', '#990000', '#B45F05', '#BF9000', '#37761D', '#144F5C', '#1254CC', '#0A5394', '#351C75', '#741B47',\r\n '#5B0F00', '#660000', '#783F03', '#7F6000', '#284E13', '#0B343D', '#1B4586', '#063763', '#20124D', '#4C1030',\r\n];\r\n\r\n@Component({\r\n selector: 'gd-color-picker',\r\n templateUrl: './color-picker.component.html',\r\n styleUrls: ['./color-picker.component.less']\r\n})\r\nexport class ColorPickerComponent implements OnInit {\r\n @Input() isOpen = false;\r\n @Output() selectedColor = new EventEmitter();\r\n @Output() closeOutside = new EventEmitter();\r\n colors: any = DEFAULT_COLORS;\r\n white = '#FFFFFF';\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n select($event, color: string) {\r\n $event.preventDefault();\r\n $event.stopPropagation();\r\n this.selectedColor.emit(color);\r\n }\r\n\r\n close() {\r\n this.isOpen = false;\r\n this.closeOutside.emit(true);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {FormattingService} from \"./formatting.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BackFormattingService extends FormattingService {\r\n\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SelectionService {\r\n selection: Range;\r\n isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\r\n\r\n restoreSelection() {\r\n if(this.selection && !this.selection.collapsed || this.isIE){\r\n this.putSelection(this.selection );\r\n }\r\n }\r\n\r\n captureSelection() {\r\n const selection = window.getSelection();\r\n if (selection.rangeCount > 0) {\r\n this.selection = selection.getRangeAt(0);\r\n }\r\n }\r\n\r\n private putSelection(selection) {\r\n const sel = window.getSelection();\r\n sel.removeAllRanges();\r\n sel.addRange(selection.cloneRange());\r\n }\r\n\r\n refreshSelection() {\r\n this.captureSelection();\r\n this.restoreSelection();\r\n }\r\n}\r\n","import {Directive, HostListener, OnInit} from '@angular/core';\r\nimport {FormattingService} from \"./formatting.service\";\r\nimport {BackFormattingService} from \"./back-formatting.service\";\r\nimport * as jquery from 'jquery';\r\nconst $ = jquery;\r\nimport {SelectionService} from './selection.service';\r\n\r\n@Directive({\r\n selector: '[gdFormatting]'\r\n})\r\nexport class FormattingDirective implements OnInit {\r\n\r\n private bold = false;\r\n private italic = false;\r\n private underline = false;\r\n private color: string;\r\n private bgColor: string;\r\n private font: string;\r\n private strikeout = false;\r\n private align: string;\r\n private list: string;\r\n private isIE = false;\r\n\r\n constructor(private _formattingService: FormattingService,\r\n private _backFormattingService: BackFormattingService,\r\n private _selectionService: SelectionService) {\r\n this.isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\r\n }\r\n\r\n @HostListener('mouseup') mouseup() {\r\n\r\n this.bold = document.queryCommandState(\"bold\");\r\n this.strikeout = document.queryCommandState(\"strikeThrough\");\r\n this.italic = document.queryCommandState(\"italic\");\r\n this.bgColor = document.queryCommandValue(\"backColor\");\r\n this.underline = document.queryCommandState(\"underline\");\r\n this.align = this.checkJustify();\r\n this.list = this.checkList();\r\n\r\n //fix required by FireFox to get correct background color\r\n if (this.bgColor === \"transparent\") {\r\n this.bgColor = $(window.getSelection().focusNode.parentNode).css('background-color').toString();\r\n }\r\n this.font = document.queryCommandValue(\"FontName\").replace(/\"/g, '');\r\n if(this.font.split(\",\").length > 1){\r\n this.font = this.font.split(\",\")[0];\r\n }\r\n this.color = document.queryCommandValue(\"foreColor\");\r\n this._backFormattingService.changeFormatBold(this.bold);\r\n this._backFormattingService.changeFormatUnderline(this.underline);\r\n this._backFormattingService.changeFormatItalic(this.italic);\r\n this._backFormattingService.changeFormatColor(this.color);\r\n this._backFormattingService.changeFormatBgColor(this.bgColor);\r\n this._backFormattingService.changeFormatFontSize(this.reportFontSize());\r\n this._backFormattingService.changeFormatFont(this.font);\r\n this._backFormattingService.changeFormatStrikeout(this.strikeout);\r\n this._backFormattingService.changeFormatAlign(this.align);\r\n this._backFormattingService.changeFormatList(this.list);\r\n }\r\n\r\n private checkJustify() {\r\n let align = \"\";\r\n align = document.queryCommandState(\"justifyCenter\") ? \"center\" : align;\r\n align = document.queryCommandState(\"justifyFull\") ? \"full\" : align;\r\n align = document.queryCommandState(\"justifyLeft\") ? \"left\" : align;\r\n align = document.queryCommandState(\"justifyRight\") ? \"right\" : align;\r\n return align;\r\n }\r\n\r\n private checkList() {\r\n let list = \"\";\r\n list = document.queryCommandState(\"insertUnorderedList\") ? \"unordered\" : list;\r\n list = document.queryCommandState(\"insertOrderedList\") ? \"ordered\" : list;\r\n return list;\r\n }\r\n\r\n reportFontSize(): number {\r\n let containerEl, sel;\r\n if (window.getSelection) {\r\n sel = window.getSelection();\r\n if (sel.rangeCount) {\r\n containerEl = sel.getRangeAt(0).commonAncestorContainer;\r\n // Make sure we have an element rather than a text node\r\n if (containerEl.nodeType === 3) {\r\n containerEl = containerEl.parentNode;\r\n }\r\n }\r\n } else if ((sel = document.getSelection()) && sel.type !== \"Control\") {\r\n containerEl = sel.createRange().parentElement();\r\n }\r\n\r\n if (containerEl) {\r\n return parseInt(this.getComputedStyleProperty(containerEl, \"fontSize\").replace(\"px\", \"\"), 10);\r\n }\r\n }\r\n\r\n getComputedStyleProperty(el, propName) {\r\n if (window.getComputedStyle) {\r\n return window.getComputedStyle(el, null)[propName];\r\n } else if (el.currentStyle) {\r\n return el.currentStyle[propName];\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this._formattingService.undo.subscribe(() => {\r\n this.toggleUndo();\r\n });\r\n this._formattingService.redo.subscribe(() => {\r\n this.toggleRedo();\r\n });\r\n this._formattingService.formatBoldChange.subscribe((bold: boolean) => {\r\n this.bold = bold;\r\n this.toggleBold();\r\n });\r\n this._formattingService.formatUnderlineChange.subscribe((underline: boolean) => {\r\n this.underline = underline;\r\n this.toggleUnderline();\r\n });\r\n this._formattingService.formatItalicChange.subscribe((italic: boolean) => {\r\n this.italic = italic;\r\n this.toggleItalic();\r\n });\r\n this._formattingService.formatColorChange.subscribe(((color: string) => {\r\n this.color = color;\r\n this.setColor(color);\r\n }));\r\n this._formattingService.formatBgColorChange.subscribe(((bgcolor: string) => {\r\n this.bgColor = bgcolor;\r\n this.setBgColor(bgcolor);\r\n }));\r\n this._formattingService.formatFontSizeChange.subscribe(((fontSize: number) => {\r\n this.setFontSize(fontSize);\r\n }));\r\n\r\n this._formattingService.formatFontChange.subscribe(((font: string) => {\r\n this.font = font;\r\n this.setFont(font);\r\n }));\r\n this._formattingService.formatStrikeoutChange.subscribe((strikeout: boolean) => {\r\n this.strikeout = strikeout;\r\n this.toggleStrikeout();\r\n });\r\n this._formattingService.formatAlignChange.subscribe((align: string) => {\r\n this.align = align;\r\n this.toggleAlign(this.align);\r\n });\r\n this._formattingService.formatListChange.subscribe((list: string) => {\r\n const remove = this.list === list;\r\n this.list = list;\r\n this.toggleList(this.list, remove);\r\n });\r\n }\r\n\r\n private toggleBold() {\r\n document.execCommand(\"bold\");\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleUnderline() {\r\n document.execCommand(\"underline\");\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleItalic() {\r\n document.execCommand(\"italic\");\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private setBgColor(bgColor: string) {\r\n document.execCommand(\"backColor\", false, bgColor);\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private setColor(color: string) {\r\n document.execCommand(\"foreColor\", false, color);\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private setFontSize(fontSize: number) {\r\n if (document.getSelection().toString()) {\r\n let spanString = \"\" +\r\n document.getSelection() + \"\";\r\n if (this.bold) {\r\n spanString = \"\" + spanString + \"\";\r\n }\r\n if (this.italic) {\r\n spanString = \"\" + spanString + \"\";\r\n }\r\n if (this.underline) {\r\n spanString = \"\" + spanString + \"\";\r\n }\r\n if (this.strikeout) {\r\n spanString = \"\" + spanString + \"\";\r\n }\r\n document.execCommand('insertHTML', false, spanString);\r\n } else {\r\n document.execCommand(\"fontsize\", false, \"7\");\r\n }\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleUndo() {\r\n document.execCommand(\"undo\");\r\n }\r\n\r\n private toggleRedo() {\r\n document.execCommand(\"redo\");\r\n }\r\n\r\n private setFont(font: string) {\r\n document.execCommand(\"fontName\", false, font);\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleStrikeout() {\r\n document.execCommand(\"strikeThrough\");\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleAlign(align: string) {\r\n if(this.isIE) {\r\n this.toggleAlignIE(align);\r\n return;\r\n }\r\n document.execCommand(\"styleWithCSS\", false, 'true');\r\n switch (align) {\r\n case 'center':\r\n document.execCommand('justifyCenter');\r\n break;\r\n case 'full':\r\n document.execCommand('justifyFull');\r\n break;\r\n case 'left':\r\n document.execCommand('justifyLeft');\r\n break;\r\n case 'right':\r\n document.execCommand('justifyRight');\r\n break;\r\n }\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleAlignIE(align: string) {\r\n this._selectionService.restoreSelection()\r\n this._selectionService.captureSelection()\r\n const selection = window.getSelection().focusNode.parentNode.parentNode;\r\n if(align === \"full\"){\r\n align = \"justify\";\r\n }\r\n $(selection).css(\"text-align\", align);\r\n this._selectionService.refreshSelection()\r\n }\r\n\r\n private toggleList(list: string, remove: boolean) {\r\n switch (list) {\r\n case 'unordered':\r\n document.execCommand('insertUnorderedList', remove);\r\n break;\r\n case 'ordered':\r\n document.execCommand('insertOrderedList', remove);\r\n break;\r\n }\r\n this._selectionService.refreshSelection();\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-success-modal',\r\n templateUrl: './success-modal.component.html',\r\n styleUrls: ['./success-modal.component.less']\r\n})\r\nexport class SuccessModalComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Observable, Subject} from \"rxjs\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class EditHtmlService {\r\n private _observer: Subject = new Subject();\r\n private readonly _htmlContent: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get observer(): Subject {\r\n return this._observer;\r\n }\r\n\r\n get htmlContent(): Observable {\r\n return this._htmlContent;\r\n }\r\n\r\n}\r\n","import {Directive, HostListener, Input} from '@angular/core';\r\nimport {SelectionService} from './selection.service';\r\nimport {EditHtmlService} from \"./edit-html.service\";\r\n\r\n@Directive({\r\n selector: '[gdEditor]'\r\n})\r\nexport class EditorDirective {\r\n @Input() text: any;\r\n\r\n private isIE: boolean = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\r\n\r\n constructor(private _selectionService: SelectionService, private _htmlService: EditHtmlService) {\r\n }\r\n\r\n @HostListener('keyup', ['$event'])\r\n public onInput(event) {\r\n this.text = event.target;\r\n if(this.isIE){\r\n if (this.text.innerHTML) {\r\n const html = this.text.innerHTML.toString();\r\n this._htmlService.observer.next(html);\r\n }\r\n }\r\n }\r\n\r\n @HostListener('mouseleave', ['$event'])\r\n public onMouseleave(event) {\r\n this._selectionService.captureSelection();\r\n // this code is required to fix IE11 issue - it doesn't trigger blur event, since that we need to save updated HTML here\r\n if(this.isIE){\r\n this._htmlService.observer.next(event.target.innerHTML.toString());\r\n }\r\n }\r\n\r\n @HostListener('blur', ['$event'])\r\n public onBlur(event) {\r\n event.preventDefault();\r\n this._selectionService.restoreSelection();\r\n if (this.text.innerHTML) {\r\n const html = this.text.innerHTML.toString();\r\n this._htmlService.observer.next(html);\r\n } else {\r\n this._htmlService.observer.next(event.target.innerHTML.toString());\r\n }\r\n }\r\n}\r\n","import {EventEmitter, Injectable} from '@angular/core'\r\nimport {HttpRequest} from '@angular/common/http';\r\nimport {Api} from \"./config.service\";\r\n\r\n@Injectable()\r\nexport class LoadingMaskService {\r\n onLoadingChanged: EventEmitter = new EventEmitter();\r\n\r\n private stopList = [];\r\n private requests: HttpRequest[] = [];\r\n\r\n constructor() {\r\n this.stopList.push(Api.SAVE_TEXT);\r\n this.stopList.push(Api.SAVE_OPTICAL_CODE);\r\n this.stopList.push(Api.LOAD_DOCUMENT_PAGE);\r\n this.stopList.push(Api.LOAD_THUMBNAILS);\r\n this.stopList.push(Api.GET_FILE_STATUS);\r\n this.stopList.push(Api.LOAD_PRINT);\r\n }\r\n\r\n onRequestStart(req: HttpRequest): void {\r\n const stop = this.stopList.find(x => req.url.includes(x));\r\n if (!stop) {\r\n this.requests.push(req);\r\n this.notify();\r\n }\r\n }\r\n\r\n onRequestFinish(req: HttpRequest): void {\r\n const index = this.requests.indexOf(req);\r\n if (index !== -1) {\r\n this.requests.splice(index, 1);\r\n }\r\n this.notify();\r\n }\r\n\r\n private notify(): void {\r\n this.onLoadingChanged.emit(this.requests.length !== 0);\r\n }\r\n}\r\n","import {AfterViewInit, Component, Input, OnInit} from '@angular/core';\r\nimport {LoadingMaskService} from \"../loading-mask.service\";\r\n\r\n@Component({\r\n selector: 'gd-loading-mask',\r\n templateUrl: './loading-mask.component.html',\r\n styleUrls: ['./loading-mask.component.less']\r\n})\r\n\r\nexport class LoadingMaskComponent implements OnInit, AfterViewInit {\r\n @Input() loadingMask = false;\r\n\r\n constructor(private _loadingMaskService: LoadingMaskService) {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this._loadingMaskService\r\n .onLoadingChanged\r\n .subscribe((loading: boolean) => this.loadingMask = loading);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from \"@angular/common/http\";\r\nimport {Observable} from \"rxjs\";\r\nimport {finalize} from 'rxjs/operators'\r\nimport {LoadingMaskService} from \"./loading-mask.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LoadingMaskInterceptorService implements HttpInterceptor {\r\n\r\n constructor(private _loadingMaskService: LoadingMaskService) {\r\n }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n this._loadingMaskService.onRequestStart(req);\r\n const callback = () => this._loadingMaskService.onRequestFinish(req);\r\n return next.handle(req).pipe( finalize( callback));\r\n }\r\n}\r\n","import {\r\n Component,\r\n EventEmitter,\r\n forwardRef,\r\n HostBinding,\r\n HostListener,\r\n Inject,\r\n Input,\r\n Output,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\n\r\n\r\nconst horizontalAlignment = {\r\n center : {\r\n right: 'auto'\r\n },\r\n left : {\r\n right: '100%'\r\n },\r\n right : {\r\n right: '-100%'\r\n }\r\n};\r\n\r\nconst verticalAlignment = {\r\n center : {\r\n top : '0px',\r\n },\r\n top : {\r\n top : '-100%',\r\n right: '100%'\r\n },\r\n bottom : {\r\n top: 'autos'\r\n }\r\n};\r\n\r\n/**\r\n * DropDownToggleComponent\r\n */\r\n@Component({\r\n selector: 'gd-drop-down-toggle',\r\n template: '',\r\n styleUrls: ['./drop-down.component.less'],\r\n encapsulation : ViewEncapsulation.None\r\n})\r\nexport class DropDownToggleComponent{\r\n @HostListener('click',['$event'])\r\n click = (event: any) => this.dropdown.toggle(event);\r\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\r\n}\r\n\r\n/**\r\n * DropDownItemsComponent\r\n */\r\n@Component({\r\n selector: 'gd-drop-down-items',\r\n template: '
',\r\n styleUrls: ['./drop-down.component.less'],\r\n encapsulation : ViewEncapsulation.None\r\n})\r\nexport class DropDownItemsComponent{\r\n\r\n get horizontalAlign(){\r\n return horizontalAlignment[this.dropdown.getPlacement().h].right;\r\n }\r\n\r\n get verticalAlign(){\r\n return verticalAlignment[this.dropdown.getPlacement().v].top;\r\n }\r\n\r\n get isOpen(){\r\n return this.dropdown.open;\r\n }\r\n\r\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\r\n\r\n onClickOutside(event : Event ){\r\n this.dropdown.close();\r\n }\r\n}\r\n\r\n/**\r\n * DropDownItemComponent\r\n */\r\n@Component({\r\n selector: 'gd-drop-down-item',\r\n template: '
',\r\n styleUrls: ['./drop-down.component.less'],\r\n})\r\nexport class DropDownItemComponent{\r\n @HostBinding('class')\r\n class = 'drop-down-item';\r\n\r\n @Output()\r\n selected = new EventEmitter();\r\n\r\n @HostListener('click')\r\n click = () => this.selectEntry();\r\n\r\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\r\n\r\n selectEntry(){\r\n this.selected.next();\r\n this.dropdown.close();\r\n }\r\n}\r\n\r\n/**\r\n * DropDownComponent\r\n */\r\n@Component({\r\n selector: 'gd-drop-down',\r\n template: '
',\r\n styleUrls: ['./drop-down.component.less'],\r\n encapsulation : ViewEncapsulation.None\r\n})\r\nexport class DropDownComponent{\r\n @Input()\r\n placement = {\r\n h: \"center\",\r\n v: \"bottom\"\r\n };\r\n\r\n\r\n @Input()\r\n @HostBinding('class.show')\r\n open = false;\r\n\r\n @HostBinding('class')\r\n class = 'drop-down';\r\n\r\n close(){\r\n this.open = false;\r\n }\r\n\r\n toggle(event : MouseEvent){\r\n event.stopPropagation();\r\n this.open = !this.open;\r\n document.body.click();\r\n }\r\n\r\n getPlacement(){\r\n return this.placement;\r\n }\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-left-side-bar',\r\n templateUrl: './left-side-bar.component.html',\r\n styleUrls: ['./left-side-bar.component.less']\r\n})\r\nexport class LeftSideBarComponent implements OnInit {\r\n @Input() showSpinner = false;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Directive, EventEmitter, HostListener, Input, Output} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[gdTooltip]'\r\n})\r\nexport class TooltipDirective {\r\n\r\n @Output() showToolTip = new EventEmitter();\r\n\r\n constructor() {\r\n }\r\n\r\n @HostListener('mouseenter')\r\n public onHovering() {\r\n this.showToolTip.emit(true);\r\n }\r\n\r\n @HostListener('mouseleave')\r\n public onUnhovering() {\r\n this.showToolTip.emit(false);\r\n }\r\n\r\n}\r\n","import {\r\n ApplicationRef,\r\n ComponentFactoryResolver,\r\n Injectable,\r\n ViewContainerRef\r\n} from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AddDynamicComponentService {\r\n\r\n constructor(private _factoryResolver: ComponentFactoryResolver,\r\n private _appRef: ApplicationRef) {\r\n }\r\n\r\n addDynamicComponent(viewContainerRef: ViewContainerRef, component: any) {\r\n const factory = this._factoryResolver.resolveComponentFactory(component);\r\n const componentRef = viewContainerRef.createComponent(factory);\r\n\r\n componentRef.onDestroy(() => {\r\n this._appRef.detachView(componentRef.hostView);\r\n });\r\n\r\n return componentRef;\r\n }\r\n\r\n}\r\n","import {HostDynamicDirective} from \"./host-dynamic.directive\";\r\n\r\nexport class HostingDynamicComponentService {\r\n private hosts: HostDynamicDirective[];\r\n\r\n constructor() {\r\n this.hosts = [];\r\n }\r\n\r\n add(host: HostDynamicDirective) {\r\n this.hosts = this.hosts.filter(function (h) {\r\n return h.ident !== host.ident;\r\n });\r\n this.hosts.push(host);\r\n }\r\n\r\n remove(host: HostDynamicDirective) {\r\n this.hosts = this.hosts.filter(function (h) {\r\n return h.ident !== host.ident;\r\n });\r\n }\r\n\r\n find(ident: number) {\r\n return this.hosts.find(function (h) {\r\n return h.ident === ident;\r\n });\r\n }\r\n}\r\n","import {AfterViewInit, Directive, Input, OnDestroy, ViewContainerRef} from '@angular/core';\r\nimport {HostingDynamicComponentService} from \"./hosting-dynamic-component.service\";\r\n\r\n@Directive({\r\n selector: '[gdHostDynamic]'\r\n})\r\nexport class HostDynamicDirective implements AfterViewInit, OnDestroy {\r\n @Input() ident: number;\r\n\r\n constructor(public viewContainerRef: ViewContainerRef,\r\n private _hostingService: HostingDynamicComponentService) {\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this._hostingService.add(this);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._hostingService.remove(this);\r\n this.viewContainerRef.clear();\r\n }\r\n\r\n}\r\n","import {AfterViewInit, Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport * as jquery from \"jquery\";\r\nimport {Utils} from \"../file.service\";\r\n\r\nconst $ = jquery;\r\n\r\n@Component({\r\n selector: 'gd-resizing',\r\n templateUrl: './resizing.component.html',\r\n styleUrls: ['./resizing.component.less']\r\n})\r\nexport class ResizingComponent implements OnInit, AfterViewInit {\r\n\r\n @Input() init: boolean;\r\n @Input() id: number;\r\n @Input() se = false;\r\n @Input() ne = false;\r\n @Input() sw = false;\r\n @Input() nw = false;\r\n @Input() pageWidth: number;\r\n @Input() pageHeight: number;\r\n SE = 'se';\r\n NE = 'ne';\r\n SW = 'sw';\r\n NW = 'nw';\r\n\r\n @Output() offsetX = new EventEmitter();\r\n @Output() offsetY = new EventEmitter();\r\n @Output() offsetTop = new EventEmitter();\r\n @Output() offsetLeft = new EventEmitter();\r\n @Output() release = new EventEmitter();\r\n\r\n private grab = false;\r\n private oldPosition: { x: number, y: number };\r\n\r\n constructor() {\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n const elSE = $(this.getElementId(this.SE));\r\n const elNW = $(this.getElementId(this.NW));\r\n if (this.init && elSE && elNW && elSE.offset() && elNW.offset()) {\r\n let width = elSE.offset().left - elNW.offset().left;\r\n let height = elSE.offset().top - elNW.offset().top;\r\n while (width >= this.pageWidth || height >= this.pageHeight) {\r\n width = width / 2;\r\n height = height / 2;\r\n }\r\n setTimeout(() => {\r\n this.offsetX.emit(width);\r\n this.offsetY.emit(height);\r\n }, 100);\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n catchUp($event: DragEvent) {\r\n // ff\r\n $event.preventDefault();\r\n if ($event.dataTransfer) { // ff\r\n $event.dataTransfer.setData('text', 'foo');\r\n }\r\n this.grab = true;\r\n this.oldPosition = Utils.getMousePosition($event);\r\n }\r\n\r\n resize($event: DragEvent, el: string) {\r\n if (!this.grab) {\r\n return;\r\n }\r\n const position = Utils.getMousePosition($event);\r\n if (position.x === 0 && position.y === 0) {\r\n return;\r\n }\r\n const notSW = this.NE === el || this.NW === el;\r\n const notNE = this.SW === el || this.NW === el;\r\n this.setOffsets(position, notNE, notSW);\r\n if (notSW) {\r\n this.offsetTop.emit(position.y - this.oldPosition.y);\r\n }\r\n if (notNE) {\r\n this.offsetLeft.emit(position.x - this.oldPosition.x);\r\n }\r\n this.oldPosition = position;\r\n }\r\n\r\n private setOffsets(position, x: boolean, y: boolean) {\r\n const offsetX = x ? this.oldPosition.x - position.x : position.x - this.oldPosition.x;\r\n const offsetY = y ? this.oldPosition.y - position.y : position.y - this.oldPosition.y;\r\n this.offsetX.emit(offsetX);\r\n this.offsetY.emit(offsetY);\r\n }\r\n\r\n end($event: DragEvent, el: string) {\r\n // ff\r\n this.resize($event, el);\r\n this.release.emit(true);\r\n this.grab = false;\r\n }\r\n\r\n start($event: DragEvent) {\r\n this.drop($event);\r\n }\r\n\r\n drop($event: DragEvent) {\r\n $event.stopPropagation();\r\n $event.preventDefault();\r\n }\r\n\r\n private getElementId(el: string) {\r\n return \"#\" + el + \"-\" + this.id;\r\n }\r\n}\r\n","import {TabActivatorService} from \"./tab-activator.service\";\r\n\r\nexport class TopTabActivatorService extends TabActivatorService {\r\n\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {ExceptionMessageService} from \"../exception-message.service\";\r\nimport {TopTabActivatorService} from \"../top-tab-activator.service\";\r\nimport {ModalService, CommonModals} from \"../modal.service\";\r\n\r\n@Component({\r\n selector: 'gd-top-tab',\r\n templateUrl: './top-tab.component.html',\r\n styleUrls: ['./top-tab.component.less']\r\n})\r\nexport class TopTabComponent implements OnInit {\r\n @Input() id: string;\r\n @Input() icon: string;\r\n @Input() disabled = false;\r\n @Input() tooltip: string;\r\n @Output() activeTab = new EventEmitter();\r\n @Input() elementPosition = 0;\r\n public active = false;\r\n public showToolTip = false;\r\n\r\n constructor(private _tabActivatorService: TopTabActivatorService,\r\n private _modalService: ModalService,\r\n private _excMessageService: ExceptionMessageService) {\r\n this._tabActivatorService.activeTabChange.subscribe((tabId: string) => {\r\n this.activation(tabId);\r\n if (tabId === null) {\r\n this.activeTab.emit(\"\");\r\n }\r\n });\r\n }\r\n\r\n private activation(tabId: string) {\r\n if (this.id === tabId) {\r\n this.active = !this.active;\r\n if (this.active) {\r\n this.activeTab.emit(this.id);\r\n } else {\r\n this.activeTab.emit(\"\");\r\n }\r\n } else {\r\n this.active = false;\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n toggleTab() {\r\n if (this.disabled) {\r\n this._modalService.open(CommonModals.ErrorMessage);\r\n this._excMessageService.changeMessage(\"Please open document first\");\r\n return;\r\n }\r\n this._tabActivatorService.changeActiveTab(this.id);\r\n }\r\n\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output, ElementRef, Renderer2} from '@angular/core';\r\nimport * as jquery from 'jquery';\r\nimport {FormattingService} from \"../formatting.service\";\r\nimport {OnCloseService} from \"../on-close.service\";\r\nimport {Option} from \"../select/select.component\";\r\nimport { ZoomService } from '../zoom.service';\r\nimport { WindowService } from '../window.service';\r\n\r\nconst $ = jquery;\r\n\r\n@Component({\r\n selector: 'gd-text-menu',\r\n templateUrl: './text-menu.component.html',\r\n styleUrls: ['./text-menu.component.less']\r\n})\r\nexport class TextMenuComponent implements OnInit {\r\n @Input() blur: boolean;\r\n @Input() fontSize: number;\r\n @Input() font: string;\r\n @Input() bold: boolean;\r\n @Input() italic: boolean;\r\n @Input() underline: boolean;\r\n @Input() color: string;\r\n @Input() decoration = true;\r\n @Input() showTooltips = true;\r\n\r\n @Output() outFontSize = new EventEmitter();\r\n @Output() outFont = new EventEmitter();\r\n @Output() outBold = new EventEmitter();\r\n @Output() outItalic = new EventEmitter();\r\n @Output() outUnderline = new EventEmitter();\r\n @Output() outColor = new EventEmitter();\r\n\r\n fontSizeOptions = FormattingService.getFontSizeOptions();\r\n fontOptions = FormattingService.getFontOptions();\r\n colorPickerShow = false;\r\n\r\n isMobile: boolean;\r\n\r\n constructor(private _onCloseService: OnCloseService,\r\n private _zoomService: ZoomService,\r\n private _windowService: WindowService,\r\n protected _elementRef: ElementRef,\r\n private renderer: Renderer2) {\r\n \r\n _onCloseService.onClose.subscribe(() => {\r\n this.colorPickerShow = false;\r\n });\r\n\r\n this.isMobile = _windowService.isMobile();\r\n _windowService.onResize.subscribe((w) => {\r\n this.isMobile = _windowService.isMobile();\r\n });\r\n\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n if (this.isMobile)\r\n {\r\n this.changePosition(val);\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n changePosition(val: number) {\r\n const top = (window.innerHeight - 24 - this._elementRef.nativeElement.parentElement.getBoundingClientRect().top - this._elementRef.nativeElement.parentElement.getBoundingClientRect().height);\r\n const left = this._elementRef.nativeElement.parentElement.getBoundingClientRect().left;\r\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'width', window.innerWidth + 'px');\r\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'top', top + 'px');\r\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'left', -left + 'px');\r\n }\r\n\r\n selectFontSize($event: Option) {\r\n $(\".gd-wrapper\").off(\"keyup\");\r\n this.outFontSize.emit($event.value);\r\n $(\".gd-wrapper\").on(\"keyup\", () => {\r\n const fontElements = document.getElementsByTagName(\"font\");\r\n for (let i = 0, len = fontElements.length; i < len; ++i) {\r\n if (fontElements[i].getAttribute('size') === \"7\") {\r\n fontElements[i].removeAttribute(\"size\");\r\n fontElements[i].style.fontSize = $event + \"px\";\r\n }\r\n }\r\n });\r\n }\r\n\r\n selectFont($event: Option) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.outFont.emit($event.value);\r\n }\r\n\r\n toggleColorPicker($event) {\r\n $event.preventDefault();\r\n $event.stopPropagation();\r\n this.colorPickerShow = !this.colorPickerShow;\r\n }\r\n\r\n selectColor($event: string) {\r\n this.colorPickerShow = false;\r\n this.outColor.emit($event);\r\n }\r\n\r\n toggleBold(event) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.outBold.emit(!this.bold);\r\n }\r\n\r\n toggleItalic(event) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.outItalic.emit(!this.italic);\r\n }\r\n\r\n toggleUnderline(event) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.outUnderline.emit(!this.underline);\r\n }\r\n\r\n closePicker($event) {\r\n this.colorPickerShow = !$event;\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output, Renderer2, ElementRef} from '@angular/core';\r\nimport {Formatting} from \"../formatting.service\";\r\nimport {WindowService} from \"../window.service\";\r\nimport { ZoomService } from '../zoom.service';\r\n\r\nexport class MenuType {\r\n public static FOR_SIGNATURE = \"signature\";\r\n public static FOR_ANNOTATION = \"annotation\";\r\n}\r\n\r\n@Component({\r\n selector: 'gd-context-menu',\r\n templateUrl: './context-menu.component.html',\r\n styleUrls: ['./context-menu.component.less']\r\n})\r\nexport class ContextMenuComponent implements OnInit {\r\n @Input() formatting: Formatting = Formatting.default();\r\n @Input() textMenu: boolean;\r\n @Input() topPosition: number;\r\n @Input() lock = false;\r\n @Input() translation = 0;\r\n @Input() menuType: string;\r\n @Output() changeFormatting = new EventEmitter();\r\n @Output() removeItem = new EventEmitter();\r\n @Output() copySign = new EventEmitter();\r\n @Output() lockOut = new EventEmitter();\r\n @Output() comment = new EventEmitter();\r\n\r\n isMobile: boolean;\r\n\r\n constructor(private _windowService: WindowService,\r\n private _zoomService: ZoomService,\r\n protected _elementRef: ElementRef,\r\n private renderer: Renderer2) {\r\n this.isMobile = _windowService.isMobile();\r\n _windowService.onResize.subscribe((w) => {\r\n this.isMobile = _windowService.isMobile();\r\n });\r\n\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n if (this.isMobile)\r\n {\r\n this.changeScale(val);\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n changeScale(val: number){\r\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-context-menu'), 'transform', 'scale(' + 1/(val/100) + ')');\r\n }\r\n\r\n saveChanges() {\r\n this.changeFormatting.emit(this.formatting);\r\n }\r\n\r\n selectFontSize($event: number) {\r\n this.formatting.fontSize = $event;\r\n this.saveChanges();\r\n }\r\n\r\n selectFont($event: string) {\r\n this.formatting.font = $event;\r\n this.saveChanges();\r\n }\r\n\r\n selectColor($event: string) {\r\n this.formatting.color = $event;\r\n this.saveChanges();\r\n }\r\n\r\n toggleBold($event) {\r\n this.formatting.bold = $event;\r\n this.saveChanges();\r\n }\r\n\r\n toggleItalic($event) {\r\n this.formatting.italic = $event;\r\n this.saveChanges();\r\n }\r\n\r\n toggleUnderline($event) {\r\n this.formatting.underline = $event;\r\n this.saveChanges();\r\n }\r\n\r\n deleteItem() {\r\n this.removeItem.emit(true);\r\n }\r\n\r\n toggleLock() {\r\n this.lock = !this.lock;\r\n this.lockOut.emit(this.lock);\r\n }\r\n\r\n onCopySign() {\r\n this.copySign.emit(true);\r\n }\r\n\r\n isSignature() {\r\n return this.menuType === MenuType.FOR_SIGNATURE;\r\n }\r\n\r\n isAnnotation() {\r\n return this.menuType === MenuType.FOR_ANNOTATION;\r\n }\r\n\r\n addComment() {\r\n this.comment.emit(true);\r\n }\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {TopToolbarComponent} from './top-toolbar/top-toolbar.component';\r\nimport {SidePanelComponent} from './side-panel/side-panel.component';\r\nimport {ButtonComponent} from './button/button.component';\r\nimport {LogoComponent} from './logo/logo.component';\r\nimport {TooltipComponent} from './tooltip/tooltip.component';\r\nimport {FontAwesomeModule} from '@fortawesome/angular-fontawesome';\r\nimport {library} from '@fortawesome/fontawesome-svg-core';\r\nimport {fas} from '@fortawesome/free-solid-svg-icons';\r\nimport {far} from '@fortawesome/free-regular-svg-icons';\r\nimport {Api, ConfigService,} from \"./config.service\";\r\nimport {ModalService} from \"./modal.service\";\r\nimport {ModalComponent} from './modal/modal.component';\r\nimport {BrowseFilesModalComponent} from './browse-files-modal/browse-files-modal.component';\r\nimport {FileModel, FileService, FileUtil, Utils} from \"./file.service\";\r\nimport {DocumentComponent} from './document/document.component';\r\nimport {PageComponent} from './page/page.component';\r\nimport {HighlightSearchPipe, SanitizeHtmlPipe, SanitizeResourceHtmlPipe, SanitizeStylePipe} from \"./pipes\";\r\nimport {UploadFileZoneComponent} from './upload-file-zone/upload-file-zone.component';\r\nimport {UploadFilesService} from \"./upload-files.service\";\r\nimport {DndDirective} from './dnd.directive';\r\nimport {ScrollableDirective} from './scrollable.directive';\r\nimport {MouseWheelDirective} from './mousewheel.directive';\r\nimport {NavigateService} from \"./navigate.service\";\r\nimport {PagePreloadService} from \"./page-preload.service\";\r\nimport {ZoomDirective} from './zoom.directive';\r\nimport {ZoomService} from \"./zoom.service\";\r\nimport {SelectComponent} from './select/select.component';\r\nimport {DisabledCursorDirective} from './disabled-cursor.directive';\r\nimport {RotationDirective} from './rotation.directive';\r\nimport {InitStateComponent} from './init-state/init-state.component';\r\nimport {RenderPrintService} from \"./render-print.service\";\r\nimport {RenderPrintDirective} from './render-print.directive';\r\nimport {ErrorModalComponent} from './error-modal/error-modal.component';\r\nimport {PasswordRequiredComponent} from './password-required/password-required.component';\r\nimport {ExceptionMessageService} from \"./exception-message.service\";\r\nimport {PasswordService} from \"./password.service\";\r\nimport {ErrorInterceptorService} from \"./error-interceptor.service\";\r\nimport {SearchComponent} from './search/search.component';\r\nimport {SearchableDirective} from './searchable.directive';\r\nimport {SearchService} from \"./search.service\";\r\nimport {WindowService} from \"./window.service\";\r\nimport {ViewportService} from \"./viewport.service\";\r\nimport {TabbedToolbarsComponent} from './tabbed-toolbars/tabbed-toolbars.component';\r\nimport {TabComponent} from \"./tab/tab.component\";\r\nimport {TabsComponent} from \"./tabs/tabs.component\";\r\nimport {FormattingService} from \"./formatting.service\";\r\nimport {ColorPickerComponent} from './color-picker/color-picker.component';\r\nimport {FormattingDirective} from './formatting.directive';\r\nimport {BackFormattingService} from \"./back-formatting.service\";\r\nimport {OnCloseService} from \"./on-close.service\";\r\nimport {SuccessModalComponent} from './success-modal/success-modal.component';\r\nimport {EditorDirective} from './editor.directive';\r\nimport {LoadingMaskComponent} from './loading-mask/loading-mask.component';\r\nimport {LoadingMaskService} from './loading-mask.service';\r\nimport {LoadingMaskInterceptorService} from \"./loading-mask-interceptor.service\";\r\nimport {TabActivatorService} from \"./tab-activator.service\";\r\nimport {\r\n DropDownComponent,\r\n DropDownItemComponent,\r\n DropDownItemsComponent,\r\n DropDownToggleComponent\r\n} from './drop-down/drop-down.component';\r\nimport {ClickOutsideModule} from 'ng-click-outside';\r\nimport {LeftSideBarComponent} from './left-side-bar/left-side-bar.component';\r\nimport {TooltipDirective} from './tooltip.directive';\r\nimport {AddDynamicComponentService} from \"./add-dynamic-component.service\";\r\nimport {HostDynamicDirective} from './host-dynamic.directive';\r\nimport {HostingDynamicComponentService} from \"./hosting-dynamic-component.service\";\r\nimport {ResizingComponent} from './resizing/resizing.component';\r\nimport {TopTabComponent} from './top-tab/top-tab.component';\r\nimport {TopTabActivatorService} from \"./top-tab-activator.service\";\r\nimport {TextMenuComponent} from './text-menu/text-menu.component';\r\nimport {ContextMenuComponent} from './context-menu/context-menu.component';\r\n\r\nconst providers = [ConfigService,\r\n Api,\r\n ModalService,\r\n FileService,\r\n FileModel,\r\n FileUtil,\r\n Utils,\r\n SanitizeHtmlPipe,\r\n SanitizeResourceHtmlPipe,\r\n SanitizeStylePipe,\r\n HighlightSearchPipe,\r\n UploadFilesService,\r\n RenderPrintService,\r\n NavigateService,\r\n PagePreloadService,\r\n ZoomService,\r\n ExceptionMessageService,\r\n PasswordService,\r\n ErrorInterceptorService,\r\n SearchService,\r\n WindowService,\r\n ViewportService,\r\n FormattingService,\r\n BackFormattingService,\r\n OnCloseService,\r\n LoadingMaskInterceptorService,\r\n LoadingMaskService,\r\n TabActivatorService,\r\n AddDynamicComponentService,\r\n HostingDynamicComponentService,\r\n TopTabActivatorService];\r\n\r\n@NgModule({\r\n imports: [CommonModule, FontAwesomeModule, ClickOutsideModule],\r\n declarations: [\r\n TopToolbarComponent,\r\n SidePanelComponent,\r\n ButtonComponent,\r\n LogoComponent,\r\n TooltipComponent,\r\n ModalComponent,\r\n BrowseFilesModalComponent,\r\n DocumentComponent,\r\n PageComponent,\r\n SanitizeHtmlPipe,\r\n SanitizeResourceHtmlPipe,\r\n SanitizeStylePipe,\r\n HighlightSearchPipe,\r\n UploadFileZoneComponent,\r\n DndDirective,\r\n ScrollableDirective,\r\n MouseWheelDirective,\r\n ZoomDirective,\r\n SelectComponent,\r\n DisabledCursorDirective,\r\n RotationDirective,\r\n InitStateComponent,\r\n RenderPrintDirective,\r\n ErrorModalComponent,\r\n PasswordRequiredComponent,\r\n SearchComponent,\r\n SearchableDirective,\r\n TabbedToolbarsComponent,\r\n TabComponent,\r\n TabsComponent,\r\n ColorPickerComponent,\r\n FormattingDirective,\r\n SuccessModalComponent,\r\n EditorDirective,\r\n LoadingMaskComponent,\r\n DropDownComponent,\r\n DropDownItemComponent,\r\n DropDownItemsComponent,\r\n DropDownToggleComponent,\r\n LeftSideBarComponent,\r\n TooltipDirective,\r\n HostDynamicDirective,\r\n ResizingComponent,\r\n TopTabComponent,\r\n TextMenuComponent,\r\n ContextMenuComponent\r\n ],\r\n exports: [\r\n TopToolbarComponent,\r\n SidePanelComponent,\r\n ButtonComponent,\r\n LogoComponent,\r\n TooltipComponent,\r\n ModalComponent,\r\n BrowseFilesModalComponent,\r\n DocumentComponent,\r\n PageComponent,\r\n SanitizeResourceHtmlPipe,\r\n SanitizeStylePipe,\r\n HighlightSearchPipe,\r\n SanitizeHtmlPipe,\r\n UploadFileZoneComponent,\r\n ScrollableDirective,\r\n MouseWheelDirective,\r\n SelectComponent,\r\n RotationDirective,\r\n InitStateComponent,\r\n RenderPrintDirective,\r\n ErrorModalComponent,\r\n PasswordRequiredComponent,\r\n SearchComponent,\r\n SearchableDirective,\r\n TabbedToolbarsComponent,\r\n TabComponent,\r\n TabsComponent,\r\n ColorPickerComponent,\r\n FormattingDirective,\r\n SuccessModalComponent,\r\n LoadingMaskComponent,\r\n DndDirective,\r\n DropDownComponent,\r\n DropDownItemComponent,\r\n DropDownItemsComponent,\r\n DropDownToggleComponent,\r\n ZoomDirective,\r\n DropDownToggleComponent,\r\n LeftSideBarComponent,\r\n TooltipDirective,\r\n HostDynamicDirective,\r\n ResizingComponent,\r\n TopTabComponent,\r\n TextMenuComponent,\r\n ContextMenuComponent\r\n ],\r\n providers: providers\r\n})\r\nexport class CommonComponentsModule {\r\n constructor() {\r\n library.add(fas, far);\r\n }\r\n}\r\n"]} \ No newline at end of file diff --git a/dist/libs/common-components/esm2015/lib/resizing/resizing.component.js b/dist/libs/common-components/esm2015/lib/resizing/resizing.component.js index b2c38bdb9..074d46eb7 100644 --- a/dist/libs/common-components/esm2015/lib/resizing/resizing.component.js +++ b/dist/libs/common-components/esm2015/lib/resizing/resizing.component.js @@ -148,8 +148,8 @@ export class ResizingComponent { ResizingComponent.decorators = [ { type: Component, args: [{ selector: 'gd-resizing', - template: "
\n\n
\n\n
\n\n
\n", - styles: [".ui-resizable-handle{background-color:#679ffa;width:8px;height:8px;border-radius:100%;position:absolute;font-size:.1px;display:block}.se-resize{bottom:-5px;right:-5px;cursor:se-resize}.ne-resize{top:-5px;right:-5px;cursor:ne-resize}.sw-resize{bottom:-5px;left:-5px;cursor:sw-resize}.nw-resize{top:-5px;left:-5px;cursor:nw-resize}"] + template: "
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n", + styles: [".ui-resizable-handle{background-color:#679ffa;width:8px;height:8px;border-radius:100%;position:absolute;font-size:.1px;display:block}.se-resize{bottom:-5px;right:-5px;cursor:se-resize}.ne-resize{top:-5px;right:-5px;cursor:ne-resize}.sw-resize{bottom:-5px;left:-5px;cursor:sw-resize}.nw-resize{top:-5px;left:-5px;cursor:nw-resize}@media (max-width:1037px){.ui-resizable-handle{width:12px;height:12px}}"] }] } ]; /** @nocollapse */ @@ -215,4 +215,4 @@ if (false) { */ ResizingComponent.prototype.oldPosition; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXppbmcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGdyb3VwZG9jcy5leGFtcGxlcy5hbmd1bGFyL2NvbW1vbi1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsibGliL3Jlc2l6aW5nL3Jlc2l6aW5nLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUYsT0FBTyxLQUFLLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFDakMsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLGlCQUFpQixDQUFDOztNQUVoQyxDQUFDLEdBQUcsTUFBTTtBQU9oQixNQUFNLE9BQU8saUJBQWlCO0lBd0I1QjtRQXBCUyxPQUFFLEdBQUcsS0FBSyxDQUFDO1FBQ1gsT0FBRSxHQUFHLEtBQUssQ0FBQztRQUNYLE9BQUUsR0FBRyxLQUFLLENBQUM7UUFDWCxPQUFFLEdBQUcsS0FBSyxDQUFDO1FBR3BCLE9BQUUsR0FBRyxJQUFJLENBQUM7UUFDVixPQUFFLEdBQUcsSUFBSSxDQUFDO1FBQ1YsT0FBRSxHQUFHLElBQUksQ0FBQztRQUNWLE9BQUUsR0FBRyxJQUFJLENBQUM7UUFFQSxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUNyQyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUNyQyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUN2QyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUN4QyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUV4QyxTQUFJLEdBQUcsS0FBSyxDQUFDO0lBSXJCLENBQUM7Ozs7SUFFRCxlQUFlOztjQUNQLElBQUksR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7O2NBQ3BDLElB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QkFDTCxLQUFLO3dCQUNMLEtBQUs7eUJBQ0wsS0FBSztzQkFNTCxNQUFNO3NCQUNOLE1BQU07d0JBQ04sTUFBTTt5QkFDTixNQUFNO3NCQUNOLE1BQU07Ozs7SUFqQlAsaUNBQXVCOztJQUN2QiwrQkFBb0I7O0lBQ3BCLCtCQUFvQjs7SUFDcEIsK0JBQW9COztJQUNwQiwrQkFBb0I7O0lBQ3BCLCtCQUFvQjs7SUFDcEIsc0NBQTJCOztJQUMzQix1Q0FBNEI7O0lBQzVCLCtCQUFVOztJQUNWLCtCQUFVOztJQUNWLCtCQUFVOztJQUNWLCtCQUFVOztJQUVWLG9DQUErQzs7SUFDL0Msb0NBQStDOztJQUMvQyxzQ0FBaUQ7O0lBQ2pELHVDQUFrRDs7SUFDbEQsb0NBQWdEOzs7OztJQUVoRCxpQ0FBcUI7Ozs7O0lBQ3JCLHdDQUE4QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgKiBhcyBqcXVlcnkgZnJvbSBcImpxdWVyeVwiO1xuaW1wb3J0IHtVdGlsc30gZnJvbSBcIi4uL2ZpbGUuc2VydmljZVwiO1xuXG5jb25zdCAkID0ganF1ZXJ5O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnZC1yZXNpemluZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9yZXNpemluZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Jlc2l6aW5nLmNvbXBvbmVudC5sZXNzJ11cbn0pXG5leHBvcnQgY2xhc3MgUmVzaXppbmdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuXG4gIEBJbnB1dCgpIGluaXQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGlkOiBudW1iZXI7XG4gIEBJbnB1dCgpIHNlID0gZmFsc2U7XG4gIEBJbnB1dCgpIG5lID0gZmFsc2U7XG4gIEBJbnB1dCgpIHN3ID0gZmFsc2U7XG4gIEBJbnB1dCgpIG53ID0gZmFsc2U7XG4gIEBJbnB1dCgpIHBhZ2VXaWR0aDogbnVtYmVyO1xuICBASW5wdXQoKSBwYWdlSGVpZ2h0OiBudW1iZXI7XG4gIFNFID0gJ3NlJztcbiAgTkUgPSAnbmUnO1xuICBTVyA9ICdzdyc7XG4gIE5XID0gJ253JztcblxuICBAT3V0cHV0KCkgb2Zmc2V0WCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuICBAT3V0cHV0KCkgb2Zmc2V0WSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuICBAT3V0cHV0KCkgb2Zmc2V0VG9wID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG4gIEBPdXRwdXQoKSBvZmZzZXRMZWZ0ID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG4gIEBPdXRwdXQoKSByZWxlYXNlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIHByaXZhdGUgZ3JhYiA9IGZhbHNlO1xuICBwcml2YXRlIG9sZFBvc2l0aW9uOiB7IHg6IG51bWJlciwgeTogbnVtYmVyIH07XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgY29uc3QgZWxTRSA9ICQodGhpcy5nZXRFbGVtZW50SWQodGhpcy5TRSkpO1xuICAgIGNvbnN0IGVsTlcgPSAkKHRoaXMuZ2V0RWxlbWVudElkKHRoaXMuTlcpKTtcbiAgICBpZiAodGhpcy5pbml0ICYmIGVsU0UgJiYgZWxOVyAmJiBlbFNFLm9mZnNldCgpICYmIGVsTlcub2Zmc2V0KCkpIHtcbiAgICAgIGxldCB3aWR0aCA9IGVsU0Uub2Zmc2V0KCkubGVmdCAtIGVsTlcub2Zmc2V0KCkubGVmdDtcbiAgICAgIGxldCBoZWlnaHQgPSBlbFNFLm9mZnNldCgpLnRvcCAtIGVsTlcub2Zmc2V0KCkudG9wO1xuICAgICAgd2hpbGUgKHdpZHRoID49IHRoaXMucGFnZVdpZHRoIHx8IGhlaWdodCA+PSB0aGlzLnBhZ2VIZWlnaHQpIHtcbiAgICAgICAgd2lkdGggPSB3aWR0aCAvIDI7XG4gICAgICAgIGhlaWdodCA9IGhlaWdodCAvIDI7XG4gICAgICB9XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5vZmZzZXRYLmVtaXQod2lkdGgpO1xuICAgICAgICB0aGlzLm9mZnNldFkuZW1pdChoZWlnaHQpO1xuICAgICAgfSwgMTAwKTtcbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgfVxuXG4gIGNhdGNoVXAoJGV2ZW50OiBEcmFnRXZlbnQpIHtcbiAgICAvLyBmZlxuICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGlmICgkZXZlbnQuZGF0YVRyYW5zZmVyKSB7IC8vIGZmXG4gICAgICAkZXZlbnQuZGF0YVRyYW5zZmVyLnNldERhdGEoJ3RleHQnLCAnZm9vJyk7XG4gICAgfVxuICAgIHRoaXMuZ3JhYiA9IHRydWU7XG4gICAgdGhpcy5vbGRQb3NpdGlvbiA9IFV0aWxzLmdldE1vdXNlUG9zaXRpb24oJGV2ZW50KTtcbiAgfVxuXG4gIHJlc2l6ZSgkZXZlbnQ6IERyYWdFdmVudCwgZWw6IHN0cmluZykge1xuICAgIGlmICghdGhpcy5ncmFiKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHBvc2l0aW9uID0gVXRpbHMuZ2V0TW91c2VQb3NpdGlvbigkZXZlbnQpO1xuICAgIGlmIChwb3NpdGlvbi54ID09PSAwICYmIHBvc2l0aW9uLnkgPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3Qgbm90U1cgPSB0aGlzLk5FID09PSBlbCB8fCB0aGlzLk5XID09PSBlbDtcbiAgICBjb25zdCBub3RORSA9IHRoaXMuU1cgPT09IGVsIHx8IHRoaXMuTlcgPT09IGVsO1xuICAgIHRoaXMuc2V0T2Zmc2V0cyhwb3NpdGlvbiwgbm90TkUsIG5vdFNXKTtcbiAgICBpZiAobm90U1cpIHtcbiAgICAgIHRoaXMub2Zmc2V0VG9wLmVtaXQocG9zaXRpb24ueSAtIHRoaXMub2xkUG9zaXRpb24ueSk7XG4gICAgfVxuICAgIGlmIChub3RORSkge1xuICAgICAgdGhpcy5vZmZzZXRMZWZ0LmVtaXQocG9zaXRpb24ueCAtIHRoaXMub2xkUG9zaXRpb24ueCk7XG4gICAgfVxuICAgIHRoaXMub2xkUG9zaXRpb24gPSBwb3NpdGlvbjtcbiAgfVxuXG4gIHByaXZhdGUgc2V0T2Zmc2V0cyhwb3NpdGlvbiwgeDogYm9vbGVhbiwgeTogYm9vbGVhbikge1xuICAgIGNvbnN0IG9mZnNldFggPSB4ID8gdGhpcy5vbGRQb3NpdGlvbi54IC0gcG9zaXRpb24ueCA6IHBvc2l0aW9uLnggLSB0aGlzLm9sZFBvc2l0aW9uLng7XG4gICAgY29uc3Qgb2Zmc2V0WSA9IHkgPyB0aGlzLm9sZFBvc2l0aW9uLnkgLSBwb3NpdGlvbi55IDogcG9zaXRpb24ueSAtIHRoaXMub2xkUG9zaXRpb24ueTtcbiAgICB0aGlzLm9mZnNldFguZW1pdChvZmZzZXRYKTtcbiAgICB0aGlzLm9mZnNldFkuZW1pdChvZmZzZXRZKTtcbiAgfVxuXG4gIGVuZCgkZXZlbnQ6IERyYWdFdmVudCwgZWw6IHN0cmluZykge1xuICAgIC8vIGZmXG4gICAgdGhpcy5yZXNpemUoJGV2ZW50LCBlbCk7XG4gICAgdGhpcy5yZWxlYXNlLmVtaXQodHJ1ZSk7XG4gICAgdGhpcy5ncmFiID0gZmFsc2U7XG4gIH1cblxuICBzdGFydCgkZXZlbnQ6IERyYWdFdmVudCkge1xuICAgIHRoaXMuZHJvcCgkZXZlbnQpO1xuICB9XG5cbiAgZHJvcCgkZXZlbnQ6IERyYWdFdmVudCkge1xuICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RWxlbWVudElkKGVsOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gXCIjXCIgKyBlbCArIFwiLVwiICsgdGhpcy5pZDtcbiAgfVxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXppbmcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGdyb3VwZG9jcy5leGFtcGxlcy5hbmd1bGFyL2NvbW1vbi1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsibGliL3Jlc2l6aW5nL3Jlc2l6aW5nLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUYsT0FBTyxLQUFLLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFDakMsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLGlCQUFpQixDQUFDOztNQUVoQyxDQUFDLEdBQUcsTUFBTTtBQU9oQixNQUFNLE9BQU8saUJBQWlCO0lBd0I1QjtRQXBCUyxPQUFFLEdBQUcsS0FBSyxDQUFDO1FBQ1gsT0FBRSxHQUFHLEtBQUssQ0FBQztRQUNYLE9BQUUsR0FBRyxLQUFLLENBQUM7UUFDWCxPQUFFLEdBQUcsS0FBSyxDQUFDO1FBR3BCLE9BQUUsR0FBRyxJQUFJLENBQUM7UUFDVixPQUFFLEdBQUcsSUFBSSxDQUFDO1FBQ1YsT0FBRSxHQUFHLElBQUksQ0FBQztRQUNWLE9BQUUsR0FBRyxJQUFJLENBQUM7UUFFQSxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUNyQyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUNyQyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUN2QyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUN4QyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUV4QyxTQUFJLEdBQUcsS0FBSyxDQUFDO0lBSXJCLENBQUM7Ozs7SUFFRCxlQUFlOztjQUNQLElBQUksR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7O2NBQ3BDLElBQUksR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDMUMsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBRTs7Z0JBQzNELEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxJQUFJOztnQkFDL0MsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUc7WUFDbEQsT0FBTyxLQUFLLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxNQUFNLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDM0QsS0FBSyxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUM7Z0JBQ2xCLE1BQU0sR0FBRyxNQUFNLEdBQUcsQ0FBQyxDQUFDO2FBQ3JCO1lBQ0QsVUFBVTs7O1lBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUN6QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUM1QixDQUFDLEdBQUUsR0FBRyxDQUFDLENBQUM7U0FDVDtJQUNILENBQUM7Ozs7SUFFRCxRQUFRO0lBQ1IsQ0FBQzs7Ozs7SUFFRCxPQUFPLENBQUMsTUFBaUI7UUFDdkIsS0FBSztRQUNMLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN4QixJQUFJLE1BQU0sQ0FBQyxZQUFZLEVBQUUsRUFBRSxLQUFLO1lBQzlCLE1BQU0sQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztTQUM1QztRQUNELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3BELENBQUM7Ozs7OztJQUVELE1BQU0sQ0FBQyxNQUFpQixFQUFFLEVBQVU7UUFDbEMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDZCxPQUFPO1NBQ1I7O2NBQ0ssUUFBUSxHQUFHLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUM7UUFDL0MsSUFBSSxRQUFRLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxRQUFRLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN4QyxPQUFPO1NBQ1I7O2NBQ0ssS0FBSyxHQUFHLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRTs7Y0FDeEMsS0FBSyxHQUFHLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRTtRQUM5QyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDeEMsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDdEQ7UUFDRCxJQUFJLEtBQUssRUFBRTtZQUNULElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN2RDtRQUNELElBQUksQ0FBQyxXQUFXLEdBQUcsUUFBUSxDQUFDO0lBQzlCLENBQUM7Ozs7Ozs7O0lBRU8sVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFVLEVBQUUsQ0FBVTs7Y0FDM0MsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7O2NBQy9FLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3JGLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzdCLENBQUM7Ozs7OztJQUVELEdBQUcsQ0FBQyxNQUFpQixFQUFFLEVBQVU7UUFDL0IsS0FBSztRQUNMLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO0lBQ3BCLENBQUM7Ozs7O0lBRUQsS0FBSyxDQUFDLE1BQWlCO1FBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEIsQ0FBQzs7Ozs7SUFFRCxJQUFJLENBQUMsTUFBaUI7UUFDcEIsTUFBTSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUMxQixDQUFDOzs7Ozs7SUFFTyxZQUFZLENBQUMsRUFBVTtRQUM3QixPQUFPLEdBQUcsR0FBRyxFQUFFLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUM7SUFDbEMsQ0FBQzs7O1lBM0dGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsYUFBYTtnQkFDdkIseTdDQUF3Qzs7YUFFekM7Ozs7O21CQUdFLEtBQUs7aUJBQ0wsS0FBSztpQkFDTCxLQUFLO2lCQUNMLEtBQUs7aUJBQ0wsS0FBSztpQkFDTCxLQUFLO3dCQUNMLEtBQUs7eUJBQ0wsS0FBSztzQkFNTCxNQUFNO3NCQUNOLE1BQU07d0JBQ04sTUFBTTt5QkFDTixNQUFNO3NCQUNOLE1BQU07Ozs7SUFqQlAsaUNBQXVCOztJQUN2QiwrQkFBb0I7O0lBQ3BCLCtCQUFvQjs7SUFDcEIsK0JBQW9COztJQUNwQiwrQkFBb0I7O0lBQ3BCLCtCQUFvQjs7SUFDcEIsc0NBQTJCOztJQUMzQix1Q0FBNEI7O0lBQzVCLCtCQUFVOztJQUNWLCtCQUFVOztJQUNWLCtCQUFVOztJQUNWLCtCQUFVOztJQUVWLG9DQUErQzs7SUFDL0Msb0NBQStDOztJQUMvQyxzQ0FBaUQ7O0lBQ2pELHVDQUFrRDs7SUFDbEQsb0NBQWdEOzs7OztJQUVoRCxpQ0FBcUI7Ozs7O0lBQ3JCLHdDQUE4QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCAqIGFzIGpxdWVyeSBmcm9tIFwianF1ZXJ5XCI7XHJcbmltcG9ydCB7VXRpbHN9IGZyb20gXCIuLi9maWxlLnNlcnZpY2VcIjtcclxuXHJcbmNvbnN0ICQgPSBqcXVlcnk7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2dkLXJlc2l6aW5nJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcmVzaXppbmcuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3Jlc2l6aW5nLmNvbXBvbmVudC5sZXNzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFJlc2l6aW5nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuXHJcbiAgQElucHV0KCkgaW5pdDogYm9vbGVhbjtcclxuICBASW5wdXQoKSBpZDogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIHNlID0gZmFsc2U7XHJcbiAgQElucHV0KCkgbmUgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzdyA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIG53ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcGFnZVdpZHRoOiBudW1iZXI7XHJcbiAgQElucHV0KCkgcGFnZUhlaWdodDogbnVtYmVyO1xyXG4gIFNFID0gJ3NlJztcclxuICBORSA9ICduZSc7XHJcbiAgU1cgPSAnc3cnO1xyXG4gIE5XID0gJ253JztcclxuXHJcbiAgQE91dHB1dCgpIG9mZnNldFggPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcclxuICBAT3V0cHV0KCkgb2Zmc2V0WSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG4gIEBPdXRwdXQoKSBvZmZzZXRUb3AgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcclxuICBAT3V0cHV0KCkgb2Zmc2V0TGVmdCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG4gIEBPdXRwdXQoKSByZWxlYXNlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICBwcml2YXRlIGdyYWIgPSBmYWxzZTtcclxuICBwcml2YXRlIG9sZFBvc2l0aW9uOiB7IHg6IG51bWJlciwgeTogbnVtYmVyIH07XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgY29uc3QgZWxTRSA9ICQodGhpcy5nZXRFbGVtZW50SWQodGhpcy5TRSkpO1xyXG4gICAgY29uc3QgZWxOVyA9ICQodGhpcy5nZXRFbGVtZW50SWQodGhpcy5OVykpO1xyXG4gICAgaWYgKHRoaXMuaW5pdCAmJiBlbFNFICYmIGVsTlcgJiYgZWxTRS5vZmZzZXQoKSAmJiBlbE5XLm9mZnNldCgpKSB7XHJcbiAgICAgIGxldCB3aWR0aCA9IGVsU0Uub2Zmc2V0KCkubGVmdCAtIGVsTlcub2Zmc2V0KCkubGVmdDtcclxuICAgICAgbGV0IGhlaWdodCA9IGVsU0Uub2Zmc2V0KCkudG9wIC0gZWxOVy5vZmZzZXQoKS50b3A7XHJcbiAgICAgIHdoaWxlICh3aWR0aCA+PSB0aGlzLnBhZ2VXaWR0aCB8fCBoZWlnaHQgPj0gdGhpcy5wYWdlSGVpZ2h0KSB7XHJcbiAgICAgICAgd2lkdGggPSB3aWR0aCAvIDI7XHJcbiAgICAgICAgaGVpZ2h0ID0gaGVpZ2h0IC8gMjtcclxuICAgICAgfVxyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLm9mZnNldFguZW1pdCh3aWR0aCk7XHJcbiAgICAgICAgdGhpcy5vZmZzZXRZLmVtaXQoaGVpZ2h0KTtcclxuICAgICAgfSwgMTAwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gIH1cclxuXHJcbiAgY2F0Y2hVcCgkZXZlbnQ6IERyYWdFdmVudCkge1xyXG4gICAgLy8gZmZcclxuICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgaWYgKCRldmVudC5kYXRhVHJhbnNmZXIpIHsgLy8gZmZcclxuICAgICAgJGV2ZW50LmRhdGFUcmFuc2Zlci5zZXREYXRhKCd0ZXh0JywgJ2ZvbycpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5ncmFiID0gdHJ1ZTtcclxuICAgIHRoaXMub2xkUG9zaXRpb24gPSBVdGlscy5nZXRNb3VzZVBvc2l0aW9uKCRldmVudCk7XHJcbiAgfVxyXG5cclxuICByZXNpemUoJGV2ZW50OiBEcmFnRXZlbnQsIGVsOiBzdHJpbmcpIHtcclxuICAgIGlmICghdGhpcy5ncmFiKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IHBvc2l0aW9uID0gVXRpbHMuZ2V0TW91c2VQb3NpdGlvbigkZXZlbnQpO1xyXG4gICAgaWYgKHBvc2l0aW9uLnggPT09IDAgJiYgcG9zaXRpb24ueSA9PT0gMCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBjb25zdCBub3RTVyA9IHRoaXMuTkUgPT09IGVsIHx8IHRoaXMuTlcgPT09IGVsO1xyXG4gICAgY29uc3Qgbm90TkUgPSB0aGlzLlNXID09PSBlbCB8fCB0aGlzLk5XID09PSBlbDtcclxuICAgIHRoaXMuc2V0T2Zmc2V0cyhwb3NpdGlvbiwgbm90TkUsIG5vdFNXKTtcclxuICAgIGlmIChub3RTVykge1xyXG4gICAgICB0aGlzLm9mZnNldFRvcC5lbWl0KHBvc2l0aW9uLnkgLSB0aGlzLm9sZFBvc2l0aW9uLnkpO1xyXG4gICAgfVxyXG4gICAgaWYgKG5vdE5FKSB7XHJcbiAgICAgIHRoaXMub2Zmc2V0TGVmdC5lbWl0KHBvc2l0aW9uLnggLSB0aGlzLm9sZFBvc2l0aW9uLngpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5vbGRQb3NpdGlvbiA9IHBvc2l0aW9uO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRPZmZzZXRzKHBvc2l0aW9uLCB4OiBib29sZWFuLCB5OiBib29sZWFuKSB7XHJcbiAgICBjb25zdCBvZmZzZXRYID0geCA/IHRoaXMub2xkUG9zaXRpb24ueCAtIHBvc2l0aW9uLnggOiBwb3NpdGlvbi54IC0gdGhpcy5vbGRQb3NpdGlvbi54O1xyXG4gICAgY29uc3Qgb2Zmc2V0WSA9IHkgPyB0aGlzLm9sZFBvc2l0aW9uLnkgLSBwb3NpdGlvbi55IDogcG9zaXRpb24ueSAtIHRoaXMub2xkUG9zaXRpb24ueTtcclxuICAgIHRoaXMub2Zmc2V0WC5lbWl0KG9mZnNldFgpO1xyXG4gICAgdGhpcy5vZmZzZXRZLmVtaXQob2Zmc2V0WSk7XHJcbiAgfVxyXG5cclxuICBlbmQoJGV2ZW50OiBEcmFnRXZlbnQsIGVsOiBzdHJpbmcpIHtcclxuICAgIC8vIGZmXHJcbiAgICB0aGlzLnJlc2l6ZSgkZXZlbnQsIGVsKTtcclxuICAgIHRoaXMucmVsZWFzZS5lbWl0KHRydWUpO1xyXG4gICAgdGhpcy5ncmFiID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBzdGFydCgkZXZlbnQ6IERyYWdFdmVudCkge1xyXG4gICAgdGhpcy5kcm9wKCRldmVudCk7XHJcbiAgfVxyXG5cclxuICBkcm9wKCRldmVudDogRHJhZ0V2ZW50KSB7XHJcbiAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0RWxlbWVudElkKGVsOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiBcIiNcIiArIGVsICsgXCItXCIgKyB0aGlzLmlkO1xyXG4gIH1cclxufVxyXG4iXX0= \ No newline at end of file diff --git a/dist/libs/common-components/esm5/lib/resizing/resizing.component.js b/dist/libs/common-components/esm5/lib/resizing/resizing.component.js index 7c1949c96..0dd0f98ea 100644 --- a/dist/libs/common-components/esm5/lib/resizing/resizing.component.js +++ b/dist/libs/common-components/esm5/lib/resizing/resizing.component.js @@ -188,8 +188,8 @@ var ResizingComponent = /** @class */ (function () { ResizingComponent.decorators = [ { type: Component, args: [{ selector: 'gd-resizing', - template: "
\n\n
\n\n
\n\n
\n", - styles: [".ui-resizable-handle{background-color:#679ffa;width:8px;height:8px;border-radius:100%;position:absolute;font-size:.1px;display:block}.se-resize{bottom:-5px;right:-5px;cursor:se-resize}.ne-resize{top:-5px;right:-5px;cursor:ne-resize}.sw-resize{bottom:-5px;left:-5px;cursor:sw-resize}.nw-resize{top:-5px;left:-5px;cursor:nw-resize}"] + template: "
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n", + styles: [".ui-resizable-handle{background-color:#679ffa;width:8px;height:8px;border-radius:100%;position:absolute;font-size:.1px;display:block}.se-resize{bottom:-5px;right:-5px;cursor:se-resize}.ne-resize{top:-5px;right:-5px;cursor:ne-resize}.sw-resize{bottom:-5px;left:-5px;cursor:sw-resize}.nw-resize{top:-5px;left:-5px;cursor:nw-resize}@media (max-width:1037px){.ui-resizable-handle{width:12px;height:12px}}"] }] } ]; /** @nocollapse */ @@ -258,4 +258,4 @@ if (false) { */ ResizingComponent.prototype.oldPosition; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXppbmcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGdyb3VwZG9jcy5leGFtcGxlcy5hbmd1bGFyL2NvbW1vbi1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsibGliL3Jlc2l6aW5nL3Jlc2l6aW5nLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUYsT0FBTyxLQUFLLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFDakMsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLGlCQUFpQixDQUFDOztJQUVoQyxDQUFDLEdBQUcsTUFBTTtBQUVoQjtJQTZCRTtRQXBCUyxPQUFFLEdBQUcsS0FBSyxDQUFDO1FBQ1gsT0FBRSxHQUFHLEtBQUssQ0FBQztRQUNYLE9BQUUsR0FBRyxLQUFLLENBQUM7UUFDWCxPQUFFLEdBQUcsS0FBSyxDQUFDO1FBR3BCLE9BQUUsR0FBRyxJQUFJLENBQUM7UUFDVixPQUFFLEdBQUcsSUFBSSxDQUFDO1FBQ1YsT0FBRSxHQUFHLElBQUksQ0FBQztRQUNWLE9BQUUsR0FBRyxJQUFJLENBQUM7UUFFQSxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUNyQyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUNyQyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUN2QyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUN4QyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUV4QyxTQUFJLEdBQUcsS0FBSyxDQUFDO0lBSXJCLENBQUM7Ozs7SUFFRCwyQ0FBZTs7O0lBQWY7UUFBQSxpQkFlQzs7WUFkTyxJQUFJLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDOztZQUNwQyxJ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QUF3Qzs7aUJBRXpDOzs7Ozt1QkFHRSxLQUFLO3FCQUNMLEtBQUs7cUJBQ0wsS0FBSztxQkFDTCxLQUFLO3FCQUNMLEtBQUs7cUJBQ0wsS0FBSzs0QkFDTCxLQUFLOzZCQUNMLEtBQUs7MEJBTUwsTUFBTTswQkFDTixNQUFNOzRCQUNOLE1BQU07NkJBQ04sTUFBTTswQkFDTixNQUFNOztJQW9GVCx3QkFBQztDQUFBLEFBNUdELElBNEdDO1NBdkdZLGlCQUFpQjs7O0lBRTVCLGlDQUF1Qjs7SUFDdkIsK0JBQW9COztJQUNwQiwrQkFBb0I7O0lBQ3BCLCtCQUFvQjs7SUFDcEIsK0JBQW9COztJQUNwQiwrQkFBb0I7O0lBQ3BCLHNDQUEyQjs7SUFDM0IsdUNBQTRCOztJQUM1QiwrQkFBVTs7SUFDViwrQkFBVTs7SUFDViwrQkFBVTs7SUFDViwrQkFBVTs7SUFFVixvQ0FBK0M7O0lBQy9DLG9DQUErQzs7SUFDL0Msc0NBQWlEOztJQUNqRCx1Q0FBa0Q7O0lBQ2xELG9DQUFnRDs7Ozs7SUFFaEQsaUNBQXFCOzs7OztJQUNyQix3Q0FBOEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0ICogYXMganF1ZXJ5IGZyb20gXCJqcXVlcnlcIjtcbmltcG9ydCB7VXRpbHN9IGZyb20gXCIuLi9maWxlLnNlcnZpY2VcIjtcblxuY29uc3QgJCA9IGpxdWVyeTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ2QtcmVzaXppbmcnLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVzaXppbmcuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9yZXNpemluZy5jb21wb25lbnQubGVzcyddXG59KVxuZXhwb3J0IGNsYXNzIFJlc2l6aW5nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcblxuICBASW5wdXQoKSBpbml0OiBib29sZWFuO1xuICBASW5wdXQoKSBpZDogbnVtYmVyO1xuICBASW5wdXQoKSBzZSA9IGZhbHNlO1xuICBASW5wdXQoKSBuZSA9IGZhbHNlO1xuICBASW5wdXQoKSBzdyA9IGZhbHNlO1xuICBASW5wdXQoKSBudyA9IGZhbHNlO1xuICBASW5wdXQoKSBwYWdlV2lkdGg6IG51bWJlcjtcbiAgQElucHV0KCkgcGFnZUhlaWdodDogbnVtYmVyO1xuICBTRSA9ICdzZSc7XG4gIE5FID0gJ25lJztcbiAgU1cgPSAnc3cnO1xuICBOVyA9ICdudyc7XG5cbiAgQE91dHB1dCgpIG9mZnNldFggPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcbiAgQE91dHB1dCgpIG9mZnNldFkgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcbiAgQE91dHB1dCgpIG9mZnNldFRvcCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuICBAT3V0cHV0KCkgb2Zmc2V0TGVmdCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuICBAT3V0cHV0KCkgcmVsZWFzZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBwcml2YXRlIGdyYWIgPSBmYWxzZTtcbiAgcHJpdmF0ZSBvbGRQb3NpdGlvbjogeyB4OiBudW1iZXIsIHk6IG51bWJlciB9O1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IGVsU0UgPSAkKHRoaXMuZ2V0RWxlbWVudElkKHRoaXMuU0UpKTtcbiAgICBjb25zdCBlbE5XID0gJCh0aGlzLmdldEVsZW1lbnRJZCh0aGlzLk5XKSk7XG4gICAgaWYgKHRoaXMuaW5pdCAmJiBlbFNFICYmIGVsTlcgJiYgZWxTRS5vZmZzZXQoKSAmJiBlbE5XLm9mZnNldCgpKSB7XG4gICAgICBsZXQgd2lkdGggPSBlbFNFLm9mZnNldCgpLmxlZnQgLSBlbE5XLm9mZnNldCgpLmxlZnQ7XG4gICAgICBsZXQgaGVpZ2h0ID0gZWxTRS5vZmZzZXQoKS50b3AgLSBlbE5XLm9mZnNldCgpLnRvcDtcbiAgICAgIHdoaWxlICh3aWR0aCA+PSB0aGlzLnBhZ2VXaWR0aCB8fCBoZWlnaHQgPj0gdGhpcy5wYWdlSGVpZ2h0KSB7XG4gICAgICAgIHdpZHRoID0gd2lkdGggLyAyO1xuICAgICAgICBoZWlnaHQgPSBoZWlnaHQgLyAyO1xuICAgICAgfVxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMub2Zmc2V0WC5lbWl0KHdpZHRoKTtcbiAgICAgICAgdGhpcy5vZmZzZXRZLmVtaXQoaGVpZ2h0KTtcbiAgICAgIH0sIDEwMCk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gIH1cblxuICBjYXRjaFVwKCRldmVudDogRHJhZ0V2ZW50KSB7XG4gICAgLy8gZmZcbiAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBpZiAoJGV2ZW50LmRhdGFUcmFuc2ZlcikgeyAvLyBmZlxuICAgICAgJGV2ZW50LmRhdGFUcmFuc2Zlci5zZXREYXRhKCd0ZXh0JywgJ2ZvbycpO1xuICAgIH1cbiAgICB0aGlzLmdyYWIgPSB0cnVlO1xuICAgIHRoaXMub2xkUG9zaXRpb24gPSBVdGlscy5nZXRNb3VzZVBvc2l0aW9uKCRldmVudCk7XG4gIH1cblxuICByZXNpemUoJGV2ZW50OiBEcmFnRXZlbnQsIGVsOiBzdHJpbmcpIHtcbiAgICBpZiAoIXRoaXMuZ3JhYikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBwb3NpdGlvbiA9IFV0aWxzLmdldE1vdXNlUG9zaXRpb24oJGV2ZW50KTtcbiAgICBpZiAocG9zaXRpb24ueCA9PT0gMCAmJiBwb3NpdGlvbi55ID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IG5vdFNXID0gdGhpcy5ORSA9PT0gZWwgfHwgdGhpcy5OVyA9PT0gZWw7XG4gICAgY29uc3Qgbm90TkUgPSB0aGlzLlNXID09PSBlbCB8fCB0aGlzLk5XID09PSBlbDtcbiAgICB0aGlzLnNldE9mZnNldHMocG9zaXRpb24sIG5vdE5FLCBub3RTVyk7XG4gICAgaWYgKG5vdFNXKSB7XG4gICAgICB0aGlzLm9mZnNldFRvcC5lbWl0KHBvc2l0aW9uLnkgLSB0aGlzLm9sZFBvc2l0aW9uLnkpO1xuICAgIH1cbiAgICBpZiAobm90TkUpIHtcbiAgICAgIHRoaXMub2Zmc2V0TGVmdC5lbWl0KHBvc2l0aW9uLnggLSB0aGlzLm9sZFBvc2l0aW9uLngpO1xuICAgIH1cbiAgICB0aGlzLm9sZFBvc2l0aW9uID0gcG9zaXRpb247XG4gIH1cblxuICBwcml2YXRlIHNldE9mZnNldHMocG9zaXRpb24sIHg6IGJvb2xlYW4sIHk6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBvZmZzZXRYID0geCA/IHRoaXMub2xkUG9zaXRpb24ueCAtIHBvc2l0aW9uLnggOiBwb3NpdGlvbi54IC0gdGhpcy5vbGRQb3NpdGlvbi54O1xuICAgIGNvbnN0IG9mZnNldFkgPSB5ID8gdGhpcy5vbGRQb3NpdGlvbi55IC0gcG9zaXRpb24ueSA6IHBvc2l0aW9uLnkgLSB0aGlzLm9sZFBvc2l0aW9uLnk7XG4gICAgdGhpcy5vZmZzZXRYLmVtaXQob2Zmc2V0WCk7XG4gICAgdGhpcy5vZmZzZXRZLmVtaXQob2Zmc2V0WSk7XG4gIH1cblxuICBlbmQoJGV2ZW50OiBEcmFnRXZlbnQsIGVsOiBzdHJpbmcpIHtcbiAgICAvLyBmZlxuICAgIHRoaXMucmVzaXplKCRldmVudCwgZWwpO1xuICAgIHRoaXMucmVsZWFzZS5lbWl0KHRydWUpO1xuICAgIHRoaXMuZ3JhYiA9IGZhbHNlO1xuICB9XG5cbiAgc3RhcnQoJGV2ZW50OiBEcmFnRXZlbnQpIHtcbiAgICB0aGlzLmRyb3AoJGV2ZW50KTtcbiAgfVxuXG4gIGRyb3AoJGV2ZW50OiBEcmFnRXZlbnQpIHtcbiAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gIH1cblxuICBwcml2YXRlIGdldEVsZW1lbnRJZChlbDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIFwiI1wiICsgZWwgKyBcIi1cIiArIHRoaXMuaWQ7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXppbmcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGdyb3VwZG9jcy5leGFtcGxlcy5hbmd1bGFyL2NvbW1vbi1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsibGliL3Jlc2l6aW5nL3Jlc2l6aW5nLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUYsT0FBTyxLQUFLLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFDakMsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLGlCQUFpQixDQUFDOztJQUVoQyxDQUFDLEdBQUcsTUFBTTtBQUVoQjtJQTZCRTtRQXBCUyxPQUFFLEdBQUcsS0FBSyxDQUFDO1FBQ1gsT0FBRSxHQUFHLEtBQUssQ0FBQztRQUNYLE9BQUUsR0FBRyxLQUFLLENBQUM7UUFDWCxPQUFFLEdBQUcsS0FBSyxDQUFDO1FBR3BCLE9BQUUsR0FBRyxJQUFJLENBQUM7UUFDVixPQUFFLEdBQUcsSUFBSSxDQUFDO1FBQ1YsT0FBRSxHQUFHLElBQUksQ0FBQztRQUNWLE9BQUUsR0FBRyxJQUFJLENBQUM7UUFFQSxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUNyQyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUNyQyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUN2QyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUN4QyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUV4QyxTQUFJLEdBQUcsS0FBSyxDQUFDO0lBSXJCLENBQUM7Ozs7SUFFRCwyQ0FBZTs7O0lBQWY7UUFBQSxpQkFlQzs7WUFkTyxJQUFJLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDOztZQUNwQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzFDLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUU7O2dCQUMzRCxPQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsSUFBSTs7Z0JBQy9DLFFBQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHO1lBQ2xELE9BQU8sT0FBSyxJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksUUFBTSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7Z0JBQzNELE9BQUssR0FBRyxPQUFLLEdBQUcsQ0FBQyxDQUFDO2dCQUNsQixRQUFNLEdBQUcsUUFBTSxHQUFHLENBQUMsQ0FBQzthQUNyQjtZQUNELFVBQVU7OztZQUFDO2dCQUNULEtBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQUssQ0FBQyxDQUFDO2dCQUN6QixLQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFNLENBQUMsQ0FBQztZQUM1QixDQUFDLEdBQUUsR0FBRyxDQUFDLENBQUM7U0FDVDtJQUNILENBQUM7Ozs7SUFFRCxvQ0FBUTs7O0lBQVI7SUFDQSxDQUFDOzs7OztJQUVELG1DQUFPOzs7O0lBQVAsVUFBUSxNQUFpQjtRQUN2QixLQUFLO1FBQ0wsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3hCLElBQUksTUFBTSxDQUFDLFlBQVksRUFBRSxFQUFFLEtBQUs7WUFDOUIsTUFBTSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO1NBQzVDO1FBQ0QsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEQsQ0FBQzs7Ozs7O0lBRUQsa0NBQU07Ozs7O0lBQU4sVUFBTyxNQUFpQixFQUFFLEVBQVU7UUFDbEMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDZCxPQUFPO1NBQ1I7O1lBQ0ssUUFBUSxHQUFHLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUM7UUFDL0MsSUFBSSxRQUFRLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxRQUFRLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN4QyxPQUFPO1NBQ1I7O1lBQ0ssS0FBSyxHQUFHLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRTs7WUFDeEMsS0FBSyxHQUFHLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRTtRQUM5QyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDeEMsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDdEQ7UUFDRCxJQUFJLEtBQUssRUFBRTtZQUNULElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN2RDtRQUNELElBQUksQ0FBQyxXQUFXLEdBQUcsUUFBUSxDQUFDO0lBQzlCLENBQUM7Ozs7Ozs7O0lBRU8sc0NBQVU7Ozs7Ozs7SUFBbEIsVUFBbUIsUUFBUSxFQUFFLENBQVUsRUFBRSxDQUFVOztZQUMzQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQzs7WUFDL0UsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDckYsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0IsQ0FBQzs7Ozs7O0lBRUQsK0JBQUc7Ozs7O0lBQUgsVUFBSSxNQUFpQixFQUFFLEVBQVU7UUFDL0IsS0FBSztRQUNMLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO0lBQ3BCLENBQUM7Ozs7O0lBRUQsaUNBQUs7Ozs7SUFBTCxVQUFNLE1BQWlCO1FBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEIsQ0FBQzs7Ozs7SUFFRCxnQ0FBSTs7OztJQUFKLFVBQUssTUFBaUI7UUFDcEIsTUFBTSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUMxQixDQUFDOzs7Ozs7SUFFTyx3Q0FBWTs7Ozs7SUFBcEIsVUFBcUIsRUFBVTtRQUM3QixPQUFPLEdBQUcsR0FBRyxFQUFFLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUM7SUFDbEMsQ0FBQzs7Z0JBM0dGLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUsYUFBYTtvQkFDdkIseTdDQUF3Qzs7aUJBRXpDOzs7Ozt1QkFHRSxLQUFLO3FCQUNMLEtBQUs7cUJBQ0wsS0FBSztxQkFDTCxLQUFLO3FCQUNMLEtBQUs7cUJBQ0wsS0FBSzs0QkFDTCxLQUFLOzZCQUNMLEtBQUs7MEJBTUwsTUFBTTswQkFDTixNQUFNOzRCQUNOLE1BQU07NkJBQ04sTUFBTTswQkFDTixNQUFNOztJQW9GVCx3QkFBQztDQUFBLEFBNUdELElBNEdDO1NBdkdZLGlCQUFpQjs7O0lBRTVCLGlDQUF1Qjs7SUFDdkIsK0JBQW9COztJQUNwQiwrQkFBb0I7O0lBQ3BCLCtCQUFvQjs7SUFDcEIsK0JBQW9COztJQUNwQiwrQkFBb0I7O0lBQ3BCLHNDQUEyQjs7SUFDM0IsdUNBQTRCOztJQUM1QiwrQkFBVTs7SUFDViwrQkFBVTs7SUFDViwrQkFBVTs7SUFDViwrQkFBVTs7SUFFVixvQ0FBK0M7O0lBQy9DLG9DQUErQzs7SUFDL0Msc0NBQWlEOztJQUNqRCx1Q0FBa0Q7O0lBQ2xELG9DQUFnRDs7Ozs7SUFFaEQsaUNBQXFCOzs7OztJQUNyQix3Q0FBOEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyBqcXVlcnkgZnJvbSBcImpxdWVyeVwiO1xyXG5pbXBvcnQge1V0aWxzfSBmcm9tIFwiLi4vZmlsZS5zZXJ2aWNlXCI7XHJcblxyXG5jb25zdCAkID0ganF1ZXJ5O1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdnZC1yZXNpemluZycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3Jlc2l6aW5nLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9yZXNpemluZy5jb21wb25lbnQubGVzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZXNpemluZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpIGluaXQ6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgaWQ6IG51bWJlcjtcclxuICBASW5wdXQoKSBzZSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIG5lID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc3cgPSBmYWxzZTtcclxuICBASW5wdXQoKSBudyA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHBhZ2VXaWR0aDogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIHBhZ2VIZWlnaHQ6IG51bWJlcjtcclxuICBTRSA9ICdzZSc7XHJcbiAgTkUgPSAnbmUnO1xyXG4gIFNXID0gJ3N3JztcclxuICBOVyA9ICdudyc7XHJcblxyXG4gIEBPdXRwdXQoKSBvZmZzZXRYID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XHJcbiAgQE91dHB1dCgpIG9mZnNldFkgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcclxuICBAT3V0cHV0KCkgb2Zmc2V0VG9wID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XHJcbiAgQE91dHB1dCgpIG9mZnNldExlZnQgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcclxuICBAT3V0cHV0KCkgcmVsZWFzZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuXHJcbiAgcHJpdmF0ZSBncmFiID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSBvbGRQb3NpdGlvbjogeyB4OiBudW1iZXIsIHk6IG51bWJlciB9O1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGVsU0UgPSAkKHRoaXMuZ2V0RWxlbWVudElkKHRoaXMuU0UpKTtcclxuICAgIGNvbnN0IGVsTlcgPSAkKHRoaXMuZ2V0RWxlbWVudElkKHRoaXMuTlcpKTtcclxuICAgIGlmICh0aGlzLmluaXQgJiYgZWxTRSAmJiBlbE5XICYmIGVsU0Uub2Zmc2V0KCkgJiYgZWxOVy5vZmZzZXQoKSkge1xyXG4gICAgICBsZXQgd2lkdGggPSBlbFNFLm9mZnNldCgpLmxlZnQgLSBlbE5XLm9mZnNldCgpLmxlZnQ7XHJcbiAgICAgIGxldCBoZWlnaHQgPSBlbFNFLm9mZnNldCgpLnRvcCAtIGVsTlcub2Zmc2V0KCkudG9wO1xyXG4gICAgICB3aGlsZSAod2lkdGggPj0gdGhpcy5wYWdlV2lkdGggfHwgaGVpZ2h0ID49IHRoaXMucGFnZUhlaWdodCkge1xyXG4gICAgICAgIHdpZHRoID0gd2lkdGggLyAyO1xyXG4gICAgICAgIGhlaWdodCA9IGhlaWdodCAvIDI7XHJcbiAgICAgIH1cclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5vZmZzZXRYLmVtaXQod2lkdGgpO1xyXG4gICAgICAgIHRoaXMub2Zmc2V0WS5lbWl0KGhlaWdodCk7XHJcbiAgICAgIH0sIDEwMCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICB9XHJcblxyXG4gIGNhdGNoVXAoJGV2ZW50OiBEcmFnRXZlbnQpIHtcclxuICAgIC8vIGZmXHJcbiAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIGlmICgkZXZlbnQuZGF0YVRyYW5zZmVyKSB7IC8vIGZmXHJcbiAgICAgICRldmVudC5kYXRhVHJhbnNmZXIuc2V0RGF0YSgndGV4dCcsICdmb28nKTtcclxuICAgIH1cclxuICAgIHRoaXMuZ3JhYiA9IHRydWU7XHJcbiAgICB0aGlzLm9sZFBvc2l0aW9uID0gVXRpbHMuZ2V0TW91c2VQb3NpdGlvbigkZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgcmVzaXplKCRldmVudDogRHJhZ0V2ZW50LCBlbDogc3RyaW5nKSB7XHJcbiAgICBpZiAoIXRoaXMuZ3JhYikge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBjb25zdCBwb3NpdGlvbiA9IFV0aWxzLmdldE1vdXNlUG9zaXRpb24oJGV2ZW50KTtcclxuICAgIGlmIChwb3NpdGlvbi54ID09PSAwICYmIHBvc2l0aW9uLnkgPT09IDApIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3Qgbm90U1cgPSB0aGlzLk5FID09PSBlbCB8fCB0aGlzLk5XID09PSBlbDtcclxuICAgIGNvbnN0IG5vdE5FID0gdGhpcy5TVyA9PT0gZWwgfHwgdGhpcy5OVyA9PT0gZWw7XHJcbiAgICB0aGlzLnNldE9mZnNldHMocG9zaXRpb24sIG5vdE5FLCBub3RTVyk7XHJcbiAgICBpZiAobm90U1cpIHtcclxuICAgICAgdGhpcy5vZmZzZXRUb3AuZW1pdChwb3NpdGlvbi55IC0gdGhpcy5vbGRQb3NpdGlvbi55KTtcclxuICAgIH1cclxuICAgIGlmIChub3RORSkge1xyXG4gICAgICB0aGlzLm9mZnNldExlZnQuZW1pdChwb3NpdGlvbi54IC0gdGhpcy5vbGRQb3NpdGlvbi54KTtcclxuICAgIH1cclxuICAgIHRoaXMub2xkUG9zaXRpb24gPSBwb3NpdGlvbjtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0T2Zmc2V0cyhwb3NpdGlvbiwgeDogYm9vbGVhbiwgeTogYm9vbGVhbikge1xyXG4gICAgY29uc3Qgb2Zmc2V0WCA9IHggPyB0aGlzLm9sZFBvc2l0aW9uLnggLSBwb3NpdGlvbi54IDogcG9zaXRpb24ueCAtIHRoaXMub2xkUG9zaXRpb24ueDtcclxuICAgIGNvbnN0IG9mZnNldFkgPSB5ID8gdGhpcy5vbGRQb3NpdGlvbi55IC0gcG9zaXRpb24ueSA6IHBvc2l0aW9uLnkgLSB0aGlzLm9sZFBvc2l0aW9uLnk7XHJcbiAgICB0aGlzLm9mZnNldFguZW1pdChvZmZzZXRYKTtcclxuICAgIHRoaXMub2Zmc2V0WS5lbWl0KG9mZnNldFkpO1xyXG4gIH1cclxuXHJcbiAgZW5kKCRldmVudDogRHJhZ0V2ZW50LCBlbDogc3RyaW5nKSB7XHJcbiAgICAvLyBmZlxyXG4gICAgdGhpcy5yZXNpemUoJGV2ZW50LCBlbCk7XHJcbiAgICB0aGlzLnJlbGVhc2UuZW1pdCh0cnVlKTtcclxuICAgIHRoaXMuZ3JhYiA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgc3RhcnQoJGV2ZW50OiBEcmFnRXZlbnQpIHtcclxuICAgIHRoaXMuZHJvcCgkZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgZHJvcCgkZXZlbnQ6IERyYWdFdmVudCkge1xyXG4gICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEVsZW1lbnRJZChlbDogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gXCIjXCIgKyBlbCArIFwiLVwiICsgdGhpcy5pZDtcclxuICB9XHJcbn1cclxuIl19 \ No newline at end of file diff --git a/dist/libs/common-components/fesm2015/groupdocs.examples.angular-common-components.js b/dist/libs/common-components/fesm2015/groupdocs.examples.angular-common-components.js index fc11cc0eb..28ae6ffbe 100644 --- a/dist/libs/common-components/fesm2015/groupdocs.examples.angular-common-components.js +++ b/dist/libs/common-components/fesm2015/groupdocs.examples.angular-common-components.js @@ -23,8 +23,8 @@ class TopToolbarComponent { TopToolbarComponent.decorators = [ { type: Component, args: [{ selector: 'gd-top-toolbar', - template: "
\n
\n \n
\n
\n", - styles: [".top-toolbar{width:100%;height:60px;z-index:999;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.tools{width:100%;height:100%;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}@media (max-width:1037px){.top-toolbar{height:60px}.tools{height:100%;overflow-x:auto;overflow-scrolling:touch;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.tools::-webkit-scrollbar{width:0;height:0;background-color:#3e4e5a}}"] + template: "
\r\n
\r\n \r\n
\r\n
\r\n", + styles: [".top-toolbar{width:100%;height:60px;z-index:999;display:flex;align-items:center}.tools{width:100%;height:100%;display:flex;align-items:center}@media (max-width:1037px){.top-toolbar{height:60px}.tools{height:100%;overflow-x:auto;overflow-scrolling:touch;display:flex;align-items:center;transition:.3s ease-in-out;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.tools::-webkit-scrollbar{width:0;height:0;background-color:#3e4e5a}}"] }] } ]; /** @nocollapse */ @@ -66,8 +66,8 @@ class SidePanelComponent { SidePanelComponent.decorators = [ { type: Component, args: [{ selector: 'gd-side-panel', - template: "
\n
\n \n
{{title}}
\n
\n \n
\n
\n \n
\n
\n
\n \n
\n
\n", - styles: [".gd-side-panel-wrapper{margin-right:0;width:334px;z-index:999;background-color:#fff;-webkit-transition:margin-right .2s;transition:margin-right .2s;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-flow:column;height:100vh}.gd-side-panel-wrapper .gd-side-panel-header{height:60px;background-color:#222e35;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;flex-wrap:nowrap}.gd-side-panel-wrapper .gd-side-panel-header .icon{font-size:24px;color:#959da5;margin:18px;line-height:24px}.gd-side-panel-wrapper .gd-side-panel-header .title{font-size:13px;font-weight:700;color:#edf0f2;opacity:.57;margin-top:20px;width:100%}.gd-side-panel-wrapper .gd-side-panel-header .close,.gd-side-panel-wrapper .gd-side-panel-header .save{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.gd-side-panel-wrapper .gd-side-panel-header ::ng-deep gd-button .text{padding:0}.gd-side-panel-wrapper .gd-side-panel-body{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-flow:column;overflow:visible;overflow-y:auto;overflow-x:hidden;height:100%}@media (max-width:1037px){.gd-side-panel-wrapper{width:100%;position:absolute;left:0;right:0;top:0;bottom:0}.gd-side-panel-wrapper.only-title{height:60px!important}}"] + template: "
\r\n
\r\n \r\n
{{title}}
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n", + styles: [".gd-side-panel-wrapper{margin-right:0;width:334px;z-index:999;background-color:#fff;transition:margin-right .2s;display:flex;flex-flow:column;height:100vh}.gd-side-panel-wrapper .gd-side-panel-header{height:60px;background-color:#222e35;display:flex;flex-direction:row;flex-wrap:nowrap}.gd-side-panel-wrapper .gd-side-panel-header .icon{font-size:24px;color:#959da5;margin:18px;line-height:24px}.gd-side-panel-wrapper .gd-side-panel-header .title{font-size:13px;font-weight:700;color:#edf0f2;opacity:.57;margin-top:20px;width:100%}.gd-side-panel-wrapper .gd-side-panel-header .close,.gd-side-panel-wrapper .gd-side-panel-header .save{display:flex;align-items:center}.gd-side-panel-wrapper .gd-side-panel-header ::ng-deep gd-button .text{padding:0}.gd-side-panel-wrapper .gd-side-panel-body{display:flex;flex-flow:column;overflow:visible;overflow-y:auto;overflow-x:hidden;height:100%}@media (max-width:1037px){.gd-side-panel-wrapper{width:100%;position:absolute;left:0;right:0;top:0;bottom:0}.gd-side-panel-wrapper.only-title{height:60px!important}}"] }] } ]; /** @nocollapse */ @@ -257,8 +257,8 @@ class ButtonComponent { ButtonComponent.decorators = [ { type: Component, args: [{ selector: 'gd-button', - template: "
\n \n \n
\n \n
\n
\n", - styles: [".icon-button{padding:0!important;margin:0 7px}.button{padding:0 10px;font-size:14px;color:#959da5;cursor:pointer;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;align-content:center;-webkit-box-pack:center;justify-content:center;min-width:37px;height:37px;text-align:center;position:relative;white-space:nowrap}.button.inactive{cursor:not-allowed;opacity:.4}.button.active *{color:#ccd0d4}.button.primary{background-color:#3e4e5a;color:#fff}.button.primary.active{color:#fff;background-color:#688296}.button.brand{background-color:#25c2d4;color:#fff}.button.brand.active{color:#fff;background-color:#688296}.button .text{font-size:13px;padding-left:10px}.button .button-tooltip{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}@media (max-width:1037px){.button{font-size:22px}.arrow-button{margin:5px}}"] + template: "
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n", + styles: [".icon-button{padding:0!important;margin:0 7px}.button{padding:0 10px;font-size:14px;color:#959da5;cursor:pointer;display:flex;flex-direction:column;align-items:center;align-content:center;justify-content:center;min-width:37px;height:37px;text-align:center;position:relative;white-space:nowrap}.button.inactive{cursor:not-allowed;opacity:.4}.button.active *{color:#ccd0d4}.button.primary{background-color:#3e4e5a;color:#fff}.button.primary.active{color:#fff;background-color:#688296}.button.brand{background-color:#25c2d4;color:#fff}.button.brand.active{color:#fff;background-color:#688296}.button .text{font-size:13px;padding-left:10px}.button .button-tooltip{display:flex;flex-direction:column}@media (max-width:1037px){.button{font-size:22px}.arrow-button{margin:5px}}"] }] } ]; /** @nocollapse */ @@ -325,8 +325,8 @@ class LogoComponent { LogoComponent.decorators = [ { type: Component, args: [{ selector: 'gd-logo', - template: "
\n \n \n
\n\n", - styles: [".logo{background-color:#25c2d4;height:60px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center}.text{color:#fff;font-size:15px;text-transform:uppercase;margin:0 14px}.icon{display:none;font-size:32px;color:rgba(255,255,255,.5);margin:14px}@media (max-width:1037px){.logo{width:60px;height:60px}.logo .text{display:none}.logo .icon{display:block}}"] + template: "
\r\n \r\n \r\n
\r\n\r\n", + styles: [".logo{background-color:#25c2d4;height:60px;display:flex;align-items:center;justify-content:center}.text{color:#fff;font-size:15px;text-transform:uppercase;margin:0 14px}.icon{display:none;font-size:32px;color:rgba(255,255,255,.5);margin:14px}@media (max-width:1037px){.logo{width:60px;height:60px}.logo .text{display:none}.logo .icon{display:block}}"] }] } ]; /** @nocollapse */ @@ -376,7 +376,7 @@ class TooltipComponent { TooltipComponent.decorators = [ { type: Component, args: [{ selector: 'gd-tooltip', - template: "\n", + template: "\r\n", styles: [".tooltip{position:absolute;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;background-color:#000;color:#fff;text-align:center;border-radius:0;padding:5px;z-index:1;font-size:10px;height:11px;line-height:11px;-ms-grid-row-align:center;align-self:center;margin:0!important}.first-element{margin-left:10px!important}.last-element{margin-left:-10px!important}.tooltip.hidden{visibility:hidden}.tooltip.shown{visibility:visible}.shown:after{content:\" \";position:absolute;bottom:100%;left:50%;margin-left:-5px;border:5px solid transparent;border-bottom-color:#000}"] }] } ]; @@ -792,8 +792,8 @@ class ModalComponent { ModalComponent.decorators = [ { type: Component, args: [{ selector: 'gd-modal', - template: "
\n
\n
\n
\n\n
\n
×
\n

{{title}}

\n
\n\n
\n \n
\n\n
\n\n
\n
\n
\n\n\n", - styles: ["@import url(https://fonts.googleapis.com/css?family=Montserrat&display=swap);:host *{font-family:'Open Sans',Arial,Helvetica,sans-serif}.gd-modal{overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0;background-color:rgba(0,0,0,.5)}.gd-modal-dialog{box-shadow:#0005 0 0 10px;position:fixed;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);z-index:1051}.gd-modal-dialog ::ng-deep .button{-webkit-box-orient:unset!important;-webkit-box-direction:unset!important;flex-direction:unset!important}.gd-modal-content{background-color:#fff;height:100%;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.gd-modal-header{height:60px;padding:0 12px 0 24px;background-color:#3e4e5a}.gd-modal-close{position:absolute;right:12px;top:12px;cursor:pointer;color:#fff;width:37px;height:37px;text-align:center}.gd-modal-close span{font-size:18px;font-weight:900;height:19px;width:10px;line-height:36px}.gd-modal-title{font-size:16px;font-weight:400;padding-top:17px;padding-bottom:22px;margin:0;color:#fff}.gd-modal-body{background-color:#fff;overflow:hidden;overflow-y:auto;height:calc(100% - 75px)}.gd-modal-footer{height:auto}.gd-modal-footer>.btn{float:right;margin:20px 15px;padding:10px 20px;cursor:pointer;font-size:12px}@media (max-width:1037px){.gd-modal-dialog{width:100%;height:100%}.gd-modal-body{height:100%}}"] + template: "
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
×
\r\n

{{title}}

\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n", + styles: ["@import url(https://fonts.googleapis.com/css?family=Montserrat&display=swap);:host *{font-family:'Open Sans',Arial,Helvetica,sans-serif}.gd-modal{overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0;background-color:rgba(0,0,0,.5)}.gd-modal-dialog{box-shadow:#0005 0 0 10px;position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1051}.gd-modal-dialog ::ng-deep .button{flex-direction:unset!important}.gd-modal-content{background-color:#fff;height:100%;display:flex;flex-direction:column}.gd-modal-header{height:60px;padding:0 12px 0 24px;background-color:#3e4e5a}.gd-modal-close{position:absolute;right:12px;top:12px;cursor:pointer;color:#fff;width:37px;height:37px;text-align:center}.gd-modal-close span{font-size:18px;font-weight:900;height:19px;width:10px;line-height:36px}.gd-modal-title{font-size:16px;font-weight:400;padding-top:17px;padding-bottom:22px;margin:0;color:#fff}.gd-modal-body{background-color:#fff;overflow:hidden;overflow-y:auto;height:calc(100% - 75px)}.gd-modal-footer{height:auto}.gd-modal-footer>.btn{float:right;margin:20px 15px;padding:10px 20px;cursor:pointer;font-size:12px}@media (max-width:1037px){.gd-modal-dialog{width:100%;height:100%}.gd-modal-body{height:100%}}"] }] } ]; /** @nocollapse */ @@ -1342,8 +1342,8 @@ class BrowseFilesModalComponent { BrowseFilesModalComponent.decorators = [ { type: Component, args: [{ selector: 'gd-browse-files-modal', - template: "\n
\n
\n \n Drop file here to upload\n
\n
\n
\n \n
\n
\n \n \n \n Upload file\n \n \n \n \n \n
{{item.name}}
\n
\n
\n
\n
\n
\n
\n \n
\n \n
\n
\n
\n
\n
\n
\n
FILE
\n
SIZE
\n
\n
\n
\n
\n
\n
\n \n
\n
..
\n
\n
\n
\n \n
\n
{{file?.name}}
\n
{{getFormatName(file)}}
\n
\n
\n
\n {{getSize(file?.size)}}\n
\n
\n
\n
\n
\n \n  Loading... Please wait.\n
\n
\n
\n", - styles: [".gd-modal-table{width:100%;text-align:left}#gd-browse-section{width:1036px;height:561px;overflow-y:auto}.list-files-header{height:60px;color:#6e6e6e;font-size:13px;font-weight:700;background-color:#f4f4f4;margin-top:24px}.list-files-header.upload-url{margin-top:20px}.header-name{padding-left:24px;width:90%;line-height:60px}.header-size{padding-right:27px;line-height:60px}.file-size,.header-size{width:10%;color:#777;text-align:right}.file-description{display:-webkit-box;display:flex;width:90%;padding:18px 0 18px 24px;font-size:14px;-webkit-box-flex:1;flex:1;cursor:pointer;overflow:hidden}.file-size{font-size:12px;padding:0 27px 0 0;width:10%;line-height:79px}.list-files-header,.list-files-lines{display:-webkit-box;display:flex;width:100%;-webkit-box-pack:justify;justify-content:space-between}.gd-modal-spinner{background-color:#fff;width:100%;height:20px;text-align:center;font-size:16px}.gd-cancel-button{padding:7px;background:0 0;width:28px;overflow:hidden}.gd-cancel-button i{font-size:21px}.gd-file-name{white-space:nowrap;overflow:hidden;width:100%;text-overflow:ellipsis}.go-up{display:-webkit-box;display:flex;font-size:26px;cursor:pointer;color:#4b566c;height:79px}.go-up-dots{margin-left:20px;margin-top:22px;font-size:16px}.go-up-icon{display:block;padding:18px 0 18px 24px}.upload-panel{display:-webkit-box;display:flex;position:relative;width:100%}.upload-panel .context{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;width:100%;margin-left:24px;margin-top:24px;margin-right:24px}.upload-panel .context .context-actions{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;width:100%}.upload-panel .context .context-actions :last-child{margin-right:0}.upload-panel .context .context-actions ::ng-deep .button{height:37px;width:96px;padding:0;-webkit-box-pack:center;justify-content:center}.upload-panel .context .context-actions ::ng-deep .button ::ng-deep .text{font-size:10px}.upload-panel .context .context-panel{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;width:100%;margin-top:20px}.upload-panel .context .context-panel .upload-url{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;width:100%}.upload-panel .context .context-panel .upload-url .url-input{width:100%;height:27px;border:1px solid #25c2d4;font-size:14px;padding-left:6px}.upload-panel .context .context-panel .upload-url .url-check{width:31px;height:31px;color:#fff;font-size:15px;background-color:#25c2d4}.upload-panel .context .context-panel .upload-url .url-check .ng-fa-icon{display:block;padding:8px}.upload-panel gd-drop-down{margin-right:10px}.file-description .ng-fa-icon.fa-file-pdf{color:#e04e4e}.file-description .ng-fa-icon.fa-file-word{color:#539cf0}.file-description .ng-fa-icon.fa-file-powerpoint{color:#e29e1e}.file-description .ng-fa-icon.fa-file-excel{color:#7cbc46}.file-description .ng-fa-icon.fa-file-image{color:#c375ed}.file-description .ng-fa-icon.fa-file,.file-description .ng-fa-icon.fa-file-alt,.file-description .ng-fa-icon.fa-file-text .fa-folder{color:#4b566c}.file-description .ng-fa-icon{font-size:32px}.file-name{font-size:16px;color:#6e6e6e;overflow:hidden;text-overflow:ellipsis}.file-name-format{padding-left:11px;overflow:hidden}.file-format{font-size:10px;padding-top:3px;color:#acacac}.go-up,.list-files-lines{border-bottom:1px solid #e7e7e7}.list-files-lines:hover{background-color:#e5e5e5}.gd-dnd-wrap{background-color:#fff;cursor:default;position:absolute;width:100%;height:calc(100% - 60px);background:rgba(255,255,255,.7);z-index:1;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center}.dnd-wrapper{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;top:259px;position:absolute}.dnd-wrapper .text{color:#6e6e6e;font-size:14px}.dnd-wrapper .icon{display:-webkit-box;display:flex;width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}@media (max-width:1037px){.file-size,.header-size{width:18%}.gd-dnd-wrap{width:95%}#gd-browse-section{width:100%;height:calc(100% - 146px)}}"] + template: "\r\n
\r\n
\r\n \r\n Drop file here to upload\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Upload file\r\n \r\n \r\n \r\n \r\n \r\n
{{item.name}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
FILE
\r\n
SIZE
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
..
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{file?.name}}
\r\n
{{getFormatName(file)}}
\r\n
\r\n
\r\n
\r\n {{getSize(file?.size)}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n  Loading... Please wait.\r\n
\r\n
\r\n
\r\n", + styles: [".gd-modal-table{width:100%;text-align:left}#gd-browse-section{width:1036px;height:561px;overflow-y:auto}.list-files-header{height:60px;color:#6e6e6e;font-size:13px;font-weight:700;background-color:#f4f4f4;margin-top:24px}.list-files-header.upload-url{margin-top:20px}.header-name{padding-left:24px;width:90%;line-height:60px}.header-size{padding-right:27px;line-height:60px}.file-size,.header-size{width:10%;color:#777;text-align:right}.file-description{display:flex;width:90%;padding:18px 0 18px 24px;font-size:14px;flex:1;cursor:pointer;overflow:hidden}.file-size{font-size:12px;padding:0 27px 0 0;width:10%;line-height:79px}.list-files-header,.list-files-lines{display:flex;width:100%;justify-content:space-between}.gd-modal-spinner{background-color:#fff;width:100%;height:20px;text-align:center;font-size:16px}.gd-cancel-button{padding:7px;background:0 0;width:28px;overflow:hidden}.gd-cancel-button i{font-size:21px}.gd-file-name{white-space:nowrap;overflow:hidden;width:100%;text-overflow:ellipsis}.go-up{display:flex;font-size:26px;cursor:pointer;color:#4b566c;height:79px}.go-up-dots{margin-left:20px;margin-top:22px;font-size:16px}.go-up-icon{display:block;padding:18px 0 18px 24px}.upload-panel{display:flex;position:relative;width:100%}.upload-panel .context{display:flex;flex-direction:column;width:100%;margin-left:24px;margin-top:24px;margin-right:24px}.upload-panel .context .context-actions{display:flex;flex-direction:row;width:100%}.upload-panel .context .context-actions :last-child{margin-right:0}.upload-panel .context .context-actions ::ng-deep .button{height:37px;width:96px;padding:0;justify-content:center}.upload-panel .context .context-actions ::ng-deep .button ::ng-deep .text{font-size:10px}.upload-panel .context .context-panel{display:flex;flex-direction:row;width:100%;margin-top:20px}.upload-panel .context .context-panel .upload-url{display:flex;flex-direction:row;width:100%}.upload-panel .context .context-panel .upload-url .url-input{width:100%;height:27px;border:1px solid #25c2d4;font-size:14px;padding-left:6px}.upload-panel .context .context-panel .upload-url .url-check{width:31px;height:31px;color:#fff;font-size:15px;background-color:#25c2d4}.upload-panel .context .context-panel .upload-url .url-check .ng-fa-icon{display:block;padding:8px}.upload-panel gd-drop-down{margin-right:10px}.file-description .ng-fa-icon.fa-file-pdf{color:#e04e4e}.file-description .ng-fa-icon.fa-file-word{color:#539cf0}.file-description .ng-fa-icon.fa-file-powerpoint{color:#e29e1e}.file-description .ng-fa-icon.fa-file-excel{color:#7cbc46}.file-description .ng-fa-icon.fa-file-image{color:#c375ed}.file-description .ng-fa-icon.fa-file,.file-description .ng-fa-icon.fa-file-alt,.file-description .ng-fa-icon.fa-file-text .fa-folder{color:#4b566c}.file-description .ng-fa-icon{font-size:32px}.file-name{font-size:16px;color:#6e6e6e;overflow:hidden;text-overflow:ellipsis}.file-name-format{padding-left:11px;overflow:hidden}.file-format{font-size:10px;padding-top:3px;color:#acacac}.go-up,.list-files-lines{border-bottom:1px solid #e7e7e7}.list-files-lines:hover{background-color:#e5e5e5}.gd-dnd-wrap{background-color:#fff;cursor:default;position:absolute;width:100%;height:calc(100% - 60px);background:rgba(255,255,255,.7);z-index:1;display:flex;justify-content:center;align-items:center}.dnd-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;top:259px;position:absolute}.dnd-wrapper .text{color:#6e6e6e;font-size:14px}.dnd-wrapper .icon{display:flex;width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}@media (max-width:1037px){.file-size,.header-size{width:18%}.gd-dnd-wrap{width:95%}#gd-browse-section{width:100%;height:calc(100% - 146px)}}"] }] } ]; /** @nocollapse */ @@ -1770,8 +1770,8 @@ class DocumentComponent { DocumentComponent.decorators = [ { type: Component, args: [{ selector: 'gd-document', - template: "
Please wait...
\n
\n
\n
\n \n
\n
\n \n
\n", - styles: [":host{-webkit-box-flex:1;flex:1;-webkit-transition:.4s;transition:.4s;background-color:#e7e7e7;height:100%;overflow:scroll;touch-action:auto!important}:host .document{-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;user-select:text!important;touch-action:auto!important}.page{display:inline-block;background-color:#fff;margin:20px;box-shadow:0 3px 6px rgba(0,0,0,.16);-webkit-transition:.3s;transition:.3s}.page.excel{overflow:auto}.page.presentation{margin:0;-webkit-transition:unset;transition:unset}.page.presentation.active{margin:20px}.wait{position:absolute;top:55px;left:Calc(30%)}.panzoom{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;flex-wrap:wrap;-webkit-box-pack:center;justify-content:center;align-content:flex-start}@media (max-width:1037px){.page{min-width:unset!important;min-height:unset!important;margin:5px 0}}"] + template: "
Please wait...
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n", + styles: [":host{flex:1;transition:.4s;background-color:#e7e7e7;height:100%;overflow:scroll;touch-action:auto!important}:host .document{-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;user-select:text!important;touch-action:auto!important}.page{display:inline-block;background-color:#fff;margin:20px;box-shadow:0 3px 6px rgba(0,0,0,.16);transition:.3s}.page.excel{overflow:auto}.page.presentation{margin:0;transition:unset}.page.presentation.active{margin:20px}.wait{position:absolute;top:55px;left:Calc(30%)}.panzoom{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-content:flex-start}@media (max-width:1037px){.page{min-width:unset!important;min-height:unset!important;margin:5px 0}}"] }] } ]; /** @nocollapse */ @@ -1897,7 +1897,7 @@ class PageComponent { PageComponent.decorators = [ { type: Component, args: [{ selector: 'gd-page', - template: "
\n
\n \"\"\n\n
\n \n  Loading... Please wait.\n
\n
\n", + template: "
\r\n
\r\n \"\"\r\n\r\n
\r\n \r\n  Loading... Please wait.\r\n
\r\n
\r\n", styles: [".gd-page-spinner{margin-top:150px;text-align:center}.gd-wrapper{width:inherit;height:inherit}.gd-wrapper div{width:100%}::ng-deep .gd-highlight{background-color:#ff0}::ng-deep .gd-highlight-select{background-color:#ff9b00}"] }] } ]; @@ -2085,8 +2085,8 @@ class UploadFileZoneComponent { UploadFileZoneComponent.decorators = [ { type: Component, args: [{ selector: 'gd-upload-file-zone', - template: "
\n
\n \n
\n

Drag & Drop your files here

\n

OR

\n
\n \n
\n
\n", - styles: [".gd-drag-n-drop-wrap{border:2px dashed #ccc;background-color:#f8f8f8;text-align:center;cursor:default;position:absolute;width:-webkit-fill-available;left:1px;display:-webkit-box;display:flex;align-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:center;justify-content:center;opacity:.9;z-index:1}.gd-drag-n-drop-wrap h2{color:#959da5;margin:5px 0;font-size:15px;font-weight:300}.gd-drag-n-drop-wrap h4{color:#cacaca;font-weight:300;font-size:12px;margin:10px 0 15px}.gd-drag-n-drop-icon .fa-cloud-download-alt{color:#d1d1d1;font-size:110px}.gd-drag-n-drop-buttons i{margin-right:5px}.gd-drag-n-drop-buttons .btn{width:134px;height:35px;margin:0 10px;font-size:12px;font-weight:400}.gd-drag-n-drop-wrap.hover{background:#ddd;border-color:#aaa}"] + template: "
\r\n
\r\n \r\n
\r\n

Drag & Drop your files here

\r\n

OR

\r\n
\r\n \r\n
\r\n
\r\n", + styles: [".gd-drag-n-drop-wrap{border:2px dashed #ccc;background-color:#f8f8f8;text-align:center;cursor:default;position:absolute;width:-webkit-fill-available;left:1px;display:flex;align-content:center;flex-direction:column;justify-content:center;opacity:.9;z-index:1}.gd-drag-n-drop-wrap h2{color:#959da5;margin:5px 0;font-size:15px;font-weight:300}.gd-drag-n-drop-wrap h4{color:#cacaca;font-weight:300;font-size:12px;margin:10px 0 15px}.gd-drag-n-drop-icon .fa-cloud-download-alt{color:#d1d1d1;font-size:110px}.gd-drag-n-drop-buttons i{margin-right:5px}.gd-drag-n-drop-buttons .btn{width:134px;height:35px;margin:0 10px;font-size:12px;font-weight:400}.gd-drag-n-drop-wrap.hover{background:#ddd;border-color:#aaa}"] }] } ]; /** @nocollapse */ @@ -2947,8 +2947,8 @@ class SelectComponent { SelectComponent.decorators = [ { type: Component, args: [{ selector: 'gd-select', - template: "
\n
\n {{showSelected?.name}}\n
\n \n \n
\n
\n
{{option.name}}
\n
\n
\n
\n
\n", - styles: [".select{min-width:50px;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;color:#959da5}.selected-value{font-size:14px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:clip;max-width:70px}.selected-value.inactive{cursor:not-allowed;color:#ccc}.nav-caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-right:4px solid transparent;border-left:4px solid transparent;cursor:pointer}.nav-caret.inactive{cursor:not-allowed;color:#ccc}.dropdown-menu{position:absolute;top:49px;z-index:1000;float:left;min-width:96px;list-style:none;font-size:13px;text-align:left;background-color:#fff;box-shadow:0 3px 6px rgba(0,0,0,.3);background-clip:padding-box}.dropdown-menu .option{display:block;padding:7px 0 7px 7px;clear:both;font-weight:400;line-height:1.42857143;white-space:nowrap;cursor:pointer;font-size:10px}.dropdown-menu .option:hover{background-color:#25c2d4;color:#fff!important}.dropdown-menu-separator{height:1px;overflow:hidden;background-color:#f4f4f4;padding:0!important}"] + template: "
\r\n
\r\n {{showSelected?.name}}\r\n
\r\n \r\n \r\n
\r\n
\r\n
{{option.name}}
\r\n
\r\n
\r\n
\r\n
\r\n", + styles: [".select{min-width:50px;display:flex;flex-direction:row;justify-content:center;align-items:center;color:#959da5}.selected-value{font-size:14px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:clip;max-width:70px}.selected-value.inactive{cursor:not-allowed;color:#ccc}.nav-caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-right:4px solid transparent;border-left:4px solid transparent;cursor:pointer}.nav-caret.inactive{cursor:not-allowed;color:#ccc}.dropdown-menu{position:absolute;top:49px;z-index:1000;float:left;min-width:96px;list-style:none;font-size:13px;text-align:left;background-color:#fff;box-shadow:0 3px 6px rgba(0,0,0,.3);background-clip:padding-box}.dropdown-menu .option{display:block;padding:7px 0 7px 7px;clear:both;font-weight:400;line-height:1.42857143;white-space:nowrap;cursor:pointer;font-size:10px}.dropdown-menu .option:hover{background-color:#25c2d4;color:#fff!important}.dropdown-menu-separator{height:1px;overflow:hidden;background-color:#f4f4f4;padding:0!important}"] }] } ]; /** @nocollapse */ @@ -3169,8 +3169,8 @@ class InitStateComponent { InitStateComponent.decorators = [ { type: Component, args: [{ selector: 'gd-init-state', - template: "
\n
\n \n \n \n \n
\n
\n \n {{text}}\n
\n
\n", - styles: [".wrapper{color:#959da5;background-color:#e7e7e7;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;width:100%;height:100%}.icon{font-size:65px;margin-bottom:43px;display:-webkit-box;display:flex;color:#959da5}.start{font-size:15px;text-align:center;color:#959da5}.gd-drag-n-drop-wrap.active{background-color:#fff;position:fixed;top:0;background:rgba(255,255,255,.8)}.gd-drag-n-drop-wrap.active .init-state-wrapper{position:absolute;opacity:.2;top:unset}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper{top:0;z-index:999}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper .icon{width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}.gd-drag-n-drop-wrap.active .text{color:#6e6e6e;font-size:14px}.init-state-dnd-wrapper,.init-state-wrapper{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;width:250px;height:250px;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center}.init-state-wrapper{top:-60px;position:relative}"] + template: "
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {{text}}\r\n
\r\n
\r\n", + styles: [".wrapper{color:#959da5;background-color:#e7e7e7;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%}.icon{font-size:65px;margin-bottom:43px;display:flex;color:#959da5}.start{font-size:15px;text-align:center;color:#959da5}.gd-drag-n-drop-wrap.active{background-color:#fff;position:fixed;top:0;background:rgba(255,255,255,.8)}.gd-drag-n-drop-wrap.active .init-state-wrapper{position:absolute;opacity:.2;top:unset}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper{top:0;z-index:999}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper .icon{width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}.gd-drag-n-drop-wrap.active .text{color:#6e6e6e;font-size:14px}.init-state-dnd-wrapper,.init-state-wrapper{display:flex;flex-direction:column;width:250px;height:250px;align-items:center;justify-content:center}.init-state-wrapper{top:-60px;position:relative}"] }] } ]; /** @nocollapse */ @@ -3437,8 +3437,8 @@ class ErrorModalComponent { ErrorModalComponent.decorators = [ { type: Component, args: [{ selector: 'gd-error-modal', - template: "\n
\n \n
\n
Something went wrong
\n
{{message ? message : 'Server is not available'}}
\n
\n
\n
\n", - styles: [".gd-modal-error{display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-flex:1;flex:1}.gd-modal-error .gd-modal-error-message{font-size:12px;margin:0 24px 24px 0;word-break:break-word}.gd-modal-error .gd-modal-error-title{font-size:16px;font-weight:700;margin:14px 0 10px}#gd-error-section{max-width:468px;max-height:204px;display:-webkit-box;display:flex}#gd-error-section fa-icon{-webkit-box-flex:1;flex:1;color:#e04e4e;font-size:40px;margin:13px 23px 90px;text-align:center;max-width:46px}"] + template: "\r\n
\r\n \r\n
\r\n
Something went wrong
\r\n
{{message ? message : 'Server is not available'}}
\r\n
\r\n
\r\n
\r\n", + styles: [".gd-modal-error{display:inline-flex;flex-direction:column;flex:1}.gd-modal-error .gd-modal-error-message{font-size:12px;margin:0 24px 24px 0;word-break:break-word}.gd-modal-error .gd-modal-error-title{font-size:16px;font-weight:700;margin:14px 0 10px}#gd-error-section{max-width:468px;max-height:204px;display:flex}#gd-error-section fa-icon{flex:1;color:#e04e4e;font-size:40px;margin:13px 23px 90px;text-align:center;max-width:46px}"] }] } ]; /** @nocollapse */ @@ -3551,8 +3551,8 @@ class PasswordRequiredComponent { PasswordRequiredComponent.decorators = [ { type: Component, args: [{ selector: 'gd-password-required', - template: "\n
\n
\n \n \n {{message}}\n \n Open\n \n
\n
\n
\n", - styles: ["#gd-password-section{width:375px;height:164px}.gd-password-wrap{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;margin:24px}.gd-password-wrap label{font-size:14px;color:#acacac;padding-bottom:12px}.gd-password-wrap input{height:30px;border:1px solid #25c2d4}.gd-password-wrap input.error{border-color:#e04e4e}.gd-password-wrap gd-button{align-self:flex-end}.gd-password-wrap ::ng-deep .button{height:37px;width:72px;padding:0;-webkit-box-pack:center;justify-content:center}.gd-password-wrap ::ng-deep .button ::ng-deep .text{font-size:10px!important}.gd-password-error{color:#e04e4e;padding:10px 0 12px;height:12px;line-height:12px;font-size:12px}@media (max-width:1037px){#gd-password-section{min-width:375px}}"] + template: "\r\n
\r\n
\r\n \r\n \r\n {{message}}\r\n \r\n Open\r\n \r\n
\r\n
\r\n
\r\n", + styles: ["#gd-password-section{width:375px;height:164px}.gd-password-wrap{display:flex;flex-direction:column;margin:24px}.gd-password-wrap label{font-size:14px;color:#acacac;padding-bottom:12px}.gd-password-wrap input{height:30px;border:1px solid #25c2d4}.gd-password-wrap input.error{border-color:#e04e4e}.gd-password-wrap gd-button{align-self:flex-end}.gd-password-wrap ::ng-deep .button{height:37px;width:72px;padding:0;justify-content:center}.gd-password-wrap ::ng-deep .button ::ng-deep .text{font-size:10px!important}.gd-password-error{color:#e04e4e;padding:10px 0 12px;height:12px;line-height:12px;font-size:12px}@media (max-width:1037px){#gd-password-section{min-width:375px}}"] }] } ]; /** @nocollapse */ @@ -3823,8 +3823,8 @@ class SearchComponent { SearchComponent.decorators = [ { type: Component, args: [{ selector: 'gd-search', - template: "
\n \n
{{current}} of {{total}}
\n \n \n \n \n \n \n
\n", - styles: [".gd-nav-search-btn{margin:3px 0 4px}.gd-nav-search-cancel{color:#fff;font-size:14px;width:37px}.gd-search-count{color:#959da5;font-size:12px;position:absolute;right:148px;top:14px}.gd-nav-search-container{background-color:#3e4e5a;width:410px;position:fixed;left:50%;top:60px;z-index:2;-webkit-transform:translate(-50%,0);transform:translate(-50%,0);display:-webkit-box;display:flex}.gd-search-input{float:left;height:30px;width:267px;font-size:14px;color:#6e6e6e;border:1px solid #25c2d4;margin:7px 0 7px 7px;box-sizing:border-box;padding:6px 0 5px 9px}input[type=text]::-ms-clear{display:none}@media (max-width:1037px){.gd-search-input{width:231px;height:30px;margin:7px 0 7px 5px}.gd-search-count{position:absolute;left:193px;top:15px}.gd-nav-search-container{width:100%}}"] + template: "
\r\n \r\n
{{current}} of {{total}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n", + styles: [".gd-nav-search-btn{margin:3px 0 4px}.gd-nav-search-cancel{color:#fff;font-size:14px;width:37px}.gd-search-count{color:#959da5;font-size:12px;position:absolute;right:148px;top:14px}.gd-nav-search-container{background-color:#3e4e5a;width:410px;position:fixed;left:50%;top:60px;z-index:2;transform:translate(-50%,0);display:flex}.gd-search-input{float:left;height:30px;width:267px;font-size:14px;color:#6e6e6e;border:1px solid #25c2d4;margin:7px 0 7px 7px;box-sizing:border-box;padding:6px 0 5px 9px}input[type=text]::-ms-clear{display:none}@media (max-width:1037px){.gd-search-input{width:231px;height:30px;margin:7px 0 7px 5px}.gd-search-count{position:absolute;left:193px;top:15px}.gd-nav-search-container{width:100%}}"] }] } ]; /** @nocollapse */ @@ -4081,8 +4081,8 @@ class TabbedToolbarsComponent { TabbedToolbarsComponent.decorators = [ { type: Component, args: [{ selector: 'gd-tabbed-toolbars', - template: "
\n \n \n
\n", - styles: [".top-panel{background:#3e4e5a;display:-webkit-box;display:flex;width:100%;height:90px}.top-panel ::ng-deep .logo{height:30px;font-size:16px}@media (max-width:1037px){.top-panel{height:60px}.top-panel ::ng-deep .logo{height:60px}}"] + template: "
\r\n \r\n \r\n
\r\n", + styles: [".top-panel{background:#3e4e5a;display:flex;width:100%;height:90px}.top-panel ::ng-deep .logo{height:30px;font-size:16px}@media (max-width:1037px){.top-panel{height:60px}.top-panel ::ng-deep .logo{height:60px}}"] }] } ]; /** @nocollapse */ @@ -4186,8 +4186,8 @@ class TabComponent { TabComponent.decorators = [ { type: Component, args: [{ selector: 'gd-tab', - template: "
\n
{{tabTitle}}
\n \n
\n
\n \n
\n", - styles: [".tab-content{height:60px;position:absolute;background-color:#fff;width:100%;left:0;line-height:60px;display:none;z-index:9}.tab-content ::ng-deep .toolbar-panel{height:60px}.tab-content.active{display:-webkit-box;display:flex}.gd-tab{text-align:center;font-size:11px;color:#e5e5e5;height:30px;line-height:30px;cursor:pointer;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center}.gd-tab .icon{display:none;font-size:14px}.gd-tab .title{margin:auto 23px}.gd-tab.active{background-color:#fff;color:#3e4e5a;font-weight:700}@media (max-width:1037px){.gd-tab{height:60px;line-height:60px;width:60px}.gd-tab .title{display:none}.gd-tab .icon{display:block;font-size:22px}}"] + template: "
\r\n
{{tabTitle}}
\r\n \r\n
\r\n
\r\n \r\n
\r\n", + styles: [".tab-content{height:60px;position:absolute;background-color:#fff;width:100%;left:0;line-height:60px;display:none;z-index:9}.tab-content ::ng-deep .toolbar-panel{height:60px}.tab-content.active{display:flex}.gd-tab{text-align:center;font-size:11px;color:#e5e5e5;height:30px;line-height:30px;cursor:pointer;display:flex;align-items:center;justify-content:center}.gd-tab .icon{display:none;font-size:14px}.gd-tab .title{margin:auto 23px}.gd-tab.active{background-color:#fff;color:#3e4e5a;font-weight:700}@media (max-width:1037px){.gd-tab{height:60px;line-height:60px;width:60px}.gd-tab .title{display:none}.gd-tab .icon{display:block;font-size:22px}}"] }] } ]; /** @nocollapse */ @@ -4233,8 +4233,8 @@ class TabsComponent { TabsComponent.decorators = [ { type: Component, args: [{ selector: 'gd-tabs', - template: "
\n \n
\n", - styles: [".gd-tabs{display:-webkit-box;display:flex}"] + template: "
\r\n \r\n
\r\n", + styles: [".gd-tabs{display:flex}"] }] } ]; /** @nocollapse */ @@ -4700,8 +4700,8 @@ class ColorPickerComponent { ColorPickerComponent.decorators = [ { type: Component, args: [{ selector: 'gd-color-picker', - template: "
\n
\n
\n
\n
\n", - styles: [".bcPicker-picker{border:1px;border-radius:100%}.bcPicker-palette{width:250px;background-color:#fdfdfd;z-index:999;box-shadow:0 0 5px #efefef;display:-webkit-box;display:flex;flex-wrap:wrap;-webkit-box-pack:center;justify-content:center}.bcPicker-palette>.bcPicker-color{width:18px;height:18px;margin:2px;cursor:pointer}"] + template: "
\r\n
\r\n
\r\n
\r\n
\r\n", + styles: [".bcPicker-picker{border:1px;border-radius:100%}.bcPicker-palette{width:250px;background-color:#fdfdfd;z-index:999;box-shadow:0 0 5px #efefef;display:flex;flex-wrap:wrap;justify-content:center}.bcPicker-palette>.bcPicker-color{width:18px;height:18px;margin:2px;cursor:pointer}"] }] } ]; /** @nocollapse */ @@ -5274,8 +5274,8 @@ class SuccessModalComponent { SuccessModalComponent.decorators = [ { type: Component, args: [{ selector: 'gd-success-modal', - template: "\n
\n
\n \n \n
\n
\n
\n
\n
\n", - styles: [".check_mark{margin:47px auto}.sa-icon{width:80px;height:80px;border:4px solid gray;border-radius:50%;padding:0;position:relative;box-sizing:content-box}#gd-modal-success{display:-webkit-box;display:flex;overflow:hidden;width:469px;height:183px}.sa-icon.sa-success{border-color:#4caf50;-webkit-transform:scale(1.18);transform:scale(1.18)}.sa-icon.sa-success::after,.sa-icon.sa-success::before{content:'';position:absolute;width:60px;height:120px;background:#fff}.sa-icon.sa-success::before{border-radius:120px 0 0 120px;top:-7px;left:-33px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform-origin:60px 60px;transform-origin:60px 60px}.sa-icon.sa-success::after{border-radius:0 120px 120px 0;top:-11px;left:30px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform-origin:0 60px;transform-origin:0 60px}.sa-icon.sa-success .sa-placeholder{width:80px;height:80px;border:4px solid rgba(76,175,80,.5);border-radius:50%;box-sizing:content-box;position:absolute;left:-4px;top:-4px;z-index:2}.sa-icon.sa-success .sa-fix{width:5px;height:90px;background-color:#fff;position:absolute;left:28px;top:8px;z-index:1;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.sa-icon.sa-success.animate::after{-webkit-animation:4.25s ease-in rotatePlaceholder;animation:4.25s ease-in rotatePlaceholder}.animateSuccessTip{-webkit-animation:.75s animateSuccessTip;animation:.75s animateSuccessTip}.animateSuccessLong{-webkit-animation:.75s animateSuccessLong;animation:.75s animateSuccessLong}@-webkit-keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}@-webkit-keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}.sa-icon.sa-success .sa-line{height:5px;background-color:#4caf50;display:block;border-radius:2px;position:absolute;z-index:2}.sa-icon.sa-success .sa-line.sa-tip{width:25px;left:14px;top:46px;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.sa-icon.sa-success .sa-line.sa-long{width:47px;right:8px;top:38px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}@-webkit-keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@media (max-width:1037px){#gd-modal-success{left:50%;top:50%;position:relative;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}}"] + template: "\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n", + styles: [".check_mark{margin:47px auto}.sa-icon{width:80px;height:80px;border:4px solid gray;border-radius:50%;padding:0;position:relative;box-sizing:content-box}#gd-modal-success{display:flex;overflow:hidden;width:469px;height:183px}.sa-icon.sa-success{border-color:#4caf50;transform:scale(1.18)}.sa-icon.sa-success::after,.sa-icon.sa-success::before{content:'';position:absolute;width:60px;height:120px;background:#fff}.sa-icon.sa-success::before{border-radius:120px 0 0 120px;top:-7px;left:-33px;transform:rotate(-45deg);transform-origin:60px 60px}.sa-icon.sa-success::after{border-radius:0 120px 120px 0;top:-11px;left:30px;transform:rotate(-45deg);transform-origin:0 60px}.sa-icon.sa-success .sa-placeholder{width:80px;height:80px;border:4px solid rgba(76,175,80,.5);border-radius:50%;box-sizing:content-box;position:absolute;left:-4px;top:-4px;z-index:2}.sa-icon.sa-success .sa-fix{width:5px;height:90px;background-color:#fff;position:absolute;left:28px;top:8px;z-index:1;transform:rotate(-45deg)}.sa-icon.sa-success.animate::after{-webkit-animation:4.25s ease-in rotatePlaceholder;animation:4.25s ease-in rotatePlaceholder}.animateSuccessTip{-webkit-animation:.75s animateSuccessTip;animation:.75s animateSuccessTip}.animateSuccessLong{-webkit-animation:.75s animateSuccessLong;animation:.75s animateSuccessLong}@-webkit-keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}@-webkit-keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}.sa-icon.sa-success .sa-line{height:5px;background-color:#4caf50;display:block;border-radius:2px;position:absolute;z-index:2}.sa-icon.sa-success .sa-line.sa-tip{width:25px;left:14px;top:46px;transform:rotate(45deg)}.sa-icon.sa-success .sa-line.sa-long{width:47px;right:8px;top:38px;transform:rotate(-45deg)}@-webkit-keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@media (max-width:1037px){#gd-modal-success{left:50%;top:50%;position:relative;transform:translate(-50%,-50%)}}"] }] } ]; /** @nocollapse */ @@ -5521,8 +5521,8 @@ class LoadingMaskComponent { LoadingMaskComponent.decorators = [ { type: Component, args: [{ selector: 'gd-loading-mask', - template: "
\n
\n  Loading... Please wait.\n
\n
\n", - styles: [".loading-wrapper{background:rgba(0,0,0,.5);width:100%;height:100%;font-size:14px;color:#fff;position:fixed;top:0;left:0;z-index:99999}.loading-message{position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}"] + template: "
\r\n
\r\n  Loading... Please wait.\r\n
\r\n
\r\n", + styles: [".loading-wrapper{background:rgba(0,0,0,.5);width:100%;height:100%;font-size:14px;color:#fff;position:fixed;top:0;left:0;z-index:99999}.loading-message{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}"] }] } ]; /** @nocollapse */ @@ -5636,7 +5636,7 @@ DropDownToggleComponent.decorators = [ selector: 'gd-drop-down-toggle', template: '', encapsulation: ViewEncapsulation.None, - styles: [".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] + styles: [".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] }] } ]; /** @nocollapse */ @@ -5696,7 +5696,7 @@ DropDownItemsComponent.decorators = [ selector: 'gd-drop-down-items', template: '', encapsulation: ViewEncapsulation.None, - styles: [".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] + styles: [".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] }] } ]; /** @nocollapse */ @@ -5738,7 +5738,7 @@ DropDownItemComponent.decorators = [ { type: Component, args: [{ selector: 'gd-drop-down-item', template: '', - styles: [".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] + styles: [".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] }] } ]; /** @nocollapse */ @@ -5802,7 +5802,7 @@ DropDownComponent.decorators = [ selector: 'gd-drop-down', template: '', encapsulation: ViewEncapsulation.None, - styles: [".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] + styles: [".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] }] } ]; DropDownComponent.propDecorators = { @@ -5836,8 +5836,8 @@ class LeftSideBarComponent { LeftSideBarComponent.decorators = [ { type: Component, args: [{ selector: 'gd-left-side-bar', - template: "
\n
\n
 Loading...\n
\n
\n \n
\n", - styles: [".left-panel{border-radius:0;float:left}.gd-left-bar-fade{margin:auto;overflow:hidden;-webkit-overflow-scrolling:touch;-webkit-transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;width:100%;height:100%;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;position:fixed;z-index:1000}@media (max-width:1037px){.gd-left-bar-fade{top:100px;right:0}.gd-left-bar-spinner{top:20%}}"] + template: "
\r\n
\r\n
 Loading...\r\n
\r\n
\r\n \r\n
\r\n", + styles: [".left-panel{border-radius:0;float:left}.gd-left-bar-fade{margin:auto;overflow:hidden;-webkit-overflow-scrolling:touch;transition:transform .3s ease-out;width:100%;height:100%;display:flex;justify-content:center;align-items:center;position:fixed;z-index:1000}@media (max-width:1037px){.gd-left-bar-fade{top:100px;right:0}.gd-left-bar-spinner{top:20%}}"] }] } ]; /** @nocollapse */ @@ -6200,8 +6200,8 @@ class ResizingComponent { ResizingComponent.decorators = [ { type: Component, args: [{ selector: 'gd-resizing', - template: "
\n\n
\n\n
\n\n
\n", - styles: [".ui-resizable-handle{background-color:#679ffa;width:8px;height:8px;border-radius:100%;position:absolute;font-size:.1px;display:block}.se-resize{bottom:-5px;right:-5px;cursor:se-resize}.ne-resize{top:-5px;right:-5px;cursor:ne-resize}.sw-resize{bottom:-5px;left:-5px;cursor:sw-resize}.nw-resize{top:-5px;left:-5px;cursor:nw-resize}"] + template: "
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n", + styles: [".ui-resizable-handle{background-color:#679ffa;width:8px;height:8px;border-radius:100%;position:absolute;font-size:.1px;display:block}.se-resize{bottom:-5px;right:-5px;cursor:se-resize}.ne-resize{top:-5px;right:-5px;cursor:ne-resize}.sw-resize{bottom:-5px;left:-5px;cursor:sw-resize}.nw-resize{top:-5px;left:-5px;cursor:nw-resize}@media (max-width:1037px){.ui-resizable-handle{width:12px;height:12px}}"] }] } ]; /** @nocollapse */ @@ -6347,8 +6347,8 @@ class TopTabComponent { TopTabComponent.decorators = [ { type: Component, args: [{ selector: 'gd-top-tab', - template: "
\n \n \n
\n", - styles: [".gd-tab{font-size:14px;color:#3e4e5a;cursor:pointer;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;align-content:center;-webkit-box-pack:center;justify-content:center;min-width:36px;height:36px;text-align:center;position:relative;white-space:nowrap;padding:0!important;margin:0 10px}.gd-tab .gd-tab-tooltip{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;margin:0!important}.gd-tab.active{background-color:#acacac;color:#fff!important;font-weight:700}.gd-tab.disabled{cursor:not-allowed;opacity:.4}.gd-tab ::ng-deep .tooltip{font-size:12px;margin:20px -57px}.gd-tab .title{margin:auto 23px}@media (max-width:1037px){.gd-tab{font-size:20px}}"] + template: "
\r\n \r\n \r\n
\r\n", + styles: [".gd-tab{font-size:14px;color:#3e4e5a;cursor:pointer;display:flex;flex-direction:column;align-items:center;align-content:center;justify-content:center;min-width:36px;height:36px;text-align:center;position:relative;white-space:nowrap;padding:0!important;margin:0 10px}.gd-tab .gd-tab-tooltip{display:flex;flex-direction:column;margin:0!important}.gd-tab.active{background-color:#acacac;color:#fff!important;font-weight:700}.gd-tab.disabled{cursor:not-allowed;opacity:.4}.gd-tab ::ng-deep .tooltip{font-size:12px;margin:20px -57px}.gd-tab .title{margin:auto 23px}@media (max-width:1037px){.gd-tab{font-size:20px}}"] }] } ]; /** @nocollapse */ @@ -6557,8 +6557,8 @@ class TextMenuComponent { TextMenuComponent.decorators = [ { type: Component, args: [{ selector: 'gd-text-menu', - template: "
\n \n \n \n \n \n \n
\n
\n \n \n
\n", - styles: ["::ng-deep .active{background-color:#e7e7e7}.gd-text-menu{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row}.gd-text-menu .format-select{height:37px;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;max-width:80px;margin:0 3px}.gd-text-menu .first-component{margin-left:8px}.gd-text-menu ::ng-deep .dropdown-menu{top:40px!important;height:120px;overflow-y:auto}.gd-text-menu ::ng-deep .icon-button{margin:0!important}.bg-color-pic{border-radius:100%;border:1px solid #ccc;position:absolute;height:8px;width:8px;right:6px;bottom:6px}.palette{position:relative;top:40px;left:-55px;z-index:100}@media (max-width:1037px){.gd-text-menu{position:fixed;left:0;right:0;width:inherit;height:60px;-webkit-box-align:center;align-items:center;padding:0;margin:0;background-color:#fff;border-top:2px solid #707070;-webkit-transform-origin:top left;transform-origin:top left;z-index:1000}.gd-text-menu ::ng-deep .selected-value{white-space:normal!important;word-wrap:break-word}.gd-text-menu .icon{color:#fff;margin:0 9px}.gd-text-menu ::ng-deep .bcPicker-palette{left:-200px;top:-185px}.gd-text-menu .palette{top:unset;bottom:40px;left:unset;right:5px}.gd-text-menu ::ng-deep .dropdown-menu{bottom:40px;top:unset!important}.gd-text-menu ::ng-deep .first-component ::ng-deep .dropdown-menu{left:0}.gd-text-menu ::ng-deep .button{margin:3px!important;font-size:16px}}"] + template: "
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n", + styles: ["::ng-deep .active{background-color:#e7e7e7}.gd-text-menu{display:flex;flex-direction:row}.gd-text-menu .format-select{height:37px;display:flex;justify-content:center;align-items:center;max-width:80px;margin:0 3px}.gd-text-menu .first-component{margin-left:8px}.gd-text-menu ::ng-deep .dropdown-menu{top:40px!important;height:120px;overflow-y:auto}.gd-text-menu ::ng-deep .icon-button{margin:0!important}.bg-color-pic{border-radius:100%;border:1px solid #ccc;position:absolute;height:8px;width:8px;right:6px;bottom:6px}.palette{position:relative;top:40px;left:-55px;z-index:100}@media (max-width:1037px){.gd-text-menu{position:fixed;left:0;right:0;width:inherit;height:60px;align-items:center;padding:0;margin:0;background-color:#fff;border-top:2px solid #707070;transform-origin:top left;z-index:1000}.gd-text-menu ::ng-deep .selected-value{white-space:normal!important;word-wrap:break-word}.gd-text-menu .icon{color:#fff;margin:0 9px}.gd-text-menu ::ng-deep .bcPicker-palette{left:-200px;top:-185px}.gd-text-menu .palette{top:unset;bottom:40px;left:unset;right:5px}.gd-text-menu ::ng-deep .dropdown-menu{bottom:40px;top:unset!important}.gd-text-menu ::ng-deep .first-component ::ng-deep .dropdown-menu{left:0}.gd-text-menu ::ng-deep .button{margin:3px!important;font-size:16px}}"] }] } ]; /** @nocollapse */ @@ -6811,8 +6811,8 @@ class ContextMenuComponent { ContextMenuComponent.decorators = [ { type: Component, args: [{ selector: 'gd-context-menu', - template: "
10 ? 'gd-context-menu-top' : 'gd-context-menu-bottom'\">\n \n \n \n \n \n \n
\n", - styles: [".gd-context-menu-top{top:-44px}.gd-context-menu-bottom{bottom:-40px}.gd-context-menu{box-shadow:rgba(0,0,0,.52) 0 0 5px;background-color:#fff;position:absolute;left:0;right:0;margin:auto;cursor:default;width:max-content;width:-moz-max-content;width:-webkit-max-content;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;z-index:999}.gd-context-menu .arrows{cursor:move}.gd-context-menu ::ng-deep .active{background-color:#e7e7e7}.gd-context-menu ::ng-deep .icon-button{margin:0!important}@media (max-width:1037px){.gd-context-menu-top{top:-42px;-webkit-transform-origin:bottom center;transform-origin:bottom center}}"] + template: "
10 ? 'gd-context-menu-top' : 'gd-context-menu-bottom'\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n", + styles: [".gd-context-menu-top{top:-44px}.gd-context-menu-bottom{bottom:-40px}.gd-context-menu{box-shadow:rgba(0,0,0,.52) 0 0 5px;background-color:#fff;position:absolute;left:0;right:0;margin:auto;cursor:default;width:max-content;width:-moz-max-content;width:-webkit-max-content;display:flex;flex-direction:row;z-index:999}.gd-context-menu .arrows{cursor:move}.gd-context-menu ::ng-deep .active{background-color:#e7e7e7}.gd-context-menu ::ng-deep .icon-button{margin:0!important}@media (max-width:1037px){.gd-context-menu-top{top:-42px;transform-origin:bottom center}}"] }] } ]; /** @nocollapse */ diff --git a/dist/libs/common-components/fesm2015/groupdocs.examples.angular-common-components.js.map b/dist/libs/common-components/fesm2015/groupdocs.examples.angular-common-components.js.map index faf43edc2..34b6b52a6 100644 --- a/dist/libs/common-components/fesm2015/groupdocs.examples.angular-common-components.js.map +++ b/dist/libs/common-components/fesm2015/groupdocs.examples.angular-common-components.js.map @@ -1 +1 @@ -{"version":3,"file":"groupdocs.examples.angular-common-components.js","sources":["ng://@groupdocs.examples.angular/common-components/lib/top-toolbar/top-toolbar.component.ts","ng://@groupdocs.examples.angular/common-components/lib/side-panel/side-panel.component.ts","ng://@groupdocs.examples.angular/common-components/lib/window.service.ts","ng://@groupdocs.examples.angular/common-components/lib/button/button.component.ts","ng://@groupdocs.examples.angular/common-components/lib/logo/logo.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tooltip/tooltip.component.ts","ng://@groupdocs.examples.angular/common-components/lib/config.service.ts","ng://@groupdocs.examples.angular/common-components/lib/modal.service.ts","ng://@groupdocs.examples.angular/common-components/lib/modal/modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/file.service.ts","ng://@groupdocs.examples.angular/common-components/lib/upload-files.service.ts","ng://@groupdocs.examples.angular/common-components/lib/browse-files-modal/browse-files-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/zoom.service.ts","ng://@groupdocs.examples.angular/common-components/lib/page-preload.service.ts","ng://@groupdocs.examples.angular/common-components/lib/navigate.service.ts","ng://@groupdocs.examples.angular/common-components/lib/document/document.component.ts","ng://@groupdocs.examples.angular/common-components/lib/page/page.component.ts","ng://@groupdocs.examples.angular/common-components/lib/pipes.ts","ng://@groupdocs.examples.angular/common-components/lib/upload-file-zone/upload-file-zone.component.ts","ng://@groupdocs.examples.angular/common-components/lib/dnd.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/viewport.service.ts","ng://@groupdocs.examples.angular/common-components/lib/scrollable.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/mousewheel.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/zoom.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/on-close.service.ts","ng://@groupdocs.examples.angular/common-components/lib/select/select.component.ts","ng://@groupdocs.examples.angular/common-components/lib/disabled-cursor.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/rotation.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/init-state/init-state.component.ts","ng://@groupdocs.examples.angular/common-components/lib/render-print.service.ts","ng://@groupdocs.examples.angular/common-components/lib/render-print.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/exception-message.service.ts","ng://@groupdocs.examples.angular/common-components/lib/error-modal/error-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/password.service.ts","ng://@groupdocs.examples.angular/common-components/lib/password-required/password-required.component.ts","ng://@groupdocs.examples.angular/common-components/lib/error-interceptor.service.ts","ng://@groupdocs.examples.angular/common-components/lib/search.service.ts","ng://@groupdocs.examples.angular/common-components/lib/search/search.component.ts","ng://@groupdocs.examples.angular/common-components/lib/searchable.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/tabbed-toolbars/tabbed-toolbars.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tab-activator.service.ts","ng://@groupdocs.examples.angular/common-components/lib/tab/tab.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tabs/tabs.component.ts","ng://@groupdocs.examples.angular/common-components/lib/formatting.service.ts","ng://@groupdocs.examples.angular/common-components/lib/color-picker/color-picker.component.ts","ng://@groupdocs.examples.angular/common-components/lib/back-formatting.service.ts","ng://@groupdocs.examples.angular/common-components/lib/selection.service.ts","ng://@groupdocs.examples.angular/common-components/lib/formatting.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/success-modal/success-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/edit-html.service.ts","ng://@groupdocs.examples.angular/common-components/lib/editor.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask.service.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask/loading-mask.component.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask-interceptor.service.ts","ng://@groupdocs.examples.angular/common-components/lib/drop-down/drop-down.component.ts","ng://@groupdocs.examples.angular/common-components/lib/left-side-bar/left-side-bar.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tooltip.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/add-dynamic-component.service.ts","ng://@groupdocs.examples.angular/common-components/lib/hosting-dynamic-component.service.ts","ng://@groupdocs.examples.angular/common-components/lib/host-dynamic.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/resizing/resizing.component.ts","ng://@groupdocs.examples.angular/common-components/lib/top-tab-activator.service.ts","ng://@groupdocs.examples.angular/common-components/lib/top-tab/top-tab.component.ts","ng://@groupdocs.examples.angular/common-components/lib/text-menu/text-menu.component.ts","ng://@groupdocs.examples.angular/common-components/lib/context-menu/context-menu.component.ts","ng://@groupdocs.examples.angular/common-components/lib/common-components.module.ts"],"sourcesContent":["import {Component, Input} from '@angular/core';\n\n@Component({\n selector: 'gd-top-toolbar',\n templateUrl: './top-toolbar.component.html',\n styleUrls: ['./top-toolbar.component.less']\n})\nexport class TopToolbarComponent {\n\n constructor() {\n }\n}\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\n\n@Component({\n selector: 'gd-side-panel',\n templateUrl: './side-panel.component.html',\n styleUrls: ['./side-panel.component.less']\n})\n\nexport class SidePanelComponent {\n @Input() title: string;\n @Input() icon: string;\n @Input() closable = true;\n @Input() saveable = true;\n @Output() hideSidePanel = new EventEmitter();\n @Output() saveInSidePanel = new EventEmitter();\n\n onlyTitle = false;\n\n constructor() {\n }\n\n closeSidePanel() {\n this.hideSidePanel.emit(true);\n }\n\n saveBySidePanel() {\n this.saveInSidePanel.emit(true);\n }\n\n toggleTitleMode(){\n if (this.closable && !this.saveable) {\n this.onlyTitle = !this.onlyTitle;\n }\n }\n}\n","import {fromEvent, Observable, Subject} from \"rxjs\";\nimport {debounceTime, distinctUntilChanged, startWith, tap} from \"rxjs/operators\";\n\nconst MOBILE_MAX_WIDTH = 425;\nconst TABLET_MAX_WIDTH = 1024;\n\nexport class WindowService {\n\n private resizeSubject: Subject = new Subject();\n private _resize$;\n private width: number;\n private height: number;\n\n constructor() {\n this.width = window.innerWidth;\n this.height = window.innerHeight;\n\n this._resize$ = fromEvent(window, 'resize')\n .pipe(\n debounceTime(200),\n distinctUntilChanged(),\n startWith({target: {innerWidth: window.innerWidth, innerHeight: window.innerHeight}}),\n tap(event => {\n this.resizeSubject.next(event.target);\n this.width = (event.target as Window).innerWidth;\n this.height = (event.target as Window).innerHeight;\n }),\n );\n this._resize$.subscribe();\n }\n\n get onResize(): Observable {\n return this.resizeSubject.asObservable();\n }\n\n isMobile() {\n return this.width <= MOBILE_MAX_WIDTH;\n }\n\n isTablet() {\n return this.width <= TABLET_MAX_WIDTH;\n }\n\n isDesktop() {\n return !this.isMobile() && !this.isTablet();\n }\n\n getWidth() {\n return this.width;\n }\n\n getHeight() {\n return this.height;\n }\n\n isEdge() {\n return window.navigator.userAgent.toLowerCase().indexOf('edge') > -1;\n }\n\n isFirefox() {\n return navigator.userAgent.toLowerCase().indexOf('firefox') > -1;\n }\n}\n","import {Component, Input} from '@angular/core';\nimport {WindowService} from \"../window.service\";\n\n@Component({\n selector: 'gd-button',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.less']\n})\nexport class ButtonComponent {\n @Input() iconOnly = true;\n @Input() intent = 'default';\n @Input() disabled = false;\n @Input() icon: string;\n @Input() iconClass: string;\n @Input() tooltip: string;\n @Input() className: string;\n @Input() toggle = false;\n @Input() iconSize: string;\n @Input() iconRegular = false;\n @Input() elementPosition = 0;\n\n showToolTip = false;\n private isDesktop: boolean;\n\n constructor(windowService: WindowService) {\n this.isDesktop = windowService.isDesktop();\n windowService.onResize.subscribe((w) => {\n this.isDesktop = windowService.isDesktop();\n });\n }\n\n iconButtonClass() {\n return this.iconOnly ? 'icon-button' : '';\n }\n\n onHovering() {\n if (this.isDesktop && !this.disabled) {\n this.className += ' active';\n }\n }\n\n onUnhovering() {\n if (this.isDesktop && !this.disabled) {\n this.className = this.cleanAll(this.className, ' active');\n }\n }\n\n private cleanAll(str: string, val: string) {\n while (str && str.indexOf(val) !== -1) {\n str = str.replace(val, '');\n }\n return str;\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-logo',\n templateUrl: './logo.component.html',\n styleUrls: ['./logo.component.less']\n})\nexport class LogoComponent implements OnInit {\n\n @Input() logo;\n @Input() icon;\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-tooltip',\n templateUrl: './tooltip.component.html',\n styleUrls: ['./tooltip.component.less']\n})\nexport class TooltipComponent implements OnInit {\n\n @Input() text: string;\n @Input() position = 0;\n visibility = 'hidden';\n\n constructor() {\n }\n\n getClass() {\n if (this.position === 0) {\n return 'tooltip';\n }\n return 'tooltip ' + (this.position > 0 ? 'last-element' : 'first-element');\n }\n\n @Input()\n set show(value: boolean) {\n this.visibility = value ? 'shown' : 'hidden';\n }\n\n ngOnInit() {\n }\n\n}\n","import {HttpHeaders} from \"@angular/common/http\";\nimport {Injectable} from \"@angular/core\";\n\nexport class Api {\n public static VIEWER_APP = '/viewer';\n public static SIGNATURE_APP = '/signature';\n public static ANNOTATION_APP = '/annotation';\n public static SEARCH_APP = '/search';\n public static EDITOR_APP = '/editor';\n public static COMPARISON_APP = '/comparison';\n public static CONVERSION_APP = '/conversion';\n public static METADATA_APP = '/metadata';\n public static DEFAULT_API_ENDPOINT = window.location.href;\n public static LOAD_FILE_TREE = '/loadFileTree';\n public static LOAD_CONFIG = '/loadConfig';\n public static LOAD_DOCUMENT_DESCRIPTION = '/loadDocumentDescription';\n public static LOAD_DOCUMENT_PAGE = '/loadDocumentPage';\n public static LOAD_DOCUMENT_PROPERTIES = '/loadProperties';\n public static LOAD_DOCUMENT_PROPERTIES_NAMES = '/loadPropertiesNames';\n public static SAVE_PROPERTY = '/saveProperty';\n public static REMOVE_PROPERTY = '/removeProperty';\n public static ROTATE_DOCUMENT_PAGE = '/rotateDocumentPages';\n public static UPLOAD_DOCUMENTS = '/uploadDocument';\n public static DOWNLOAD_DOCUMENTS = '/downloadDocument';\n public static LOAD_PRINT = '/loadPrint';\n public static LOAD_PRINT_PDF = '/printPdf';\n public static LOAD_THUMBNAILS = '/loadThumbnails';\n public static LOAD_FORMATS = '/loadFormats';\n public static SAVE_FILE = '/saveFile';\n public static CREATE_FILE = '/createFile';\n public static COMPARE_FILES = '/compare';\n public static CONVERT_FILE = '/convert';\n public static DELETE_SIGNATURE_FILE = '/deleteSignatureFile';\n public static REMOVE_FROM_INDEX = '/removeFromIndex';\n public static GET_FILE_STATUS = '/getFileStatus';\n public static SAVE_OPTICAL_CODE = '/saveOpticalCode';\n public static SAVE_TEXT = '/saveText';\n public static SAVE_IMAGE = '/saveImage';\n public static SAVE_STAMP = '/saveStamp';\n public static SIGN = '/sign';\n public static DOWNLOAD_SIGNED = '/downloadSigned';\n public static LOAD_SIGNATURE_IMAGE = '/loadSignatureImage';\n public static ANNOTATE = '/annotate';\n public static SEARCH = '/search';\n public static ADD_FILES_TO_INDEX = '/addFilesToIndex';\n\n public static httpOptionsJson = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n })\n };\n public static httpOptionsJsonResponseTypeBlob = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n }),\n responseType: 'blob' as 'blob'\n };\n}\n\n@Injectable()\nexport class ConfigService {\n\n private _apiEndpoint: string;\n\n constructor() {\n this.apiEndpoint = Api.DEFAULT_API_ENDPOINT;\n }\n\n set apiEndpoint(url: string) {\n this._apiEndpoint = url && url.trim().endsWith('/') ? url.substring(0, url.length - 1) : url;\n }\n\n getConfigEndpoint(app) {\n return (this.apiEndpoint.endsWith(app) ? this.apiEndpoint : this.apiEndpoint + app) + Api.LOAD_CONFIG;\n }\n\n getViewerApiEndpoint() {\n return this._apiEndpoint.endsWith(Api.VIEWER_APP) ? this._apiEndpoint : this._apiEndpoint + Api.VIEWER_APP;\n }\n\n getEditorApiEndpoint() {\n return this._apiEndpoint.trim().endsWith(Api.EDITOR_APP) ? this._apiEndpoint : this._apiEndpoint + Api.EDITOR_APP;\n }\n\n getComparisonApiEndpoint() {\n return this._apiEndpoint.trim().endsWith(Api.COMPARISON_APP) ? this._apiEndpoint : this._apiEndpoint + Api.COMPARISON_APP;\n }\n\n getConversionApiEndpoint() {\n return this._apiEndpoint.trim().endsWith(Api.CONVERSION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.CONVERSION_APP;\n }\n\n getMetadataApiEndpoint() {\n return this._apiEndpoint.trim().endsWith(Api.METADATA_APP) ? this._apiEndpoint : this._apiEndpoint + Api.METADATA_APP;\n }\n\n get apiEndpoint() {\n return this._apiEndpoint;\n }\n\n getSignatureApiEndpoint() {\n return this._apiEndpoint.endsWith(Api.SIGNATURE_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SIGNATURE_APP;\n }\n\n getAnnotationApiEndpoint() {\n return this._apiEndpoint.endsWith(Api.ANNOTATION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.ANNOTATION_APP;\n }\n\n getSearchApiEndpoint() {\n return this._apiEndpoint.endsWith(Api.SEARCH_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SEARCH_APP;\n }\n}\n","export class CommonModals {\n static PasswordRequired = \"gd-password-required\";\n static ErrorMessage = \"gd-error-message\";\n static BrowseFiles = \"gd-browse-files\";\n static CreateDocument = \"gd-create-document\";\n static OperationSuccess = \"gd-success-modal\";\n static DrawHandSignature = \"gd-draw-hand-signature\";\n static DrawStampSignature = \"gd-draw-stamp-signature\";\n static InformationMessage = \"gd-information-message\";\n}\n\nexport class ModalService {\n private modals: any[] = [];\n\n add(modal: any) {\n this.modals.push(modal);\n }\n\n remove(id: string) {\n this.modals = this.modals.filter(x => x.id !== id);\n }\n\n open(id: string) {\n const modal: any = this.modals.filter(x => x.id === id)[0];\n if (modal) {\n modal.open();\n }\n }\n\n close(id: string) {\n const modal: any = this.modals.filter(x => x.id === id)[0];\n if (modal) {\n modal.close();\n }\n }\n}\n","import {Component, ElementRef, EventEmitter, Input, OnDestroy, OnInit, Output} from '@angular/core';\nimport {ModalService} from \"../modal.service\";\n\n@Component({\n selector: 'gd-modal',\n templateUrl: './modal.component.html',\n styleUrls: ['./modal.component.less']\n})\nexport class ModalComponent implements OnInit, OnDestroy {\n @Input() id: string;\n @Input() title: string;\n @Output() visible = new EventEmitter();\n @Output() cancel = new EventEmitter();\n visibility = false;\n private element: any;\n\n constructor(private modalService: ModalService, el: ElementRef) {\n this.element = el.nativeElement;\n }\n\n ngOnInit(): void {\n if (!this.id) {\n console.error('modal must have an id');\n return;\n }\n\n document.body.appendChild(this.element);\n\n this.modalService.add(this);\n }\n\n ngOnDestroy(): void {\n this.modalService.remove(this.id);\n this.element.remove();\n }\n\n open(): void {\n this.visibility = true;\n this.visible.emit(true);\n }\n\n close(): void {\n event.preventDefault();\n event.stopPropagation();\n this.visibility = false;\n this.visible.emit(false);\n }\n\n onClose($event: MouseEvent) {\n $event.stopPropagation();\n if ($event && $event.target && ($event.target).id === 'modalDialog') {\n this.close();\n }\n }\n\n cancelClose() {\n this.cancel.emit(false);\n this.close();\n }\n}\n","export class PageModel {\n data: string;\n angle: number;\n width: number;\n height: number;\n number: number;\n editable: boolean;\n}\n\nexport class RotatedPage {\n pageNumber: number;\n angle: number;\n}\n\nexport class FileCredentials {\n guid: string;\n password: string;\n\n constructor(guid: string, password: string) {\n this.guid = guid;\n this.password = password;\n }\n}\n\nexport class SaveFile extends FileCredentials {\n content: string;\n\n constructor(guid: string, password: string, content: string) {\n super(guid, password);\n this.content = content;\n }\n}\n\nexport class FileDescription {\n guid: string;\n pages: PageModel[];\n printAllowed = true;\n showGridLines: boolean;\n thumbnails: PageModel[];\n}\n\nexport class FileModel {\n guid: string;\n name: string;\n directory: boolean;\n size: number;\n isDirectory: boolean;\n}\n\nexport class HttpError {\n static BadRequest = 400;\n static Unauthorized = 401;\n static Forbidden = 403;\n static NotFound = 404;\n static TimeOut = 408;\n static Conflict = 409;\n static InternalServerError = 500;\n}\n\nexport class Utils {\n public static getMousePosition(event) {\n const mouse = {\n x: 0,\n y: 0\n };\n const wEvent: DragEvent = window.event;\n const ev = event || wEvent; //Moz || IE\n if (ev.pageX || wEvent.pageX || wEvent.screenX || (ev.touches && ev.touches[0] && ev.touches[0].pageX)) { //Moz\n const pageX = typeof ev.pageX !== \"undefined\" && ev.pageX !== 0 ? ev.pageX : wEvent.pageX;\n const pageY = typeof ev.pageY !== \"undefined\" && ev.pageY !== 0 ? ev.pageY : wEvent.pageY;\n const screenX = typeof wEvent.screenX !== \"undefined\" && wEvent.screenY !== 0;\n const screenY = typeof wEvent.screenY !== \"undefined\" && wEvent.screenY !== 0;\n mouse.x = pageX ? pageX : (screenX ? wEvent.screenX : ev.touches[0].pageX);\n mouse.y = pageY ? pageY : (screenY ? wEvent.screenY : ev.touches[0].pageY);\n } else if (ev.clientX) { //IE\n mouse.x = ev.clientX + document.body.scrollLeft;\n mouse.y = ev.clientY + document.body.scrollTop;\n }\n return mouse;\n }\n\n public static toRgb(color: string) {\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(color);\n if (result) {\n const r = parseInt(result[1], 16);\n const g = parseInt(result[2], 16);\n const b = parseInt(result[3], 16);\n return result ? 'rgb(' + r + ',' + g + ',' + b + ')' : '';\n }\n return color;\n }\n\n public static toHex(color: string) {\n // check if color is standard hex value\n if (color.match(/[0-9A-F]{6}|[0-9A-F]{3}$/i)) {\n return (color.charAt(0) === \"#\") ? color : (\"#\" + color);\n // check if color is RGB value -> convert to hex\n } else if (color.match(/^rgb\\(\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*\\)$/)) {\n const c = ([parseInt(RegExp.$1, 10), parseInt(RegExp.$2, 10), parseInt(RegExp.$3, 10)]),\n pad = function (str) {\n if (str.length < 2) {\n for (let i = 0, len = 2 - str.length; i < len; i++) {\n str = '0' + str;\n }\n }\n return str;\n };\n if (c.length === 3) {\n const r = pad(c[0].toString(16)),\n g = pad(c[1].toString(16)),\n b = pad(c[2].toString(16));\n return '#' + r + g + b;\n }\n // else do nothing\n } else {\n return '';\n }\n }\n}\n\nexport class FileUtil {\n public static map = {\n 'folder': {'format': '', 'icon': 'folder'},\n 'pdf': {'format': 'Portable Document Format', 'icon': 'file-pdf', 'unit': 'pt'},\n 'doc': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'docx': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'docm': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'dot': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'dotx': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'dotm': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'xls': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xlsx': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xlsm': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xlsb': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xls2003': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xltx': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xltm': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'ppt': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'pptx': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'pps': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'ppsx': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'vsd': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vdx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vss': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vsx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vst': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vtx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vsdx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vdw': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vstx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vssx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'mpp': {'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt'},\n 'mpt': {'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt'},\n 'msg': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\n 'eml': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\n 'emlx': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\n 'one': {'format': 'Microsoft OneNote', 'icon': 'file-word', 'unit': 'pt'},\n 'odt': {'format': 'Open Document Text', 'icon': 'file-word', 'unit': 'pt'},\n 'ott': {'format': 'Open Document Text Template', 'icon': 'file-word', 'unit': 'pt'},\n 'ods': {'format': 'Open Document Spreadsheet', 'icon': 'file-excel', 'unit': 'px'},\n 'odp': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'otp': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'ots': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'potx': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'potm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'pptm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'ppsm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'rtf': {'format': 'Rich Text Format', 'icon': 'file-alt', 'unit': 'pt'},\n 'txt': {'format': 'Plain Text File', 'icon': 'file-alt', 'unit': 'pt'},\n 'csv': {'format': 'Comma-Separated Values', 'icon': 'file-excel', 'unit': 'px'},\n 'html': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\n 'mht': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\n 'mhtml': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\n 'xml': {'format': 'Extensible Markup Language', 'icon': 'file-word', 'unit': 'pt'},\n 'xps': {'format': 'XML Paper Specification', 'icon': 'file-word', 'unit': 'pt'},\n 'dxf': {'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px'},\n 'dwg': {'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px'},\n 'bmp': {'format': 'Bitmap Picture', 'icon': 'file-image', 'unit': 'px'},\n 'gif': {'format': 'Graphics Interchange Format', 'icon': 'file-image', 'unit': 'px'},\n 'jpg': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\n 'jpe': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\n 'jpeg': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\n 'jfif': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\n 'png': {'format': 'Portable Network Graphics', 'icon': 'file-image', 'unit': 'px'},\n 'tiff': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'tif': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'psd': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'svg': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'jp2': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'epub': {'format': 'Electronic Publication', 'icon': 'file-pdf', 'unit': 'pt'},\n 'ico': {'format': 'Windows Icon', 'icon': 'file-image', 'unit': 'px'},\n 'webp': {'format': 'Compressed Image', 'icon': 'file-image', 'unit': 'px'},\n 'mobi': {'format': 'Mobipocket eBook', 'icon': 'file-pdf', 'unit': 'pt'},\n 'tex': {'format': 'LaTeX Source Document', 'icon': 'file-pdf', 'unit': 'pt'},\n 'djvu': {'format': 'Multi-Layer Raster Image', 'icon': 'file-alt', 'unit': 'pt'},\n 'unknown': {'format': 'This format is not supported', 'icon': 'file'},\n };\n\n public static find(filename: string, isDirectory: boolean) {\n if (filename && !isDirectory) {\n const strings = filename.split('.');\n const name = strings.pop().toLowerCase();\n if (typeof FileUtil.map[name] === \"undefined\") {\n return strings.length > 0 ? FileUtil.map['unknown'] : FileUtil.map['folder'];\n } else {\n return FileUtil.map[name];\n }\n } else {\n return FileUtil.map['folder'];\n }\n }\n}\n\nexport class FileService {\n\n constructor() {\n }\n}\n","import {Observable, Observer} from \"rxjs\";\n\nexport class UploadFilesService {\n private _uploadsChange: Observable;\n private _observer: Observer;\n\n constructor() {\n this._uploadsChange = new Observable(observer =>\n this._observer = observer);\n }\n\n get uploadsChange(): Observable {\n return this._uploadsChange;\n }\n\n changeFilesList(filesList: FileList) {\n this._observer.next(filesList);\n }\n}\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {FileModel, FileUtil} from \"../file.service\";\nimport {UploadFilesService} from \"../upload-files.service\";\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\nconst upload_disc = 'Disc';\n\nconst upload_url = 'URL';\n\nconst uploads_choices = [{name: upload_disc, icon: 'hdd'}, {name: upload_url, icon: 'link'}];\n\n@Component({\n selector: 'gd-browse-files-modal',\n templateUrl: './browse-files-modal.component.html',\n styleUrls: ['./browse-files-modal.component.less']\n})\nexport class BrowseFilesModalComponent implements OnInit {\n uploads = uploads_choices;\n\n @Input() files;\n @Input() uploadConfig;\n @Output() selectedFileGuid = new EventEmitter();\n @Output() selectedDirectory = new EventEmitter();\n @Output() urlForUpload = new EventEmitter();\n @Output() closing = new EventEmitter();\n private selectedFile: FileModel;\n showUploadUrl = false;\n showUploadFile = false;\n\n constructor(private _uploadService: UploadFilesService) {\n }\n\n ngOnInit() {\n }\n\n getSize(size: number) {\n const mb = size / 1024 / 1024;\n if (mb > 1) {\n return (Math.round(mb * 100) / 100) + ' MB';\n } else {\n const kb = size / 1024;\n if (kb > 1) {\n return (Math.round(kb * 100) / 100) + ' KB';\n }\n }\n return size + ' Bytes';\n }\n\n getFormatName(file: FileModel) {\n return FileUtil.find(file.name, file.directory).format;\n }\n\n getFormatIcon(file: FileModel) {\n return FileUtil.find(file.name, file.directory).icon;\n }\n\n choose(file: FileModel) {\n this.selectedFile = file;\n if (file.directory || file.isDirectory) {\n this.selectedDirectory.emit(file.name);\n } else {\n this.selectedFileGuid.emit(file.guid);\n }\n }\n\n goUp() {\n if (this.selectedFile) {\n let guid = this.selectedFile.guid;\n if (guid.length > 0 && guid.indexOf('/') === -1) {\n guid = '';\n } else {\n guid = guid.replace(/\\/[^\\/]+\\/?$/, '');\n }\n this.selectedDirectory.emit(guid);\n }\n }\n\n selectUpload($event: string) {\n if (upload_url === $event) {\n this.showUploadUrl = true;\n } else {\n this.showUploadUrl = false;\n $(\"#gd-upload-input\").trigger('click');\n }\n }\n\n refresh($event) {\n\n if ($event) {\n this.files = null;\n this.selectedDirectory.emit('');\n this.showUploadUrl = false;\n this.selectedFile = null;\n } else {\n this.closing.emit(true);\n }\n }\n\n showSpinner() {\n return !this.files;\n }\n\n uploadUrl(url: string) {\n if (url) {\n this.urlForUpload.emit(url);\n this.cleanUpload();\n }\n }\n\n handleFileInput(files: FileList) {\n this._uploadService.changeFilesList(files);\n }\n\n cleanUpload() {\n this.showUploadFile = false;\n this.showUploadUrl = false;\n }\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class ZoomService {\n private _observer: Subject = new Subject();\n private readonly _zoomChange: Observable = this._observer.asObservable();\n private _zoom: number;\n\n constructor() {\n }\n\n get zoom(): number {\n return this._zoom;\n }\n\n get zoomChange(): Observable {\n return this._zoomChange;\n }\n\n changeZoom(zoom: number) {\n this._zoom = zoom;\n this._observer.next(zoom);\n }\n\n private createZoomOption(val: any, name: string, sep: boolean = false) {\n return {value: val, name: name, separator: sep}\n }\n\n zoomOptions(width, height) {\n return [this.createZoomOption(25, '25%'),\n this.createZoomOption(50, '50%'),\n this.createZoomOption(100,'100%'),\n this.createZoomOption(150, '150%'),\n this.createZoomOption(200, '200%'),\n this.createZoomOption(300, '300%'),\n this.createZoomOption(0, '', true),\n this.createZoomOption(width, 'Fit Width'),\n this.createZoomOption(height, 'Fit Height')];\n }\n}\n","import {Observable, Observer} from \"rxjs\";\n\nexport class PagePreloadService {\n private readonly _checkPreload: Observable;\n private _observer: Observer;\n\n constructor() {\n this._checkPreload = new Observable(observer =>\n this._observer = observer);\n }\n\n get checkPreload(): Observable {\n return this._checkPreload;\n }\n\n changeLastPageInView(page: number) {\n if(this._observer) {\n this._observer.next(page);\n }\n }\n}\n","import {BehaviorSubject, Observable} from \"rxjs\";\nimport {PagePreloadService} from \"./page-preload.service\";\nimport {Injectable} from \"@angular/core\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NavigateService {\n private _currentPage = 0;\n private _countPages = 0;\n private _observer: BehaviorSubject = new BehaviorSubject(null);\n private _navigate: Observable = this._observer.asObservable();\n\n constructor(private _pagePreloadService: PagePreloadService) {\n }\n\n get navigate(): Observable {\n return this._navigate;\n }\n\n get countPages(): number {\n return this._countPages;\n }\n\n set countPages(value: number) {\n this._countPages = value;\n }\n\n get currentPage(): number {\n return this._currentPage;\n }\n\n set currentPage(value: number) {\n this._currentPage = value;\n }\n\n nextPage() {\n if (this._currentPage < this._countPages) {\n this._currentPage++;\n this.navigateTo(this._currentPage);\n }\n }\n\n prevPage() {\n if (this._currentPage > 1) {\n this._currentPage--;\n this.navigateTo(this._currentPage);\n }\n }\n\n toLastPage() {\n this._currentPage = this._countPages;\n this.navigateTo(this._currentPage);\n }\n\n toFirstPage() {\n this._currentPage = 1;\n this.navigateTo(this._currentPage);\n }\n\n navigateTo(page: number) {\n this.currentPage = page;\n this._pagePreloadService.changeLastPageInView(page);\n this._observer.next(page);\n }\n}\n","import {\n AfterViewChecked,\n Component,\n ElementRef,\n Input,\n OnInit,\n AfterViewInit,\n OnChanges,\n Output,\n EventEmitter\n} from '@angular/core';\nimport {FileDescription, FileUtil} from \"../file.service\";\nimport {ZoomService} from \"../zoom.service\";\nimport * as Hammer from 'hammerjs';\nimport {WindowService} from '../window.service';\nimport * as jquery from 'jquery';\nimport { NavigateService } from '../navigate.service';\n\nconst $ = jquery;\n\n@Component({\n selector: 'gd-document',\n templateUrl: './document.component.html',\n styleUrls: ['./document.component.less']\n})\nexport class DocumentComponent implements OnInit, AfterViewChecked, AfterViewInit, OnChanges {\n\n @Input() mode: boolean;\n @Input() preloadPageCount: number;\n @Input() file: FileDescription;\n @Input() selectedPage: number;\n wait = false;\n zoom: number;\n\n docWidth = null;\n docHeight = null;\n viewportWidth = null;\n viewportHeight = null;\n scale = null;\n lastScale = null;\n container = null;\n doc = null;\n x = 0;\n lastX = 0;\n y = 0;\n lastY = 0;\n pinchCenter = null;\n pinchCenterOffset = null;\n curWidth = 0;\n curHeight = 0;\n isDesktop: boolean;\n\n constructor(protected _elementRef: ElementRef,\n private _zoomService: ZoomService,\n private _windowService: WindowService,\n private _navigateService: NavigateService,) {\n _zoomService.zoomChange.subscribe((val: number) => {\n this.zoom = val;\n });\n\n this.isDesktop = _windowService.isDesktop();\n\n this._navigateService.navigate.subscribe(((\n value => {\n this.selectedPage = value;\n })));\n }\n\n ngOnInit() {\n if (this.ifPresentation())\n {\n this.selectedPage = this._navigateService.currentPage;\n }\n }\n\n ngOnChanges() {\n }\n\n ngAfterViewInit() {\n // For current iteration we take .panzoom as a document\n this.doc = this._elementRef.nativeElement.children.item(0).children.item(0);\n // For current iteration we take .gd-document as a container\n this.container = this._elementRef.nativeElement;\n\n this.docWidth = this.doc.clientWidth;\n this.docHeight = this.doc.clientHeight;\n this.viewportWidth = this.doc.offsetWidth;\n\n // For cases where we already have zoom defined we should include it\n this.scale = (this.viewportWidth / this.docWidth) * this._zoomService.zoom / 100;\n\n this.lastScale = this.scale;\n this.viewportHeight = this.container.offsetHeight;\n this.curWidth = this.docWidth * this.scale;\n this.curHeight = this.docHeight * this.scale;\n\n const hammer = new Hammer(this.container);\n }\n\n // TODO: this temporary crutch for Excel files should be documented\n ifExcel() {\n return FileUtil.find(this.file.guid, false).format === \"Microsoft Excel\";\n }\n\n ifPresentation() {\n return FileUtil.find(this.file.guid, false).format === \"Microsoft PowerPoint\";\n }\n\n getDimensionWithUnit(value: number, pageNumber: number) {\n return this.ifPresentation() && !this.isVisible(pageNumber) ? 0 : value + (this.mode ? FileUtil.find(this.file.guid, false).unit : 'px');\n }\n\n ifEdge() {\n return navigator.userAgent.toLowerCase().indexOf('edge') > -1;\n }\n\n ngAfterViewChecked(): void {\n const elementNodeListOf = this._elementRef.nativeElement.querySelectorAll('.gd-wrapper');\n const element = elementNodeListOf.item(0);\n if (element) {\n $(element).trigger('focus');\n }\n }\n\n isVisible(pageNumber) {\n if (this.ifPresentation()) {\n return pageNumber === this.selectedPage ? true : false;\n }\n else {\n return true;\n }\n }\n}\n","import {Component, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\n\n@Component({\n selector: 'gd-page',\n templateUrl: './page.component.html',\n styleUrls: ['./page.component.less']\n})\nexport class PageComponent implements OnInit, OnChanges {\n\n @Input() angle: number;\n @Input() width: number;\n @Input() height: number;\n @Input() number: number;\n @Input() data: string;\n @Input() isHtml: boolean;\n @Input() editable: boolean;\n imgData: string;\n\n constructor() {\n }\n\n ngOnInit() {\n const isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\n if(isIE && this.number === 0){\n this.editable = false;\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n // TODO: this is temporary needed to remove unneeded spaces and BOM symbol \n // which leads to undesired spaces on the top of the docs pages\n this.data = this.data !== null ? this.data.replace(/>\\s+<')\n .replace(/\\uFEFF/g,\"\")\n .replace(/href=\"\\/viewer/g, 'href=\"http://localhost:8080/viewer')\n .replace(/src=\"\\/viewer/g, 'src=\"http://localhost:8080/viewer')\n .replace(/data=\"\\/viewer/g, 'data=\"http://localhost:8080/viewer')\n : null;\n const dataImagePngBase64 = 'data:image/png;base64,';\n this.imgData = dataImagePngBase64;\n if (!this.isHtml) {\n this.imgData += this.data;\n }\n }\n}\n","import {Pipe, PipeTransform} from '@angular/core';\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\n\n@Pipe({name: 'safeHtml'})\nexport class SanitizeHtmlPipe implements PipeTransform{\n constructor(private sanitizer: DomSanitizer) {\n }\n\n transform(html: string): SafeHtml {\n return this.sanitizer.bypassSecurityTrustHtml(html);\n }\n}\n\n@Pipe({name: 'safeResourceHtml'})\nexport class SanitizeResourceHtmlPipe implements PipeTransform{\n constructor(private sanitizer: DomSanitizer) {\n }\n\n transform(html: string): SafeHtml {\n return this.sanitizer.bypassSecurityTrustResourceUrl(html);\n }\n}\n\n@Pipe({name: 'safeStyle'})\nexport class SanitizeStylePipe implements PipeTransform{\n constructor(private sanitizer: DomSanitizer) {\n }\n\n transform(html: string): SafeHtml {\n return this.sanitizer.bypassSecurityTrustStyle(html);\n }\n}\n\n@Pipe({name: 'highlight'})\nexport class HighlightSearchPipe implements PipeTransform {\n\n transform(value: string, args: string): any {\n if (!args) {\n return value;\n }\n const re = new RegExp(args, 'gi'); //'gi' for case insensitive and can use 'g' if you want the search to be case sensitive.\n return value.replace(re, \"$&\");\n }\n}\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\nimport {UploadFilesService} from \"../upload-files.service\";\n\n@Component({\n selector: 'gd-upload-file-zone',\n templateUrl: './upload-file-zone.component.html',\n styleUrls: ['./upload-file-zone.component.less']\n})\nexport class UploadFileZoneComponent implements OnInit {\n\n @Output() closeUpload = new EventEmitter();\n\n constructor(private _uploadService: UploadFilesService) { }\n\n ngOnInit() {\n }\n\n handleFileInput(files: FileList) {\n this._uploadService.changeFilesList(files);\n this.onCloseUpload();\n }\n\n onCloseUpload() {\n this.closeUpload.emit(true);\n }\n\n close($event) {\n if ($event.target.id === 'gd-dropZone') {\n this.onCloseUpload();\n }\n }\n}\n","import {Directive, EventEmitter, HostBinding, HostListener, Input, Output} from '@angular/core';\nimport {UploadFilesService} from \"./upload-files.service\";\n\n@Directive({\n selector: '[gdDnd]'\n})\nexport class DndDirective {\n\n @Output() closing = new EventEmitter();\n @Output() opening = new EventEmitter();\n @Output() dropped = new EventEmitter();\n\n @HostBinding('class.active') active = false;\n\n private dragCounter = 0;\n\n constructor(protected _uploadFilesService: UploadFilesService) {\n }\n\n @HostListener('dragenter', ['$event'])\n public onDragEnter(evt) {\n evt.preventDefault();\n evt.stopPropagation();\n this.dragCounter++;\n this.active = true;\n this.opening.emit(true);\n }\n\n @HostListener('dragover', ['$event'])\n public onDragOver(evt) {\n evt.preventDefault();\n evt.stopPropagation();\n return false;\n }\n\n @HostListener('dragleave', ['$event'])\n public onDragLeave(evt) {\n evt.preventDefault();\n evt.stopPropagation();\n this.dragCounter--;\n if (this.dragCounter === 0) {\n this.active = false;\n this.closeArea();\n }\n }\n\n @HostListener('drop', ['$event'])\n public onDrop(evt) {\n evt.preventDefault();\n evt.stopPropagation();\n const files = evt.dataTransfer.files;\n if (files.length > 0) {\n this.active = false;\n this.dropped.emit(true);\n this._uploadFilesService.changeFilesList(files);\n this.closeArea();\n }\n }\n\n @HostListener('click', ['$event'])\n public onClick(event) {\n this.closeArea();\n }\n\n private closeArea() {\n this.closing.emit(true);\n this.opening.emit(false);\n }\n}\n","import {Injectable} from '@angular/core';\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ViewportService {\n\n constructor() {\n }\n\n checkInViewport(el, zoom: number = 100, leftOffset: number = 0, deltaX: number = 0.5) {\n if (!el) {\n return false;\n }\n const x = deltaX;\n const y = 0.5;\n\n const win = $(window);\n\n const viewport = {\n top: win.scrollTop(),\n left: win.scrollLeft() + leftOffset,\n right: win.scrollLeft() + win.width() - 10,\n bottom: win.scrollTop() + win.height()\n };\n\n\n if (isNaN(zoom)) {\n zoom = 100;\n }\n\n const zoomN = zoom / 100;\n const height = $(el).outerHeight() * (zoomN);\n const width = $(el).outerWidth() * (zoomN);\n\n if (!width || !height) {\n return false;\n }\n\n const bounds = $(el).offset();\n const right = (bounds.left * (zoomN)) + width;\n const bottom = (bounds.top * (zoomN)) + height;\n\n const visible = (!(viewport.right < (bounds.left * (zoomN)) || viewport.left > right || viewport.bottom < (bounds.top * (zoomN)) || viewport.top > bottom));\n\n if (!visible) {\n return false;\n }\n\n const deltas = {\n top: parseFloat(Math.min(1, (bottom - viewport.top) / height).toFixed(2)),\n bottom: parseFloat(Math.min(1, (viewport.bottom - (bounds.top * (zoomN))) / height).toFixed(2)),\n left: parseFloat(Math.min(1, (right - viewport.left) / width).toFixed(2)),\n right: parseFloat(Math.min(1, (viewport.right - (bounds.left * (zoomN))) / width).toFixed(2))\n };\n\n return (deltas.left * deltas.right) >= x && (deltas.top * deltas.bottom) >= y;\n }\n}\n","import {\n AfterViewInit,\n Directive,\n ElementRef,\n HostListener,\n Input,\n OnChanges,\n OnInit,\n SimpleChanges\n} from '@angular/core';\nimport {NavigateService} from \"./navigate.service\";\nimport {PagePreloadService} from \"./page-preload.service\";\nimport {ZoomService} from \"./zoom.service\";\nimport {WindowService} from \"./window.service\";\nimport {ViewportService} from \"./viewport.service\";\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\n@Directive({\n selector: '[gdScrollable]'\n})\nexport class ScrollableDirective implements AfterViewInit, OnChanges, OnInit {\n\n private currentPage: number;\n private zoom = 100;\n private loadedPagesSet = new Set();\n\n constructor(private _elementRef: ElementRef,\n private _navigateService: NavigateService,\n private _pagePreloadService: PagePreloadService,\n private _zoomService: ZoomService,\n private _windowService: WindowService,\n private _viewportService: ViewportService) {\n\n this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom;\n _zoomService.zoomChange.subscribe((val: number) => {\n this.zoom = val ? val : this.zoom;\n this.refresh();\n });\n }\n\n ngAfterViewInit() {\n this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom;\n this._navigateService.navigate.subscribe((value => {\n this.currentPage = value;\n this.scrollToPage(value);\n }));\n this.refresh();\n }\n\n @HostListener('scroll') scrolling() {\n this.refresh();\n }\n\n @HostListener('window:resize') resizing() {\n this.refresh();\n }\n\n scrollToPage(pageNumber: number) {\n const el = this._elementRef.nativeElement;\n const page = this.getPage(pageNumber);\n const prev = pageNumber > 0 ? this.getPage(pageNumber - 1) : null;\n const isSameTop = (prev && $(prev).offset().top === $(page).offset().top);\n if (this._viewportService.checkInViewport(page, this.zoom) && isSameTop) {\n return;\n }\n const pagesHeight = this.calculateOffset(pageNumber);\n const options = {\n left: 0,\n top: pagesHeight\n };\n if(el){\n // using polyfill\n el.scroll(options);\n }\n }\n\n private getChildren() {\n const el = this._elementRef ? this._elementRef.nativeElement : null;\n if (el) {\n // here and in the similar line below we getting the document pages\n return el.children.item(0).children.item(0).children;\n }\n }\n\n private getPage(pageNumber: number) {\n const el = this._elementRef ? this._elementRef.nativeElement : null;\n if (el) {\n return el.children.item(0).children.item(0).children.item(pageNumber - 1);\n }\n }\n\n private calculateOffset(pageNumber: number) {\n const count = this._windowService.isFirefox() ? 1 : this.countPagesOnWidth();\n const margin = this._windowService.isDesktop() ? 40 : 10;\n let pagesHeight = 0;\n for (let i = 1; i < pageNumber / count; i++) {\n const item = this.getPage(i);\n const clientHeight = item ? item.clientHeight : 0;\n pagesHeight += clientHeight > 0 ? clientHeight * this.getZoom() + margin : 0;\n }\n return pagesHeight;\n }\n\n private countPagesOnWidth() {\n const pageEl = this.getPage(1);\n const offset = 150;\n const count = Math.floor((this.getWidth() - offset) / (pageEl.getBoundingClientRect().width * this.getZoom()));\n return count === 0 ? 1 : count;\n }\n\n refresh() {\n let page;\n let currentPageSet = false;\n const pageElem = this.getPage(this.currentPage);\n const currentPageRect = this.currentPage && pageElem ? pageElem.getBoundingClientRect() : null;\n for (page = 1; page < this.getChildren().length + 1; page++) {\n const element = this.getPage(page);\n if (this._viewportService.checkInViewport(element, this.zoom)) {\n if (!currentPageSet) {\n if (!this.currentPage || !pageElem || (this.currentPage && currentPageRect && element.getBoundingClientRect().top !== currentPageRect.top)) {\n this.currentPage = page;\n if (this._navigateService.currentPage === 0) {\n this._navigateService.currentPage = page;\n }\n }\n currentPageSet = true;\n }\n if (!this.loadedPagesSet.has(page)) {\n this._pagePreloadService.changeLastPageInView(page);\n this.loadedPagesSet.add(page);\n }\n }\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.refresh();\n }\n\n ngOnInit(): void {\n this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom;\n }\n\n\n private getWidth() {\n return this._elementRef ? this._elementRef.nativeElement.offsetWidth : window.innerWidth;\n }\n\n private getZoom() {\n return this.zoom / 100;\n }\n}\n","import {\n Directive,\n EventEmitter,\n HostListener,\n Output} from '@angular/core';\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\n@Directive({\n selector: '[gdMouseWheel]'\n})\nexport class MouseWheelDirective {\n @Output() mouseWheelUp = new EventEmitter();\n @Output() mouseWheelDown = new EventEmitter();\n\n @HostListener('mousewheel', ['$event']) onMouseWheelChrome(event: any) {\n this.mouseWheelFunc(event);\n }\n\n @HostListener('DOMMouseScroll', ['$event']) onMouseWheelFirefox(event: any) {\n this.mouseWheelFunc(event);\n }\n\n @HostListener('onmousewheel', ['$event']) onMouseWheelIE(event: any) {\n this.mouseWheelFunc(event);\n }\n\n mouseWheelFunc(event: any) {\n event = window.event ;\n const delta = Math.max(-1, Math.min(1, (event.wheelDelta || -event.detail)));\n if(delta > 0) {\n this.mouseWheelUp.emit(event);\n } else if(delta < 0) {\n this.mouseWheelDown.emit(event);\n }\n }\n}\n","import {AfterViewInit, Directive, HostBinding, Input, OnDestroy, OnInit, ElementRef, OnChanges} from '@angular/core';\nimport {ZoomService} from \"./zoom.service\";\nimport {FileUtil} from \"./file.service\";\nimport { WindowService } from './window.service';\n\n@Directive({\n selector: '[gdZoom]'\n})\nexport class ZoomDirective implements OnInit, OnDestroy, AfterViewInit, OnChanges {\n\n @Input() zoomActive = true;\n @Input() file;\n\n @HostBinding('style.zoom') zoomInt: number;\n @HostBinding('style.transform') transform: string;\n @HostBinding('style.transform-origin') transformOrigin: string;\n @HostBinding('style.width') width: string;\n @HostBinding('style.height') height: string;\n @HostBinding('style.min-width') minWidth: string;\n el: ElementRef;\n\n constructor(private _zoomService: ZoomService, private _windowService: WindowService, el: ElementRef) {\n this.el = el;\n }\n\n ngOnDestroy(): void {\n }\n\n ngOnChanges(): void {\n this.setStyles(this._zoomService.zoom);\n this.resizePages(this._zoomService.zoom);\n }\n\n ngOnInit(): void {\n if (! this.zoomActive) {\n return;\n }\n\n this.setStyles(this._zoomService.zoom);\n this._zoomService.zoomChange.subscribe((zoom) => {\n this.setStyles(zoom);\n this.resizePages(zoom);\n });\n }\n\n private setStyles(zoom) {\n if (! this.zoomActive) {\n return;\n }\n\n const zoomInt = zoom === 100 ? 1 : zoom / 100;\n \n if (this._windowService.isEdge()) {\n this.zoomInt = zoomInt;\n }\n else {\n this.zoomInt = null;\n }\n \n if (!this._windowService.isEdge()) {\n this.transform = 'scale(' + zoomInt + ')';\n this.transformOrigin = 'top left';\n }\n else {\n this.transform = \"\";\n this.transformOrigin = \"\";\n }\n\n let maxWidth = 0;\n this.file.pages.forEach(page => {\n {\n if (page.width > maxWidth){\n maxWidth = page.width;\n }\n }\n });\n\n // Images and Excel-related files receiving dimensions in px from server\n this.minWidth = maxWidth + FileUtil.find(this.file.guid, false).unit;\n }\n\n private getScrollWidth(elm){\n return elm.offsetWidth - elm.clientWidth;\n }\n\n private getScrollHeight(elm){\n return elm.offsetHeight - elm.clientHeight;\n }\n\n private resizePages(zoom){\n const zoomInt = zoom === 100 ? 1 : zoom / 100;\n\n const viewPortWidth = this.el.nativeElement.parentElement.offsetWidth;\n const viewPortHeight = this.el.nativeElement.parentElement.offsetHeight;\n const scrollWidth = this.getScrollWidth(this.el.nativeElement.parentElement);\n const scrollHeight = this.getScrollHeight(this.el.nativeElement.parentElement);\n this.width = (viewPortWidth/zoomInt - scrollWidth/zoomInt) + 'px';\n this.height = (viewPortHeight/zoomInt - scrollHeight/zoomInt) + 'px';\n }\n\n ngAfterViewInit(): void {\n this.setStyles(this._zoomService.zoom);\n }\n}\n","import {Injectable} from '@angular/core';\nimport {Observable, Subject} from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class OnCloseService {\n private _observer: Subject = new Subject();\n private readonly _onClose: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get onClose() {\n return this._onClose;\n }\n\n close(close: boolean) {\n this._observer.next(close)\n }\n}\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\nimport {OnCloseService} from \"../on-close.service\";\n\nexport interface Option {\n name: string;\n value: any;\n separator: boolean;\n}\n\n@Component({\n selector: 'gd-select',\n templateUrl: './select.component.html',\n styleUrls: ['./select.component.less']\n})\nexport class SelectComponent {\n\n @Input() options: Option[];\n @Input() disabled = false;\n @Input() showSelected: Option;\n @Output() selected: EventEmitter = new EventEmitter();\n @Input() isOpen = false;\n @Input() icon: string;\n\n constructor(protected _onCloseService: OnCloseService) {\n _onCloseService.onClose.subscribe(() => {\n this.close();\n });\n }\n\n open() {\n if (!this.disabled) {\n this.isOpen = true;\n }\n }\n\n close() {\n this.isOpen = false;\n }\n\n onClickOutside(event : Event){\n this.close();\n }\n\n toggle($event) {\n // TODO: following lines were uncommented due to needness in signature app\n $event.preventDefault();\n $event.stopPropagation();\n if (!this.disabled) {\n this.isOpen = !this.isOpen;\n }\n }\n\n select($event, value: Option) {\n $event.preventDefault();\n $event.stopPropagation();\n this.selected.emit(value);\n this.close();\n }\n}\n","import {Directive, HostBinding, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\n\n@Directive({\n selector: '[gdDisabledCursor]'\n})\nexport class DisabledCursorDirective implements OnInit, OnChanges {\n\n @Input() dis: boolean;\n\n constructor() {\n }\n\n @HostBinding('class.inactive') cursor: boolean;\n\n private updateCursor() {\n this.cursor = this.dis ? true : false;\n }\n\n ngOnInit(): void {\n this.updateCursor();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.updateCursor()\n }\n}\n","import {Directive, HostBinding, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\n\n@Directive({\n selector: '[gdRotation]'\n})\nexport class RotationDirective implements OnInit, OnChanges {\n\n @Input() angle: number;\n @Input() isHtmlMode: boolean;\n @Input() width: number;\n @Input() height: number;\n @Input() withMargin = true;\n\n @HostBinding('style.animation') animation: string;\n @HostBinding('style.transition-property') transition: string;\n @HostBinding('style.transform') transform: string;\n\n @HostBinding('style.margin') margin: string;\n\n constructor() {\n }\n\n private updateCursor() {\n if (typeof this.angle === \"string\"){\n this.angle = parseInt(this.angle, 10);\n }\n\n if (this.angle) {\n this.animation = 'none';\n this.transition = 'none';\n this.transform = 'rotate(' + this.angle + 'deg)';\n } else if (this.angle === 0 && this.animation) {\n this.animation = null;\n this.transition = null;\n this.transform = null;\n }\n\n if (this.withMargin) {\n if (this.angle === 90 || this.angle === 270 || this.angle === -90 || this.angle === -270) {\n if (this.isHtmlMode) {\n if (this.isLandscape()) {\n this.margin = '164px 254px';\n } else {\n this.margin = '-111px 254px';\n }\n } else {\n if (this.isLandscape()) {\n this.margin = '129px 100px -79px';\n } else {\n this.margin = '-72px 100px -79px';\n }\n }\n } else if (this.angle === -180 || this.angle === 180) {\n this.margin = '280px';\n } else {\n this.margin = null;\n }\n }\n\n }\n\n isLandscape() {\n return this.width > this.height;\n }\n\n ngOnInit(): void {\n this.updateCursor();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.updateCursor()\n }\n\n}\n","import {Component, Input, Output, EventEmitter, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-init-state',\n templateUrl: './init-state.component.html',\n styleUrls: ['./init-state.component.less']\n})\nexport class InitStateComponent implements OnInit {\n @Input() icon: string;\n @Input() text: string;\n @Output() fileDropped = new EventEmitter();\n showUploadFile = false;\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n dropped($event) {\n if ($event) {\n this.fileDropped.emit($event);\n this.showUploadFile = false;\n }\n }\n}\n","import {Observable, Observer} from \"rxjs\";\nimport {PageModel} from \"./file.service\";\n\nexport class RenderPrintService {\n private _render: Observable;\n private _observer: Observer;\n private _renderBlob: Observable;\n private _observerBlob: Observer;\n\n constructor() {\n this._render = new Observable(observer =>\n this._observer = observer);\n this._renderBlob = new Observable(observer =>\n this._observerBlob = observer);\n }\n\n get renderPrint(): Observable {\n return this._render;\n }\n\n changePages(pages: PageModel[]) {\n this._observer.next(pages);\n }\n\n get renderPrintBlob(): Observable {\n return this._renderBlob;\n }\n\n changeBlob(file: Blob) {\n this._observerBlob.next(file);\n }\n}\n","import {Directive, Input} from '@angular/core';\nimport {PageModel} from \"./file.service\";\nimport {RenderPrintService} from \"./render-print.service\";\n\n@Directive({\n selector: '[gdRenderPrint]'\n})\nexport class RenderPrintDirective {\n @Input() htmlMode: boolean;\n\n constructor(private _renderService: RenderPrintService) {\n _renderService.renderPrint.subscribe(pages => {\n this.renderPrint(pages);\n });\n _renderService.renderPrintBlob.subscribe(file => {\n this.renderPrintBlob(file);\n });\n }\n\n private renderPrint(pages: PageModel[]) {\n let pagesHtml = '';\n\n for (const page of pages) {\n pagesHtml += '
' +\n '
' +\n '
';\n }\n\n this.openWindow(pagesHtml, pages[0].width, pages[0].height);\n }\n\n private openWindow(pagesHtml, width, height) {\n const a4Height = 842;\n const a4Width = 595;\n let imageA4Adjusted = '';\n if(width > a4Width && height > a4Height){\n const zoom = Math.round(height / a4Height) / 100;\n imageA4Adjusted = '.gd-page img { width: 100%; margin: 0; padding: 0;}';\n if(navigator.userAgent.toLowerCase().indexOf('firefox') > -1){\n imageA4Adjusted = '.gd-page img { transform: scale(' + zoom + ');}';\n }\n }\n let cssPrint = '';\n\n const windowObject = window.open('', \"PrintWindow\", \"width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes\");\n windowObject.focus();\n windowObject.document.writeln(cssPrint);\n windowObject.document.writeln(pagesHtml);\n windowObject.document.close();\n setTimeout(() => {\n windowObject.focus();\n windowObject.print();\n windowObject.close();\n }, 100);\n }\n\n private renderPrintBlob(file: Blob) {\n const fileURL = URL.createObjectURL(file);\n const windowObject = window.open(fileURL, \"PrintWindow\", \"width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes\");\n windowObject.focus();\n windowObject.print();\n windowObject.close();\n }\n}\n","import {BehaviorSubject, Observable} from \"rxjs\";\n\nexport class ExceptionMessageService {\n private _observer: BehaviorSubject = new BehaviorSubject('Server is not available');\n private _messageChange: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get messageChange(): Observable {\n return this._messageChange;\n }\n\n changeMessage(message: string) {\n this._observer.next(message);\n }\n}\n","import {Component, OnInit} from '@angular/core';\nimport {ExceptionMessageService} from \"../exception-message.service\";\n\n@Component({\n selector: 'gd-error-modal',\n templateUrl: './error-modal.component.html',\n styleUrls: ['./error-modal.component.less']\n})\nexport class ErrorModalComponent implements OnInit {\n\n message: string;\n\n constructor(messageService: ExceptionMessageService) {\n messageService.messageChange.subscribe(message => this.message = message);\n }\n\n ngOnInit() {\n }\n\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class PasswordService {\n private _observer: Subject = new Subject();\n private readonly _passChange: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get passChange(): Observable {\n return this._passChange;\n }\n\n setPassword(pass: string) {\n this._observer.next(pass);\n }\n}\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\nimport {ExceptionMessageService} from \"../exception-message.service\";\nimport {PasswordService} from \"../password.service\";\nimport * as jquery from \"jquery\";\n\nconst $ = jquery;\n\n@Component({\n selector: 'gd-password-required',\n templateUrl: './password-required.component.html',\n styleUrls: ['./password-required.component.less']\n})\nexport class PasswordRequiredComponent implements OnInit {\n message: string;\n @Output() cancelEvent = new EventEmitter();\n\n constructor(messageService: ExceptionMessageService, private _passwordService: PasswordService) {\n messageService.messageChange.subscribe(message => this.message = message);\n }\n\n ngOnInit() {\n }\n\n setPassword(value: string) {\n this._passwordService.setPassword(value);\n }\n\n onCloseOpen($event: boolean) {\n if ($event) {\n setTimeout(() => {\n const element = $(\"#password\");\n if (element) {\n element.focus();\n }\n }, 100);\n } else {\n $(\"#password\").val(\"\");\n }\n }\n\n cancel($event: boolean) {\n $(\"#password\").val(\"\");\n this.cancelEvent.emit(true);\n }\n}\n","import {Injectable} from '@angular/core';\nimport {HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from \"@angular/common/http\";\nimport {Observable, throwError} from \"rxjs\";\nimport {catchError, map} from \"rxjs/operators\";\nimport {ExceptionMessageService} from \"./exception-message.service\";\nimport {HttpError} from \"./file.service\";\nimport {CommonModals, ModalService} from \"./modal.service\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ErrorInterceptorService implements HttpInterceptor {\n\n constructor(private _modalService: ModalService, private _messageService: ExceptionMessageService) {\n }\n\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\n const logFormat = 'background: maroon; color: white';\n\n return next.handle(req)\n .pipe(map(data => {\n return data;\n }),\n catchError((exception: HttpEvent) => {\n if (exception instanceof HttpErrorResponse) {\n switch (exception.status) {\n\n case HttpError.BadRequest:\n console.error('%c Bad Request 400', logFormat);\n break;\n case HttpError.Unauthorized:\n console.error('%c Unauthorized 401', logFormat);\n break;\n case HttpError.NotFound:\n console.error('%c Not Found 404', logFormat);\n break;\n case HttpError.TimeOut:\n console.error('%c TimeOut 408', logFormat);\n break;\n case HttpError.InternalServerError:\n console.error('%c big bad 500', logFormat);\n this._messageService.changeMessage(exception.error.message);\n this._modalService.open(CommonModals.ErrorMessage);\n break;\n\n case HttpError.Forbidden:\n console.error('%c Forbidden 403', logFormat);\n this._messageService.changeMessage(exception.error.message);\n this._modalService.open(CommonModals.PasswordRequired);\n break;\n }\n }\n return throwError(exception);\n }));\n }\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class SearchService {\n private _observer: Subject = new Subject();\n private readonly _textChange: Observable = this._observer.asObservable();\n\n private _observerCurrent: Subject = new Subject();\n private readonly _currentChange: Observable = this._observerCurrent.asObservable();\n\n private _observerTotal: Subject = new Subject();\n private readonly _totalChange: Observable = this._observerTotal.asObservable();\n\n constructor() {\n }\n\n get textChange(): Observable {\n return this._textChange;\n }\n\n setText(text: string) {\n this._observer.next(text);\n }\n\n get currentChange(): Observable {\n return this._currentChange;\n }\n\n get totalChange(): Observable {\n return this._totalChange;\n }\n\n setCurrent(current: number) {\n this._observerCurrent.next(current);\n }\n\n setTotal(total: number) {\n this._observerTotal.next(total);\n }\n}\n","import {AfterViewInit, Component, ElementRef, EventEmitter, OnInit, Output, ViewChild} from '@angular/core';\nimport {SearchService} from \"../search.service\";\n\n@Component({\n selector: 'gd-search',\n templateUrl: './search.component.html',\n styleUrls: ['./search.component.less']\n})\nexport class SearchComponent implements OnInit, AfterViewInit {\n\n @Output() hidePanel = new EventEmitter(false);\n\n current = 0;\n total = 0;\n\n @ViewChild('text',{\n static : true\n }) textElement: ElementRef;\n\n constructor(private _searchService: SearchService) {\n _searchService.totalChange.subscribe((total: number) => {\n this.total = total;\n if (total !== 0) {\n this.current = 1;\n } else {\n this.current = 0;\n }\n this._searchService.setCurrent(this.current);\n });\n }\n\n ngOnInit() {\n }\n\n setText(text: string) {\n this._searchService.setText(text);\n }\n\n hide() {\n this.setText('');\n this.hidePanel.emit(true);\n }\n\n prev() {\n if (this.current > 1) {\n this.current--;\n this._searchService.setCurrent(this.current);\n }\n }\n\n next() {\n if (this.current < this.total) {\n this.current++;\n this._searchService.setCurrent(this.current);\n }\n }\n\n ngAfterViewInit(): void {\n this.textElement.nativeElement.focus();\n }\n}\n","import {Directive, ElementRef} from '@angular/core';\nimport {SearchService} from \"./search.service\";\nimport {HighlightSearchPipe} from \"./pipes\";\nimport {ZoomService} from \"./zoom.service\";\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\n@Directive({\n selector: '[gdSearchable]'\n})\nexport class SearchableDirective {\n\n text: string;\n current = 0;\n total = 0;\n private zoom = 100;\n\n constructor(private _elementRef: ElementRef,\n private _searchService: SearchService,\n private _highlight: HighlightSearchPipe,\n private _zoomService: ZoomService) {\n _searchService.currentChange.subscribe((current: number) => {\n this.current = current;\n if (this.current !== 0) {\n this.moveToCurrent();\n }\n });\n\n _searchService.textChange.subscribe((text: string) => {\n this.text = text;\n this.highlightSearch();\n });\n\n this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom;\n _zoomService.zoomChange.subscribe((val: number) => {\n this.zoom = val ? val : this.zoom;\n });\n }\n\n private highlightSearch() {\n const el = this._elementRef ? this._elementRef.nativeElement : null;\n if (el) {\n this.cleanHighlight(el);\n if (this.text) {\n this.highlightEl(el);\n const count = el.querySelectorAll('.gd-highlight').length;\n this.total = count;\n } else {\n this.total = 0;\n }\n this._searchService.setTotal(this.total);\n }\n }\n\n private moveToCurrent() {\n if (this.current === 0) {\n return;\n }\n const currentZoom = this.getZoom();\n const el = this._elementRef ? this._elementRef.nativeElement : null;\n if (el) {\n el.querySelectorAll('.gd-highlight-select').forEach(function (value) {\n $(value).removeClass('gd-highlight-select');\n });\n const currentEl = el.querySelectorAll('.gd-highlight')[this.current - 1];\n $(currentEl).addClass('gd-highlight-select');\n if (currentEl) {\n const options = {\n left: 0,\n top: ($(currentEl).offset().top) + el.parentElement.parentElement.scrollTop - 150,\n };\n // using polyfill\n el.parentElement.parentElement.scroll(options);\n }\n }\n }\n\n private highlightEl(el: Element) {\n const textNodes = $(el).find('*').contents().filter(function () {\n const nodeName = this.parentElement.nodeName.toLowerCase();\n const checkClass = (this).classList ? !(this).classList.contains('gd-highlight') : true;\n return this.nodeType === 3 &&\n this.textContent.trim().length !== 0 &&\n nodeName !== 'style' &&\n nodeName !== 'title' &&\n nodeName !== 'body' &&\n nodeName !== 'script' &&\n checkClass;\n });\n const text = this.text;\n const highlight = this._highlight;\n textNodes.each(function () {\n const $this = $(this);\n let content = $this.text();\n content = highlight.transform(content, text);\n $this.replaceWith(content);\n });\n el.normalize();\n }\n\n private cleanHighlight(el: HTMLElement) {\n const nodeListOf = el.querySelectorAll('.gd-highlight');\n for (let i = 0; i < nodeListOf.length; i++) {\n const element = nodeListOf.item(i);\n element.replaceWith((element).innerText);\n }\n el.normalize();\n }\n\n private getZoom() {\n return this.zoom / 100;\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-tabbed-toolbars',\n templateUrl: './tabbed-toolbars.component.html',\n styleUrls: ['./tabbed-toolbars.component.less']\n})\nexport class TabbedToolbarsComponent implements OnInit {\n @Input() logo: string;\n @Input() icon: string;\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class TabActivatorService {\n private _observer: Subject = new Subject();\n private readonly _activeTabChange: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get activeTabChange(): Observable {\n return this._activeTabChange;\n }\n\n changeActiveTab(tabId: string) {\n this._observer.next(tabId);\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\nimport {TabActivatorService} from \"../tab-activator.service\";\n\n@Component({\n selector: 'gd-tab',\n templateUrl: './tab.component.html',\n styleUrls: ['./tab.component.less']\n})\nexport class TabComponent implements OnInit {\n @Input() id: string;\n @Input() tabTitle: string;\n @Input() icon: string;\n @Input() disabled = false;\n @Input() active = false;\n @Input() content = true;\n\n constructor(private _tabActivatorService: TabActivatorService) {\n this._tabActivatorService.activeTabChange.subscribe((tabId: string) => {\n this.activation(tabId);\n });\n }\n\n private activation(tabId: string) {\n if (this.id === tabId) {\n this.active = true;\n } else {\n this.active = false;\n }\n }\n\n ngOnInit() {\n }\n\n selectTab() {\n if (this.disabled) {\n return;\n }\n this._tabActivatorService.changeActiveTab(this.id);\n }\n}\n","import {Component} from '@angular/core';\n\n@Component({\n selector: 'gd-tabs',\n templateUrl: './tabs.component.html',\n styleUrls: ['./tabs.component.less']\n})\nexport class TabsComponent {\n constructor() {\n }\n\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class Formatting {\n constructor(fontSize: number, color: string, bgColor: string, bold: boolean, italic: boolean, underline: boolean, font: string, strikeout: boolean, align: string, list: string) {\n this.fontSize = fontSize;\n this.color = color;\n this.bgColor = bgColor;\n this.bold = bold;\n this.italic = italic;\n this.underline = underline;\n this.font = font;\n this.strikeout = strikeout;\n this.align = align;\n this.list = list;\n }\n\n bold: boolean;\n italic: boolean;\n underline: boolean;\n fontSize: number;\n color: string;\n bgColor: string;\n font: string;\n strikeout: boolean;\n align: string;\n list: string;\n\n public static default(): Formatting {\n return new Formatting(10, '#000000', '#FFFFFF', false, false, false, 'Arial', false, \"\", \"\");\n }\n}\n\nexport class FormattingService {\n private _observerBold: Subject = new Subject();\n private readonly _formatBoldChange: Observable = this._observerBold.asObservable();\n private _observerUnderline: Subject = new Subject();\n private readonly _formatUnderlineChange: Observable = this._observerUnderline.asObservable();\n private _observerUndo: Subject = new Subject();\n private readonly _undo: Observable = this._observerUndo.asObservable();\n private _observerRedo: Subject = new Subject();\n private readonly _redo: Observable = this._observerRedo.asObservable();\n private _observerItalic: Subject = new Subject();\n private readonly _formatItalicChange: Observable = this._observerItalic.asObservable();\n private _observerColor: Subject = new Subject();\n private readonly _formatColorChange: Observable = this._observerColor.asObservable();\n private _observerBgColor: Subject = new Subject();\n private readonly _formatBgColorChange: Observable = this._observerBgColor.asObservable();\n private _observerFontSize: Subject = new Subject();\n private readonly _formatFontSizeChange: Observable = this._observerFontSize.asObservable();\n private _observerFont: Subject = new Subject();\n private readonly _formatFontChange: Observable = this._observerFont.asObservable();\n private _observerStrikeout: Subject = new Subject();\n private readonly _formatStrikeoutChange: Observable = this._observerStrikeout.asObservable();\n private _observerAlign: Subject = new Subject();\n private readonly _formatAlignChange: Observable = this._observerAlign.asObservable();\n private _observerList: Subject = new Subject();\n private readonly _formatListChange: Observable = this._observerList.asObservable();\n\n constructor() {\n }\n\n get formatBoldChange() {\n return this._formatBoldChange;\n }\n\n get formatUnderlineChange() {\n return this._formatUnderlineChange;\n }\n\n get formatColorChange() {\n return this._formatColorChange;\n }\n\n get formatBgColorChange() {\n return this._formatBgColorChange;\n }\n\n get formatFontSizeChange() {\n return this._formatFontSizeChange;\n }\n\n get formatFontChange() {\n return this._formatFontChange;\n }\n\n get undo() {\n return this._undo;\n }\n\n get redo() {\n return this._redo;\n }\n\n get formatItalicChange() {\n return this._formatItalicChange;\n }\n\n get formatStrikeoutChange() {\n return this._formatStrikeoutChange;\n }\n\n get formatAlignChange() {\n return this._formatAlignChange;\n }\n\n get formatListChange() {\n return this._formatListChange;\n }\n\n static createFontSizeOption(val: number) {\n return {value: val, name: val + 'px', separator: false}\n }\n\n static getFontSizeOptions() {\n return [\n FormattingService.createFontSizeOption(8),\n FormattingService.createFontSizeOption(10),\n FormattingService.createFontSizeOption(12),\n FormattingService.createFontSizeOption(14),\n FormattingService.createFontSizeOption(16),\n FormattingService.createFontSizeOption(18),\n FormattingService.createFontSizeOption(20),\n FormattingService.createFontSizeOption(22),\n FormattingService.createFontSizeOption(24),\n ];\n }\n\n static createFontOption(val: string) {\n return {value: val, name: val, separator: false}\n }\n\n static getFontOptions() {\n const fonts = [\"Arial\", \"Calibri\", \"Century Gothic\", \"Comic Sans\", \"Consolas\", \"Courier\", \"Dejavu Sans\", \"Dejavu Serif\", \"Georgia\", \"Gill Sans\", \"Helvetica\", \"Impact\", \"Lucida Sans\",\n \"Myriad Pro\", \"Open Sans\", \"Palatino\", \"Tahoma\", \"Times New Roman\", \"Trebuchet\"];\n const fontOptions = [];\n fonts.forEach(font => {\n fontOptions.push(this.createFontOption(font));\n })\n\n return fontOptions;\n }\n\n changeFormatFontSize($event: number) {\n this._observerFontSize.next($event);\n }\n\n changeFormatBold(bold: boolean) {\n this._observerBold.next(bold);\n }\n\n changeFormatUnderline(underline: boolean) {\n this._observerUnderline.next(underline);\n }\n\n Undo() {\n this._observerUndo.next();\n }\n\n Redo() {\n this._observerRedo.next();\n }\n\n changeFormatItalic(italic: boolean) {\n this._observerItalic.next(italic);\n }\n\n changeFormatColor(color: string) {\n this._observerColor.next(color);\n }\n\n changeFormatBgColor(bgcolor: string) {\n this._observerBgColor.next(bgcolor);\n }\n\n changeFormatFont(font: string) {\n this._observerFont.next(font);\n }\n\n changeFormatStrikeout(strikeout: boolean) {\n this._observerStrikeout.next(strikeout);\n }\n\n changeFormatAlign(align: string) {\n this._observerAlign.next(align);\n }\n\n changeFormatList(list: string) {\n this._observerList.next(list);\n }\n}\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\n\nconst DEFAULT_COLORS = [\n '#000000', '#434343', '#666666', '#999999', '#B7B7B7', '#CCCCCC', '#D9D9D9', '#EFEFEF', '#F3F3F3', '#FFFFFF',\n '#980000', '#FF0000', '#FF9900', '#FFFF00', '#00FF00', '#00FFFF', '#4986E8', '#0000FF', '#9900FF', '#FF00FF',\n '#E6B8AF', '#F4CCCC', '#FDE5CD', '#FFF2CC', '#D9EAD3', '#D0E0E2', '#C9DAF8', '#CFE2F3', '#D9D2E9', '#EAD1DC',\n '#DD7E6B', '#EA9899', '#F9CB9C', '#FFE59A', '#B7D7A8', '#A2C4C9', '#A4C2F4', '#9FC5E8', '#B4A7D7', '#D5A6BD',\n '#CC4125', '#E06666', '#F6B26B', '#FFD966', '#92C47D', '#75A5AF', '#6D9EEB', '#6FA9DB', '#8E7CC3', '#C27BA0',\n '#A61C00', '#CC0000', '#E69138', '#F2C131', '#6AA84F', '#45818E', '#3C78D8', '#3C85C6', '#674EA7', '#A64D79',\n '#85200B', '#990000', '#B45F05', '#BF9000', '#37761D', '#144F5C', '#1254CC', '#0A5394', '#351C75', '#741B47',\n '#5B0F00', '#660000', '#783F03', '#7F6000', '#284E13', '#0B343D', '#1B4586', '#063763', '#20124D', '#4C1030',\n];\n\n@Component({\n selector: 'gd-color-picker',\n templateUrl: './color-picker.component.html',\n styleUrls: ['./color-picker.component.less']\n})\nexport class ColorPickerComponent implements OnInit {\n @Input() isOpen = false;\n @Output() selectedColor = new EventEmitter();\n @Output() closeOutside = new EventEmitter();\n colors: any = DEFAULT_COLORS;\n white = '#FFFFFF';\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n select($event, color: string) {\n $event.preventDefault();\n $event.stopPropagation();\n this.selectedColor.emit(color);\n }\n\n close() {\n this.isOpen = false;\n this.closeOutside.emit(true);\n }\n}\n","import {Injectable} from '@angular/core';\nimport {FormattingService} from \"./formatting.service\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BackFormattingService extends FormattingService {\n\n constructor() {\n super();\n }\n}\n","import {Injectable} from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SelectionService {\n selection: Range;\n isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\n\n restoreSelection() {\n if(this.selection && !this.selection.collapsed || this.isIE){\n this.putSelection(this.selection );\n }\n }\n\n captureSelection() {\n const selection = window.getSelection();\n if (selection.rangeCount > 0) {\n this.selection = selection.getRangeAt(0);\n }\n }\n\n private putSelection(selection) {\n const sel = window.getSelection();\n sel.removeAllRanges();\n sel.addRange(selection.cloneRange());\n }\n\n refreshSelection() {\n this.captureSelection();\n this.restoreSelection();\n }\n}\n","import {Directive, HostListener, OnInit} from '@angular/core';\nimport {FormattingService} from \"./formatting.service\";\nimport {BackFormattingService} from \"./back-formatting.service\";\nimport * as jquery from 'jquery';\nconst $ = jquery;\nimport {SelectionService} from './selection.service';\n\n@Directive({\n selector: '[gdFormatting]'\n})\nexport class FormattingDirective implements OnInit {\n\n private bold = false;\n private italic = false;\n private underline = false;\n private color: string;\n private bgColor: string;\n private font: string;\n private strikeout = false;\n private align: string;\n private list: string;\n private isIE = false;\n\n constructor(private _formattingService: FormattingService,\n private _backFormattingService: BackFormattingService,\n private _selectionService: SelectionService) {\n this.isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\n }\n\n @HostListener('mouseup') mouseup() {\n\n this.bold = document.queryCommandState(\"bold\");\n this.strikeout = document.queryCommandState(\"strikeThrough\");\n this.italic = document.queryCommandState(\"italic\");\n this.bgColor = document.queryCommandValue(\"backColor\");\n this.underline = document.queryCommandState(\"underline\");\n this.align = this.checkJustify();\n this.list = this.checkList();\n\n //fix required by FireFox to get correct background color\n if (this.bgColor === \"transparent\") {\n this.bgColor = $(window.getSelection().focusNode.parentNode).css('background-color').toString();\n }\n this.font = document.queryCommandValue(\"FontName\").replace(/\"/g, '');\n if(this.font.split(\",\").length > 1){\n this.font = this.font.split(\",\")[0];\n }\n this.color = document.queryCommandValue(\"foreColor\");\n this._backFormattingService.changeFormatBold(this.bold);\n this._backFormattingService.changeFormatUnderline(this.underline);\n this._backFormattingService.changeFormatItalic(this.italic);\n this._backFormattingService.changeFormatColor(this.color);\n this._backFormattingService.changeFormatBgColor(this.bgColor);\n this._backFormattingService.changeFormatFontSize(this.reportFontSize());\n this._backFormattingService.changeFormatFont(this.font);\n this._backFormattingService.changeFormatStrikeout(this.strikeout);\n this._backFormattingService.changeFormatAlign(this.align);\n this._backFormattingService.changeFormatList(this.list);\n }\n\n private checkJustify() {\n let align = \"\";\n align = document.queryCommandState(\"justifyCenter\") ? \"center\" : align;\n align = document.queryCommandState(\"justifyFull\") ? \"full\" : align;\n align = document.queryCommandState(\"justifyLeft\") ? \"left\" : align;\n align = document.queryCommandState(\"justifyRight\") ? \"right\" : align;\n return align;\n }\n\n private checkList() {\n let list = \"\";\n list = document.queryCommandState(\"insertUnorderedList\") ? \"unordered\" : list;\n list = document.queryCommandState(\"insertOrderedList\") ? \"ordered\" : list;\n return list;\n }\n\n reportFontSize(): number {\n let containerEl, sel;\n if (window.getSelection) {\n sel = window.getSelection();\n if (sel.rangeCount) {\n containerEl = sel.getRangeAt(0).commonAncestorContainer;\n // Make sure we have an element rather than a text node\n if (containerEl.nodeType === 3) {\n containerEl = containerEl.parentNode;\n }\n }\n } else if ((sel = document.getSelection()) && sel.type !== \"Control\") {\n containerEl = sel.createRange().parentElement();\n }\n\n if (containerEl) {\n return parseInt(this.getComputedStyleProperty(containerEl, \"fontSize\").replace(\"px\", \"\"), 10);\n }\n }\n\n getComputedStyleProperty(el, propName) {\n if (window.getComputedStyle) {\n return window.getComputedStyle(el, null)[propName];\n } else if (el.currentStyle) {\n return el.currentStyle[propName];\n }\n }\n\n ngOnInit(): void {\n this._formattingService.undo.subscribe(() => {\n this.toggleUndo();\n });\n this._formattingService.redo.subscribe(() => {\n this.toggleRedo();\n });\n this._formattingService.formatBoldChange.subscribe((bold: boolean) => {\n this.bold = bold;\n this.toggleBold();\n });\n this._formattingService.formatUnderlineChange.subscribe((underline: boolean) => {\n this.underline = underline;\n this.toggleUnderline();\n });\n this._formattingService.formatItalicChange.subscribe((italic: boolean) => {\n this.italic = italic;\n this.toggleItalic();\n });\n this._formattingService.formatColorChange.subscribe(((color: string) => {\n this.color = color;\n this.setColor(color);\n }));\n this._formattingService.formatBgColorChange.subscribe(((bgcolor: string) => {\n this.bgColor = bgcolor;\n this.setBgColor(bgcolor);\n }));\n this._formattingService.formatFontSizeChange.subscribe(((fontSize: number) => {\n this.setFontSize(fontSize);\n }));\n\n this._formattingService.formatFontChange.subscribe(((font: string) => {\n this.font = font;\n this.setFont(font);\n }));\n this._formattingService.formatStrikeoutChange.subscribe((strikeout: boolean) => {\n this.strikeout = strikeout;\n this.toggleStrikeout();\n });\n this._formattingService.formatAlignChange.subscribe((align: string) => {\n this.align = align;\n this.toggleAlign(this.align);\n });\n this._formattingService.formatListChange.subscribe((list: string) => {\n const remove = this.list === list;\n this.list = list;\n this.toggleList(this.list, remove);\n });\n }\n\n private toggleBold() {\n document.execCommand(\"bold\");\n this._selectionService.refreshSelection();\n }\n\n private toggleUnderline() {\n document.execCommand(\"underline\");\n this._selectionService.refreshSelection();\n }\n\n private toggleItalic() {\n document.execCommand(\"italic\");\n this._selectionService.refreshSelection();\n }\n\n private setBgColor(bgColor: string) {\n document.execCommand(\"backColor\", false, bgColor);\n this._selectionService.refreshSelection();\n }\n\n private setColor(color: string) {\n document.execCommand(\"foreColor\", false, color);\n this._selectionService.refreshSelection();\n }\n\n private setFontSize(fontSize: number) {\n if (document.getSelection().toString()) {\n let spanString = \"\" +\n document.getSelection() + \"\";\n if (this.bold) {\n spanString = \"\" + spanString + \"\";\n }\n if (this.italic) {\n spanString = \"\" + spanString + \"\";\n }\n if (this.underline) {\n spanString = \"\" + spanString + \"\";\n }\n if (this.strikeout) {\n spanString = \"\" + spanString + \"\";\n }\n document.execCommand('insertHTML', false, spanString);\n } else {\n document.execCommand(\"fontsize\", false, \"7\");\n }\n this._selectionService.refreshSelection();\n }\n\n private toggleUndo() {\n document.execCommand(\"undo\");\n }\n\n private toggleRedo() {\n document.execCommand(\"redo\");\n }\n\n private setFont(font: string) {\n document.execCommand(\"fontName\", false, font);\n this._selectionService.refreshSelection();\n }\n\n private toggleStrikeout() {\n document.execCommand(\"strikeThrough\");\n this._selectionService.refreshSelection();\n }\n\n private toggleAlign(align: string) {\n if(this.isIE) {\n this.toggleAlignIE(align);\n return;\n }\n document.execCommand(\"styleWithCSS\", false, 'true');\n switch (align) {\n case 'center':\n document.execCommand('justifyCenter');\n break;\n case 'full':\n document.execCommand('justifyFull');\n break;\n case 'left':\n document.execCommand('justifyLeft');\n break;\n case 'right':\n document.execCommand('justifyRight');\n break;\n }\n this._selectionService.refreshSelection();\n }\n\n private toggleAlignIE(align: string) {\n this._selectionService.restoreSelection()\n this._selectionService.captureSelection()\n const selection = window.getSelection().focusNode.parentNode.parentNode;\n if(align === \"full\"){\n align = \"justify\";\n }\n $(selection).css(\"text-align\", align);\n this._selectionService.refreshSelection()\n }\n\n private toggleList(list: string, remove: boolean) {\n switch (list) {\n case 'unordered':\n document.execCommand('insertUnorderedList', remove);\n break;\n case 'ordered':\n document.execCommand('insertOrderedList', remove);\n break;\n }\n this._selectionService.refreshSelection();\n }\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'gd-success-modal',\n templateUrl: './success-modal.component.html',\n styleUrls: ['./success-modal.component.less']\n})\nexport class SuccessModalComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","import {Injectable} from '@angular/core';\nimport {Observable, Subject} from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class EditHtmlService {\n private _observer: Subject = new Subject();\n private readonly _htmlContent: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get observer(): Subject {\n return this._observer;\n }\n\n get htmlContent(): Observable {\n return this._htmlContent;\n }\n\n}\n","import {Directive, HostListener, Input} from '@angular/core';\nimport {SelectionService} from './selection.service';\nimport {EditHtmlService} from \"./edit-html.service\";\n\n@Directive({\n selector: '[gdEditor]'\n})\nexport class EditorDirective {\n @Input() text: any;\n\n private isIE: boolean = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\n\n constructor(private _selectionService: SelectionService, private _htmlService: EditHtmlService) {\n }\n\n @HostListener('keyup', ['$event'])\n public onInput(event) {\n this.text = event.target;\n if(this.isIE){\n if (this.text.innerHTML) {\n const html = this.text.innerHTML.toString();\n this._htmlService.observer.next(html);\n }\n }\n }\n\n @HostListener('mouseleave', ['$event'])\n public onMouseleave(event) {\n this._selectionService.captureSelection();\n // this code is required to fix IE11 issue - it doesn't trigger blur event, since that we need to save updated HTML here\n if(this.isIE){\n this._htmlService.observer.next(event.target.innerHTML.toString());\n }\n }\n\n @HostListener('blur', ['$event'])\n public onBlur(event) {\n event.preventDefault();\n this._selectionService.restoreSelection();\n if (this.text.innerHTML) {\n const html = this.text.innerHTML.toString();\n this._htmlService.observer.next(html);\n } else {\n this._htmlService.observer.next(event.target.innerHTML.toString());\n }\n }\n}\n","import {EventEmitter, Injectable} from '@angular/core'\nimport {HttpRequest} from '@angular/common/http';\nimport {Api} from \"./config.service\";\n\n@Injectable()\nexport class LoadingMaskService {\n onLoadingChanged: EventEmitter = new EventEmitter();\n\n private stopList = [];\n private requests: HttpRequest[] = [];\n\n constructor() {\n this.stopList.push(Api.SAVE_TEXT);\n this.stopList.push(Api.SAVE_OPTICAL_CODE);\n this.stopList.push(Api.LOAD_DOCUMENT_PAGE);\n this.stopList.push(Api.LOAD_THUMBNAILS);\n this.stopList.push(Api.GET_FILE_STATUS);\n this.stopList.push(Api.LOAD_PRINT);\n }\n\n onRequestStart(req: HttpRequest): void {\n const stop = this.stopList.find(x => req.url.includes(x));\n if (!stop) {\n this.requests.push(req);\n this.notify();\n }\n }\n\n onRequestFinish(req: HttpRequest): void {\n const index = this.requests.indexOf(req);\n if (index !== -1) {\n this.requests.splice(index, 1);\n }\n this.notify();\n }\n\n private notify(): void {\n this.onLoadingChanged.emit(this.requests.length !== 0);\n }\n}\n","import {AfterViewInit, Component, Input, OnInit} from '@angular/core';\nimport {LoadingMaskService} from \"../loading-mask.service\";\n\n@Component({\n selector: 'gd-loading-mask',\n templateUrl: './loading-mask.component.html',\n styleUrls: ['./loading-mask.component.less']\n})\n\nexport class LoadingMaskComponent implements OnInit, AfterViewInit {\n @Input() loadingMask = false;\n\n constructor(private _loadingMaskService: LoadingMaskService) {\n }\n\n ngOnInit() {\n }\n\n ngAfterViewInit() {\n this._loadingMaskService\n .onLoadingChanged\n .subscribe((loading: boolean) => this.loadingMask = loading);\n }\n}\n","import {Injectable} from '@angular/core';\nimport {HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from \"@angular/common/http\";\nimport {Observable} from \"rxjs\";\nimport {finalize} from 'rxjs/operators'\nimport {LoadingMaskService} from \"./loading-mask.service\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LoadingMaskInterceptorService implements HttpInterceptor {\n\n constructor(private _loadingMaskService: LoadingMaskService) {\n }\n\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\n this._loadingMaskService.onRequestStart(req);\n const callback = () => this._loadingMaskService.onRequestFinish(req);\n return next.handle(req).pipe( finalize( callback));\n }\n}\n","import {\n Component,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n Output,\n ViewEncapsulation\n} from '@angular/core';\n\n\nconst horizontalAlignment = {\n center : {\n right: 'auto'\n },\n left : {\n right: '100%'\n },\n right : {\n right: '-100%'\n }\n};\n\nconst verticalAlignment = {\n center : {\n top : '0px',\n },\n top : {\n top : '-100%',\n right: '100%'\n },\n bottom : {\n top: 'autos'\n }\n};\n\n/**\n * DropDownToggleComponent\n */\n@Component({\n selector: 'gd-drop-down-toggle',\n template: '',\n styleUrls: ['./drop-down.component.less'],\n encapsulation : ViewEncapsulation.None\n})\nexport class DropDownToggleComponent{\n @HostListener('click',['$event'])\n click = (event: any) => this.dropdown.toggle(event);\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\n}\n\n/**\n * DropDownItemsComponent\n */\n@Component({\n selector: 'gd-drop-down-items',\n template: '
',\n styleUrls: ['./drop-down.component.less'],\n encapsulation : ViewEncapsulation.None\n})\nexport class DropDownItemsComponent{\n\n get horizontalAlign(){\n return horizontalAlignment[this.dropdown.getPlacement().h].right;\n }\n\n get verticalAlign(){\n return verticalAlignment[this.dropdown.getPlacement().v].top;\n }\n\n get isOpen(){\n return this.dropdown.open;\n }\n\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\n\n onClickOutside(event : Event ){\n this.dropdown.close();\n }\n}\n\n/**\n * DropDownItemComponent\n */\n@Component({\n selector: 'gd-drop-down-item',\n template: '
',\n styleUrls: ['./drop-down.component.less'],\n})\nexport class DropDownItemComponent{\n @HostBinding('class')\n class = 'drop-down-item';\n\n @Output()\n selected = new EventEmitter();\n\n @HostListener('click')\n click = () => this.selectEntry();\n\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\n\n selectEntry(){\n this.selected.next();\n this.dropdown.close();\n }\n}\n\n/**\n * DropDownComponent\n */\n@Component({\n selector: 'gd-drop-down',\n template: '
',\n styleUrls: ['./drop-down.component.less'],\n encapsulation : ViewEncapsulation.None\n})\nexport class DropDownComponent{\n @Input()\n placement = {\n h: \"center\",\n v: \"bottom\"\n };\n\n\n @Input()\n @HostBinding('class.show')\n open = false;\n\n @HostBinding('class')\n class = 'drop-down';\n\n close(){\n this.open = false;\n }\n\n toggle(event : MouseEvent){\n event.stopPropagation();\n this.open = !this.open;\n document.body.click();\n }\n\n getPlacement(){\n return this.placement;\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-left-side-bar',\n templateUrl: './left-side-bar.component.html',\n styleUrls: ['./left-side-bar.component.less']\n})\nexport class LeftSideBarComponent implements OnInit {\n @Input() showSpinner = false;\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n}\n","import {Directive, EventEmitter, HostListener, Input, Output} from '@angular/core';\n\n@Directive({\n selector: '[gdTooltip]'\n})\nexport class TooltipDirective {\n\n @Output() showToolTip = new EventEmitter();\n\n constructor() {\n }\n\n @HostListener('mouseenter')\n public onHovering() {\n this.showToolTip.emit(true);\n }\n\n @HostListener('mouseleave')\n public onUnhovering() {\n this.showToolTip.emit(false);\n }\n\n}\n","import {\n ApplicationRef,\n ComponentFactoryResolver,\n Injectable,\n ViewContainerRef\n} from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AddDynamicComponentService {\n\n constructor(private _factoryResolver: ComponentFactoryResolver,\n private _appRef: ApplicationRef) {\n }\n\n addDynamicComponent(viewContainerRef: ViewContainerRef, component: any) {\n const factory = this._factoryResolver.resolveComponentFactory(component);\n const componentRef = viewContainerRef.createComponent(factory);\n\n componentRef.onDestroy(() => {\n this._appRef.detachView(componentRef.hostView);\n });\n\n return componentRef;\n }\n\n}\n","import {HostDynamicDirective} from \"./host-dynamic.directive\";\n\nexport class HostingDynamicComponentService {\n private hosts: HostDynamicDirective[];\n\n constructor() {\n this.hosts = [];\n }\n\n add(host: HostDynamicDirective) {\n this.hosts = this.hosts.filter(function (h) {\n return h.ident !== host.ident;\n });\n this.hosts.push(host);\n }\n\n remove(host: HostDynamicDirective) {\n this.hosts = this.hosts.filter(function (h) {\n return h.ident !== host.ident;\n });\n }\n\n find(ident: number) {\n return this.hosts.find(function (h) {\n return h.ident === ident;\n });\n }\n}\n","import {AfterViewInit, Directive, Input, OnDestroy, ViewContainerRef} from '@angular/core';\nimport {HostingDynamicComponentService} from \"./hosting-dynamic-component.service\";\n\n@Directive({\n selector: '[gdHostDynamic]'\n})\nexport class HostDynamicDirective implements AfterViewInit, OnDestroy {\n @Input() ident: number;\n\n constructor(public viewContainerRef: ViewContainerRef,\n private _hostingService: HostingDynamicComponentService) {\n }\n\n ngAfterViewInit(): void {\n this._hostingService.add(this);\n }\n\n ngOnDestroy(): void {\n this._hostingService.remove(this);\n this.viewContainerRef.clear();\n }\n\n}\n","import {AfterViewInit, Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport * as jquery from \"jquery\";\nimport {Utils} from \"../file.service\";\n\nconst $ = jquery;\n\n@Component({\n selector: 'gd-resizing',\n templateUrl: './resizing.component.html',\n styleUrls: ['./resizing.component.less']\n})\nexport class ResizingComponent implements OnInit, AfterViewInit {\n\n @Input() init: boolean;\n @Input() id: number;\n @Input() se = false;\n @Input() ne = false;\n @Input() sw = false;\n @Input() nw = false;\n @Input() pageWidth: number;\n @Input() pageHeight: number;\n SE = 'se';\n NE = 'ne';\n SW = 'sw';\n NW = 'nw';\n\n @Output() offsetX = new EventEmitter();\n @Output() offsetY = new EventEmitter();\n @Output() offsetTop = new EventEmitter();\n @Output() offsetLeft = new EventEmitter();\n @Output() release = new EventEmitter();\n\n private grab = false;\n private oldPosition: { x: number, y: number };\n\n constructor() {\n }\n\n ngAfterViewInit(): void {\n const elSE = $(this.getElementId(this.SE));\n const elNW = $(this.getElementId(this.NW));\n if (this.init && elSE && elNW && elSE.offset() && elNW.offset()) {\n let width = elSE.offset().left - elNW.offset().left;\n let height = elSE.offset().top - elNW.offset().top;\n while (width >= this.pageWidth || height >= this.pageHeight) {\n width = width / 2;\n height = height / 2;\n }\n setTimeout(() => {\n this.offsetX.emit(width);\n this.offsetY.emit(height);\n }, 100);\n }\n }\n\n ngOnInit() {\n }\n\n catchUp($event: DragEvent) {\n // ff\n $event.preventDefault();\n if ($event.dataTransfer) { // ff\n $event.dataTransfer.setData('text', 'foo');\n }\n this.grab = true;\n this.oldPosition = Utils.getMousePosition($event);\n }\n\n resize($event: DragEvent, el: string) {\n if (!this.grab) {\n return;\n }\n const position = Utils.getMousePosition($event);\n if (position.x === 0 && position.y === 0) {\n return;\n }\n const notSW = this.NE === el || this.NW === el;\n const notNE = this.SW === el || this.NW === el;\n this.setOffsets(position, notNE, notSW);\n if (notSW) {\n this.offsetTop.emit(position.y - this.oldPosition.y);\n }\n if (notNE) {\n this.offsetLeft.emit(position.x - this.oldPosition.x);\n }\n this.oldPosition = position;\n }\n\n private setOffsets(position, x: boolean, y: boolean) {\n const offsetX = x ? this.oldPosition.x - position.x : position.x - this.oldPosition.x;\n const offsetY = y ? this.oldPosition.y - position.y : position.y - this.oldPosition.y;\n this.offsetX.emit(offsetX);\n this.offsetY.emit(offsetY);\n }\n\n end($event: DragEvent, el: string) {\n // ff\n this.resize($event, el);\n this.release.emit(true);\n this.grab = false;\n }\n\n start($event: DragEvent) {\n this.drop($event);\n }\n\n drop($event: DragEvent) {\n $event.stopPropagation();\n $event.preventDefault();\n }\n\n private getElementId(el: string) {\n return \"#\" + el + \"-\" + this.id;\n }\n}\n","import {TabActivatorService} from \"./tab-activator.service\";\n\nexport class TopTabActivatorService extends TabActivatorService {\n\n constructor() {\n super();\n }\n}\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {ExceptionMessageService} from \"../exception-message.service\";\nimport {TopTabActivatorService} from \"../top-tab-activator.service\";\nimport {ModalService, CommonModals} from \"../modal.service\";\n\n@Component({\n selector: 'gd-top-tab',\n templateUrl: './top-tab.component.html',\n styleUrls: ['./top-tab.component.less']\n})\nexport class TopTabComponent implements OnInit {\n @Input() id: string;\n @Input() icon: string;\n @Input() disabled = false;\n @Input() tooltip: string;\n @Output() activeTab = new EventEmitter();\n @Input() elementPosition = 0;\n public active = false;\n public showToolTip = false;\n\n constructor(private _tabActivatorService: TopTabActivatorService,\n private _modalService: ModalService,\n private _excMessageService: ExceptionMessageService) {\n this._tabActivatorService.activeTabChange.subscribe((tabId: string) => {\n this.activation(tabId);\n if (tabId === null) {\n this.activeTab.emit(\"\");\n }\n });\n }\n\n private activation(tabId: string) {\n if (this.id === tabId) {\n this.active = !this.active;\n if (this.active) {\n this.activeTab.emit(this.id);\n } else {\n this.activeTab.emit(\"\");\n }\n } else {\n this.active = false;\n }\n }\n\n ngOnInit() {\n }\n\n toggleTab() {\n if (this.disabled) {\n this._modalService.open(CommonModals.ErrorMessage);\n this._excMessageService.changeMessage(\"Please open document first\");\n return;\n }\n this._tabActivatorService.changeActiveTab(this.id);\n }\n\n}\n","import {Component, EventEmitter, Input, OnInit, Output, ElementRef, Renderer2} from '@angular/core';\nimport * as jquery from 'jquery';\nimport {FormattingService} from \"../formatting.service\";\nimport {OnCloseService} from \"../on-close.service\";\nimport {Option} from \"../select/select.component\";\nimport { ZoomService } from '../zoom.service';\nimport { WindowService } from '../window.service';\n\nconst $ = jquery;\n\n@Component({\n selector: 'gd-text-menu',\n templateUrl: './text-menu.component.html',\n styleUrls: ['./text-menu.component.less']\n})\nexport class TextMenuComponent implements OnInit {\n @Input() blur: boolean;\n @Input() fontSize: number;\n @Input() font: string;\n @Input() bold: boolean;\n @Input() italic: boolean;\n @Input() underline: boolean;\n @Input() color: string;\n @Input() decoration = true;\n @Input() showTooltips = true;\n\n @Output() outFontSize = new EventEmitter();\n @Output() outFont = new EventEmitter();\n @Output() outBold = new EventEmitter();\n @Output() outItalic = new EventEmitter();\n @Output() outUnderline = new EventEmitter();\n @Output() outColor = new EventEmitter();\n\n fontSizeOptions = FormattingService.getFontSizeOptions();\n fontOptions = FormattingService.getFontOptions();\n colorPickerShow = false;\n\n isMobile: boolean;\n\n constructor(private _onCloseService: OnCloseService,\n private _zoomService: ZoomService,\n private _windowService: WindowService,\n protected _elementRef: ElementRef,\n private renderer: Renderer2) {\n \n _onCloseService.onClose.subscribe(() => {\n this.colorPickerShow = false;\n });\n\n this.isMobile = _windowService.isMobile();\n _windowService.onResize.subscribe((w) => {\n this.isMobile = _windowService.isMobile();\n });\n\n _zoomService.zoomChange.subscribe((val: number) => {\n if (this.isMobile)\n {\n this.changePosition(val);\n }\n });\n }\n\n ngOnInit() {\n }\n\n changePosition(val: number) {\n const top = (window.innerHeight - 24 - this._elementRef.nativeElement.parentElement.getBoundingClientRect().top - this._elementRef.nativeElement.parentElement.getBoundingClientRect().height);\n const left = this._elementRef.nativeElement.parentElement.getBoundingClientRect().left;\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'width', window.innerWidth + 'px');\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'top', top + 'px');\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'left', -left + 'px');\n }\n\n selectFontSize($event: Option) {\n $(\".gd-wrapper\").off(\"keyup\");\n this.outFontSize.emit($event.value);\n $(\".gd-wrapper\").on(\"keyup\", () => {\n const fontElements = document.getElementsByTagName(\"font\");\n for (let i = 0, len = fontElements.length; i < len; ++i) {\n if (fontElements[i].getAttribute('size') === \"7\") {\n fontElements[i].removeAttribute(\"size\");\n fontElements[i].style.fontSize = $event + \"px\";\n }\n }\n });\n }\n\n selectFont($event: Option) {\n event.preventDefault();\n event.stopPropagation();\n this.outFont.emit($event.value);\n }\n\n toggleColorPicker($event) {\n $event.preventDefault();\n $event.stopPropagation();\n this.colorPickerShow = !this.colorPickerShow;\n }\n\n selectColor($event: string) {\n this.colorPickerShow = false;\n this.outColor.emit($event);\n }\n\n toggleBold(event) {\n event.preventDefault();\n event.stopPropagation();\n this.outBold.emit(!this.bold);\n }\n\n toggleItalic(event) {\n event.preventDefault();\n event.stopPropagation();\n this.outItalic.emit(!this.italic);\n }\n\n toggleUnderline(event) {\n event.preventDefault();\n event.stopPropagation();\n this.outUnderline.emit(!this.underline);\n }\n\n closePicker($event) {\n this.colorPickerShow = !$event;\n }\n}\n","import {Component, EventEmitter, Input, OnInit, Output, Renderer2, ElementRef} from '@angular/core';\nimport {Formatting} from \"../formatting.service\";\nimport {WindowService} from \"../window.service\";\nimport { ZoomService } from '../zoom.service';\n\nexport class MenuType {\n public static FOR_SIGNATURE = \"signature\";\n public static FOR_ANNOTATION = \"annotation\";\n}\n\n@Component({\n selector: 'gd-context-menu',\n templateUrl: './context-menu.component.html',\n styleUrls: ['./context-menu.component.less']\n})\nexport class ContextMenuComponent implements OnInit {\n @Input() formatting: Formatting = Formatting.default();\n @Input() textMenu: boolean;\n @Input() topPosition: number;\n @Input() lock = false;\n @Input() translation = 0;\n @Input() menuType: string;\n @Output() changeFormatting = new EventEmitter();\n @Output() removeItem = new EventEmitter();\n @Output() copySign = new EventEmitter();\n @Output() lockOut = new EventEmitter();\n @Output() comment = new EventEmitter();\n\n isMobile: boolean;\n\n constructor(private _windowService: WindowService,\n private _zoomService: ZoomService,\n protected _elementRef: ElementRef,\n private renderer: Renderer2) {\n this.isMobile = _windowService.isMobile();\n _windowService.onResize.subscribe((w) => {\n this.isMobile = _windowService.isMobile();\n });\n\n _zoomService.zoomChange.subscribe((val: number) => {\n if (this.isMobile)\n {\n this.changeScale(val);\n }\n });\n }\n\n ngOnInit() {\n }\n\n changeScale(val: number){\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-context-menu'), 'transform', 'scale(' + 1/(val/100) + ')');\n }\n\n saveChanges() {\n this.changeFormatting.emit(this.formatting);\n }\n\n selectFontSize($event: number) {\n this.formatting.fontSize = $event;\n this.saveChanges();\n }\n\n selectFont($event: string) {\n this.formatting.font = $event;\n this.saveChanges();\n }\n\n selectColor($event: string) {\n this.formatting.color = $event;\n this.saveChanges();\n }\n\n toggleBold($event) {\n this.formatting.bold = $event;\n this.saveChanges();\n }\n\n toggleItalic($event) {\n this.formatting.italic = $event;\n this.saveChanges();\n }\n\n toggleUnderline($event) {\n this.formatting.underline = $event;\n this.saveChanges();\n }\n\n deleteItem() {\n this.removeItem.emit(true);\n }\n\n toggleLock() {\n this.lock = !this.lock;\n this.lockOut.emit(this.lock);\n }\n\n onCopySign() {\n this.copySign.emit(true);\n }\n\n isSignature() {\n return this.menuType === MenuType.FOR_SIGNATURE;\n }\n\n isAnnotation() {\n return this.menuType === MenuType.FOR_ANNOTATION;\n }\n\n addComment() {\n this.comment.emit(true);\n }\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {TopToolbarComponent} from './top-toolbar/top-toolbar.component';\nimport {SidePanelComponent} from './side-panel/side-panel.component';\nimport {ButtonComponent} from './button/button.component';\nimport {LogoComponent} from './logo/logo.component';\nimport {TooltipComponent} from './tooltip/tooltip.component';\nimport {FontAwesomeModule} from '@fortawesome/angular-fontawesome';\nimport {library} from '@fortawesome/fontawesome-svg-core';\nimport {fas} from '@fortawesome/free-solid-svg-icons';\nimport {far} from '@fortawesome/free-regular-svg-icons';\nimport {Api, ConfigService,} from \"./config.service\";\nimport {ModalService} from \"./modal.service\";\nimport {ModalComponent} from './modal/modal.component';\nimport {BrowseFilesModalComponent} from './browse-files-modal/browse-files-modal.component';\nimport {FileModel, FileService, FileUtil, Utils} from \"./file.service\";\nimport {DocumentComponent} from './document/document.component';\nimport {PageComponent} from './page/page.component';\nimport {HighlightSearchPipe, SanitizeHtmlPipe, SanitizeResourceHtmlPipe, SanitizeStylePipe} from \"./pipes\";\nimport {UploadFileZoneComponent} from './upload-file-zone/upload-file-zone.component';\nimport {UploadFilesService} from \"./upload-files.service\";\nimport {DndDirective} from './dnd.directive';\nimport {ScrollableDirective} from './scrollable.directive';\nimport {MouseWheelDirective} from './mousewheel.directive';\nimport {NavigateService} from \"./navigate.service\";\nimport {PagePreloadService} from \"./page-preload.service\";\nimport {ZoomDirective} from './zoom.directive';\nimport {ZoomService} from \"./zoom.service\";\nimport {SelectComponent} from './select/select.component';\nimport {DisabledCursorDirective} from './disabled-cursor.directive';\nimport {RotationDirective} from './rotation.directive';\nimport {InitStateComponent} from './init-state/init-state.component';\nimport {RenderPrintService} from \"./render-print.service\";\nimport {RenderPrintDirective} from './render-print.directive';\nimport {ErrorModalComponent} from './error-modal/error-modal.component';\nimport {PasswordRequiredComponent} from './password-required/password-required.component';\nimport {ExceptionMessageService} from \"./exception-message.service\";\nimport {PasswordService} from \"./password.service\";\nimport {ErrorInterceptorService} from \"./error-interceptor.service\";\nimport {SearchComponent} from './search/search.component';\nimport {SearchableDirective} from './searchable.directive';\nimport {SearchService} from \"./search.service\";\nimport {WindowService} from \"./window.service\";\nimport {ViewportService} from \"./viewport.service\";\nimport {TabbedToolbarsComponent} from './tabbed-toolbars/tabbed-toolbars.component';\nimport {TabComponent} from \"./tab/tab.component\";\nimport {TabsComponent} from \"./tabs/tabs.component\";\nimport {FormattingService} from \"./formatting.service\";\nimport {ColorPickerComponent} from './color-picker/color-picker.component';\nimport {FormattingDirective} from './formatting.directive';\nimport {BackFormattingService} from \"./back-formatting.service\";\nimport {OnCloseService} from \"./on-close.service\";\nimport {SuccessModalComponent} from './success-modal/success-modal.component';\nimport {EditorDirective} from './editor.directive';\nimport {LoadingMaskComponent} from './loading-mask/loading-mask.component';\nimport {LoadingMaskService} from './loading-mask.service';\nimport {LoadingMaskInterceptorService} from \"./loading-mask-interceptor.service\";\nimport {TabActivatorService} from \"./tab-activator.service\";\nimport {\n DropDownComponent,\n DropDownItemComponent,\n DropDownItemsComponent,\n DropDownToggleComponent\n} from './drop-down/drop-down.component';\nimport {ClickOutsideModule} from 'ng-click-outside';\nimport {LeftSideBarComponent} from './left-side-bar/left-side-bar.component';\nimport {TooltipDirective} from './tooltip.directive';\nimport {AddDynamicComponentService} from \"./add-dynamic-component.service\";\nimport {HostDynamicDirective} from './host-dynamic.directive';\nimport {HostingDynamicComponentService} from \"./hosting-dynamic-component.service\";\nimport {ResizingComponent} from './resizing/resizing.component';\nimport {TopTabComponent} from './top-tab/top-tab.component';\nimport {TopTabActivatorService} from \"./top-tab-activator.service\";\nimport {TextMenuComponent} from './text-menu/text-menu.component';\nimport {ContextMenuComponent} from './context-menu/context-menu.component';\n\nconst providers = [ConfigService,\n Api,\n ModalService,\n FileService,\n FileModel,\n FileUtil,\n Utils,\n SanitizeHtmlPipe,\n SanitizeResourceHtmlPipe,\n SanitizeStylePipe,\n HighlightSearchPipe,\n UploadFilesService,\n RenderPrintService,\n NavigateService,\n PagePreloadService,\n ZoomService,\n ExceptionMessageService,\n PasswordService,\n ErrorInterceptorService,\n SearchService,\n WindowService,\n ViewportService,\n FormattingService,\n BackFormattingService,\n OnCloseService,\n LoadingMaskInterceptorService,\n LoadingMaskService,\n TabActivatorService,\n AddDynamicComponentService,\n HostingDynamicComponentService,\n TopTabActivatorService];\n\n@NgModule({\n imports: [CommonModule, FontAwesomeModule, ClickOutsideModule],\n declarations: [\n TopToolbarComponent,\n SidePanelComponent,\n ButtonComponent,\n LogoComponent,\n TooltipComponent,\n ModalComponent,\n BrowseFilesModalComponent,\n DocumentComponent,\n PageComponent,\n SanitizeHtmlPipe,\n SanitizeResourceHtmlPipe,\n SanitizeStylePipe,\n HighlightSearchPipe,\n UploadFileZoneComponent,\n DndDirective,\n ScrollableDirective,\n MouseWheelDirective,\n ZoomDirective,\n SelectComponent,\n DisabledCursorDirective,\n RotationDirective,\n InitStateComponent,\n RenderPrintDirective,\n ErrorModalComponent,\n PasswordRequiredComponent,\n SearchComponent,\n SearchableDirective,\n TabbedToolbarsComponent,\n TabComponent,\n TabsComponent,\n ColorPickerComponent,\n FormattingDirective,\n SuccessModalComponent,\n EditorDirective,\n LoadingMaskComponent,\n DropDownComponent,\n DropDownItemComponent,\n DropDownItemsComponent,\n DropDownToggleComponent,\n LeftSideBarComponent,\n TooltipDirective,\n HostDynamicDirective,\n ResizingComponent,\n TopTabComponent,\n TextMenuComponent,\n ContextMenuComponent\n ],\n exports: [\n TopToolbarComponent,\n SidePanelComponent,\n ButtonComponent,\n LogoComponent,\n TooltipComponent,\n ModalComponent,\n BrowseFilesModalComponent,\n DocumentComponent,\n PageComponent,\n SanitizeResourceHtmlPipe,\n SanitizeStylePipe,\n HighlightSearchPipe,\n SanitizeHtmlPipe,\n UploadFileZoneComponent,\n ScrollableDirective,\n MouseWheelDirective,\n SelectComponent,\n RotationDirective,\n InitStateComponent,\n RenderPrintDirective,\n ErrorModalComponent,\n PasswordRequiredComponent,\n SearchComponent,\n SearchableDirective,\n TabbedToolbarsComponent,\n TabComponent,\n TabsComponent,\n ColorPickerComponent,\n FormattingDirective,\n SuccessModalComponent,\n LoadingMaskComponent,\n DndDirective,\n DropDownComponent,\n DropDownItemComponent,\n DropDownItemsComponent,\n DropDownToggleComponent,\n ZoomDirective,\n DropDownToggleComponent,\n LeftSideBarComponent,\n TooltipDirective,\n HostDynamicDirective,\n ResizingComponent,\n TopTabComponent,\n TextMenuComponent,\n ContextMenuComponent\n ],\n providers: providers\n})\nexport class CommonComponentsModule {\n constructor() {\n library.add(fas, far);\n }\n}\n"],"names":["$"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"groupdocs.examples.angular-common-components.js","sources":["ng://@groupdocs.examples.angular/common-components/lib/top-toolbar/top-toolbar.component.ts","ng://@groupdocs.examples.angular/common-components/lib/side-panel/side-panel.component.ts","ng://@groupdocs.examples.angular/common-components/lib/window.service.ts","ng://@groupdocs.examples.angular/common-components/lib/button/button.component.ts","ng://@groupdocs.examples.angular/common-components/lib/logo/logo.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tooltip/tooltip.component.ts","ng://@groupdocs.examples.angular/common-components/lib/config.service.ts","ng://@groupdocs.examples.angular/common-components/lib/modal.service.ts","ng://@groupdocs.examples.angular/common-components/lib/modal/modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/file.service.ts","ng://@groupdocs.examples.angular/common-components/lib/upload-files.service.ts","ng://@groupdocs.examples.angular/common-components/lib/browse-files-modal/browse-files-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/zoom.service.ts","ng://@groupdocs.examples.angular/common-components/lib/page-preload.service.ts","ng://@groupdocs.examples.angular/common-components/lib/navigate.service.ts","ng://@groupdocs.examples.angular/common-components/lib/document/document.component.ts","ng://@groupdocs.examples.angular/common-components/lib/page/page.component.ts","ng://@groupdocs.examples.angular/common-components/lib/pipes.ts","ng://@groupdocs.examples.angular/common-components/lib/upload-file-zone/upload-file-zone.component.ts","ng://@groupdocs.examples.angular/common-components/lib/dnd.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/viewport.service.ts","ng://@groupdocs.examples.angular/common-components/lib/scrollable.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/mousewheel.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/zoom.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/on-close.service.ts","ng://@groupdocs.examples.angular/common-components/lib/select/select.component.ts","ng://@groupdocs.examples.angular/common-components/lib/disabled-cursor.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/rotation.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/init-state/init-state.component.ts","ng://@groupdocs.examples.angular/common-components/lib/render-print.service.ts","ng://@groupdocs.examples.angular/common-components/lib/render-print.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/exception-message.service.ts","ng://@groupdocs.examples.angular/common-components/lib/error-modal/error-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/password.service.ts","ng://@groupdocs.examples.angular/common-components/lib/password-required/password-required.component.ts","ng://@groupdocs.examples.angular/common-components/lib/error-interceptor.service.ts","ng://@groupdocs.examples.angular/common-components/lib/search.service.ts","ng://@groupdocs.examples.angular/common-components/lib/search/search.component.ts","ng://@groupdocs.examples.angular/common-components/lib/searchable.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/tabbed-toolbars/tabbed-toolbars.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tab-activator.service.ts","ng://@groupdocs.examples.angular/common-components/lib/tab/tab.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tabs/tabs.component.ts","ng://@groupdocs.examples.angular/common-components/lib/formatting.service.ts","ng://@groupdocs.examples.angular/common-components/lib/color-picker/color-picker.component.ts","ng://@groupdocs.examples.angular/common-components/lib/back-formatting.service.ts","ng://@groupdocs.examples.angular/common-components/lib/selection.service.ts","ng://@groupdocs.examples.angular/common-components/lib/formatting.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/success-modal/success-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/edit-html.service.ts","ng://@groupdocs.examples.angular/common-components/lib/editor.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask.service.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask/loading-mask.component.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask-interceptor.service.ts","ng://@groupdocs.examples.angular/common-components/lib/drop-down/drop-down.component.ts","ng://@groupdocs.examples.angular/common-components/lib/left-side-bar/left-side-bar.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tooltip.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/add-dynamic-component.service.ts","ng://@groupdocs.examples.angular/common-components/lib/hosting-dynamic-component.service.ts","ng://@groupdocs.examples.angular/common-components/lib/host-dynamic.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/resizing/resizing.component.ts","ng://@groupdocs.examples.angular/common-components/lib/top-tab-activator.service.ts","ng://@groupdocs.examples.angular/common-components/lib/top-tab/top-tab.component.ts","ng://@groupdocs.examples.angular/common-components/lib/text-menu/text-menu.component.ts","ng://@groupdocs.examples.angular/common-components/lib/context-menu/context-menu.component.ts","ng://@groupdocs.examples.angular/common-components/lib/common-components.module.ts"],"sourcesContent":["import {Component, Input} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-top-toolbar',\r\n templateUrl: './top-toolbar.component.html',\r\n styleUrls: ['./top-toolbar.component.less']\r\n})\r\nexport class TopToolbarComponent {\r\n\r\n constructor() {\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-side-panel',\r\n templateUrl: './side-panel.component.html',\r\n styleUrls: ['./side-panel.component.less']\r\n})\r\n\r\nexport class SidePanelComponent {\r\n @Input() title: string;\r\n @Input() icon: string;\r\n @Input() closable = true;\r\n @Input() saveable = true;\r\n @Output() hideSidePanel = new EventEmitter();\r\n @Output() saveInSidePanel = new EventEmitter();\r\n\r\n onlyTitle = false;\r\n\r\n constructor() {\r\n }\r\n\r\n closeSidePanel() {\r\n this.hideSidePanel.emit(true);\r\n }\r\n\r\n saveBySidePanel() {\r\n this.saveInSidePanel.emit(true);\r\n }\r\n\r\n toggleTitleMode(){\r\n if (this.closable && !this.saveable) {\r\n this.onlyTitle = !this.onlyTitle;\r\n }\r\n }\r\n}\r\n","import {fromEvent, Observable, Subject} from \"rxjs\";\r\nimport {debounceTime, distinctUntilChanged, startWith, tap} from \"rxjs/operators\";\r\n\r\nconst MOBILE_MAX_WIDTH = 425;\r\nconst TABLET_MAX_WIDTH = 1024;\r\n\r\nexport class WindowService {\r\n\r\n private resizeSubject: Subject = new Subject();\r\n private _resize$;\r\n private width: number;\r\n private height: number;\r\n\r\n constructor() {\r\n this.width = window.innerWidth;\r\n this.height = window.innerHeight;\r\n\r\n this._resize$ = fromEvent(window, 'resize')\r\n .pipe(\r\n debounceTime(200),\r\n distinctUntilChanged(),\r\n startWith({target: {innerWidth: window.innerWidth, innerHeight: window.innerHeight}}),\r\n tap(event => {\r\n this.resizeSubject.next(event.target);\r\n this.width = (event.target as Window).innerWidth;\r\n this.height = (event.target as Window).innerHeight;\r\n }),\r\n );\r\n this._resize$.subscribe();\r\n }\r\n\r\n get onResize(): Observable {\r\n return this.resizeSubject.asObservable();\r\n }\r\n\r\n isMobile() {\r\n return this.width <= MOBILE_MAX_WIDTH;\r\n }\r\n\r\n isTablet() {\r\n return this.width <= TABLET_MAX_WIDTH;\r\n }\r\n\r\n isDesktop() {\r\n return !this.isMobile() && !this.isTablet();\r\n }\r\n\r\n getWidth() {\r\n return this.width;\r\n }\r\n\r\n getHeight() {\r\n return this.height;\r\n }\r\n\r\n isEdge() {\r\n return window.navigator.userAgent.toLowerCase().indexOf('edge') > -1;\r\n }\r\n\r\n isFirefox() {\r\n return navigator.userAgent.toLowerCase().indexOf('firefox') > -1;\r\n }\r\n}\r\n","import {Component, Input} from '@angular/core';\r\nimport {WindowService} from \"../window.service\";\r\n\r\n@Component({\r\n selector: 'gd-button',\r\n templateUrl: './button.component.html',\r\n styleUrls: ['./button.component.less']\r\n})\r\nexport class ButtonComponent {\r\n @Input() iconOnly = true;\r\n @Input() intent = 'default';\r\n @Input() disabled = false;\r\n @Input() icon: string;\r\n @Input() iconClass: string;\r\n @Input() tooltip: string;\r\n @Input() className: string;\r\n @Input() toggle = false;\r\n @Input() iconSize: string;\r\n @Input() iconRegular = false;\r\n @Input() elementPosition = 0;\r\n\r\n showToolTip = false;\r\n private isDesktop: boolean;\r\n\r\n constructor(windowService: WindowService) {\r\n this.isDesktop = windowService.isDesktop();\r\n windowService.onResize.subscribe((w) => {\r\n this.isDesktop = windowService.isDesktop();\r\n });\r\n }\r\n\r\n iconButtonClass() {\r\n return this.iconOnly ? 'icon-button' : '';\r\n }\r\n\r\n onHovering() {\r\n if (this.isDesktop && !this.disabled) {\r\n this.className += ' active';\r\n }\r\n }\r\n\r\n onUnhovering() {\r\n if (this.isDesktop && !this.disabled) {\r\n this.className = this.cleanAll(this.className, ' active');\r\n }\r\n }\r\n\r\n private cleanAll(str: string, val: string) {\r\n while (str && str.indexOf(val) !== -1) {\r\n str = str.replace(val, '');\r\n }\r\n return str;\r\n }\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-logo',\r\n templateUrl: './logo.component.html',\r\n styleUrls: ['./logo.component.less']\r\n})\r\nexport class LogoComponent implements OnInit {\r\n\r\n @Input() logo;\r\n @Input() icon;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-tooltip',\r\n templateUrl: './tooltip.component.html',\r\n styleUrls: ['./tooltip.component.less']\r\n})\r\nexport class TooltipComponent implements OnInit {\r\n\r\n @Input() text: string;\r\n @Input() position = 0;\r\n visibility = 'hidden';\r\n\r\n constructor() {\r\n }\r\n\r\n getClass() {\r\n if (this.position === 0) {\r\n return 'tooltip';\r\n }\r\n return 'tooltip ' + (this.position > 0 ? 'last-element' : 'first-element');\r\n }\r\n\r\n @Input()\r\n set show(value: boolean) {\r\n this.visibility = value ? 'shown' : 'hidden';\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {HttpHeaders} from \"@angular/common/http\";\r\nimport {Injectable} from \"@angular/core\";\r\n\r\nexport class Api {\r\n public static VIEWER_APP = '/viewer';\r\n public static SIGNATURE_APP = '/signature';\r\n public static ANNOTATION_APP = '/annotation';\r\n public static SEARCH_APP = '/search';\r\n public static EDITOR_APP = '/editor';\r\n public static COMPARISON_APP = '/comparison';\r\n public static CONVERSION_APP = '/conversion';\r\n public static METADATA_APP = '/metadata';\r\n public static DEFAULT_API_ENDPOINT = window.location.href;\r\n public static LOAD_FILE_TREE = '/loadFileTree';\r\n public static LOAD_CONFIG = '/loadConfig';\r\n public static LOAD_DOCUMENT_DESCRIPTION = '/loadDocumentDescription';\r\n public static LOAD_DOCUMENT_PAGE = '/loadDocumentPage';\r\n public static LOAD_DOCUMENT_PROPERTIES = '/loadProperties';\r\n public static LOAD_DOCUMENT_PROPERTIES_NAMES = '/loadPropertiesNames';\r\n public static SAVE_PROPERTY = '/saveProperty';\r\n public static REMOVE_PROPERTY = '/removeProperty';\r\n public static ROTATE_DOCUMENT_PAGE = '/rotateDocumentPages';\r\n public static UPLOAD_DOCUMENTS = '/uploadDocument';\r\n public static DOWNLOAD_DOCUMENTS = '/downloadDocument';\r\n public static LOAD_PRINT = '/loadPrint';\r\n public static LOAD_PRINT_PDF = '/printPdf';\r\n public static LOAD_THUMBNAILS = '/loadThumbnails';\r\n public static LOAD_FORMATS = '/loadFormats';\r\n public static SAVE_FILE = '/saveFile';\r\n public static CREATE_FILE = '/createFile';\r\n public static COMPARE_FILES = '/compare';\r\n public static CONVERT_FILE = '/convert';\r\n public static DELETE_SIGNATURE_FILE = '/deleteSignatureFile';\r\n public static REMOVE_FROM_INDEX = '/removeFromIndex';\r\n public static GET_FILE_STATUS = '/getFileStatus';\r\n public static SAVE_OPTICAL_CODE = '/saveOpticalCode';\r\n public static SAVE_TEXT = '/saveText';\r\n public static SAVE_IMAGE = '/saveImage';\r\n public static SAVE_STAMP = '/saveStamp';\r\n public static SIGN = '/sign';\r\n public static DOWNLOAD_SIGNED = '/downloadSigned';\r\n public static LOAD_SIGNATURE_IMAGE = '/loadSignatureImage';\r\n public static ANNOTATE = '/annotate';\r\n public static SEARCH = '/search';\r\n public static ADD_FILES_TO_INDEX = '/addFilesToIndex';\r\n\r\n public static httpOptionsJson = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n })\r\n };\r\n public static httpOptionsJsonResponseTypeBlob = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n }),\r\n responseType: 'blob' as 'blob'\r\n };\r\n}\r\n\r\n@Injectable()\r\nexport class ConfigService {\r\n\r\n private _apiEndpoint: string;\r\n\r\n constructor() {\r\n this.apiEndpoint = Api.DEFAULT_API_ENDPOINT;\r\n }\r\n\r\n set apiEndpoint(url: string) {\r\n this._apiEndpoint = url && url.trim().endsWith('/') ? url.substring(0, url.length - 1) : url;\r\n }\r\n\r\n getConfigEndpoint(app) {\r\n return (this.apiEndpoint.endsWith(app) ? this.apiEndpoint : this.apiEndpoint + app) + Api.LOAD_CONFIG;\r\n }\r\n\r\n getViewerApiEndpoint() {\r\n return this._apiEndpoint.endsWith(Api.VIEWER_APP) ? this._apiEndpoint : this._apiEndpoint + Api.VIEWER_APP;\r\n }\r\n\r\n getEditorApiEndpoint() {\r\n return this._apiEndpoint.trim().endsWith(Api.EDITOR_APP) ? this._apiEndpoint : this._apiEndpoint + Api.EDITOR_APP;\r\n }\r\n\r\n getComparisonApiEndpoint() {\r\n return this._apiEndpoint.trim().endsWith(Api.COMPARISON_APP) ? this._apiEndpoint : this._apiEndpoint + Api.COMPARISON_APP;\r\n }\r\n\r\n getConversionApiEndpoint() {\r\n return this._apiEndpoint.trim().endsWith(Api.CONVERSION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.CONVERSION_APP;\r\n }\r\n\r\n getMetadataApiEndpoint() {\r\n return this._apiEndpoint.trim().endsWith(Api.METADATA_APP) ? this._apiEndpoint : this._apiEndpoint + Api.METADATA_APP;\r\n }\r\n\r\n get apiEndpoint() {\r\n return this._apiEndpoint;\r\n }\r\n\r\n getSignatureApiEndpoint() {\r\n return this._apiEndpoint.endsWith(Api.SIGNATURE_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SIGNATURE_APP;\r\n }\r\n\r\n getAnnotationApiEndpoint() {\r\n return this._apiEndpoint.endsWith(Api.ANNOTATION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.ANNOTATION_APP;\r\n }\r\n\r\n getSearchApiEndpoint() {\r\n return this._apiEndpoint.endsWith(Api.SEARCH_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SEARCH_APP;\r\n }\r\n}\r\n","export class CommonModals {\r\n static PasswordRequired = \"gd-password-required\";\r\n static ErrorMessage = \"gd-error-message\";\r\n static BrowseFiles = \"gd-browse-files\";\r\n static CreateDocument = \"gd-create-document\";\r\n static OperationSuccess = \"gd-success-modal\";\r\n static DrawHandSignature = \"gd-draw-hand-signature\";\r\n static DrawStampSignature = \"gd-draw-stamp-signature\";\r\n static InformationMessage = \"gd-information-message\";\r\n}\r\n\r\nexport class ModalService {\r\n private modals: any[] = [];\r\n\r\n add(modal: any) {\r\n this.modals.push(modal);\r\n }\r\n\r\n remove(id: string) {\r\n this.modals = this.modals.filter(x => x.id !== id);\r\n }\r\n\r\n open(id: string) {\r\n const modal: any = this.modals.filter(x => x.id === id)[0];\r\n if (modal) {\r\n modal.open();\r\n }\r\n }\r\n\r\n close(id: string) {\r\n const modal: any = this.modals.filter(x => x.id === id)[0];\r\n if (modal) {\r\n modal.close();\r\n }\r\n }\r\n}\r\n","import {Component, ElementRef, EventEmitter, Input, OnDestroy, OnInit, Output} from '@angular/core';\r\nimport {ModalService} from \"../modal.service\";\r\n\r\n@Component({\r\n selector: 'gd-modal',\r\n templateUrl: './modal.component.html',\r\n styleUrls: ['./modal.component.less']\r\n})\r\nexport class ModalComponent implements OnInit, OnDestroy {\r\n @Input() id: string;\r\n @Input() title: string;\r\n @Output() visible = new EventEmitter();\r\n @Output() cancel = new EventEmitter();\r\n visibility = false;\r\n private element: any;\r\n\r\n constructor(private modalService: ModalService, el: ElementRef) {\r\n this.element = el.nativeElement;\r\n }\r\n\r\n ngOnInit(): void {\r\n if (!this.id) {\r\n console.error('modal must have an id');\r\n return;\r\n }\r\n\r\n document.body.appendChild(this.element);\r\n\r\n this.modalService.add(this);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.modalService.remove(this.id);\r\n this.element.remove();\r\n }\r\n\r\n open(): void {\r\n this.visibility = true;\r\n this.visible.emit(true);\r\n }\r\n\r\n close(): void {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.visibility = false;\r\n this.visible.emit(false);\r\n }\r\n\r\n onClose($event: MouseEvent) {\r\n $event.stopPropagation();\r\n if ($event && $event.target && ($event.target).id === 'modalDialog') {\r\n this.close();\r\n }\r\n }\r\n\r\n cancelClose() {\r\n this.cancel.emit(false);\r\n this.close();\r\n }\r\n}\r\n","export class PageModel {\r\n data: string;\r\n angle: number;\r\n width: number;\r\n height: number;\r\n number: number;\r\n editable: boolean;\r\n}\r\n\r\nexport class RotatedPage {\r\n pageNumber: number;\r\n angle: number;\r\n}\r\n\r\nexport class FileCredentials {\r\n guid: string;\r\n password: string;\r\n\r\n constructor(guid: string, password: string) {\r\n this.guid = guid;\r\n this.password = password;\r\n }\r\n}\r\n\r\nexport class SaveFile extends FileCredentials {\r\n content: string;\r\n\r\n constructor(guid: string, password: string, content: string) {\r\n super(guid, password);\r\n this.content = content;\r\n }\r\n}\r\n\r\nexport class FileDescription {\r\n guid: string;\r\n pages: PageModel[];\r\n printAllowed = true;\r\n showGridLines: boolean;\r\n thumbnails: PageModel[];\r\n}\r\n\r\nexport class FileModel {\r\n guid: string;\r\n name: string;\r\n directory: boolean;\r\n size: number;\r\n isDirectory: boolean;\r\n}\r\n\r\nexport class HttpError {\r\n static BadRequest = 400;\r\n static Unauthorized = 401;\r\n static Forbidden = 403;\r\n static NotFound = 404;\r\n static TimeOut = 408;\r\n static Conflict = 409;\r\n static InternalServerError = 500;\r\n}\r\n\r\nexport class Utils {\r\n public static getMousePosition(event) {\r\n const mouse = {\r\n x: 0,\r\n y: 0\r\n };\r\n const wEvent: DragEvent = window.event;\r\n const ev = event || wEvent; //Moz || IE\r\n if (ev.pageX || wEvent.pageX || wEvent.screenX || (ev.touches && ev.touches[0] && ev.touches[0].pageX)) { //Moz\r\n const pageX = typeof ev.pageX !== \"undefined\" && ev.pageX !== 0 ? ev.pageX : wEvent.pageX;\r\n const pageY = typeof ev.pageY !== \"undefined\" && ev.pageY !== 0 ? ev.pageY : wEvent.pageY;\r\n const screenX = typeof wEvent.screenX !== \"undefined\" && wEvent.screenY !== 0;\r\n const screenY = typeof wEvent.screenY !== \"undefined\" && wEvent.screenY !== 0;\r\n mouse.x = pageX ? pageX : (screenX ? wEvent.screenX : ev.touches[0].pageX);\r\n mouse.y = pageY ? pageY : (screenY ? wEvent.screenY : ev.touches[0].pageY);\r\n } else if (ev.clientX) { //IE\r\n mouse.x = ev.clientX + document.body.scrollLeft;\r\n mouse.y = ev.clientY + document.body.scrollTop;\r\n }\r\n return mouse;\r\n }\r\n\r\n public static toRgb(color: string) {\r\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(color);\r\n if (result) {\r\n const r = parseInt(result[1], 16);\r\n const g = parseInt(result[2], 16);\r\n const b = parseInt(result[3], 16);\r\n return result ? 'rgb(' + r + ',' + g + ',' + b + ')' : '';\r\n }\r\n return color;\r\n }\r\n\r\n public static toHex(color: string) {\r\n // check if color is standard hex value\r\n if (color.match(/[0-9A-F]{6}|[0-9A-F]{3}$/i)) {\r\n return (color.charAt(0) === \"#\") ? color : (\"#\" + color);\r\n // check if color is RGB value -> convert to hex\r\n } else if (color.match(/^rgb\\(\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*\\)$/)) {\r\n const c = ([parseInt(RegExp.$1, 10), parseInt(RegExp.$2, 10), parseInt(RegExp.$3, 10)]),\r\n pad = function (str) {\r\n if (str.length < 2) {\r\n for (let i = 0, len = 2 - str.length; i < len; i++) {\r\n str = '0' + str;\r\n }\r\n }\r\n return str;\r\n };\r\n if (c.length === 3) {\r\n const r = pad(c[0].toString(16)),\r\n g = pad(c[1].toString(16)),\r\n b = pad(c[2].toString(16));\r\n return '#' + r + g + b;\r\n }\r\n // else do nothing\r\n } else {\r\n return '';\r\n }\r\n }\r\n}\r\n\r\nexport class FileUtil {\r\n public static map = {\r\n 'folder': {'format': '', 'icon': 'folder'},\r\n 'pdf': {'format': 'Portable Document Format', 'icon': 'file-pdf', 'unit': 'pt'},\r\n 'doc': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'docx': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'docm': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'dot': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'dotx': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'dotm': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'xls': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xlsx': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xlsm': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xlsb': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xls2003': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xltx': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xltm': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'ppt': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'pptx': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'pps': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'ppsx': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'vsd': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vdx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vss': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vsx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vst': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vtx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vsdx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vdw': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vstx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vssx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'mpp': {'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'mpt': {'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'msg': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'eml': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'emlx': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'one': {'format': 'Microsoft OneNote', 'icon': 'file-word', 'unit': 'pt'},\r\n 'odt': {'format': 'Open Document Text', 'icon': 'file-word', 'unit': 'pt'},\r\n 'ott': {'format': 'Open Document Text Template', 'icon': 'file-word', 'unit': 'pt'},\r\n 'ods': {'format': 'Open Document Spreadsheet', 'icon': 'file-excel', 'unit': 'px'},\r\n 'odp': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'otp': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'ots': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'potx': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'potm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'pptm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'ppsm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'rtf': {'format': 'Rich Text Format', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'txt': {'format': 'Plain Text File', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'csv': {'format': 'Comma-Separated Values', 'icon': 'file-excel', 'unit': 'px'},\r\n 'html': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\r\n 'mht': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\r\n 'mhtml': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\r\n 'xml': {'format': 'Extensible Markup Language', 'icon': 'file-word', 'unit': 'pt'},\r\n 'xps': {'format': 'XML Paper Specification', 'icon': 'file-word', 'unit': 'pt'},\r\n 'dxf': {'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'dwg': {'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'bmp': {'format': 'Bitmap Picture', 'icon': 'file-image', 'unit': 'px'},\r\n 'gif': {'format': 'Graphics Interchange Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'jpg': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\r\n 'jpe': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\r\n 'jpeg': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\r\n 'jfif': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\r\n 'png': {'format': 'Portable Network Graphics', 'icon': 'file-image', 'unit': 'px'},\r\n 'tiff': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'tif': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'psd': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'svg': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'jp2': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'epub': {'format': 'Electronic Publication', 'icon': 'file-pdf', 'unit': 'pt'},\r\n 'ico': {'format': 'Windows Icon', 'icon': 'file-image', 'unit': 'px'},\r\n 'webp': {'format': 'Compressed Image', 'icon': 'file-image', 'unit': 'px'},\r\n 'mobi': {'format': 'Mobipocket eBook', 'icon': 'file-pdf', 'unit': 'pt'},\r\n 'tex': {'format': 'LaTeX Source Document', 'icon': 'file-pdf', 'unit': 'pt'},\r\n 'djvu': {'format': 'Multi-Layer Raster Image', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'unknown': {'format': 'This format is not supported', 'icon': 'file'},\r\n };\r\n\r\n public static find(filename: string, isDirectory: boolean) {\r\n if (filename && !isDirectory) {\r\n const strings = filename.split('.');\r\n const name = strings.pop().toLowerCase();\r\n if (typeof FileUtil.map[name] === \"undefined\") {\r\n return strings.length > 0 ? FileUtil.map['unknown'] : FileUtil.map['folder'];\r\n } else {\r\n return FileUtil.map[name];\r\n }\r\n } else {\r\n return FileUtil.map['folder'];\r\n }\r\n }\r\n}\r\n\r\nexport class FileService {\r\n\r\n constructor() {\r\n }\r\n}\r\n","import {Observable, Observer} from \"rxjs\";\r\n\r\nexport class UploadFilesService {\r\n private _uploadsChange: Observable;\r\n private _observer: Observer;\r\n\r\n constructor() {\r\n this._uploadsChange = new Observable(observer =>\r\n this._observer = observer);\r\n }\r\n\r\n get uploadsChange(): Observable {\r\n return this._uploadsChange;\r\n }\r\n\r\n changeFilesList(filesList: FileList) {\r\n this._observer.next(filesList);\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {FileModel, FileUtil} from \"../file.service\";\r\nimport {UploadFilesService} from \"../upload-files.service\";\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\nconst upload_disc = 'Disc';\r\n\r\nconst upload_url = 'URL';\r\n\r\nconst uploads_choices = [{name: upload_disc, icon: 'hdd'}, {name: upload_url, icon: 'link'}];\r\n\r\n@Component({\r\n selector: 'gd-browse-files-modal',\r\n templateUrl: './browse-files-modal.component.html',\r\n styleUrls: ['./browse-files-modal.component.less']\r\n})\r\nexport class BrowseFilesModalComponent implements OnInit {\r\n uploads = uploads_choices;\r\n\r\n @Input() files;\r\n @Input() uploadConfig;\r\n @Output() selectedFileGuid = new EventEmitter();\r\n @Output() selectedDirectory = new EventEmitter();\r\n @Output() urlForUpload = new EventEmitter();\r\n @Output() closing = new EventEmitter();\r\n private selectedFile: FileModel;\r\n showUploadUrl = false;\r\n showUploadFile = false;\r\n\r\n constructor(private _uploadService: UploadFilesService) {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n getSize(size: number) {\r\n const mb = size / 1024 / 1024;\r\n if (mb > 1) {\r\n return (Math.round(mb * 100) / 100) + ' MB';\r\n } else {\r\n const kb = size / 1024;\r\n if (kb > 1) {\r\n return (Math.round(kb * 100) / 100) + ' KB';\r\n }\r\n }\r\n return size + ' Bytes';\r\n }\r\n\r\n getFormatName(file: FileModel) {\r\n return FileUtil.find(file.name, file.directory).format;\r\n }\r\n\r\n getFormatIcon(file: FileModel) {\r\n return FileUtil.find(file.name, file.directory).icon;\r\n }\r\n\r\n choose(file: FileModel) {\r\n this.selectedFile = file;\r\n if (file.directory || file.isDirectory) {\r\n this.selectedDirectory.emit(file.name);\r\n } else {\r\n this.selectedFileGuid.emit(file.guid);\r\n }\r\n }\r\n\r\n goUp() {\r\n if (this.selectedFile) {\r\n let guid = this.selectedFile.guid;\r\n if (guid.length > 0 && guid.indexOf('/') === -1) {\r\n guid = '';\r\n } else {\r\n guid = guid.replace(/\\/[^\\/]+\\/?$/, '');\r\n }\r\n this.selectedDirectory.emit(guid);\r\n }\r\n }\r\n\r\n selectUpload($event: string) {\r\n if (upload_url === $event) {\r\n this.showUploadUrl = true;\r\n } else {\r\n this.showUploadUrl = false;\r\n $(\"#gd-upload-input\").trigger('click');\r\n }\r\n }\r\n\r\n refresh($event) {\r\n\r\n if ($event) {\r\n this.files = null;\r\n this.selectedDirectory.emit('');\r\n this.showUploadUrl = false;\r\n this.selectedFile = null;\r\n } else {\r\n this.closing.emit(true);\r\n }\r\n }\r\n\r\n showSpinner() {\r\n return !this.files;\r\n }\r\n\r\n uploadUrl(url: string) {\r\n if (url) {\r\n this.urlForUpload.emit(url);\r\n this.cleanUpload();\r\n }\r\n }\r\n\r\n handleFileInput(files: FileList) {\r\n this._uploadService.changeFilesList(files);\r\n }\r\n\r\n cleanUpload() {\r\n this.showUploadFile = false;\r\n this.showUploadUrl = false;\r\n }\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class ZoomService {\r\n private _observer: Subject = new Subject();\r\n private readonly _zoomChange: Observable = this._observer.asObservable();\r\n private _zoom: number;\r\n\r\n constructor() {\r\n }\r\n\r\n get zoom(): number {\r\n return this._zoom;\r\n }\r\n\r\n get zoomChange(): Observable {\r\n return this._zoomChange;\r\n }\r\n\r\n changeZoom(zoom: number) {\r\n this._zoom = zoom;\r\n this._observer.next(zoom);\r\n }\r\n\r\n private createZoomOption(val: any, name: string, sep: boolean = false) {\r\n return {value: val, name: name, separator: sep}\r\n }\r\n\r\n zoomOptions(width, height) {\r\n return [this.createZoomOption(25, '25%'),\r\n this.createZoomOption(50, '50%'),\r\n this.createZoomOption(100,'100%'),\r\n this.createZoomOption(150, '150%'),\r\n this.createZoomOption(200, '200%'),\r\n this.createZoomOption(300, '300%'),\r\n this.createZoomOption(0, '', true),\r\n this.createZoomOption(width, 'Fit Width'),\r\n this.createZoomOption(height, 'Fit Height')];\r\n }\r\n}\r\n","import {Observable, Observer} from \"rxjs\";\r\n\r\nexport class PagePreloadService {\r\n private readonly _checkPreload: Observable;\r\n private _observer: Observer;\r\n\r\n constructor() {\r\n this._checkPreload = new Observable(observer =>\r\n this._observer = observer);\r\n }\r\n\r\n get checkPreload(): Observable {\r\n return this._checkPreload;\r\n }\r\n\r\n changeLastPageInView(page: number) {\r\n if(this._observer) {\r\n this._observer.next(page);\r\n }\r\n }\r\n}\r\n","import {BehaviorSubject, Observable} from \"rxjs\";\r\nimport {PagePreloadService} from \"./page-preload.service\";\r\nimport {Injectable} from \"@angular/core\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NavigateService {\r\n private _currentPage = 0;\r\n private _countPages = 0;\r\n private _observer: BehaviorSubject = new BehaviorSubject(null);\r\n private _navigate: Observable = this._observer.asObservable();\r\n\r\n constructor(private _pagePreloadService: PagePreloadService) {\r\n }\r\n\r\n get navigate(): Observable {\r\n return this._navigate;\r\n }\r\n\r\n get countPages(): number {\r\n return this._countPages;\r\n }\r\n\r\n set countPages(value: number) {\r\n this._countPages = value;\r\n }\r\n\r\n get currentPage(): number {\r\n return this._currentPage;\r\n }\r\n\r\n set currentPage(value: number) {\r\n this._currentPage = value;\r\n }\r\n\r\n nextPage() {\r\n if (this._currentPage < this._countPages) {\r\n this._currentPage++;\r\n this.navigateTo(this._currentPage);\r\n }\r\n }\r\n\r\n prevPage() {\r\n if (this._currentPage > 1) {\r\n this._currentPage--;\r\n this.navigateTo(this._currentPage);\r\n }\r\n }\r\n\r\n toLastPage() {\r\n this._currentPage = this._countPages;\r\n this.navigateTo(this._currentPage);\r\n }\r\n\r\n toFirstPage() {\r\n this._currentPage = 1;\r\n this.navigateTo(this._currentPage);\r\n }\r\n\r\n navigateTo(page: number) {\r\n this.currentPage = page;\r\n this._pagePreloadService.changeLastPageInView(page);\r\n this._observer.next(page);\r\n }\r\n}\r\n","import {\r\n AfterViewChecked,\r\n Component,\r\n ElementRef,\r\n Input,\r\n OnInit,\r\n AfterViewInit,\r\n OnChanges,\r\n Output,\r\n EventEmitter\r\n} from '@angular/core';\r\nimport {FileDescription, FileUtil} from \"../file.service\";\r\nimport {ZoomService} from \"../zoom.service\";\r\nimport * as Hammer from 'hammerjs';\r\nimport {WindowService} from '../window.service';\r\nimport * as jquery from 'jquery';\r\nimport { NavigateService } from '../navigate.service';\r\n\r\nconst $ = jquery;\r\n\r\n@Component({\r\n selector: 'gd-document',\r\n templateUrl: './document.component.html',\r\n styleUrls: ['./document.component.less']\r\n})\r\nexport class DocumentComponent implements OnInit, AfterViewChecked, AfterViewInit, OnChanges {\r\n\r\n @Input() mode: boolean;\r\n @Input() preloadPageCount: number;\r\n @Input() file: FileDescription;\r\n @Input() selectedPage: number;\r\n wait = false;\r\n zoom: number;\r\n\r\n docWidth = null;\r\n docHeight = null;\r\n viewportWidth = null;\r\n viewportHeight = null;\r\n scale = null;\r\n lastScale = null;\r\n container = null;\r\n doc = null;\r\n x = 0;\r\n lastX = 0;\r\n y = 0;\r\n lastY = 0;\r\n pinchCenter = null;\r\n pinchCenterOffset = null;\r\n curWidth = 0;\r\n curHeight = 0;\r\n isDesktop: boolean;\r\n\r\n constructor(protected _elementRef: ElementRef,\r\n private _zoomService: ZoomService,\r\n private _windowService: WindowService,\r\n private _navigateService: NavigateService,) {\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n this.zoom = val;\r\n });\r\n\r\n this.isDesktop = _windowService.isDesktop();\r\n\r\n this._navigateService.navigate.subscribe(((\r\n value => {\r\n this.selectedPage = value;\r\n })));\r\n }\r\n\r\n ngOnInit() {\r\n if (this.ifPresentation())\r\n {\r\n this.selectedPage = this._navigateService.currentPage;\r\n }\r\n }\r\n\r\n ngOnChanges() {\r\n }\r\n\r\n ngAfterViewInit() {\r\n // For current iteration we take .panzoom as a document\r\n this.doc = this._elementRef.nativeElement.children.item(0).children.item(0);\r\n // For current iteration we take .gd-document as a container\r\n this.container = this._elementRef.nativeElement;\r\n\r\n this.docWidth = this.doc.clientWidth;\r\n this.docHeight = this.doc.clientHeight;\r\n this.viewportWidth = this.doc.offsetWidth;\r\n\r\n // For cases where we already have zoom defined we should include it\r\n this.scale = (this.viewportWidth / this.docWidth) * this._zoomService.zoom / 100;\r\n\r\n this.lastScale = this.scale;\r\n this.viewportHeight = this.container.offsetHeight;\r\n this.curWidth = this.docWidth * this.scale;\r\n this.curHeight = this.docHeight * this.scale;\r\n\r\n const hammer = new Hammer(this.container);\r\n }\r\n\r\n // TODO: this temporary crutch for Excel files should be documented\r\n ifExcel() {\r\n return FileUtil.find(this.file.guid, false).format === \"Microsoft Excel\";\r\n }\r\n\r\n ifPresentation() {\r\n return FileUtil.find(this.file.guid, false).format === \"Microsoft PowerPoint\";\r\n }\r\n\r\n getDimensionWithUnit(value: number, pageNumber: number) {\r\n return this.ifPresentation() && !this.isVisible(pageNumber) ? 0 : value + (this.mode ? FileUtil.find(this.file.guid, false).unit : 'px');\r\n }\r\n\r\n ifEdge() {\r\n return navigator.userAgent.toLowerCase().indexOf('edge') > -1;\r\n }\r\n\r\n ngAfterViewChecked(): void {\r\n const elementNodeListOf = this._elementRef.nativeElement.querySelectorAll('.gd-wrapper');\r\n const element = elementNodeListOf.item(0);\r\n if (element) {\r\n $(element).trigger('focus');\r\n }\r\n }\r\n\r\n isVisible(pageNumber) {\r\n if (this.ifPresentation()) {\r\n return pageNumber === this.selectedPage ? true : false;\r\n }\r\n else {\r\n return true;\r\n }\r\n }\r\n}\r\n","import {Component, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-page',\r\n templateUrl: './page.component.html',\r\n styleUrls: ['./page.component.less']\r\n})\r\nexport class PageComponent implements OnInit, OnChanges {\r\n\r\n @Input() angle: number;\r\n @Input() width: number;\r\n @Input() height: number;\r\n @Input() number: number;\r\n @Input() data: string;\r\n @Input() isHtml: boolean;\r\n @Input() editable: boolean;\r\n imgData: string;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n const isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\r\n if(isIE && this.number === 0){\r\n this.editable = false;\r\n }\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n // TODO: this is temporary needed to remove unneeded spaces and BOM symbol \r\n // which leads to undesired spaces on the top of the docs pages\r\n this.data = this.data !== null ? this.data.replace(/>\\s+<')\r\n .replace(/\\uFEFF/g,\"\")\r\n .replace(/href=\"\\/viewer/g, 'href=\"http://localhost:8080/viewer')\r\n .replace(/src=\"\\/viewer/g, 'src=\"http://localhost:8080/viewer')\r\n .replace(/data=\"\\/viewer/g, 'data=\"http://localhost:8080/viewer')\r\n : null;\r\n const dataImagePngBase64 = 'data:image/png;base64,';\r\n this.imgData = dataImagePngBase64;\r\n if (!this.isHtml) {\r\n this.imgData += this.data;\r\n }\r\n }\r\n}\r\n","import {Pipe, PipeTransform} from '@angular/core';\r\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\r\n\r\n@Pipe({name: 'safeHtml'})\r\nexport class SanitizeHtmlPipe implements PipeTransform{\r\n constructor(private sanitizer: DomSanitizer) {\r\n }\r\n\r\n transform(html: string): SafeHtml {\r\n return this.sanitizer.bypassSecurityTrustHtml(html);\r\n }\r\n}\r\n\r\n@Pipe({name: 'safeResourceHtml'})\r\nexport class SanitizeResourceHtmlPipe implements PipeTransform{\r\n constructor(private sanitizer: DomSanitizer) {\r\n }\r\n\r\n transform(html: string): SafeHtml {\r\n return this.sanitizer.bypassSecurityTrustResourceUrl(html);\r\n }\r\n}\r\n\r\n@Pipe({name: 'safeStyle'})\r\nexport class SanitizeStylePipe implements PipeTransform{\r\n constructor(private sanitizer: DomSanitizer) {\r\n }\r\n\r\n transform(html: string): SafeHtml {\r\n return this.sanitizer.bypassSecurityTrustStyle(html);\r\n }\r\n}\r\n\r\n@Pipe({name: 'highlight'})\r\nexport class HighlightSearchPipe implements PipeTransform {\r\n\r\n transform(value: string, args: string): any {\r\n if (!args) {\r\n return value;\r\n }\r\n const re = new RegExp(args, 'gi'); //'gi' for case insensitive and can use 'g' if you want the search to be case sensitive.\r\n return value.replace(re, \"$&\");\r\n }\r\n}\r\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\r\nimport {UploadFilesService} from \"../upload-files.service\";\r\n\r\n@Component({\r\n selector: 'gd-upload-file-zone',\r\n templateUrl: './upload-file-zone.component.html',\r\n styleUrls: ['./upload-file-zone.component.less']\r\n})\r\nexport class UploadFileZoneComponent implements OnInit {\r\n\r\n @Output() closeUpload = new EventEmitter();\r\n\r\n constructor(private _uploadService: UploadFilesService) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n handleFileInput(files: FileList) {\r\n this._uploadService.changeFilesList(files);\r\n this.onCloseUpload();\r\n }\r\n\r\n onCloseUpload() {\r\n this.closeUpload.emit(true);\r\n }\r\n\r\n close($event) {\r\n if ($event.target.id === 'gd-dropZone') {\r\n this.onCloseUpload();\r\n }\r\n }\r\n}\r\n","import {Directive, EventEmitter, HostBinding, HostListener, Input, Output} from '@angular/core';\r\nimport {UploadFilesService} from \"./upload-files.service\";\r\n\r\n@Directive({\r\n selector: '[gdDnd]'\r\n})\r\nexport class DndDirective {\r\n\r\n @Output() closing = new EventEmitter();\r\n @Output() opening = new EventEmitter();\r\n @Output() dropped = new EventEmitter();\r\n\r\n @HostBinding('class.active') active = false;\r\n\r\n private dragCounter = 0;\r\n\r\n constructor(protected _uploadFilesService: UploadFilesService) {\r\n }\r\n\r\n @HostListener('dragenter', ['$event'])\r\n public onDragEnter(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.dragCounter++;\r\n this.active = true;\r\n this.opening.emit(true);\r\n }\r\n\r\n @HostListener('dragover', ['$event'])\r\n public onDragOver(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n return false;\r\n }\r\n\r\n @HostListener('dragleave', ['$event'])\r\n public onDragLeave(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.dragCounter--;\r\n if (this.dragCounter === 0) {\r\n this.active = false;\r\n this.closeArea();\r\n }\r\n }\r\n\r\n @HostListener('drop', ['$event'])\r\n public onDrop(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n const files = evt.dataTransfer.files;\r\n if (files.length > 0) {\r\n this.active = false;\r\n this.dropped.emit(true);\r\n this._uploadFilesService.changeFilesList(files);\r\n this.closeArea();\r\n }\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n public onClick(event) {\r\n this.closeArea();\r\n }\r\n\r\n private closeArea() {\r\n this.closing.emit(true);\r\n this.opening.emit(false);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ViewportService {\r\n\r\n constructor() {\r\n }\r\n\r\n checkInViewport(el, zoom: number = 100, leftOffset: number = 0, deltaX: number = 0.5) {\r\n if (!el) {\r\n return false;\r\n }\r\n const x = deltaX;\r\n const y = 0.5;\r\n\r\n const win = $(window);\r\n\r\n const viewport = {\r\n top: win.scrollTop(),\r\n left: win.scrollLeft() + leftOffset,\r\n right: win.scrollLeft() + win.width() - 10,\r\n bottom: win.scrollTop() + win.height()\r\n };\r\n\r\n\r\n if (isNaN(zoom)) {\r\n zoom = 100;\r\n }\r\n\r\n const zoomN = zoom / 100;\r\n const height = $(el).outerHeight() * (zoomN);\r\n const width = $(el).outerWidth() * (zoomN);\r\n\r\n if (!width || !height) {\r\n return false;\r\n }\r\n\r\n const bounds = $(el).offset();\r\n const right = (bounds.left * (zoomN)) + width;\r\n const bottom = (bounds.top * (zoomN)) + height;\r\n\r\n const visible = (!(viewport.right < (bounds.left * (zoomN)) || viewport.left > right || viewport.bottom < (bounds.top * (zoomN)) || viewport.top > bottom));\r\n\r\n if (!visible) {\r\n return false;\r\n }\r\n\r\n const deltas = {\r\n top: parseFloat(Math.min(1, (bottom - viewport.top) / height).toFixed(2)),\r\n bottom: parseFloat(Math.min(1, (viewport.bottom - (bounds.top * (zoomN))) / height).toFixed(2)),\r\n left: parseFloat(Math.min(1, (right - viewport.left) / width).toFixed(2)),\r\n right: parseFloat(Math.min(1, (viewport.right - (bounds.left * (zoomN))) / width).toFixed(2))\r\n };\r\n\r\n return (deltas.left * deltas.right) >= x && (deltas.top * deltas.bottom) >= y;\r\n }\r\n}\r\n","import {\r\n AfterViewInit,\r\n Directive,\r\n ElementRef,\r\n HostListener,\r\n Input,\r\n OnChanges,\r\n OnInit,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport {NavigateService} from \"./navigate.service\";\r\nimport {PagePreloadService} from \"./page-preload.service\";\r\nimport {ZoomService} from \"./zoom.service\";\r\nimport {WindowService} from \"./window.service\";\r\nimport {ViewportService} from \"./viewport.service\";\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\n@Directive({\r\n selector: '[gdScrollable]'\r\n})\r\nexport class ScrollableDirective implements AfterViewInit, OnChanges, OnInit {\r\n\r\n private currentPage: number;\r\n private zoom = 100;\r\n private loadedPagesSet = new Set();\r\n\r\n constructor(private _elementRef: ElementRef,\r\n private _navigateService: NavigateService,\r\n private _pagePreloadService: PagePreloadService,\r\n private _zoomService: ZoomService,\r\n private _windowService: WindowService,\r\n private _viewportService: ViewportService) {\r\n\r\n this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom;\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n this.zoom = val ? val : this.zoom;\r\n this.refresh();\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom;\r\n this._navigateService.navigate.subscribe((value => {\r\n this.currentPage = value;\r\n this.scrollToPage(value);\r\n }));\r\n this.refresh();\r\n }\r\n\r\n @HostListener('scroll') scrolling() {\r\n this.refresh();\r\n }\r\n\r\n @HostListener('window:resize') resizing() {\r\n this.refresh();\r\n }\r\n\r\n scrollToPage(pageNumber: number) {\r\n const el = this._elementRef.nativeElement;\r\n const page = this.getPage(pageNumber);\r\n const prev = pageNumber > 0 ? this.getPage(pageNumber - 1) : null;\r\n const isSameTop = (prev && $(prev).offset().top === $(page).offset().top);\r\n if (this._viewportService.checkInViewport(page, this.zoom) && isSameTop) {\r\n return;\r\n }\r\n const pagesHeight = this.calculateOffset(pageNumber);\r\n const options = {\r\n left: 0,\r\n top: pagesHeight\r\n };\r\n if(el){\r\n // using polyfill\r\n el.scroll(options);\r\n }\r\n }\r\n\r\n private getChildren() {\r\n const el = this._elementRef ? this._elementRef.nativeElement : null;\r\n if (el) {\r\n // here and in the similar line below we getting the document pages\r\n return el.children.item(0).children.item(0).children;\r\n }\r\n }\r\n\r\n private getPage(pageNumber: number) {\r\n const el = this._elementRef ? this._elementRef.nativeElement : null;\r\n if (el) {\r\n return el.children.item(0).children.item(0).children.item(pageNumber - 1);\r\n }\r\n }\r\n\r\n private calculateOffset(pageNumber: number) {\r\n const count = this._windowService.isFirefox() ? 1 : this.countPagesOnWidth();\r\n const margin = this._windowService.isDesktop() ? 40 : 10;\r\n let pagesHeight = 0;\r\n for (let i = 1; i < pageNumber / count; i++) {\r\n const item = this.getPage(i);\r\n const clientHeight = item ? item.clientHeight : 0;\r\n pagesHeight += clientHeight > 0 ? clientHeight * this.getZoom() + margin : 0;\r\n }\r\n return pagesHeight;\r\n }\r\n\r\n private countPagesOnWidth() {\r\n const pageEl = this.getPage(1);\r\n const offset = 150;\r\n const count = Math.floor((this.getWidth() - offset) / (pageEl.getBoundingClientRect().width * this.getZoom()));\r\n return count === 0 ? 1 : count;\r\n }\r\n\r\n refresh() {\r\n let page;\r\n let currentPageSet = false;\r\n const pageElem = this.getPage(this.currentPage);\r\n const currentPageRect = this.currentPage && pageElem ? pageElem.getBoundingClientRect() : null;\r\n for (page = 1; page < this.getChildren().length + 1; page++) {\r\n const element = this.getPage(page);\r\n if (this._viewportService.checkInViewport(element, this.zoom)) {\r\n if (!currentPageSet) {\r\n if (!this.currentPage || !pageElem || (this.currentPage && currentPageRect && element.getBoundingClientRect().top !== currentPageRect.top)) {\r\n this.currentPage = page;\r\n if (this._navigateService.currentPage === 0) {\r\n this._navigateService.currentPage = page;\r\n }\r\n }\r\n currentPageSet = true;\r\n }\r\n if (!this.loadedPagesSet.has(page)) {\r\n this._pagePreloadService.changeLastPageInView(page);\r\n this.loadedPagesSet.add(page);\r\n }\r\n }\r\n }\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.refresh();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom;\r\n }\r\n\r\n\r\n private getWidth() {\r\n return this._elementRef ? this._elementRef.nativeElement.offsetWidth : window.innerWidth;\r\n }\r\n\r\n private getZoom() {\r\n return this.zoom / 100;\r\n }\r\n}\r\n","import {\r\n Directive,\r\n EventEmitter,\r\n HostListener,\r\n Output} from '@angular/core';\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\n@Directive({\r\n selector: '[gdMouseWheel]'\r\n})\r\nexport class MouseWheelDirective {\r\n @Output() mouseWheelUp = new EventEmitter();\r\n @Output() mouseWheelDown = new EventEmitter();\r\n\r\n @HostListener('mousewheel', ['$event']) onMouseWheelChrome(event: any) {\r\n this.mouseWheelFunc(event);\r\n }\r\n\r\n @HostListener('DOMMouseScroll', ['$event']) onMouseWheelFirefox(event: any) {\r\n this.mouseWheelFunc(event);\r\n }\r\n\r\n @HostListener('onmousewheel', ['$event']) onMouseWheelIE(event: any) {\r\n this.mouseWheelFunc(event);\r\n }\r\n\r\n mouseWheelFunc(event: any) {\r\n event = window.event ;\r\n const delta = Math.max(-1, Math.min(1, (event.wheelDelta || -event.detail)));\r\n if(delta > 0) {\r\n this.mouseWheelUp.emit(event);\r\n } else if(delta < 0) {\r\n this.mouseWheelDown.emit(event);\r\n }\r\n }\r\n}\r\n","import {AfterViewInit, Directive, HostBinding, Input, OnDestroy, OnInit, ElementRef, OnChanges} from '@angular/core';\r\nimport {ZoomService} from \"./zoom.service\";\r\nimport {FileUtil} from \"./file.service\";\r\nimport { WindowService } from './window.service';\r\n\r\n@Directive({\r\n selector: '[gdZoom]'\r\n})\r\nexport class ZoomDirective implements OnInit, OnDestroy, AfterViewInit, OnChanges {\r\n\r\n @Input() zoomActive = true;\r\n @Input() file;\r\n\r\n @HostBinding('style.zoom') zoomInt: number;\r\n @HostBinding('style.transform') transform: string;\r\n @HostBinding('style.transform-origin') transformOrigin: string;\r\n @HostBinding('style.width') width: string;\r\n @HostBinding('style.height') height: string;\r\n @HostBinding('style.min-width') minWidth: string;\r\n el: ElementRef;\r\n\r\n constructor(private _zoomService: ZoomService, private _windowService: WindowService, el: ElementRef) {\r\n this.el = el;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n }\r\n\r\n ngOnChanges(): void {\r\n this.setStyles(this._zoomService.zoom);\r\n this.resizePages(this._zoomService.zoom);\r\n }\r\n\r\n ngOnInit(): void {\r\n if (! this.zoomActive) {\r\n return;\r\n }\r\n\r\n this.setStyles(this._zoomService.zoom);\r\n this._zoomService.zoomChange.subscribe((zoom) => {\r\n this.setStyles(zoom);\r\n this.resizePages(zoom);\r\n });\r\n }\r\n\r\n private setStyles(zoom) {\r\n if (! this.zoomActive) {\r\n return;\r\n }\r\n\r\n const zoomInt = zoom === 100 ? 1 : zoom / 100;\r\n \r\n if (this._windowService.isEdge()) {\r\n this.zoomInt = zoomInt;\r\n }\r\n else {\r\n this.zoomInt = null;\r\n }\r\n \r\n if (!this._windowService.isEdge()) {\r\n this.transform = 'scale(' + zoomInt + ')';\r\n this.transformOrigin = 'top left';\r\n }\r\n else {\r\n this.transform = \"\";\r\n this.transformOrigin = \"\";\r\n }\r\n\r\n let maxWidth = 0;\r\n this.file.pages.forEach(page => {\r\n {\r\n if (page.width > maxWidth){\r\n maxWidth = page.width;\r\n }\r\n }\r\n });\r\n\r\n // Images and Excel-related files receiving dimensions in px from server\r\n this.minWidth = maxWidth + FileUtil.find(this.file.guid, false).unit;\r\n }\r\n\r\n private getScrollWidth(elm){\r\n return elm.offsetWidth - elm.clientWidth;\r\n }\r\n\r\n private getScrollHeight(elm){\r\n return elm.offsetHeight - elm.clientHeight;\r\n }\r\n\r\n private resizePages(zoom){\r\n const zoomInt = zoom === 100 ? 1 : zoom / 100;\r\n\r\n const viewPortWidth = this.el.nativeElement.parentElement.offsetWidth;\r\n const viewPortHeight = this.el.nativeElement.parentElement.offsetHeight;\r\n const scrollWidth = this.getScrollWidth(this.el.nativeElement.parentElement);\r\n const scrollHeight = this.getScrollHeight(this.el.nativeElement.parentElement);\r\n this.width = (viewPortWidth/zoomInt - scrollWidth/zoomInt) + 'px';\r\n this.height = (viewPortHeight/zoomInt - scrollHeight/zoomInt) + 'px';\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.setStyles(this._zoomService.zoom);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Observable, Subject} from \"rxjs\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OnCloseService {\r\n private _observer: Subject = new Subject();\r\n private readonly _onClose: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get onClose() {\r\n return this._onClose;\r\n }\r\n\r\n close(close: boolean) {\r\n this._observer.next(close)\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\r\nimport {OnCloseService} from \"../on-close.service\";\r\n\r\nexport interface Option {\r\n name: string;\r\n value: any;\r\n separator: boolean;\r\n}\r\n\r\n@Component({\r\n selector: 'gd-select',\r\n templateUrl: './select.component.html',\r\n styleUrls: ['./select.component.less']\r\n})\r\nexport class SelectComponent {\r\n\r\n @Input() options: Option[];\r\n @Input() disabled = false;\r\n @Input() showSelected: Option;\r\n @Output() selected: EventEmitter = new EventEmitter();\r\n @Input() isOpen = false;\r\n @Input() icon: string;\r\n\r\n constructor(protected _onCloseService: OnCloseService) {\r\n _onCloseService.onClose.subscribe(() => {\r\n this.close();\r\n });\r\n }\r\n\r\n open() {\r\n if (!this.disabled) {\r\n this.isOpen = true;\r\n }\r\n }\r\n\r\n close() {\r\n this.isOpen = false;\r\n }\r\n\r\n onClickOutside(event : Event){\r\n this.close();\r\n }\r\n\r\n toggle($event) {\r\n // TODO: following lines were uncommented due to needness in signature app\r\n $event.preventDefault();\r\n $event.stopPropagation();\r\n if (!this.disabled) {\r\n this.isOpen = !this.isOpen;\r\n }\r\n }\r\n\r\n select($event, value: Option) {\r\n $event.preventDefault();\r\n $event.stopPropagation();\r\n this.selected.emit(value);\r\n this.close();\r\n }\r\n}\r\n","import {Directive, HostBinding, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[gdDisabledCursor]'\r\n})\r\nexport class DisabledCursorDirective implements OnInit, OnChanges {\r\n\r\n @Input() dis: boolean;\r\n\r\n constructor() {\r\n }\r\n\r\n @HostBinding('class.inactive') cursor: boolean;\r\n\r\n private updateCursor() {\r\n this.cursor = this.dis ? true : false;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.updateCursor();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.updateCursor()\r\n }\r\n}\r\n","import {Directive, HostBinding, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[gdRotation]'\r\n})\r\nexport class RotationDirective implements OnInit, OnChanges {\r\n\r\n @Input() angle: number;\r\n @Input() isHtmlMode: boolean;\r\n @Input() width: number;\r\n @Input() height: number;\r\n @Input() withMargin = true;\r\n\r\n @HostBinding('style.animation') animation: string;\r\n @HostBinding('style.transition-property') transition: string;\r\n @HostBinding('style.transform') transform: string;\r\n\r\n @HostBinding('style.margin') margin: string;\r\n\r\n constructor() {\r\n }\r\n\r\n private updateCursor() {\r\n if (typeof this.angle === \"string\"){\r\n this.angle = parseInt(this.angle, 10);\r\n }\r\n\r\n if (this.angle) {\r\n this.animation = 'none';\r\n this.transition = 'none';\r\n this.transform = 'rotate(' + this.angle + 'deg)';\r\n } else if (this.angle === 0 && this.animation) {\r\n this.animation = null;\r\n this.transition = null;\r\n this.transform = null;\r\n }\r\n\r\n if (this.withMargin) {\r\n if (this.angle === 90 || this.angle === 270 || this.angle === -90 || this.angle === -270) {\r\n if (this.isHtmlMode) {\r\n if (this.isLandscape()) {\r\n this.margin = '164px 254px';\r\n } else {\r\n this.margin = '-111px 254px';\r\n }\r\n } else {\r\n if (this.isLandscape()) {\r\n this.margin = '129px 100px -79px';\r\n } else {\r\n this.margin = '-72px 100px -79px';\r\n }\r\n }\r\n } else if (this.angle === -180 || this.angle === 180) {\r\n this.margin = '280px';\r\n } else {\r\n this.margin = null;\r\n }\r\n }\r\n\r\n }\r\n\r\n isLandscape() {\r\n return this.width > this.height;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.updateCursor();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.updateCursor()\r\n }\r\n\r\n}\r\n","import {Component, Input, Output, EventEmitter, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-init-state',\r\n templateUrl: './init-state.component.html',\r\n styleUrls: ['./init-state.component.less']\r\n})\r\nexport class InitStateComponent implements OnInit {\r\n @Input() icon: string;\r\n @Input() text: string;\r\n @Output() fileDropped = new EventEmitter();\r\n showUploadFile = false;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n dropped($event) {\r\n if ($event) {\r\n this.fileDropped.emit($event);\r\n this.showUploadFile = false;\r\n }\r\n }\r\n}\r\n","import {Observable, Observer} from \"rxjs\";\r\nimport {PageModel} from \"./file.service\";\r\n\r\nexport class RenderPrintService {\r\n private _render: Observable;\r\n private _observer: Observer;\r\n private _renderBlob: Observable;\r\n private _observerBlob: Observer;\r\n\r\n constructor() {\r\n this._render = new Observable(observer =>\r\n this._observer = observer);\r\n this._renderBlob = new Observable(observer =>\r\n this._observerBlob = observer);\r\n }\r\n\r\n get renderPrint(): Observable {\r\n return this._render;\r\n }\r\n\r\n changePages(pages: PageModel[]) {\r\n this._observer.next(pages);\r\n }\r\n\r\n get renderPrintBlob(): Observable {\r\n return this._renderBlob;\r\n }\r\n\r\n changeBlob(file: Blob) {\r\n this._observerBlob.next(file);\r\n }\r\n}\r\n","import {Directive, Input} from '@angular/core';\r\nimport {PageModel} from \"./file.service\";\r\nimport {RenderPrintService} from \"./render-print.service\";\r\n\r\n@Directive({\r\n selector: '[gdRenderPrint]'\r\n})\r\nexport class RenderPrintDirective {\r\n @Input() htmlMode: boolean;\r\n\r\n constructor(private _renderService: RenderPrintService) {\r\n _renderService.renderPrint.subscribe(pages => {\r\n this.renderPrint(pages);\r\n });\r\n _renderService.renderPrintBlob.subscribe(file => {\r\n this.renderPrintBlob(file);\r\n });\r\n }\r\n\r\n private renderPrint(pages: PageModel[]) {\r\n let pagesHtml = '';\r\n\r\n for (const page of pages) {\r\n pagesHtml += '
' +\r\n '
' +\r\n '
';\r\n }\r\n\r\n this.openWindow(pagesHtml, pages[0].width, pages[0].height);\r\n }\r\n\r\n private openWindow(pagesHtml, width, height) {\r\n const a4Height = 842;\r\n const a4Width = 595;\r\n let imageA4Adjusted = '';\r\n if(width > a4Width && height > a4Height){\r\n const zoom = Math.round(height / a4Height) / 100;\r\n imageA4Adjusted = '.gd-page img { width: 100%; margin: 0; padding: 0;}';\r\n if(navigator.userAgent.toLowerCase().indexOf('firefox') > -1){\r\n imageA4Adjusted = '.gd-page img { transform: scale(' + zoom + ');}';\r\n }\r\n }\r\n let cssPrint = '';\r\n\r\n const windowObject = window.open('', \"PrintWindow\", \"width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes\");\r\n windowObject.focus();\r\n windowObject.document.writeln(cssPrint);\r\n windowObject.document.writeln(pagesHtml);\r\n windowObject.document.close();\r\n setTimeout(() => {\r\n windowObject.focus();\r\n windowObject.print();\r\n windowObject.close();\r\n }, 100);\r\n }\r\n\r\n private renderPrintBlob(file: Blob) {\r\n const fileURL = URL.createObjectURL(file);\r\n const windowObject = window.open(fileURL, \"PrintWindow\", \"width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes\");\r\n windowObject.focus();\r\n windowObject.print();\r\n windowObject.close();\r\n }\r\n}\r\n","import {BehaviorSubject, Observable} from \"rxjs\";\r\n\r\nexport class ExceptionMessageService {\r\n private _observer: BehaviorSubject = new BehaviorSubject('Server is not available');\r\n private _messageChange: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get messageChange(): Observable {\r\n return this._messageChange;\r\n }\r\n\r\n changeMessage(message: string) {\r\n this._observer.next(message);\r\n }\r\n}\r\n","import {Component, OnInit} from '@angular/core';\r\nimport {ExceptionMessageService} from \"../exception-message.service\";\r\n\r\n@Component({\r\n selector: 'gd-error-modal',\r\n templateUrl: './error-modal.component.html',\r\n styleUrls: ['./error-modal.component.less']\r\n})\r\nexport class ErrorModalComponent implements OnInit {\r\n\r\n message: string;\r\n\r\n constructor(messageService: ExceptionMessageService) {\r\n messageService.messageChange.subscribe(message => this.message = message);\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class PasswordService {\r\n private _observer: Subject = new Subject();\r\n private readonly _passChange: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get passChange(): Observable {\r\n return this._passChange;\r\n }\r\n\r\n setPassword(pass: string) {\r\n this._observer.next(pass);\r\n }\r\n}\r\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\r\nimport {ExceptionMessageService} from \"../exception-message.service\";\r\nimport {PasswordService} from \"../password.service\";\r\nimport * as jquery from \"jquery\";\r\n\r\nconst $ = jquery;\r\n\r\n@Component({\r\n selector: 'gd-password-required',\r\n templateUrl: './password-required.component.html',\r\n styleUrls: ['./password-required.component.less']\r\n})\r\nexport class PasswordRequiredComponent implements OnInit {\r\n message: string;\r\n @Output() cancelEvent = new EventEmitter();\r\n\r\n constructor(messageService: ExceptionMessageService, private _passwordService: PasswordService) {\r\n messageService.messageChange.subscribe(message => this.message = message);\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n setPassword(value: string) {\r\n this._passwordService.setPassword(value);\r\n }\r\n\r\n onCloseOpen($event: boolean) {\r\n if ($event) {\r\n setTimeout(() => {\r\n const element = $(\"#password\");\r\n if (element) {\r\n element.focus();\r\n }\r\n }, 100);\r\n } else {\r\n $(\"#password\").val(\"\");\r\n }\r\n }\r\n\r\n cancel($event: boolean) {\r\n $(\"#password\").val(\"\");\r\n this.cancelEvent.emit(true);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from \"@angular/common/http\";\r\nimport {Observable, throwError} from \"rxjs\";\r\nimport {catchError, map} from \"rxjs/operators\";\r\nimport {ExceptionMessageService} from \"./exception-message.service\";\r\nimport {HttpError} from \"./file.service\";\r\nimport {CommonModals, ModalService} from \"./modal.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ErrorInterceptorService implements HttpInterceptor {\r\n\r\n constructor(private _modalService: ModalService, private _messageService: ExceptionMessageService) {\r\n }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n const logFormat = 'background: maroon; color: white';\r\n\r\n return next.handle(req)\r\n .pipe(map(data => {\r\n return data;\r\n }),\r\n catchError((exception: HttpEvent) => {\r\n if (exception instanceof HttpErrorResponse) {\r\n switch (exception.status) {\r\n\r\n case HttpError.BadRequest:\r\n console.error('%c Bad Request 400', logFormat);\r\n break;\r\n case HttpError.Unauthorized:\r\n console.error('%c Unauthorized 401', logFormat);\r\n break;\r\n case HttpError.NotFound:\r\n console.error('%c Not Found 404', logFormat);\r\n break;\r\n case HttpError.TimeOut:\r\n console.error('%c TimeOut 408', logFormat);\r\n break;\r\n case HttpError.InternalServerError:\r\n console.error('%c big bad 500', logFormat);\r\n this._messageService.changeMessage(exception.error.message);\r\n this._modalService.open(CommonModals.ErrorMessage);\r\n break;\r\n\r\n case HttpError.Forbidden:\r\n console.error('%c Forbidden 403', logFormat);\r\n this._messageService.changeMessage(exception.error.message);\r\n this._modalService.open(CommonModals.PasswordRequired);\r\n break;\r\n }\r\n }\r\n return throwError(exception);\r\n }));\r\n }\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class SearchService {\r\n private _observer: Subject = new Subject();\r\n private readonly _textChange: Observable = this._observer.asObservable();\r\n\r\n private _observerCurrent: Subject = new Subject();\r\n private readonly _currentChange: Observable = this._observerCurrent.asObservable();\r\n\r\n private _observerTotal: Subject = new Subject();\r\n private readonly _totalChange: Observable = this._observerTotal.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get textChange(): Observable {\r\n return this._textChange;\r\n }\r\n\r\n setText(text: string) {\r\n this._observer.next(text);\r\n }\r\n\r\n get currentChange(): Observable {\r\n return this._currentChange;\r\n }\r\n\r\n get totalChange(): Observable {\r\n return this._totalChange;\r\n }\r\n\r\n setCurrent(current: number) {\r\n this._observerCurrent.next(current);\r\n }\r\n\r\n setTotal(total: number) {\r\n this._observerTotal.next(total);\r\n }\r\n}\r\n","import {AfterViewInit, Component, ElementRef, EventEmitter, OnInit, Output, ViewChild} from '@angular/core';\r\nimport {SearchService} from \"../search.service\";\r\n\r\n@Component({\r\n selector: 'gd-search',\r\n templateUrl: './search.component.html',\r\n styleUrls: ['./search.component.less']\r\n})\r\nexport class SearchComponent implements OnInit, AfterViewInit {\r\n\r\n @Output() hidePanel = new EventEmitter(false);\r\n\r\n current = 0;\r\n total = 0;\r\n\r\n @ViewChild('text',{\r\n static : true\r\n }) textElement: ElementRef;\r\n\r\n constructor(private _searchService: SearchService) {\r\n _searchService.totalChange.subscribe((total: number) => {\r\n this.total = total;\r\n if (total !== 0) {\r\n this.current = 1;\r\n } else {\r\n this.current = 0;\r\n }\r\n this._searchService.setCurrent(this.current);\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n setText(text: string) {\r\n this._searchService.setText(text);\r\n }\r\n\r\n hide() {\r\n this.setText('');\r\n this.hidePanel.emit(true);\r\n }\r\n\r\n prev() {\r\n if (this.current > 1) {\r\n this.current--;\r\n this._searchService.setCurrent(this.current);\r\n }\r\n }\r\n\r\n next() {\r\n if (this.current < this.total) {\r\n this.current++;\r\n this._searchService.setCurrent(this.current);\r\n }\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.textElement.nativeElement.focus();\r\n }\r\n}\r\n","import {Directive, ElementRef} from '@angular/core';\r\nimport {SearchService} from \"./search.service\";\r\nimport {HighlightSearchPipe} from \"./pipes\";\r\nimport {ZoomService} from \"./zoom.service\";\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\n@Directive({\r\n selector: '[gdSearchable]'\r\n})\r\nexport class SearchableDirective {\r\n\r\n text: string;\r\n current = 0;\r\n total = 0;\r\n private zoom = 100;\r\n\r\n constructor(private _elementRef: ElementRef,\r\n private _searchService: SearchService,\r\n private _highlight: HighlightSearchPipe,\r\n private _zoomService: ZoomService) {\r\n _searchService.currentChange.subscribe((current: number) => {\r\n this.current = current;\r\n if (this.current !== 0) {\r\n this.moveToCurrent();\r\n }\r\n });\r\n\r\n _searchService.textChange.subscribe((text: string) => {\r\n this.text = text;\r\n this.highlightSearch();\r\n });\r\n\r\n this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom;\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n this.zoom = val ? val : this.zoom;\r\n });\r\n }\r\n\r\n private highlightSearch() {\r\n const el = this._elementRef ? this._elementRef.nativeElement : null;\r\n if (el) {\r\n this.cleanHighlight(el);\r\n if (this.text) {\r\n this.highlightEl(el);\r\n const count = el.querySelectorAll('.gd-highlight').length;\r\n this.total = count;\r\n } else {\r\n this.total = 0;\r\n }\r\n this._searchService.setTotal(this.total);\r\n }\r\n }\r\n\r\n private moveToCurrent() {\r\n if (this.current === 0) {\r\n return;\r\n }\r\n const currentZoom = this.getZoom();\r\n const el = this._elementRef ? this._elementRef.nativeElement : null;\r\n if (el) {\r\n el.querySelectorAll('.gd-highlight-select').forEach(function (value) {\r\n $(value).removeClass('gd-highlight-select');\r\n });\r\n const currentEl = el.querySelectorAll('.gd-highlight')[this.current - 1];\r\n $(currentEl).addClass('gd-highlight-select');\r\n if (currentEl) {\r\n const options = {\r\n left: 0,\r\n top: ($(currentEl).offset().top) + el.parentElement.parentElement.scrollTop - 150,\r\n };\r\n // using polyfill\r\n el.parentElement.parentElement.scroll(options);\r\n }\r\n }\r\n }\r\n\r\n private highlightEl(el: Element) {\r\n const textNodes = $(el).find('*').contents().filter(function () {\r\n const nodeName = this.parentElement.nodeName.toLowerCase();\r\n const checkClass = (this).classList ? !(this).classList.contains('gd-highlight') : true;\r\n return this.nodeType === 3 &&\r\n this.textContent.trim().length !== 0 &&\r\n nodeName !== 'style' &&\r\n nodeName !== 'title' &&\r\n nodeName !== 'body' &&\r\n nodeName !== 'script' &&\r\n checkClass;\r\n });\r\n const text = this.text;\r\n const highlight = this._highlight;\r\n textNodes.each(function () {\r\n const $this = $(this);\r\n let content = $this.text();\r\n content = highlight.transform(content, text);\r\n $this.replaceWith(content);\r\n });\r\n el.normalize();\r\n }\r\n\r\n private cleanHighlight(el: HTMLElement) {\r\n const nodeListOf = el.querySelectorAll('.gd-highlight');\r\n for (let i = 0; i < nodeListOf.length; i++) {\r\n const element = nodeListOf.item(i);\r\n element.replaceWith((element).innerText);\r\n }\r\n el.normalize();\r\n }\r\n\r\n private getZoom() {\r\n return this.zoom / 100;\r\n }\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-tabbed-toolbars',\r\n templateUrl: './tabbed-toolbars.component.html',\r\n styleUrls: ['./tabbed-toolbars.component.less']\r\n})\r\nexport class TabbedToolbarsComponent implements OnInit {\r\n @Input() logo: string;\r\n @Input() icon: string;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class TabActivatorService {\r\n private _observer: Subject = new Subject();\r\n private readonly _activeTabChange: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get activeTabChange(): Observable {\r\n return this._activeTabChange;\r\n }\r\n\r\n changeActiveTab(tabId: string) {\r\n this._observer.next(tabId);\r\n }\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\nimport {TabActivatorService} from \"../tab-activator.service\";\r\n\r\n@Component({\r\n selector: 'gd-tab',\r\n templateUrl: './tab.component.html',\r\n styleUrls: ['./tab.component.less']\r\n})\r\nexport class TabComponent implements OnInit {\r\n @Input() id: string;\r\n @Input() tabTitle: string;\r\n @Input() icon: string;\r\n @Input() disabled = false;\r\n @Input() active = false;\r\n @Input() content = true;\r\n\r\n constructor(private _tabActivatorService: TabActivatorService) {\r\n this._tabActivatorService.activeTabChange.subscribe((tabId: string) => {\r\n this.activation(tabId);\r\n });\r\n }\r\n\r\n private activation(tabId: string) {\r\n if (this.id === tabId) {\r\n this.active = true;\r\n } else {\r\n this.active = false;\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n selectTab() {\r\n if (this.disabled) {\r\n return;\r\n }\r\n this._tabActivatorService.changeActiveTab(this.id);\r\n }\r\n}\r\n","import {Component} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-tabs',\r\n templateUrl: './tabs.component.html',\r\n styleUrls: ['./tabs.component.less']\r\n})\r\nexport class TabsComponent {\r\n constructor() {\r\n }\r\n\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class Formatting {\r\n constructor(fontSize: number, color: string, bgColor: string, bold: boolean, italic: boolean, underline: boolean, font: string, strikeout: boolean, align: string, list: string) {\r\n this.fontSize = fontSize;\r\n this.color = color;\r\n this.bgColor = bgColor;\r\n this.bold = bold;\r\n this.italic = italic;\r\n this.underline = underline;\r\n this.font = font;\r\n this.strikeout = strikeout;\r\n this.align = align;\r\n this.list = list;\r\n }\r\n\r\n bold: boolean;\r\n italic: boolean;\r\n underline: boolean;\r\n fontSize: number;\r\n color: string;\r\n bgColor: string;\r\n font: string;\r\n strikeout: boolean;\r\n align: string;\r\n list: string;\r\n\r\n public static default(): Formatting {\r\n return new Formatting(10, '#000000', '#FFFFFF', false, false, false, 'Arial', false, \"\", \"\");\r\n }\r\n}\r\n\r\nexport class FormattingService {\r\n private _observerBold: Subject = new Subject();\r\n private readonly _formatBoldChange: Observable = this._observerBold.asObservable();\r\n private _observerUnderline: Subject = new Subject();\r\n private readonly _formatUnderlineChange: Observable = this._observerUnderline.asObservable();\r\n private _observerUndo: Subject = new Subject();\r\n private readonly _undo: Observable = this._observerUndo.asObservable();\r\n private _observerRedo: Subject = new Subject();\r\n private readonly _redo: Observable = this._observerRedo.asObservable();\r\n private _observerItalic: Subject = new Subject();\r\n private readonly _formatItalicChange: Observable = this._observerItalic.asObservable();\r\n private _observerColor: Subject = new Subject();\r\n private readonly _formatColorChange: Observable = this._observerColor.asObservable();\r\n private _observerBgColor: Subject = new Subject();\r\n private readonly _formatBgColorChange: Observable = this._observerBgColor.asObservable();\r\n private _observerFontSize: Subject = new Subject();\r\n private readonly _formatFontSizeChange: Observable = this._observerFontSize.asObservable();\r\n private _observerFont: Subject = new Subject();\r\n private readonly _formatFontChange: Observable = this._observerFont.asObservable();\r\n private _observerStrikeout: Subject = new Subject();\r\n private readonly _formatStrikeoutChange: Observable = this._observerStrikeout.asObservable();\r\n private _observerAlign: Subject = new Subject();\r\n private readonly _formatAlignChange: Observable = this._observerAlign.asObservable();\r\n private _observerList: Subject = new Subject();\r\n private readonly _formatListChange: Observable = this._observerList.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get formatBoldChange() {\r\n return this._formatBoldChange;\r\n }\r\n\r\n get formatUnderlineChange() {\r\n return this._formatUnderlineChange;\r\n }\r\n\r\n get formatColorChange() {\r\n return this._formatColorChange;\r\n }\r\n\r\n get formatBgColorChange() {\r\n return this._formatBgColorChange;\r\n }\r\n\r\n get formatFontSizeChange() {\r\n return this._formatFontSizeChange;\r\n }\r\n\r\n get formatFontChange() {\r\n return this._formatFontChange;\r\n }\r\n\r\n get undo() {\r\n return this._undo;\r\n }\r\n\r\n get redo() {\r\n return this._redo;\r\n }\r\n\r\n get formatItalicChange() {\r\n return this._formatItalicChange;\r\n }\r\n\r\n get formatStrikeoutChange() {\r\n return this._formatStrikeoutChange;\r\n }\r\n\r\n get formatAlignChange() {\r\n return this._formatAlignChange;\r\n }\r\n\r\n get formatListChange() {\r\n return this._formatListChange;\r\n }\r\n\r\n static createFontSizeOption(val: number) {\r\n return {value: val, name: val + 'px', separator: false}\r\n }\r\n\r\n static getFontSizeOptions() {\r\n return [\r\n FormattingService.createFontSizeOption(8),\r\n FormattingService.createFontSizeOption(10),\r\n FormattingService.createFontSizeOption(12),\r\n FormattingService.createFontSizeOption(14),\r\n FormattingService.createFontSizeOption(16),\r\n FormattingService.createFontSizeOption(18),\r\n FormattingService.createFontSizeOption(20),\r\n FormattingService.createFontSizeOption(22),\r\n FormattingService.createFontSizeOption(24),\r\n ];\r\n }\r\n\r\n static createFontOption(val: string) {\r\n return {value: val, name: val, separator: false}\r\n }\r\n\r\n static getFontOptions() {\r\n const fonts = [\"Arial\", \"Calibri\", \"Century Gothic\", \"Comic Sans\", \"Consolas\", \"Courier\", \"Dejavu Sans\", \"Dejavu Serif\", \"Georgia\", \"Gill Sans\", \"Helvetica\", \"Impact\", \"Lucida Sans\",\r\n \"Myriad Pro\", \"Open Sans\", \"Palatino\", \"Tahoma\", \"Times New Roman\", \"Trebuchet\"];\r\n const fontOptions = [];\r\n fonts.forEach(font => {\r\n fontOptions.push(this.createFontOption(font));\r\n })\r\n\r\n return fontOptions;\r\n }\r\n\r\n changeFormatFontSize($event: number) {\r\n this._observerFontSize.next($event);\r\n }\r\n\r\n changeFormatBold(bold: boolean) {\r\n this._observerBold.next(bold);\r\n }\r\n\r\n changeFormatUnderline(underline: boolean) {\r\n this._observerUnderline.next(underline);\r\n }\r\n\r\n Undo() {\r\n this._observerUndo.next();\r\n }\r\n\r\n Redo() {\r\n this._observerRedo.next();\r\n }\r\n\r\n changeFormatItalic(italic: boolean) {\r\n this._observerItalic.next(italic);\r\n }\r\n\r\n changeFormatColor(color: string) {\r\n this._observerColor.next(color);\r\n }\r\n\r\n changeFormatBgColor(bgcolor: string) {\r\n this._observerBgColor.next(bgcolor);\r\n }\r\n\r\n changeFormatFont(font: string) {\r\n this._observerFont.next(font);\r\n }\r\n\r\n changeFormatStrikeout(strikeout: boolean) {\r\n this._observerStrikeout.next(strikeout);\r\n }\r\n\r\n changeFormatAlign(align: string) {\r\n this._observerAlign.next(align);\r\n }\r\n\r\n changeFormatList(list: string) {\r\n this._observerList.next(list);\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\n\r\nconst DEFAULT_COLORS = [\r\n '#000000', '#434343', '#666666', '#999999', '#B7B7B7', '#CCCCCC', '#D9D9D9', '#EFEFEF', '#F3F3F3', '#FFFFFF',\r\n '#980000', '#FF0000', '#FF9900', '#FFFF00', '#00FF00', '#00FFFF', '#4986E8', '#0000FF', '#9900FF', '#FF00FF',\r\n '#E6B8AF', '#F4CCCC', '#FDE5CD', '#FFF2CC', '#D9EAD3', '#D0E0E2', '#C9DAF8', '#CFE2F3', '#D9D2E9', '#EAD1DC',\r\n '#DD7E6B', '#EA9899', '#F9CB9C', '#FFE59A', '#B7D7A8', '#A2C4C9', '#A4C2F4', '#9FC5E8', '#B4A7D7', '#D5A6BD',\r\n '#CC4125', '#E06666', '#F6B26B', '#FFD966', '#92C47D', '#75A5AF', '#6D9EEB', '#6FA9DB', '#8E7CC3', '#C27BA0',\r\n '#A61C00', '#CC0000', '#E69138', '#F2C131', '#6AA84F', '#45818E', '#3C78D8', '#3C85C6', '#674EA7', '#A64D79',\r\n '#85200B', '#990000', '#B45F05', '#BF9000', '#37761D', '#144F5C', '#1254CC', '#0A5394', '#351C75', '#741B47',\r\n '#5B0F00', '#660000', '#783F03', '#7F6000', '#284E13', '#0B343D', '#1B4586', '#063763', '#20124D', '#4C1030',\r\n];\r\n\r\n@Component({\r\n selector: 'gd-color-picker',\r\n templateUrl: './color-picker.component.html',\r\n styleUrls: ['./color-picker.component.less']\r\n})\r\nexport class ColorPickerComponent implements OnInit {\r\n @Input() isOpen = false;\r\n @Output() selectedColor = new EventEmitter();\r\n @Output() closeOutside = new EventEmitter();\r\n colors: any = DEFAULT_COLORS;\r\n white = '#FFFFFF';\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n select($event, color: string) {\r\n $event.preventDefault();\r\n $event.stopPropagation();\r\n this.selectedColor.emit(color);\r\n }\r\n\r\n close() {\r\n this.isOpen = false;\r\n this.closeOutside.emit(true);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {FormattingService} from \"./formatting.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BackFormattingService extends FormattingService {\r\n\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SelectionService {\r\n selection: Range;\r\n isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\r\n\r\n restoreSelection() {\r\n if(this.selection && !this.selection.collapsed || this.isIE){\r\n this.putSelection(this.selection );\r\n }\r\n }\r\n\r\n captureSelection() {\r\n const selection = window.getSelection();\r\n if (selection.rangeCount > 0) {\r\n this.selection = selection.getRangeAt(0);\r\n }\r\n }\r\n\r\n private putSelection(selection) {\r\n const sel = window.getSelection();\r\n sel.removeAllRanges();\r\n sel.addRange(selection.cloneRange());\r\n }\r\n\r\n refreshSelection() {\r\n this.captureSelection();\r\n this.restoreSelection();\r\n }\r\n}\r\n","import {Directive, HostListener, OnInit} from '@angular/core';\r\nimport {FormattingService} from \"./formatting.service\";\r\nimport {BackFormattingService} from \"./back-formatting.service\";\r\nimport * as jquery from 'jquery';\r\nconst $ = jquery;\r\nimport {SelectionService} from './selection.service';\r\n\r\n@Directive({\r\n selector: '[gdFormatting]'\r\n})\r\nexport class FormattingDirective implements OnInit {\r\n\r\n private bold = false;\r\n private italic = false;\r\n private underline = false;\r\n private color: string;\r\n private bgColor: string;\r\n private font: string;\r\n private strikeout = false;\r\n private align: string;\r\n private list: string;\r\n private isIE = false;\r\n\r\n constructor(private _formattingService: FormattingService,\r\n private _backFormattingService: BackFormattingService,\r\n private _selectionService: SelectionService) {\r\n this.isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\r\n }\r\n\r\n @HostListener('mouseup') mouseup() {\r\n\r\n this.bold = document.queryCommandState(\"bold\");\r\n this.strikeout = document.queryCommandState(\"strikeThrough\");\r\n this.italic = document.queryCommandState(\"italic\");\r\n this.bgColor = document.queryCommandValue(\"backColor\");\r\n this.underline = document.queryCommandState(\"underline\");\r\n this.align = this.checkJustify();\r\n this.list = this.checkList();\r\n\r\n //fix required by FireFox to get correct background color\r\n if (this.bgColor === \"transparent\") {\r\n this.bgColor = $(window.getSelection().focusNode.parentNode).css('background-color').toString();\r\n }\r\n this.font = document.queryCommandValue(\"FontName\").replace(/\"/g, '');\r\n if(this.font.split(\",\").length > 1){\r\n this.font = this.font.split(\",\")[0];\r\n }\r\n this.color = document.queryCommandValue(\"foreColor\");\r\n this._backFormattingService.changeFormatBold(this.bold);\r\n this._backFormattingService.changeFormatUnderline(this.underline);\r\n this._backFormattingService.changeFormatItalic(this.italic);\r\n this._backFormattingService.changeFormatColor(this.color);\r\n this._backFormattingService.changeFormatBgColor(this.bgColor);\r\n this._backFormattingService.changeFormatFontSize(this.reportFontSize());\r\n this._backFormattingService.changeFormatFont(this.font);\r\n this._backFormattingService.changeFormatStrikeout(this.strikeout);\r\n this._backFormattingService.changeFormatAlign(this.align);\r\n this._backFormattingService.changeFormatList(this.list);\r\n }\r\n\r\n private checkJustify() {\r\n let align = \"\";\r\n align = document.queryCommandState(\"justifyCenter\") ? \"center\" : align;\r\n align = document.queryCommandState(\"justifyFull\") ? \"full\" : align;\r\n align = document.queryCommandState(\"justifyLeft\") ? \"left\" : align;\r\n align = document.queryCommandState(\"justifyRight\") ? \"right\" : align;\r\n return align;\r\n }\r\n\r\n private checkList() {\r\n let list = \"\";\r\n list = document.queryCommandState(\"insertUnorderedList\") ? \"unordered\" : list;\r\n list = document.queryCommandState(\"insertOrderedList\") ? \"ordered\" : list;\r\n return list;\r\n }\r\n\r\n reportFontSize(): number {\r\n let containerEl, sel;\r\n if (window.getSelection) {\r\n sel = window.getSelection();\r\n if (sel.rangeCount) {\r\n containerEl = sel.getRangeAt(0).commonAncestorContainer;\r\n // Make sure we have an element rather than a text node\r\n if (containerEl.nodeType === 3) {\r\n containerEl = containerEl.parentNode;\r\n }\r\n }\r\n } else if ((sel = document.getSelection()) && sel.type !== \"Control\") {\r\n containerEl = sel.createRange().parentElement();\r\n }\r\n\r\n if (containerEl) {\r\n return parseInt(this.getComputedStyleProperty(containerEl, \"fontSize\").replace(\"px\", \"\"), 10);\r\n }\r\n }\r\n\r\n getComputedStyleProperty(el, propName) {\r\n if (window.getComputedStyle) {\r\n return window.getComputedStyle(el, null)[propName];\r\n } else if (el.currentStyle) {\r\n return el.currentStyle[propName];\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this._formattingService.undo.subscribe(() => {\r\n this.toggleUndo();\r\n });\r\n this._formattingService.redo.subscribe(() => {\r\n this.toggleRedo();\r\n });\r\n this._formattingService.formatBoldChange.subscribe((bold: boolean) => {\r\n this.bold = bold;\r\n this.toggleBold();\r\n });\r\n this._formattingService.formatUnderlineChange.subscribe((underline: boolean) => {\r\n this.underline = underline;\r\n this.toggleUnderline();\r\n });\r\n this._formattingService.formatItalicChange.subscribe((italic: boolean) => {\r\n this.italic = italic;\r\n this.toggleItalic();\r\n });\r\n this._formattingService.formatColorChange.subscribe(((color: string) => {\r\n this.color = color;\r\n this.setColor(color);\r\n }));\r\n this._formattingService.formatBgColorChange.subscribe(((bgcolor: string) => {\r\n this.bgColor = bgcolor;\r\n this.setBgColor(bgcolor);\r\n }));\r\n this._formattingService.formatFontSizeChange.subscribe(((fontSize: number) => {\r\n this.setFontSize(fontSize);\r\n }));\r\n\r\n this._formattingService.formatFontChange.subscribe(((font: string) => {\r\n this.font = font;\r\n this.setFont(font);\r\n }));\r\n this._formattingService.formatStrikeoutChange.subscribe((strikeout: boolean) => {\r\n this.strikeout = strikeout;\r\n this.toggleStrikeout();\r\n });\r\n this._formattingService.formatAlignChange.subscribe((align: string) => {\r\n this.align = align;\r\n this.toggleAlign(this.align);\r\n });\r\n this._formattingService.formatListChange.subscribe((list: string) => {\r\n const remove = this.list === list;\r\n this.list = list;\r\n this.toggleList(this.list, remove);\r\n });\r\n }\r\n\r\n private toggleBold() {\r\n document.execCommand(\"bold\");\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleUnderline() {\r\n document.execCommand(\"underline\");\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleItalic() {\r\n document.execCommand(\"italic\");\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private setBgColor(bgColor: string) {\r\n document.execCommand(\"backColor\", false, bgColor);\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private setColor(color: string) {\r\n document.execCommand(\"foreColor\", false, color);\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private setFontSize(fontSize: number) {\r\n if (document.getSelection().toString()) {\r\n let spanString = \"\" +\r\n document.getSelection() + \"\";\r\n if (this.bold) {\r\n spanString = \"\" + spanString + \"\";\r\n }\r\n if (this.italic) {\r\n spanString = \"\" + spanString + \"\";\r\n }\r\n if (this.underline) {\r\n spanString = \"\" + spanString + \"\";\r\n }\r\n if (this.strikeout) {\r\n spanString = \"\" + spanString + \"\";\r\n }\r\n document.execCommand('insertHTML', false, spanString);\r\n } else {\r\n document.execCommand(\"fontsize\", false, \"7\");\r\n }\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleUndo() {\r\n document.execCommand(\"undo\");\r\n }\r\n\r\n private toggleRedo() {\r\n document.execCommand(\"redo\");\r\n }\r\n\r\n private setFont(font: string) {\r\n document.execCommand(\"fontName\", false, font);\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleStrikeout() {\r\n document.execCommand(\"strikeThrough\");\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleAlign(align: string) {\r\n if(this.isIE) {\r\n this.toggleAlignIE(align);\r\n return;\r\n }\r\n document.execCommand(\"styleWithCSS\", false, 'true');\r\n switch (align) {\r\n case 'center':\r\n document.execCommand('justifyCenter');\r\n break;\r\n case 'full':\r\n document.execCommand('justifyFull');\r\n break;\r\n case 'left':\r\n document.execCommand('justifyLeft');\r\n break;\r\n case 'right':\r\n document.execCommand('justifyRight');\r\n break;\r\n }\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleAlignIE(align: string) {\r\n this._selectionService.restoreSelection()\r\n this._selectionService.captureSelection()\r\n const selection = window.getSelection().focusNode.parentNode.parentNode;\r\n if(align === \"full\"){\r\n align = \"justify\";\r\n }\r\n $(selection).css(\"text-align\", align);\r\n this._selectionService.refreshSelection()\r\n }\r\n\r\n private toggleList(list: string, remove: boolean) {\r\n switch (list) {\r\n case 'unordered':\r\n document.execCommand('insertUnorderedList', remove);\r\n break;\r\n case 'ordered':\r\n document.execCommand('insertOrderedList', remove);\r\n break;\r\n }\r\n this._selectionService.refreshSelection();\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-success-modal',\r\n templateUrl: './success-modal.component.html',\r\n styleUrls: ['./success-modal.component.less']\r\n})\r\nexport class SuccessModalComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Observable, Subject} from \"rxjs\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class EditHtmlService {\r\n private _observer: Subject = new Subject();\r\n private readonly _htmlContent: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get observer(): Subject {\r\n return this._observer;\r\n }\r\n\r\n get htmlContent(): Observable {\r\n return this._htmlContent;\r\n }\r\n\r\n}\r\n","import {Directive, HostListener, Input} from '@angular/core';\r\nimport {SelectionService} from './selection.service';\r\nimport {EditHtmlService} from \"./edit-html.service\";\r\n\r\n@Directive({\r\n selector: '[gdEditor]'\r\n})\r\nexport class EditorDirective {\r\n @Input() text: any;\r\n\r\n private isIE: boolean = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\r\n\r\n constructor(private _selectionService: SelectionService, private _htmlService: EditHtmlService) {\r\n }\r\n\r\n @HostListener('keyup', ['$event'])\r\n public onInput(event) {\r\n this.text = event.target;\r\n if(this.isIE){\r\n if (this.text.innerHTML) {\r\n const html = this.text.innerHTML.toString();\r\n this._htmlService.observer.next(html);\r\n }\r\n }\r\n }\r\n\r\n @HostListener('mouseleave', ['$event'])\r\n public onMouseleave(event) {\r\n this._selectionService.captureSelection();\r\n // this code is required to fix IE11 issue - it doesn't trigger blur event, since that we need to save updated HTML here\r\n if(this.isIE){\r\n this._htmlService.observer.next(event.target.innerHTML.toString());\r\n }\r\n }\r\n\r\n @HostListener('blur', ['$event'])\r\n public onBlur(event) {\r\n event.preventDefault();\r\n this._selectionService.restoreSelection();\r\n if (this.text.innerHTML) {\r\n const html = this.text.innerHTML.toString();\r\n this._htmlService.observer.next(html);\r\n } else {\r\n this._htmlService.observer.next(event.target.innerHTML.toString());\r\n }\r\n }\r\n}\r\n","import {EventEmitter, Injectable} from '@angular/core'\r\nimport {HttpRequest} from '@angular/common/http';\r\nimport {Api} from \"./config.service\";\r\n\r\n@Injectable()\r\nexport class LoadingMaskService {\r\n onLoadingChanged: EventEmitter = new EventEmitter();\r\n\r\n private stopList = [];\r\n private requests: HttpRequest[] = [];\r\n\r\n constructor() {\r\n this.stopList.push(Api.SAVE_TEXT);\r\n this.stopList.push(Api.SAVE_OPTICAL_CODE);\r\n this.stopList.push(Api.LOAD_DOCUMENT_PAGE);\r\n this.stopList.push(Api.LOAD_THUMBNAILS);\r\n this.stopList.push(Api.GET_FILE_STATUS);\r\n this.stopList.push(Api.LOAD_PRINT);\r\n }\r\n\r\n onRequestStart(req: HttpRequest): void {\r\n const stop = this.stopList.find(x => req.url.includes(x));\r\n if (!stop) {\r\n this.requests.push(req);\r\n this.notify();\r\n }\r\n }\r\n\r\n onRequestFinish(req: HttpRequest): void {\r\n const index = this.requests.indexOf(req);\r\n if (index !== -1) {\r\n this.requests.splice(index, 1);\r\n }\r\n this.notify();\r\n }\r\n\r\n private notify(): void {\r\n this.onLoadingChanged.emit(this.requests.length !== 0);\r\n }\r\n}\r\n","import {AfterViewInit, Component, Input, OnInit} from '@angular/core';\r\nimport {LoadingMaskService} from \"../loading-mask.service\";\r\n\r\n@Component({\r\n selector: 'gd-loading-mask',\r\n templateUrl: './loading-mask.component.html',\r\n styleUrls: ['./loading-mask.component.less']\r\n})\r\n\r\nexport class LoadingMaskComponent implements OnInit, AfterViewInit {\r\n @Input() loadingMask = false;\r\n\r\n constructor(private _loadingMaskService: LoadingMaskService) {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this._loadingMaskService\r\n .onLoadingChanged\r\n .subscribe((loading: boolean) => this.loadingMask = loading);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from \"@angular/common/http\";\r\nimport {Observable} from \"rxjs\";\r\nimport {finalize} from 'rxjs/operators'\r\nimport {LoadingMaskService} from \"./loading-mask.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LoadingMaskInterceptorService implements HttpInterceptor {\r\n\r\n constructor(private _loadingMaskService: LoadingMaskService) {\r\n }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n this._loadingMaskService.onRequestStart(req);\r\n const callback = () => this._loadingMaskService.onRequestFinish(req);\r\n return next.handle(req).pipe( finalize( callback));\r\n }\r\n}\r\n","import {\r\n Component,\r\n EventEmitter,\r\n forwardRef,\r\n HostBinding,\r\n HostListener,\r\n Inject,\r\n Input,\r\n Output,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\n\r\n\r\nconst horizontalAlignment = {\r\n center : {\r\n right: 'auto'\r\n },\r\n left : {\r\n right: '100%'\r\n },\r\n right : {\r\n right: '-100%'\r\n }\r\n};\r\n\r\nconst verticalAlignment = {\r\n center : {\r\n top : '0px',\r\n },\r\n top : {\r\n top : '-100%',\r\n right: '100%'\r\n },\r\n bottom : {\r\n top: 'autos'\r\n }\r\n};\r\n\r\n/**\r\n * DropDownToggleComponent\r\n */\r\n@Component({\r\n selector: 'gd-drop-down-toggle',\r\n template: '',\r\n styleUrls: ['./drop-down.component.less'],\r\n encapsulation : ViewEncapsulation.None\r\n})\r\nexport class DropDownToggleComponent{\r\n @HostListener('click',['$event'])\r\n click = (event: any) => this.dropdown.toggle(event);\r\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\r\n}\r\n\r\n/**\r\n * DropDownItemsComponent\r\n */\r\n@Component({\r\n selector: 'gd-drop-down-items',\r\n template: '
',\r\n styleUrls: ['./drop-down.component.less'],\r\n encapsulation : ViewEncapsulation.None\r\n})\r\nexport class DropDownItemsComponent{\r\n\r\n get horizontalAlign(){\r\n return horizontalAlignment[this.dropdown.getPlacement().h].right;\r\n }\r\n\r\n get verticalAlign(){\r\n return verticalAlignment[this.dropdown.getPlacement().v].top;\r\n }\r\n\r\n get isOpen(){\r\n return this.dropdown.open;\r\n }\r\n\r\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\r\n\r\n onClickOutside(event : Event ){\r\n this.dropdown.close();\r\n }\r\n}\r\n\r\n/**\r\n * DropDownItemComponent\r\n */\r\n@Component({\r\n selector: 'gd-drop-down-item',\r\n template: '
',\r\n styleUrls: ['./drop-down.component.less'],\r\n})\r\nexport class DropDownItemComponent{\r\n @HostBinding('class')\r\n class = 'drop-down-item';\r\n\r\n @Output()\r\n selected = new EventEmitter();\r\n\r\n @HostListener('click')\r\n click = () => this.selectEntry();\r\n\r\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\r\n\r\n selectEntry(){\r\n this.selected.next();\r\n this.dropdown.close();\r\n }\r\n}\r\n\r\n/**\r\n * DropDownComponent\r\n */\r\n@Component({\r\n selector: 'gd-drop-down',\r\n template: '
',\r\n styleUrls: ['./drop-down.component.less'],\r\n encapsulation : ViewEncapsulation.None\r\n})\r\nexport class DropDownComponent{\r\n @Input()\r\n placement = {\r\n h: \"center\",\r\n v: \"bottom\"\r\n };\r\n\r\n\r\n @Input()\r\n @HostBinding('class.show')\r\n open = false;\r\n\r\n @HostBinding('class')\r\n class = 'drop-down';\r\n\r\n close(){\r\n this.open = false;\r\n }\r\n\r\n toggle(event : MouseEvent){\r\n event.stopPropagation();\r\n this.open = !this.open;\r\n document.body.click();\r\n }\r\n\r\n getPlacement(){\r\n return this.placement;\r\n }\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-left-side-bar',\r\n templateUrl: './left-side-bar.component.html',\r\n styleUrls: ['./left-side-bar.component.less']\r\n})\r\nexport class LeftSideBarComponent implements OnInit {\r\n @Input() showSpinner = false;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Directive, EventEmitter, HostListener, Input, Output} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[gdTooltip]'\r\n})\r\nexport class TooltipDirective {\r\n\r\n @Output() showToolTip = new EventEmitter();\r\n\r\n constructor() {\r\n }\r\n\r\n @HostListener('mouseenter')\r\n public onHovering() {\r\n this.showToolTip.emit(true);\r\n }\r\n\r\n @HostListener('mouseleave')\r\n public onUnhovering() {\r\n this.showToolTip.emit(false);\r\n }\r\n\r\n}\r\n","import {\r\n ApplicationRef,\r\n ComponentFactoryResolver,\r\n Injectable,\r\n ViewContainerRef\r\n} from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AddDynamicComponentService {\r\n\r\n constructor(private _factoryResolver: ComponentFactoryResolver,\r\n private _appRef: ApplicationRef) {\r\n }\r\n\r\n addDynamicComponent(viewContainerRef: ViewContainerRef, component: any) {\r\n const factory = this._factoryResolver.resolveComponentFactory(component);\r\n const componentRef = viewContainerRef.createComponent(factory);\r\n\r\n componentRef.onDestroy(() => {\r\n this._appRef.detachView(componentRef.hostView);\r\n });\r\n\r\n return componentRef;\r\n }\r\n\r\n}\r\n","import {HostDynamicDirective} from \"./host-dynamic.directive\";\r\n\r\nexport class HostingDynamicComponentService {\r\n private hosts: HostDynamicDirective[];\r\n\r\n constructor() {\r\n this.hosts = [];\r\n }\r\n\r\n add(host: HostDynamicDirective) {\r\n this.hosts = this.hosts.filter(function (h) {\r\n return h.ident !== host.ident;\r\n });\r\n this.hosts.push(host);\r\n }\r\n\r\n remove(host: HostDynamicDirective) {\r\n this.hosts = this.hosts.filter(function (h) {\r\n return h.ident !== host.ident;\r\n });\r\n }\r\n\r\n find(ident: number) {\r\n return this.hosts.find(function (h) {\r\n return h.ident === ident;\r\n });\r\n }\r\n}\r\n","import {AfterViewInit, Directive, Input, OnDestroy, ViewContainerRef} from '@angular/core';\r\nimport {HostingDynamicComponentService} from \"./hosting-dynamic-component.service\";\r\n\r\n@Directive({\r\n selector: '[gdHostDynamic]'\r\n})\r\nexport class HostDynamicDirective implements AfterViewInit, OnDestroy {\r\n @Input() ident: number;\r\n\r\n constructor(public viewContainerRef: ViewContainerRef,\r\n private _hostingService: HostingDynamicComponentService) {\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this._hostingService.add(this);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._hostingService.remove(this);\r\n this.viewContainerRef.clear();\r\n }\r\n\r\n}\r\n","import {AfterViewInit, Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport * as jquery from \"jquery\";\r\nimport {Utils} from \"../file.service\";\r\n\r\nconst $ = jquery;\r\n\r\n@Component({\r\n selector: 'gd-resizing',\r\n templateUrl: './resizing.component.html',\r\n styleUrls: ['./resizing.component.less']\r\n})\r\nexport class ResizingComponent implements OnInit, AfterViewInit {\r\n\r\n @Input() init: boolean;\r\n @Input() id: number;\r\n @Input() se = false;\r\n @Input() ne = false;\r\n @Input() sw = false;\r\n @Input() nw = false;\r\n @Input() pageWidth: number;\r\n @Input() pageHeight: number;\r\n SE = 'se';\r\n NE = 'ne';\r\n SW = 'sw';\r\n NW = 'nw';\r\n\r\n @Output() offsetX = new EventEmitter();\r\n @Output() offsetY = new EventEmitter();\r\n @Output() offsetTop = new EventEmitter();\r\n @Output() offsetLeft = new EventEmitter();\r\n @Output() release = new EventEmitter();\r\n\r\n private grab = false;\r\n private oldPosition: { x: number, y: number };\r\n\r\n constructor() {\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n const elSE = $(this.getElementId(this.SE));\r\n const elNW = $(this.getElementId(this.NW));\r\n if (this.init && elSE && elNW && elSE.offset() && elNW.offset()) {\r\n let width = elSE.offset().left - elNW.offset().left;\r\n let height = elSE.offset().top - elNW.offset().top;\r\n while (width >= this.pageWidth || height >= this.pageHeight) {\r\n width = width / 2;\r\n height = height / 2;\r\n }\r\n setTimeout(() => {\r\n this.offsetX.emit(width);\r\n this.offsetY.emit(height);\r\n }, 100);\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n catchUp($event: DragEvent) {\r\n // ff\r\n $event.preventDefault();\r\n if ($event.dataTransfer) { // ff\r\n $event.dataTransfer.setData('text', 'foo');\r\n }\r\n this.grab = true;\r\n this.oldPosition = Utils.getMousePosition($event);\r\n }\r\n\r\n resize($event: DragEvent, el: string) {\r\n if (!this.grab) {\r\n return;\r\n }\r\n const position = Utils.getMousePosition($event);\r\n if (position.x === 0 && position.y === 0) {\r\n return;\r\n }\r\n const notSW = this.NE === el || this.NW === el;\r\n const notNE = this.SW === el || this.NW === el;\r\n this.setOffsets(position, notNE, notSW);\r\n if (notSW) {\r\n this.offsetTop.emit(position.y - this.oldPosition.y);\r\n }\r\n if (notNE) {\r\n this.offsetLeft.emit(position.x - this.oldPosition.x);\r\n }\r\n this.oldPosition = position;\r\n }\r\n\r\n private setOffsets(position, x: boolean, y: boolean) {\r\n const offsetX = x ? this.oldPosition.x - position.x : position.x - this.oldPosition.x;\r\n const offsetY = y ? this.oldPosition.y - position.y : position.y - this.oldPosition.y;\r\n this.offsetX.emit(offsetX);\r\n this.offsetY.emit(offsetY);\r\n }\r\n\r\n end($event: DragEvent, el: string) {\r\n // ff\r\n this.resize($event, el);\r\n this.release.emit(true);\r\n this.grab = false;\r\n }\r\n\r\n start($event: DragEvent) {\r\n this.drop($event);\r\n }\r\n\r\n drop($event: DragEvent) {\r\n $event.stopPropagation();\r\n $event.preventDefault();\r\n }\r\n\r\n private getElementId(el: string) {\r\n return \"#\" + el + \"-\" + this.id;\r\n }\r\n}\r\n","import {TabActivatorService} from \"./tab-activator.service\";\r\n\r\nexport class TopTabActivatorService extends TabActivatorService {\r\n\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {ExceptionMessageService} from \"../exception-message.service\";\r\nimport {TopTabActivatorService} from \"../top-tab-activator.service\";\r\nimport {ModalService, CommonModals} from \"../modal.service\";\r\n\r\n@Component({\r\n selector: 'gd-top-tab',\r\n templateUrl: './top-tab.component.html',\r\n styleUrls: ['./top-tab.component.less']\r\n})\r\nexport class TopTabComponent implements OnInit {\r\n @Input() id: string;\r\n @Input() icon: string;\r\n @Input() disabled = false;\r\n @Input() tooltip: string;\r\n @Output() activeTab = new EventEmitter();\r\n @Input() elementPosition = 0;\r\n public active = false;\r\n public showToolTip = false;\r\n\r\n constructor(private _tabActivatorService: TopTabActivatorService,\r\n private _modalService: ModalService,\r\n private _excMessageService: ExceptionMessageService) {\r\n this._tabActivatorService.activeTabChange.subscribe((tabId: string) => {\r\n this.activation(tabId);\r\n if (tabId === null) {\r\n this.activeTab.emit(\"\");\r\n }\r\n });\r\n }\r\n\r\n private activation(tabId: string) {\r\n if (this.id === tabId) {\r\n this.active = !this.active;\r\n if (this.active) {\r\n this.activeTab.emit(this.id);\r\n } else {\r\n this.activeTab.emit(\"\");\r\n }\r\n } else {\r\n this.active = false;\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n toggleTab() {\r\n if (this.disabled) {\r\n this._modalService.open(CommonModals.ErrorMessage);\r\n this._excMessageService.changeMessage(\"Please open document first\");\r\n return;\r\n }\r\n this._tabActivatorService.changeActiveTab(this.id);\r\n }\r\n\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output, ElementRef, Renderer2} from '@angular/core';\r\nimport * as jquery from 'jquery';\r\nimport {FormattingService} from \"../formatting.service\";\r\nimport {OnCloseService} from \"../on-close.service\";\r\nimport {Option} from \"../select/select.component\";\r\nimport { ZoomService } from '../zoom.service';\r\nimport { WindowService } from '../window.service';\r\n\r\nconst $ = jquery;\r\n\r\n@Component({\r\n selector: 'gd-text-menu',\r\n templateUrl: './text-menu.component.html',\r\n styleUrls: ['./text-menu.component.less']\r\n})\r\nexport class TextMenuComponent implements OnInit {\r\n @Input() blur: boolean;\r\n @Input() fontSize: number;\r\n @Input() font: string;\r\n @Input() bold: boolean;\r\n @Input() italic: boolean;\r\n @Input() underline: boolean;\r\n @Input() color: string;\r\n @Input() decoration = true;\r\n @Input() showTooltips = true;\r\n\r\n @Output() outFontSize = new EventEmitter();\r\n @Output() outFont = new EventEmitter();\r\n @Output() outBold = new EventEmitter();\r\n @Output() outItalic = new EventEmitter();\r\n @Output() outUnderline = new EventEmitter();\r\n @Output() outColor = new EventEmitter();\r\n\r\n fontSizeOptions = FormattingService.getFontSizeOptions();\r\n fontOptions = FormattingService.getFontOptions();\r\n colorPickerShow = false;\r\n\r\n isMobile: boolean;\r\n\r\n constructor(private _onCloseService: OnCloseService,\r\n private _zoomService: ZoomService,\r\n private _windowService: WindowService,\r\n protected _elementRef: ElementRef,\r\n private renderer: Renderer2) {\r\n \r\n _onCloseService.onClose.subscribe(() => {\r\n this.colorPickerShow = false;\r\n });\r\n\r\n this.isMobile = _windowService.isMobile();\r\n _windowService.onResize.subscribe((w) => {\r\n this.isMobile = _windowService.isMobile();\r\n });\r\n\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n if (this.isMobile)\r\n {\r\n this.changePosition(val);\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n changePosition(val: number) {\r\n const top = (window.innerHeight - 24 - this._elementRef.nativeElement.parentElement.getBoundingClientRect().top - this._elementRef.nativeElement.parentElement.getBoundingClientRect().height);\r\n const left = this._elementRef.nativeElement.parentElement.getBoundingClientRect().left;\r\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'width', window.innerWidth + 'px');\r\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'top', top + 'px');\r\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'left', -left + 'px');\r\n }\r\n\r\n selectFontSize($event: Option) {\r\n $(\".gd-wrapper\").off(\"keyup\");\r\n this.outFontSize.emit($event.value);\r\n $(\".gd-wrapper\").on(\"keyup\", () => {\r\n const fontElements = document.getElementsByTagName(\"font\");\r\n for (let i = 0, len = fontElements.length; i < len; ++i) {\r\n if (fontElements[i].getAttribute('size') === \"7\") {\r\n fontElements[i].removeAttribute(\"size\");\r\n fontElements[i].style.fontSize = $event + \"px\";\r\n }\r\n }\r\n });\r\n }\r\n\r\n selectFont($event: Option) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.outFont.emit($event.value);\r\n }\r\n\r\n toggleColorPicker($event) {\r\n $event.preventDefault();\r\n $event.stopPropagation();\r\n this.colorPickerShow = !this.colorPickerShow;\r\n }\r\n\r\n selectColor($event: string) {\r\n this.colorPickerShow = false;\r\n this.outColor.emit($event);\r\n }\r\n\r\n toggleBold(event) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.outBold.emit(!this.bold);\r\n }\r\n\r\n toggleItalic(event) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.outItalic.emit(!this.italic);\r\n }\r\n\r\n toggleUnderline(event) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.outUnderline.emit(!this.underline);\r\n }\r\n\r\n closePicker($event) {\r\n this.colorPickerShow = !$event;\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output, Renderer2, ElementRef} from '@angular/core';\r\nimport {Formatting} from \"../formatting.service\";\r\nimport {WindowService} from \"../window.service\";\r\nimport { ZoomService } from '../zoom.service';\r\n\r\nexport class MenuType {\r\n public static FOR_SIGNATURE = \"signature\";\r\n public static FOR_ANNOTATION = \"annotation\";\r\n}\r\n\r\n@Component({\r\n selector: 'gd-context-menu',\r\n templateUrl: './context-menu.component.html',\r\n styleUrls: ['./context-menu.component.less']\r\n})\r\nexport class ContextMenuComponent implements OnInit {\r\n @Input() formatting: Formatting = Formatting.default();\r\n @Input() textMenu: boolean;\r\n @Input() topPosition: number;\r\n @Input() lock = false;\r\n @Input() translation = 0;\r\n @Input() menuType: string;\r\n @Output() changeFormatting = new EventEmitter();\r\n @Output() removeItem = new EventEmitter();\r\n @Output() copySign = new EventEmitter();\r\n @Output() lockOut = new EventEmitter();\r\n @Output() comment = new EventEmitter();\r\n\r\n isMobile: boolean;\r\n\r\n constructor(private _windowService: WindowService,\r\n private _zoomService: ZoomService,\r\n protected _elementRef: ElementRef,\r\n private renderer: Renderer2) {\r\n this.isMobile = _windowService.isMobile();\r\n _windowService.onResize.subscribe((w) => {\r\n this.isMobile = _windowService.isMobile();\r\n });\r\n\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n if (this.isMobile)\r\n {\r\n this.changeScale(val);\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n changeScale(val: number){\r\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-context-menu'), 'transform', 'scale(' + 1/(val/100) + ')');\r\n }\r\n\r\n saveChanges() {\r\n this.changeFormatting.emit(this.formatting);\r\n }\r\n\r\n selectFontSize($event: number) {\r\n this.formatting.fontSize = $event;\r\n this.saveChanges();\r\n }\r\n\r\n selectFont($event: string) {\r\n this.formatting.font = $event;\r\n this.saveChanges();\r\n }\r\n\r\n selectColor($event: string) {\r\n this.formatting.color = $event;\r\n this.saveChanges();\r\n }\r\n\r\n toggleBold($event) {\r\n this.formatting.bold = $event;\r\n this.saveChanges();\r\n }\r\n\r\n toggleItalic($event) {\r\n this.formatting.italic = $event;\r\n this.saveChanges();\r\n }\r\n\r\n toggleUnderline($event) {\r\n this.formatting.underline = $event;\r\n this.saveChanges();\r\n }\r\n\r\n deleteItem() {\r\n this.removeItem.emit(true);\r\n }\r\n\r\n toggleLock() {\r\n this.lock = !this.lock;\r\n this.lockOut.emit(this.lock);\r\n }\r\n\r\n onCopySign() {\r\n this.copySign.emit(true);\r\n }\r\n\r\n isSignature() {\r\n return this.menuType === MenuType.FOR_SIGNATURE;\r\n }\r\n\r\n isAnnotation() {\r\n return this.menuType === MenuType.FOR_ANNOTATION;\r\n }\r\n\r\n addComment() {\r\n this.comment.emit(true);\r\n }\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {TopToolbarComponent} from './top-toolbar/top-toolbar.component';\r\nimport {SidePanelComponent} from './side-panel/side-panel.component';\r\nimport {ButtonComponent} from './button/button.component';\r\nimport {LogoComponent} from './logo/logo.component';\r\nimport {TooltipComponent} from './tooltip/tooltip.component';\r\nimport {FontAwesomeModule} from '@fortawesome/angular-fontawesome';\r\nimport {library} from '@fortawesome/fontawesome-svg-core';\r\nimport {fas} from '@fortawesome/free-solid-svg-icons';\r\nimport {far} from '@fortawesome/free-regular-svg-icons';\r\nimport {Api, ConfigService,} from \"./config.service\";\r\nimport {ModalService} from \"./modal.service\";\r\nimport {ModalComponent} from './modal/modal.component';\r\nimport {BrowseFilesModalComponent} from './browse-files-modal/browse-files-modal.component';\r\nimport {FileModel, FileService, FileUtil, Utils} from \"./file.service\";\r\nimport {DocumentComponent} from './document/document.component';\r\nimport {PageComponent} from './page/page.component';\r\nimport {HighlightSearchPipe, SanitizeHtmlPipe, SanitizeResourceHtmlPipe, SanitizeStylePipe} from \"./pipes\";\r\nimport {UploadFileZoneComponent} from './upload-file-zone/upload-file-zone.component';\r\nimport {UploadFilesService} from \"./upload-files.service\";\r\nimport {DndDirective} from './dnd.directive';\r\nimport {ScrollableDirective} from './scrollable.directive';\r\nimport {MouseWheelDirective} from './mousewheel.directive';\r\nimport {NavigateService} from \"./navigate.service\";\r\nimport {PagePreloadService} from \"./page-preload.service\";\r\nimport {ZoomDirective} from './zoom.directive';\r\nimport {ZoomService} from \"./zoom.service\";\r\nimport {SelectComponent} from './select/select.component';\r\nimport {DisabledCursorDirective} from './disabled-cursor.directive';\r\nimport {RotationDirective} from './rotation.directive';\r\nimport {InitStateComponent} from './init-state/init-state.component';\r\nimport {RenderPrintService} from \"./render-print.service\";\r\nimport {RenderPrintDirective} from './render-print.directive';\r\nimport {ErrorModalComponent} from './error-modal/error-modal.component';\r\nimport {PasswordRequiredComponent} from './password-required/password-required.component';\r\nimport {ExceptionMessageService} from \"./exception-message.service\";\r\nimport {PasswordService} from \"./password.service\";\r\nimport {ErrorInterceptorService} from \"./error-interceptor.service\";\r\nimport {SearchComponent} from './search/search.component';\r\nimport {SearchableDirective} from './searchable.directive';\r\nimport {SearchService} from \"./search.service\";\r\nimport {WindowService} from \"./window.service\";\r\nimport {ViewportService} from \"./viewport.service\";\r\nimport {TabbedToolbarsComponent} from './tabbed-toolbars/tabbed-toolbars.component';\r\nimport {TabComponent} from \"./tab/tab.component\";\r\nimport {TabsComponent} from \"./tabs/tabs.component\";\r\nimport {FormattingService} from \"./formatting.service\";\r\nimport {ColorPickerComponent} from './color-picker/color-picker.component';\r\nimport {FormattingDirective} from './formatting.directive';\r\nimport {BackFormattingService} from \"./back-formatting.service\";\r\nimport {OnCloseService} from \"./on-close.service\";\r\nimport {SuccessModalComponent} from './success-modal/success-modal.component';\r\nimport {EditorDirective} from './editor.directive';\r\nimport {LoadingMaskComponent} from './loading-mask/loading-mask.component';\r\nimport {LoadingMaskService} from './loading-mask.service';\r\nimport {LoadingMaskInterceptorService} from \"./loading-mask-interceptor.service\";\r\nimport {TabActivatorService} from \"./tab-activator.service\";\r\nimport {\r\n DropDownComponent,\r\n DropDownItemComponent,\r\n DropDownItemsComponent,\r\n DropDownToggleComponent\r\n} from './drop-down/drop-down.component';\r\nimport {ClickOutsideModule} from 'ng-click-outside';\r\nimport {LeftSideBarComponent} from './left-side-bar/left-side-bar.component';\r\nimport {TooltipDirective} from './tooltip.directive';\r\nimport {AddDynamicComponentService} from \"./add-dynamic-component.service\";\r\nimport {HostDynamicDirective} from './host-dynamic.directive';\r\nimport {HostingDynamicComponentService} from \"./hosting-dynamic-component.service\";\r\nimport {ResizingComponent} from './resizing/resizing.component';\r\nimport {TopTabComponent} from './top-tab/top-tab.component';\r\nimport {TopTabActivatorService} from \"./top-tab-activator.service\";\r\nimport {TextMenuComponent} from './text-menu/text-menu.component';\r\nimport {ContextMenuComponent} from './context-menu/context-menu.component';\r\n\r\nconst providers = [ConfigService,\r\n Api,\r\n ModalService,\r\n FileService,\r\n FileModel,\r\n FileUtil,\r\n Utils,\r\n SanitizeHtmlPipe,\r\n SanitizeResourceHtmlPipe,\r\n SanitizeStylePipe,\r\n HighlightSearchPipe,\r\n UploadFilesService,\r\n RenderPrintService,\r\n NavigateService,\r\n PagePreloadService,\r\n ZoomService,\r\n ExceptionMessageService,\r\n PasswordService,\r\n ErrorInterceptorService,\r\n SearchService,\r\n WindowService,\r\n ViewportService,\r\n FormattingService,\r\n BackFormattingService,\r\n OnCloseService,\r\n LoadingMaskInterceptorService,\r\n LoadingMaskService,\r\n TabActivatorService,\r\n AddDynamicComponentService,\r\n HostingDynamicComponentService,\r\n TopTabActivatorService];\r\n\r\n@NgModule({\r\n imports: [CommonModule, FontAwesomeModule, ClickOutsideModule],\r\n declarations: [\r\n TopToolbarComponent,\r\n SidePanelComponent,\r\n ButtonComponent,\r\n LogoComponent,\r\n TooltipComponent,\r\n ModalComponent,\r\n BrowseFilesModalComponent,\r\n DocumentComponent,\r\n PageComponent,\r\n SanitizeHtmlPipe,\r\n SanitizeResourceHtmlPipe,\r\n SanitizeStylePipe,\r\n HighlightSearchPipe,\r\n UploadFileZoneComponent,\r\n DndDirective,\r\n ScrollableDirective,\r\n MouseWheelDirective,\r\n ZoomDirective,\r\n SelectComponent,\r\n DisabledCursorDirective,\r\n RotationDirective,\r\n InitStateComponent,\r\n RenderPrintDirective,\r\n ErrorModalComponent,\r\n PasswordRequiredComponent,\r\n SearchComponent,\r\n SearchableDirective,\r\n TabbedToolbarsComponent,\r\n TabComponent,\r\n TabsComponent,\r\n ColorPickerComponent,\r\n FormattingDirective,\r\n SuccessModalComponent,\r\n EditorDirective,\r\n LoadingMaskComponent,\r\n DropDownComponent,\r\n DropDownItemComponent,\r\n DropDownItemsComponent,\r\n DropDownToggleComponent,\r\n LeftSideBarComponent,\r\n TooltipDirective,\r\n HostDynamicDirective,\r\n ResizingComponent,\r\n TopTabComponent,\r\n TextMenuComponent,\r\n ContextMenuComponent\r\n ],\r\n exports: [\r\n TopToolbarComponent,\r\n SidePanelComponent,\r\n ButtonComponent,\r\n LogoComponent,\r\n TooltipComponent,\r\n ModalComponent,\r\n BrowseFilesModalComponent,\r\n DocumentComponent,\r\n PageComponent,\r\n SanitizeResourceHtmlPipe,\r\n SanitizeStylePipe,\r\n HighlightSearchPipe,\r\n SanitizeHtmlPipe,\r\n UploadFileZoneComponent,\r\n ScrollableDirective,\r\n MouseWheelDirective,\r\n SelectComponent,\r\n RotationDirective,\r\n InitStateComponent,\r\n RenderPrintDirective,\r\n ErrorModalComponent,\r\n PasswordRequiredComponent,\r\n SearchComponent,\r\n SearchableDirective,\r\n TabbedToolbarsComponent,\r\n TabComponent,\r\n TabsComponent,\r\n ColorPickerComponent,\r\n FormattingDirective,\r\n SuccessModalComponent,\r\n LoadingMaskComponent,\r\n DndDirective,\r\n DropDownComponent,\r\n DropDownItemComponent,\r\n DropDownItemsComponent,\r\n DropDownToggleComponent,\r\n ZoomDirective,\r\n DropDownToggleComponent,\r\n LeftSideBarComponent,\r\n TooltipDirective,\r\n HostDynamicDirective,\r\n ResizingComponent,\r\n TopTabComponent,\r\n TextMenuComponent,\r\n ContextMenuComponent\r\n ],\r\n providers: providers\r\n})\r\nexport class CommonComponentsModule {\r\n constructor() {\r\n library.add(fas, far);\r\n }\r\n}\r\n"],"names":["$"],"mappings":"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"} \ No newline at end of file diff --git a/dist/libs/common-components/fesm5/groupdocs.examples.angular-common-components.js b/dist/libs/common-components/fesm5/groupdocs.examples.angular-common-components.js index 487781b34..0a83154ff 100644 --- a/dist/libs/common-components/fesm5/groupdocs.examples.angular-common-components.js +++ b/dist/libs/common-components/fesm5/groupdocs.examples.angular-common-components.js @@ -23,8 +23,8 @@ var TopToolbarComponent = /** @class */ (function () { TopToolbarComponent.decorators = [ { type: Component, args: [{ selector: 'gd-top-toolbar', - template: "
\n
\n \n
\n
\n", - styles: [".top-toolbar{width:100%;height:60px;z-index:999;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.tools{width:100%;height:100%;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}@media (max-width:1037px){.top-toolbar{height:60px}.tools{height:100%;overflow-x:auto;overflow-scrolling:touch;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.tools::-webkit-scrollbar{width:0;height:0;background-color:#3e4e5a}}"] + template: "
\r\n
\r\n \r\n
\r\n
\r\n", + styles: [".top-toolbar{width:100%;height:60px;z-index:999;display:flex;align-items:center}.tools{width:100%;height:100%;display:flex;align-items:center}@media (max-width:1037px){.top-toolbar{height:60px}.tools{height:100%;overflow-x:auto;overflow-scrolling:touch;display:flex;align-items:center;transition:.3s ease-in-out;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.tools::-webkit-scrollbar{width:0;height:0;background-color:#3e4e5a}}"] }] } ]; /** @nocollapse */ @@ -76,8 +76,8 @@ var SidePanelComponent = /** @class */ (function () { SidePanelComponent.decorators = [ { type: Component, args: [{ selector: 'gd-side-panel', - template: "
\n
\n \n
{{title}}
\n
\n \n
\n
\n \n
\n
\n
\n \n
\n
\n", - styles: [".gd-side-panel-wrapper{margin-right:0;width:334px;z-index:999;background-color:#fff;-webkit-transition:margin-right .2s;transition:margin-right .2s;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-flow:column;height:100vh}.gd-side-panel-wrapper .gd-side-panel-header{height:60px;background-color:#222e35;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;flex-wrap:nowrap}.gd-side-panel-wrapper .gd-side-panel-header .icon{font-size:24px;color:#959da5;margin:18px;line-height:24px}.gd-side-panel-wrapper .gd-side-panel-header .title{font-size:13px;font-weight:700;color:#edf0f2;opacity:.57;margin-top:20px;width:100%}.gd-side-panel-wrapper .gd-side-panel-header .close,.gd-side-panel-wrapper .gd-side-panel-header .save{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.gd-side-panel-wrapper .gd-side-panel-header ::ng-deep gd-button .text{padding:0}.gd-side-panel-wrapper .gd-side-panel-body{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-flow:column;overflow:visible;overflow-y:auto;overflow-x:hidden;height:100%}@media (max-width:1037px){.gd-side-panel-wrapper{width:100%;position:absolute;left:0;right:0;top:0;bottom:0}.gd-side-panel-wrapper.only-title{height:60px!important}}"] + template: "
\r\n
\r\n \r\n
{{title}}
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n", + styles: [".gd-side-panel-wrapper{margin-right:0;width:334px;z-index:999;background-color:#fff;transition:margin-right .2s;display:flex;flex-flow:column;height:100vh}.gd-side-panel-wrapper .gd-side-panel-header{height:60px;background-color:#222e35;display:flex;flex-direction:row;flex-wrap:nowrap}.gd-side-panel-wrapper .gd-side-panel-header .icon{font-size:24px;color:#959da5;margin:18px;line-height:24px}.gd-side-panel-wrapper .gd-side-panel-header .title{font-size:13px;font-weight:700;color:#edf0f2;opacity:.57;margin-top:20px;width:100%}.gd-side-panel-wrapper .gd-side-panel-header .close,.gd-side-panel-wrapper .gd-side-panel-header .save{display:flex;align-items:center}.gd-side-panel-wrapper .gd-side-panel-header ::ng-deep gd-button .text{padding:0}.gd-side-panel-wrapper .gd-side-panel-body{display:flex;flex-flow:column;overflow:visible;overflow-y:auto;overflow-x:hidden;height:100%}@media (max-width:1037px){.gd-side-panel-wrapper{width:100%;position:absolute;left:0;right:0;top:0;bottom:0}.gd-side-panel-wrapper.only-title{height:60px!important}}"] }] } ]; /** @nocollapse */ @@ -308,8 +308,8 @@ var ButtonComponent = /** @class */ (function () { ButtonComponent.decorators = [ { type: Component, args: [{ selector: 'gd-button', - template: "
\n \n \n
\n \n
\n
\n", - styles: [".icon-button{padding:0!important;margin:0 7px}.button{padding:0 10px;font-size:14px;color:#959da5;cursor:pointer;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;align-content:center;-webkit-box-pack:center;justify-content:center;min-width:37px;height:37px;text-align:center;position:relative;white-space:nowrap}.button.inactive{cursor:not-allowed;opacity:.4}.button.active *{color:#ccd0d4}.button.primary{background-color:#3e4e5a;color:#fff}.button.primary.active{color:#fff;background-color:#688296}.button.brand{background-color:#25c2d4;color:#fff}.button.brand.active{color:#fff;background-color:#688296}.button .text{font-size:13px;padding-left:10px}.button .button-tooltip{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}@media (max-width:1037px){.button{font-size:22px}.arrow-button{margin:5px}}"] + template: "
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n", + styles: [".icon-button{padding:0!important;margin:0 7px}.button{padding:0 10px;font-size:14px;color:#959da5;cursor:pointer;display:flex;flex-direction:column;align-items:center;align-content:center;justify-content:center;min-width:37px;height:37px;text-align:center;position:relative;white-space:nowrap}.button.inactive{cursor:not-allowed;opacity:.4}.button.active *{color:#ccd0d4}.button.primary{background-color:#3e4e5a;color:#fff}.button.primary.active{color:#fff;background-color:#688296}.button.brand{background-color:#25c2d4;color:#fff}.button.brand.active{color:#fff;background-color:#688296}.button .text{font-size:13px;padding-left:10px}.button .button-tooltip{display:flex;flex-direction:column}@media (max-width:1037px){.button{font-size:22px}.arrow-button{margin:5px}}"] }] } ]; /** @nocollapse */ @@ -381,8 +381,8 @@ var LogoComponent = /** @class */ (function () { LogoComponent.decorators = [ { type: Component, args: [{ selector: 'gd-logo', - template: "
\n \n \n
\n\n", - styles: [".logo{background-color:#25c2d4;height:60px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center}.text{color:#fff;font-size:15px;text-transform:uppercase;margin:0 14px}.icon{display:none;font-size:32px;color:rgba(255,255,255,.5);margin:14px}@media (max-width:1037px){.logo{width:60px;height:60px}.logo .text{display:none}.logo .icon{display:block}}"] + template: "
\r\n \r\n \r\n
\r\n\r\n", + styles: [".logo{background-color:#25c2d4;height:60px;display:flex;align-items:center;justify-content:center}.text{color:#fff;font-size:15px;text-transform:uppercase;margin:0 14px}.icon{display:none;font-size:32px;color:rgba(255,255,255,.5);margin:14px}@media (max-width:1037px){.logo{width:60px;height:60px}.logo .text{display:none}.logo .icon{display:block}}"] }] } ]; /** @nocollapse */ @@ -443,7 +443,7 @@ var TooltipComponent = /** @class */ (function () { TooltipComponent.decorators = [ { type: Component, args: [{ selector: 'gd-tooltip', - template: "\n", + template: "\r\n", styles: [".tooltip{position:absolute;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;background-color:#000;color:#fff;text-align:center;border-radius:0;padding:5px;z-index:1;font-size:10px;height:11px;line-height:11px;-ms-grid-row-align:center;align-self:center;margin:0!important}.first-element{margin-left:10px!important}.last-element{margin-left:-10px!important}.tooltip.hidden{visibility:hidden}.tooltip.shown{visibility:visible}.shown:after{content:\" \";position:absolute;bottom:100%;left:50%;margin-left:-5px;border:5px solid transparent;border-bottom-color:#000}"] }] } ]; @@ -931,8 +931,8 @@ var ModalComponent = /** @class */ (function () { ModalComponent.decorators = [ { type: Component, args: [{ selector: 'gd-modal', - template: "
\n
\n
\n
\n\n
\n
×
\n

{{title}}

\n
\n\n
\n \n
\n\n
\n\n
\n
\n
\n\n\n", - styles: ["@import url(https://fonts.googleapis.com/css?family=Montserrat&display=swap);:host *{font-family:'Open Sans',Arial,Helvetica,sans-serif}.gd-modal{overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0;background-color:rgba(0,0,0,.5)}.gd-modal-dialog{box-shadow:#0005 0 0 10px;position:fixed;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);z-index:1051}.gd-modal-dialog ::ng-deep .button{-webkit-box-orient:unset!important;-webkit-box-direction:unset!important;flex-direction:unset!important}.gd-modal-content{background-color:#fff;height:100%;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.gd-modal-header{height:60px;padding:0 12px 0 24px;background-color:#3e4e5a}.gd-modal-close{position:absolute;right:12px;top:12px;cursor:pointer;color:#fff;width:37px;height:37px;text-align:center}.gd-modal-close span{font-size:18px;font-weight:900;height:19px;width:10px;line-height:36px}.gd-modal-title{font-size:16px;font-weight:400;padding-top:17px;padding-bottom:22px;margin:0;color:#fff}.gd-modal-body{background-color:#fff;overflow:hidden;overflow-y:auto;height:calc(100% - 75px)}.gd-modal-footer{height:auto}.gd-modal-footer>.btn{float:right;margin:20px 15px;padding:10px 20px;cursor:pointer;font-size:12px}@media (max-width:1037px){.gd-modal-dialog{width:100%;height:100%}.gd-modal-body{height:100%}}"] + template: "
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
×
\r\n

{{title}}

\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n", + styles: ["@import url(https://fonts.googleapis.com/css?family=Montserrat&display=swap);:host *{font-family:'Open Sans',Arial,Helvetica,sans-serif}.gd-modal{overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0;background-color:rgba(0,0,0,.5)}.gd-modal-dialog{box-shadow:#0005 0 0 10px;position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1051}.gd-modal-dialog ::ng-deep .button{flex-direction:unset!important}.gd-modal-content{background-color:#fff;height:100%;display:flex;flex-direction:column}.gd-modal-header{height:60px;padding:0 12px 0 24px;background-color:#3e4e5a}.gd-modal-close{position:absolute;right:12px;top:12px;cursor:pointer;color:#fff;width:37px;height:37px;text-align:center}.gd-modal-close span{font-size:18px;font-weight:900;height:19px;width:10px;line-height:36px}.gd-modal-title{font-size:16px;font-weight:400;padding-top:17px;padding-bottom:22px;margin:0;color:#fff}.gd-modal-body{background-color:#fff;overflow:hidden;overflow-y:auto;height:calc(100% - 75px)}.gd-modal-footer{height:auto}.gd-modal-footer>.btn{float:right;margin:20px 15px;padding:10px 20px;cursor:pointer;font-size:12px}@media (max-width:1037px){.gd-modal-dialog{width:100%;height:100%}.gd-modal-body{height:100%}}"] }] } ]; /** @nocollapse */ @@ -1567,8 +1567,8 @@ var BrowseFilesModalComponent = /** @class */ (function () { BrowseFilesModalComponent.decorators = [ { type: Component, args: [{ selector: 'gd-browse-files-modal', - template: "\n
\n
\n \n Drop file here to upload\n
\n
\n
\n \n
\n
\n \n \n \n Upload file\n \n \n \n \n \n
{{item.name}}
\n
\n
\n
\n
\n
\n
\n \n
\n \n
\n
\n
\n
\n
\n
\n
FILE
\n
SIZE
\n
\n
\n
\n
\n
\n
\n \n
\n
..
\n
\n
\n
\n \n
\n
{{file?.name}}
\n
{{getFormatName(file)}}
\n
\n
\n
\n {{getSize(file?.size)}}\n
\n
\n
\n
\n
\n \n  Loading... Please wait.\n
\n
\n
\n", - styles: [".gd-modal-table{width:100%;text-align:left}#gd-browse-section{width:1036px;height:561px;overflow-y:auto}.list-files-header{height:60px;color:#6e6e6e;font-size:13px;font-weight:700;background-color:#f4f4f4;margin-top:24px}.list-files-header.upload-url{margin-top:20px}.header-name{padding-left:24px;width:90%;line-height:60px}.header-size{padding-right:27px;line-height:60px}.file-size,.header-size{width:10%;color:#777;text-align:right}.file-description{display:-webkit-box;display:flex;width:90%;padding:18px 0 18px 24px;font-size:14px;-webkit-box-flex:1;flex:1;cursor:pointer;overflow:hidden}.file-size{font-size:12px;padding:0 27px 0 0;width:10%;line-height:79px}.list-files-header,.list-files-lines{display:-webkit-box;display:flex;width:100%;-webkit-box-pack:justify;justify-content:space-between}.gd-modal-spinner{background-color:#fff;width:100%;height:20px;text-align:center;font-size:16px}.gd-cancel-button{padding:7px;background:0 0;width:28px;overflow:hidden}.gd-cancel-button i{font-size:21px}.gd-file-name{white-space:nowrap;overflow:hidden;width:100%;text-overflow:ellipsis}.go-up{display:-webkit-box;display:flex;font-size:26px;cursor:pointer;color:#4b566c;height:79px}.go-up-dots{margin-left:20px;margin-top:22px;font-size:16px}.go-up-icon{display:block;padding:18px 0 18px 24px}.upload-panel{display:-webkit-box;display:flex;position:relative;width:100%}.upload-panel .context{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;width:100%;margin-left:24px;margin-top:24px;margin-right:24px}.upload-panel .context .context-actions{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;width:100%}.upload-panel .context .context-actions :last-child{margin-right:0}.upload-panel .context .context-actions ::ng-deep .button{height:37px;width:96px;padding:0;-webkit-box-pack:center;justify-content:center}.upload-panel .context .context-actions ::ng-deep .button ::ng-deep .text{font-size:10px}.upload-panel .context .context-panel{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;width:100%;margin-top:20px}.upload-panel .context .context-panel .upload-url{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;width:100%}.upload-panel .context .context-panel .upload-url .url-input{width:100%;height:27px;border:1px solid #25c2d4;font-size:14px;padding-left:6px}.upload-panel .context .context-panel .upload-url .url-check{width:31px;height:31px;color:#fff;font-size:15px;background-color:#25c2d4}.upload-panel .context .context-panel .upload-url .url-check .ng-fa-icon{display:block;padding:8px}.upload-panel gd-drop-down{margin-right:10px}.file-description .ng-fa-icon.fa-file-pdf{color:#e04e4e}.file-description .ng-fa-icon.fa-file-word{color:#539cf0}.file-description .ng-fa-icon.fa-file-powerpoint{color:#e29e1e}.file-description .ng-fa-icon.fa-file-excel{color:#7cbc46}.file-description .ng-fa-icon.fa-file-image{color:#c375ed}.file-description .ng-fa-icon.fa-file,.file-description .ng-fa-icon.fa-file-alt,.file-description .ng-fa-icon.fa-file-text .fa-folder{color:#4b566c}.file-description .ng-fa-icon{font-size:32px}.file-name{font-size:16px;color:#6e6e6e;overflow:hidden;text-overflow:ellipsis}.file-name-format{padding-left:11px;overflow:hidden}.file-format{font-size:10px;padding-top:3px;color:#acacac}.go-up,.list-files-lines{border-bottom:1px solid #e7e7e7}.list-files-lines:hover{background-color:#e5e5e5}.gd-dnd-wrap{background-color:#fff;cursor:default;position:absolute;width:100%;height:calc(100% - 60px);background:rgba(255,255,255,.7);z-index:1;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center}.dnd-wrapper{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;top:259px;position:absolute}.dnd-wrapper .text{color:#6e6e6e;font-size:14px}.dnd-wrapper .icon{display:-webkit-box;display:flex;width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}@media (max-width:1037px){.file-size,.header-size{width:18%}.gd-dnd-wrap{width:95%}#gd-browse-section{width:100%;height:calc(100% - 146px)}}"] + template: "\r\n
\r\n
\r\n \r\n Drop file here to upload\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Upload file\r\n \r\n \r\n \r\n \r\n \r\n
{{item.name}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
FILE
\r\n
SIZE
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
..
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{file?.name}}
\r\n
{{getFormatName(file)}}
\r\n
\r\n
\r\n
\r\n {{getSize(file?.size)}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n  Loading... Please wait.\r\n
\r\n
\r\n
\r\n", + styles: [".gd-modal-table{width:100%;text-align:left}#gd-browse-section{width:1036px;height:561px;overflow-y:auto}.list-files-header{height:60px;color:#6e6e6e;font-size:13px;font-weight:700;background-color:#f4f4f4;margin-top:24px}.list-files-header.upload-url{margin-top:20px}.header-name{padding-left:24px;width:90%;line-height:60px}.header-size{padding-right:27px;line-height:60px}.file-size,.header-size{width:10%;color:#777;text-align:right}.file-description{display:flex;width:90%;padding:18px 0 18px 24px;font-size:14px;flex:1;cursor:pointer;overflow:hidden}.file-size{font-size:12px;padding:0 27px 0 0;width:10%;line-height:79px}.list-files-header,.list-files-lines{display:flex;width:100%;justify-content:space-between}.gd-modal-spinner{background-color:#fff;width:100%;height:20px;text-align:center;font-size:16px}.gd-cancel-button{padding:7px;background:0 0;width:28px;overflow:hidden}.gd-cancel-button i{font-size:21px}.gd-file-name{white-space:nowrap;overflow:hidden;width:100%;text-overflow:ellipsis}.go-up{display:flex;font-size:26px;cursor:pointer;color:#4b566c;height:79px}.go-up-dots{margin-left:20px;margin-top:22px;font-size:16px}.go-up-icon{display:block;padding:18px 0 18px 24px}.upload-panel{display:flex;position:relative;width:100%}.upload-panel .context{display:flex;flex-direction:column;width:100%;margin-left:24px;margin-top:24px;margin-right:24px}.upload-panel .context .context-actions{display:flex;flex-direction:row;width:100%}.upload-panel .context .context-actions :last-child{margin-right:0}.upload-panel .context .context-actions ::ng-deep .button{height:37px;width:96px;padding:0;justify-content:center}.upload-panel .context .context-actions ::ng-deep .button ::ng-deep .text{font-size:10px}.upload-panel .context .context-panel{display:flex;flex-direction:row;width:100%;margin-top:20px}.upload-panel .context .context-panel .upload-url{display:flex;flex-direction:row;width:100%}.upload-panel .context .context-panel .upload-url .url-input{width:100%;height:27px;border:1px solid #25c2d4;font-size:14px;padding-left:6px}.upload-panel .context .context-panel .upload-url .url-check{width:31px;height:31px;color:#fff;font-size:15px;background-color:#25c2d4}.upload-panel .context .context-panel .upload-url .url-check .ng-fa-icon{display:block;padding:8px}.upload-panel gd-drop-down{margin-right:10px}.file-description .ng-fa-icon.fa-file-pdf{color:#e04e4e}.file-description .ng-fa-icon.fa-file-word{color:#539cf0}.file-description .ng-fa-icon.fa-file-powerpoint{color:#e29e1e}.file-description .ng-fa-icon.fa-file-excel{color:#7cbc46}.file-description .ng-fa-icon.fa-file-image{color:#c375ed}.file-description .ng-fa-icon.fa-file,.file-description .ng-fa-icon.fa-file-alt,.file-description .ng-fa-icon.fa-file-text .fa-folder{color:#4b566c}.file-description .ng-fa-icon{font-size:32px}.file-name{font-size:16px;color:#6e6e6e;overflow:hidden;text-overflow:ellipsis}.file-name-format{padding-left:11px;overflow:hidden}.file-format{font-size:10px;padding-top:3px;color:#acacac}.go-up,.list-files-lines{border-bottom:1px solid #e7e7e7}.list-files-lines:hover{background-color:#e5e5e5}.gd-dnd-wrap{background-color:#fff;cursor:default;position:absolute;width:100%;height:calc(100% - 60px);background:rgba(255,255,255,.7);z-index:1;display:flex;justify-content:center;align-items:center}.dnd-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;top:259px;position:absolute}.dnd-wrapper .text{color:#6e6e6e;font-size:14px}.dnd-wrapper .icon{display:flex;width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}@media (max-width:1037px){.file-size,.header-size{width:18%}.gd-dnd-wrap{width:95%}#gd-browse-section{width:100%;height:calc(100% - 146px)}}"] }] } ]; /** @nocollapse */ @@ -2088,8 +2088,8 @@ var DocumentComponent = /** @class */ (function () { DocumentComponent.decorators = [ { type: Component, args: [{ selector: 'gd-document', - template: "
Please wait...
\n
\n
\n
\n \n
\n
\n \n
\n", - styles: [":host{-webkit-box-flex:1;flex:1;-webkit-transition:.4s;transition:.4s;background-color:#e7e7e7;height:100%;overflow:scroll;touch-action:auto!important}:host .document{-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;user-select:text!important;touch-action:auto!important}.page{display:inline-block;background-color:#fff;margin:20px;box-shadow:0 3px 6px rgba(0,0,0,.16);-webkit-transition:.3s;transition:.3s}.page.excel{overflow:auto}.page.presentation{margin:0;-webkit-transition:unset;transition:unset}.page.presentation.active{margin:20px}.wait{position:absolute;top:55px;left:Calc(30%)}.panzoom{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;flex-wrap:wrap;-webkit-box-pack:center;justify-content:center;align-content:flex-start}@media (max-width:1037px){.page{min-width:unset!important;min-height:unset!important;margin:5px 0}}"] + template: "
Please wait...
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n", + styles: [":host{flex:1;transition:.4s;background-color:#e7e7e7;height:100%;overflow:scroll;touch-action:auto!important}:host .document{-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;user-select:text!important;touch-action:auto!important}.page{display:inline-block;background-color:#fff;margin:20px;box-shadow:0 3px 6px rgba(0,0,0,.16);transition:.3s}.page.excel{overflow:auto}.page.presentation{margin:0;transition:unset}.page.presentation.active{margin:20px}.wait{position:absolute;top:55px;left:Calc(30%)}.panzoom{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-content:flex-start}@media (max-width:1037px){.page{min-width:unset!important;min-height:unset!important;margin:5px 0}}"] }] } ]; /** @nocollapse */ @@ -2223,7 +2223,7 @@ var PageComponent = /** @class */ (function () { PageComponent.decorators = [ { type: Component, args: [{ selector: 'gd-page', - template: "
\n
\n \"\"\n\n
\n \n  Loading... Please wait.\n
\n
\n", + template: "
\r\n
\r\n \"\"\r\n\r\n
\r\n \r\n  Loading... Please wait.\r\n
\r\n
\r\n", styles: [".gd-page-spinner{margin-top:150px;text-align:center}.gd-wrapper{width:inherit;height:inherit}.gd-wrapper div{width:100%}::ng-deep .gd-highlight{background-color:#ff0}::ng-deep .gd-highlight-select{background-color:#ff9b00}"] }] } ]; @@ -2437,8 +2437,8 @@ var UploadFileZoneComponent = /** @class */ (function () { UploadFileZoneComponent.decorators = [ { type: Component, args: [{ selector: 'gd-upload-file-zone', - template: "
\n
\n \n
\n

Drag & Drop your files here

\n

OR

\n
\n \n
\n
\n", - styles: [".gd-drag-n-drop-wrap{border:2px dashed #ccc;background-color:#f8f8f8;text-align:center;cursor:default;position:absolute;width:-webkit-fill-available;left:1px;display:-webkit-box;display:flex;align-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:center;justify-content:center;opacity:.9;z-index:1}.gd-drag-n-drop-wrap h2{color:#959da5;margin:5px 0;font-size:15px;font-weight:300}.gd-drag-n-drop-wrap h4{color:#cacaca;font-weight:300;font-size:12px;margin:10px 0 15px}.gd-drag-n-drop-icon .fa-cloud-download-alt{color:#d1d1d1;font-size:110px}.gd-drag-n-drop-buttons i{margin-right:5px}.gd-drag-n-drop-buttons .btn{width:134px;height:35px;margin:0 10px;font-size:12px;font-weight:400}.gd-drag-n-drop-wrap.hover{background:#ddd;border-color:#aaa}"] + template: "
\r\n
\r\n \r\n
\r\n

Drag & Drop your files here

\r\n

OR

\r\n
\r\n \r\n
\r\n
\r\n", + styles: [".gd-drag-n-drop-wrap{border:2px dashed #ccc;background-color:#f8f8f8;text-align:center;cursor:default;position:absolute;width:-webkit-fill-available;left:1px;display:flex;align-content:center;flex-direction:column;justify-content:center;opacity:.9;z-index:1}.gd-drag-n-drop-wrap h2{color:#959da5;margin:5px 0;font-size:15px;font-weight:300}.gd-drag-n-drop-wrap h4{color:#cacaca;font-weight:300;font-size:12px;margin:10px 0 15px}.gd-drag-n-drop-icon .fa-cloud-download-alt{color:#d1d1d1;font-size:110px}.gd-drag-n-drop-buttons i{margin-right:5px}.gd-drag-n-drop-buttons .btn{width:134px;height:35px;margin:0 10px;font-size:12px;font-weight:400}.gd-drag-n-drop-wrap.hover{background:#ddd;border-color:#aaa}"] }] } ]; /** @nocollapse */ @@ -3449,8 +3449,8 @@ var SelectComponent = /** @class */ (function () { SelectComponent.decorators = [ { type: Component, args: [{ selector: 'gd-select', - template: "
\n
\n {{showSelected?.name}}\n
\n \n \n
\n
\n
{{option.name}}
\n
\n
\n
\n
\n", - styles: [".select{min-width:50px;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;color:#959da5}.selected-value{font-size:14px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:clip;max-width:70px}.selected-value.inactive{cursor:not-allowed;color:#ccc}.nav-caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-right:4px solid transparent;border-left:4px solid transparent;cursor:pointer}.nav-caret.inactive{cursor:not-allowed;color:#ccc}.dropdown-menu{position:absolute;top:49px;z-index:1000;float:left;min-width:96px;list-style:none;font-size:13px;text-align:left;background-color:#fff;box-shadow:0 3px 6px rgba(0,0,0,.3);background-clip:padding-box}.dropdown-menu .option{display:block;padding:7px 0 7px 7px;clear:both;font-weight:400;line-height:1.42857143;white-space:nowrap;cursor:pointer;font-size:10px}.dropdown-menu .option:hover{background-color:#25c2d4;color:#fff!important}.dropdown-menu-separator{height:1px;overflow:hidden;background-color:#f4f4f4;padding:0!important}"] + template: "
\r\n
\r\n {{showSelected?.name}}\r\n
\r\n \r\n \r\n
\r\n
\r\n
{{option.name}}
\r\n
\r\n
\r\n
\r\n
\r\n", + styles: [".select{min-width:50px;display:flex;flex-direction:row;justify-content:center;align-items:center;color:#959da5}.selected-value{font-size:14px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:clip;max-width:70px}.selected-value.inactive{cursor:not-allowed;color:#ccc}.nav-caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-right:4px solid transparent;border-left:4px solid transparent;cursor:pointer}.nav-caret.inactive{cursor:not-allowed;color:#ccc}.dropdown-menu{position:absolute;top:49px;z-index:1000;float:left;min-width:96px;list-style:none;font-size:13px;text-align:left;background-color:#fff;box-shadow:0 3px 6px rgba(0,0,0,.3);background-clip:padding-box}.dropdown-menu .option{display:block;padding:7px 0 7px 7px;clear:both;font-weight:400;line-height:1.42857143;white-space:nowrap;cursor:pointer;font-size:10px}.dropdown-menu .option:hover{background-color:#25c2d4;color:#fff!important}.dropdown-menu-separator{height:1px;overflow:hidden;background-color:#f4f4f4;padding:0!important}"] }] } ]; /** @nocollapse */ @@ -3706,8 +3706,8 @@ var InitStateComponent = /** @class */ (function () { InitStateComponent.decorators = [ { type: Component, args: [{ selector: 'gd-init-state', - template: "
\n
\n \n \n \n \n
\n
\n \n {{text}}\n
\n
\n", - styles: [".wrapper{color:#959da5;background-color:#e7e7e7;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;width:100%;height:100%}.icon{font-size:65px;margin-bottom:43px;display:-webkit-box;display:flex;color:#959da5}.start{font-size:15px;text-align:center;color:#959da5}.gd-drag-n-drop-wrap.active{background-color:#fff;position:fixed;top:0;background:rgba(255,255,255,.8)}.gd-drag-n-drop-wrap.active .init-state-wrapper{position:absolute;opacity:.2;top:unset}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper{top:0;z-index:999}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper .icon{width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}.gd-drag-n-drop-wrap.active .text{color:#6e6e6e;font-size:14px}.init-state-dnd-wrapper,.init-state-wrapper{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;width:250px;height:250px;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center}.init-state-wrapper{top:-60px;position:relative}"] + template: "
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {{text}}\r\n
\r\n
\r\n", + styles: [".wrapper{color:#959da5;background-color:#e7e7e7;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%}.icon{font-size:65px;margin-bottom:43px;display:flex;color:#959da5}.start{font-size:15px;text-align:center;color:#959da5}.gd-drag-n-drop-wrap.active{background-color:#fff;position:fixed;top:0;background:rgba(255,255,255,.8)}.gd-drag-n-drop-wrap.active .init-state-wrapper{position:absolute;opacity:.2;top:unset}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper{top:0;z-index:999}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper .icon{width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}.gd-drag-n-drop-wrap.active .text{color:#6e6e6e;font-size:14px}.init-state-dnd-wrapper,.init-state-wrapper{display:flex;flex-direction:column;width:250px;height:250px;align-items:center;justify-content:center}.init-state-wrapper{top:-60px;position:relative}"] }] } ]; /** @nocollapse */ @@ -4034,8 +4034,8 @@ var ErrorModalComponent = /** @class */ (function () { ErrorModalComponent.decorators = [ { type: Component, args: [{ selector: 'gd-error-modal', - template: "\n
\n \n
\n
Something went wrong
\n
{{message ? message : 'Server is not available'}}
\n
\n
\n
\n", - styles: [".gd-modal-error{display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-flex:1;flex:1}.gd-modal-error .gd-modal-error-message{font-size:12px;margin:0 24px 24px 0;word-break:break-word}.gd-modal-error .gd-modal-error-title{font-size:16px;font-weight:700;margin:14px 0 10px}#gd-error-section{max-width:468px;max-height:204px;display:-webkit-box;display:flex}#gd-error-section fa-icon{-webkit-box-flex:1;flex:1;color:#e04e4e;font-size:40px;margin:13px 23px 90px;text-align:center;max-width:46px}"] + template: "\r\n
\r\n \r\n
\r\n
Something went wrong
\r\n
{{message ? message : 'Server is not available'}}
\r\n
\r\n
\r\n
\r\n", + styles: [".gd-modal-error{display:inline-flex;flex-direction:column;flex:1}.gd-modal-error .gd-modal-error-message{font-size:12px;margin:0 24px 24px 0;word-break:break-word}.gd-modal-error .gd-modal-error-title{font-size:16px;font-weight:700;margin:14px 0 10px}#gd-error-section{max-width:468px;max-height:204px;display:flex}#gd-error-section fa-icon{flex:1;color:#e04e4e;font-size:40px;margin:13px 23px 90px;text-align:center;max-width:46px}"] }] } ]; /** @nocollapse */ @@ -4170,8 +4170,8 @@ var PasswordRequiredComponent = /** @class */ (function () { PasswordRequiredComponent.decorators = [ { type: Component, args: [{ selector: 'gd-password-required', - template: "\n
\n
\n \n \n {{message}}\n \n Open\n \n
\n
\n
\n", - styles: ["#gd-password-section{width:375px;height:164px}.gd-password-wrap{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;margin:24px}.gd-password-wrap label{font-size:14px;color:#acacac;padding-bottom:12px}.gd-password-wrap input{height:30px;border:1px solid #25c2d4}.gd-password-wrap input.error{border-color:#e04e4e}.gd-password-wrap gd-button{align-self:flex-end}.gd-password-wrap ::ng-deep .button{height:37px;width:72px;padding:0;-webkit-box-pack:center;justify-content:center}.gd-password-wrap ::ng-deep .button ::ng-deep .text{font-size:10px!important}.gd-password-error{color:#e04e4e;padding:10px 0 12px;height:12px;line-height:12px;font-size:12px}@media (max-width:1037px){#gd-password-section{min-width:375px}}"] + template: "\r\n
\r\n
\r\n \r\n \r\n {{message}}\r\n \r\n Open\r\n \r\n
\r\n
\r\n
\r\n", + styles: ["#gd-password-section{width:375px;height:164px}.gd-password-wrap{display:flex;flex-direction:column;margin:24px}.gd-password-wrap label{font-size:14px;color:#acacac;padding-bottom:12px}.gd-password-wrap input{height:30px;border:1px solid #25c2d4}.gd-password-wrap input.error{border-color:#e04e4e}.gd-password-wrap gd-button{align-self:flex-end}.gd-password-wrap ::ng-deep .button{height:37px;width:72px;padding:0;justify-content:center}.gd-password-wrap ::ng-deep .button ::ng-deep .text{font-size:10px!important}.gd-password-error{color:#e04e4e;padding:10px 0 12px;height:12px;line-height:12px;font-size:12px}@media (max-width:1037px){#gd-password-section{min-width:375px}}"] }] } ]; /** @nocollapse */ @@ -4488,8 +4488,8 @@ var SearchComponent = /** @class */ (function () { SearchComponent.decorators = [ { type: Component, args: [{ selector: 'gd-search', - template: "
\n \n
{{current}} of {{total}}
\n \n \n \n \n \n \n
\n", - styles: [".gd-nav-search-btn{margin:3px 0 4px}.gd-nav-search-cancel{color:#fff;font-size:14px;width:37px}.gd-search-count{color:#959da5;font-size:12px;position:absolute;right:148px;top:14px}.gd-nav-search-container{background-color:#3e4e5a;width:410px;position:fixed;left:50%;top:60px;z-index:2;-webkit-transform:translate(-50%,0);transform:translate(-50%,0);display:-webkit-box;display:flex}.gd-search-input{float:left;height:30px;width:267px;font-size:14px;color:#6e6e6e;border:1px solid #25c2d4;margin:7px 0 7px 7px;box-sizing:border-box;padding:6px 0 5px 9px}input[type=text]::-ms-clear{display:none}@media (max-width:1037px){.gd-search-input{width:231px;height:30px;margin:7px 0 7px 5px}.gd-search-count{position:absolute;left:193px;top:15px}.gd-nav-search-container{width:100%}}"] + template: "
\r\n \r\n
{{current}} of {{total}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n", + styles: [".gd-nav-search-btn{margin:3px 0 4px}.gd-nav-search-cancel{color:#fff;font-size:14px;width:37px}.gd-search-count{color:#959da5;font-size:12px;position:absolute;right:148px;top:14px}.gd-nav-search-container{background-color:#3e4e5a;width:410px;position:fixed;left:50%;top:60px;z-index:2;transform:translate(-50%,0);display:flex}.gd-search-input{float:left;height:30px;width:267px;font-size:14px;color:#6e6e6e;border:1px solid #25c2d4;margin:7px 0 7px 7px;box-sizing:border-box;padding:6px 0 5px 9px}input[type=text]::-ms-clear{display:none}@media (max-width:1037px){.gd-search-input{width:231px;height:30px;margin:7px 0 7px 5px}.gd-search-count{position:absolute;left:193px;top:15px}.gd-nav-search-container{width:100%}}"] }] } ]; /** @nocollapse */ @@ -4768,8 +4768,8 @@ var TabbedToolbarsComponent = /** @class */ (function () { TabbedToolbarsComponent.decorators = [ { type: Component, args: [{ selector: 'gd-tabbed-toolbars', - template: "
\n \n \n
\n", - styles: [".top-panel{background:#3e4e5a;display:-webkit-box;display:flex;width:100%;height:90px}.top-panel ::ng-deep .logo{height:30px;font-size:16px}@media (max-width:1037px){.top-panel{height:60px}.top-panel ::ng-deep .logo{height:60px}}"] + template: "
\r\n \r\n \r\n
\r\n", + styles: [".top-panel{background:#3e4e5a;display:flex;width:100%;height:90px}.top-panel ::ng-deep .logo{height:30px;font-size:16px}@media (max-width:1037px){.top-panel{height:60px}.top-panel ::ng-deep .logo{height:60px}}"] }] } ]; /** @nocollapse */ @@ -4892,8 +4892,8 @@ var TabComponent = /** @class */ (function () { TabComponent.decorators = [ { type: Component, args: [{ selector: 'gd-tab', - template: "
\n
{{tabTitle}}
\n \n
\n
\n \n
\n", - styles: [".tab-content{height:60px;position:absolute;background-color:#fff;width:100%;left:0;line-height:60px;display:none;z-index:9}.tab-content ::ng-deep .toolbar-panel{height:60px}.tab-content.active{display:-webkit-box;display:flex}.gd-tab{text-align:center;font-size:11px;color:#e5e5e5;height:30px;line-height:30px;cursor:pointer;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center}.gd-tab .icon{display:none;font-size:14px}.gd-tab .title{margin:auto 23px}.gd-tab.active{background-color:#fff;color:#3e4e5a;font-weight:700}@media (max-width:1037px){.gd-tab{height:60px;line-height:60px;width:60px}.gd-tab .title{display:none}.gd-tab .icon{display:block;font-size:22px}}"] + template: "
\r\n
{{tabTitle}}
\r\n \r\n
\r\n
\r\n \r\n
\r\n", + styles: [".tab-content{height:60px;position:absolute;background-color:#fff;width:100%;left:0;line-height:60px;display:none;z-index:9}.tab-content ::ng-deep .toolbar-panel{height:60px}.tab-content.active{display:flex}.gd-tab{text-align:center;font-size:11px;color:#e5e5e5;height:30px;line-height:30px;cursor:pointer;display:flex;align-items:center;justify-content:center}.gd-tab .icon{display:none;font-size:14px}.gd-tab .title{margin:auto 23px}.gd-tab.active{background-color:#fff;color:#3e4e5a;font-weight:700}@media (max-width:1037px){.gd-tab{height:60px;line-height:60px;width:60px}.gd-tab .title{display:none}.gd-tab .icon{display:block;font-size:22px}}"] }] } ]; /** @nocollapse */ @@ -4940,8 +4940,8 @@ var TabsComponent = /** @class */ (function () { TabsComponent.decorators = [ { type: Component, args: [{ selector: 'gd-tabs', - template: "
\n \n
\n", - styles: [".gd-tabs{display:-webkit-box;display:flex}"] + template: "
\r\n \r\n
\r\n", + styles: [".gd-tabs{display:flex}"] }] } ]; /** @nocollapse */ @@ -5521,8 +5521,8 @@ var ColorPickerComponent = /** @class */ (function () { ColorPickerComponent.decorators = [ { type: Component, args: [{ selector: 'gd-color-picker', - template: "
\n
\n
\n
\n
\n", - styles: [".bcPicker-picker{border:1px;border-radius:100%}.bcPicker-palette{width:250px;background-color:#fdfdfd;z-index:999;box-shadow:0 0 5px #efefef;display:-webkit-box;display:flex;flex-wrap:wrap;-webkit-box-pack:center;justify-content:center}.bcPicker-palette>.bcPicker-color{width:18px;height:18px;margin:2px;cursor:pointer}"] + template: "
\r\n
\r\n
\r\n
\r\n
\r\n", + styles: [".bcPicker-picker{border:1px;border-radius:100%}.bcPicker-palette{width:250px;background-color:#fdfdfd;z-index:999;box-shadow:0 0 5px #efefef;display:flex;flex-wrap:wrap;justify-content:center}.bcPicker-palette>.bcPicker-color{width:18px;height:18px;margin:2px;cursor:pointer}"] }] } ]; /** @nocollapse */ @@ -6196,8 +6196,8 @@ var SuccessModalComponent = /** @class */ (function () { SuccessModalComponent.decorators = [ { type: Component, args: [{ selector: 'gd-success-modal', - template: "\n
\n
\n \n \n
\n
\n
\n
\n
\n", - styles: [".check_mark{margin:47px auto}.sa-icon{width:80px;height:80px;border:4px solid gray;border-radius:50%;padding:0;position:relative;box-sizing:content-box}#gd-modal-success{display:-webkit-box;display:flex;overflow:hidden;width:469px;height:183px}.sa-icon.sa-success{border-color:#4caf50;-webkit-transform:scale(1.18);transform:scale(1.18)}.sa-icon.sa-success::after,.sa-icon.sa-success::before{content:'';position:absolute;width:60px;height:120px;background:#fff}.sa-icon.sa-success::before{border-radius:120px 0 0 120px;top:-7px;left:-33px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform-origin:60px 60px;transform-origin:60px 60px}.sa-icon.sa-success::after{border-radius:0 120px 120px 0;top:-11px;left:30px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform-origin:0 60px;transform-origin:0 60px}.sa-icon.sa-success .sa-placeholder{width:80px;height:80px;border:4px solid rgba(76,175,80,.5);border-radius:50%;box-sizing:content-box;position:absolute;left:-4px;top:-4px;z-index:2}.sa-icon.sa-success .sa-fix{width:5px;height:90px;background-color:#fff;position:absolute;left:28px;top:8px;z-index:1;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.sa-icon.sa-success.animate::after{-webkit-animation:4.25s ease-in rotatePlaceholder;animation:4.25s ease-in rotatePlaceholder}.animateSuccessTip{-webkit-animation:.75s animateSuccessTip;animation:.75s animateSuccessTip}.animateSuccessLong{-webkit-animation:.75s animateSuccessLong;animation:.75s animateSuccessLong}@-webkit-keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}@-webkit-keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}.sa-icon.sa-success .sa-line{height:5px;background-color:#4caf50;display:block;border-radius:2px;position:absolute;z-index:2}.sa-icon.sa-success .sa-line.sa-tip{width:25px;left:14px;top:46px;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.sa-icon.sa-success .sa-line.sa-long{width:47px;right:8px;top:38px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}@-webkit-keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@media (max-width:1037px){#gd-modal-success{left:50%;top:50%;position:relative;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}}"] + template: "\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n", + styles: [".check_mark{margin:47px auto}.sa-icon{width:80px;height:80px;border:4px solid gray;border-radius:50%;padding:0;position:relative;box-sizing:content-box}#gd-modal-success{display:flex;overflow:hidden;width:469px;height:183px}.sa-icon.sa-success{border-color:#4caf50;transform:scale(1.18)}.sa-icon.sa-success::after,.sa-icon.sa-success::before{content:'';position:absolute;width:60px;height:120px;background:#fff}.sa-icon.sa-success::before{border-radius:120px 0 0 120px;top:-7px;left:-33px;transform:rotate(-45deg);transform-origin:60px 60px}.sa-icon.sa-success::after{border-radius:0 120px 120px 0;top:-11px;left:30px;transform:rotate(-45deg);transform-origin:0 60px}.sa-icon.sa-success .sa-placeholder{width:80px;height:80px;border:4px solid rgba(76,175,80,.5);border-radius:50%;box-sizing:content-box;position:absolute;left:-4px;top:-4px;z-index:2}.sa-icon.sa-success .sa-fix{width:5px;height:90px;background-color:#fff;position:absolute;left:28px;top:8px;z-index:1;transform:rotate(-45deg)}.sa-icon.sa-success.animate::after{-webkit-animation:4.25s ease-in rotatePlaceholder;animation:4.25s ease-in rotatePlaceholder}.animateSuccessTip{-webkit-animation:.75s animateSuccessTip;animation:.75s animateSuccessTip}.animateSuccessLong{-webkit-animation:.75s animateSuccessLong;animation:.75s animateSuccessLong}@-webkit-keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}@-webkit-keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}.sa-icon.sa-success .sa-line{height:5px;background-color:#4caf50;display:block;border-radius:2px;position:absolute;z-index:2}.sa-icon.sa-success .sa-line.sa-tip{width:25px;left:14px;top:46px;transform:rotate(45deg)}.sa-icon.sa-success .sa-line.sa-long{width:47px;right:8px;top:38px;transform:rotate(-45deg)}@-webkit-keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@media (max-width:1037px){#gd-modal-success{left:50%;top:50%;position:relative;transform:translate(-50%,-50%)}}"] }] } ]; /** @nocollapse */ @@ -6479,8 +6479,8 @@ var LoadingMaskComponent = /** @class */ (function () { LoadingMaskComponent.decorators = [ { type: Component, args: [{ selector: 'gd-loading-mask', - template: "
\n
\n  Loading... Please wait.\n
\n
\n", - styles: [".loading-wrapper{background:rgba(0,0,0,.5);width:100%;height:100%;font-size:14px;color:#fff;position:fixed;top:0;left:0;z-index:99999}.loading-message{position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}"] + template: "
\r\n
\r\n  Loading... Please wait.\r\n
\r\n
\r\n", + styles: [".loading-wrapper{background:rgba(0,0,0,.5);width:100%;height:100%;font-size:14px;color:#fff;position:fixed;top:0;left:0;z-index:99999}.loading-message{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}"] }] } ]; /** @nocollapse */ @@ -6597,7 +6597,7 @@ var DropDownToggleComponent = /** @class */ (function () { selector: 'gd-drop-down-toggle', template: '', encapsulation: ViewEncapsulation.None, - styles: [".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] + styles: [".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] }] } ]; /** @nocollapse */ @@ -6671,7 +6671,7 @@ var DropDownItemsComponent = /** @class */ (function () { selector: 'gd-drop-down-items', template: '', encapsulation: ViewEncapsulation.None, - styles: [".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] + styles: [".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] }] } ]; /** @nocollapse */ @@ -6715,7 +6715,7 @@ var DropDownItemComponent = /** @class */ (function () { { type: Component, args: [{ selector: 'gd-drop-down-item', template: '', - styles: [".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] + styles: [".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] }] } ]; /** @nocollapse */ @@ -6790,7 +6790,7 @@ var DropDownComponent = /** @class */ (function () { selector: 'gd-drop-down', template: '', encapsulation: ViewEncapsulation.None, - styles: [".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] + styles: [".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"] }] } ]; DropDownComponent.propDecorators = { @@ -6828,8 +6828,8 @@ var LeftSideBarComponent = /** @class */ (function () { LeftSideBarComponent.decorators = [ { type: Component, args: [{ selector: 'gd-left-side-bar', - template: "
\n
\n
 Loading...\n
\n
\n \n
\n", - styles: [".left-panel{border-radius:0;float:left}.gd-left-bar-fade{margin:auto;overflow:hidden;-webkit-overflow-scrolling:touch;-webkit-transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;width:100%;height:100%;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;position:fixed;z-index:1000}@media (max-width:1037px){.gd-left-bar-fade{top:100px;right:0}.gd-left-bar-spinner{top:20%}}"] + template: "
\r\n
\r\n
 Loading...\r\n
\r\n
\r\n \r\n
\r\n", + styles: [".left-panel{border-radius:0;float:left}.gd-left-bar-fade{margin:auto;overflow:hidden;-webkit-overflow-scrolling:touch;transition:transform .3s ease-out;width:100%;height:100%;display:flex;justify-content:center;align-items:center;position:fixed;z-index:1000}@media (max-width:1037px){.gd-left-bar-fade{top:100px;right:0}.gd-left-bar-spinner{top:20%}}"] }] } ]; /** @nocollapse */ @@ -7260,8 +7260,8 @@ var ResizingComponent = /** @class */ (function () { ResizingComponent.decorators = [ { type: Component, args: [{ selector: 'gd-resizing', - template: "
\n\n
\n\n
\n\n
\n", - styles: [".ui-resizable-handle{background-color:#679ffa;width:8px;height:8px;border-radius:100%;position:absolute;font-size:.1px;display:block}.se-resize{bottom:-5px;right:-5px;cursor:se-resize}.ne-resize{top:-5px;right:-5px;cursor:ne-resize}.sw-resize{bottom:-5px;left:-5px;cursor:sw-resize}.nw-resize{top:-5px;left:-5px;cursor:nw-resize}"] + template: "
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n", + styles: [".ui-resizable-handle{background-color:#679ffa;width:8px;height:8px;border-radius:100%;position:absolute;font-size:.1px;display:block}.se-resize{bottom:-5px;right:-5px;cursor:se-resize}.ne-resize{top:-5px;right:-5px;cursor:ne-resize}.sw-resize{bottom:-5px;left:-5px;cursor:sw-resize}.nw-resize{top:-5px;left:-5px;cursor:nw-resize}@media (max-width:1037px){.ui-resizable-handle{width:12px;height:12px}}"] }] } ]; /** @nocollapse */ @@ -7417,8 +7417,8 @@ var TopTabComponent = /** @class */ (function () { TopTabComponent.decorators = [ { type: Component, args: [{ selector: 'gd-top-tab', - template: "
\n \n \n
\n", - styles: [".gd-tab{font-size:14px;color:#3e4e5a;cursor:pointer;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;align-content:center;-webkit-box-pack:center;justify-content:center;min-width:36px;height:36px;text-align:center;position:relative;white-space:nowrap;padding:0!important;margin:0 10px}.gd-tab .gd-tab-tooltip{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;margin:0!important}.gd-tab.active{background-color:#acacac;color:#fff!important;font-weight:700}.gd-tab.disabled{cursor:not-allowed;opacity:.4}.gd-tab ::ng-deep .tooltip{font-size:12px;margin:20px -57px}.gd-tab .title{margin:auto 23px}@media (max-width:1037px){.gd-tab{font-size:20px}}"] + template: "
\r\n \r\n \r\n
\r\n", + styles: [".gd-tab{font-size:14px;color:#3e4e5a;cursor:pointer;display:flex;flex-direction:column;align-items:center;align-content:center;justify-content:center;min-width:36px;height:36px;text-align:center;position:relative;white-space:nowrap;padding:0!important;margin:0 10px}.gd-tab .gd-tab-tooltip{display:flex;flex-direction:column;margin:0!important}.gd-tab.active{background-color:#acacac;color:#fff!important;font-weight:700}.gd-tab.disabled{cursor:not-allowed;opacity:.4}.gd-tab ::ng-deep .tooltip{font-size:12px;margin:20px -57px}.gd-tab .title{margin:auto 23px}@media (max-width:1037px){.gd-tab{font-size:20px}}"] }] } ]; /** @nocollapse */ @@ -7661,8 +7661,8 @@ var TextMenuComponent = /** @class */ (function () { TextMenuComponent.decorators = [ { type: Component, args: [{ selector: 'gd-text-menu', - template: "
\n \n \n \n \n \n \n
\n
\n \n \n
\n", - styles: ["::ng-deep .active{background-color:#e7e7e7}.gd-text-menu{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row}.gd-text-menu .format-select{height:37px;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;max-width:80px;margin:0 3px}.gd-text-menu .first-component{margin-left:8px}.gd-text-menu ::ng-deep .dropdown-menu{top:40px!important;height:120px;overflow-y:auto}.gd-text-menu ::ng-deep .icon-button{margin:0!important}.bg-color-pic{border-radius:100%;border:1px solid #ccc;position:absolute;height:8px;width:8px;right:6px;bottom:6px}.palette{position:relative;top:40px;left:-55px;z-index:100}@media (max-width:1037px){.gd-text-menu{position:fixed;left:0;right:0;width:inherit;height:60px;-webkit-box-align:center;align-items:center;padding:0;margin:0;background-color:#fff;border-top:2px solid #707070;-webkit-transform-origin:top left;transform-origin:top left;z-index:1000}.gd-text-menu ::ng-deep .selected-value{white-space:normal!important;word-wrap:break-word}.gd-text-menu .icon{color:#fff;margin:0 9px}.gd-text-menu ::ng-deep .bcPicker-palette{left:-200px;top:-185px}.gd-text-menu .palette{top:unset;bottom:40px;left:unset;right:5px}.gd-text-menu ::ng-deep .dropdown-menu{bottom:40px;top:unset!important}.gd-text-menu ::ng-deep .first-component ::ng-deep .dropdown-menu{left:0}.gd-text-menu ::ng-deep .button{margin:3px!important;font-size:16px}}"] + template: "
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n", + styles: ["::ng-deep .active{background-color:#e7e7e7}.gd-text-menu{display:flex;flex-direction:row}.gd-text-menu .format-select{height:37px;display:flex;justify-content:center;align-items:center;max-width:80px;margin:0 3px}.gd-text-menu .first-component{margin-left:8px}.gd-text-menu ::ng-deep .dropdown-menu{top:40px!important;height:120px;overflow-y:auto}.gd-text-menu ::ng-deep .icon-button{margin:0!important}.bg-color-pic{border-radius:100%;border:1px solid #ccc;position:absolute;height:8px;width:8px;right:6px;bottom:6px}.palette{position:relative;top:40px;left:-55px;z-index:100}@media (max-width:1037px){.gd-text-menu{position:fixed;left:0;right:0;width:inherit;height:60px;align-items:center;padding:0;margin:0;background-color:#fff;border-top:2px solid #707070;transform-origin:top left;z-index:1000}.gd-text-menu ::ng-deep .selected-value{white-space:normal!important;word-wrap:break-word}.gd-text-menu .icon{color:#fff;margin:0 9px}.gd-text-menu ::ng-deep .bcPicker-palette{left:-200px;top:-185px}.gd-text-menu .palette{top:unset;bottom:40px;left:unset;right:5px}.gd-text-menu ::ng-deep .dropdown-menu{bottom:40px;top:unset!important}.gd-text-menu ::ng-deep .first-component ::ng-deep .dropdown-menu{left:0}.gd-text-menu ::ng-deep .button{margin:3px!important;font-size:16px}}"] }] } ]; /** @nocollapse */ @@ -7966,8 +7966,8 @@ var ContextMenuComponent = /** @class */ (function () { ContextMenuComponent.decorators = [ { type: Component, args: [{ selector: 'gd-context-menu', - template: "
10 ? 'gd-context-menu-top' : 'gd-context-menu-bottom'\">\n \n \n \n \n \n \n
\n", - styles: [".gd-context-menu-top{top:-44px}.gd-context-menu-bottom{bottom:-40px}.gd-context-menu{box-shadow:rgba(0,0,0,.52) 0 0 5px;background-color:#fff;position:absolute;left:0;right:0;margin:auto;cursor:default;width:max-content;width:-moz-max-content;width:-webkit-max-content;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;z-index:999}.gd-context-menu .arrows{cursor:move}.gd-context-menu ::ng-deep .active{background-color:#e7e7e7}.gd-context-menu ::ng-deep .icon-button{margin:0!important}@media (max-width:1037px){.gd-context-menu-top{top:-42px;-webkit-transform-origin:bottom center;transform-origin:bottom center}}"] + template: "
10 ? 'gd-context-menu-top' : 'gd-context-menu-bottom'\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n", + styles: [".gd-context-menu-top{top:-44px}.gd-context-menu-bottom{bottom:-40px}.gd-context-menu{box-shadow:rgba(0,0,0,.52) 0 0 5px;background-color:#fff;position:absolute;left:0;right:0;margin:auto;cursor:default;width:max-content;width:-moz-max-content;width:-webkit-max-content;display:flex;flex-direction:row;z-index:999}.gd-context-menu .arrows{cursor:move}.gd-context-menu ::ng-deep .active{background-color:#e7e7e7}.gd-context-menu ::ng-deep .icon-button{margin:0!important}@media (max-width:1037px){.gd-context-menu-top{top:-42px;transform-origin:bottom center}}"] }] } ]; /** @nocollapse */ diff --git a/dist/libs/common-components/fesm5/groupdocs.examples.angular-common-components.js.map b/dist/libs/common-components/fesm5/groupdocs.examples.angular-common-components.js.map index 252f5af53..0ad61f9ff 100644 --- a/dist/libs/common-components/fesm5/groupdocs.examples.angular-common-components.js.map +++ b/dist/libs/common-components/fesm5/groupdocs.examples.angular-common-components.js.map @@ -1 +1 @@ -{"version":3,"file":"groupdocs.examples.angular-common-components.js","sources":["ng://@groupdocs.examples.angular/common-components/lib/top-toolbar/top-toolbar.component.ts","ng://@groupdocs.examples.angular/common-components/lib/side-panel/side-panel.component.ts","ng://@groupdocs.examples.angular/common-components/lib/window.service.ts","ng://@groupdocs.examples.angular/common-components/lib/button/button.component.ts","ng://@groupdocs.examples.angular/common-components/lib/logo/logo.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tooltip/tooltip.component.ts","ng://@groupdocs.examples.angular/common-components/lib/config.service.ts","ng://@groupdocs.examples.angular/common-components/lib/modal.service.ts","ng://@groupdocs.examples.angular/common-components/lib/modal/modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/file.service.ts","ng://@groupdocs.examples.angular/common-components/lib/upload-files.service.ts","ng://@groupdocs.examples.angular/common-components/lib/browse-files-modal/browse-files-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/zoom.service.ts","ng://@groupdocs.examples.angular/common-components/lib/page-preload.service.ts","ng://@groupdocs.examples.angular/common-components/lib/navigate.service.ts","ng://@groupdocs.examples.angular/common-components/lib/document/document.component.ts","ng://@groupdocs.examples.angular/common-components/lib/page/page.component.ts","ng://@groupdocs.examples.angular/common-components/lib/pipes.ts","ng://@groupdocs.examples.angular/common-components/lib/upload-file-zone/upload-file-zone.component.ts","ng://@groupdocs.examples.angular/common-components/lib/dnd.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/viewport.service.ts","ng://@groupdocs.examples.angular/common-components/lib/scrollable.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/mousewheel.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/zoom.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/on-close.service.ts","ng://@groupdocs.examples.angular/common-components/lib/select/select.component.ts","ng://@groupdocs.examples.angular/common-components/lib/disabled-cursor.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/rotation.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/init-state/init-state.component.ts","ng://@groupdocs.examples.angular/common-components/lib/render-print.service.ts","ng://@groupdocs.examples.angular/common-components/lib/render-print.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/exception-message.service.ts","ng://@groupdocs.examples.angular/common-components/lib/error-modal/error-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/password.service.ts","ng://@groupdocs.examples.angular/common-components/lib/password-required/password-required.component.ts","ng://@groupdocs.examples.angular/common-components/lib/error-interceptor.service.ts","ng://@groupdocs.examples.angular/common-components/lib/search.service.ts","ng://@groupdocs.examples.angular/common-components/lib/search/search.component.ts","ng://@groupdocs.examples.angular/common-components/lib/searchable.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/tabbed-toolbars/tabbed-toolbars.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tab-activator.service.ts","ng://@groupdocs.examples.angular/common-components/lib/tab/tab.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tabs/tabs.component.ts","ng://@groupdocs.examples.angular/common-components/lib/formatting.service.ts","ng://@groupdocs.examples.angular/common-components/lib/color-picker/color-picker.component.ts","ng://@groupdocs.examples.angular/common-components/lib/back-formatting.service.ts","ng://@groupdocs.examples.angular/common-components/lib/selection.service.ts","ng://@groupdocs.examples.angular/common-components/lib/formatting.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/success-modal/success-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/edit-html.service.ts","ng://@groupdocs.examples.angular/common-components/lib/editor.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask.service.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask/loading-mask.component.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask-interceptor.service.ts","ng://@groupdocs.examples.angular/common-components/lib/drop-down/drop-down.component.ts","ng://@groupdocs.examples.angular/common-components/lib/left-side-bar/left-side-bar.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tooltip.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/add-dynamic-component.service.ts","ng://@groupdocs.examples.angular/common-components/lib/hosting-dynamic-component.service.ts","ng://@groupdocs.examples.angular/common-components/lib/host-dynamic.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/resizing/resizing.component.ts","ng://@groupdocs.examples.angular/common-components/lib/top-tab-activator.service.ts","ng://@groupdocs.examples.angular/common-components/lib/top-tab/top-tab.component.ts","ng://@groupdocs.examples.angular/common-components/lib/text-menu/text-menu.component.ts","ng://@groupdocs.examples.angular/common-components/lib/context-menu/context-menu.component.ts","ng://@groupdocs.examples.angular/common-components/lib/common-components.module.ts"],"sourcesContent":["import {Component, Input} from '@angular/core';\n\n@Component({\n selector: 'gd-top-toolbar',\n templateUrl: './top-toolbar.component.html',\n styleUrls: ['./top-toolbar.component.less']\n})\nexport class TopToolbarComponent {\n\n constructor() {\n }\n}\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\n\n@Component({\n selector: 'gd-side-panel',\n templateUrl: './side-panel.component.html',\n styleUrls: ['./side-panel.component.less']\n})\n\nexport class SidePanelComponent {\n @Input() title: string;\n @Input() icon: string;\n @Input() closable = true;\n @Input() saveable = true;\n @Output() hideSidePanel = new EventEmitter();\n @Output() saveInSidePanel = new EventEmitter();\n\n onlyTitle = false;\n\n constructor() {\n }\n\n closeSidePanel() {\n this.hideSidePanel.emit(true);\n }\n\n saveBySidePanel() {\n this.saveInSidePanel.emit(true);\n }\n\n toggleTitleMode(){\n if (this.closable && !this.saveable) {\n this.onlyTitle = !this.onlyTitle;\n }\n }\n}\n","import {fromEvent, Observable, Subject} from \"rxjs\";\nimport {debounceTime, distinctUntilChanged, startWith, tap} from \"rxjs/operators\";\n\nconst MOBILE_MAX_WIDTH = 425;\nconst TABLET_MAX_WIDTH = 1024;\n\nexport class WindowService {\n\n private resizeSubject: Subject = new Subject();\n private _resize$;\n private width: number;\n private height: number;\n\n constructor() {\n this.width = window.innerWidth;\n this.height = window.innerHeight;\n\n this._resize$ = fromEvent(window, 'resize')\n .pipe(\n debounceTime(200),\n distinctUntilChanged(),\n startWith({target: {innerWidth: window.innerWidth, innerHeight: window.innerHeight}}),\n tap(event => {\n this.resizeSubject.next(event.target);\n this.width = (event.target as Window).innerWidth;\n this.height = (event.target as Window).innerHeight;\n }),\n );\n this._resize$.subscribe();\n }\n\n get onResize(): Observable {\n return this.resizeSubject.asObservable();\n }\n\n isMobile() {\n return this.width <= MOBILE_MAX_WIDTH;\n }\n\n isTablet() {\n return this.width <= TABLET_MAX_WIDTH;\n }\n\n isDesktop() {\n return !this.isMobile() && !this.isTablet();\n }\n\n getWidth() {\n return this.width;\n }\n\n getHeight() {\n return this.height;\n }\n\n isEdge() {\n return window.navigator.userAgent.toLowerCase().indexOf('edge') > -1;\n }\n\n isFirefox() {\n return navigator.userAgent.toLowerCase().indexOf('firefox') > -1;\n }\n}\n","import {Component, Input} from '@angular/core';\nimport {WindowService} from \"../window.service\";\n\n@Component({\n selector: 'gd-button',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.less']\n})\nexport class ButtonComponent {\n @Input() iconOnly = true;\n @Input() intent = 'default';\n @Input() disabled = false;\n @Input() icon: string;\n @Input() iconClass: string;\n @Input() tooltip: string;\n @Input() className: string;\n @Input() toggle = false;\n @Input() iconSize: string;\n @Input() iconRegular = false;\n @Input() elementPosition = 0;\n\n showToolTip = false;\n private isDesktop: boolean;\n\n constructor(windowService: WindowService) {\n this.isDesktop = windowService.isDesktop();\n windowService.onResize.subscribe((w) => {\n this.isDesktop = windowService.isDesktop();\n });\n }\n\n iconButtonClass() {\n return this.iconOnly ? 'icon-button' : '';\n }\n\n onHovering() {\n if (this.isDesktop && !this.disabled) {\n this.className += ' active';\n }\n }\n\n onUnhovering() {\n if (this.isDesktop && !this.disabled) {\n this.className = this.cleanAll(this.className, ' active');\n }\n }\n\n private cleanAll(str: string, val: string) {\n while (str && str.indexOf(val) !== -1) {\n str = str.replace(val, '');\n }\n return str;\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-logo',\n templateUrl: './logo.component.html',\n styleUrls: ['./logo.component.less']\n})\nexport class LogoComponent implements OnInit {\n\n @Input() logo;\n @Input() icon;\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-tooltip',\n templateUrl: './tooltip.component.html',\n styleUrls: ['./tooltip.component.less']\n})\nexport class TooltipComponent implements OnInit {\n\n @Input() text: string;\n @Input() position = 0;\n visibility = 'hidden';\n\n constructor() {\n }\n\n getClass() {\n if (this.position === 0) {\n return 'tooltip';\n }\n return 'tooltip ' + (this.position > 0 ? 'last-element' : 'first-element');\n }\n\n @Input()\n set show(value: boolean) {\n this.visibility = value ? 'shown' : 'hidden';\n }\n\n ngOnInit() {\n }\n\n}\n","import {HttpHeaders} from \"@angular/common/http\";\nimport {Injectable} from \"@angular/core\";\n\nexport class Api {\n public static VIEWER_APP = '/viewer';\n public static SIGNATURE_APP = '/signature';\n public static ANNOTATION_APP = '/annotation';\n public static SEARCH_APP = '/search';\n public static EDITOR_APP = '/editor';\n public static COMPARISON_APP = '/comparison';\n public static CONVERSION_APP = '/conversion';\n public static METADATA_APP = '/metadata';\n public static DEFAULT_API_ENDPOINT = window.location.href;\n public static LOAD_FILE_TREE = '/loadFileTree';\n public static LOAD_CONFIG = '/loadConfig';\n public static LOAD_DOCUMENT_DESCRIPTION = '/loadDocumentDescription';\n public static LOAD_DOCUMENT_PAGE = '/loadDocumentPage';\n public static LOAD_DOCUMENT_PROPERTIES = '/loadProperties';\n public static LOAD_DOCUMENT_PROPERTIES_NAMES = '/loadPropertiesNames';\n public static SAVE_PROPERTY = '/saveProperty';\n public static REMOVE_PROPERTY = '/removeProperty';\n public static ROTATE_DOCUMENT_PAGE = '/rotateDocumentPages';\n public static UPLOAD_DOCUMENTS = '/uploadDocument';\n public static DOWNLOAD_DOCUMENTS = '/downloadDocument';\n public static LOAD_PRINT = '/loadPrint';\n public static LOAD_PRINT_PDF = '/printPdf';\n public static LOAD_THUMBNAILS = '/loadThumbnails';\n public static LOAD_FORMATS = '/loadFormats';\n public static SAVE_FILE = '/saveFile';\n public static CREATE_FILE = '/createFile';\n public static COMPARE_FILES = '/compare';\n public static CONVERT_FILE = '/convert';\n public static DELETE_SIGNATURE_FILE = '/deleteSignatureFile';\n public static REMOVE_FROM_INDEX = '/removeFromIndex';\n public static GET_FILE_STATUS = '/getFileStatus';\n public static SAVE_OPTICAL_CODE = '/saveOpticalCode';\n public static SAVE_TEXT = '/saveText';\n public static SAVE_IMAGE = '/saveImage';\n public static SAVE_STAMP = '/saveStamp';\n public static SIGN = '/sign';\n public static DOWNLOAD_SIGNED = '/downloadSigned';\n public static LOAD_SIGNATURE_IMAGE = '/loadSignatureImage';\n public static ANNOTATE = '/annotate';\n public static SEARCH = '/search';\n public static ADD_FILES_TO_INDEX = '/addFilesToIndex';\n\n public static httpOptionsJson = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n })\n };\n public static httpOptionsJsonResponseTypeBlob = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n }),\n responseType: 'blob' as 'blob'\n };\n}\n\n@Injectable()\nexport class ConfigService {\n\n private _apiEndpoint: string;\n\n constructor() {\n this.apiEndpoint = Api.DEFAULT_API_ENDPOINT;\n }\n\n set apiEndpoint(url: string) {\n this._apiEndpoint = url && url.trim().endsWith('/') ? url.substring(0, url.length - 1) : url;\n }\n\n getConfigEndpoint(app) {\n return (this.apiEndpoint.endsWith(app) ? this.apiEndpoint : this.apiEndpoint + app) + Api.LOAD_CONFIG;\n }\n\n getViewerApiEndpoint() {\n return this._apiEndpoint.endsWith(Api.VIEWER_APP) ? this._apiEndpoint : this._apiEndpoint + Api.VIEWER_APP;\n }\n\n getEditorApiEndpoint() {\n return this._apiEndpoint.trim().endsWith(Api.EDITOR_APP) ? this._apiEndpoint : this._apiEndpoint + Api.EDITOR_APP;\n }\n\n getComparisonApiEndpoint() {\n return this._apiEndpoint.trim().endsWith(Api.COMPARISON_APP) ? this._apiEndpoint : this._apiEndpoint + Api.COMPARISON_APP;\n }\n\n getConversionApiEndpoint() {\n return this._apiEndpoint.trim().endsWith(Api.CONVERSION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.CONVERSION_APP;\n }\n\n getMetadataApiEndpoint() {\n return this._apiEndpoint.trim().endsWith(Api.METADATA_APP) ? this._apiEndpoint : this._apiEndpoint + Api.METADATA_APP;\n }\n\n get apiEndpoint() {\n return this._apiEndpoint;\n }\n\n getSignatureApiEndpoint() {\n return this._apiEndpoint.endsWith(Api.SIGNATURE_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SIGNATURE_APP;\n }\n\n getAnnotationApiEndpoint() {\n return this._apiEndpoint.endsWith(Api.ANNOTATION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.ANNOTATION_APP;\n }\n\n getSearchApiEndpoint() {\n return this._apiEndpoint.endsWith(Api.SEARCH_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SEARCH_APP;\n }\n}\n","export class CommonModals {\n static PasswordRequired = \"gd-password-required\";\n static ErrorMessage = \"gd-error-message\";\n static BrowseFiles = \"gd-browse-files\";\n static CreateDocument = \"gd-create-document\";\n static OperationSuccess = \"gd-success-modal\";\n static DrawHandSignature = \"gd-draw-hand-signature\";\n static DrawStampSignature = \"gd-draw-stamp-signature\";\n static InformationMessage = \"gd-information-message\";\n}\n\nexport class ModalService {\n private modals: any[] = [];\n\n add(modal: any) {\n this.modals.push(modal);\n }\n\n remove(id: string) {\n this.modals = this.modals.filter(x => x.id !== id);\n }\n\n open(id: string) {\n const modal: any = this.modals.filter(x => x.id === id)[0];\n if (modal) {\n modal.open();\n }\n }\n\n close(id: string) {\n const modal: any = this.modals.filter(x => x.id === id)[0];\n if (modal) {\n modal.close();\n }\n }\n}\n","import {Component, ElementRef, EventEmitter, Input, OnDestroy, OnInit, Output} from '@angular/core';\nimport {ModalService} from \"../modal.service\";\n\n@Component({\n selector: 'gd-modal',\n templateUrl: './modal.component.html',\n styleUrls: ['./modal.component.less']\n})\nexport class ModalComponent implements OnInit, OnDestroy {\n @Input() id: string;\n @Input() title: string;\n @Output() visible = new EventEmitter();\n @Output() cancel = new EventEmitter();\n visibility = false;\n private element: any;\n\n constructor(private modalService: ModalService, el: ElementRef) {\n this.element = el.nativeElement;\n }\n\n ngOnInit(): void {\n if (!this.id) {\n console.error('modal must have an id');\n return;\n }\n\n document.body.appendChild(this.element);\n\n this.modalService.add(this);\n }\n\n ngOnDestroy(): void {\n this.modalService.remove(this.id);\n this.element.remove();\n }\n\n open(): void {\n this.visibility = true;\n this.visible.emit(true);\n }\n\n close(): void {\n event.preventDefault();\n event.stopPropagation();\n this.visibility = false;\n this.visible.emit(false);\n }\n\n onClose($event: MouseEvent) {\n $event.stopPropagation();\n if ($event && $event.target && ($event.target).id === 'modalDialog') {\n this.close();\n }\n }\n\n cancelClose() {\n this.cancel.emit(false);\n this.close();\n }\n}\n","export class PageModel {\n data: string;\n angle: number;\n width: number;\n height: number;\n number: number;\n editable: boolean;\n}\n\nexport class RotatedPage {\n pageNumber: number;\n angle: number;\n}\n\nexport class FileCredentials {\n guid: string;\n password: string;\n\n constructor(guid: string, password: string) {\n this.guid = guid;\n this.password = password;\n }\n}\n\nexport class SaveFile extends FileCredentials {\n content: string;\n\n constructor(guid: string, password: string, content: string) {\n super(guid, password);\n this.content = content;\n }\n}\n\nexport class FileDescription {\n guid: string;\n pages: PageModel[];\n printAllowed = true;\n showGridLines: boolean;\n thumbnails: PageModel[];\n}\n\nexport class FileModel {\n guid: string;\n name: string;\n directory: boolean;\n size: number;\n isDirectory: boolean;\n}\n\nexport class HttpError {\n static BadRequest = 400;\n static Unauthorized = 401;\n static Forbidden = 403;\n static NotFound = 404;\n static TimeOut = 408;\n static Conflict = 409;\n static InternalServerError = 500;\n}\n\nexport class Utils {\n public static getMousePosition(event) {\n const mouse = {\n x: 0,\n y: 0\n };\n const wEvent: DragEvent = window.event;\n const ev = event || wEvent; //Moz || IE\n if (ev.pageX || wEvent.pageX || wEvent.screenX || (ev.touches && ev.touches[0] && ev.touches[0].pageX)) { //Moz\n const pageX = typeof ev.pageX !== \"undefined\" && ev.pageX !== 0 ? ev.pageX : wEvent.pageX;\n const pageY = typeof ev.pageY !== \"undefined\" && ev.pageY !== 0 ? ev.pageY : wEvent.pageY;\n const screenX = typeof wEvent.screenX !== \"undefined\" && wEvent.screenY !== 0;\n const screenY = typeof wEvent.screenY !== \"undefined\" && wEvent.screenY !== 0;\n mouse.x = pageX ? pageX : (screenX ? wEvent.screenX : ev.touches[0].pageX);\n mouse.y = pageY ? pageY : (screenY ? wEvent.screenY : ev.touches[0].pageY);\n } else if (ev.clientX) { //IE\n mouse.x = ev.clientX + document.body.scrollLeft;\n mouse.y = ev.clientY + document.body.scrollTop;\n }\n return mouse;\n }\n\n public static toRgb(color: string) {\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(color);\n if (result) {\n const r = parseInt(result[1], 16);\n const g = parseInt(result[2], 16);\n const b = parseInt(result[3], 16);\n return result ? 'rgb(' + r + ',' + g + ',' + b + ')' : '';\n }\n return color;\n }\n\n public static toHex(color: string) {\n // check if color is standard hex value\n if (color.match(/[0-9A-F]{6}|[0-9A-F]{3}$/i)) {\n return (color.charAt(0) === \"#\") ? color : (\"#\" + color);\n // check if color is RGB value -> convert to hex\n } else if (color.match(/^rgb\\(\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*\\)$/)) {\n const c = ([parseInt(RegExp.$1, 10), parseInt(RegExp.$2, 10), parseInt(RegExp.$3, 10)]),\n pad = function (str) {\n if (str.length < 2) {\n for (let i = 0, len = 2 - str.length; i < len; i++) {\n str = '0' + str;\n }\n }\n return str;\n };\n if (c.length === 3) {\n const r = pad(c[0].toString(16)),\n g = pad(c[1].toString(16)),\n b = pad(c[2].toString(16));\n return '#' + r + g + b;\n }\n // else do nothing\n } else {\n return '';\n }\n }\n}\n\nexport class FileUtil {\n public static map = {\n 'folder': {'format': '', 'icon': 'folder'},\n 'pdf': {'format': 'Portable Document Format', 'icon': 'file-pdf', 'unit': 'pt'},\n 'doc': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'docx': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'docm': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'dot': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'dotx': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'dotm': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\n 'xls': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xlsx': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xlsm': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xlsb': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xls2003': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xltx': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'xltm': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\n 'ppt': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'pptx': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'pps': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'ppsx': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'vsd': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vdx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vss': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vsx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vst': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vtx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vsdx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vdw': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vstx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'vssx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\n 'mpp': {'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt'},\n 'mpt': {'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt'},\n 'msg': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\n 'eml': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\n 'emlx': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\n 'one': {'format': 'Microsoft OneNote', 'icon': 'file-word', 'unit': 'pt'},\n 'odt': {'format': 'Open Document Text', 'icon': 'file-word', 'unit': 'pt'},\n 'ott': {'format': 'Open Document Text Template', 'icon': 'file-word', 'unit': 'pt'},\n 'ods': {'format': 'Open Document Spreadsheet', 'icon': 'file-excel', 'unit': 'px'},\n 'odp': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'otp': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'ots': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'potx': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'potm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'pptm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'ppsm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\n 'rtf': {'format': 'Rich Text Format', 'icon': 'file-alt', 'unit': 'pt'},\n 'txt': {'format': 'Plain Text File', 'icon': 'file-alt', 'unit': 'pt'},\n 'csv': {'format': 'Comma-Separated Values', 'icon': 'file-excel', 'unit': 'px'},\n 'html': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\n 'mht': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\n 'mhtml': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\n 'xml': {'format': 'Extensible Markup Language', 'icon': 'file-word', 'unit': 'pt'},\n 'xps': {'format': 'XML Paper Specification', 'icon': 'file-word', 'unit': 'pt'},\n 'dxf': {'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px'},\n 'dwg': {'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px'},\n 'bmp': {'format': 'Bitmap Picture', 'icon': 'file-image', 'unit': 'px'},\n 'gif': {'format': 'Graphics Interchange Format', 'icon': 'file-image', 'unit': 'px'},\n 'jpg': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\n 'jpe': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\n 'jpeg': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\n 'jfif': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\n 'png': {'format': 'Portable Network Graphics', 'icon': 'file-image', 'unit': 'px'},\n 'tiff': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'tif': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'psd': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'svg': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'jp2': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\n 'epub': {'format': 'Electronic Publication', 'icon': 'file-pdf', 'unit': 'pt'},\n 'ico': {'format': 'Windows Icon', 'icon': 'file-image', 'unit': 'px'},\n 'webp': {'format': 'Compressed Image', 'icon': 'file-image', 'unit': 'px'},\n 'mobi': {'format': 'Mobipocket eBook', 'icon': 'file-pdf', 'unit': 'pt'},\n 'tex': {'format': 'LaTeX Source Document', 'icon': 'file-pdf', 'unit': 'pt'},\n 'djvu': {'format': 'Multi-Layer Raster Image', 'icon': 'file-alt', 'unit': 'pt'},\n 'unknown': {'format': 'This format is not supported', 'icon': 'file'},\n };\n\n public static find(filename: string, isDirectory: boolean) {\n if (filename && !isDirectory) {\n const strings = filename.split('.');\n const name = strings.pop().toLowerCase();\n if (typeof FileUtil.map[name] === \"undefined\") {\n return strings.length > 0 ? FileUtil.map['unknown'] : FileUtil.map['folder'];\n } else {\n return FileUtil.map[name];\n }\n } else {\n return FileUtil.map['folder'];\n }\n }\n}\n\nexport class FileService {\n\n constructor() {\n }\n}\n","import {Observable, Observer} from \"rxjs\";\n\nexport class UploadFilesService {\n private _uploadsChange: Observable;\n private _observer: Observer;\n\n constructor() {\n this._uploadsChange = new Observable(observer =>\n this._observer = observer);\n }\n\n get uploadsChange(): Observable {\n return this._uploadsChange;\n }\n\n changeFilesList(filesList: FileList) {\n this._observer.next(filesList);\n }\n}\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {FileModel, FileUtil} from \"../file.service\";\nimport {UploadFilesService} from \"../upload-files.service\";\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\nconst upload_disc = 'Disc';\n\nconst upload_url = 'URL';\n\nconst uploads_choices = [{name: upload_disc, icon: 'hdd'}, {name: upload_url, icon: 'link'}];\n\n@Component({\n selector: 'gd-browse-files-modal',\n templateUrl: './browse-files-modal.component.html',\n styleUrls: ['./browse-files-modal.component.less']\n})\nexport class BrowseFilesModalComponent implements OnInit {\n uploads = uploads_choices;\n\n @Input() files;\n @Input() uploadConfig;\n @Output() selectedFileGuid = new EventEmitter();\n @Output() selectedDirectory = new EventEmitter();\n @Output() urlForUpload = new EventEmitter();\n @Output() closing = new EventEmitter();\n private selectedFile: FileModel;\n showUploadUrl = false;\n showUploadFile = false;\n\n constructor(private _uploadService: UploadFilesService) {\n }\n\n ngOnInit() {\n }\n\n getSize(size: number) {\n const mb = size / 1024 / 1024;\n if (mb > 1) {\n return (Math.round(mb * 100) / 100) + ' MB';\n } else {\n const kb = size / 1024;\n if (kb > 1) {\n return (Math.round(kb * 100) / 100) + ' KB';\n }\n }\n return size + ' Bytes';\n }\n\n getFormatName(file: FileModel) {\n return FileUtil.find(file.name, file.directory).format;\n }\n\n getFormatIcon(file: FileModel) {\n return FileUtil.find(file.name, file.directory).icon;\n }\n\n choose(file: FileModel) {\n this.selectedFile = file;\n if (file.directory || file.isDirectory) {\n this.selectedDirectory.emit(file.name);\n } else {\n this.selectedFileGuid.emit(file.guid);\n }\n }\n\n goUp() {\n if (this.selectedFile) {\n let guid = this.selectedFile.guid;\n if (guid.length > 0 && guid.indexOf('/') === -1) {\n guid = '';\n } else {\n guid = guid.replace(/\\/[^\\/]+\\/?$/, '');\n }\n this.selectedDirectory.emit(guid);\n }\n }\n\n selectUpload($event: string) {\n if (upload_url === $event) {\n this.showUploadUrl = true;\n } else {\n this.showUploadUrl = false;\n $(\"#gd-upload-input\").trigger('click');\n }\n }\n\n refresh($event) {\n\n if ($event) {\n this.files = null;\n this.selectedDirectory.emit('');\n this.showUploadUrl = false;\n this.selectedFile = null;\n } else {\n this.closing.emit(true);\n }\n }\n\n showSpinner() {\n return !this.files;\n }\n\n uploadUrl(url: string) {\n if (url) {\n this.urlForUpload.emit(url);\n this.cleanUpload();\n }\n }\n\n handleFileInput(files: FileList) {\n this._uploadService.changeFilesList(files);\n }\n\n cleanUpload() {\n this.showUploadFile = false;\n this.showUploadUrl = false;\n }\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class ZoomService {\n private _observer: Subject = new Subject();\n private readonly _zoomChange: Observable = this._observer.asObservable();\n private _zoom: number;\n\n constructor() {\n }\n\n get zoom(): number {\n return this._zoom;\n }\n\n get zoomChange(): Observable {\n return this._zoomChange;\n }\n\n changeZoom(zoom: number) {\n this._zoom = zoom;\n this._observer.next(zoom);\n }\n\n private createZoomOption(val: any, name: string, sep: boolean = false) {\n return {value: val, name: name, separator: sep}\n }\n\n zoomOptions(width, height) {\n return [this.createZoomOption(25, '25%'),\n this.createZoomOption(50, '50%'),\n this.createZoomOption(100,'100%'),\n this.createZoomOption(150, '150%'),\n this.createZoomOption(200, '200%'),\n this.createZoomOption(300, '300%'),\n this.createZoomOption(0, '', true),\n this.createZoomOption(width, 'Fit Width'),\n this.createZoomOption(height, 'Fit Height')];\n }\n}\n","import {Observable, Observer} from \"rxjs\";\n\nexport class PagePreloadService {\n private readonly _checkPreload: Observable;\n private _observer: Observer;\n\n constructor() {\n this._checkPreload = new Observable(observer =>\n this._observer = observer);\n }\n\n get checkPreload(): Observable {\n return this._checkPreload;\n }\n\n changeLastPageInView(page: number) {\n if(this._observer) {\n this._observer.next(page);\n }\n }\n}\n","import {BehaviorSubject, Observable} from \"rxjs\";\nimport {PagePreloadService} from \"./page-preload.service\";\nimport {Injectable} from \"@angular/core\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NavigateService {\n private _currentPage = 0;\n private _countPages = 0;\n private _observer: BehaviorSubject = new BehaviorSubject(null);\n private _navigate: Observable = this._observer.asObservable();\n\n constructor(private _pagePreloadService: PagePreloadService) {\n }\n\n get navigate(): Observable {\n return this._navigate;\n }\n\n get countPages(): number {\n return this._countPages;\n }\n\n set countPages(value: number) {\n this._countPages = value;\n }\n\n get currentPage(): number {\n return this._currentPage;\n }\n\n set currentPage(value: number) {\n this._currentPage = value;\n }\n\n nextPage() {\n if (this._currentPage < this._countPages) {\n this._currentPage++;\n this.navigateTo(this._currentPage);\n }\n }\n\n prevPage() {\n if (this._currentPage > 1) {\n this._currentPage--;\n this.navigateTo(this._currentPage);\n }\n }\n\n toLastPage() {\n this._currentPage = this._countPages;\n this.navigateTo(this._currentPage);\n }\n\n toFirstPage() {\n this._currentPage = 1;\n this.navigateTo(this._currentPage);\n }\n\n navigateTo(page: number) {\n this.currentPage = page;\n this._pagePreloadService.changeLastPageInView(page);\n this._observer.next(page);\n }\n}\n","import {\n AfterViewChecked,\n Component,\n ElementRef,\n Input,\n OnInit,\n AfterViewInit,\n OnChanges,\n Output,\n EventEmitter\n} from '@angular/core';\nimport {FileDescription, FileUtil} from \"../file.service\";\nimport {ZoomService} from \"../zoom.service\";\nimport * as Hammer from 'hammerjs';\nimport {WindowService} from '../window.service';\nimport * as jquery from 'jquery';\nimport { NavigateService } from '../navigate.service';\n\nconst $ = jquery;\n\n@Component({\n selector: 'gd-document',\n templateUrl: './document.component.html',\n styleUrls: ['./document.component.less']\n})\nexport class DocumentComponent implements OnInit, AfterViewChecked, AfterViewInit, OnChanges {\n\n @Input() mode: boolean;\n @Input() preloadPageCount: number;\n @Input() file: FileDescription;\n @Input() selectedPage: number;\n wait = false;\n zoom: number;\n\n docWidth = null;\n docHeight = null;\n viewportWidth = null;\n viewportHeight = null;\n scale = null;\n lastScale = null;\n container = null;\n doc = null;\n x = 0;\n lastX = 0;\n y = 0;\n lastY = 0;\n pinchCenter = null;\n pinchCenterOffset = null;\n curWidth = 0;\n curHeight = 0;\n isDesktop: boolean;\n\n constructor(protected _elementRef: ElementRef,\n private _zoomService: ZoomService,\n private _windowService: WindowService,\n private _navigateService: NavigateService,) {\n _zoomService.zoomChange.subscribe((val: number) => {\n this.zoom = val;\n });\n\n this.isDesktop = _windowService.isDesktop();\n\n this._navigateService.navigate.subscribe(((\n value => {\n this.selectedPage = value;\n })));\n }\n\n ngOnInit() {\n if (this.ifPresentation())\n {\n this.selectedPage = this._navigateService.currentPage;\n }\n }\n\n ngOnChanges() {\n }\n\n ngAfterViewInit() {\n // For current iteration we take .panzoom as a document\n this.doc = this._elementRef.nativeElement.children.item(0).children.item(0);\n // For current iteration we take .gd-document as a container\n this.container = this._elementRef.nativeElement;\n\n this.docWidth = this.doc.clientWidth;\n this.docHeight = this.doc.clientHeight;\n this.viewportWidth = this.doc.offsetWidth;\n\n // For cases where we already have zoom defined we should include it\n this.scale = (this.viewportWidth / this.docWidth) * this._zoomService.zoom / 100;\n\n this.lastScale = this.scale;\n this.viewportHeight = this.container.offsetHeight;\n this.curWidth = this.docWidth * this.scale;\n this.curHeight = this.docHeight * this.scale;\n\n const hammer = new Hammer(this.container);\n }\n\n // TODO: this temporary crutch for Excel files should be documented\n ifExcel() {\n return FileUtil.find(this.file.guid, false).format === \"Microsoft Excel\";\n }\n\n ifPresentation() {\n return FileUtil.find(this.file.guid, false).format === \"Microsoft PowerPoint\";\n }\n\n getDimensionWithUnit(value: number, pageNumber: number) {\n return this.ifPresentation() && !this.isVisible(pageNumber) ? 0 : value + (this.mode ? FileUtil.find(this.file.guid, false).unit : 'px');\n }\n\n ifEdge() {\n return navigator.userAgent.toLowerCase().indexOf('edge') > -1;\n }\n\n ngAfterViewChecked(): void {\n const elementNodeListOf = this._elementRef.nativeElement.querySelectorAll('.gd-wrapper');\n const element = elementNodeListOf.item(0);\n if (element) {\n $(element).trigger('focus');\n }\n }\n\n isVisible(pageNumber) {\n if (this.ifPresentation()) {\n return pageNumber === this.selectedPage ? true : false;\n }\n else {\n return true;\n }\n }\n}\n","import {Component, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\n\n@Component({\n selector: 'gd-page',\n templateUrl: './page.component.html',\n styleUrls: ['./page.component.less']\n})\nexport class PageComponent implements OnInit, OnChanges {\n\n @Input() angle: number;\n @Input() width: number;\n @Input() height: number;\n @Input() number: number;\n @Input() data: string;\n @Input() isHtml: boolean;\n @Input() editable: boolean;\n imgData: string;\n\n constructor() {\n }\n\n ngOnInit() {\n const isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\n if(isIE && this.number === 0){\n this.editable = false;\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n // TODO: this is temporary needed to remove unneeded spaces and BOM symbol \n // which leads to undesired spaces on the top of the docs pages\n this.data = this.data !== null ? this.data.replace(/>\\s+<')\n .replace(/\\uFEFF/g,\"\")\n .replace(/href=\"\\/viewer/g, 'href=\"http://localhost:8080/viewer')\n .replace(/src=\"\\/viewer/g, 'src=\"http://localhost:8080/viewer')\n .replace(/data=\"\\/viewer/g, 'data=\"http://localhost:8080/viewer')\n : null;\n const dataImagePngBase64 = 'data:image/png;base64,';\n this.imgData = dataImagePngBase64;\n if (!this.isHtml) {\n this.imgData += this.data;\n }\n }\n}\n","import {Pipe, PipeTransform} from '@angular/core';\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\n\n@Pipe({name: 'safeHtml'})\nexport class SanitizeHtmlPipe implements PipeTransform{\n constructor(private sanitizer: DomSanitizer) {\n }\n\n transform(html: string): SafeHtml {\n return this.sanitizer.bypassSecurityTrustHtml(html);\n }\n}\n\n@Pipe({name: 'safeResourceHtml'})\nexport class SanitizeResourceHtmlPipe implements PipeTransform{\n constructor(private sanitizer: DomSanitizer) {\n }\n\n transform(html: string): SafeHtml {\n return this.sanitizer.bypassSecurityTrustResourceUrl(html);\n }\n}\n\n@Pipe({name: 'safeStyle'})\nexport class SanitizeStylePipe implements PipeTransform{\n constructor(private sanitizer: DomSanitizer) {\n }\n\n transform(html: string): SafeHtml {\n return this.sanitizer.bypassSecurityTrustStyle(html);\n }\n}\n\n@Pipe({name: 'highlight'})\nexport class HighlightSearchPipe implements PipeTransform {\n\n transform(value: string, args: string): any {\n if (!args) {\n return value;\n }\n const re = new RegExp(args, 'gi'); //'gi' for case insensitive and can use 'g' if you want the search to be case sensitive.\n return value.replace(re, \"$&\");\n }\n}\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\nimport {UploadFilesService} from \"../upload-files.service\";\n\n@Component({\n selector: 'gd-upload-file-zone',\n templateUrl: './upload-file-zone.component.html',\n styleUrls: ['./upload-file-zone.component.less']\n})\nexport class UploadFileZoneComponent implements OnInit {\n\n @Output() closeUpload = new EventEmitter();\n\n constructor(private _uploadService: UploadFilesService) { }\n\n ngOnInit() {\n }\n\n handleFileInput(files: FileList) {\n this._uploadService.changeFilesList(files);\n this.onCloseUpload();\n }\n\n onCloseUpload() {\n this.closeUpload.emit(true);\n }\n\n close($event) {\n if ($event.target.id === 'gd-dropZone') {\n this.onCloseUpload();\n }\n }\n}\n","import {Directive, EventEmitter, HostBinding, HostListener, Input, Output} from '@angular/core';\nimport {UploadFilesService} from \"./upload-files.service\";\n\n@Directive({\n selector: '[gdDnd]'\n})\nexport class DndDirective {\n\n @Output() closing = new EventEmitter();\n @Output() opening = new EventEmitter();\n @Output() dropped = new EventEmitter();\n\n @HostBinding('class.active') active = false;\n\n private dragCounter = 0;\n\n constructor(protected _uploadFilesService: UploadFilesService) {\n }\n\n @HostListener('dragenter', ['$event'])\n public onDragEnter(evt) {\n evt.preventDefault();\n evt.stopPropagation();\n this.dragCounter++;\n this.active = true;\n this.opening.emit(true);\n }\n\n @HostListener('dragover', ['$event'])\n public onDragOver(evt) {\n evt.preventDefault();\n evt.stopPropagation();\n return false;\n }\n\n @HostListener('dragleave', ['$event'])\n public onDragLeave(evt) {\n evt.preventDefault();\n evt.stopPropagation();\n this.dragCounter--;\n if (this.dragCounter === 0) {\n this.active = false;\n this.closeArea();\n }\n }\n\n @HostListener('drop', ['$event'])\n public onDrop(evt) {\n evt.preventDefault();\n evt.stopPropagation();\n const files = evt.dataTransfer.files;\n if (files.length > 0) {\n this.active = false;\n this.dropped.emit(true);\n this._uploadFilesService.changeFilesList(files);\n this.closeArea();\n }\n }\n\n @HostListener('click', ['$event'])\n public onClick(event) {\n this.closeArea();\n }\n\n private closeArea() {\n this.closing.emit(true);\n this.opening.emit(false);\n }\n}\n","import {Injectable} from '@angular/core';\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ViewportService {\n\n constructor() {\n }\n\n checkInViewport(el, zoom: number = 100, leftOffset: number = 0, deltaX: number = 0.5) {\n if (!el) {\n return false;\n }\n const x = deltaX;\n const y = 0.5;\n\n const win = $(window);\n\n const viewport = {\n top: win.scrollTop(),\n left: win.scrollLeft() + leftOffset,\n right: win.scrollLeft() + win.width() - 10,\n bottom: win.scrollTop() + win.height()\n };\n\n\n if (isNaN(zoom)) {\n zoom = 100;\n }\n\n const zoomN = zoom / 100;\n const height = $(el).outerHeight() * (zoomN);\n const width = $(el).outerWidth() * (zoomN);\n\n if (!width || !height) {\n return false;\n }\n\n const bounds = $(el).offset();\n const right = (bounds.left * (zoomN)) + width;\n const bottom = (bounds.top * (zoomN)) + height;\n\n const visible = (!(viewport.right < (bounds.left * (zoomN)) || viewport.left > right || viewport.bottom < (bounds.top * (zoomN)) || viewport.top > bottom));\n\n if (!visible) {\n return false;\n }\n\n const deltas = {\n top: parseFloat(Math.min(1, (bottom - viewport.top) / height).toFixed(2)),\n bottom: parseFloat(Math.min(1, (viewport.bottom - (bounds.top * (zoomN))) / height).toFixed(2)),\n left: parseFloat(Math.min(1, (right - viewport.left) / width).toFixed(2)),\n right: parseFloat(Math.min(1, (viewport.right - (bounds.left * (zoomN))) / width).toFixed(2))\n };\n\n return (deltas.left * deltas.right) >= x && (deltas.top * deltas.bottom) >= y;\n }\n}\n","import {\n AfterViewInit,\n Directive,\n ElementRef,\n HostListener,\n Input,\n OnChanges,\n OnInit,\n SimpleChanges\n} from '@angular/core';\nimport {NavigateService} from \"./navigate.service\";\nimport {PagePreloadService} from \"./page-preload.service\";\nimport {ZoomService} from \"./zoom.service\";\nimport {WindowService} from \"./window.service\";\nimport {ViewportService} from \"./viewport.service\";\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\n@Directive({\n selector: '[gdScrollable]'\n})\nexport class ScrollableDirective implements AfterViewInit, OnChanges, OnInit {\n\n private currentPage: number;\n private zoom = 100;\n private loadedPagesSet = new Set();\n\n constructor(private _elementRef: ElementRef,\n private _navigateService: NavigateService,\n private _pagePreloadService: PagePreloadService,\n private _zoomService: ZoomService,\n private _windowService: WindowService,\n private _viewportService: ViewportService) {\n\n this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom;\n _zoomService.zoomChange.subscribe((val: number) => {\n this.zoom = val ? val : this.zoom;\n this.refresh();\n });\n }\n\n ngAfterViewInit() {\n this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom;\n this._navigateService.navigate.subscribe((value => {\n this.currentPage = value;\n this.scrollToPage(value);\n }));\n this.refresh();\n }\n\n @HostListener('scroll') scrolling() {\n this.refresh();\n }\n\n @HostListener('window:resize') resizing() {\n this.refresh();\n }\n\n scrollToPage(pageNumber: number) {\n const el = this._elementRef.nativeElement;\n const page = this.getPage(pageNumber);\n const prev = pageNumber > 0 ? this.getPage(pageNumber - 1) : null;\n const isSameTop = (prev && $(prev).offset().top === $(page).offset().top);\n if (this._viewportService.checkInViewport(page, this.zoom) && isSameTop) {\n return;\n }\n const pagesHeight = this.calculateOffset(pageNumber);\n const options = {\n left: 0,\n top: pagesHeight\n };\n if(el){\n // using polyfill\n el.scroll(options);\n }\n }\n\n private getChildren() {\n const el = this._elementRef ? this._elementRef.nativeElement : null;\n if (el) {\n // here and in the similar line below we getting the document pages\n return el.children.item(0).children.item(0).children;\n }\n }\n\n private getPage(pageNumber: number) {\n const el = this._elementRef ? this._elementRef.nativeElement : null;\n if (el) {\n return el.children.item(0).children.item(0).children.item(pageNumber - 1);\n }\n }\n\n private calculateOffset(pageNumber: number) {\n const count = this._windowService.isFirefox() ? 1 : this.countPagesOnWidth();\n const margin = this._windowService.isDesktop() ? 40 : 10;\n let pagesHeight = 0;\n for (let i = 1; i < pageNumber / count; i++) {\n const item = this.getPage(i);\n const clientHeight = item ? item.clientHeight : 0;\n pagesHeight += clientHeight > 0 ? clientHeight * this.getZoom() + margin : 0;\n }\n return pagesHeight;\n }\n\n private countPagesOnWidth() {\n const pageEl = this.getPage(1);\n const offset = 150;\n const count = Math.floor((this.getWidth() - offset) / (pageEl.getBoundingClientRect().width * this.getZoom()));\n return count === 0 ? 1 : count;\n }\n\n refresh() {\n let page;\n let currentPageSet = false;\n const pageElem = this.getPage(this.currentPage);\n const currentPageRect = this.currentPage && pageElem ? pageElem.getBoundingClientRect() : null;\n for (page = 1; page < this.getChildren().length + 1; page++) {\n const element = this.getPage(page);\n if (this._viewportService.checkInViewport(element, this.zoom)) {\n if (!currentPageSet) {\n if (!this.currentPage || !pageElem || (this.currentPage && currentPageRect && element.getBoundingClientRect().top !== currentPageRect.top)) {\n this.currentPage = page;\n if (this._navigateService.currentPage === 0) {\n this._navigateService.currentPage = page;\n }\n }\n currentPageSet = true;\n }\n if (!this.loadedPagesSet.has(page)) {\n this._pagePreloadService.changeLastPageInView(page);\n this.loadedPagesSet.add(page);\n }\n }\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.refresh();\n }\n\n ngOnInit(): void {\n this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom;\n }\n\n\n private getWidth() {\n return this._elementRef ? this._elementRef.nativeElement.offsetWidth : window.innerWidth;\n }\n\n private getZoom() {\n return this.zoom / 100;\n }\n}\n","import {\n Directive,\n EventEmitter,\n HostListener,\n Output} from '@angular/core';\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\n@Directive({\n selector: '[gdMouseWheel]'\n})\nexport class MouseWheelDirective {\n @Output() mouseWheelUp = new EventEmitter();\n @Output() mouseWheelDown = new EventEmitter();\n\n @HostListener('mousewheel', ['$event']) onMouseWheelChrome(event: any) {\n this.mouseWheelFunc(event);\n }\n\n @HostListener('DOMMouseScroll', ['$event']) onMouseWheelFirefox(event: any) {\n this.mouseWheelFunc(event);\n }\n\n @HostListener('onmousewheel', ['$event']) onMouseWheelIE(event: any) {\n this.mouseWheelFunc(event);\n }\n\n mouseWheelFunc(event: any) {\n event = window.event ;\n const delta = Math.max(-1, Math.min(1, (event.wheelDelta || -event.detail)));\n if(delta > 0) {\n this.mouseWheelUp.emit(event);\n } else if(delta < 0) {\n this.mouseWheelDown.emit(event);\n }\n }\n}\n","import {AfterViewInit, Directive, HostBinding, Input, OnDestroy, OnInit, ElementRef, OnChanges} from '@angular/core';\nimport {ZoomService} from \"./zoom.service\";\nimport {FileUtil} from \"./file.service\";\nimport { WindowService } from './window.service';\n\n@Directive({\n selector: '[gdZoom]'\n})\nexport class ZoomDirective implements OnInit, OnDestroy, AfterViewInit, OnChanges {\n\n @Input() zoomActive = true;\n @Input() file;\n\n @HostBinding('style.zoom') zoomInt: number;\n @HostBinding('style.transform') transform: string;\n @HostBinding('style.transform-origin') transformOrigin: string;\n @HostBinding('style.width') width: string;\n @HostBinding('style.height') height: string;\n @HostBinding('style.min-width') minWidth: string;\n el: ElementRef;\n\n constructor(private _zoomService: ZoomService, private _windowService: WindowService, el: ElementRef) {\n this.el = el;\n }\n\n ngOnDestroy(): void {\n }\n\n ngOnChanges(): void {\n this.setStyles(this._zoomService.zoom);\n this.resizePages(this._zoomService.zoom);\n }\n\n ngOnInit(): void {\n if (! this.zoomActive) {\n return;\n }\n\n this.setStyles(this._zoomService.zoom);\n this._zoomService.zoomChange.subscribe((zoom) => {\n this.setStyles(zoom);\n this.resizePages(zoom);\n });\n }\n\n private setStyles(zoom) {\n if (! this.zoomActive) {\n return;\n }\n\n const zoomInt = zoom === 100 ? 1 : zoom / 100;\n \n if (this._windowService.isEdge()) {\n this.zoomInt = zoomInt;\n }\n else {\n this.zoomInt = null;\n }\n \n if (!this._windowService.isEdge()) {\n this.transform = 'scale(' + zoomInt + ')';\n this.transformOrigin = 'top left';\n }\n else {\n this.transform = \"\";\n this.transformOrigin = \"\";\n }\n\n let maxWidth = 0;\n this.file.pages.forEach(page => {\n {\n if (page.width > maxWidth){\n maxWidth = page.width;\n }\n }\n });\n\n // Images and Excel-related files receiving dimensions in px from server\n this.minWidth = maxWidth + FileUtil.find(this.file.guid, false).unit;\n }\n\n private getScrollWidth(elm){\n return elm.offsetWidth - elm.clientWidth;\n }\n\n private getScrollHeight(elm){\n return elm.offsetHeight - elm.clientHeight;\n }\n\n private resizePages(zoom){\n const zoomInt = zoom === 100 ? 1 : zoom / 100;\n\n const viewPortWidth = this.el.nativeElement.parentElement.offsetWidth;\n const viewPortHeight = this.el.nativeElement.parentElement.offsetHeight;\n const scrollWidth = this.getScrollWidth(this.el.nativeElement.parentElement);\n const scrollHeight = this.getScrollHeight(this.el.nativeElement.parentElement);\n this.width = (viewPortWidth/zoomInt - scrollWidth/zoomInt) + 'px';\n this.height = (viewPortHeight/zoomInt - scrollHeight/zoomInt) + 'px';\n }\n\n ngAfterViewInit(): void {\n this.setStyles(this._zoomService.zoom);\n }\n}\n","import {Injectable} from '@angular/core';\nimport {Observable, Subject} from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class OnCloseService {\n private _observer: Subject = new Subject();\n private readonly _onClose: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get onClose() {\n return this._onClose;\n }\n\n close(close: boolean) {\n this._observer.next(close)\n }\n}\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\nimport {OnCloseService} from \"../on-close.service\";\n\nexport interface Option {\n name: string;\n value: any;\n separator: boolean;\n}\n\n@Component({\n selector: 'gd-select',\n templateUrl: './select.component.html',\n styleUrls: ['./select.component.less']\n})\nexport class SelectComponent {\n\n @Input() options: Option[];\n @Input() disabled = false;\n @Input() showSelected: Option;\n @Output() selected: EventEmitter = new EventEmitter();\n @Input() isOpen = false;\n @Input() icon: string;\n\n constructor(protected _onCloseService: OnCloseService) {\n _onCloseService.onClose.subscribe(() => {\n this.close();\n });\n }\n\n open() {\n if (!this.disabled) {\n this.isOpen = true;\n }\n }\n\n close() {\n this.isOpen = false;\n }\n\n onClickOutside(event : Event){\n this.close();\n }\n\n toggle($event) {\n // TODO: following lines were uncommented due to needness in signature app\n $event.preventDefault();\n $event.stopPropagation();\n if (!this.disabled) {\n this.isOpen = !this.isOpen;\n }\n }\n\n select($event, value: Option) {\n $event.preventDefault();\n $event.stopPropagation();\n this.selected.emit(value);\n this.close();\n }\n}\n","import {Directive, HostBinding, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\n\n@Directive({\n selector: '[gdDisabledCursor]'\n})\nexport class DisabledCursorDirective implements OnInit, OnChanges {\n\n @Input() dis: boolean;\n\n constructor() {\n }\n\n @HostBinding('class.inactive') cursor: boolean;\n\n private updateCursor() {\n this.cursor = this.dis ? true : false;\n }\n\n ngOnInit(): void {\n this.updateCursor();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.updateCursor()\n }\n}\n","import {Directive, HostBinding, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\n\n@Directive({\n selector: '[gdRotation]'\n})\nexport class RotationDirective implements OnInit, OnChanges {\n\n @Input() angle: number;\n @Input() isHtmlMode: boolean;\n @Input() width: number;\n @Input() height: number;\n @Input() withMargin = true;\n\n @HostBinding('style.animation') animation: string;\n @HostBinding('style.transition-property') transition: string;\n @HostBinding('style.transform') transform: string;\n\n @HostBinding('style.margin') margin: string;\n\n constructor() {\n }\n\n private updateCursor() {\n if (typeof this.angle === \"string\"){\n this.angle = parseInt(this.angle, 10);\n }\n\n if (this.angle) {\n this.animation = 'none';\n this.transition = 'none';\n this.transform = 'rotate(' + this.angle + 'deg)';\n } else if (this.angle === 0 && this.animation) {\n this.animation = null;\n this.transition = null;\n this.transform = null;\n }\n\n if (this.withMargin) {\n if (this.angle === 90 || this.angle === 270 || this.angle === -90 || this.angle === -270) {\n if (this.isHtmlMode) {\n if (this.isLandscape()) {\n this.margin = '164px 254px';\n } else {\n this.margin = '-111px 254px';\n }\n } else {\n if (this.isLandscape()) {\n this.margin = '129px 100px -79px';\n } else {\n this.margin = '-72px 100px -79px';\n }\n }\n } else if (this.angle === -180 || this.angle === 180) {\n this.margin = '280px';\n } else {\n this.margin = null;\n }\n }\n\n }\n\n isLandscape() {\n return this.width > this.height;\n }\n\n ngOnInit(): void {\n this.updateCursor();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.updateCursor()\n }\n\n}\n","import {Component, Input, Output, EventEmitter, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-init-state',\n templateUrl: './init-state.component.html',\n styleUrls: ['./init-state.component.less']\n})\nexport class InitStateComponent implements OnInit {\n @Input() icon: string;\n @Input() text: string;\n @Output() fileDropped = new EventEmitter();\n showUploadFile = false;\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n dropped($event) {\n if ($event) {\n this.fileDropped.emit($event);\n this.showUploadFile = false;\n }\n }\n}\n","import {Observable, Observer} from \"rxjs\";\nimport {PageModel} from \"./file.service\";\n\nexport class RenderPrintService {\n private _render: Observable;\n private _observer: Observer;\n private _renderBlob: Observable;\n private _observerBlob: Observer;\n\n constructor() {\n this._render = new Observable(observer =>\n this._observer = observer);\n this._renderBlob = new Observable(observer =>\n this._observerBlob = observer);\n }\n\n get renderPrint(): Observable {\n return this._render;\n }\n\n changePages(pages: PageModel[]) {\n this._observer.next(pages);\n }\n\n get renderPrintBlob(): Observable {\n return this._renderBlob;\n }\n\n changeBlob(file: Blob) {\n this._observerBlob.next(file);\n }\n}\n","import {Directive, Input} from '@angular/core';\nimport {PageModel} from \"./file.service\";\nimport {RenderPrintService} from \"./render-print.service\";\n\n@Directive({\n selector: '[gdRenderPrint]'\n})\nexport class RenderPrintDirective {\n @Input() htmlMode: boolean;\n\n constructor(private _renderService: RenderPrintService) {\n _renderService.renderPrint.subscribe(pages => {\n this.renderPrint(pages);\n });\n _renderService.renderPrintBlob.subscribe(file => {\n this.renderPrintBlob(file);\n });\n }\n\n private renderPrint(pages: PageModel[]) {\n let pagesHtml = '';\n\n for (const page of pages) {\n pagesHtml += '
' +\n '
' +\n '
';\n }\n\n this.openWindow(pagesHtml, pages[0].width, pages[0].height);\n }\n\n private openWindow(pagesHtml, width, height) {\n const a4Height = 842;\n const a4Width = 595;\n let imageA4Adjusted = '';\n if(width > a4Width && height > a4Height){\n const zoom = Math.round(height / a4Height) / 100;\n imageA4Adjusted = '.gd-page img { width: 100%; margin: 0; padding: 0;}';\n if(navigator.userAgent.toLowerCase().indexOf('firefox') > -1){\n imageA4Adjusted = '.gd-page img { transform: scale(' + zoom + ');}';\n }\n }\n let cssPrint = '';\n\n const windowObject = window.open('', \"PrintWindow\", \"width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes\");\n windowObject.focus();\n windowObject.document.writeln(cssPrint);\n windowObject.document.writeln(pagesHtml);\n windowObject.document.close();\n setTimeout(() => {\n windowObject.focus();\n windowObject.print();\n windowObject.close();\n }, 100);\n }\n\n private renderPrintBlob(file: Blob) {\n const fileURL = URL.createObjectURL(file);\n const windowObject = window.open(fileURL, \"PrintWindow\", \"width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes\");\n windowObject.focus();\n windowObject.print();\n windowObject.close();\n }\n}\n","import {BehaviorSubject, Observable} from \"rxjs\";\n\nexport class ExceptionMessageService {\n private _observer: BehaviorSubject = new BehaviorSubject('Server is not available');\n private _messageChange: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get messageChange(): Observable {\n return this._messageChange;\n }\n\n changeMessage(message: string) {\n this._observer.next(message);\n }\n}\n","import {Component, OnInit} from '@angular/core';\nimport {ExceptionMessageService} from \"../exception-message.service\";\n\n@Component({\n selector: 'gd-error-modal',\n templateUrl: './error-modal.component.html',\n styleUrls: ['./error-modal.component.less']\n})\nexport class ErrorModalComponent implements OnInit {\n\n message: string;\n\n constructor(messageService: ExceptionMessageService) {\n messageService.messageChange.subscribe(message => this.message = message);\n }\n\n ngOnInit() {\n }\n\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class PasswordService {\n private _observer: Subject = new Subject();\n private readonly _passChange: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get passChange(): Observable {\n return this._passChange;\n }\n\n setPassword(pass: string) {\n this._observer.next(pass);\n }\n}\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\nimport {ExceptionMessageService} from \"../exception-message.service\";\nimport {PasswordService} from \"../password.service\";\nimport * as jquery from \"jquery\";\n\nconst $ = jquery;\n\n@Component({\n selector: 'gd-password-required',\n templateUrl: './password-required.component.html',\n styleUrls: ['./password-required.component.less']\n})\nexport class PasswordRequiredComponent implements OnInit {\n message: string;\n @Output() cancelEvent = new EventEmitter();\n\n constructor(messageService: ExceptionMessageService, private _passwordService: PasswordService) {\n messageService.messageChange.subscribe(message => this.message = message);\n }\n\n ngOnInit() {\n }\n\n setPassword(value: string) {\n this._passwordService.setPassword(value);\n }\n\n onCloseOpen($event: boolean) {\n if ($event) {\n setTimeout(() => {\n const element = $(\"#password\");\n if (element) {\n element.focus();\n }\n }, 100);\n } else {\n $(\"#password\").val(\"\");\n }\n }\n\n cancel($event: boolean) {\n $(\"#password\").val(\"\");\n this.cancelEvent.emit(true);\n }\n}\n","import {Injectable} from '@angular/core';\nimport {HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from \"@angular/common/http\";\nimport {Observable, throwError} from \"rxjs\";\nimport {catchError, map} from \"rxjs/operators\";\nimport {ExceptionMessageService} from \"./exception-message.service\";\nimport {HttpError} from \"./file.service\";\nimport {CommonModals, ModalService} from \"./modal.service\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ErrorInterceptorService implements HttpInterceptor {\n\n constructor(private _modalService: ModalService, private _messageService: ExceptionMessageService) {\n }\n\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\n const logFormat = 'background: maroon; color: white';\n\n return next.handle(req)\n .pipe(map(data => {\n return data;\n }),\n catchError((exception: HttpEvent) => {\n if (exception instanceof HttpErrorResponse) {\n switch (exception.status) {\n\n case HttpError.BadRequest:\n console.error('%c Bad Request 400', logFormat);\n break;\n case HttpError.Unauthorized:\n console.error('%c Unauthorized 401', logFormat);\n break;\n case HttpError.NotFound:\n console.error('%c Not Found 404', logFormat);\n break;\n case HttpError.TimeOut:\n console.error('%c TimeOut 408', logFormat);\n break;\n case HttpError.InternalServerError:\n console.error('%c big bad 500', logFormat);\n this._messageService.changeMessage(exception.error.message);\n this._modalService.open(CommonModals.ErrorMessage);\n break;\n\n case HttpError.Forbidden:\n console.error('%c Forbidden 403', logFormat);\n this._messageService.changeMessage(exception.error.message);\n this._modalService.open(CommonModals.PasswordRequired);\n break;\n }\n }\n return throwError(exception);\n }));\n }\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class SearchService {\n private _observer: Subject = new Subject();\n private readonly _textChange: Observable = this._observer.asObservable();\n\n private _observerCurrent: Subject = new Subject();\n private readonly _currentChange: Observable = this._observerCurrent.asObservable();\n\n private _observerTotal: Subject = new Subject();\n private readonly _totalChange: Observable = this._observerTotal.asObservable();\n\n constructor() {\n }\n\n get textChange(): Observable {\n return this._textChange;\n }\n\n setText(text: string) {\n this._observer.next(text);\n }\n\n get currentChange(): Observable {\n return this._currentChange;\n }\n\n get totalChange(): Observable {\n return this._totalChange;\n }\n\n setCurrent(current: number) {\n this._observerCurrent.next(current);\n }\n\n setTotal(total: number) {\n this._observerTotal.next(total);\n }\n}\n","import {AfterViewInit, Component, ElementRef, EventEmitter, OnInit, Output, ViewChild} from '@angular/core';\nimport {SearchService} from \"../search.service\";\n\n@Component({\n selector: 'gd-search',\n templateUrl: './search.component.html',\n styleUrls: ['./search.component.less']\n})\nexport class SearchComponent implements OnInit, AfterViewInit {\n\n @Output() hidePanel = new EventEmitter(false);\n\n current = 0;\n total = 0;\n\n @ViewChild('text',{\n static : true\n }) textElement: ElementRef;\n\n constructor(private _searchService: SearchService) {\n _searchService.totalChange.subscribe((total: number) => {\n this.total = total;\n if (total !== 0) {\n this.current = 1;\n } else {\n this.current = 0;\n }\n this._searchService.setCurrent(this.current);\n });\n }\n\n ngOnInit() {\n }\n\n setText(text: string) {\n this._searchService.setText(text);\n }\n\n hide() {\n this.setText('');\n this.hidePanel.emit(true);\n }\n\n prev() {\n if (this.current > 1) {\n this.current--;\n this._searchService.setCurrent(this.current);\n }\n }\n\n next() {\n if (this.current < this.total) {\n this.current++;\n this._searchService.setCurrent(this.current);\n }\n }\n\n ngAfterViewInit(): void {\n this.textElement.nativeElement.focus();\n }\n}\n","import {Directive, ElementRef} from '@angular/core';\nimport {SearchService} from \"./search.service\";\nimport {HighlightSearchPipe} from \"./pipes\";\nimport {ZoomService} from \"./zoom.service\";\nimport * as jquery from \"jquery\";\nconst $ = jquery;\n\n@Directive({\n selector: '[gdSearchable]'\n})\nexport class SearchableDirective {\n\n text: string;\n current = 0;\n total = 0;\n private zoom = 100;\n\n constructor(private _elementRef: ElementRef,\n private _searchService: SearchService,\n private _highlight: HighlightSearchPipe,\n private _zoomService: ZoomService) {\n _searchService.currentChange.subscribe((current: number) => {\n this.current = current;\n if (this.current !== 0) {\n this.moveToCurrent();\n }\n });\n\n _searchService.textChange.subscribe((text: string) => {\n this.text = text;\n this.highlightSearch();\n });\n\n this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom;\n _zoomService.zoomChange.subscribe((val: number) => {\n this.zoom = val ? val : this.zoom;\n });\n }\n\n private highlightSearch() {\n const el = this._elementRef ? this._elementRef.nativeElement : null;\n if (el) {\n this.cleanHighlight(el);\n if (this.text) {\n this.highlightEl(el);\n const count = el.querySelectorAll('.gd-highlight').length;\n this.total = count;\n } else {\n this.total = 0;\n }\n this._searchService.setTotal(this.total);\n }\n }\n\n private moveToCurrent() {\n if (this.current === 0) {\n return;\n }\n const currentZoom = this.getZoom();\n const el = this._elementRef ? this._elementRef.nativeElement : null;\n if (el) {\n el.querySelectorAll('.gd-highlight-select').forEach(function (value) {\n $(value).removeClass('gd-highlight-select');\n });\n const currentEl = el.querySelectorAll('.gd-highlight')[this.current - 1];\n $(currentEl).addClass('gd-highlight-select');\n if (currentEl) {\n const options = {\n left: 0,\n top: ($(currentEl).offset().top) + el.parentElement.parentElement.scrollTop - 150,\n };\n // using polyfill\n el.parentElement.parentElement.scroll(options);\n }\n }\n }\n\n private highlightEl(el: Element) {\n const textNodes = $(el).find('*').contents().filter(function () {\n const nodeName = this.parentElement.nodeName.toLowerCase();\n const checkClass = (this).classList ? !(this).classList.contains('gd-highlight') : true;\n return this.nodeType === 3 &&\n this.textContent.trim().length !== 0 &&\n nodeName !== 'style' &&\n nodeName !== 'title' &&\n nodeName !== 'body' &&\n nodeName !== 'script' &&\n checkClass;\n });\n const text = this.text;\n const highlight = this._highlight;\n textNodes.each(function () {\n const $this = $(this);\n let content = $this.text();\n content = highlight.transform(content, text);\n $this.replaceWith(content);\n });\n el.normalize();\n }\n\n private cleanHighlight(el: HTMLElement) {\n const nodeListOf = el.querySelectorAll('.gd-highlight');\n for (let i = 0; i < nodeListOf.length; i++) {\n const element = nodeListOf.item(i);\n element.replaceWith((element).innerText);\n }\n el.normalize();\n }\n\n private getZoom() {\n return this.zoom / 100;\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-tabbed-toolbars',\n templateUrl: './tabbed-toolbars.component.html',\n styleUrls: ['./tabbed-toolbars.component.less']\n})\nexport class TabbedToolbarsComponent implements OnInit {\n @Input() logo: string;\n @Input() icon: string;\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class TabActivatorService {\n private _observer: Subject = new Subject();\n private readonly _activeTabChange: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get activeTabChange(): Observable {\n return this._activeTabChange;\n }\n\n changeActiveTab(tabId: string) {\n this._observer.next(tabId);\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\nimport {TabActivatorService} from \"../tab-activator.service\";\n\n@Component({\n selector: 'gd-tab',\n templateUrl: './tab.component.html',\n styleUrls: ['./tab.component.less']\n})\nexport class TabComponent implements OnInit {\n @Input() id: string;\n @Input() tabTitle: string;\n @Input() icon: string;\n @Input() disabled = false;\n @Input() active = false;\n @Input() content = true;\n\n constructor(private _tabActivatorService: TabActivatorService) {\n this._tabActivatorService.activeTabChange.subscribe((tabId: string) => {\n this.activation(tabId);\n });\n }\n\n private activation(tabId: string) {\n if (this.id === tabId) {\n this.active = true;\n } else {\n this.active = false;\n }\n }\n\n ngOnInit() {\n }\n\n selectTab() {\n if (this.disabled) {\n return;\n }\n this._tabActivatorService.changeActiveTab(this.id);\n }\n}\n","import {Component} from '@angular/core';\n\n@Component({\n selector: 'gd-tabs',\n templateUrl: './tabs.component.html',\n styleUrls: ['./tabs.component.less']\n})\nexport class TabsComponent {\n constructor() {\n }\n\n}\n","import {Observable, Subject} from \"rxjs\";\n\nexport class Formatting {\n constructor(fontSize: number, color: string, bgColor: string, bold: boolean, italic: boolean, underline: boolean, font: string, strikeout: boolean, align: string, list: string) {\n this.fontSize = fontSize;\n this.color = color;\n this.bgColor = bgColor;\n this.bold = bold;\n this.italic = italic;\n this.underline = underline;\n this.font = font;\n this.strikeout = strikeout;\n this.align = align;\n this.list = list;\n }\n\n bold: boolean;\n italic: boolean;\n underline: boolean;\n fontSize: number;\n color: string;\n bgColor: string;\n font: string;\n strikeout: boolean;\n align: string;\n list: string;\n\n public static default(): Formatting {\n return new Formatting(10, '#000000', '#FFFFFF', false, false, false, 'Arial', false, \"\", \"\");\n }\n}\n\nexport class FormattingService {\n private _observerBold: Subject = new Subject();\n private readonly _formatBoldChange: Observable = this._observerBold.asObservable();\n private _observerUnderline: Subject = new Subject();\n private readonly _formatUnderlineChange: Observable = this._observerUnderline.asObservable();\n private _observerUndo: Subject = new Subject();\n private readonly _undo: Observable = this._observerUndo.asObservable();\n private _observerRedo: Subject = new Subject();\n private readonly _redo: Observable = this._observerRedo.asObservable();\n private _observerItalic: Subject = new Subject();\n private readonly _formatItalicChange: Observable = this._observerItalic.asObservable();\n private _observerColor: Subject = new Subject();\n private readonly _formatColorChange: Observable = this._observerColor.asObservable();\n private _observerBgColor: Subject = new Subject();\n private readonly _formatBgColorChange: Observable = this._observerBgColor.asObservable();\n private _observerFontSize: Subject = new Subject();\n private readonly _formatFontSizeChange: Observable = this._observerFontSize.asObservable();\n private _observerFont: Subject = new Subject();\n private readonly _formatFontChange: Observable = this._observerFont.asObservable();\n private _observerStrikeout: Subject = new Subject();\n private readonly _formatStrikeoutChange: Observable = this._observerStrikeout.asObservable();\n private _observerAlign: Subject = new Subject();\n private readonly _formatAlignChange: Observable = this._observerAlign.asObservable();\n private _observerList: Subject = new Subject();\n private readonly _formatListChange: Observable = this._observerList.asObservable();\n\n constructor() {\n }\n\n get formatBoldChange() {\n return this._formatBoldChange;\n }\n\n get formatUnderlineChange() {\n return this._formatUnderlineChange;\n }\n\n get formatColorChange() {\n return this._formatColorChange;\n }\n\n get formatBgColorChange() {\n return this._formatBgColorChange;\n }\n\n get formatFontSizeChange() {\n return this._formatFontSizeChange;\n }\n\n get formatFontChange() {\n return this._formatFontChange;\n }\n\n get undo() {\n return this._undo;\n }\n\n get redo() {\n return this._redo;\n }\n\n get formatItalicChange() {\n return this._formatItalicChange;\n }\n\n get formatStrikeoutChange() {\n return this._formatStrikeoutChange;\n }\n\n get formatAlignChange() {\n return this._formatAlignChange;\n }\n\n get formatListChange() {\n return this._formatListChange;\n }\n\n static createFontSizeOption(val: number) {\n return {value: val, name: val + 'px', separator: false}\n }\n\n static getFontSizeOptions() {\n return [\n FormattingService.createFontSizeOption(8),\n FormattingService.createFontSizeOption(10),\n FormattingService.createFontSizeOption(12),\n FormattingService.createFontSizeOption(14),\n FormattingService.createFontSizeOption(16),\n FormattingService.createFontSizeOption(18),\n FormattingService.createFontSizeOption(20),\n FormattingService.createFontSizeOption(22),\n FormattingService.createFontSizeOption(24),\n ];\n }\n\n static createFontOption(val: string) {\n return {value: val, name: val, separator: false}\n }\n\n static getFontOptions() {\n const fonts = [\"Arial\", \"Calibri\", \"Century Gothic\", \"Comic Sans\", \"Consolas\", \"Courier\", \"Dejavu Sans\", \"Dejavu Serif\", \"Georgia\", \"Gill Sans\", \"Helvetica\", \"Impact\", \"Lucida Sans\",\n \"Myriad Pro\", \"Open Sans\", \"Palatino\", \"Tahoma\", \"Times New Roman\", \"Trebuchet\"];\n const fontOptions = [];\n fonts.forEach(font => {\n fontOptions.push(this.createFontOption(font));\n })\n\n return fontOptions;\n }\n\n changeFormatFontSize($event: number) {\n this._observerFontSize.next($event);\n }\n\n changeFormatBold(bold: boolean) {\n this._observerBold.next(bold);\n }\n\n changeFormatUnderline(underline: boolean) {\n this._observerUnderline.next(underline);\n }\n\n Undo() {\n this._observerUndo.next();\n }\n\n Redo() {\n this._observerRedo.next();\n }\n\n changeFormatItalic(italic: boolean) {\n this._observerItalic.next(italic);\n }\n\n changeFormatColor(color: string) {\n this._observerColor.next(color);\n }\n\n changeFormatBgColor(bgcolor: string) {\n this._observerBgColor.next(bgcolor);\n }\n\n changeFormatFont(font: string) {\n this._observerFont.next(font);\n }\n\n changeFormatStrikeout(strikeout: boolean) {\n this._observerStrikeout.next(strikeout);\n }\n\n changeFormatAlign(align: string) {\n this._observerAlign.next(align);\n }\n\n changeFormatList(list: string) {\n this._observerList.next(list);\n }\n}\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\n\nconst DEFAULT_COLORS = [\n '#000000', '#434343', '#666666', '#999999', '#B7B7B7', '#CCCCCC', '#D9D9D9', '#EFEFEF', '#F3F3F3', '#FFFFFF',\n '#980000', '#FF0000', '#FF9900', '#FFFF00', '#00FF00', '#00FFFF', '#4986E8', '#0000FF', '#9900FF', '#FF00FF',\n '#E6B8AF', '#F4CCCC', '#FDE5CD', '#FFF2CC', '#D9EAD3', '#D0E0E2', '#C9DAF8', '#CFE2F3', '#D9D2E9', '#EAD1DC',\n '#DD7E6B', '#EA9899', '#F9CB9C', '#FFE59A', '#B7D7A8', '#A2C4C9', '#A4C2F4', '#9FC5E8', '#B4A7D7', '#D5A6BD',\n '#CC4125', '#E06666', '#F6B26B', '#FFD966', '#92C47D', '#75A5AF', '#6D9EEB', '#6FA9DB', '#8E7CC3', '#C27BA0',\n '#A61C00', '#CC0000', '#E69138', '#F2C131', '#6AA84F', '#45818E', '#3C78D8', '#3C85C6', '#674EA7', '#A64D79',\n '#85200B', '#990000', '#B45F05', '#BF9000', '#37761D', '#144F5C', '#1254CC', '#0A5394', '#351C75', '#741B47',\n '#5B0F00', '#660000', '#783F03', '#7F6000', '#284E13', '#0B343D', '#1B4586', '#063763', '#20124D', '#4C1030',\n];\n\n@Component({\n selector: 'gd-color-picker',\n templateUrl: './color-picker.component.html',\n styleUrls: ['./color-picker.component.less']\n})\nexport class ColorPickerComponent implements OnInit {\n @Input() isOpen = false;\n @Output() selectedColor = new EventEmitter();\n @Output() closeOutside = new EventEmitter();\n colors: any = DEFAULT_COLORS;\n white = '#FFFFFF';\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n select($event, color: string) {\n $event.preventDefault();\n $event.stopPropagation();\n this.selectedColor.emit(color);\n }\n\n close() {\n this.isOpen = false;\n this.closeOutside.emit(true);\n }\n}\n","import {Injectable} from '@angular/core';\nimport {FormattingService} from \"./formatting.service\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BackFormattingService extends FormattingService {\n\n constructor() {\n super();\n }\n}\n","import {Injectable} from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SelectionService {\n selection: Range;\n isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\n\n restoreSelection() {\n if(this.selection && !this.selection.collapsed || this.isIE){\n this.putSelection(this.selection );\n }\n }\n\n captureSelection() {\n const selection = window.getSelection();\n if (selection.rangeCount > 0) {\n this.selection = selection.getRangeAt(0);\n }\n }\n\n private putSelection(selection) {\n const sel = window.getSelection();\n sel.removeAllRanges();\n sel.addRange(selection.cloneRange());\n }\n\n refreshSelection() {\n this.captureSelection();\n this.restoreSelection();\n }\n}\n","import {Directive, HostListener, OnInit} from '@angular/core';\nimport {FormattingService} from \"./formatting.service\";\nimport {BackFormattingService} from \"./back-formatting.service\";\nimport * as jquery from 'jquery';\nconst $ = jquery;\nimport {SelectionService} from './selection.service';\n\n@Directive({\n selector: '[gdFormatting]'\n})\nexport class FormattingDirective implements OnInit {\n\n private bold = false;\n private italic = false;\n private underline = false;\n private color: string;\n private bgColor: string;\n private font: string;\n private strikeout = false;\n private align: string;\n private list: string;\n private isIE = false;\n\n constructor(private _formattingService: FormattingService,\n private _backFormattingService: BackFormattingService,\n private _selectionService: SelectionService) {\n this.isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\n }\n\n @HostListener('mouseup') mouseup() {\n\n this.bold = document.queryCommandState(\"bold\");\n this.strikeout = document.queryCommandState(\"strikeThrough\");\n this.italic = document.queryCommandState(\"italic\");\n this.bgColor = document.queryCommandValue(\"backColor\");\n this.underline = document.queryCommandState(\"underline\");\n this.align = this.checkJustify();\n this.list = this.checkList();\n\n //fix required by FireFox to get correct background color\n if (this.bgColor === \"transparent\") {\n this.bgColor = $(window.getSelection().focusNode.parentNode).css('background-color').toString();\n }\n this.font = document.queryCommandValue(\"FontName\").replace(/\"/g, '');\n if(this.font.split(\",\").length > 1){\n this.font = this.font.split(\",\")[0];\n }\n this.color = document.queryCommandValue(\"foreColor\");\n this._backFormattingService.changeFormatBold(this.bold);\n this._backFormattingService.changeFormatUnderline(this.underline);\n this._backFormattingService.changeFormatItalic(this.italic);\n this._backFormattingService.changeFormatColor(this.color);\n this._backFormattingService.changeFormatBgColor(this.bgColor);\n this._backFormattingService.changeFormatFontSize(this.reportFontSize());\n this._backFormattingService.changeFormatFont(this.font);\n this._backFormattingService.changeFormatStrikeout(this.strikeout);\n this._backFormattingService.changeFormatAlign(this.align);\n this._backFormattingService.changeFormatList(this.list);\n }\n\n private checkJustify() {\n let align = \"\";\n align = document.queryCommandState(\"justifyCenter\") ? \"center\" : align;\n align = document.queryCommandState(\"justifyFull\") ? \"full\" : align;\n align = document.queryCommandState(\"justifyLeft\") ? \"left\" : align;\n align = document.queryCommandState(\"justifyRight\") ? \"right\" : align;\n return align;\n }\n\n private checkList() {\n let list = \"\";\n list = document.queryCommandState(\"insertUnorderedList\") ? \"unordered\" : list;\n list = document.queryCommandState(\"insertOrderedList\") ? \"ordered\" : list;\n return list;\n }\n\n reportFontSize(): number {\n let containerEl, sel;\n if (window.getSelection) {\n sel = window.getSelection();\n if (sel.rangeCount) {\n containerEl = sel.getRangeAt(0).commonAncestorContainer;\n // Make sure we have an element rather than a text node\n if (containerEl.nodeType === 3) {\n containerEl = containerEl.parentNode;\n }\n }\n } else if ((sel = document.getSelection()) && sel.type !== \"Control\") {\n containerEl = sel.createRange().parentElement();\n }\n\n if (containerEl) {\n return parseInt(this.getComputedStyleProperty(containerEl, \"fontSize\").replace(\"px\", \"\"), 10);\n }\n }\n\n getComputedStyleProperty(el, propName) {\n if (window.getComputedStyle) {\n return window.getComputedStyle(el, null)[propName];\n } else if (el.currentStyle) {\n return el.currentStyle[propName];\n }\n }\n\n ngOnInit(): void {\n this._formattingService.undo.subscribe(() => {\n this.toggleUndo();\n });\n this._formattingService.redo.subscribe(() => {\n this.toggleRedo();\n });\n this._formattingService.formatBoldChange.subscribe((bold: boolean) => {\n this.bold = bold;\n this.toggleBold();\n });\n this._formattingService.formatUnderlineChange.subscribe((underline: boolean) => {\n this.underline = underline;\n this.toggleUnderline();\n });\n this._formattingService.formatItalicChange.subscribe((italic: boolean) => {\n this.italic = italic;\n this.toggleItalic();\n });\n this._formattingService.formatColorChange.subscribe(((color: string) => {\n this.color = color;\n this.setColor(color);\n }));\n this._formattingService.formatBgColorChange.subscribe(((bgcolor: string) => {\n this.bgColor = bgcolor;\n this.setBgColor(bgcolor);\n }));\n this._formattingService.formatFontSizeChange.subscribe(((fontSize: number) => {\n this.setFontSize(fontSize);\n }));\n\n this._formattingService.formatFontChange.subscribe(((font: string) => {\n this.font = font;\n this.setFont(font);\n }));\n this._formattingService.formatStrikeoutChange.subscribe((strikeout: boolean) => {\n this.strikeout = strikeout;\n this.toggleStrikeout();\n });\n this._formattingService.formatAlignChange.subscribe((align: string) => {\n this.align = align;\n this.toggleAlign(this.align);\n });\n this._formattingService.formatListChange.subscribe((list: string) => {\n const remove = this.list === list;\n this.list = list;\n this.toggleList(this.list, remove);\n });\n }\n\n private toggleBold() {\n document.execCommand(\"bold\");\n this._selectionService.refreshSelection();\n }\n\n private toggleUnderline() {\n document.execCommand(\"underline\");\n this._selectionService.refreshSelection();\n }\n\n private toggleItalic() {\n document.execCommand(\"italic\");\n this._selectionService.refreshSelection();\n }\n\n private setBgColor(bgColor: string) {\n document.execCommand(\"backColor\", false, bgColor);\n this._selectionService.refreshSelection();\n }\n\n private setColor(color: string) {\n document.execCommand(\"foreColor\", false, color);\n this._selectionService.refreshSelection();\n }\n\n private setFontSize(fontSize: number) {\n if (document.getSelection().toString()) {\n let spanString = \"\" +\n document.getSelection() + \"\";\n if (this.bold) {\n spanString = \"\" + spanString + \"\";\n }\n if (this.italic) {\n spanString = \"\" + spanString + \"\";\n }\n if (this.underline) {\n spanString = \"\" + spanString + \"\";\n }\n if (this.strikeout) {\n spanString = \"\" + spanString + \"\";\n }\n document.execCommand('insertHTML', false, spanString);\n } else {\n document.execCommand(\"fontsize\", false, \"7\");\n }\n this._selectionService.refreshSelection();\n }\n\n private toggleUndo() {\n document.execCommand(\"undo\");\n }\n\n private toggleRedo() {\n document.execCommand(\"redo\");\n }\n\n private setFont(font: string) {\n document.execCommand(\"fontName\", false, font);\n this._selectionService.refreshSelection();\n }\n\n private toggleStrikeout() {\n document.execCommand(\"strikeThrough\");\n this._selectionService.refreshSelection();\n }\n\n private toggleAlign(align: string) {\n if(this.isIE) {\n this.toggleAlignIE(align);\n return;\n }\n document.execCommand(\"styleWithCSS\", false, 'true');\n switch (align) {\n case 'center':\n document.execCommand('justifyCenter');\n break;\n case 'full':\n document.execCommand('justifyFull');\n break;\n case 'left':\n document.execCommand('justifyLeft');\n break;\n case 'right':\n document.execCommand('justifyRight');\n break;\n }\n this._selectionService.refreshSelection();\n }\n\n private toggleAlignIE(align: string) {\n this._selectionService.restoreSelection()\n this._selectionService.captureSelection()\n const selection = window.getSelection().focusNode.parentNode.parentNode;\n if(align === \"full\"){\n align = \"justify\";\n }\n $(selection).css(\"text-align\", align);\n this._selectionService.refreshSelection()\n }\n\n private toggleList(list: string, remove: boolean) {\n switch (list) {\n case 'unordered':\n document.execCommand('insertUnorderedList', remove);\n break;\n case 'ordered':\n document.execCommand('insertOrderedList', remove);\n break;\n }\n this._selectionService.refreshSelection();\n }\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'gd-success-modal',\n templateUrl: './success-modal.component.html',\n styleUrls: ['./success-modal.component.less']\n})\nexport class SuccessModalComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","import {Injectable} from '@angular/core';\nimport {Observable, Subject} from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class EditHtmlService {\n private _observer: Subject = new Subject();\n private readonly _htmlContent: Observable = this._observer.asObservable();\n\n constructor() {\n }\n\n get observer(): Subject {\n return this._observer;\n }\n\n get htmlContent(): Observable {\n return this._htmlContent;\n }\n\n}\n","import {Directive, HostListener, Input} from '@angular/core';\nimport {SelectionService} from './selection.service';\nimport {EditHtmlService} from \"./edit-html.service\";\n\n@Directive({\n selector: '[gdEditor]'\n})\nexport class EditorDirective {\n @Input() text: any;\n\n private isIE: boolean = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\n\n constructor(private _selectionService: SelectionService, private _htmlService: EditHtmlService) {\n }\n\n @HostListener('keyup', ['$event'])\n public onInput(event) {\n this.text = event.target;\n if(this.isIE){\n if (this.text.innerHTML) {\n const html = this.text.innerHTML.toString();\n this._htmlService.observer.next(html);\n }\n }\n }\n\n @HostListener('mouseleave', ['$event'])\n public onMouseleave(event) {\n this._selectionService.captureSelection();\n // this code is required to fix IE11 issue - it doesn't trigger blur event, since that we need to save updated HTML here\n if(this.isIE){\n this._htmlService.observer.next(event.target.innerHTML.toString());\n }\n }\n\n @HostListener('blur', ['$event'])\n public onBlur(event) {\n event.preventDefault();\n this._selectionService.restoreSelection();\n if (this.text.innerHTML) {\n const html = this.text.innerHTML.toString();\n this._htmlService.observer.next(html);\n } else {\n this._htmlService.observer.next(event.target.innerHTML.toString());\n }\n }\n}\n","import {EventEmitter, Injectable} from '@angular/core'\nimport {HttpRequest} from '@angular/common/http';\nimport {Api} from \"./config.service\";\n\n@Injectable()\nexport class LoadingMaskService {\n onLoadingChanged: EventEmitter = new EventEmitter();\n\n private stopList = [];\n private requests: HttpRequest[] = [];\n\n constructor() {\n this.stopList.push(Api.SAVE_TEXT);\n this.stopList.push(Api.SAVE_OPTICAL_CODE);\n this.stopList.push(Api.LOAD_DOCUMENT_PAGE);\n this.stopList.push(Api.LOAD_THUMBNAILS);\n this.stopList.push(Api.GET_FILE_STATUS);\n this.stopList.push(Api.LOAD_PRINT);\n }\n\n onRequestStart(req: HttpRequest): void {\n const stop = this.stopList.find(x => req.url.includes(x));\n if (!stop) {\n this.requests.push(req);\n this.notify();\n }\n }\n\n onRequestFinish(req: HttpRequest): void {\n const index = this.requests.indexOf(req);\n if (index !== -1) {\n this.requests.splice(index, 1);\n }\n this.notify();\n }\n\n private notify(): void {\n this.onLoadingChanged.emit(this.requests.length !== 0);\n }\n}\n","import {AfterViewInit, Component, Input, OnInit} from '@angular/core';\nimport {LoadingMaskService} from \"../loading-mask.service\";\n\n@Component({\n selector: 'gd-loading-mask',\n templateUrl: './loading-mask.component.html',\n styleUrls: ['./loading-mask.component.less']\n})\n\nexport class LoadingMaskComponent implements OnInit, AfterViewInit {\n @Input() loadingMask = false;\n\n constructor(private _loadingMaskService: LoadingMaskService) {\n }\n\n ngOnInit() {\n }\n\n ngAfterViewInit() {\n this._loadingMaskService\n .onLoadingChanged\n .subscribe((loading: boolean) => this.loadingMask = loading);\n }\n}\n","import {Injectable} from '@angular/core';\nimport {HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from \"@angular/common/http\";\nimport {Observable} from \"rxjs\";\nimport {finalize} from 'rxjs/operators'\nimport {LoadingMaskService} from \"./loading-mask.service\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LoadingMaskInterceptorService implements HttpInterceptor {\n\n constructor(private _loadingMaskService: LoadingMaskService) {\n }\n\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\n this._loadingMaskService.onRequestStart(req);\n const callback = () => this._loadingMaskService.onRequestFinish(req);\n return next.handle(req).pipe( finalize( callback));\n }\n}\n","import {\n Component,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n Output,\n ViewEncapsulation\n} from '@angular/core';\n\n\nconst horizontalAlignment = {\n center : {\n right: 'auto'\n },\n left : {\n right: '100%'\n },\n right : {\n right: '-100%'\n }\n};\n\nconst verticalAlignment = {\n center : {\n top : '0px',\n },\n top : {\n top : '-100%',\n right: '100%'\n },\n bottom : {\n top: 'autos'\n }\n};\n\n/**\n * DropDownToggleComponent\n */\n@Component({\n selector: 'gd-drop-down-toggle',\n template: '',\n styleUrls: ['./drop-down.component.less'],\n encapsulation : ViewEncapsulation.None\n})\nexport class DropDownToggleComponent{\n @HostListener('click',['$event'])\n click = (event: any) => this.dropdown.toggle(event);\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\n}\n\n/**\n * DropDownItemsComponent\n */\n@Component({\n selector: 'gd-drop-down-items',\n template: '
',\n styleUrls: ['./drop-down.component.less'],\n encapsulation : ViewEncapsulation.None\n})\nexport class DropDownItemsComponent{\n\n get horizontalAlign(){\n return horizontalAlignment[this.dropdown.getPlacement().h].right;\n }\n\n get verticalAlign(){\n return verticalAlignment[this.dropdown.getPlacement().v].top;\n }\n\n get isOpen(){\n return this.dropdown.open;\n }\n\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\n\n onClickOutside(event : Event ){\n this.dropdown.close();\n }\n}\n\n/**\n * DropDownItemComponent\n */\n@Component({\n selector: 'gd-drop-down-item',\n template: '
',\n styleUrls: ['./drop-down.component.less'],\n})\nexport class DropDownItemComponent{\n @HostBinding('class')\n class = 'drop-down-item';\n\n @Output()\n selected = new EventEmitter();\n\n @HostListener('click')\n click = () => this.selectEntry();\n\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\n\n selectEntry(){\n this.selected.next();\n this.dropdown.close();\n }\n}\n\n/**\n * DropDownComponent\n */\n@Component({\n selector: 'gd-drop-down',\n template: '
',\n styleUrls: ['./drop-down.component.less'],\n encapsulation : ViewEncapsulation.None\n})\nexport class DropDownComponent{\n @Input()\n placement = {\n h: \"center\",\n v: \"bottom\"\n };\n\n\n @Input()\n @HostBinding('class.show')\n open = false;\n\n @HostBinding('class')\n class = 'drop-down';\n\n close(){\n this.open = false;\n }\n\n toggle(event : MouseEvent){\n event.stopPropagation();\n this.open = !this.open;\n document.body.click();\n }\n\n getPlacement(){\n return this.placement;\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n selector: 'gd-left-side-bar',\n templateUrl: './left-side-bar.component.html',\n styleUrls: ['./left-side-bar.component.less']\n})\nexport class LeftSideBarComponent implements OnInit {\n @Input() showSpinner = false;\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n}\n","import {Directive, EventEmitter, HostListener, Input, Output} from '@angular/core';\n\n@Directive({\n selector: '[gdTooltip]'\n})\nexport class TooltipDirective {\n\n @Output() showToolTip = new EventEmitter();\n\n constructor() {\n }\n\n @HostListener('mouseenter')\n public onHovering() {\n this.showToolTip.emit(true);\n }\n\n @HostListener('mouseleave')\n public onUnhovering() {\n this.showToolTip.emit(false);\n }\n\n}\n","import {\n ApplicationRef,\n ComponentFactoryResolver,\n Injectable,\n ViewContainerRef\n} from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AddDynamicComponentService {\n\n constructor(private _factoryResolver: ComponentFactoryResolver,\n private _appRef: ApplicationRef) {\n }\n\n addDynamicComponent(viewContainerRef: ViewContainerRef, component: any) {\n const factory = this._factoryResolver.resolveComponentFactory(component);\n const componentRef = viewContainerRef.createComponent(factory);\n\n componentRef.onDestroy(() => {\n this._appRef.detachView(componentRef.hostView);\n });\n\n return componentRef;\n }\n\n}\n","import {HostDynamicDirective} from \"./host-dynamic.directive\";\n\nexport class HostingDynamicComponentService {\n private hosts: HostDynamicDirective[];\n\n constructor() {\n this.hosts = [];\n }\n\n add(host: HostDynamicDirective) {\n this.hosts = this.hosts.filter(function (h) {\n return h.ident !== host.ident;\n });\n this.hosts.push(host);\n }\n\n remove(host: HostDynamicDirective) {\n this.hosts = this.hosts.filter(function (h) {\n return h.ident !== host.ident;\n });\n }\n\n find(ident: number) {\n return this.hosts.find(function (h) {\n return h.ident === ident;\n });\n }\n}\n","import {AfterViewInit, Directive, Input, OnDestroy, ViewContainerRef} from '@angular/core';\nimport {HostingDynamicComponentService} from \"./hosting-dynamic-component.service\";\n\n@Directive({\n selector: '[gdHostDynamic]'\n})\nexport class HostDynamicDirective implements AfterViewInit, OnDestroy {\n @Input() ident: number;\n\n constructor(public viewContainerRef: ViewContainerRef,\n private _hostingService: HostingDynamicComponentService) {\n }\n\n ngAfterViewInit(): void {\n this._hostingService.add(this);\n }\n\n ngOnDestroy(): void {\n this._hostingService.remove(this);\n this.viewContainerRef.clear();\n }\n\n}\n","import {AfterViewInit, Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport * as jquery from \"jquery\";\nimport {Utils} from \"../file.service\";\n\nconst $ = jquery;\n\n@Component({\n selector: 'gd-resizing',\n templateUrl: './resizing.component.html',\n styleUrls: ['./resizing.component.less']\n})\nexport class ResizingComponent implements OnInit, AfterViewInit {\n\n @Input() init: boolean;\n @Input() id: number;\n @Input() se = false;\n @Input() ne = false;\n @Input() sw = false;\n @Input() nw = false;\n @Input() pageWidth: number;\n @Input() pageHeight: number;\n SE = 'se';\n NE = 'ne';\n SW = 'sw';\n NW = 'nw';\n\n @Output() offsetX = new EventEmitter();\n @Output() offsetY = new EventEmitter();\n @Output() offsetTop = new EventEmitter();\n @Output() offsetLeft = new EventEmitter();\n @Output() release = new EventEmitter();\n\n private grab = false;\n private oldPosition: { x: number, y: number };\n\n constructor() {\n }\n\n ngAfterViewInit(): void {\n const elSE = $(this.getElementId(this.SE));\n const elNW = $(this.getElementId(this.NW));\n if (this.init && elSE && elNW && elSE.offset() && elNW.offset()) {\n let width = elSE.offset().left - elNW.offset().left;\n let height = elSE.offset().top - elNW.offset().top;\n while (width >= this.pageWidth || height >= this.pageHeight) {\n width = width / 2;\n height = height / 2;\n }\n setTimeout(() => {\n this.offsetX.emit(width);\n this.offsetY.emit(height);\n }, 100);\n }\n }\n\n ngOnInit() {\n }\n\n catchUp($event: DragEvent) {\n // ff\n $event.preventDefault();\n if ($event.dataTransfer) { // ff\n $event.dataTransfer.setData('text', 'foo');\n }\n this.grab = true;\n this.oldPosition = Utils.getMousePosition($event);\n }\n\n resize($event: DragEvent, el: string) {\n if (!this.grab) {\n return;\n }\n const position = Utils.getMousePosition($event);\n if (position.x === 0 && position.y === 0) {\n return;\n }\n const notSW = this.NE === el || this.NW === el;\n const notNE = this.SW === el || this.NW === el;\n this.setOffsets(position, notNE, notSW);\n if (notSW) {\n this.offsetTop.emit(position.y - this.oldPosition.y);\n }\n if (notNE) {\n this.offsetLeft.emit(position.x - this.oldPosition.x);\n }\n this.oldPosition = position;\n }\n\n private setOffsets(position, x: boolean, y: boolean) {\n const offsetX = x ? this.oldPosition.x - position.x : position.x - this.oldPosition.x;\n const offsetY = y ? this.oldPosition.y - position.y : position.y - this.oldPosition.y;\n this.offsetX.emit(offsetX);\n this.offsetY.emit(offsetY);\n }\n\n end($event: DragEvent, el: string) {\n // ff\n this.resize($event, el);\n this.release.emit(true);\n this.grab = false;\n }\n\n start($event: DragEvent) {\n this.drop($event);\n }\n\n drop($event: DragEvent) {\n $event.stopPropagation();\n $event.preventDefault();\n }\n\n private getElementId(el: string) {\n return \"#\" + el + \"-\" + this.id;\n }\n}\n","import {TabActivatorService} from \"./tab-activator.service\";\n\nexport class TopTabActivatorService extends TabActivatorService {\n\n constructor() {\n super();\n }\n}\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {ExceptionMessageService} from \"../exception-message.service\";\nimport {TopTabActivatorService} from \"../top-tab-activator.service\";\nimport {ModalService, CommonModals} from \"../modal.service\";\n\n@Component({\n selector: 'gd-top-tab',\n templateUrl: './top-tab.component.html',\n styleUrls: ['./top-tab.component.less']\n})\nexport class TopTabComponent implements OnInit {\n @Input() id: string;\n @Input() icon: string;\n @Input() disabled = false;\n @Input() tooltip: string;\n @Output() activeTab = new EventEmitter();\n @Input() elementPosition = 0;\n public active = false;\n public showToolTip = false;\n\n constructor(private _tabActivatorService: TopTabActivatorService,\n private _modalService: ModalService,\n private _excMessageService: ExceptionMessageService) {\n this._tabActivatorService.activeTabChange.subscribe((tabId: string) => {\n this.activation(tabId);\n if (tabId === null) {\n this.activeTab.emit(\"\");\n }\n });\n }\n\n private activation(tabId: string) {\n if (this.id === tabId) {\n this.active = !this.active;\n if (this.active) {\n this.activeTab.emit(this.id);\n } else {\n this.activeTab.emit(\"\");\n }\n } else {\n this.active = false;\n }\n }\n\n ngOnInit() {\n }\n\n toggleTab() {\n if (this.disabled) {\n this._modalService.open(CommonModals.ErrorMessage);\n this._excMessageService.changeMessage(\"Please open document first\");\n return;\n }\n this._tabActivatorService.changeActiveTab(this.id);\n }\n\n}\n","import {Component, EventEmitter, Input, OnInit, Output, ElementRef, Renderer2} from '@angular/core';\nimport * as jquery from 'jquery';\nimport {FormattingService} from \"../formatting.service\";\nimport {OnCloseService} from \"../on-close.service\";\nimport {Option} from \"../select/select.component\";\nimport { ZoomService } from '../zoom.service';\nimport { WindowService } from '../window.service';\n\nconst $ = jquery;\n\n@Component({\n selector: 'gd-text-menu',\n templateUrl: './text-menu.component.html',\n styleUrls: ['./text-menu.component.less']\n})\nexport class TextMenuComponent implements OnInit {\n @Input() blur: boolean;\n @Input() fontSize: number;\n @Input() font: string;\n @Input() bold: boolean;\n @Input() italic: boolean;\n @Input() underline: boolean;\n @Input() color: string;\n @Input() decoration = true;\n @Input() showTooltips = true;\n\n @Output() outFontSize = new EventEmitter();\n @Output() outFont = new EventEmitter();\n @Output() outBold = new EventEmitter();\n @Output() outItalic = new EventEmitter();\n @Output() outUnderline = new EventEmitter();\n @Output() outColor = new EventEmitter();\n\n fontSizeOptions = FormattingService.getFontSizeOptions();\n fontOptions = FormattingService.getFontOptions();\n colorPickerShow = false;\n\n isMobile: boolean;\n\n constructor(private _onCloseService: OnCloseService,\n private _zoomService: ZoomService,\n private _windowService: WindowService,\n protected _elementRef: ElementRef,\n private renderer: Renderer2) {\n \n _onCloseService.onClose.subscribe(() => {\n this.colorPickerShow = false;\n });\n\n this.isMobile = _windowService.isMobile();\n _windowService.onResize.subscribe((w) => {\n this.isMobile = _windowService.isMobile();\n });\n\n _zoomService.zoomChange.subscribe((val: number) => {\n if (this.isMobile)\n {\n this.changePosition(val);\n }\n });\n }\n\n ngOnInit() {\n }\n\n changePosition(val: number) {\n const top = (window.innerHeight - 24 - this._elementRef.nativeElement.parentElement.getBoundingClientRect().top - this._elementRef.nativeElement.parentElement.getBoundingClientRect().height);\n const left = this._elementRef.nativeElement.parentElement.getBoundingClientRect().left;\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'width', window.innerWidth + 'px');\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'top', top + 'px');\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'left', -left + 'px');\n }\n\n selectFontSize($event: Option) {\n $(\".gd-wrapper\").off(\"keyup\");\n this.outFontSize.emit($event.value);\n $(\".gd-wrapper\").on(\"keyup\", () => {\n const fontElements = document.getElementsByTagName(\"font\");\n for (let i = 0, len = fontElements.length; i < len; ++i) {\n if (fontElements[i].getAttribute('size') === \"7\") {\n fontElements[i].removeAttribute(\"size\");\n fontElements[i].style.fontSize = $event + \"px\";\n }\n }\n });\n }\n\n selectFont($event: Option) {\n event.preventDefault();\n event.stopPropagation();\n this.outFont.emit($event.value);\n }\n\n toggleColorPicker($event) {\n $event.preventDefault();\n $event.stopPropagation();\n this.colorPickerShow = !this.colorPickerShow;\n }\n\n selectColor($event: string) {\n this.colorPickerShow = false;\n this.outColor.emit($event);\n }\n\n toggleBold(event) {\n event.preventDefault();\n event.stopPropagation();\n this.outBold.emit(!this.bold);\n }\n\n toggleItalic(event) {\n event.preventDefault();\n event.stopPropagation();\n this.outItalic.emit(!this.italic);\n }\n\n toggleUnderline(event) {\n event.preventDefault();\n event.stopPropagation();\n this.outUnderline.emit(!this.underline);\n }\n\n closePicker($event) {\n this.colorPickerShow = !$event;\n }\n}\n","import {Component, EventEmitter, Input, OnInit, Output, Renderer2, ElementRef} from '@angular/core';\nimport {Formatting} from \"../formatting.service\";\nimport {WindowService} from \"../window.service\";\nimport { ZoomService } from '../zoom.service';\n\nexport class MenuType {\n public static FOR_SIGNATURE = \"signature\";\n public static FOR_ANNOTATION = \"annotation\";\n}\n\n@Component({\n selector: 'gd-context-menu',\n templateUrl: './context-menu.component.html',\n styleUrls: ['./context-menu.component.less']\n})\nexport class ContextMenuComponent implements OnInit {\n @Input() formatting: Formatting = Formatting.default();\n @Input() textMenu: boolean;\n @Input() topPosition: number;\n @Input() lock = false;\n @Input() translation = 0;\n @Input() menuType: string;\n @Output() changeFormatting = new EventEmitter();\n @Output() removeItem = new EventEmitter();\n @Output() copySign = new EventEmitter();\n @Output() lockOut = new EventEmitter();\n @Output() comment = new EventEmitter();\n\n isMobile: boolean;\n\n constructor(private _windowService: WindowService,\n private _zoomService: ZoomService,\n protected _elementRef: ElementRef,\n private renderer: Renderer2) {\n this.isMobile = _windowService.isMobile();\n _windowService.onResize.subscribe((w) => {\n this.isMobile = _windowService.isMobile();\n });\n\n _zoomService.zoomChange.subscribe((val: number) => {\n if (this.isMobile)\n {\n this.changeScale(val);\n }\n });\n }\n\n ngOnInit() {\n }\n\n changeScale(val: number){\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-context-menu'), 'transform', 'scale(' + 1/(val/100) + ')');\n }\n\n saveChanges() {\n this.changeFormatting.emit(this.formatting);\n }\n\n selectFontSize($event: number) {\n this.formatting.fontSize = $event;\n this.saveChanges();\n }\n\n selectFont($event: string) {\n this.formatting.font = $event;\n this.saveChanges();\n }\n\n selectColor($event: string) {\n this.formatting.color = $event;\n this.saveChanges();\n }\n\n toggleBold($event) {\n this.formatting.bold = $event;\n this.saveChanges();\n }\n\n toggleItalic($event) {\n this.formatting.italic = $event;\n this.saveChanges();\n }\n\n toggleUnderline($event) {\n this.formatting.underline = $event;\n this.saveChanges();\n }\n\n deleteItem() {\n this.removeItem.emit(true);\n }\n\n toggleLock() {\n this.lock = !this.lock;\n this.lockOut.emit(this.lock);\n }\n\n onCopySign() {\n this.copySign.emit(true);\n }\n\n isSignature() {\n return this.menuType === MenuType.FOR_SIGNATURE;\n }\n\n isAnnotation() {\n return this.menuType === MenuType.FOR_ANNOTATION;\n }\n\n addComment() {\n this.comment.emit(true);\n }\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {TopToolbarComponent} from './top-toolbar/top-toolbar.component';\nimport {SidePanelComponent} from './side-panel/side-panel.component';\nimport {ButtonComponent} from './button/button.component';\nimport {LogoComponent} from './logo/logo.component';\nimport {TooltipComponent} from './tooltip/tooltip.component';\nimport {FontAwesomeModule} from '@fortawesome/angular-fontawesome';\nimport {library} from '@fortawesome/fontawesome-svg-core';\nimport {fas} from '@fortawesome/free-solid-svg-icons';\nimport {far} from '@fortawesome/free-regular-svg-icons';\nimport {Api, ConfigService,} from \"./config.service\";\nimport {ModalService} from \"./modal.service\";\nimport {ModalComponent} from './modal/modal.component';\nimport {BrowseFilesModalComponent} from './browse-files-modal/browse-files-modal.component';\nimport {FileModel, FileService, FileUtil, Utils} from \"./file.service\";\nimport {DocumentComponent} from './document/document.component';\nimport {PageComponent} from './page/page.component';\nimport {HighlightSearchPipe, SanitizeHtmlPipe, SanitizeResourceHtmlPipe, SanitizeStylePipe} from \"./pipes\";\nimport {UploadFileZoneComponent} from './upload-file-zone/upload-file-zone.component';\nimport {UploadFilesService} from \"./upload-files.service\";\nimport {DndDirective} from './dnd.directive';\nimport {ScrollableDirective} from './scrollable.directive';\nimport {MouseWheelDirective} from './mousewheel.directive';\nimport {NavigateService} from \"./navigate.service\";\nimport {PagePreloadService} from \"./page-preload.service\";\nimport {ZoomDirective} from './zoom.directive';\nimport {ZoomService} from \"./zoom.service\";\nimport {SelectComponent} from './select/select.component';\nimport {DisabledCursorDirective} from './disabled-cursor.directive';\nimport {RotationDirective} from './rotation.directive';\nimport {InitStateComponent} from './init-state/init-state.component';\nimport {RenderPrintService} from \"./render-print.service\";\nimport {RenderPrintDirective} from './render-print.directive';\nimport {ErrorModalComponent} from './error-modal/error-modal.component';\nimport {PasswordRequiredComponent} from './password-required/password-required.component';\nimport {ExceptionMessageService} from \"./exception-message.service\";\nimport {PasswordService} from \"./password.service\";\nimport {ErrorInterceptorService} from \"./error-interceptor.service\";\nimport {SearchComponent} from './search/search.component';\nimport {SearchableDirective} from './searchable.directive';\nimport {SearchService} from \"./search.service\";\nimport {WindowService} from \"./window.service\";\nimport {ViewportService} from \"./viewport.service\";\nimport {TabbedToolbarsComponent} from './tabbed-toolbars/tabbed-toolbars.component';\nimport {TabComponent} from \"./tab/tab.component\";\nimport {TabsComponent} from \"./tabs/tabs.component\";\nimport {FormattingService} from \"./formatting.service\";\nimport {ColorPickerComponent} from './color-picker/color-picker.component';\nimport {FormattingDirective} from './formatting.directive';\nimport {BackFormattingService} from \"./back-formatting.service\";\nimport {OnCloseService} from \"./on-close.service\";\nimport {SuccessModalComponent} from './success-modal/success-modal.component';\nimport {EditorDirective} from './editor.directive';\nimport {LoadingMaskComponent} from './loading-mask/loading-mask.component';\nimport {LoadingMaskService} from './loading-mask.service';\nimport {LoadingMaskInterceptorService} from \"./loading-mask-interceptor.service\";\nimport {TabActivatorService} from \"./tab-activator.service\";\nimport {\n DropDownComponent,\n DropDownItemComponent,\n DropDownItemsComponent,\n DropDownToggleComponent\n} from './drop-down/drop-down.component';\nimport {ClickOutsideModule} from 'ng-click-outside';\nimport {LeftSideBarComponent} from './left-side-bar/left-side-bar.component';\nimport {TooltipDirective} from './tooltip.directive';\nimport {AddDynamicComponentService} from \"./add-dynamic-component.service\";\nimport {HostDynamicDirective} from './host-dynamic.directive';\nimport {HostingDynamicComponentService} from \"./hosting-dynamic-component.service\";\nimport {ResizingComponent} from './resizing/resizing.component';\nimport {TopTabComponent} from './top-tab/top-tab.component';\nimport {TopTabActivatorService} from \"./top-tab-activator.service\";\nimport {TextMenuComponent} from './text-menu/text-menu.component';\nimport {ContextMenuComponent} from './context-menu/context-menu.component';\n\nconst providers = [ConfigService,\n Api,\n ModalService,\n FileService,\n FileModel,\n FileUtil,\n Utils,\n SanitizeHtmlPipe,\n SanitizeResourceHtmlPipe,\n SanitizeStylePipe,\n HighlightSearchPipe,\n UploadFilesService,\n RenderPrintService,\n NavigateService,\n PagePreloadService,\n ZoomService,\n ExceptionMessageService,\n PasswordService,\n ErrorInterceptorService,\n SearchService,\n WindowService,\n ViewportService,\n FormattingService,\n BackFormattingService,\n OnCloseService,\n LoadingMaskInterceptorService,\n LoadingMaskService,\n TabActivatorService,\n AddDynamicComponentService,\n HostingDynamicComponentService,\n TopTabActivatorService];\n\n@NgModule({\n imports: [CommonModule, FontAwesomeModule, ClickOutsideModule],\n declarations: [\n TopToolbarComponent,\n SidePanelComponent,\n ButtonComponent,\n LogoComponent,\n TooltipComponent,\n ModalComponent,\n BrowseFilesModalComponent,\n DocumentComponent,\n PageComponent,\n SanitizeHtmlPipe,\n SanitizeResourceHtmlPipe,\n SanitizeStylePipe,\n HighlightSearchPipe,\n UploadFileZoneComponent,\n DndDirective,\n ScrollableDirective,\n MouseWheelDirective,\n ZoomDirective,\n SelectComponent,\n DisabledCursorDirective,\n RotationDirective,\n InitStateComponent,\n RenderPrintDirective,\n ErrorModalComponent,\n PasswordRequiredComponent,\n SearchComponent,\n SearchableDirective,\n TabbedToolbarsComponent,\n TabComponent,\n TabsComponent,\n ColorPickerComponent,\n FormattingDirective,\n SuccessModalComponent,\n EditorDirective,\n LoadingMaskComponent,\n DropDownComponent,\n DropDownItemComponent,\n DropDownItemsComponent,\n DropDownToggleComponent,\n LeftSideBarComponent,\n TooltipDirective,\n HostDynamicDirective,\n ResizingComponent,\n TopTabComponent,\n TextMenuComponent,\n ContextMenuComponent\n ],\n exports: [\n TopToolbarComponent,\n SidePanelComponent,\n ButtonComponent,\n LogoComponent,\n TooltipComponent,\n ModalComponent,\n BrowseFilesModalComponent,\n DocumentComponent,\n PageComponent,\n SanitizeResourceHtmlPipe,\n SanitizeStylePipe,\n HighlightSearchPipe,\n SanitizeHtmlPipe,\n UploadFileZoneComponent,\n ScrollableDirective,\n MouseWheelDirective,\n SelectComponent,\n RotationDirective,\n InitStateComponent,\n RenderPrintDirective,\n ErrorModalComponent,\n PasswordRequiredComponent,\n SearchComponent,\n SearchableDirective,\n TabbedToolbarsComponent,\n TabComponent,\n TabsComponent,\n ColorPickerComponent,\n FormattingDirective,\n SuccessModalComponent,\n LoadingMaskComponent,\n DndDirective,\n DropDownComponent,\n DropDownItemComponent,\n DropDownItemsComponent,\n DropDownToggleComponent,\n ZoomDirective,\n DropDownToggleComponent,\n LeftSideBarComponent,\n TooltipDirective,\n HostDynamicDirective,\n ResizingComponent,\n TopTabComponent,\n TextMenuComponent,\n ContextMenuComponent\n ],\n providers: providers\n})\nexport class CommonComponentsModule {\n constructor() {\n library.add(fas, far);\n }\n}\n"],"names":["tslib_1.__extends","$","tslib_1.__values"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;IASE;KACC;;gBARF,SAAS,SAAC;oBACT,QAAQ,EAAE,gBAAgB;oBAC1B,gIAA2C;;iBAE5C;;;;IAKD,0BAAC;CATD;;;;;;ACFA;IAkBE;QAPS,aAAQ,GAAG,IAAI,CAAC;QAChB,aAAQ,GAAG,IAAI,CAAC;QACf,kBAAa,GAAG,IAAI,YAAY,EAAW,CAAC;QAC5C,oBAAe,GAAG,IAAI,YAAY,EAAW,CAAC;QAExD,cAAS,GAAG,KAAK,CAAC;KAGjB;;;;IAED,2CAAc;;;IAAd;QACE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC/B;;;;IAED,4CAAe;;;IAAf;QACE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACjC;;;;IAED,4CAAe;;;IAAf;QACE,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YACnC,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;SAClC;KACF;;gBA/BF,SAAS,SAAC;oBACT,QAAQ,EAAE,eAAe;oBACzB,8vBAA0C;;iBAE3C;;;;;wBAGE,KAAK;uBACL,KAAK;2BACL,KAAK;2BACL,KAAK;gCACL,MAAM;kCACN,MAAM;;IAoBT,yBAAC;CAhCD,IAgCC;;;IAzBC,mCAAuB;;IACvB,kCAAsB;;IACtB,sCAAyB;;IACzB,sCAAyB;;IACzB,2CAAsD;;IACtD,6CAAwD;;IAExD,uCAAkB;;;;;;;AChBpB;IAGM,gBAAgB,GAAG,GAAG;;IACtB,gBAAgB,GAAG,IAAI;AAE7B;IAOE;QAAA,iBAgBC;QArBO,kBAAa,GAAoB,IAAI,OAAO,EAAE,CAAC;QAMrD,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC;QAEjC,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC;aACxC,IAAI,CACH,YAAY,CAAC,GAAG,CAAC,EACjB,oBAAoB,EAAE,EACtB,SAAS,CAAC,EAAC,MAAM,EAAE,EAAC,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAC,EAAC,CAAC,EACrF,GAAG;;;;QAAC,UAAA,KAAK;YACP,KAAI,CAAC,aAAa,CAAC,IAAI,oBAAS,KAAK,CAAC,MAAM,GAAC,CAAC;YAC9C,KAAI,CAAC,KAAK,GAAG,oBAAC,KAAK,CAAC,MAAM,IAAY,UAAU,CAAC;YACjD,KAAI,CAAC,MAAM,GAAG,oBAAC,KAAK,CAAC,MAAM,IAAY,WAAW,CAAC;SACpD,EAAC,CACH,CAAC;QACJ,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;KAC3B;IAED,sBAAI,mCAAQ;;;;QAAZ;YACE,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;SAC1C;;;OAAA;;;;IAED,gCAAQ;;;IAAR;QACE,OAAO,IAAI,CAAC,KAAK,IAAI,gBAAgB,CAAC;KACvC;;;;IAED,gCAAQ;;;IAAR;QACE,OAAO,IAAI,CAAC,KAAK,IAAI,gBAAgB,CAAC;KACvC;;;;IAED,iCAAS;;;IAAT;QACE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;KAC7C;;;;IAED,gCAAQ;;;IAAR;QACE,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;;;;IAED,iCAAS;;;IAAT;QACE,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;;;;IAED,8BAAM;;;IAAN;QACE,OAAO,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;KACtE;;;;IAED,iCAAS;;;IAAT;QACE,OAAO,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;KAClE;IACH,oBAAC;CAAA,IAAA;;;;;;IAtDC,sCAAuD;;;;;IACvD,iCAAiB;;;;;IACjB,8BAAsB;;;;;IACtB,+BAAuB;;;;;;;ACXzB;IAwBE,yBAAY,aAA4B;QAAxC,iBAKC;QApBQ,aAAQ,GAAG,IAAI,CAAC;QAChB,WAAM,GAAG,SAAS,CAAC;QACnB,aAAQ,GAAG,KAAK,CAAC;QAKjB,WAAM,GAAG,KAAK,CAAC;QAEf,gBAAW,GAAG,KAAK,CAAC;QACpB,oBAAe,GAAG,CAAC,CAAC;QAE7B,gBAAW,GAAG,KAAK,CAAC;QAIlB,IAAI,CAAC,SAAS,GAAG,aAAa,CAAC,SAAS,EAAE,CAAC;QAC3C,aAAa,CAAC,QAAQ,CAAC,SAAS;;;;QAAC,UAAC,CAAC;YACjC,KAAI,CAAC,SAAS,GAAG,aAAa,CAAC,SAAS,EAAE,CAAC;SAC5C,EAAC,CAAC;KACJ;;;;IAED,yCAAe;;;IAAf;QACE,OAAO,IAAI,CAAC,QAAQ,GAAG,aAAa,GAAG,EAAE,CAAC;KAC3C;;;;IAED,oCAAU;;;IAAV;QACE,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YACpC,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC;SAC7B;KACF;;;;IAED,sCAAY;;;IAAZ;QACE,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YACpC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;SAC3D;KACF;;;;;;;IAEO,kCAAQ;;;;;;IAAhB,UAAiB,GAAW,EAAE,GAAW;QACvC,OAAO,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE;YACrC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;SAC5B;QACD,OAAO,GAAG,CAAC;KACZ;;gBAjDF,SAAS,SAAC;oBACT,QAAQ,EAAE,WAAW;oBACrB,umBAAsC;;iBAEvC;;;;gBANO,aAAa;;;2BAQlB,KAAK;yBACL,KAAK;2BACL,KAAK;uBACL,KAAK;4BACL,KAAK;0BACL,KAAK;4BACL,KAAK;yBACL,KAAK;2BACL,KAAK;8BACL,KAAK;kCACL,KAAK;;IAkCR,sBAAC;CAlDD,IAkDC;;;IA5CC,mCAAyB;;IACzB,iCAA4B;;IAC5B,mCAA0B;;IAC1B,+BAAsB;;IACtB,oCAA2B;;IAC3B,kCAAyB;;IACzB,oCAA2B;;IAC3B,iCAAwB;;IACxB,mCAA0B;;IAC1B,sCAA6B;;IAC7B,0CAA6B;;IAE7B,sCAAoB;;;;;IACpB,oCAA2B;;;;;;;ACtB7B;IAYE;KAAiB;;;;IAEjB,gCAAQ;;;IAAR;KACC;;gBAbF,SAAS,SAAC;oBACT,QAAQ,EAAE,SAAS;oBACnB,oMAAoC;;iBAErC;;;;;uBAGE,KAAK;uBACL,KAAK;;IAOR,oBAAC;CAfD,IAeC;;;IARC,6BAAc;;IACd,6BAAc;;;;;;;ACVhB;IAaE;QAHS,aAAQ,GAAG,CAAC,CAAC;QACtB,eAAU,GAAG,QAAQ,CAAC;KAGrB;;;;IAED,mCAAQ;;;IAAR;QACE,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC,EAAE;YACvB,OAAO,SAAS,CAAC;SAClB;QACD,OAAO,UAAU,IAAI,IAAI,CAAC,QAAQ,GAAG,CAAC,GAAG,cAAc,GAAG,eAAe,CAAC,CAAC;KAC5E;IAED,sBACI,kCAAI;;;;;QADR,UACS,KAAc;YACrB,IAAI,CAAC,UAAU,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;SAC9C;;;OAAA;;;;IAED,mCAAQ;;;IAAR;KACC;;gBA3BF,SAAS,SAAC;oBACT,QAAQ,EAAE,YAAY;oBACtB,gGAAuC;;iBAExC;;;;;uBAGE,KAAK;2BACL,KAAK;uBAaL,KAAK;;IAQR,uBAAC;CA7BD,IA6BC;;;IAtBC,gCAAsB;;IACtB,oCAAsB;;IACtB,sCAAsB;;;;;;;ACXxB;IAGA;KAsDC;IArDe,cAAU,GAAG,SAAS,CAAC;IACvB,iBAAa,GAAG,YAAY,CAAC;IAC7B,kBAAc,GAAG,aAAa,CAAC;IAC/B,cAAU,GAAG,SAAS,CAAC;IACvB,cAAU,GAAG,SAAS,CAAC;IACvB,kBAAc,GAAG,aAAa,CAAC;IAC/B,kBAAc,GAAG,aAAa,CAAC;IAC/B,gBAAY,GAAG,WAAW,CAAC;IAC3B,wBAAoB,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;IAC5C,kBAAc,GAAG,eAAe,CAAC;IACjC,eAAW,GAAG,aAAa,CAAC;IAC5B,6BAAyB,GAAG,0BAA0B,CAAC;IACvD,sBAAkB,GAAG,mBAAmB,CAAC;IACzC,4BAAwB,GAAG,iBAAiB,CAAC;IAC7C,kCAA8B,GAAG,sBAAsB,CAAC;IACxD,iBAAa,GAAG,eAAe,CAAC;IAChC,mBAAe,GAAG,iBAAiB,CAAC;IACpC,wBAAoB,GAAG,sBAAsB,CAAC;IAC9C,oBAAgB,GAAG,iBAAiB,CAAC;IACrC,sBAAkB,GAAG,mBAAmB,CAAC;IACzC,cAAU,GAAG,YAAY,CAAC;IAC1B,kBAAc,GAAG,WAAW,CAAC;IAC7B,mBAAe,GAAG,iBAAiB,CAAC;IACpC,gBAAY,GAAG,cAAc,CAAC;IAC9B,aAAS,GAAG,WAAW,CAAC;IACxB,eAAW,GAAG,aAAa,CAAC;IAC5B,iBAAa,GAAG,UAAU,CAAC;IAC3B,gBAAY,GAAG,UAAU,CAAC;IAC1B,yBAAqB,GAAG,sBAAsB,CAAC;IAC/C,qBAAiB,GAAG,kBAAkB,CAAC;IACvC,mBAAe,GAAG,gBAAgB,CAAC;IACnC,qBAAiB,GAAG,kBAAkB,CAAC;IACvC,aAAS,GAAG,WAAW,CAAC;IACxB,cAAU,GAAG,YAAY,CAAC;IAC1B,cAAU,GAAG,YAAY,CAAC;IAC1B,QAAI,GAAG,OAAO,CAAC;IACf,mBAAe,GAAG,iBAAiB,CAAC;IACpC,wBAAoB,GAAG,qBAAqB,CAAC;IAC7C,YAAQ,GAAG,WAAW,CAAC;IACvB,UAAM,GAAG,SAAS,CAAC;IACnB,sBAAkB,GAAG,kBAAkB,CAAC;IAExC,mBAAe,GAAG;QAC9B,OAAO,EAAE,IAAI,WAAW,CAAC;YACvB,cAAc,EAAE,kBAAkB;SACnC,CAAC;KACH,CAAC;IACY,mCAA+B,GAAG;QAC9C,OAAO,EAAE,IAAI,WAAW,CAAC;YACvB,cAAc,EAAE,kBAAkB;SACnC,CAAC;QACF,YAAY,qBAAE,MAAM,EAAU;KAC/B,CAAC;IACJ,UAAC;CAtDD,IAsDC;;;IArDC,eAAqC;;IACrC,kBAA2C;;IAC3C,mBAA6C;;IAC7C,eAAqC;;IACrC,eAAqC;;IACrC,mBAA6C;;IAC7C,mBAA6C;;IAC7C,iBAAyC;;IACzC,yBAA0D;;IAC1D,mBAA+C;;IAC/C,gBAA0C;;IAC1C,8BAAqE;;IACrE,uBAAuD;;IACvD,6BAA2D;;IAC3D,mCAAsE;;IACtE,kBAA8C;;IAC9C,oBAAkD;;IAClD,yBAA4D;;IAC5D,qBAAmD;;IACnD,uBAAuD;;IACvD,eAAwC;;IACxC,mBAA2C;;IAC3C,oBAAkD;;IAClD,iBAA4C;;IAC5C,cAAsC;;IACtC,gBAA0C;;IAC1C,kBAAyC;;IACzC,iBAAwC;;IACxC,0BAA6D;;IAC7D,sBAAqD;;IACrD,oBAAiD;;IACjD,sBAAqD;;IACrD,cAAsC;;IACtC,eAAwC;;IACxC,eAAwC;;IACxC,SAA6B;;IAC7B,oBAAkD;;IAClD,yBAA2D;;IAC3D,aAAqC;;IACrC,WAAiC;;IACjC,uBAAsD;;IAEtD,oBAIE;;IACF,oCAKE;;AAGJ;IAKE;QACE,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,oBAAoB,CAAC;KAC7C;IAED,sBAAI,sCAAW;;;;QA4Bf;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;SAC1B;;;;;QA9BD,UAAgB,GAAW;YACzB,IAAI,CAAC,YAAY,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;SAC9F;;;OAAA;;;;;IAED,yCAAiB;;;;IAAjB,UAAkB,GAAG;QACnB,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,GAAG,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC;KACvG;;;;IAED,4CAAoB;;;IAApB;QACE,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,UAAU,CAAC;KAC5G;;;;IAED,4CAAoB;;;IAApB;QACE,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,UAAU,CAAC;KACnH;;;;IAED,gDAAwB;;;IAAxB;QACE,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,cAAc,CAAC;KAC3H;;;;IAED,gDAAwB;;;IAAxB;QACE,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,cAAc,CAAC;KAC3H;;;;IAED,8CAAsB;;;IAAtB;QACE,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC;KACvH;;;;IAMD,+CAAuB;;;IAAvB;QACE,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,aAAa,CAAC;KAClH;;;;IAED,gDAAwB;;;IAAxB;QACE,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,cAAc,CAAC;KACpH;;;;IAED,4CAAoB;;;IAApB;QACE,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,UAAU,CAAC;KAC5G;;gBAnDF,UAAU;;;;IAoDX,oBAAC;CApDD,IAoDC;;;;;;IAjDC,qCAA6B;;;;;;;AC9D/B;IAAA;KASC;IARQ,6BAAgB,GAAG,sBAAsB,CAAC;IAC1C,yBAAY,GAAG,kBAAkB,CAAC;IAClC,wBAAW,GAAG,iBAAiB,CAAC;IAChC,2BAAc,GAAG,oBAAoB,CAAC;IACtC,6BAAgB,GAAG,kBAAkB,CAAC;IACtC,8BAAiB,GAAG,wBAAwB,CAAC;IAC7C,+BAAkB,GAAG,yBAAyB,CAAC;IAC/C,+BAAkB,GAAG,wBAAwB,CAAC;IACvD,mBAAC;CATD,IASC;;;IARC,8BAAiD;;IACjD,0BAAyC;;IACzC,yBAAuC;;IACvC,4BAA6C;;IAC7C,8BAA6C;;IAC7C,+BAAoD;;IACpD,gCAAsD;;IACtD,gCAAqD;;AAGvD;IAAA;QACU,WAAM,GAAU,EAAE,CAAC;KAuB5B;;;;;IArBC,0BAAG;;;;IAAH,UAAI,KAAU;QACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACzB;;;;;IAED,6BAAM;;;;IAAN,UAAO,EAAU;QACf,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM;;;;QAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,EAAE,GAAA,EAAC,CAAC;KACpD;;;;;IAED,2BAAI;;;;IAAJ,UAAK,EAAU;;YACP,KAAK,GAAQ,IAAI,CAAC,MAAM,CAAC,MAAM;;;;QAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,EAAE,GAAA,EAAC,CAAC,CAAC,CAAC;QAC1D,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,IAAI,EAAE,CAAC;SACd;KACF;;;;;IAED,4BAAK;;;;IAAL,UAAM,EAAU;;YACR,KAAK,GAAQ,IAAI,CAAC,MAAM,CAAC,MAAM;;;;QAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,EAAE,GAAA,EAAC,CAAC,CAAC,CAAC;QAC1D,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,KAAK,EAAE,CAAC;SACf;KACF;IACH,mBAAC;CAAA,IAAA;;;;;;IAvBC,8BAA2B;;;;;;;ACZ7B;IAgBE,wBAAoB,YAA0B,EAAE,EAAc;QAA1C,iBAAY,GAAZ,YAAY,CAAc;QALpC,YAAO,GAAG,IAAI,YAAY,EAAW,CAAC;QACtC,WAAM,GAAG,IAAI,YAAY,EAAW,CAAC;QAC/C,eAAU,GAAG,KAAK,CAAC;QAIjB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC;KACjC;;;;IAED,iCAAQ;;;IAAR;QACE,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;YACZ,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;YACvC,OAAO;SACR;QAED,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAExC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;KAC7B;;;;IAED,oCAAW;;;IAAX;QACE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;KACvB;;;;IAED,6BAAI;;;IAAJ;QACE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACzB;;;;IAED,8BAAK;;;IAAL;QACE,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC1B;;;;;IAED,gCAAO;;;;IAAP,UAAQ,MAAkB;QACxB,MAAM,CAAC,eAAe,EAAE,CAAC;QACzB,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,IAAI,oBAAU,MAAM,CAAC,MAAM,IAAE,EAAE,KAAK,aAAa,EAAE;YAC5E,IAAI,CAAC,KAAK,EAAE,CAAC;SACd;KACF;;;;IAED,oCAAW;;;IAAX;QACE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,IAAI,CAAC,KAAK,EAAE,CAAC;KACd;;gBAvDF,SAAS,SAAC;oBACT,QAAQ,EAAE,UAAU;oBACpB,wkBAAqC;;iBAEtC;;;;gBANO,YAAY;gBADD,UAAU;;;qBAS1B,KAAK;wBACL,KAAK;0BACL,MAAM;yBACN,MAAM;;IA+CT,qBAAC;CAxDD,IAwDC;;;IAlDC,4BAAoB;;IACpB,+BAAuB;;IACvB,iCAAgD;;IAChD,gCAA+C;;IAC/C,oCAAmB;;;;;IACnB,iCAAqB;;;;;IAET,sCAAkC;;;;;;;;IChBhD;KAOC;IAAD,gBAAC;CAAA,IAAA;;;IANC,yBAAa;;IACb,0BAAc;;IACd,0BAAc;;IACd,2BAAe;;IACf,2BAAe;;IACf,6BAAkB;;AAGpB;IAAA;KAGC;IAAD,kBAAC;CAAA,IAAA;;;IAFC,iCAAmB;;IACnB,4BAAc;;AAGhB;IAIE,yBAAY,IAAY,EAAE,QAAgB;QACxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;KAC1B;IACH,sBAAC;CAAA,IAAA;;;IAPC,+BAAa;;IACb,mCAAiB;;AAQnB;IAA8BA,4BAAe;IAG3C,kBAAY,IAAY,EAAE,QAAgB,EAAE,OAAe;QAA3D,YACE,kBAAM,IAAI,EAAE,QAAQ,CAAC,SAEtB;QADC,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC;;KACxB;IACH,eAAC;CAPD,CAA8B,eAAe,GAO5C;;;IANC,2BAAgB;;AAQlB;IAAA;QAGE,iBAAY,GAAG,IAAI,CAAC;KAGrB;IAAD,sBAAC;CAAA,IAAA;;;IALC,+BAAa;;IACb,gCAAmB;;IACnB,uCAAoB;;IACpB,wCAAuB;;IACvB,qCAAwB;;AAG1B;IAAA;KAMC;IAAD,gBAAC;CAAA,IAAA;;;IALC,yBAAa;;IACb,yBAAa;;IACb,8BAAmB;;IACnB,yBAAa;;IACb,gCAAqB;;AAGvB;IAAA;KAQC;IAPQ,oBAAU,GAAG,GAAG,CAAC;IACjB,sBAAY,GAAG,GAAG,CAAC;IACnB,mBAAS,GAAG,GAAG,CAAC;IAChB,kBAAQ,GAAG,GAAG,CAAC;IACf,iBAAO,GAAG,GAAG,CAAC;IACd,kBAAQ,GAAG,GAAG,CAAC;IACf,6BAAmB,GAAG,GAAG,CAAC;IACnC,gBAAC;CARD,IAQC;;;IAPC,qBAAwB;;IACxB,uBAA0B;;IAC1B,oBAAuB;;IACvB,mBAAsB;;IACtB,kBAAqB;;IACrB,mBAAsB;;IACtB,8BAAiC;;AAGnC;IAAA;KA2DC;;;;;IA1De,sBAAgB;;;;IAA9B,UAA+B,KAAK;;YAC5B,KAAK,GAAG;YACZ,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,CAAC;SACL;;YACK,MAAM,sBAAyB,MAAM,CAAC,KAAK,EAAA;;YAC3C,EAAE,GAAG,KAAK,IAAI,MAAM;QAC1B,IAAI,EAAE,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,OAAO,KAAK,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;;;gBAChG,KAAK,GAAG,OAAO,EAAE,CAAC,KAAK,KAAK,WAAW,IAAI,EAAE,CAAC,KAAK,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK;;gBACnF,KAAK,GAAG,OAAO,EAAE,CAAC,KAAK,KAAK,WAAW,IAAI,EAAE,CAAC,KAAK,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK;;gBACnF,SAAO,GAAG,OAAO,MAAM,CAAC,OAAO,KAAK,WAAW,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC;;gBACvE,SAAO,GAAG,OAAO,MAAM,CAAC,OAAO,KAAK,WAAW,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC;YAC7E,KAAK,CAAC,CAAC,GAAG,KAAK,GAAG,KAAK,IAAI,SAAO,GAAG,MAAM,CAAC,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YAC3E,KAAK,CAAC,CAAC,GAAG,KAAK,GAAG,KAAK,IAAI,SAAO,GAAG,MAAM,CAAC,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;SAC5E;aAAM,IAAI,EAAE,CAAC,OAAO,EAAE;YACrB,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;YAChD,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;SAChD;QACD,OAAO,KAAK,CAAC;KACd;;;;;IAEa,WAAK;;;;IAAnB,UAAoB,KAAa;;YACzB,MAAM,GAAG,2CAA2C,CAAC,IAAI,CAAC,KAAK,CAAC;QACtE,IAAI,MAAM,EAAE;;gBACJ,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;;gBAC3B,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;;gBAC3B,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YACjC,OAAO,MAAM,GAAG,MAAM,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC;SAC3D;QACD,OAAO,KAAK,CAAC;KACd;;;;;IAEa,WAAK;;;;IAAnB,UAAoB,KAAa;;QAE/B,IAAI,KAAK,CAAC,KAAK,CAAC,2BAA2B,CAAC,EAAE;YAC5C,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,KAAK,IAAI,GAAG,GAAG,KAAK,CAAC,CAAC;;SAE1D;aAAM,IAAI,KAAK,CAAC,KAAK,CAAC,0DAA0D,CAAC,EAAE;;gBAC5E,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;;gBACrF,GAAG;;;;YAAG,UAAU,GAAG;gBACjB,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;oBAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;wBAClD,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;qBACjB;iBACF;gBACD,OAAO,GAAG,CAAC;aACZ,CAAA;YACH,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;;oBACZ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;;oBAC9B,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;;oBAC1B,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;gBAC5B,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;aACxB;;SAEF;aAAM;YACL,OAAO,EAAE,CAAC;SACX;KACF;IACH,YAAC;CAAA,IAAA;;IAED;KA2FC;;;;;;IAbe,aAAI;;;;;IAAlB,UAAmB,QAAgB,EAAE,WAAoB;QACvD,IAAI,QAAQ,IAAI,CAAC,WAAW,EAAE;;gBACtB,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC;;gBAC7B,MAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;YACxC,IAAI,OAAO,QAAQ,CAAC,GAAG,CAAC,MAAI,CAAC,KAAK,WAAW,EAAE;gBAC7C,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;aAC9E;iBAAM;gBACL,OAAO,QAAQ,CAAC,GAAG,CAAC,MAAI,CAAC,CAAC;aAC3B;SACF;aAAM;YACL,OAAO,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;SAC/B;KACF;IAzFa,YAAG,GAAG;QAClB,QAAQ,EAAE,EAAC,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAC;QAC1C,KAAK,EAAE,EAAC,QAAQ,EAAE,0BAA0B,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAC;QAC/E,KAAK,EAAE,EAAC,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACtE,MAAM,EAAE,EAAC,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACvE,MAAM,EAAE,EAAC,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACvE,KAAK,EAAE,EAAC,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACtE,MAAM,EAAE,EAAC,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACvE,MAAM,EAAE,EAAC,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACvE,KAAK,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QACxE,MAAM,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QACzE,MAAM,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QACzE,MAAM,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QACzE,SAAS,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QAC5E,MAAM,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QACzE,MAAM,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QACzE,KAAK,EAAE,EAAC,QAAQ,EAAE,sBAAsB,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAC;QAClF,MAAM,EAAE,EAAC,QAAQ,EAAE,sBAAsB,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAC;QACnF,KAAK,EAAE,EAAC,QAAQ,EAAE,sBAAsB,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAC;QAClF,MAAM,EAAE,EAAC,QAAQ,EAAE,sBAAsB,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAC;QACnF,KAAK,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACvE,KAAK,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACvE,KAAK,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACvE,KAAK,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACvE,KAAK,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACvE,KAAK,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACvE,MAAM,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACxE,KAAK,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACvE,MAAM,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACxE,MAAM,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACxE,KAAK,EAAE,EAAC,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAC;QACxE,KAAK,EAAE,EAAC,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAC;QACxE,KAAK,EAAE,EAAC,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAC;QACxE,KAAK,EAAE,EAAC,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAC;QACxE,MAAM,EAAE,EAAC,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAC;QACzE,KAAK,EAAE,EAAC,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACzE,KAAK,EAAE,EAAC,QAAQ,EAAE,oBAAoB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QAC1E,KAAK,EAAE,EAAC,QAAQ,EAAE,6BAA6B,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACnF,KAAK,EAAE,EAAC,QAAQ,EAAE,2BAA2B,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QAClF,KAAK,EAAE,EAAC,QAAQ,EAAE,4BAA4B,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAC;QACxF,KAAK,EAAE,EAAC,QAAQ,EAAE,4BAA4B,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAC;QACxF,KAAK,EAAE,EAAC,QAAQ,EAAE,4BAA4B,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAC;QACxF,MAAM,EAAE,EAAC,QAAQ,EAAE,4BAA4B,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAC;QACzF,MAAM,EAAE,EAAC,QAAQ,EAAE,4BAA4B,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAC;QACzF,MAAM,EAAE,EAAC,QAAQ,EAAE,4BAA4B,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAC;QACzF,MAAM,EAAE,EAAC,QAAQ,EAAE,4BAA4B,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAC;QACzF,KAAK,EAAE,EAAC,QAAQ,EAAE,kBAAkB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAC;QACvE,KAAK,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAC;QACtE,KAAK,EAAE,EAAC,QAAQ,EAAE,wBAAwB,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QAC/E,MAAM,EAAE,EAAC,QAAQ,EAAE,2BAA2B,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QAClF,KAAK,EAAE,EAAC,QAAQ,EAAE,2BAA2B,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACjF,OAAO,EAAE,EAAC,QAAQ,EAAE,2BAA2B,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QACnF,KAAK,EAAE,EAAC,QAAQ,EAAE,4BAA4B,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QAClF,KAAK,EAAE,EAAC,QAAQ,EAAE,yBAAyB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC;QAC/E,KAAK,EAAE,EAAC,QAAQ,EAAE,6BAA6B,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QACpF,KAAK,EAAE,EAAC,QAAQ,EAAE,6BAA6B,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QACpF,KAAK,EAAE,EAAC,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QACvE,KAAK,EAAE,EAAC,QAAQ,EAAE,6BAA6B,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QACpF,KAAK,EAAE,EAAC,QAAQ,EAAE,kCAAkC,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QACzF,KAAK,EAAE,EAAC,QAAQ,EAAE,kCAAkC,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QACzF,MAAM,EAAE,EAAC,QAAQ,EAAE,kCAAkC,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QAC1F,MAAM,EAAE,EAAC,QAAQ,EAAE,kCAAkC,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QAC1F,KAAK,EAAE,EAAC,QAAQ,EAAE,2BAA2B,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QAClF,MAAM,EAAE,EAAC,QAAQ,EAAE,0BAA0B,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QAClF,KAAK,EAAE,EAAC,QAAQ,EAAE,0BAA0B,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QACjF,KAAK,EAAE,EAAC,QAAQ,EAAE,0BAA0B,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QACjF,KAAK,EAAE,EAAC,QAAQ,EAAE,0BAA0B,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QACjF,KAAK,EAAE,EAAC,QAAQ,EAAE,0BAA0B,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QACjF,MAAM,EAAE,EAAC,QAAQ,EAAE,wBAAwB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAC;QAC9E,KAAK,EAAE,EAAC,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QACrE,MAAM,EAAE,EAAC,QAAQ,EAAE,kBAAkB,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;QAC1E,MAAM,EAAE,EAAC,QAAQ,EAAE,kBAAkB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAC;QACxE,KAAK,EAAE,EAAC,QAAQ,EAAE,uBAAuB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAC;QAC5E,MAAM,EAAE,EAAC,QAAQ,EAAE,0BAA0B,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAC;QAChF,SAAS,EAAE,EAAC,QAAQ,EAAE,8BAA8B,EAAE,MAAM,EAAE,MAAM,EAAC;KACtE,CAAC;IAeJ,eAAC;CA3FD,IA2FC;;;IA1FC,aA2EE;;AAiBJ;IAEE;KACC;IACH,kBAAC;CAAA;;;;;;ACzND;IAME;QAAA,iBAGC;QAFC,IAAI,CAAC,cAAc,GAAG,IAAI,UAAU;;;;QAAC,UAAA,QAAQ;YAC3C,OAAA,KAAI,CAAC,SAAS,GAAG,QAAQ;SAAA,EAAC,CAAC;KAC9B;IAED,sBAAI,6CAAa;;;;QAAjB;YACE,OAAO,IAAI,CAAC,cAAc,CAAC;SAC5B;;;OAAA;;;;;IAED,4CAAe;;;;IAAf,UAAgB,SAAmB;QACjC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KAChC;IACH,yBAAC;CAAA,IAAA;;;;;;IAfC,4CAA6C;;;;;IAC7C,uCAAsC;;;;;;;ACJxC;IAIM,CAAC,GAAG,MAAM;;IAEV,WAAW,GAAG,MAAM;;IAEpB,UAAU,GAAG,KAAK;;IAElB,eAAe,GAAG,CAAC,EAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAC,EAAE,EAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAC,CAAC;AAE5F;IAkBE,mCAAoB,cAAkC;QAAlC,mBAAc,GAAd,cAAc,CAAoB;QAZtD,YAAO,GAAG,eAAe,CAAC;QAIhB,qBAAgB,GAAG,IAAI,YAAY,EAAU,CAAC;QAC9C,sBAAiB,GAAG,IAAI,YAAY,EAAU,CAAC;QAC/C,iBAAY,GAAG,IAAI,YAAY,EAAU,CAAC;QAC1C,YAAO,GAAG,IAAI,YAAY,EAAW,CAAC;QAEhD,kBAAa,GAAG,KAAK,CAAC;QACtB,mBAAc,GAAG,KAAK,CAAC;KAGtB;;;;IAED,4CAAQ;;;IAAR;KACC;;;;;IAED,2CAAO;;;;IAAP,UAAQ,IAAY;;YACZ,EAAE,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;QAC7B,IAAI,EAAE,GAAG,CAAC,EAAE;YACV,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,GAAG,CAAC,GAAG,GAAG,IAAI,KAAK,CAAC;SAC7C;aAAM;;gBACC,EAAE,GAAG,IAAI,GAAG,IAAI;YACtB,IAAI,EAAE,GAAG,CAAC,EAAE;gBACV,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,GAAG,CAAC,GAAG,GAAG,IAAI,KAAK,CAAC;aAC7C;SACF;QACD,OAAO,IAAI,GAAG,QAAQ,CAAC;KACxB;;;;;IAED,iDAAa;;;;IAAb,UAAc,IAAe;QAC3B,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;KACxD;;;;;IAED,iDAAa;;;;IAAb,UAAc,IAAe;QAC3B,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC;KACtD;;;;;IAED,0CAAM;;;;IAAN,UAAO,IAAe;QACpB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,WAAW,EAAE;YACtC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACxC;aAAM;YACL,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACvC;KACF;;;;IAED,wCAAI;;;IAAJ;QACE,IAAI,IAAI,CAAC,YAAY,EAAE;;gBACjB,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI;YACjC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE;gBAC/C,IAAI,GAAG,EAAE,CAAC;aACX;iBAAM;gBACL,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;aACzC;YACD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACnC;KACF;;;;;IAED,gDAAY;;;;IAAZ,UAAa,MAAc;QACzB,IAAI,UAAU,KAAK,MAAM,EAAE;YACzB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;SAC3B;aAAM;YACL,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;YAC3B,CAAC,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;SACxC;KACF;;;;;IAED,2CAAO;;;;IAAP,UAAQ,MAAM;QAEZ,IAAI,MAAM,EAAE;YACV,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;YAClB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAChC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;YAC3B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;SAC1B;aAAM;YACL,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACzB;KACF;;;;IAED,+CAAW;;;IAAX;QACE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;KACpB;;;;;IAED,6CAAS;;;;IAAT,UAAU,GAAW;QACnB,IAAI,GAAG,EAAE;YACP,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC5B,IAAI,CAAC,WAAW,EAAE,CAAC;SACpB;KACF;;;;;IAED,mDAAe;;;;IAAf,UAAgB,KAAe;QAC7B,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;KAC5C;;;;IAED,+CAAW;;;IAAX;QACE,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;KAC5B;;gBAzGF,SAAS,SAAC;oBACT,QAAQ,EAAE,uBAAuB;oBACjC,0kGAAkD;;iBAEnD;;;;gBAdO,kBAAkB;;;wBAkBvB,KAAK;+BACL,KAAK;mCACL,MAAM;oCACN,MAAM;+BACN,MAAM;0BACN,MAAM;;IA6FT,gCAAC;CA1GD,IA0GC;;;IApGC,4CAA0B;;IAE1B,0CAAe;;IACf,iDAAsB;;IACtB,qDAAwD;;IACxD,sDAAyD;;IACzD,iDAAoD;;IACpD,4CAAgD;;;;;IAChD,iDAAgC;;IAChC,kDAAsB;;IACtB,mDAAuB;;;;;IAEX,mDAA0C;;;;;;;AC9BxD;IAOE;QAJQ,cAAS,GAAoB,IAAI,OAAO,EAAE,CAAC;QAClC,gBAAW,GAAuB,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;KAIhF;IAED,sBAAI,6BAAI;;;;QAAR;YACE,OAAO,IAAI,CAAC,KAAK,CAAC;SACnB;;;OAAA;IAED,sBAAI,mCAAU;;;;QAAd;YACE,OAAO,IAAI,CAAC,WAAW,CAAC;SACzB;;;OAAA;;;;;IAED,gCAAU;;;;IAAV,UAAW,IAAY;QACrB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC3B;;;;;;;;IAEO,sCAAgB;;;;;;;IAAxB,UAAyB,GAAQ,EAAE,IAAY,EAAE,GAAoB;QAApB,oBAAA,EAAA,WAAoB;QACnE,OAAO,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAC,CAAA;KAChD;;;;;;IAED,iCAAW;;;;;IAAX,UAAY,KAAK,EAAE,MAAM;QACvB,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,KAAK,CAAC;YACtC,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,KAAK,CAAC;YAChC,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAC,MAAM,CAAC;YACjC,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC;YAClC,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC;YAClC,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC;YAClC,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC;YAClC,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,WAAW,CAAC;YACzC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;KAChD;IACH,kBAAC;CAAA,IAAA;;;;;;IAnCC,gCAAmD;;;;;IACnD,kCAAiF;;;;;IACjF,4BAAsB;;;;;;;ACLxB;IAME;QAAA,iBAGC;QAFC,IAAI,CAAC,aAAa,GAAG,IAAI,UAAU;;;;QAAC,UAAA,QAAQ;YAC1C,OAAA,KAAI,CAAC,SAAS,GAAG,QAAQ;SAAA,EAAC,CAAC;KAC9B;IAED,sBAAI,4CAAY;;;;QAAhB;YACE,OAAO,IAAI,CAAC,aAAa,CAAC;SAC3B;;;OAAA;;;;;IAED,iDAAoB;;;;IAApB,UAAqB,IAAY;QAC/B,IAAG,IAAI,CAAC,SAAS,EAAE;YACjB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC3B;KACF;IACH,yBAAC;CAAA,IAAA;;;;;;IAjBC,2CAAmD;;;;;IACnD,uCAAoC;;;;;;;ACJtC;IAaE,yBAAoB,mBAAuC;QAAvC,wBAAmB,GAAnB,mBAAmB,CAAoB;QALnD,iBAAY,GAAG,CAAC,CAAC;QACjB,gBAAW,GAAG,CAAC,CAAC;QAChB,cAAS,GAA4B,IAAI,eAAe,CAAS,IAAI,CAAC,CAAC;QACvE,cAAS,GAAuB,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;KAGrE;IAED,sBAAI,qCAAQ;;;;QAAZ;YACE,OAAO,IAAI,CAAC,SAAS,CAAC;SACvB;;;OAAA;IAED,sBAAI,uCAAU;;;;QAAd;YACE,OAAO,IAAI,CAAC,WAAW,CAAC;SACzB;;;;;QAED,UAAe,KAAa;YAC1B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;SAC1B;;;OAJA;IAMD,sBAAI,wCAAW;;;;QAAf;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;SAC1B;;;;;QAED,UAAgB,KAAa;YAC3B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;SAC3B;;;OAJA;;;;IAMD,kCAAQ;;;IAAR;QACE,IAAI,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE;YACxC,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;SACpC;KACF;;;;IAED,kCAAQ;;;IAAR;QACE,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,EAAE;YACzB,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;SACpC;KACF;;;;IAED,oCAAU;;;IAAV;QACE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC;QACrC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KACpC;;;;IAED,qCAAW;;;IAAX;QACE,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KACpC;;;;;IAED,oCAAU;;;;IAAV,UAAW,IAAY;QACrB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC3B;;gBA5DF,UAAU,SAAC;oBACV,UAAU,EAAE,MAAM;iBACnB;;;;gBALO,kBAAkB;;;0BAD1B;CAIA,IA6DC;;;;;;IAzDC,uCAAyB;;;;;IACzB,sCAAwB;;;;;IACxB,oCAA+E;;;;;IAC/E,oCAAsE;;;;;IAE1D,8CAA+C;;;;;;;ACb7D;IAkBMC,GAAC,GAAG,MAAM;AAEhB;IAgCE,2BAAsB,WAAoC,EACtC,YAAyB,EACzB,cAA6B,EAC7B,gBAAiC;QAHrD,iBAcC;QAdqB,gBAAW,GAAX,WAAW,CAAyB;QACtC,iBAAY,GAAZ,YAAY,CAAa;QACzB,mBAAc,GAAd,cAAc,CAAe;QAC7B,qBAAgB,GAAhB,gBAAgB,CAAiB;QAxBrD,SAAI,GAAG,KAAK,CAAC;QAGb,aAAQ,GAAG,IAAI,CAAC;QAChB,cAAS,GAAG,IAAI,CAAC;QACjB,kBAAa,GAAG,IAAI,CAAC;QACrB,mBAAc,GAAG,IAAI,CAAC;QACtB,UAAK,GAAG,IAAI,CAAC;QACb,cAAS,GAAG,IAAI,CAAC;QACjB,cAAS,GAAG,IAAI,CAAC;QACjB,QAAG,GAAG,IAAI,CAAC;QACX,MAAC,GAAG,CAAC,CAAC;QACN,UAAK,GAAG,CAAC,CAAC;QACV,MAAC,GAAG,CAAC,CAAC;QACN,UAAK,GAAG,CAAC,CAAC;QACV,gBAAW,GAAG,IAAI,CAAC;QACnB,sBAAiB,GAAG,IAAI,CAAC;QACzB,aAAQ,GAAG,CAAC,CAAC;QACb,cAAS,GAAG,CAAC,CAAC;QAOZ,YAAY,CAAC,UAAU,CAAC,SAAS;;;;QAAC,UAAC,GAAW;YAC5C,KAAI,CAAC,IAAI,GAAG,GAAG,CAAC;SACjB,EAAC,CAAC;QAEH,IAAI,CAAC,SAAS,GAAG,cAAc,CAAC,SAAS,EAAE,CAAC;QAE5C,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,SAAS;;;;QACtC,UAAA,KAAK;YACH,KAAI,CAAC,YAAY,GAAG,KAAK,CAAC;SAC3B,IAAG,CAAC;KACR;;;;IAED,oCAAQ;;;IAAR;QACE,IAAI,IAAI,CAAC,cAAc,EAAE,EACzB;YACE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC;SACvD;KACF;;;;IAED,uCAAW;;;IAAX;KACC;;;;IAED,2CAAe;;;IAAf;;QAEE,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;;QAE5E,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC;QAEhD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;QACrC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC;QACvC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;;QAG1C,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,GAAG,GAAG,CAAC;QAEjF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;QAClD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;QAC3C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;;YAEvC,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;KAC1C;;;;;;IAGD,mCAAO;;;;;IAAP;QACE,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,MAAM,KAAK,iBAAiB,CAAC;KAC1E;;;;IAED,0CAAc;;;IAAd;QACE,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,MAAM,KAAK,sBAAsB,CAAC;KAC/E;;;;;;IAED,gDAAoB;;;;;IAApB,UAAqB,KAAa,EAAE,UAAkB;QACpD,OAAO,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,KAAK,IAAI,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;KAC1I;;;;IAED,kCAAM;;;IAAN;QACE,OAAO,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;KAC/D;;;;IAED,8CAAkB;;;IAAlB;;YACQ,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,gBAAgB,CAAC,aAAa,CAAC;;YAClF,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;QACzC,IAAI,OAAO,EAAE;YACXA,GAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;SAC7B;KACF;;;;;IAED,qCAAS;;;;IAAT,UAAU,UAAU;QAClB,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE;YACzB,OAAO,UAAU,KAAK,IAAI,CAAC,YAAY,GAAG,IAAI,GAAG,KAAK,CAAC;SACxD;aACI;YACH,OAAO,IAAI,CAAC;SACb;KACF;;gBA/GF,SAAS,SAAC;oBACT,QAAQ,EAAE,aAAa;oBACvB,o8BAAwC;;iBAEzC;;;;gBArBC,UAAU;gBASJ,WAAW;gBAEX,aAAa;gBAEZ,eAAe;;;uBAWrB,KAAK;mCACL,KAAK;uBACL,KAAK;+BACL,KAAK;;IAsGR,wBAAC;CAhHD,IAgHC;;;IAzGC,iCAAuB;;IACvB,6CAAkC;;IAClC,iCAA+B;;IAC/B,yCAA8B;;IAC9B,iCAAa;;IACb,iCAAa;;IAEb,qCAAgB;;IAChB,sCAAiB;;IACjB,0CAAqB;;IACrB,2CAAsB;;IACtB,kCAAa;;IACb,sCAAiB;;IACjB,sCAAiB;;IACjB,gCAAW;;IACX,8BAAM;;IACN,kCAAU;;IACV,8BAAM;;IACN,kCAAU;;IACV,wCAAmB;;IACnB,8CAAyB;;IACzB,qCAAa;;IACb,sCAAc;;IACd,sCAAmB;;;;;IAEP,wCAA8C;;;;;IAC9C,yCAAiC;;;;;IACjC,2CAAqC;;;;;IACrC,6CAAyC;;;;;;;ACvDvD;IAkBE;KACC;;;;IAED,gCAAQ;;;IAAR;;YACQ,IAAI,gBAAe,KAAK,IAAI,CAAC,CAAC,0BAA0B,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;QACxF,IAAG,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAC;YAC3B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;SACvB;KACF;;;;;IAED,mCAAW;;;;IAAX,UAAY,OAAsB;;;QAGhC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,KAAK,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAC,IAAI,CAAC;aACtB,OAAO,CAAC,SAAS,EAAC,EAAE,CAAC;aACrB,OAAO,CAAC,iBAAiB,EAAE,oCAAoC,CAAC;aAChE,OAAO,CAAC,gBAAgB,EAAE,mCAAmC,CAAC;aAC9D,OAAO,CAAC,iBAAiB,EAAE,oCAAoC,CAAC;cAC1E,IAAI,CAAC;;YAChC,kBAAkB,GAAG,wBAAwB;QACnD,IAAI,CAAC,OAAO,GAAG,kBAAkB,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC;SAC3B;KACF;;gBAxCF,SAAS,SAAC;oBACT,QAAQ,EAAE,SAAS;oBACnB,imBAAoC;;iBAErC;;;;;wBAGE,KAAK;wBACL,KAAK;yBACL,KAAK;yBACL,KAAK;uBACL,KAAK;yBACL,KAAK;2BACL,KAAK;;IA4BR,oBAAC;CAzCD,IAyCC;;;IAlCC,8BAAuB;;IACvB,8BAAuB;;IACvB,+BAAwB;;IACxB,+BAAwB;;IACxB,6BAAsB;;IACtB,+BAAyB;;IACzB,iCAA2B;;IAC3B,gCAAgB;;;;;;;AChBlB;IAKE,0BAAoB,SAAuB;QAAvB,cAAS,GAAT,SAAS,CAAc;KAC1C;;;;;IAED,oCAAS;;;;IAAT,UAAU,IAAY;QACpB,OAAO,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;KACrD;;gBAPF,IAAI,SAAC,EAAC,IAAI,EAAE,UAAU,EAAC;;;;gBAFhB,YAAY;;IAUpB,uBAAC;CARD,IAQC;;;;;;IANa,qCAA+B;;AAQ7C;IAEE,kCAAoB,SAAuB;QAAvB,cAAS,GAAT,SAAS,CAAc;KAC1C;;;;;IAED,4CAAS;;;;IAAT,UAAU,IAAY;QACpB,OAAO,IAAI,CAAC,SAAS,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC;KAC5D;;gBAPF,IAAI,SAAC,EAAC,IAAI,EAAE,kBAAkB,EAAC;;;;gBAZxB,YAAY;;IAoBpB,+BAAC;CARD,IAQC;;;;;;IANa,6CAA+B;;AAQ7C;IAEE,2BAAoB,SAAuB;QAAvB,cAAS,GAAT,SAAS,CAAc;KAC1C;;;;;IAED,qCAAS;;;;IAAT,UAAU,IAAY;QACpB,OAAO,IAAI,CAAC,SAAS,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;KACtD;;gBAPF,IAAI,SAAC,EAAC,IAAI,EAAE,WAAW,EAAC;;;;gBAtBjB,YAAY;;IA8BpB,wBAAC;CARD,IAQC;;;;;;IANa,sCAA+B;;AAQ7C;IAAA;KAUC;;;;;;IAPC,uCAAS;;;;;IAAT,UAAU,KAAa,EAAE,IAAY;QACnC,IAAI,CAAC,IAAI,EAAE;YACT,OAAO,KAAK,CAAC;SACd;;YACK,EAAE,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC;QACjC,OAAO,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,sCAAsC,CAAC,CAAC;KAClE;;gBATF,IAAI,SAAC,EAAC,IAAI,EAAE,WAAW,EAAC;;IAUzB,0BAAC;CAVD;;;;;;ACjCA;IAYE,iCAAoB,cAAkC;QAAlC,mBAAc,GAAd,cAAc,CAAoB;QAF5C,gBAAW,GAAG,IAAI,YAAY,EAAW,CAAC;KAEO;;;;IAE3D,0CAAQ;;;IAAR;KACC;;;;;IAED,iDAAe;;;;IAAf,UAAgB,KAAe;QAC7B,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,CAAC,aAAa,EAAE,CAAC;KACtB;;;;IAED,+CAAa;;;IAAb;QACE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC7B;;;;;IAED,uCAAK;;;;IAAL,UAAM,MAAM;QACV,IAAI,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,aAAa,EAAE;YACtC,IAAI,CAAC,aAAa,EAAE,CAAC;SACtB;KACF;;gBA3BF,SAAS,SAAC;oBACT,QAAQ,EAAE,qBAAqB;oBAC/B,+nBAAgD;;iBAEjD;;;;gBANO,kBAAkB;;;8BASvB,MAAM;;IAqBT,8BAAC;CA5BD,IA4BC;;;IArBC,8CAAoD;;;;;IAExC,iDAA0C;;;;;;;ACZxD;IAgBE,sBAAsB,mBAAuC;QAAvC,wBAAmB,GAAnB,mBAAmB,CAAoB;QARnD,YAAO,GAAG,IAAI,YAAY,EAAW,CAAC;QACtC,YAAO,GAAG,IAAI,YAAY,EAAW,CAAC;QACtC,YAAO,GAAG,IAAI,YAAY,EAAW,CAAC;QAEnB,WAAM,GAAG,KAAK,CAAC;QAEpC,gBAAW,GAAG,CAAC,CAAC;KAGvB;;;;;IAGM,kCAAW;;;;IADlB,UACmB,GAAG;QACpB,GAAG,CAAC,cAAc,EAAE,CAAC;QACrB,GAAG,CAAC,eAAe,EAAE,CAAC;QACtB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACzB;;;;;IAGM,iCAAU;;;;IADjB,UACkB,GAAG;QACnB,GAAG,CAAC,cAAc,EAAE,CAAC;QACrB,GAAG,CAAC,eAAe,EAAE,CAAC;QACtB,OAAO,KAAK,CAAC;KACd;;;;;IAGM,kCAAW;;;;IADlB,UACmB,GAAG;QACpB,GAAG,CAAC,cAAc,EAAE,CAAC;QACrB,GAAG,CAAC,eAAe,EAAE,CAAC;QACtB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC,EAAE;YAC1B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACpB,IAAI,CAAC,SAAS,EAAE,CAAC;SAClB;KACF;;;;;IAGM,6BAAM;;;;IADb,UACc,GAAG;QACf,GAAG,CAAC,cAAc,EAAE,CAAC;QACrB,GAAG,CAAC,eAAe,EAAE,CAAC;;YAChB,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC,KAAK;QACpC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACpB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACpB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxB,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YAChD,IAAI,CAAC,SAAS,EAAE,CAAC;SAClB;KACF;;;;;IAGM,8BAAO;;;;IADd,UACe,KAAK;QAClB,IAAI,CAAC,SAAS,EAAE,CAAC;KAClB;;;;;IAEO,gCAAS;;;;IAAjB;QACE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC1B;;gBAhEF,SAAS,SAAC;oBACT,QAAQ,EAAE,SAAS;iBACpB;;;;gBAJO,kBAAkB;;;0BAOvB,MAAM;0BACN,MAAM;0BACN,MAAM;yBAEN,WAAW,SAAC,cAAc;8BAO1B,YAAY,SAAC,WAAW,EAAE,CAAC,QAAQ,CAAC;6BASpC,YAAY,SAAC,UAAU,EAAE,CAAC,QAAQ,CAAC;8BAOnC,YAAY,SAAC,WAAW,EAAE,CAAC,QAAQ,CAAC;yBAWpC,YAAY,SAAC,MAAM,EAAE,CAAC,QAAQ,CAAC;0BAa/B,YAAY,SAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;;IASnC,mBAAC;CAjED,IAiEC;;;IA5DC,+BAAgD;;IAChD,+BAAgD;;IAChD,+BAAgD;;IAEhD,8BAA4C;;;;;IAE5C,mCAAwB;;;;;IAEZ,2CAAiD;;;;;;;AChB/D;IAEMA,GAAC,GAAG,MAAM;AAEhB;IAKE;KACC;;;;;;;;IAED,yCAAe;;;;;;;IAAf,UAAgB,EAAE,EAAE,IAAkB,EAAE,UAAsB,EAAE,MAAoB;QAAhE,qBAAA,EAAA,UAAkB;QAAE,2BAAA,EAAA,cAAsB;QAAE,uBAAA,EAAA,YAAoB;QAClF,IAAI,CAAC,EAAE,EAAE;YACP,OAAO,KAAK,CAAC;SACd;;YACK,CAAC,GAAG,MAAM;;YACV,CAAC,GAAG,GAAG;;YAEP,GAAG,GAAGA,GAAC,CAAC,MAAM,CAAC;;YAEf,QAAQ,GAAG;YACf,GAAG,EAAE,GAAG,CAAC,SAAS,EAAE;YACpB,IAAI,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,UAAU;YACnC,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE;YAC1C,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE;SACvC;QAGD,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE;YACf,IAAI,GAAG,GAAG,CAAC;SACZ;;YAEK,KAAK,GAAG,IAAI,GAAG,GAAG;;YAClB,MAAM,GAAGA,GAAC,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,IAAI,KAAK,CAAC;;YACtC,KAAK,GAAGA,GAAC,CAAC,EAAE,CAAC,CAAC,UAAU,EAAE,IAAI,KAAK,CAAC;QAE1C,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE;YACrB,OAAO,KAAK,CAAC;SACd;;YAEK,MAAM,GAAGA,GAAC,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE;;YACvB,KAAK,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK;;YACvC,MAAM,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,KAAK,CAAC,IAAI,MAAM;;YAExC,OAAO,IAAI,EAAE,QAAQ,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC,IAAI,QAAQ,CAAC,IAAI,GAAG,KAAK,IAAI,QAAQ,CAAC,MAAM,IAAI,MAAM,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC,IAAI,QAAQ,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC;QAE3J,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,KAAK,CAAC;SACd;;YAEK,MAAM,GAAG;YACb,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,IAAI,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACzE,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,IAAI,MAAM,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC/F,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACzE,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;SAC9F;QAED,OAAO,CAAC,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC;KAC/E;;gBAvDF,UAAU,SAAC;oBACV,UAAU,EAAE,MAAM;iBACnB;;;;;0BAND;CAIA;;;;;;ACJA;IAgBMA,GAAC,GAAG,MAAM;AAEhB;IASE,6BAAoB,WAAoC,EACpC,gBAAiC,EACjC,mBAAuC,EACvC,YAAyB,EACzB,cAA6B,EAC7B,gBAAiC;QALrD,iBAYC;QAZmB,gBAAW,GAAX,WAAW,CAAyB;QACpC,qBAAgB,GAAhB,gBAAgB,CAAiB;QACjC,wBAAmB,GAAnB,mBAAmB,CAAoB;QACvC,iBAAY,GAAZ,YAAY,CAAa;QACzB,mBAAc,GAAd,cAAc,CAAe;QAC7B,qBAAgB,GAAhB,gBAAgB,CAAiB;QAR7C,SAAI,GAAG,GAAG,CAAC;QACX,mBAAc,GAAG,IAAI,GAAG,EAAE,CAAC;QASjC,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QAC9D,YAAY,CAAC,UAAU,CAAC,SAAS;;;;QAAC,UAAC,GAAW;YAC5C,KAAI,CAAC,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,KAAI,CAAC,IAAI,CAAC;YAClC,KAAI,CAAC,OAAO,EAAE,CAAC;SAChB,EAAC,CAAC;KACJ;;;;IAED,6CAAe;;;IAAf;QAAA,iBAOC;QANC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACxE,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,SAAS;;;;QAAE,UAAA,KAAK;YAC7C,KAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YACzB,KAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;SAC1B,GAAE,CAAC;QACJ,IAAI,CAAC,OAAO,EAAE,CAAC;KAChB;;;;IAEuB,uCAAS;;;IAAjC;QACE,IAAI,CAAC,OAAO,EAAE,CAAC;KAChB;;;;IAE8B,sCAAQ;;;IAAvC;QACE,IAAI,CAAC,OAAO,EAAE,CAAC;KAChB;;;;;IAED,0CAAY;;;;IAAZ,UAAa,UAAkB;;YACvB,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa;;YACnC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;;YAC/B,IAAI,GAAG,UAAU,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,IAAI;;YAC3D,SAAS,IAAI,IAAI,IAAIA,GAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,KAAKA,GAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC;QACzE,IAAI,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,SAAS,EAAE;YACvE,OAAO;SACR;;YACK,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC;;YAC9C,OAAO,GAAG;YACd,IAAI,EAAE,CAAC;YACP,GAAG,EAAE,WAAW;SACjB;QACD,IAAG,EAAE,EAAC;;YAEJ,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;SACpB;KACF;;;;;IAEO,yCAAW;;;;IAAnB;;YACQ,EAAE,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,GAAG,IAAI;QACnE,IAAI,EAAE,EAAE;;YAEN,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;SACtD;KACF;;;;;;IAEO,qCAAO;;;;;IAAf,UAAgB,UAAkB;;YAC1B,EAAE,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,GAAG,IAAI;QACnE,IAAI,EAAE,EAAE;YACN,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;SAC3E;KACF;;;;;;IAEO,6CAAe;;;;;IAAvB,UAAwB,UAAkB;;YAClC,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,iBAAiB,EAAE;;YACtE,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE;;YACpD,WAAW,GAAG,CAAC;QACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;;gBACrC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;;gBACtB,YAAY,GAAG,IAAI,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC;YACjD,WAAW,IAAI,YAAY,GAAG,CAAC,GAAG,YAAY,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,GAAG,CAAC,CAAC;SAC9E;QACD,OAAO,WAAW,CAAC;KACpB;;;;;IAEO,+CAAiB;;;;IAAzB;;YACQ,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;;YACxB,MAAM,GAAG,GAAG;;YACZ,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,MAAM,KAAK,MAAM,CAAC,qBAAqB,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAC9G,OAAO,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;KAChC;;;;IAED,qCAAO;;;IAAP;;YACM,IAAI;;YACJ,cAAc,GAAG,KAAK;;YACpB,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;;YACzC,eAAe,GAAG,IAAI,CAAC,WAAW,IAAI,QAAQ,GAAG,QAAQ,CAAC,qBAAqB,EAAE,GAAG,IAAI;QAC9F,KAAK,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE;;gBACrD,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YAClC,IAAI,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;gBAC7D,IAAI,CAAC,cAAc,EAAE;oBACnB,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,WAAW,IAAI,eAAe,IAAI,OAAO,CAAC,qBAAqB,EAAE,CAAC,GAAG,KAAK,eAAe,CAAC,GAAG,CAAC,EAAE;wBAC1I,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;wBACxB,IAAI,IAAI,CAAC,gBAAgB,CAAC,WAAW,KAAK,CAAC,EAAE;4BAC3C,IAAI,CAAC,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC;yBAC1C;qBACF;oBACD,cAAc,GAAG,IAAI,CAAC;iBACvB;gBACD,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;oBAClC,IAAI,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;oBACpD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;iBAC/B;aACF;SACF;KACF;;;;;IAED,yCAAW;;;;IAAX,UAAY,OAAsB;QAChC,IAAI,CAAC,OAAO,EAAE,CAAC;KAChB;;;;IAED,sCAAQ;;;IAAR;QACE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;KACzE;;;;;IAGO,sCAAQ;;;;IAAhB;QACE,OAAO,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;KAC1F;;;;;IAEO,qCAAO;;;;IAAf;QACE,OAAO,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;KACxB;;gBArIF,SAAS,SAAC;oBACT,QAAQ,EAAE,gBAAgB;iBAC3B;;;;gBAjBC,UAAU;gBAOJ,eAAe;gBACf,kBAAkB;gBAClB,WAAW;gBACX,aAAa;gBACb,eAAe;;;4BAoCpB,YAAY,SAAC,QAAQ;2BAIrB,YAAY,SAAC,eAAe;;IAkG/B,0BAAC;CAtID,IAsIC;;;;;;IAjIC,0CAA4B;;;;;IAC5B,mCAAmB;;;;;IACnB,6CAAmC;;;;;IAEvB,0CAA4C;;;;;IAC5C,+CAAyC;;;;;IACzC,kDAA+C;;;;;IAC/C,2CAAiC;;;;;IACjC,6CAAqC;;;;;IACrC,+CAAyC;;;;;;;AChCvD;IAMMA,GAAC,GAAG,MAAM;AAEhB;IAAA;QAIY,iBAAY,GAAG,IAAI,YAAY,EAAE,CAAC;QAClC,mBAAc,GAAG,IAAI,YAAY,EAAE,CAAC;KAuB/C;;;;;IArByC,gDAAkB;;;;IAA1D,UAA2D,KAAU;QACnE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;KAC5B;;;;;IAE2C,iDAAmB;;;;IAA/D,UAAgE,KAAU;QACxE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;KAC5B;;;;;IAEyC,4CAAc;;;;IAAxD,UAAyD,KAAU;QACjE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;KAC5B;;;;;IAED,4CAAc;;;;IAAd,UAAe,KAAU;QACvB,KAAK,GAAG,MAAM,CAAC,KAAK,CAAE;;YAChB,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAC5E,IAAG,KAAK,GAAG,CAAC,EAAE;YACV,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACjC;aAAM,IAAG,KAAK,GAAG,CAAC,EAAE;YACjB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACnC;KACF;;gBA3BF,SAAS,SAAC;oBACT,QAAQ,EAAE,gBAAgB;iBAC3B;;;+BAEE,MAAM;iCACN,MAAM;qCAEN,YAAY,SAAC,YAAY,EAAE,CAAC,QAAQ,CAAC;sCAIrC,YAAY,SAAC,gBAAgB,EAAE,CAAC,QAAQ,CAAC;iCAIzC,YAAY,SAAC,cAAc,EAAE,CAAC,QAAQ,CAAC;;IAa1C,0BAAC;CA5BD,IA4BC;;;IAxBC,2CAA4C;;IAC5C,6CAA8C;;;;;;;ACbhD;IAqBE,uBAAoB,YAAyB,EAAU,cAA6B,EAAE,EAAc;QAAhF,iBAAY,GAAZ,YAAY,CAAa;QAAU,mBAAc,GAAd,cAAc,CAAe;QAX3E,eAAU,GAAG,IAAI,CAAC;QAYzB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;KACd;;;;IAED,mCAAW;;;IAAX;KACC;;;;IAED,mCAAW;;;IAAX;QACE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;KAC1C;;;;IAED,gCAAQ;;;IAAR;QAAA,iBAUC;QATC,IAAI,CAAE,IAAI,CAAC,UAAU,EAAE;YACrB,OAAO;SACR;QAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,SAAS;;;;QAAC,UAAC,IAAI;YAC1C,KAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACrB,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;SACxB,EAAC,CAAC;KACJ;;;;;;IAEO,iCAAS;;;;;IAAjB,UAAkB,IAAI;QACpB,IAAI,CAAE,IAAI,CAAC,UAAU,EAAE;YACrB,OAAO;SACR;;YAEK,OAAO,GAAG,IAAI,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,GAAG;QAE7C,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE;YAChC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;SACxB;aACI;YACH,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;SACrB;QAED,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE;YACjC,IAAI,CAAC,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,GAAG,CAAC;YAC1C,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC;SACnC;aACI;YACH,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;YACpB,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;SAC3B;;YAEG,QAAQ,GAAG,CAAC;QAChB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO;;;;QAAC,UAAA,IAAI;YAC1B;gBACE,IAAI,IAAI,CAAC,KAAK,GAAG,QAAQ,EAAC;oBACxB,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;iBACvB;aACF;SACF,EAAC,CAAC;;QAGH,IAAI,CAAC,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC;KACtE;;;;;;IAEO,sCAAc;;;;;IAAtB,UAAuB,GAAG;QACxB,OAAO,GAAG,CAAC,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC;KAC1C;;;;;;IAEO,uCAAe;;;;;IAAvB,UAAwB,GAAG;QACzB,OAAO,GAAG,CAAC,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC;KAC5C;;;;;;IAEO,mCAAW;;;;;IAAnB,UAAoB,IAAI;;YAChB,OAAO,GAAG,IAAI,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,GAAG;;YAEvC,aAAa,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,aAAa,CAAC,WAAW;;YAC/D,cAAc,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,aAAa,CAAC,YAAY;;YACjE,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,aAAa,CAAC;;YACtE,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,aAAa,CAAC;QAC9E,IAAI,CAAC,KAAK,GAAG,CAAC,aAAa,GAAC,OAAO,GAAG,WAAW,GAAC,OAAO,IAAI,IAAI,CAAC;QAClE,IAAI,CAAC,MAAM,GAAG,CAAC,cAAc,GAAC,OAAO,GAAG,YAAY,GAAC,OAAO,IAAI,IAAI,CAAC;KACtE;;;;IAED,uCAAe;;;IAAf;QACE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;KACxC;;gBAjGF,SAAS,SAAC;oBACT,QAAQ,EAAE,UAAU;iBACrB;;;;gBANO,WAAW;gBAEV,aAAa;gBAHmD,UAAU;;;6BAUhF,KAAK;uBACL,KAAK;0BAEL,WAAW,SAAC,YAAY;4BACxB,WAAW,SAAC,iBAAiB;kCAC7B,WAAW,SAAC,wBAAwB;wBACpC,WAAW,SAAC,aAAa;yBACzB,WAAW,SAAC,cAAc;2BAC1B,WAAW,SAAC,iBAAiB;;IAqFhC,oBAAC;CAlGD,IAkGC;;;IA7FC,mCAA2B;;IAC3B,6BAAc;;IAEd,gCAA2C;;IAC3C,kCAAkD;;IAClD,wCAA+D;;IAC/D,8BAA0C;;IAC1C,+BAA4C;;IAC5C,iCAAiD;;IACjD,2BAAoB;;;;;IAER,qCAAiC;;;;;IAAE,uCAAqC;;;;;;;ACrBtF;IAUE;QAHQ,cAAS,GAAqB,IAAI,OAAO,EAAE,CAAC;QACnC,aAAQ,GAAwB,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;KAG9E;IAED,sBAAI,mCAAO;;;;QAAX;YACE,OAAO,IAAI,CAAC,QAAQ,CAAC;SACtB;;;OAAA;;;;;IAED,8BAAK;;;;IAAL,UAAM,KAAc;QAClB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;KAC3B;;gBAhBF,UAAU,SAAC;oBACV,UAAU,EAAE,MAAM;iBACnB;;;;;yBALD;CAGA,IAiBC;;;;;;IAbC,mCAAoD;;;;;IACpD,kCAA+E;;;;;;;ACRjF;;;AAGA,qBAIC;;;IAHC,sBAAa;;IACb,uBAAW;;IACX,2BAAmB;;AAGrB;IAcE,yBAAsB,eAA+B;QAArD,iBAIC;QAJqB,oBAAe,GAAf,eAAe,CAAgB;QAN5C,aAAQ,GAAG,KAAK,CAAC;QAEhB,aAAQ,GAAsB,IAAI,YAAY,EAAE,CAAC;QAClD,WAAM,GAAG,KAAK,CAAC;QAItB,eAAe,CAAC,OAAO,CAAC,SAAS;;;QAAC;YAChC,KAAI,CAAC,KAAK,EAAE,CAAC;SACd,EAAC,CAAC;KACJ;;;;IAED,8BAAI;;;IAAJ;QACE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;SACpB;KACF;;;;IAED,+BAAK;;;IAAL;QACE,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;KACrB;;;;;IAED,wCAAc;;;;IAAd,UAAe,KAAa;QAC1B,IAAI,CAAC,KAAK,EAAE,CAAC;KACd;;;;;IAED,gCAAM;;;;IAAN,UAAO,MAAM;;QAEX,MAAM,CAAC,cAAc,EAAE,CAAC;QACxB,MAAM,CAAC,eAAe,EAAE,CAAC;QACzB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;SAC5B;KACF;;;;;;IAED,gCAAM;;;;;IAAN,UAAO,MAAM,EAAE,KAAa;QAC1B,MAAM,CAAC,cAAc,EAAE,CAAC;QACxB,MAAM,CAAC,eAAe,EAAE,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC,KAAK,EAAE,CAAC;KACd;;gBAhDF,SAAS,SAAC;oBACT,QAAQ,EAAE,WAAW;oBACrB,00BAAsC;;iBAEvC;;;;gBAZO,cAAc;;;0BAenB,KAAK;2BACL,KAAK;+BACL,KAAK;2BACL,MAAM;yBACN,KAAK;uBACL,KAAK;;IAqCR,sBAAC;CAjDD,IAiDC;;;IA1CC,kCAA2B;;IAC3B,mCAA0B;;IAC1B,uCAA8B;;IAC9B,mCAA2D;;IAC3D,iCAAwB;;IACxB,+BAAsB;;;;;IAEV,0CAAyC;;;;;;;ACvBvD;IASE;KACC;;;;;IAIO,8CAAY;;;;IAApB;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC;KACvC;;;;IAED,0CAAQ;;;IAAR;QACE,IAAI,CAAC,YAAY,EAAE,CAAC;KACrB;;;;;IAED,6CAAW;;;;IAAX,UAAY,OAAsB;QAChC,IAAI,CAAC,YAAY,EAAE,CAAA;KACpB;;gBAtBF,SAAS,SAAC;oBACT,QAAQ,EAAE,oBAAoB;iBAC/B;;;;;sBAGE,KAAK;yBAKL,WAAW,SAAC,gBAAgB;;IAa/B,8BAAC;CAvBD,IAuBC;;;IAlBC,sCAAsB;;IAKtB,yCAA+C;;;;;;;ACZjD;IAmBE;QARS,eAAU,GAAG,IAAI,CAAC;KAS1B;;;;;IAEO,wCAAY;;;;IAApB;QACE,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAC;YACjC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;SACvC;QAED,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC;YACxB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;YACzB,IAAI,CAAC,SAAS,GAAG,SAAS,GAAG,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;SAClD;aAAM,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE;YAC7C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;SACvB;QAED,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,IAAI,IAAI,CAAC,KAAK,KAAK,EAAE,IAAI,IAAI,CAAC,KAAK,KAAK,GAAG,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC,GAAG,EAAE;gBACxF,IAAI,IAAI,CAAC,UAAU,EAAE;oBACnB,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;wBACtB,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC;qBAC7B;yBAAM;wBACL,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC;qBAC9B;iBACF;qBAAM;oBACL,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;wBACtB,IAAI,CAAC,MAAM,GAAG,mBAAmB,CAAC;qBACnC;yBAAM;wBACL,IAAI,CAAC,MAAM,GAAG,mBAAmB,CAAC;qBACnC;iBACF;aACF;iBAAM,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,KAAK,GAAG,EAAE;gBACpD,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC;aACvB;iBAAM;gBACL,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;aACpB;SACF;KAEF;;;;IAED,uCAAW;;;IAAX;QACE,OAAO,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;KACjC;;;;IAED,oCAAQ;;;IAAR;QACE,IAAI,CAAC,YAAY,EAAE,CAAC;KACrB;;;;;IAED,uCAAW;;;;IAAX,UAAY,OAAsB;QAChC,IAAI,CAAC,YAAY,EAAE,CAAA;KACpB;;gBArEF,SAAS,SAAC;oBACT,QAAQ,EAAE,cAAc;iBACzB;;;;;wBAGE,KAAK;6BACL,KAAK;wBACL,KAAK;yBACL,KAAK;6BACL,KAAK;4BAEL,WAAW,SAAC,iBAAiB;6BAC7B,WAAW,SAAC,2BAA2B;4BACvC,WAAW,SAAC,iBAAiB;yBAE7B,WAAW,SAAC,cAAc;;IAwD7B,wBAAC;CAvED,IAuEC;;;IAlEC,kCAAuB;;IACvB,uCAA6B;;IAC7B,kCAAuB;;IACvB,mCAAwB;;IACxB,uCAA2B;;IAE3B,sCAAkD;;IAClD,uCAA6D;;IAC7D,sCAAkD;;IAElD,mCAA4C;;;;;;;ACjB9C;IAaE;QAHU,gBAAW,GAAG,IAAI,YAAY,EAAW,CAAC;QACpD,mBAAc,GAAG,KAAK,CAAC;KAGtB;;;;IAED,qCAAQ;;;IAAR;KACC;;;;;IAED,oCAAO;;;;IAAP,UAAQ,MAAM;QACZ,IAAI,MAAM,EAAE;YACV,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9B,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;SAC7B;KACF;;gBAtBF,SAAS,SAAC;oBACT,QAAQ,EAAE,eAAe;oBACzB,giBAA0C;;iBAE3C;;;;;uBAEE,KAAK;uBACL,KAAK;8BACL,MAAM;;IAeT,yBAAC;CAvBD,IAuBC;;;IAjBC,kCAAsB;;IACtB,kCAAsB;;IACtB,yCAAoD;;IACpD,4CAAuB;;;;;;;ACXzB;IASE;QAAA,iBAKC;QAJC,IAAI,CAAC,OAAO,GAAG,IAAI,UAAU;;;;QAAC,UAAA,QAAQ;YACpC,OAAA,KAAI,CAAC,SAAS,GAAG,QAAQ;SAAA,EAAC,CAAC;QAC7B,IAAI,CAAC,WAAW,GAAG,IAAI,UAAU;;;;QAAC,UAAA,QAAQ;YACxC,OAAA,KAAI,CAAC,aAAa,GAAG,QAAQ;SAAA,EAAC,CAAC;KAClC;IAED,sBAAI,2CAAW;;;;QAAf;YACE,OAAO,IAAI,CAAC,OAAO,CAAC;SACrB;;;OAAA;;;;;IAED,wCAAW;;;;IAAX,UAAY,KAAkB;QAC5B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC5B;IAED,sBAAI,+CAAe;;;;QAAnB;YACE,OAAO,IAAI,CAAC,WAAW,CAAC;SACzB;;;OAAA;;;;;IAED,uCAAU;;;;IAAV,UAAW,IAAU;QACnB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC/B;IACH,yBAAC;CAAA,IAAA;;;;;;IA3BC,qCAAyC;;;;;IACzC,uCAAyC;;;;;IACzC,yCAAsC;;;;;IACtC,2CAAsC;;;;;;;;ICGtC,8BAAoB,cAAkC;QAAtD,iBAOC;QAPmB,mBAAc,GAAd,cAAc,CAAoB;QACpD,cAAc,CAAC,WAAW,CAAC,SAAS;;;;QAAC,UAAA,KAAK;YACxC,KAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;SACzB,EAAC,CAAC;QACH,cAAc,CAAC,eAAe,CAAC,SAAS;;;;QAAC,UAAA,IAAI;YAC3C,KAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;SAC5B,EAAC,CAAC;KACJ;;;;;;IAEO,0CAAW;;;;;IAAnB,UAAoB,KAAkB;;;YAChC,SAAS,GAAG,EAAE;;YAElB,KAAmB,IAAA,UAAAC,SAAA,KAAK,CAAA,4BAAA,+CAAE;gBAArB,IAAM,IAAI,kBAAA;gBACb,SAAS,IAAI,mBAAmB,GAAG,IAAI,CAAC,MAAM,GAAG,oBAAoB;oBACnE,oHAAoH,GAAG,IAAI,CAAC,IAAI,GAAG,sBAAsB;oBACzJ,QAAQ,CAAC;aACZ;;;;;;;;;QAED,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;KAC7D;;;;;;;;IAEO,yCAAU;;;;;;;IAAlB,UAAmB,SAAS,EAAE,KAAK,EAAE,MAAM;;YACnC,QAAQ,GAAG,GAAG;;YACd,OAAO,GAAG,GAAG;;YACf,eAAe,GAAG,EAAE;QACxB,IAAG,KAAK,GAAG,OAAO,IAAI,MAAM,GAAG,QAAQ,EAAC;;gBAChC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,GAAG;YAChD,eAAe,GAAG,qDAAqD,CAAC;YACxE,IAAG,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAC;gBAC3D,eAAe,GAAG,kCAAkC,GAAG,IAAI,GAAG,KAAK,CAAC;aACrE;SACF;;YACG,QAAQ,GAAG,SAAS;YACtB,iFAAiF;YACjF,gDAAgD,GAAG,eAAe;QACpE,QAAQ,GAAG,QAAQ,GAAG,UAAU,CAAC;;YAE3B,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,aAAa,EAAE,0FAA0F,CAAC;QAC/I,YAAY,CAAC,KAAK,EAAE,CAAC;QACrB,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACxC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACzC,YAAY,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC9B,UAAU;;;QAAC;YACT,YAAY,CAAC,KAAK,EAAE,CAAC;YACrB,YAAY,CAAC,KAAK,EAAE,CAAC;YACrB,YAAY,CAAC,KAAK,EAAE,CAAC;SACtB,GAAE,GAAG,CAAC,CAAC;KACT;;;;;;IAEO,8CAAe;;;;;IAAvB,UAAwB,IAAU;;YAC1B,OAAO,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC;;YACnC,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,0FAA0F,CAAC;QACpJ,YAAY,CAAC,KAAK,EAAE,CAAC;QACrB,YAAY,CAAC,KAAK,EAAE,CAAC;QACrB,YAAY,CAAC,KAAK,EAAE,CAAC;KACtB;;gBA7DF,SAAS,SAAC;oBACT,QAAQ,EAAE,iBAAiB;iBAC5B;;;;gBAJO,kBAAkB;;;2BAMvB,KAAK;;IA0DR,2BAAC;CA9DD,IA8DC;;;IA1DC,wCAA2B;;;;;IAEf,8CAA0C;;;;;;;ACVxD;IAME;QAHQ,cAAS,GAA4B,IAAI,eAAe,CAAC,yBAAyB,CAAC,CAAC;QACpF,mBAAc,GAAuB,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;KAG1E;IAED,sBAAI,kDAAa;;;;QAAjB;YACE,OAAO,IAAI,CAAC,cAAc,CAAC;SAC5B;;;OAAA;;;;;IAED,+CAAa;;;;IAAb,UAAc,OAAe;QAC3B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KAC9B;IACH,8BAAC;CAAA,IAAA;;;;;;IAbC,4CAA4F;;;;;IAC5F,iDAA2E;;;;;;;ACJ7E;IAYE,6BAAY,cAAuC;QAAnD,iBAEC;QADC,cAAc,CAAC,aAAa,CAAC,SAAS;;;;QAAC,UAAA,OAAO,IAAI,OAAA,KAAI,CAAC,OAAO,GAAG,OAAO,GAAA,EAAC,CAAC;KAC3E;;;;IAED,sCAAQ;;;IAAR;KACC;;gBAdF,SAAS,SAAC;oBACT,QAAQ,EAAE,gBAAgB;oBAC1B,maAA2C;;iBAE5C;;;;gBANO,uBAAuB;;IAkB/B,0BAAC;CAhBD,IAgBC;;;IATC,sCAAgB;;;;;;;ACVlB;IAME;QAHQ,cAAS,GAAoB,IAAI,OAAO,EAAE,CAAC;QAClC,gBAAW,GAAuB,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;KAGhF;IAED,sBAAI,uCAAU;;;;QAAd;YACE,OAAO,IAAI,CAAC,WAAW,CAAC;SACzB;;;OAAA;;;;;IAED,qCAAW;;;;IAAX,UAAY,IAAY;QACtB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC3B;IACH,sBAAC;CAAA,IAAA;;;;;;IAbC,oCAAmD;;;;;IACnD,sCAAiF;;;;;;;ACJnF;IAKMD,GAAC,GAAG,MAAM;AAEhB;IASE,mCAAY,cAAuC,EAAU,gBAAiC;QAA9F,iBAEC;QAF4D,qBAAgB,GAAhB,gBAAgB,CAAiB;QAFpF,gBAAW,GAAG,IAAI,YAAY,EAAE,CAAC;QAGzC,cAAc,CAAC,aAAa,CAAC,SAAS;;;;QAAC,UAAA,OAAO,IAAI,OAAA,KAAI,CAAC,OAAO,GAAG,OAAO,GAAA,EAAC,CAAC;KAC3E;;;;IAED,4CAAQ;;;IAAR;KACC;;;;;IAED,+CAAW;;;;IAAX,UAAY,KAAa;QACvB,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;KAC1C;;;;;IAED,+CAAW;;;;IAAX,UAAY,MAAe;QACzB,IAAI,MAAM,EAAE;YACV,UAAU;;;YAAC;;oBACH,OAAO,GAAGA,GAAC,CAAC,WAAW,CAAC;gBAC9B,IAAI,OAAO,EAAE;oBACX,OAAO,CAAC,KAAK,EAAE,CAAC;iBACjB;aACF,GAAE,GAAG,CAAC,CAAC;SACT;aAAM;YACLA,GAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SACxB;KACF;;;;;IAED,0CAAM;;;;IAAN,UAAO,MAAe;QACpBA,GAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC7B;;gBApCF,SAAS,SAAC;oBACT,QAAQ,EAAE,sBAAsB;oBAChC,0rBAAiD;;iBAElD;;;;gBAVO,uBAAuB;gBACvB,eAAe;;;8BAYpB,MAAM;;IA8BT,gCAAC;CArCD,IAqCC;;;IA/BC,4CAAgB;;IAChB,gDAA2C;;;;;IAEU,qDAAyC;;;;;;;AChBhG;IAaE,iCAAoB,aAA2B,EAAU,eAAwC;QAA7E,kBAAa,GAAb,aAAa,CAAc;QAAU,oBAAe,GAAf,eAAe,CAAyB;KAChG;;;;;;IAED,2CAAS;;;;;IAAT,UAAU,GAAqB,EAAE,IAAiB;QAAlD,iBAsCC;;YArCO,SAAS,GAAG,kCAAkC;QAEpD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;aACpB,IAAI,CAAC,GAAG;;;;QAAC,UAAA,IAAI;YACV,OAAO,IAAI,CAAC;SACb,EAAC,EACF,UAAU;;;;QAAC,UAAC,SAAyB;YACnC,IAAI,SAAS,YAAY,iBAAiB,EAAE;gBAC1C,QAAQ,SAAS,CAAC,MAAM;oBAEtB,KAAK,SAAS,CAAC,UAAU;wBACvB,OAAO,CAAC,KAAK,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;wBAC/C,MAAM;oBACR,KAAK,SAAS,CAAC,YAAY;wBACzB,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,SAAS,CAAC,CAAC;wBAChD,MAAM;oBACR,KAAK,SAAS,CAAC,QAAQ;wBACrB,OAAO,CAAC,KAAK,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;wBAC7C,MAAM;oBACR,KAAK,SAAS,CAAC,OAAO;wBACpB,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;wBAC3C,MAAM;oBACR,KAAK,SAAS,CAAC,mBAAmB;wBAChC,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;wBAC3C,KAAI,CAAC,eAAe,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;wBAC5D,KAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;wBACnD,MAAM;oBAER,KAAK,SAAS,CAAC,SAAS;wBACtB,OAAO,CAAC,KAAK,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;wBAC7C,KAAI,CAAC,eAAe,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;wBAC5D,KAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;wBACvD,MAAM;iBACT;aACF;YACD,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC;SAC9B,EAAC,CAAC,CAAC;KACT;;gBA9CF,UAAU,SAAC;oBACV,UAAU,EAAE,MAAM;iBACnB;;;;gBAJqB,YAAY;gBAF1B,uBAAuB;;;kCAJ/B;CAQA,IA+CC;;;;;;IA1Ca,gDAAmC;;;;;IAAE,kDAAgD;;;;;;;ACbnG;IAYE;QATQ,cAAS,GAAoB,IAAI,OAAO,EAAE,CAAC;QAClC,gBAAW,GAAuB,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;QAEzE,qBAAgB,GAAoB,IAAI,OAAO,EAAE,CAAC;QACzC,mBAAc,GAAuB,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;QAEnF,mBAAc,GAAoB,IAAI,OAAO,EAAE,CAAC;QACvC,iBAAY,GAAuB,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;KAGtF;IAED,sBAAI,qCAAU;;;;QAAd;YACE,OAAO,IAAI,CAAC,WAAW,CAAC;SACzB;;;OAAA;;;;;IAED,+BAAO;;;;IAAP,UAAQ,IAAY;QAClB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC3B;IAED,sBAAI,wCAAa;;;;QAAjB;YACE,OAAO,IAAI,CAAC,cAAc,CAAC;SAC5B;;;OAAA;IAED,sBAAI,sCAAW;;;;QAAf;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;SAC1B;;;OAAA;;;;;IAED,kCAAU;;;;IAAV,UAAW,OAAe;QACxB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACrC;;;;;IAED,gCAAQ;;;;IAAR,UAAS,KAAa;QACpB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACjC;IACH,oBAAC;CAAA,IAAA;;;;;;IAnCC,kCAAmD;;;;;IACnD,oCAAiF;;;;;IAEjF,yCAA0D;;;;;IAC1D,uCAA2F;;;;;IAE3F,uCAAwD;;;;;IACxD,qCAAuF;;;;;;;ACVzF;IAmBE,yBAAoB,cAA6B;QAAjD,iBAUC;QAVmB,mBAAc,GAAd,cAAc,CAAe;QATvC,cAAS,GAAG,IAAI,YAAY,CAAU,KAAK,CAAC,CAAC;QAEvD,YAAO,GAAG,CAAC,CAAC;QACZ,UAAK,GAAG,CAAC,CAAC;QAOR,cAAc,CAAC,WAAW,CAAC,SAAS;;;;QAAC,UAAC,KAAa;YACjD,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,KAAK,KAAK,CAAC,EAAE;gBACf,KAAI,CAAC,OAAO,GAAG,CAAC,CAAC;aAClB;iBAAM;gBACL,KAAI,CAAC,OAAO,GAAG,CAAC,CAAC;aAClB;YACD,KAAI,CAAC,cAAc,CAAC,UAAU,CAAC,KAAI,CAAC,OAAO,CAAC,CAAC;SAC9C,EAAC,CAAC;KACJ;;;;IAED,kCAAQ;;;IAAR;KACC;;;;;IAED,iCAAO;;;;IAAP,UAAQ,IAAY;QAClB,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;KACnC;;;;IAED,8BAAI;;;IAAJ;QACE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACjB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC3B;;;;IAED,8BAAI;;;IAAJ;QACE,IAAI,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE;YACpB,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAC9C;KACF;;;;IAED,8BAAI;;;IAAJ;QACE,IAAI,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE;YAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAC9C;KACF;;;;IAED,yCAAe;;;IAAf;QACE,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;KACxC;;gBAxDF,SAAS,SAAC;oBACT,QAAQ,EAAE,WAAW;oBACrB,kpBAAsC;;iBAEvC;;;;gBANO,aAAa;;;4BASlB,MAAM;8BAKN,SAAS,SAAC,MAAM,EAAC;wBAChB,MAAM,EAAG,IAAI;qBACd;;IA2CH,sBAAC;CAzDD,IAyDC;;;IAlDC,oCAAuD;;IAEvD,kCAAY;;IACZ,gCAAU;;IAEV,sCAE2B;;;;;IAEf,yCAAqC;;;;;;;ACnBnD;IAKMA,GAAC,GAAG,MAAM;AAEhB;IAUE,6BAAoB,WAAoC,EACpC,cAA6B,EAC7B,UAA+B,EAC/B,YAAyB;QAH7C,iBAoBC;QApBmB,gBAAW,GAAX,WAAW,CAAyB;QACpC,mBAAc,GAAd,cAAc,CAAe;QAC7B,eAAU,GAAV,UAAU,CAAqB;QAC/B,iBAAY,GAAZ,YAAY,CAAa;QAP7C,YAAO,GAAG,CAAC,CAAC;QACZ,UAAK,GAAG,CAAC,CAAC;QACF,SAAI,GAAG,GAAG,CAAC;QAMjB,cAAc,CAAC,aAAa,CAAC,SAAS;;;;QAAC,UAAC,OAAe;YACrD,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YACvB,IAAI,KAAI,CAAC,OAAO,KAAK,CAAC,EAAE;gBACtB,KAAI,CAAC,aAAa,EAAE,CAAC;aACtB;SACF,EAAC,CAAC;QAEH,cAAc,CAAC,UAAU,CAAC,SAAS;;;;QAAC,UAAC,IAAY;YAC/C,KAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,KAAI,CAAC,eAAe,EAAE,CAAC;SACxB,EAAC,CAAC;QAEH,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QAC9D,YAAY,CAAC,UAAU,CAAC,SAAS;;;;QAAC,UAAC,GAAW;YAC5C,KAAI,CAAC,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,KAAI,CAAC,IAAI,CAAC;SACnC,EAAC,CAAC;KACJ;;;;;IAEO,6CAAe;;;;IAAvB;;YACQ,EAAE,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,GAAG,IAAI;QACnE,IAAI,EAAE,EAAE;YACN,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;YACxB,IAAI,IAAI,CAAC,IAAI,EAAE;gBACb,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;;oBACf,KAAK,GAAG,EAAE,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC,MAAM;gBACzD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;aACpB;iBAAM;gBACL,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;aAChB;YACD,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC1C;KACF;;;;;IAEO,2CAAa;;;;IAArB;QACE,IAAI,IAAI,CAAC,OAAO,KAAK,CAAC,EAAE;YACtB,OAAO;SACR;;YACK,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE;;YAC5B,EAAE,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,GAAG,IAAI;QACnE,IAAI,EAAE,EAAE;YACN,EAAE,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,CAAC,OAAO;;;;YAAC,UAAU,KAAK;gBACjEA,GAAC,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC;aAC7C,EAAC,CAAC;;gBACG,SAAS,GAAG,EAAE,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;YACxEA,GAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;YAC7C,IAAI,SAAS,EAAE;;oBACP,OAAO,GAAG;oBACd,IAAI,EAAE,CAAC;oBACP,GAAG,EAAE,CAACA,GAAC,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,aAAa,CAAC,aAAa,CAAC,SAAS,GAAG,GAAG;iBAClF;;gBAED,EAAE,CAAC,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;aAChD;SACF;KACF;;;;;;IAEO,yCAAW;;;;;IAAnB,UAAoB,EAAW;;YACvB,SAAS,GAAGA,GAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,MAAM;;;QAAC;;gBAC5C,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,WAAW,EAAE;;gBACpD,UAAU,GAAG,oBAAU,IAAI,IAAE,SAAS,GAAG,CAAC,oBAAU,IAAI,IAAE,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,IAAI;YACzG,OAAO,IAAI,CAAC,QAAQ,KAAK,CAAC;gBACxB,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;gBACpC,QAAQ,KAAK,OAAO;gBACpB,QAAQ,KAAK,OAAO;gBACpB,QAAQ,KAAK,MAAM;gBACnB,QAAQ,KAAK,QAAQ;gBACrB,UAAU,CAAC;SACd,EAAC;;YACI,IAAI,GAAG,IAAI,CAAC,IAAI;;YAChB,SAAS,GAAG,IAAI,CAAC,UAAU;QACjC,SAAS,CAAC,IAAI;;;QAAC;;gBACP,KAAK,GAAGA,GAAC,CAAC,IAAI,CAAC;;gBACjB,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE;YAC1B,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC7C,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;SAC5B,EAAC,CAAC;QACH,EAAE,CAAC,SAAS,EAAE,CAAC;KAChB;;;;;;IAEO,4CAAc;;;;;IAAtB,UAAuB,EAAe;;YAC9B,UAAU,GAAG,EAAE,CAAC,gBAAgB,CAAC,eAAe,CAAC;QACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;;gBACpC,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;YAClC,OAAO,CAAC,WAAW,CAAC,oBAAc,OAAO,IAAE,SAAS,CAAC,CAAC;SACvD;QACD,EAAE,CAAC,SAAS,EAAE,CAAC;KAChB;;;;;IAEO,qCAAO;;;;IAAf;QACE,OAAO,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;KACxB;;gBAxGF,SAAS,SAAC;oBACT,QAAQ,EAAE,gBAAgB;iBAC3B;;;;gBATkB,UAAU;gBACrB,aAAa;gBACb,mBAAmB;gBACnB,WAAW;;IA6GnB,0BAAC;CAzGD,IAyGC;;;IApGC,mCAAa;;IACb,sCAAY;;IACZ,oCAAU;;;;;IACV,mCAAmB;;;;;IAEP,0CAA4C;;;;;IAC5C,6CAAqC;;;;;IACrC,yCAAuC;;;;;IACvC,2CAAiC;;;;;;;ACpB/C;IAWE;KACC;;;;IAED,0CAAQ;;;IAAR;KACC;;gBAbF,SAAS,SAAC;oBACT,QAAQ,EAAE,oBAAoB;oBAC9B,mIAA+C;;iBAEhD;;;;;uBAEE,KAAK;uBACL,KAAK;;IAQR,8BAAC;CAfD,IAeC;;;IATC,uCAAsB;;IACtB,uCAAsB;;;;;;;ACTxB;IAME;QAHQ,cAAS,GAAoB,IAAI,OAAO,EAAE,CAAC;QAClC,qBAAgB,GAAuB,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;KAGrF;IAED,sBAAI,gDAAe;;;;QAAnB;YACE,OAAO,IAAI,CAAC,gBAAgB,CAAC;SAC9B;;;OAAA;;;;;IAED,6CAAe;;;;IAAf,UAAgB,KAAa;QAC3B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC5B;IACH,0BAAC;CAAA,IAAA;;;;;;IAbC,wCAAmD;;;;;IACnD,+CAAsF;;;;;;;ACJxF;IAgBE,sBAAoB,oBAAyC;QAA7D,iBAIC;QAJmB,yBAAoB,GAApB,oBAAoB,CAAqB;QAJpD,aAAQ,GAAG,KAAK,CAAC;QACjB,WAAM,GAAG,KAAK,CAAC;QACf,YAAO,GAAG,IAAI,CAAC;QAGtB,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,SAAS;;;;QAAC,UAAC,KAAa;YAChE,KAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;SACxB,EAAC,CAAC;KACJ;;;;;;IAEO,iCAAU;;;;;IAAlB,UAAmB,KAAa;QAC9B,IAAI,IAAI,CAAC,EAAE,KAAK,KAAK,EAAE;YACrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;SACpB;aAAM;YACL,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;SACrB;KACF;;;;IAED,+BAAQ;;;IAAR;KACC;;;;IAED,gCAAS;;;IAAT;QACE,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,OAAO;SACR;QACD,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;KACpD;;gBAnCF,SAAS,SAAC;oBACT,QAAQ,EAAE,QAAQ;oBAClB,iYAAmC;;iBAEpC;;;;gBANO,mBAAmB;;;qBAQxB,KAAK;2BACL,KAAK;uBACL,KAAK;2BACL,KAAK;yBACL,KAAK;0BACL,KAAK;;IAyBR,mBAAC;CApCD,IAoCC;;;IA9BC,0BAAoB;;IACpB,gCAA0B;;IAC1B,4BAAsB;;IACtB,gCAA0B;;IAC1B,8BAAwB;;IACxB,+BAAwB;;;;;IAEZ,4CAAiD;;;;;;;AChB/D;IAQE;KACC;;gBAPF,SAAS,SAAC;oBACT,QAAQ,EAAE,SAAS;oBACnB,0EAAoC;;iBAErC;;;;IAKD,oBAAC;CATD;;;;;;ACFA;IAGE,oBAAY,QAAgB,EAAE,KAAa,EAAE,OAAe,EAAE,IAAa,EAAE,MAAe,EAAE,SAAkB,EAAE,IAAY,EAAE,SAAkB,EAAE,KAAa,EAAE,IAAY;QAC7K,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;KAClB;;;;IAaa,kBAAO;;;IAArB;QACE,OAAO,IAAI,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;KAC9F;IACH,iBAAC;CAAA,IAAA;;;IAdC,0BAAc;;IACd,4BAAgB;;IAChB,+BAAmB;;IACnB,8BAAiB;;IACjB,2BAAc;;IACd,6BAAgB;;IAChB,0BAAa;;IACb,+BAAmB;;IACnB,2BAAc;;IACd,0BAAa;;AAOf;IA0BE;QAzBQ,kBAAa,GAAqB,IAAI,OAAO,EAAE,CAAC;QACvC,sBAAiB,GAAwB,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QACpF,uBAAkB,GAAqB,IAAI,OAAO,EAAE,CAAC;QAC5C,2BAAsB,GAAwB,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;QAC9F,kBAAa,GAAqB,IAAI,OAAO,EAAE,CAAC;QACvC,UAAK,GAAwB,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QACxE,kBAAa,GAAqB,IAAI,OAAO,EAAE,CAAC;QACvC,UAAK,GAAwB,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QACxE,oBAAe,GAAqB,IAAI,OAAO,EAAE,CAAC;QACzC,wBAAmB,GAAwB,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;QACxF,mBAAc,GAAoB,IAAI,OAAO,EAAE,CAAC;QACvC,uBAAkB,GAAuB,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACrF,qBAAgB,GAAoB,IAAI,OAAO,EAAE,CAAC;QACzC,yBAAoB,GAAuB,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;QACzF,sBAAiB,GAAoB,IAAI,OAAO,EAAE,CAAC;QAC1C,0BAAqB,GAAuB,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;QAC3F,kBAAa,GAAoB,IAAI,OAAO,EAAE,CAAC;QACtC,sBAAiB,GAAuB,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QACnF,uBAAkB,GAAqB,IAAI,OAAO,EAAE,CAAC;QAC5C,2BAAsB,GAAwB,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;QAC9F,mBAAc,GAAoB,IAAI,OAAO,EAAE,CAAC;QACvC,uBAAkB,GAAuB,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACrF,kBAAa,GAAoB,IAAI,OAAO,EAAE,CAAC;QACtC,sBAAiB,GAAuB,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;KAG1F;IAED,sBAAI,+CAAgB;;;;QAApB;YACE,OAAO,IAAI,CAAC,iBAAiB,CAAC;SAC/B;;;OAAA;IAED,sBAAI,oDAAqB;;;;QAAzB;YACE,OAAO,IAAI,CAAC,sBAAsB,CAAC;SACpC;;;OAAA;IAED,sBAAI,gDAAiB;;;;QAArB;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC;SAChC;;;OAAA;IAED,sBAAI,kDAAmB;;;;QAAvB;YACE,OAAO,IAAI,CAAC,oBAAoB,CAAC;SAClC;;;OAAA;IAED,sBAAI,mDAAoB;;;;QAAxB;YACE,OAAO,IAAI,CAAC,qBAAqB,CAAC;SACnC;;;OAAA;IAED,sBAAI,+CAAgB;;;;QAApB;YACE,OAAO,IAAI,CAAC,iBAAiB,CAAC;SAC/B;;;OAAA;IAED,sBAAI,mCAAI;;;;QAAR;YACE,OAAO,IAAI,CAAC,KAAK,CAAC;SACnB;;;OAAA;IAED,sBAAI,mCAAI;;;;QAAR;YACE,OAAO,IAAI,CAAC,KAAK,CAAC;SACnB;;;OAAA;IAED,sBAAI,iDAAkB;;;;QAAtB;YACE,OAAO,IAAI,CAAC,mBAAmB,CAAC;SACjC;;;OAAA;IAED,sBAAI,oDAAqB;;;;QAAzB;YACE,OAAO,IAAI,CAAC,sBAAsB,CAAC;SACpC;;;OAAA;IAED,sBAAI,gDAAiB;;;;QAArB;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC;SAChC;;;OAAA;IAED,sBAAI,+CAAgB;;;;QAApB;YACE,OAAO,IAAI,CAAC,iBAAiB,CAAC;SAC/B;;;OAAA;;;;;IAEM,sCAAoB;;;;IAA3B,UAA4B,GAAW;QACrC,OAAO,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,GAAG,IAAI,EAAE,SAAS,EAAE,KAAK,EAAC,CAAA;KACxD;;;;IAEM,oCAAkB;;;IAAzB;QACE,OAAO;YACL,iBAAiB,CAAC,oBAAoB,CAAC,CAAC,CAAC;YACzC,iBAAiB,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC1C,iBAAiB,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC1C,iBAAiB,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC1C,iBAAiB,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC1C,iBAAiB,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC1C,iBAAiB,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC1C,iBAAiB,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC1C,iBAAiB,CAAC,oBAAoB,CAAC,EAAE,CAAC;SAC3C,CAAC;KACH;;;;;IAEM,kCAAgB;;;;IAAvB,UAAwB,GAAW;QACjC,OAAO,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAC,CAAA;KACjD;;;;IAEM,gCAAc;;;IAArB;QAAA,iBASC;;YARO,KAAK,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,cAAc,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,aAAa;YACnL,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,iBAAiB,EAAE,WAAW,CAAC;;YAC5E,WAAW,GAAG,EAAE;QACtB,KAAK,CAAC,OAAO;;;;QAAC,UAAA,IAAI;YAChB,WAAW,CAAC,IAAI,CAAC,KAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;SAC/C,EAAC,CAAA;QAEF,OAAO,WAAW,CAAC;KACpB;;;;;IAED,gDAAoB;;;;IAApB,UAAqB,MAAc;QACjC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACrC;;;;;IAED,4CAAgB;;;;IAAhB,UAAiB,IAAa;QAC5B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC/B;;;;;IAED,iDAAqB;;;;IAArB,UAAsB,SAAkB;QACtC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KACzC;;;;IAED,gCAAI;;;IAAJ;QACE,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;KAC3B;;;;IAED,gCAAI;;;IAAJ;QACE,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;KAC3B;;;;;IAED,8CAAkB;;;;IAAlB,UAAmB,MAAe;QAChC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACnC;;;;;IAED,6CAAiB;;;;IAAjB,UAAkB,KAAa;QAC7B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACjC;;;;;IAED,+CAAmB;;;;IAAnB,UAAoB,OAAe;QACjC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACrC;;;;;IAED,4CAAgB;;;;IAAhB,UAAiB,IAAY;QAC3B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC/B;;;;;IAED,iDAAqB;;;;IAArB,UAAsB,SAAkB;QACtC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KACzC;;;;;IAED,6CAAiB;;;;IAAjB,UAAkB,KAAa;QAC7B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACjC;;;;;IAED,4CAAgB;;;;IAAhB,UAAiB,IAAY;QAC3B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC/B;IACH,wBAAC;CAAA,IAAA;;;;;;IA5JC,0CAAwD;;;;;IACxD,8CAA4F;;;;;IAC5F,+CAA6D;;;;;IAC7D,mDAAsG;;;;;IACtG,0CAAwD;;;;;IACxD,kCAAgF;;;;;IAChF,0CAAwD;;;;;IACxD,kCAAgF;;;;;IAChF,4CAA0D;;;;;IAC1D,gDAAgG;;;;;IAChG,2CAAwD;;;;;IACxD,+CAA6F;;;;;IAC7F,6CAA0D;;;;;IAC1D,iDAAiG;;;;;IACjG,8CAA2D;;;;;IAC3D,kDAAmG;;;;;IACnG,0CAAuD;;;;;IACvD,8CAA2F;;;;;IAC3F,+CAA6D;;;;;IAC7D,mDAAsG;;;;;IACtG,2CAAwD;;;;;IACxD,+CAA6F;;;;;IAC7F,0CAAuD;;;;;IACvD,8CAA2F;;;;;;;ACxD7F;IAEM,cAAc,GAAG;IACrB,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS;IAC5G,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS;IAC5G,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS;IAC5G,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS;IAC5G,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS;IAC5G,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS;IAC5G,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS;IAC5G,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS;CAC7G;AAED;IAYE;QANS,WAAM,GAAG,KAAK,CAAC;QACd,kBAAa,GAAG,IAAI,YAAY,EAAU,CAAC;QAC3C,iBAAY,GAAG,IAAI,YAAY,EAAW,CAAC;QACrD,WAAM,GAAQ,cAAc,CAAC;QAC7B,UAAK,GAAG,SAAS,CAAC;KAGjB;;;;IAED,uCAAQ;;;IAAR;KACC;;;;;;IAED,qCAAM;;;;;IAAN,UAAO,MAAM,EAAE,KAAa;QAC1B,MAAM,CAAC,cAAc,EAAE,CAAC;QACxB,MAAM,CAAC,eAAe,EAAE,CAAC;QACzB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAChC;;;;IAED,oCAAK;;;IAAL;QACE,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC9B;;gBA3BF,SAAS,SAAC;oBACT,QAAQ,EAAE,iBAAiB;oBAC3B,2bAA4C;;iBAE7C;;;;;yBAEE,KAAK;gCACL,MAAM;+BACN,MAAM;;IAoBT,2BAAC;CA5BD,IA4BC;;;IAtBC,sCAAwB;;IACxB,6CAAqD;;IACrD,4CAAqD;;IACrD,sCAA6B;;IAC7B,qCAAkB;;;;;;;;ICjBuBD,yCAAiB;IAE1D;eACE,iBAAO;KACR;;gBAPF,UAAU,SAAC;oBACV,UAAU,EAAE,MAAM;iBACnB;;;;;gCALD;CAWC,CAL0C,iBAAiB;;;;;;ACN5D;IAEA;QAKE,SAAI,GAAe,KAAK,IAAI,CAAC,CAAC,0BAA0B,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;KAyBpF;;;;IAvBC,2CAAgB;;;IAAhB;QACE,IAAG,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,EAAC;YAC1D,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAG,CAAC;SACrC;KACF;;;;IAED,2CAAgB;;;IAAhB;;YACQ,SAAS,GAAG,MAAM,CAAC,YAAY,EAAE;QACvC,IAAI,SAAS,CAAC,UAAU,GAAG,CAAC,EAAE;YAC5B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;SAC1C;KACF;;;;;;IAEO,uCAAY;;;;;IAApB,UAAqB,SAAS;;YACtB,GAAG,GAAG,MAAM,CAAC,YAAY,EAAE;QACjC,GAAG,CAAC,eAAe,EAAE,CAAC;QACtB,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC;KACtC;;;;IAED,2CAAgB;;;IAAhB;QACE,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,gBAAgB,EAAE,CAAC;KACzB;;gBA7BF,UAAU,SAAC;oBACV,UAAU,EAAE,MAAM;iBACnB;;;2BAJD;CAEA,IA8BC;;;IA1BC,qCAAiB;;IACjB,gCAAmF;;;;;;;ACPrF;IAIMC,GAAC,GAAG,MAAM;AAChB;IAkBE,6BAAoB,kBAAqC,EACrC,sBAA6C,EAC7C,iBAAmC;QAFnC,uBAAkB,GAAlB,kBAAkB,CAAmB;QACrC,2BAAsB,GAAtB,sBAAsB,CAAuB;QAC7C,sBAAiB,GAAjB,iBAAiB,CAAkB;QAb/C,SAAI,GAAG,KAAK,CAAC;QACb,WAAM,GAAG,KAAK,CAAC;QACf,cAAS,GAAG,KAAK,CAAC;QAIlB,cAAS,GAAG,KAAK,CAAC;QAGlB,SAAI,GAAG,KAAK,CAAC;QAKnB,IAAI,CAAC,IAAI,gBAAe,KAAK,IAAI,CAAC,CAAC,0BAA0B,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;KACzF;;;;IAEwB,qCAAO;;;IAAhC;QAEE,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC/C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QACnD,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QACvD,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QACzD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;;QAG7B,IAAI,IAAI,CAAC,OAAO,KAAK,aAAa,EAAE;YAClC,IAAI,CAAC,OAAO,GAAGA,GAAC,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE,CAAC;SACjG;QACD,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACrE,IAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,EAAC;YACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SACrC;QACD,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QACrD,IAAI,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,CAAC,sBAAsB,CAAC,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAClE,IAAI,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,CAAC,sBAAsB,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1D,IAAI,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9D,IAAI,CAAC,sBAAsB,CAAC,oBAAoB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;QACxE,IAAI,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,CAAC,sBAAsB,CAAC,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAClE,IAAI,CAAC,sBAAsB,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1D,IAAI,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACzD;;;;;IAEO,0CAAY;;;;IAApB;;YACM,KAAK,GAAG,EAAE;QACd,KAAK,GAAG,QAAQ,CAAC,iBAAiB,CAAC,eAAe,CAAC,GAAG,QAAQ,GAAG,KAAK,CAAC;QACvE,KAAK,GAAG,QAAQ,CAAC,iBAAiB,CAAC,aAAa,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC;QACnE,KAAK,GAAG,QAAQ,CAAC,iBAAiB,CAAC,aAAa,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC;QACnE,KAAK,GAAG,QAAQ,CAAC,iBAAiB,CAAC,cAAc,CAAC,GAAG,OAAO,GAAG,KAAK,CAAC;QACrE,OAAO,KAAK,CAAC;KACd;;;;;IAEO,uCAAS;;;;IAAjB;;YACM,IAAI,GAAG,EAAE;QACb,IAAI,GAAG,QAAQ,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,GAAG,WAAW,GAAG,IAAI,CAAC;QAC9E,IAAI,GAAG,QAAQ,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC;QAC1E,OAAO,IAAI,CAAC;KACb;;;;IAED,4CAAc;;;IAAd;;YACM,WAAW;;YAAE,GAAG;QACpB,IAAI,MAAM,CAAC,YAAY,EAAE;YACvB,GAAG,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC;YAC5B,IAAI,GAAG,CAAC,UAAU,EAAE;gBAClB,WAAW,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC;;gBAExD,IAAI,WAAW,CAAC,QAAQ,KAAK,CAAC,EAAE;oBAC9B,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC;iBACtC;aACF;SACF;aAAM,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,YAAY,EAAE,KAAK,GAAG,CAAC,IAAI,KAAK,SAAS,EAAE;YACpE,WAAW,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,aAAa,EAAE,CAAC;SACjD;QAED,IAAI,WAAW,EAAE;YACf,OAAO,QAAQ,CAAC,IAAI,CAAC,wBAAwB,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;SAC/F;KACF;;;;;;IAED,sDAAwB;;;;;IAAxB,UAAyB,EAAE,EAAE,QAAQ;QACnC,IAAI,MAAM,CAAC,gBAAgB,EAAE;YAC3B,OAAO,MAAM,CAAC,gBAAgB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;SACpD;aAAM,IAAI,EAAE,CAAC,YAAY,EAAE;YAC1B,OAAO,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;SAClC;KACF;;;;IAED,sCAAQ;;;IAAR;QAAA,iBAgDC;QA/CC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS;;;QAAC;YACrC,KAAI,CAAC,UAAU,EAAE,CAAC;SACnB,EAAC,CAAC;QACH,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS;;;QAAC;YACrC,KAAI,CAAC,UAAU,EAAE,CAAC;SACnB,EAAC,CAAC;QACH,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,SAAS;;;;QAAC,UAAC,IAAa;YAC/D,KAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,KAAI,CAAC,UAAU,EAAE,CAAC;SACnB,EAAC,CAAC;QACH,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,SAAS;;;;QAAC,UAAC,SAAkB;YACzE,KAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAC3B,KAAI,CAAC,eAAe,EAAE,CAAC;SACxB,EAAC,CAAC;QACH,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,SAAS;;;;QAAC,UAAC,MAAe;YACnE,KAAI,CAAC,MAAM,GAAG,MAAM,CAAC;YACrB,KAAI,CAAC,YAAY,EAAE,CAAC;SACrB,EAAC,CAAC;QACH,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,SAAS;;;;QAAE,UAAC,KAAa;YACjE,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,KAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SACtB,GAAE,CAAC;QACJ,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,SAAS;;;;QAAE,UAAC,OAAe;YACrE,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YACvB,KAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;SAC1B,GAAE,CAAC;QACJ,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,SAAS;;;;QAAE,UAAC,QAAgB;YACvE,KAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;SAC5B,GAAE,CAAC;QAEJ,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,SAAS;;;;QAAE,UAAC,IAAY;YAC/D,KAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,KAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACpB,GAAE,CAAC;QACJ,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,SAAS;;;;QAAC,UAAC,SAAkB;YACzE,KAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAC3B,KAAI,CAAC,eAAe,EAAE,CAAC;SACxB,EAAC,CAAC;QACH,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,SAAS;;;;QAAC,UAAC,KAAa;YAChE,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,KAAI,CAAC,WAAW,CAAC,KAAI,CAAC,KAAK,CAAC,CAAC;SAC9B,EAAC,CAAC;QACH,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,SAAS;;;;QAAC,UAAC,IAAY;;gBACxD,MAAM,GAAG,KAAI,CAAC,IAAI,KAAK,IAAI;YACjC,KAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,KAAI,CAAC,UAAU,CAAC,KAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;SACpC,EAAC,CAAC;KACJ;;;;;IAEO,wCAAU;;;;IAAlB;QACE,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7B,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,CAAC;KAC3C;;;;;IAEO,6CAAe;;;;IAAvB;QACE,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAClC,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,CAAC;KAC3C;;;;;IAEO,0CAAY;;;;IAApB;QACE,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC/B,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,CAAC;KAC3C;;;;;;IAEO,wCAAU;;;;;IAAlB,UAAmB,OAAe;QAChC,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,CAAC;KAC3C;;;;;;IAEO,sCAAQ;;;;;IAAhB,UAAiB,KAAa;QAC5B,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAChD,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,CAAC;KAC3C;;;;;;IAEO,yCAAW;;;;;IAAnB,UAAoB,QAAgB;QAClC,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC,QAAQ,EAAE,EAAE;;gBAClC,UAAU,GAAG,0BAA0B,GAAG,QAAQ,GAAG,aAAa,GAAG,IAAI,CAAC,KAAK,GAAG,sBAAsB,GAAG,IAAI,CAAC,OAAO,GAAG,iBAAiB,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI;gBAChK,QAAQ,CAAC,YAAY,EAAE,GAAG,SAAS;YACrC,IAAI,IAAI,CAAC,IAAI,EAAE;gBACb,UAAU,GAAG,KAAK,GAAG,UAAU,GAAG,MAAM,CAAC;aAC1C;YACD,IAAI,IAAI,CAAC,MAAM,EAAE;gBACf,UAAU,GAAG,KAAK,GAAG,UAAU,GAAG,MAAM,CAAC;aAC1C;YACD,IAAI,IAAI,CAAC,SAAS,EAAE;gBAClB,UAAU,GAAG,KAAK,GAAG,UAAU,GAAG,MAAM,CAAC;aAC1C;YACD,IAAI,IAAI,CAAC,SAAS,EAAE;gBAClB,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,WAAW,CAAC;aACpD;YACD,QAAQ,CAAC,WAAW,CAAC,YAAY,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;SACvD;aAAM;YACL,QAAQ,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;SAC9C;QACD,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,CAAC;KAC3C;;;;;IAEO,wCAAU;;;;IAAlB;QACE,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;KAC9B;;;;;IAEO,wCAAU;;;;IAAlB;QACE,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;KAC9B;;;;;;IAEO,qCAAO;;;;;IAAf,UAAgB,IAAY;QAC1B,QAAQ,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,CAAC;KAC3C;;;;;IAEO,6CAAe;;;;IAAvB;QACE,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;QACtC,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,CAAC;KAC3C;;;;;;IAEO,yCAAW;;;;;IAAnB,UAAoB,KAAa;QAC/B,IAAG,IAAI,CAAC,IAAI,EAAE;YACZ,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC1B,OAAO;SACR;QACD,QAAQ,CAAC,WAAW,CAAC,cAAc,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACpD,QAAQ,KAAK;YACX,KAAK,QAAQ;gBACX,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;gBACtC,MAAM;YACR,KAAK,MAAM;gBACT,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;gBACpC,MAAM;YACR,KAAK,MAAM;gBACT,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;gBACpC,MAAM;YACR,KAAK,OAAO;gBACV,QAAQ,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;gBACrC,MAAM;SACT;QACD,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,CAAC;KAC3C;;;;;;IAEO,2CAAa;;;;;IAArB,UAAsB,KAAa;QACjC,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,CAAA;QACzC,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,CAAA;;YACnC,SAAS,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,UAAU;QACvE,IAAG,KAAK,KAAK,MAAM,EAAC;YAClB,KAAK,GAAG,SAAS,CAAC;SACnB;QACDA,GAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,CAAA;KAC1C;;;;;;;IAEO,wCAAU;;;;;;IAAlB,UAAmB,IAAY,EAAE,MAAe;QAC9C,QAAQ,IAAI;YACV,KAAK,WAAW;gBACd,QAAQ,CAAC,WAAW,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;gBACpD,MAAM;YACR,KAAK,SAAS;gBACZ,QAAQ,CAAC,WAAW,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;gBAClD,MAAM;SACT;QACD,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,CAAC;KAC3C;;gBAjQF,SAAS,SAAC;oBACT,QAAQ,EAAE,gBAAgB;iBAC3B;;;;gBARO,iBAAiB;gBACjB,qBAAqB;gBAGrB,gBAAgB;;;0BAwBrB,YAAY,SAAC,SAAS;;IA4OzB,0BAAC;CAlQD,IAkQC;;;;;;IA7PC,mCAAqB;;;;;IACrB,qCAAuB;;;;;IACvB,wCAA0B;;;;;IAC1B,oCAAsB;;;;;IACtB,sCAAwB;;;;;IACxB,mCAAqB;;;;;IACrB,wCAA0B;;;;;IAC1B,oCAAsB;;;;;IACtB,mCAAqB;;;;;IACrB,mCAAqB;;;;;IAET,iDAA6C;;;;;IAC7C,qDAAqD;;;;;IACrD,gDAA2C;;;;;;;ACzBzD;IASE;KAAiB;;;;IAEjB,wCAAQ;;;IAAR;KACC;;gBAVF,SAAS,SAAC;oBACT,QAAQ,EAAE,kBAAkB;oBAC5B,obAA6C;;iBAE9C;;;;IAQD,4BAAC;CAZD;;;;;;ACFA;IAUE;QAHQ,cAAS,GAAoB,IAAI,OAAO,EAAE,CAAC;QAClC,iBAAY,GAAuB,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;KAGjF;IAED,sBAAI,qCAAQ;;;;QAAZ;YACE,OAAO,IAAI,CAAC,SAAS,CAAC;SACvB;;;OAAA;IAED,sBAAI,wCAAW;;;;QAAf;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;SAC1B;;;OAAA;;gBAhBF,UAAU,SAAC;oBACV,UAAU,EAAE,MAAM;iBACnB;;;;;0BALD;CAGA,IAkBC;;;;;;IAdC,oCAAmD;;;;;IACnD,uCAAkF;;;;;;;ACRpF;IAYE,yBAAoB,iBAAmC,EAAU,YAA6B;QAA1E,sBAAiB,GAAjB,iBAAiB,CAAkB;QAAU,iBAAY,GAAZ,YAAY,CAAiB;QAFtF,SAAI,GAAwB,KAAK,IAAI,CAAC,CAAC,0BAA0B,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;KAGnG;;;;;IAGM,iCAAO;;;;IADd,UACe,KAAK;QAClB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;QACzB,IAAG,IAAI,CAAC,IAAI,EAAC;YACX,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;;oBACjB,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;gBAC3C,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACvC;SACF;KACF;;;;;IAGM,sCAAY;;;;IADnB,UACoB,KAAK;QACvB,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,CAAC;;QAE1C,IAAG,IAAI,CAAC,IAAI,EAAC;YACX,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;SACpE;KACF;;;;;IAGM,gCAAM;;;;IADb,UACc,KAAK;QACjB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,CAAC;QAC1C,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;;gBACjB,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;YAC3C,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACvC;aAAM;YACL,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;SACpE;KACF;;gBAzCF,SAAS,SAAC;oBACT,QAAQ,EAAE,YAAY;iBACvB;;;;gBALO,gBAAgB;gBAChB,eAAe;;;uBAMpB,KAAK;0BAOL,YAAY,SAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;+BAWhC,YAAY,SAAC,YAAY,EAAE,CAAC,QAAQ,CAAC;yBASrC,YAAY,SAAC,MAAM,EAAE,CAAC,QAAQ,CAAC;;IAWlC,sBAAC;CA1CD,IA0CC;;;IAtCC,+BAAmB;;;;;IAEnB,+BAAoG;;;;;IAExF,4CAA2C;;;;;IAAE,uCAAqC;;;;;;;ACZhG;IAWE;QALA,qBAAgB,GAA0B,IAAI,YAAY,EAAW,CAAC;QAE9D,aAAQ,GAAG,EAAE,CAAC;QACd,aAAQ,GAAuB,EAAE,CAAC;QAGxC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAClC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAC3C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;KACpC;;;;;IAED,2CAAc;;;;IAAd,UAAe,GAAqB;;YAC5B,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI;;;;QAAC,UAAA,CAAC,IAAI,OAAA,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAA,EAAC;QACzD,IAAI,CAAC,IAAI,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACxB,IAAI,CAAC,MAAM,EAAE,CAAC;SACf;KACF;;;;;IAED,4CAAe;;;;IAAf,UAAgB,GAAqB;;YAC7B,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC;QACxC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;YAChB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;SAChC;QACD,IAAI,CAAC,MAAM,EAAE,CAAC;KACf;;;;;IAEO,mCAAM;;;;IAAd;QACE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;KACxD;;gBAlCF,UAAU;;;;IAmCX,yBAAC;CAnCD,IAmCC;;;IAjCC,8CAAsE;;;;;IAEtE,sCAAsB;;;;;IACtB,sCAA0C;;;;;;;ACT5C;IAYE,8BAAoB,mBAAuC;QAAvC,wBAAmB,GAAnB,mBAAmB,CAAoB;QAFlD,gBAAW,GAAG,KAAK,CAAC;KAG5B;;;;IAED,uCAAQ;;;IAAR;KACC;;;;IAED,8CAAe;;;IAAf;QAAA,iBAIC;QAHC,IAAI,CAAC,mBAAmB;aACrB,gBAAgB;aAChB,SAAS;;;;QAAC,UAAC,OAAgB,IAAK,OAAA,KAAI,CAAC,WAAW,GAAG,OAAO,GAAA,EAAC,CAAC;KAChE;;gBAnBF,SAAS,SAAC;oBACT,QAAQ,EAAE,iBAAiB;oBAC3B,yOAA4C;;iBAE7C;;;;gBANO,kBAAkB;;;8BASvB,KAAK;;IAaR,2BAAC;CApBD,IAoBC;;;IAbC,2CAA6B;;;;;IAEjB,mDAA+C;;;;;;;ACZ7D;IAWE,uCAAoB,mBAAuC;QAAvC,wBAAmB,GAAnB,mBAAmB,CAAoB;KAC1D;;;;;;IAED,iDAAS;;;;;IAAT,UAAU,GAAqB,EAAE,IAAiB;QAAlD,iBAIC;QAHC,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;;YACvC,QAAQ;;;QAAG,cAAM,OAAA,KAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,GAAG,CAAC,GAAA,CAAA;QACpE,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAE,QAAQ,CAAE,QAAQ,CAAC,CAAC,CAAC;KACpD;;gBAZF,UAAU,SAAC;oBACV,UAAU,EAAE,MAAM;iBACnB;;;;gBAJO,kBAAkB;;;wCAJ1B;CAMA,IAaC;;;;;;IARa,4DAA+C;;;;;;;ACX7D;IAaM,mBAAmB,GAAG;IAC1B,MAAM,EAAG;QACP,KAAK,EAAE,MAAM;KACd;IACD,IAAI,EAAG;QACL,KAAK,EAAE,MAAM;KACd;IACD,KAAK,EAAG;QACN,KAAK,EAAE,OAAO;KACf;CACF;;IAEK,iBAAiB,GAAG;IACxB,MAAM,EAAG;QACP,GAAG,EAAG,KAAK;KACZ;IACD,GAAG,EAAG;QACJ,GAAG,EAAG,OAAO;QACb,KAAK,EAAE,MAAM;KACd;IACD,MAAM,EAAG;QACP,GAAG,EAAE,OAAO;KACb;CACF;;;;AAKD;IASE,iCAAgE,QAAQ;QAAxE,iBAA4E;QAAZ,aAAQ,GAAR,QAAQ,CAAA;QADxE,UAAK;;;;QAAG,UAAC,KAAU,IAAK,OAAA,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,GAAA,EAAC;KACwB;;gBAT7E,SAAS,SAAC;oBACT,QAAQ,EAAE,qBAAqB;oBAC/B,QAAQ,EAAE,2BAA2B;oBAErC,aAAa,EAAG,iBAAiB,CAAC,IAAI;;iBACvC;;;;gDAIc,MAAM,SAAC,UAAU;;;wBAAC,cAAM,OAAA,iBAAiB,GAAA,EAAC;;;wBAFtD,YAAY,SAAC,OAAO,EAAC,CAAC,QAAQ,CAAC;;IAGlC,8BAAC;CAVD,IAUC;;;IAHC,wCACoD;;IACxC,2CAA4D;;;;;AAM1E;IAoBE,gCAAgE,QAAQ;QAAR,aAAQ,GAAR,QAAQ,CAAA;KAAI;IAZ5E,sBAAI,mDAAe;;;;QAAnB;YACE,OAAO,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;SAClE;;;OAAA;IAED,sBAAI,iDAAa;;;;QAAjB;YACE,OAAO,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;SAC9D;;;OAAA;IAED,sBAAI,0CAAM;;;;QAAV;YACE,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;SAC3B;;;OAAA;;;;;IAID,+CAAc;;;;IAAd,UAAe,KAAa;QACxB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;KACzB;;gBAxBF,SAAS,SAAC;oBACT,QAAQ,EAAE,oBAAoB;oBAC9B,QAAQ,EAAE,iMAAiM;oBAE3M,aAAa,EAAG,iBAAiB,CAAC,IAAI;;iBACvC;;;;gDAec,MAAM,SAAC,UAAU;;;wBAAC,cAAM,OAAA,iBAAiB,GAAA,EAAC;;IAKzD,6BAAC;CAzBD,IAyBC;;;IALa,0CAA4D;;;;;AAU1E;IAeE,+BAAgE,QAAQ;QAAxE,iBAA4E;QAAZ,aAAQ,GAAR,QAAQ,CAAA;QARxE,UAAK,GAAG,gBAAgB,CAAC;QAGzB,aAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;QAG9B,UAAK;;;QAAG,cAAM,OAAA,KAAI,CAAC,WAAW,EAAE,GAAA,EAAC;KAE2C;;;;IAE5E,2CAAW;;;IAAX;QACE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;KACvB;;gBApBF,SAAS,SAAC;oBACT,QAAQ,EAAE,mBAAmB;oBAC7B,QAAQ,EAAE,6DAA6D;;iBAExE;;;;gDAWc,MAAM,SAAC,UAAU;;;wBAAC,cAAM,OAAA,iBAAiB,GAAA,EAAC;;;wBATtD,WAAW,SAAC,OAAO;2BAGnB,MAAM;wBAGN,YAAY,SAAC,OAAO;;IASvB,4BAAC;CArBD,IAqBC;;;IAfC,sCACyB;;IAEzB,yCAC8B;;IAE9B,sCACiC;;IAErB,yCAA4D;;;;;AAW1E;IAAA;QAQE,cAAS,GAAG;YACV,CAAC,EAAE,QAAQ;YACX,CAAC,EAAE,QAAQ;SACZ,CAAC;QAKF,SAAI,GAAG,KAAK,CAAC;QAGb,UAAK,GAAG,WAAW,CAAC;KAerB;;;;IAbC,iCAAK;;;IAAL;QACE,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;KACnB;;;;;IAED,kCAAM;;;;IAAN,UAAO,KAAkB;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;QACvB,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;KACvB;;;;IAED,wCAAY;;;IAAZ;QACE,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;;gBAjCF,SAAS,SAAC;oBACT,QAAQ,EAAE,cAAc;oBACxB,QAAQ,EAAE,wDAAwD;oBAElE,aAAa,EAAG,iBAAiB,CAAC,IAAI;;iBACvC;;;4BAEE,KAAK;uBAOL,KAAK,YACL,WAAW,SAAC,YAAY;wBAGxB,WAAW,SAAC,OAAO;;IAgBtB,wBAAC;CAlCD,IAkCC;;;IA3BC,sCAIE;;IAGF,iCAEa;;IAEb,kCACoB;;;;;;;ACnItB;IAUE;QAFS,gBAAW,GAAG,KAAK,CAAC;KAG5B;;;;IAED,uCAAQ;;;IAAR;KACC;;gBAZF,SAAS,SAAC;oBACT,QAAQ,EAAE,kBAAkB;oBAC5B,qQAA6C;;iBAE9C;;;;;8BAEE,KAAK;;IAQR,2BAAC;CAdD,IAcC;;;IARC,2CAA6B;;;;;;;ACR/B;IASE;QAFU,gBAAW,GAAG,IAAI,YAAY,EAAW,CAAC;KAGnD;;;;IAGM,qCAAU;;;IADjB;QAEE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC7B;;;;IAGM,uCAAY;;;IADnB;QAEE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC9B;;gBAlBF,SAAS,SAAC;oBACT,QAAQ,EAAE,aAAa;iBACxB;;;;;8BAGE,MAAM;6BAKN,YAAY,SAAC,YAAY;+BAKzB,YAAY,SAAC,YAAY;;IAK5B,uBAAC;CApBD,IAoBC;;;IAfC,uCAAoD;;;;;;;ACPtD;IAYE,oCAAoB,gBAA0C,EAC1C,OAAuB;QADvB,qBAAgB,GAAhB,gBAAgB,CAA0B;QAC1C,YAAO,GAAP,OAAO,CAAgB;KAC1C;;;;;;IAED,wDAAmB;;;;;IAAnB,UAAoB,gBAAkC,EAAE,SAAc;QAAtE,iBASC;;YARO,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,uBAAuB,CAAC,SAAS,CAAC;;YAClE,YAAY,GAAG,gBAAgB,CAAC,eAAe,CAAC,OAAO,CAAC;QAE9D,YAAY,CAAC,SAAS;;;QAAC;YACrB,KAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;SAChD,EAAC,CAAC;QAEH,OAAO,YAAY,CAAC;KACrB;;gBAlBF,UAAU,SAAC;oBACV,UAAU,EAAE,MAAM;iBACnB;;;;gBAPC,wBAAwB;gBADxB,cAAc;;;qCADhB;CAOA,IAoBC;;;;;;IAfa,sDAAkD;;;;;IAClD,6CAA+B;;;;;;;ACX7C;IAGE;QACE,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;KACjB;;;;;IAED,4CAAG;;;;IAAH,UAAI,IAA0B;QAC5B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM;;;;QAAC,UAAU,CAAC;YACxC,OAAO,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC;SAC/B,EAAC,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACvB;;;;;IAED,+CAAM;;;;IAAN,UAAO,IAA0B;QAC/B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM;;;;QAAC,UAAU,CAAC;YACxC,OAAO,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC;SAC/B,EAAC,CAAC;KACJ;;;;;IAED,6CAAI;;;;IAAJ,UAAK,KAAa;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI;;;;QAAC,UAAU,CAAC;YAChC,OAAO,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC;SAC1B,EAAC,CAAC;KACJ;IACH,qCAAC;CAAA,IAAA;;;;;;IAxBC,+CAAsC;;;;;;;ACHxC;IASE,8BAAmB,gBAAkC,EACjC,eAA+C;QADhD,qBAAgB,GAAhB,gBAAgB,CAAkB;QACjC,oBAAe,GAAf,eAAe,CAAgC;KAClE;;;;IAED,8CAAe;;;IAAf;QACE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;KAChC;;;;IAED,0CAAW;;;IAAX;QACE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;KAC/B;;gBAjBF,SAAS,SAAC;oBACT,QAAQ,EAAE,iBAAiB;iBAC5B;;;;gBALmD,gBAAgB;gBAC5D,8BAA8B;;;wBAMnC,KAAK;;IAeR,2BAAC;CAnBD,IAmBC;;;IAfC,qCAAuB;;IAEX,gDAAyC;;;;;IACzC,+CAAuD;;;;;;;ACVrE;IAIMA,GAAC,GAAG,MAAM;AAEhB;IA6BE;QApBS,OAAE,GAAG,KAAK,CAAC;QACX,OAAE,GAAG,KAAK,CAAC;QACX,OAAE,GAAG,KAAK,CAAC;QACX,OAAE,GAAG,KAAK,CAAC;QAGpB,OAAE,GAAG,IAAI,CAAC;QACV,OAAE,GAAG,IAAI,CAAC;QACV,OAAE,GAAG,IAAI,CAAC;QACV,OAAE,GAAG,IAAI,CAAC;QAEA,YAAO,GAAG,IAAI,YAAY,EAAU,CAAC;QACrC,YAAO,GAAG,IAAI,YAAY,EAAU,CAAC;QACrC,cAAS,GAAG,IAAI,YAAY,EAAU,CAAC;QACvC,eAAU,GAAG,IAAI,YAAY,EAAU,CAAC;QACxC,YAAO,GAAG,IAAI,YAAY,EAAW,CAAC;QAExC,SAAI,GAAG,KAAK,CAAC;KAIpB;;;;IAED,2CAAe;;;IAAf;QAAA,iBAeC;;YAdO,IAAI,GAAGA,GAAC,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;;YACpC,IAAI,GAAGA,GAAC,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1C,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;;gBAC3D,OAAK,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI;;gBAC/C,QAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG;YAClD,OAAO,OAAK,IAAI,IAAI,CAAC,SAAS,IAAI,QAAM,IAAI,IAAI,CAAC,UAAU,EAAE;gBAC3D,OAAK,GAAG,OAAK,GAAG,CAAC,CAAC;gBAClB,QAAM,GAAG,QAAM,GAAG,CAAC,CAAC;aACrB;YACD,UAAU;;;YAAC;gBACT,KAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAK,CAAC,CAAC;gBACzB,KAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAM,CAAC,CAAC;aAC3B,GAAE,GAAG,CAAC,CAAC;SACT;KACF;;;;IAED,oCAAQ;;;IAAR;KACC;;;;;IAED,mCAAO;;;;IAAP,UAAQ,MAAiB;;QAEvB,MAAM,CAAC,cAAc,EAAE,CAAC;QACxB,IAAI,MAAM,CAAC,YAAY,EAAE;YACvB,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;SAC5C;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;KACnD;;;;;;IAED,kCAAM;;;;;IAAN,UAAO,MAAiB,EAAE,EAAU;QAClC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACd,OAAO;SACR;;YACK,QAAQ,GAAG,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC;QAC/C,IAAI,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,CAAC,KAAK,CAAC,EAAE;YACxC,OAAO;SACR;;YACK,KAAK,GAAG,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE;;YACxC,KAAK,GAAG,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE;QAC9C,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACxC,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;SACtD;QACD,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;SACvD;QACD,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;KAC7B;;;;;;;;IAEO,sCAAU;;;;;;;IAAlB,UAAmB,QAAQ,EAAE,CAAU,EAAE,CAAU;;YAC3C,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;;YAC/E,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;QACrF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KAC5B;;;;;;IAED,+BAAG;;;;;IAAH,UAAI,MAAiB,EAAE,EAAU;;QAE/B,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACxB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;KACnB;;;;;IAED,iCAAK;;;;IAAL,UAAM,MAAiB;QACrB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACnB;;;;;IAED,gCAAI;;;;IAAJ,UAAK,MAAiB;QACpB,MAAM,CAAC,eAAe,EAAE,CAAC;QACzB,MAAM,CAAC,cAAc,EAAE,CAAC;KACzB;;;;;;IAEO,wCAAY;;;;;IAApB,UAAqB,EAAU;QAC7B,OAAO,GAAG,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC;KACjC;;gBA3GF,SAAS,SAAC;oBACT,QAAQ,EAAE,aAAa;oBACvB,25CAAwC;;iBAEzC;;;;;uBAGE,KAAK;qBACL,KAAK;qBACL,KAAK;qBACL,KAAK;qBACL,KAAK;qBACL,KAAK;4BACL,KAAK;6BACL,KAAK;0BAML,MAAM;0BACN,MAAM;4BACN,MAAM;6BACN,MAAM;0BACN,MAAM;;IAoFT,wBAAC;CA5GD,IA4GC;;;IArGC,iCAAuB;;IACvB,+BAAoB;;IACpB,+BAAoB;;IACpB,+BAAoB;;IACpB,+BAAoB;;IACpB,+BAAoB;;IACpB,sCAA2B;;IAC3B,uCAA4B;;IAC5B,+BAAU;;IACV,+BAAU;;IACV,+BAAU;;IACV,+BAAU;;IAEV,oCAA+C;;IAC/C,oCAA+C;;IAC/C,sCAAiD;;IACjD,uCAAkD;;IAClD,oCAAgD;;;;;IAEhD,iCAAqB;;;;;IACrB,wCAA8C;;;;;;;;IC/BJD,0CAAmB;IAE7D;eACE,iBAAO;KACR;IACH,6BAAC;CALD,CAA4C,mBAAmB;;;;;;ACF/D;IAoBE,yBAAoB,oBAA4C,EAC5C,aAA2B,EAC3B,kBAA2C;QAF/D,iBASC;QATmB,yBAAoB,GAApB,oBAAoB,CAAwB;QAC5C,kBAAa,GAAb,aAAa,CAAc;QAC3B,uBAAkB,GAAlB,kBAAkB,CAAyB;QATtD,aAAQ,GAAG,KAAK,CAAC;QAEhB,cAAS,GAAG,IAAI,YAAY,EAAU,CAAC;QACxC,oBAAe,GAAG,CAAC,CAAC;QACtB,WAAM,GAAG,KAAK,CAAC;QACf,gBAAW,GAAG,KAAK,CAAC;QAKzB,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,SAAS;;;;QAAC,UAAC,KAAa;YAChE,KAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YACvB,IAAI,KAAK,KAAK,IAAI,EAAE;gBAClB,KAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aACzB;SACF,EAAC,CAAC;KACJ;;;;;;IAEO,oCAAU;;;;;IAAlB,UAAmB,KAAa;QAC9B,IAAI,IAAI,CAAC,EAAE,KAAK,KAAK,EAAE;YACrB,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;YAC3B,IAAI,IAAI,CAAC,MAAM,EAAE;gBACf,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aAC9B;iBAAM;gBACL,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aACzB;SACF;aAAM;YACL,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;SACrB;KACF;;;;IAED,kCAAQ;;;IAAR;KACC;;;;IAED,mCAAS;;;IAAT;QACE,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;YACnD,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,4BAA4B,CAAC,CAAC;YACpE,OAAO;SACR;QACD,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;KACpD;;gBAjDF,SAAS,SAAC;oBACT,QAAQ,EAAE,YAAY;oBACtB,ieAAuC;;iBAExC;;;;gBAPO,sBAAsB;gBACtB,YAAY;gBAFZ,uBAAuB;;;qBAU5B,KAAK;uBACL,KAAK;2BACL,KAAK;0BACL,KAAK;4BACL,MAAM;kCACN,KAAK;;IAwCR,sBAAC;CAnDD,IAmDC;;;IA7CC,6BAAoB;;IACpB,+BAAsB;;IACtB,mCAA0B;;IAC1B,kCAAyB;;IACzB,oCAAiD;;IACjD,0CAA6B;;IAC7B,iCAAsB;;IACtB,sCAA2B;;;;;IAEf,+CAAoD;;;;;IACpD,wCAAmC;;;;;IACnC,6CAAmD;;;;;;;ACtBjE;IAQMC,GAAC,GAAG,MAAM;AAEhB;IA6BE,2BAAoB,eAA+B,EAC/B,YAAyB,EACzB,cAA6B,EAC3B,WAAoC,EACtC,QAAmB;QAJvC,iBAqBC;QArBmB,oBAAe,GAAf,eAAe,CAAgB;QAC/B,iBAAY,GAAZ,YAAY,CAAa;QACzB,mBAAc,GAAd,cAAc,CAAe;QAC3B,gBAAW,GAAX,WAAW,CAAyB;QACtC,aAAQ,GAAR,QAAQ,CAAW;QApB9B,eAAU,GAAG,IAAI,CAAC;QAClB,iBAAY,GAAG,IAAI,CAAC;QAEnB,gBAAW,GAAG,IAAI,YAAY,EAAU,CAAC;QACzC,YAAO,GAAG,IAAI,YAAY,EAAU,CAAC;QACrC,YAAO,GAAG,IAAI,YAAY,EAAW,CAAC;QACtC,cAAS,GAAG,IAAI,YAAY,EAAW,CAAC;QACxC,iBAAY,GAAG,IAAI,YAAY,EAAW,CAAC;QAC3C,aAAQ,GAAG,IAAI,YAAY,EAAU,CAAC;QAEhD,oBAAe,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QACzD,gBAAW,GAAG,iBAAiB,CAAC,cAAc,EAAE,CAAC;QACjD,oBAAe,GAAG,KAAK,CAAC;QAUrB,eAAe,CAAC,OAAO,CAAC,SAAS;;;QAAC;YACjC,KAAI,CAAC,eAAe,GAAG,KAAK,CAAC;SAC9B,EAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC,QAAQ,EAAE,CAAC;QAC1C,cAAc,CAAC,QAAQ,CAAC,SAAS;;;;QAAC,UAAC,CAAC;YAClC,KAAI,CAAC,QAAQ,GAAG,cAAc,CAAC,QAAQ,EAAE,CAAC;SAC3C,EAAC,CAAC;QAEH,YAAY,CAAC,UAAU,CAAC,SAAS;;;;QAAC,UAAC,GAAW;YAC5C,IAAI,KAAI,CAAC,QAAQ,EACjB;gBACE,KAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;aAC1B;SACF,EAAC,CAAC;KACJ;;;;IAED,oCAAQ;;;IAAR;KACC;;;;;IAED,0CAAc;;;;IAAd,UAAe,GAAW;;YAClB,GAAG,IAAI,MAAM,CAAC,WAAW,GAAG,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC,MAAM,CAAC;;YACxL,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC,IAAI;QACtF,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;QACzH,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI,CAAC,CAAC;QACzG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;KAC7G;;;;;IAED,0CAAc;;;;IAAd,UAAe,MAAc;QAC3BA,GAAC,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC9B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACpCA,GAAC,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,OAAO;;;QAAE;;gBACrB,YAAY,GAAG,QAAQ,CAAC,oBAAoB,CAAC,MAAM,CAAC;YAC1D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,EAAE,CAAC,EAAE;gBACvD,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,GAAG,EAAE;oBAChD,YAAY,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;oBACxC,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,GAAG,IAAI,CAAC;iBAChD;aACF;SACF,EAAC,CAAC;KACJ;;;;;IAED,sCAAU;;;;IAAV,UAAW,MAAc;QACvB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;KACjC;;;;;IAED,6CAAiB;;;;IAAjB,UAAkB,MAAM;QACtB,MAAM,CAAC,cAAc,EAAE,CAAC;QACxB,MAAM,CAAC,eAAe,EAAE,CAAC;QACzB,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC;KAC9C;;;;;IAED,uCAAW;;;;IAAX,UAAY,MAAc;QACxB,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KAC5B;;;;;IAED,sCAAU;;;;IAAV,UAAW,KAAK;QACd,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC/B;;;;;IAED,wCAAY;;;;IAAZ,UAAa,KAAK;QAChB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACnC;;;;;IAED,2CAAe;;;;IAAf,UAAgB,KAAK;QACnB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KACzC;;;;;IAED,uCAAW;;;;IAAX,UAAY,MAAM;QAChB,IAAI,CAAC,eAAe,GAAG,CAAC,MAAM,CAAC;KAChC;;gBAlHF,SAAS,SAAC;oBACT,QAAQ,EAAE,cAAc;oBACxB,koDAAyC;;iBAE1C;;;;gBAXO,cAAc;gBAEb,WAAW;gBACX,aAAa;gBANkC,UAAU;gBAAE,SAAS;;;uBAgB1E,KAAK;2BACL,KAAK;uBACL,KAAK;uBACL,KAAK;yBACL,KAAK;4BACL,KAAK;wBACL,KAAK;6BACL,KAAK;+BACL,KAAK;8BAEL,MAAM;0BACN,MAAM;0BACN,MAAM;4BACN,MAAM;+BACN,MAAM;2BACN,MAAM;;IA8FT,wBAAC;CAnHD,IAmHC;;;IA7GC,iCAAuB;;IACvB,qCAA0B;;IAC1B,iCAAsB;;IACtB,iCAAuB;;IACvB,mCAAyB;;IACzB,sCAA4B;;IAC5B,kCAAuB;;IACvB,uCAA2B;;IAC3B,yCAA6B;;IAE7B,wCAAmD;;IACnD,oCAA+C;;IAC/C,oCAAgD;;IAChD,sCAAkD;;IAClD,yCAAqD;;IACrD,qCAAgD;;IAEhD,4CAAyD;;IACzD,wCAAiD;;IACjD,4CAAwB;;IAExB,qCAAkB;;;;;IAEN,4CAAuC;;;;;IACvC,yCAAiC;;;;;IACjC,2CAAqC;;;;;IACrC,wCAA8C;;;;;IAC9C,qCAA2B;;;;;;;AC3CzC;IAKA;KAGC;IAFe,sBAAa,GAAG,WAAW,CAAC;IAC5B,uBAAc,GAAG,YAAY,CAAC;IAC9C,eAAC;CAHD,IAGC;;;IAFC,uBAA0C;;IAC1C,wBAA4C;;AAG9C;IAoBE,8BAAoB,cAA6B,EAC7B,YAAyB,EACvB,WAAoC,EACtC,QAAmB;QAHvC,iBAeC;QAfmB,mBAAc,GAAd,cAAc,CAAe;QAC7B,iBAAY,GAAZ,YAAY,CAAa;QACvB,gBAAW,GAAX,WAAW,CAAyB;QACtC,aAAQ,GAAR,QAAQ,CAAW;QAjB9B,eAAU,GAAe,UAAU,CAAC,OAAO,EAAE,CAAC;QAG9C,SAAI,GAAG,KAAK,CAAC;QACb,gBAAW,GAAG,CAAC,CAAC;QAEf,qBAAgB,GAAG,IAAI,YAAY,EAAc,CAAC;QAClD,eAAU,GAAG,IAAI,YAAY,EAAW,CAAC;QACzC,aAAQ,GAAG,IAAI,YAAY,EAAW,CAAC;QACvC,YAAO,GAAG,IAAI,YAAY,EAAW,CAAC;QACtC,YAAO,GAAG,IAAI,YAAY,EAAW,CAAC;QAQ9C,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC,QAAQ,EAAE,CAAC;QAC1C,cAAc,CAAC,QAAQ,CAAC,SAAS;;;;QAAC,UAAC,CAAC;YAClC,KAAI,CAAC,QAAQ,GAAG,cAAc,CAAC,QAAQ,EAAE,CAAC;SAC3C,EAAC,CAAC;QAEH,YAAY,CAAC,UAAU,CAAC,SAAS;;;;QAAC,UAAC,GAAW;YAC5C,IAAI,KAAI,CAAC,QAAQ,EACjB;gBACE,KAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;aACvB;SACF,EAAC,CAAC;KACJ;;;;IAED,uCAAQ;;;IAAR;KACC;;;;;IAED,0CAAW;;;;IAAX,UAAY,GAAW;QACrB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE,WAAW,EAAE,QAAQ,GAAG,CAAC,IAAE,GAAG,GAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;KACrI;;;;IAED,0CAAW;;;IAAX;QACE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;KAC7C;;;;;IAED,6CAAc;;;;IAAd,UAAe,MAAc;QAC3B,IAAI,CAAC,UAAU,CAAC,QAAQ,GAAG,MAAM,CAAC;QAClC,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;;;;;IAED,yCAAU;;;;IAAV,UAAW,MAAc;QACvB,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,MAAM,CAAC;QAC9B,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;;;;;IAED,0CAAW;;;;IAAX,UAAY,MAAc;QACxB,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,MAAM,CAAC;QAC/B,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;;;;;IAED,yCAAU;;;;IAAV,UAAW,MAAM;QACf,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,MAAM,CAAC;QAC9B,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;;;;;IAED,2CAAY;;;;IAAZ,UAAa,MAAM;QACjB,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC;QAChC,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;;;;;IAED,8CAAe;;;;IAAf,UAAgB,MAAM;QACpB,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,MAAM,CAAC;QACnC,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;;;;IAED,yCAAU;;;IAAV;QACE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC5B;;;;IAED,yCAAU;;;IAAV;QACE,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;QACvB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC9B;;;;IAED,yCAAU;;;IAAV;QACE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC1B;;;;IAED,0CAAW;;;IAAX;QACE,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,aAAa,CAAC;KACjD;;;;IAED,2CAAY;;;IAAZ;QACE,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,cAAc,CAAC;KAClD;;;;IAED,yCAAU;;;IAAV;QACE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACzB;;gBArGF,SAAS,SAAC;oBACT,QAAQ,EAAE,iBAAiB;oBAC3B,gjDAA4C;;iBAE7C;;;;gBAZO,aAAa;gBACZ,WAAW;gBAH+C,UAAU;gBAArB,SAAS;;;6BAgB9D,KAAK;2BACL,KAAK;8BACL,KAAK;uBACL,KAAK;8BACL,KAAK;2BACL,KAAK;mCACL,MAAM;6BACN,MAAM;2BACN,MAAM;0BACN,MAAM;0BACN,MAAM;;IAsFT,2BAAC;CAtGD,IAsGC;;;IAhGC,0CAAuD;;IACvD,wCAA2B;;IAC3B,2CAA6B;;IAC7B,oCAAsB;;IACtB,2CAAyB;;IACzB,wCAA0B;;IAC1B,gDAA4D;;IAC5D,0CAAmD;;IACnD,wCAAiD;;IACjD,uCAAgD;;IAChD,uCAAgD;;IAEhD,wCAAkB;;;;;IAEN,8CAAqC;;;;;IACrC,4CAAiC;;;;;IACjC,2CAA8C;;;;;IAC9C,wCAA2B;;;;;;;ACjCzC;IA4EM,SAAS,GAAG,CAAC,aAAa;IAC9B,GAAG;IACH,YAAY;IACZ,WAAW;IACX,SAAS;IACT,QAAQ;IACR,KAAK;IACL,gBAAgB;IAChB,wBAAwB;IACxB,iBAAiB;IACjB,mBAAmB;IACnB,kBAAkB;IAClB,kBAAkB;IAClB,eAAe;IACf,kBAAkB;IAClB,WAAW;IACX,uBAAuB;IACvB,eAAe;IACf,uBAAuB;IACvB,aAAa;IACb,aAAa;IACb,eAAe;IACf,iBAAiB;IACjB,qBAAqB;IACrB,cAAc;IACd,6BAA6B;IAC7B,kBAAkB;IAClB,mBAAmB;IACnB,0BAA0B;IAC1B,8BAA8B;IAC9B,sBAAsB,CAAC;AAEzB;IAoGE;QACE,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;KACvB;;gBAtGF,QAAQ,SAAC;oBACR,OAAO,EAAE,CAAC,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,CAAC;oBAC9D,YAAY,EAAE;wBACZ,mBAAmB;wBACnB,kBAAkB;wBAClB,eAAe;wBACf,aAAa;wBACb,gBAAgB;wBAChB,cAAc;wBACd,yBAAyB;wBACzB,iBAAiB;wBACjB,aAAa;wBACb,gBAAgB;wBAChB,wBAAwB;wBACxB,iBAAiB;wBACjB,mBAAmB;wBACnB,uBAAuB;wBACvB,YAAY;wBACZ,mBAAmB;wBACnB,mBAAmB;wBACnB,aAAa;wBACb,eAAe;wBACf,uBAAuB;wBACvB,iBAAiB;wBACjB,kBAAkB;wBAClB,oBAAoB;wBACpB,mBAAmB;wBACnB,yBAAyB;wBACzB,eAAe;wBACf,mBAAmB;wBACnB,uBAAuB;wBACvB,YAAY;wBACZ,aAAa;wBACb,oBAAoB;wBACpB,mBAAmB;wBACnB,qBAAqB;wBACrB,eAAe;wBACf,oBAAoB;wBACpB,iBAAiB;wBACjB,qBAAqB;wBACrB,sBAAsB;wBACtB,uBAAuB;wBACvB,oBAAoB;wBACpB,gBAAgB;wBAChB,oBAAoB;wBACpB,iBAAiB;wBACjB,eAAe;wBACf,iBAAiB;wBACjB,oBAAoB;qBACrB;oBACD,OAAO,EAAE;wBACP,mBAAmB;wBACnB,kBAAkB;wBAClB,eAAe;wBACf,aAAa;wBACb,gBAAgB;wBAChB,cAAc;wBACd,yBAAyB;wBACzB,iBAAiB;wBACjB,aAAa;wBACb,wBAAwB;wBACxB,iBAAiB;wBACjB,mBAAmB;wBACnB,gBAAgB;wBAChB,uBAAuB;wBACvB,mBAAmB;wBACnB,mBAAmB;wBACnB,eAAe;wBACf,iBAAiB;wBACjB,kBAAkB;wBAClB,oBAAoB;wBACpB,mBAAmB;wBACnB,yBAAyB;wBACzB,eAAe;wBACf,mBAAmB;wBACnB,uBAAuB;wBACvB,YAAY;wBACZ,aAAa;wBACb,oBAAoB;wBACpB,mBAAmB;wBACnB,qBAAqB;wBACrB,oBAAoB;wBACpB,YAAY;wBACZ,iBAAiB;wBACjB,qBAAqB;wBACrB,sBAAsB;wBACtB,uBAAuB;wBACvB,aAAa;wBACb,uBAAuB;wBACvB,oBAAoB;wBACpB,gBAAgB;wBAChB,oBAAoB;wBACpB,iBAAiB;wBACjB,eAAe;wBACf,iBAAiB;wBACjB,oBAAoB;qBACrB;oBACD,SAAS,EAAE,SAAS;iBACrB;;;;IAKD,6BAAC;CAvGD;;;;;;;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"groupdocs.examples.angular-common-components.js","sources":["ng://@groupdocs.examples.angular/common-components/lib/top-toolbar/top-toolbar.component.ts","ng://@groupdocs.examples.angular/common-components/lib/side-panel/side-panel.component.ts","ng://@groupdocs.examples.angular/common-components/lib/window.service.ts","ng://@groupdocs.examples.angular/common-components/lib/button/button.component.ts","ng://@groupdocs.examples.angular/common-components/lib/logo/logo.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tooltip/tooltip.component.ts","ng://@groupdocs.examples.angular/common-components/lib/config.service.ts","ng://@groupdocs.examples.angular/common-components/lib/modal.service.ts","ng://@groupdocs.examples.angular/common-components/lib/modal/modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/file.service.ts","ng://@groupdocs.examples.angular/common-components/lib/upload-files.service.ts","ng://@groupdocs.examples.angular/common-components/lib/browse-files-modal/browse-files-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/zoom.service.ts","ng://@groupdocs.examples.angular/common-components/lib/page-preload.service.ts","ng://@groupdocs.examples.angular/common-components/lib/navigate.service.ts","ng://@groupdocs.examples.angular/common-components/lib/document/document.component.ts","ng://@groupdocs.examples.angular/common-components/lib/page/page.component.ts","ng://@groupdocs.examples.angular/common-components/lib/pipes.ts","ng://@groupdocs.examples.angular/common-components/lib/upload-file-zone/upload-file-zone.component.ts","ng://@groupdocs.examples.angular/common-components/lib/dnd.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/viewport.service.ts","ng://@groupdocs.examples.angular/common-components/lib/scrollable.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/mousewheel.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/zoom.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/on-close.service.ts","ng://@groupdocs.examples.angular/common-components/lib/select/select.component.ts","ng://@groupdocs.examples.angular/common-components/lib/disabled-cursor.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/rotation.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/init-state/init-state.component.ts","ng://@groupdocs.examples.angular/common-components/lib/render-print.service.ts","ng://@groupdocs.examples.angular/common-components/lib/render-print.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/exception-message.service.ts","ng://@groupdocs.examples.angular/common-components/lib/error-modal/error-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/password.service.ts","ng://@groupdocs.examples.angular/common-components/lib/password-required/password-required.component.ts","ng://@groupdocs.examples.angular/common-components/lib/error-interceptor.service.ts","ng://@groupdocs.examples.angular/common-components/lib/search.service.ts","ng://@groupdocs.examples.angular/common-components/lib/search/search.component.ts","ng://@groupdocs.examples.angular/common-components/lib/searchable.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/tabbed-toolbars/tabbed-toolbars.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tab-activator.service.ts","ng://@groupdocs.examples.angular/common-components/lib/tab/tab.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tabs/tabs.component.ts","ng://@groupdocs.examples.angular/common-components/lib/formatting.service.ts","ng://@groupdocs.examples.angular/common-components/lib/color-picker/color-picker.component.ts","ng://@groupdocs.examples.angular/common-components/lib/back-formatting.service.ts","ng://@groupdocs.examples.angular/common-components/lib/selection.service.ts","ng://@groupdocs.examples.angular/common-components/lib/formatting.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/success-modal/success-modal.component.ts","ng://@groupdocs.examples.angular/common-components/lib/edit-html.service.ts","ng://@groupdocs.examples.angular/common-components/lib/editor.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask.service.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask/loading-mask.component.ts","ng://@groupdocs.examples.angular/common-components/lib/loading-mask-interceptor.service.ts","ng://@groupdocs.examples.angular/common-components/lib/drop-down/drop-down.component.ts","ng://@groupdocs.examples.angular/common-components/lib/left-side-bar/left-side-bar.component.ts","ng://@groupdocs.examples.angular/common-components/lib/tooltip.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/add-dynamic-component.service.ts","ng://@groupdocs.examples.angular/common-components/lib/hosting-dynamic-component.service.ts","ng://@groupdocs.examples.angular/common-components/lib/host-dynamic.directive.ts","ng://@groupdocs.examples.angular/common-components/lib/resizing/resizing.component.ts","ng://@groupdocs.examples.angular/common-components/lib/top-tab-activator.service.ts","ng://@groupdocs.examples.angular/common-components/lib/top-tab/top-tab.component.ts","ng://@groupdocs.examples.angular/common-components/lib/text-menu/text-menu.component.ts","ng://@groupdocs.examples.angular/common-components/lib/context-menu/context-menu.component.ts","ng://@groupdocs.examples.angular/common-components/lib/common-components.module.ts"],"sourcesContent":["import {Component, Input} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-top-toolbar',\r\n templateUrl: './top-toolbar.component.html',\r\n styleUrls: ['./top-toolbar.component.less']\r\n})\r\nexport class TopToolbarComponent {\r\n\r\n constructor() {\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-side-panel',\r\n templateUrl: './side-panel.component.html',\r\n styleUrls: ['./side-panel.component.less']\r\n})\r\n\r\nexport class SidePanelComponent {\r\n @Input() title: string;\r\n @Input() icon: string;\r\n @Input() closable = true;\r\n @Input() saveable = true;\r\n @Output() hideSidePanel = new EventEmitter();\r\n @Output() saveInSidePanel = new EventEmitter();\r\n\r\n onlyTitle = false;\r\n\r\n constructor() {\r\n }\r\n\r\n closeSidePanel() {\r\n this.hideSidePanel.emit(true);\r\n }\r\n\r\n saveBySidePanel() {\r\n this.saveInSidePanel.emit(true);\r\n }\r\n\r\n toggleTitleMode(){\r\n if (this.closable && !this.saveable) {\r\n this.onlyTitle = !this.onlyTitle;\r\n }\r\n }\r\n}\r\n","import {fromEvent, Observable, Subject} from \"rxjs\";\r\nimport {debounceTime, distinctUntilChanged, startWith, tap} from \"rxjs/operators\";\r\n\r\nconst MOBILE_MAX_WIDTH = 425;\r\nconst TABLET_MAX_WIDTH = 1024;\r\n\r\nexport class WindowService {\r\n\r\n private resizeSubject: Subject = new Subject();\r\n private _resize$;\r\n private width: number;\r\n private height: number;\r\n\r\n constructor() {\r\n this.width = window.innerWidth;\r\n this.height = window.innerHeight;\r\n\r\n this._resize$ = fromEvent(window, 'resize')\r\n .pipe(\r\n debounceTime(200),\r\n distinctUntilChanged(),\r\n startWith({target: {innerWidth: window.innerWidth, innerHeight: window.innerHeight}}),\r\n tap(event => {\r\n this.resizeSubject.next(event.target);\r\n this.width = (event.target as Window).innerWidth;\r\n this.height = (event.target as Window).innerHeight;\r\n }),\r\n );\r\n this._resize$.subscribe();\r\n }\r\n\r\n get onResize(): Observable {\r\n return this.resizeSubject.asObservable();\r\n }\r\n\r\n isMobile() {\r\n return this.width <= MOBILE_MAX_WIDTH;\r\n }\r\n\r\n isTablet() {\r\n return this.width <= TABLET_MAX_WIDTH;\r\n }\r\n\r\n isDesktop() {\r\n return !this.isMobile() && !this.isTablet();\r\n }\r\n\r\n getWidth() {\r\n return this.width;\r\n }\r\n\r\n getHeight() {\r\n return this.height;\r\n }\r\n\r\n isEdge() {\r\n return window.navigator.userAgent.toLowerCase().indexOf('edge') > -1;\r\n }\r\n\r\n isFirefox() {\r\n return navigator.userAgent.toLowerCase().indexOf('firefox') > -1;\r\n }\r\n}\r\n","import {Component, Input} from '@angular/core';\r\nimport {WindowService} from \"../window.service\";\r\n\r\n@Component({\r\n selector: 'gd-button',\r\n templateUrl: './button.component.html',\r\n styleUrls: ['./button.component.less']\r\n})\r\nexport class ButtonComponent {\r\n @Input() iconOnly = true;\r\n @Input() intent = 'default';\r\n @Input() disabled = false;\r\n @Input() icon: string;\r\n @Input() iconClass: string;\r\n @Input() tooltip: string;\r\n @Input() className: string;\r\n @Input() toggle = false;\r\n @Input() iconSize: string;\r\n @Input() iconRegular = false;\r\n @Input() elementPosition = 0;\r\n\r\n showToolTip = false;\r\n private isDesktop: boolean;\r\n\r\n constructor(windowService: WindowService) {\r\n this.isDesktop = windowService.isDesktop();\r\n windowService.onResize.subscribe((w) => {\r\n this.isDesktop = windowService.isDesktop();\r\n });\r\n }\r\n\r\n iconButtonClass() {\r\n return this.iconOnly ? 'icon-button' : '';\r\n }\r\n\r\n onHovering() {\r\n if (this.isDesktop && !this.disabled) {\r\n this.className += ' active';\r\n }\r\n }\r\n\r\n onUnhovering() {\r\n if (this.isDesktop && !this.disabled) {\r\n this.className = this.cleanAll(this.className, ' active');\r\n }\r\n }\r\n\r\n private cleanAll(str: string, val: string) {\r\n while (str && str.indexOf(val) !== -1) {\r\n str = str.replace(val, '');\r\n }\r\n return str;\r\n }\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-logo',\r\n templateUrl: './logo.component.html',\r\n styleUrls: ['./logo.component.less']\r\n})\r\nexport class LogoComponent implements OnInit {\r\n\r\n @Input() logo;\r\n @Input() icon;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-tooltip',\r\n templateUrl: './tooltip.component.html',\r\n styleUrls: ['./tooltip.component.less']\r\n})\r\nexport class TooltipComponent implements OnInit {\r\n\r\n @Input() text: string;\r\n @Input() position = 0;\r\n visibility = 'hidden';\r\n\r\n constructor() {\r\n }\r\n\r\n getClass() {\r\n if (this.position === 0) {\r\n return 'tooltip';\r\n }\r\n return 'tooltip ' + (this.position > 0 ? 'last-element' : 'first-element');\r\n }\r\n\r\n @Input()\r\n set show(value: boolean) {\r\n this.visibility = value ? 'shown' : 'hidden';\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {HttpHeaders} from \"@angular/common/http\";\r\nimport {Injectable} from \"@angular/core\";\r\n\r\nexport class Api {\r\n public static VIEWER_APP = '/viewer';\r\n public static SIGNATURE_APP = '/signature';\r\n public static ANNOTATION_APP = '/annotation';\r\n public static SEARCH_APP = '/search';\r\n public static EDITOR_APP = '/editor';\r\n public static COMPARISON_APP = '/comparison';\r\n public static CONVERSION_APP = '/conversion';\r\n public static METADATA_APP = '/metadata';\r\n public static DEFAULT_API_ENDPOINT = window.location.href;\r\n public static LOAD_FILE_TREE = '/loadFileTree';\r\n public static LOAD_CONFIG = '/loadConfig';\r\n public static LOAD_DOCUMENT_DESCRIPTION = '/loadDocumentDescription';\r\n public static LOAD_DOCUMENT_PAGE = '/loadDocumentPage';\r\n public static LOAD_DOCUMENT_PROPERTIES = '/loadProperties';\r\n public static LOAD_DOCUMENT_PROPERTIES_NAMES = '/loadPropertiesNames';\r\n public static SAVE_PROPERTY = '/saveProperty';\r\n public static REMOVE_PROPERTY = '/removeProperty';\r\n public static ROTATE_DOCUMENT_PAGE = '/rotateDocumentPages';\r\n public static UPLOAD_DOCUMENTS = '/uploadDocument';\r\n public static DOWNLOAD_DOCUMENTS = '/downloadDocument';\r\n public static LOAD_PRINT = '/loadPrint';\r\n public static LOAD_PRINT_PDF = '/printPdf';\r\n public static LOAD_THUMBNAILS = '/loadThumbnails';\r\n public static LOAD_FORMATS = '/loadFormats';\r\n public static SAVE_FILE = '/saveFile';\r\n public static CREATE_FILE = '/createFile';\r\n public static COMPARE_FILES = '/compare';\r\n public static CONVERT_FILE = '/convert';\r\n public static DELETE_SIGNATURE_FILE = '/deleteSignatureFile';\r\n public static REMOVE_FROM_INDEX = '/removeFromIndex';\r\n public static GET_FILE_STATUS = '/getFileStatus';\r\n public static SAVE_OPTICAL_CODE = '/saveOpticalCode';\r\n public static SAVE_TEXT = '/saveText';\r\n public static SAVE_IMAGE = '/saveImage';\r\n public static SAVE_STAMP = '/saveStamp';\r\n public static SIGN = '/sign';\r\n public static DOWNLOAD_SIGNED = '/downloadSigned';\r\n public static LOAD_SIGNATURE_IMAGE = '/loadSignatureImage';\r\n public static ANNOTATE = '/annotate';\r\n public static SEARCH = '/search';\r\n public static ADD_FILES_TO_INDEX = '/addFilesToIndex';\r\n\r\n public static httpOptionsJson = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n })\r\n };\r\n public static httpOptionsJsonResponseTypeBlob = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n }),\r\n responseType: 'blob' as 'blob'\r\n };\r\n}\r\n\r\n@Injectable()\r\nexport class ConfigService {\r\n\r\n private _apiEndpoint: string;\r\n\r\n constructor() {\r\n this.apiEndpoint = Api.DEFAULT_API_ENDPOINT;\r\n }\r\n\r\n set apiEndpoint(url: string) {\r\n this._apiEndpoint = url && url.trim().endsWith('/') ? url.substring(0, url.length - 1) : url;\r\n }\r\n\r\n getConfigEndpoint(app) {\r\n return (this.apiEndpoint.endsWith(app) ? this.apiEndpoint : this.apiEndpoint + app) + Api.LOAD_CONFIG;\r\n }\r\n\r\n getViewerApiEndpoint() {\r\n return this._apiEndpoint.endsWith(Api.VIEWER_APP) ? this._apiEndpoint : this._apiEndpoint + Api.VIEWER_APP;\r\n }\r\n\r\n getEditorApiEndpoint() {\r\n return this._apiEndpoint.trim().endsWith(Api.EDITOR_APP) ? this._apiEndpoint : this._apiEndpoint + Api.EDITOR_APP;\r\n }\r\n\r\n getComparisonApiEndpoint() {\r\n return this._apiEndpoint.trim().endsWith(Api.COMPARISON_APP) ? this._apiEndpoint : this._apiEndpoint + Api.COMPARISON_APP;\r\n }\r\n\r\n getConversionApiEndpoint() {\r\n return this._apiEndpoint.trim().endsWith(Api.CONVERSION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.CONVERSION_APP;\r\n }\r\n\r\n getMetadataApiEndpoint() {\r\n return this._apiEndpoint.trim().endsWith(Api.METADATA_APP) ? this._apiEndpoint : this._apiEndpoint + Api.METADATA_APP;\r\n }\r\n\r\n get apiEndpoint() {\r\n return this._apiEndpoint;\r\n }\r\n\r\n getSignatureApiEndpoint() {\r\n return this._apiEndpoint.endsWith(Api.SIGNATURE_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SIGNATURE_APP;\r\n }\r\n\r\n getAnnotationApiEndpoint() {\r\n return this._apiEndpoint.endsWith(Api.ANNOTATION_APP) ? this._apiEndpoint : this._apiEndpoint + Api.ANNOTATION_APP;\r\n }\r\n\r\n getSearchApiEndpoint() {\r\n return this._apiEndpoint.endsWith(Api.SEARCH_APP) ? this._apiEndpoint : this._apiEndpoint + Api.SEARCH_APP;\r\n }\r\n}\r\n","export class CommonModals {\r\n static PasswordRequired = \"gd-password-required\";\r\n static ErrorMessage = \"gd-error-message\";\r\n static BrowseFiles = \"gd-browse-files\";\r\n static CreateDocument = \"gd-create-document\";\r\n static OperationSuccess = \"gd-success-modal\";\r\n static DrawHandSignature = \"gd-draw-hand-signature\";\r\n static DrawStampSignature = \"gd-draw-stamp-signature\";\r\n static InformationMessage = \"gd-information-message\";\r\n}\r\n\r\nexport class ModalService {\r\n private modals: any[] = [];\r\n\r\n add(modal: any) {\r\n this.modals.push(modal);\r\n }\r\n\r\n remove(id: string) {\r\n this.modals = this.modals.filter(x => x.id !== id);\r\n }\r\n\r\n open(id: string) {\r\n const modal: any = this.modals.filter(x => x.id === id)[0];\r\n if (modal) {\r\n modal.open();\r\n }\r\n }\r\n\r\n close(id: string) {\r\n const modal: any = this.modals.filter(x => x.id === id)[0];\r\n if (modal) {\r\n modal.close();\r\n }\r\n }\r\n}\r\n","import {Component, ElementRef, EventEmitter, Input, OnDestroy, OnInit, Output} from '@angular/core';\r\nimport {ModalService} from \"../modal.service\";\r\n\r\n@Component({\r\n selector: 'gd-modal',\r\n templateUrl: './modal.component.html',\r\n styleUrls: ['./modal.component.less']\r\n})\r\nexport class ModalComponent implements OnInit, OnDestroy {\r\n @Input() id: string;\r\n @Input() title: string;\r\n @Output() visible = new EventEmitter();\r\n @Output() cancel = new EventEmitter();\r\n visibility = false;\r\n private element: any;\r\n\r\n constructor(private modalService: ModalService, el: ElementRef) {\r\n this.element = el.nativeElement;\r\n }\r\n\r\n ngOnInit(): void {\r\n if (!this.id) {\r\n console.error('modal must have an id');\r\n return;\r\n }\r\n\r\n document.body.appendChild(this.element);\r\n\r\n this.modalService.add(this);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.modalService.remove(this.id);\r\n this.element.remove();\r\n }\r\n\r\n open(): void {\r\n this.visibility = true;\r\n this.visible.emit(true);\r\n }\r\n\r\n close(): void {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.visibility = false;\r\n this.visible.emit(false);\r\n }\r\n\r\n onClose($event: MouseEvent) {\r\n $event.stopPropagation();\r\n if ($event && $event.target && ($event.target).id === 'modalDialog') {\r\n this.close();\r\n }\r\n }\r\n\r\n cancelClose() {\r\n this.cancel.emit(false);\r\n this.close();\r\n }\r\n}\r\n","export class PageModel {\r\n data: string;\r\n angle: number;\r\n width: number;\r\n height: number;\r\n number: number;\r\n editable: boolean;\r\n}\r\n\r\nexport class RotatedPage {\r\n pageNumber: number;\r\n angle: number;\r\n}\r\n\r\nexport class FileCredentials {\r\n guid: string;\r\n password: string;\r\n\r\n constructor(guid: string, password: string) {\r\n this.guid = guid;\r\n this.password = password;\r\n }\r\n}\r\n\r\nexport class SaveFile extends FileCredentials {\r\n content: string;\r\n\r\n constructor(guid: string, password: string, content: string) {\r\n super(guid, password);\r\n this.content = content;\r\n }\r\n}\r\n\r\nexport class FileDescription {\r\n guid: string;\r\n pages: PageModel[];\r\n printAllowed = true;\r\n showGridLines: boolean;\r\n thumbnails: PageModel[];\r\n}\r\n\r\nexport class FileModel {\r\n guid: string;\r\n name: string;\r\n directory: boolean;\r\n size: number;\r\n isDirectory: boolean;\r\n}\r\n\r\nexport class HttpError {\r\n static BadRequest = 400;\r\n static Unauthorized = 401;\r\n static Forbidden = 403;\r\n static NotFound = 404;\r\n static TimeOut = 408;\r\n static Conflict = 409;\r\n static InternalServerError = 500;\r\n}\r\n\r\nexport class Utils {\r\n public static getMousePosition(event) {\r\n const mouse = {\r\n x: 0,\r\n y: 0\r\n };\r\n const wEvent: DragEvent = window.event;\r\n const ev = event || wEvent; //Moz || IE\r\n if (ev.pageX || wEvent.pageX || wEvent.screenX || (ev.touches && ev.touches[0] && ev.touches[0].pageX)) { //Moz\r\n const pageX = typeof ev.pageX !== \"undefined\" && ev.pageX !== 0 ? ev.pageX : wEvent.pageX;\r\n const pageY = typeof ev.pageY !== \"undefined\" && ev.pageY !== 0 ? ev.pageY : wEvent.pageY;\r\n const screenX = typeof wEvent.screenX !== \"undefined\" && wEvent.screenY !== 0;\r\n const screenY = typeof wEvent.screenY !== \"undefined\" && wEvent.screenY !== 0;\r\n mouse.x = pageX ? pageX : (screenX ? wEvent.screenX : ev.touches[0].pageX);\r\n mouse.y = pageY ? pageY : (screenY ? wEvent.screenY : ev.touches[0].pageY);\r\n } else if (ev.clientX) { //IE\r\n mouse.x = ev.clientX + document.body.scrollLeft;\r\n mouse.y = ev.clientY + document.body.scrollTop;\r\n }\r\n return mouse;\r\n }\r\n\r\n public static toRgb(color: string) {\r\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(color);\r\n if (result) {\r\n const r = parseInt(result[1], 16);\r\n const g = parseInt(result[2], 16);\r\n const b = parseInt(result[3], 16);\r\n return result ? 'rgb(' + r + ',' + g + ',' + b + ')' : '';\r\n }\r\n return color;\r\n }\r\n\r\n public static toHex(color: string) {\r\n // check if color is standard hex value\r\n if (color.match(/[0-9A-F]{6}|[0-9A-F]{3}$/i)) {\r\n return (color.charAt(0) === \"#\") ? color : (\"#\" + color);\r\n // check if color is RGB value -> convert to hex\r\n } else if (color.match(/^rgb\\(\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*\\)$/)) {\r\n const c = ([parseInt(RegExp.$1, 10), parseInt(RegExp.$2, 10), parseInt(RegExp.$3, 10)]),\r\n pad = function (str) {\r\n if (str.length < 2) {\r\n for (let i = 0, len = 2 - str.length; i < len; i++) {\r\n str = '0' + str;\r\n }\r\n }\r\n return str;\r\n };\r\n if (c.length === 3) {\r\n const r = pad(c[0].toString(16)),\r\n g = pad(c[1].toString(16)),\r\n b = pad(c[2].toString(16));\r\n return '#' + r + g + b;\r\n }\r\n // else do nothing\r\n } else {\r\n return '';\r\n }\r\n }\r\n}\r\n\r\nexport class FileUtil {\r\n public static map = {\r\n 'folder': {'format': '', 'icon': 'folder'},\r\n 'pdf': {'format': 'Portable Document Format', 'icon': 'file-pdf', 'unit': 'pt'},\r\n 'doc': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'docx': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'docm': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'dot': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'dotx': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'dotm': {'format': 'Microsoft Word', 'icon': 'file-word', 'unit': 'pt'},\r\n 'xls': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xlsx': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xlsm': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xlsb': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xls2003': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xltx': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'xltm': {'format': 'Microsoft Excel', 'icon': 'file-excel', 'unit': 'px'},\r\n 'ppt': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'pptx': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'pps': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'ppsx': {'format': 'Microsoft PowerPoint', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'vsd': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vdx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vss': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vsx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vst': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vtx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vsdx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vdw': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vstx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'vssx': {'format': 'Microsoft Visio', 'icon': 'file-code', 'unit': 'px'},\r\n 'mpp': {'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'mpt': {'format': 'Microsoft Project', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'msg': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'eml': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'emlx': {'format': 'Microsoft Outlook', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'one': {'format': 'Microsoft OneNote', 'icon': 'file-word', 'unit': 'pt'},\r\n 'odt': {'format': 'Open Document Text', 'icon': 'file-word', 'unit': 'pt'},\r\n 'ott': {'format': 'Open Document Text Template', 'icon': 'file-word', 'unit': 'pt'},\r\n 'ods': {'format': 'Open Document Spreadsheet', 'icon': 'file-excel', 'unit': 'px'},\r\n 'odp': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'otp': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'ots': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'potx': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'potm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'pptm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'ppsm': {'format': 'Open Document Presentation', 'icon': 'file-powerpoint', 'unit': 'pt'},\r\n 'rtf': {'format': 'Rich Text Format', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'txt': {'format': 'Plain Text File', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'csv': {'format': 'Comma-Separated Values', 'icon': 'file-excel', 'unit': 'px'},\r\n 'html': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\r\n 'mht': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\r\n 'mhtml': {'format': 'HyperText Markup Language', 'icon': 'file-word', 'unit': 'pt'},\r\n 'xml': {'format': 'Extensible Markup Language', 'icon': 'file-word', 'unit': 'pt'},\r\n 'xps': {'format': 'XML Paper Specification', 'icon': 'file-word', 'unit': 'pt'},\r\n 'dxf': {'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'dwg': {'format': 'AutoCAD Drawing File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'bmp': {'format': 'Bitmap Picture', 'icon': 'file-image', 'unit': 'px'},\r\n 'gif': {'format': 'Graphics Interchange Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'jpg': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\r\n 'jpe': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\r\n 'jpeg': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\r\n 'jfif': {'format': 'Joint Photographic Experts Group', 'icon': 'file-image', 'unit': 'px'},\r\n 'png': {'format': 'Portable Network Graphics', 'icon': 'file-image', 'unit': 'px'},\r\n 'tiff': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'tif': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'psd': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'svg': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'jp2': {'format': 'Tagged Image File Format', 'icon': 'file-image', 'unit': 'px'},\r\n 'epub': {'format': 'Electronic Publication', 'icon': 'file-pdf', 'unit': 'pt'},\r\n 'ico': {'format': 'Windows Icon', 'icon': 'file-image', 'unit': 'px'},\r\n 'webp': {'format': 'Compressed Image', 'icon': 'file-image', 'unit': 'px'},\r\n 'mobi': {'format': 'Mobipocket eBook', 'icon': 'file-pdf', 'unit': 'pt'},\r\n 'tex': {'format': 'LaTeX Source Document', 'icon': 'file-pdf', 'unit': 'pt'},\r\n 'djvu': {'format': 'Multi-Layer Raster Image', 'icon': 'file-alt', 'unit': 'pt'},\r\n 'unknown': {'format': 'This format is not supported', 'icon': 'file'},\r\n };\r\n\r\n public static find(filename: string, isDirectory: boolean) {\r\n if (filename && !isDirectory) {\r\n const strings = filename.split('.');\r\n const name = strings.pop().toLowerCase();\r\n if (typeof FileUtil.map[name] === \"undefined\") {\r\n return strings.length > 0 ? FileUtil.map['unknown'] : FileUtil.map['folder'];\r\n } else {\r\n return FileUtil.map[name];\r\n }\r\n } else {\r\n return FileUtil.map['folder'];\r\n }\r\n }\r\n}\r\n\r\nexport class FileService {\r\n\r\n constructor() {\r\n }\r\n}\r\n","import {Observable, Observer} from \"rxjs\";\r\n\r\nexport class UploadFilesService {\r\n private _uploadsChange: Observable;\r\n private _observer: Observer;\r\n\r\n constructor() {\r\n this._uploadsChange = new Observable(observer =>\r\n this._observer = observer);\r\n }\r\n\r\n get uploadsChange(): Observable {\r\n return this._uploadsChange;\r\n }\r\n\r\n changeFilesList(filesList: FileList) {\r\n this._observer.next(filesList);\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {FileModel, FileUtil} from \"../file.service\";\r\nimport {UploadFilesService} from \"../upload-files.service\";\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\nconst upload_disc = 'Disc';\r\n\r\nconst upload_url = 'URL';\r\n\r\nconst uploads_choices = [{name: upload_disc, icon: 'hdd'}, {name: upload_url, icon: 'link'}];\r\n\r\n@Component({\r\n selector: 'gd-browse-files-modal',\r\n templateUrl: './browse-files-modal.component.html',\r\n styleUrls: ['./browse-files-modal.component.less']\r\n})\r\nexport class BrowseFilesModalComponent implements OnInit {\r\n uploads = uploads_choices;\r\n\r\n @Input() files;\r\n @Input() uploadConfig;\r\n @Output() selectedFileGuid = new EventEmitter();\r\n @Output() selectedDirectory = new EventEmitter();\r\n @Output() urlForUpload = new EventEmitter();\r\n @Output() closing = new EventEmitter();\r\n private selectedFile: FileModel;\r\n showUploadUrl = false;\r\n showUploadFile = false;\r\n\r\n constructor(private _uploadService: UploadFilesService) {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n getSize(size: number) {\r\n const mb = size / 1024 / 1024;\r\n if (mb > 1) {\r\n return (Math.round(mb * 100) / 100) + ' MB';\r\n } else {\r\n const kb = size / 1024;\r\n if (kb > 1) {\r\n return (Math.round(kb * 100) / 100) + ' KB';\r\n }\r\n }\r\n return size + ' Bytes';\r\n }\r\n\r\n getFormatName(file: FileModel) {\r\n return FileUtil.find(file.name, file.directory).format;\r\n }\r\n\r\n getFormatIcon(file: FileModel) {\r\n return FileUtil.find(file.name, file.directory).icon;\r\n }\r\n\r\n choose(file: FileModel) {\r\n this.selectedFile = file;\r\n if (file.directory || file.isDirectory) {\r\n this.selectedDirectory.emit(file.name);\r\n } else {\r\n this.selectedFileGuid.emit(file.guid);\r\n }\r\n }\r\n\r\n goUp() {\r\n if (this.selectedFile) {\r\n let guid = this.selectedFile.guid;\r\n if (guid.length > 0 && guid.indexOf('/') === -1) {\r\n guid = '';\r\n } else {\r\n guid = guid.replace(/\\/[^\\/]+\\/?$/, '');\r\n }\r\n this.selectedDirectory.emit(guid);\r\n }\r\n }\r\n\r\n selectUpload($event: string) {\r\n if (upload_url === $event) {\r\n this.showUploadUrl = true;\r\n } else {\r\n this.showUploadUrl = false;\r\n $(\"#gd-upload-input\").trigger('click');\r\n }\r\n }\r\n\r\n refresh($event) {\r\n\r\n if ($event) {\r\n this.files = null;\r\n this.selectedDirectory.emit('');\r\n this.showUploadUrl = false;\r\n this.selectedFile = null;\r\n } else {\r\n this.closing.emit(true);\r\n }\r\n }\r\n\r\n showSpinner() {\r\n return !this.files;\r\n }\r\n\r\n uploadUrl(url: string) {\r\n if (url) {\r\n this.urlForUpload.emit(url);\r\n this.cleanUpload();\r\n }\r\n }\r\n\r\n handleFileInput(files: FileList) {\r\n this._uploadService.changeFilesList(files);\r\n }\r\n\r\n cleanUpload() {\r\n this.showUploadFile = false;\r\n this.showUploadUrl = false;\r\n }\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class ZoomService {\r\n private _observer: Subject = new Subject();\r\n private readonly _zoomChange: Observable = this._observer.asObservable();\r\n private _zoom: number;\r\n\r\n constructor() {\r\n }\r\n\r\n get zoom(): number {\r\n return this._zoom;\r\n }\r\n\r\n get zoomChange(): Observable {\r\n return this._zoomChange;\r\n }\r\n\r\n changeZoom(zoom: number) {\r\n this._zoom = zoom;\r\n this._observer.next(zoom);\r\n }\r\n\r\n private createZoomOption(val: any, name: string, sep: boolean = false) {\r\n return {value: val, name: name, separator: sep}\r\n }\r\n\r\n zoomOptions(width, height) {\r\n return [this.createZoomOption(25, '25%'),\r\n this.createZoomOption(50, '50%'),\r\n this.createZoomOption(100,'100%'),\r\n this.createZoomOption(150, '150%'),\r\n this.createZoomOption(200, '200%'),\r\n this.createZoomOption(300, '300%'),\r\n this.createZoomOption(0, '', true),\r\n this.createZoomOption(width, 'Fit Width'),\r\n this.createZoomOption(height, 'Fit Height')];\r\n }\r\n}\r\n","import {Observable, Observer} from \"rxjs\";\r\n\r\nexport class PagePreloadService {\r\n private readonly _checkPreload: Observable;\r\n private _observer: Observer;\r\n\r\n constructor() {\r\n this._checkPreload = new Observable(observer =>\r\n this._observer = observer);\r\n }\r\n\r\n get checkPreload(): Observable {\r\n return this._checkPreload;\r\n }\r\n\r\n changeLastPageInView(page: number) {\r\n if(this._observer) {\r\n this._observer.next(page);\r\n }\r\n }\r\n}\r\n","import {BehaviorSubject, Observable} from \"rxjs\";\r\nimport {PagePreloadService} from \"./page-preload.service\";\r\nimport {Injectable} from \"@angular/core\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NavigateService {\r\n private _currentPage = 0;\r\n private _countPages = 0;\r\n private _observer: BehaviorSubject = new BehaviorSubject(null);\r\n private _navigate: Observable = this._observer.asObservable();\r\n\r\n constructor(private _pagePreloadService: PagePreloadService) {\r\n }\r\n\r\n get navigate(): Observable {\r\n return this._navigate;\r\n }\r\n\r\n get countPages(): number {\r\n return this._countPages;\r\n }\r\n\r\n set countPages(value: number) {\r\n this._countPages = value;\r\n }\r\n\r\n get currentPage(): number {\r\n return this._currentPage;\r\n }\r\n\r\n set currentPage(value: number) {\r\n this._currentPage = value;\r\n }\r\n\r\n nextPage() {\r\n if (this._currentPage < this._countPages) {\r\n this._currentPage++;\r\n this.navigateTo(this._currentPage);\r\n }\r\n }\r\n\r\n prevPage() {\r\n if (this._currentPage > 1) {\r\n this._currentPage--;\r\n this.navigateTo(this._currentPage);\r\n }\r\n }\r\n\r\n toLastPage() {\r\n this._currentPage = this._countPages;\r\n this.navigateTo(this._currentPage);\r\n }\r\n\r\n toFirstPage() {\r\n this._currentPage = 1;\r\n this.navigateTo(this._currentPage);\r\n }\r\n\r\n navigateTo(page: number) {\r\n this.currentPage = page;\r\n this._pagePreloadService.changeLastPageInView(page);\r\n this._observer.next(page);\r\n }\r\n}\r\n","import {\r\n AfterViewChecked,\r\n Component,\r\n ElementRef,\r\n Input,\r\n OnInit,\r\n AfterViewInit,\r\n OnChanges,\r\n Output,\r\n EventEmitter\r\n} from '@angular/core';\r\nimport {FileDescription, FileUtil} from \"../file.service\";\r\nimport {ZoomService} from \"../zoom.service\";\r\nimport * as Hammer from 'hammerjs';\r\nimport {WindowService} from '../window.service';\r\nimport * as jquery from 'jquery';\r\nimport { NavigateService } from '../navigate.service';\r\n\r\nconst $ = jquery;\r\n\r\n@Component({\r\n selector: 'gd-document',\r\n templateUrl: './document.component.html',\r\n styleUrls: ['./document.component.less']\r\n})\r\nexport class DocumentComponent implements OnInit, AfterViewChecked, AfterViewInit, OnChanges {\r\n\r\n @Input() mode: boolean;\r\n @Input() preloadPageCount: number;\r\n @Input() file: FileDescription;\r\n @Input() selectedPage: number;\r\n wait = false;\r\n zoom: number;\r\n\r\n docWidth = null;\r\n docHeight = null;\r\n viewportWidth = null;\r\n viewportHeight = null;\r\n scale = null;\r\n lastScale = null;\r\n container = null;\r\n doc = null;\r\n x = 0;\r\n lastX = 0;\r\n y = 0;\r\n lastY = 0;\r\n pinchCenter = null;\r\n pinchCenterOffset = null;\r\n curWidth = 0;\r\n curHeight = 0;\r\n isDesktop: boolean;\r\n\r\n constructor(protected _elementRef: ElementRef,\r\n private _zoomService: ZoomService,\r\n private _windowService: WindowService,\r\n private _navigateService: NavigateService,) {\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n this.zoom = val;\r\n });\r\n\r\n this.isDesktop = _windowService.isDesktop();\r\n\r\n this._navigateService.navigate.subscribe(((\r\n value => {\r\n this.selectedPage = value;\r\n })));\r\n }\r\n\r\n ngOnInit() {\r\n if (this.ifPresentation())\r\n {\r\n this.selectedPage = this._navigateService.currentPage;\r\n }\r\n }\r\n\r\n ngOnChanges() {\r\n }\r\n\r\n ngAfterViewInit() {\r\n // For current iteration we take .panzoom as a document\r\n this.doc = this._elementRef.nativeElement.children.item(0).children.item(0);\r\n // For current iteration we take .gd-document as a container\r\n this.container = this._elementRef.nativeElement;\r\n\r\n this.docWidth = this.doc.clientWidth;\r\n this.docHeight = this.doc.clientHeight;\r\n this.viewportWidth = this.doc.offsetWidth;\r\n\r\n // For cases where we already have zoom defined we should include it\r\n this.scale = (this.viewportWidth / this.docWidth) * this._zoomService.zoom / 100;\r\n\r\n this.lastScale = this.scale;\r\n this.viewportHeight = this.container.offsetHeight;\r\n this.curWidth = this.docWidth * this.scale;\r\n this.curHeight = this.docHeight * this.scale;\r\n\r\n const hammer = new Hammer(this.container);\r\n }\r\n\r\n // TODO: this temporary crutch for Excel files should be documented\r\n ifExcel() {\r\n return FileUtil.find(this.file.guid, false).format === \"Microsoft Excel\";\r\n }\r\n\r\n ifPresentation() {\r\n return FileUtil.find(this.file.guid, false).format === \"Microsoft PowerPoint\";\r\n }\r\n\r\n getDimensionWithUnit(value: number, pageNumber: number) {\r\n return this.ifPresentation() && !this.isVisible(pageNumber) ? 0 : value + (this.mode ? FileUtil.find(this.file.guid, false).unit : 'px');\r\n }\r\n\r\n ifEdge() {\r\n return navigator.userAgent.toLowerCase().indexOf('edge') > -1;\r\n }\r\n\r\n ngAfterViewChecked(): void {\r\n const elementNodeListOf = this._elementRef.nativeElement.querySelectorAll('.gd-wrapper');\r\n const element = elementNodeListOf.item(0);\r\n if (element) {\r\n $(element).trigger('focus');\r\n }\r\n }\r\n\r\n isVisible(pageNumber) {\r\n if (this.ifPresentation()) {\r\n return pageNumber === this.selectedPage ? true : false;\r\n }\r\n else {\r\n return true;\r\n }\r\n }\r\n}\r\n","import {Component, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-page',\r\n templateUrl: './page.component.html',\r\n styleUrls: ['./page.component.less']\r\n})\r\nexport class PageComponent implements OnInit, OnChanges {\r\n\r\n @Input() angle: number;\r\n @Input() width: number;\r\n @Input() height: number;\r\n @Input() number: number;\r\n @Input() data: string;\r\n @Input() isHtml: boolean;\r\n @Input() editable: boolean;\r\n imgData: string;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n const isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\r\n if(isIE && this.number === 0){\r\n this.editable = false;\r\n }\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n // TODO: this is temporary needed to remove unneeded spaces and BOM symbol \r\n // which leads to undesired spaces on the top of the docs pages\r\n this.data = this.data !== null ? this.data.replace(/>\\s+<')\r\n .replace(/\\uFEFF/g,\"\")\r\n .replace(/href=\"\\/viewer/g, 'href=\"http://localhost:8080/viewer')\r\n .replace(/src=\"\\/viewer/g, 'src=\"http://localhost:8080/viewer')\r\n .replace(/data=\"\\/viewer/g, 'data=\"http://localhost:8080/viewer')\r\n : null;\r\n const dataImagePngBase64 = 'data:image/png;base64,';\r\n this.imgData = dataImagePngBase64;\r\n if (!this.isHtml) {\r\n this.imgData += this.data;\r\n }\r\n }\r\n}\r\n","import {Pipe, PipeTransform} from '@angular/core';\r\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\r\n\r\n@Pipe({name: 'safeHtml'})\r\nexport class SanitizeHtmlPipe implements PipeTransform{\r\n constructor(private sanitizer: DomSanitizer) {\r\n }\r\n\r\n transform(html: string): SafeHtml {\r\n return this.sanitizer.bypassSecurityTrustHtml(html);\r\n }\r\n}\r\n\r\n@Pipe({name: 'safeResourceHtml'})\r\nexport class SanitizeResourceHtmlPipe implements PipeTransform{\r\n constructor(private sanitizer: DomSanitizer) {\r\n }\r\n\r\n transform(html: string): SafeHtml {\r\n return this.sanitizer.bypassSecurityTrustResourceUrl(html);\r\n }\r\n}\r\n\r\n@Pipe({name: 'safeStyle'})\r\nexport class SanitizeStylePipe implements PipeTransform{\r\n constructor(private sanitizer: DomSanitizer) {\r\n }\r\n\r\n transform(html: string): SafeHtml {\r\n return this.sanitizer.bypassSecurityTrustStyle(html);\r\n }\r\n}\r\n\r\n@Pipe({name: 'highlight'})\r\nexport class HighlightSearchPipe implements PipeTransform {\r\n\r\n transform(value: string, args: string): any {\r\n if (!args) {\r\n return value;\r\n }\r\n const re = new RegExp(args, 'gi'); //'gi' for case insensitive and can use 'g' if you want the search to be case sensitive.\r\n return value.replace(re, \"$&\");\r\n }\r\n}\r\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\r\nimport {UploadFilesService} from \"../upload-files.service\";\r\n\r\n@Component({\r\n selector: 'gd-upload-file-zone',\r\n templateUrl: './upload-file-zone.component.html',\r\n styleUrls: ['./upload-file-zone.component.less']\r\n})\r\nexport class UploadFileZoneComponent implements OnInit {\r\n\r\n @Output() closeUpload = new EventEmitter();\r\n\r\n constructor(private _uploadService: UploadFilesService) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n handleFileInput(files: FileList) {\r\n this._uploadService.changeFilesList(files);\r\n this.onCloseUpload();\r\n }\r\n\r\n onCloseUpload() {\r\n this.closeUpload.emit(true);\r\n }\r\n\r\n close($event) {\r\n if ($event.target.id === 'gd-dropZone') {\r\n this.onCloseUpload();\r\n }\r\n }\r\n}\r\n","import {Directive, EventEmitter, HostBinding, HostListener, Input, Output} from '@angular/core';\r\nimport {UploadFilesService} from \"./upload-files.service\";\r\n\r\n@Directive({\r\n selector: '[gdDnd]'\r\n})\r\nexport class DndDirective {\r\n\r\n @Output() closing = new EventEmitter();\r\n @Output() opening = new EventEmitter();\r\n @Output() dropped = new EventEmitter();\r\n\r\n @HostBinding('class.active') active = false;\r\n\r\n private dragCounter = 0;\r\n\r\n constructor(protected _uploadFilesService: UploadFilesService) {\r\n }\r\n\r\n @HostListener('dragenter', ['$event'])\r\n public onDragEnter(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.dragCounter++;\r\n this.active = true;\r\n this.opening.emit(true);\r\n }\r\n\r\n @HostListener('dragover', ['$event'])\r\n public onDragOver(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n return false;\r\n }\r\n\r\n @HostListener('dragleave', ['$event'])\r\n public onDragLeave(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.dragCounter--;\r\n if (this.dragCounter === 0) {\r\n this.active = false;\r\n this.closeArea();\r\n }\r\n }\r\n\r\n @HostListener('drop', ['$event'])\r\n public onDrop(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n const files = evt.dataTransfer.files;\r\n if (files.length > 0) {\r\n this.active = false;\r\n this.dropped.emit(true);\r\n this._uploadFilesService.changeFilesList(files);\r\n this.closeArea();\r\n }\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n public onClick(event) {\r\n this.closeArea();\r\n }\r\n\r\n private closeArea() {\r\n this.closing.emit(true);\r\n this.opening.emit(false);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ViewportService {\r\n\r\n constructor() {\r\n }\r\n\r\n checkInViewport(el, zoom: number = 100, leftOffset: number = 0, deltaX: number = 0.5) {\r\n if (!el) {\r\n return false;\r\n }\r\n const x = deltaX;\r\n const y = 0.5;\r\n\r\n const win = $(window);\r\n\r\n const viewport = {\r\n top: win.scrollTop(),\r\n left: win.scrollLeft() + leftOffset,\r\n right: win.scrollLeft() + win.width() - 10,\r\n bottom: win.scrollTop() + win.height()\r\n };\r\n\r\n\r\n if (isNaN(zoom)) {\r\n zoom = 100;\r\n }\r\n\r\n const zoomN = zoom / 100;\r\n const height = $(el).outerHeight() * (zoomN);\r\n const width = $(el).outerWidth() * (zoomN);\r\n\r\n if (!width || !height) {\r\n return false;\r\n }\r\n\r\n const bounds = $(el).offset();\r\n const right = (bounds.left * (zoomN)) + width;\r\n const bottom = (bounds.top * (zoomN)) + height;\r\n\r\n const visible = (!(viewport.right < (bounds.left * (zoomN)) || viewport.left > right || viewport.bottom < (bounds.top * (zoomN)) || viewport.top > bottom));\r\n\r\n if (!visible) {\r\n return false;\r\n }\r\n\r\n const deltas = {\r\n top: parseFloat(Math.min(1, (bottom - viewport.top) / height).toFixed(2)),\r\n bottom: parseFloat(Math.min(1, (viewport.bottom - (bounds.top * (zoomN))) / height).toFixed(2)),\r\n left: parseFloat(Math.min(1, (right - viewport.left) / width).toFixed(2)),\r\n right: parseFloat(Math.min(1, (viewport.right - (bounds.left * (zoomN))) / width).toFixed(2))\r\n };\r\n\r\n return (deltas.left * deltas.right) >= x && (deltas.top * deltas.bottom) >= y;\r\n }\r\n}\r\n","import {\r\n AfterViewInit,\r\n Directive,\r\n ElementRef,\r\n HostListener,\r\n Input,\r\n OnChanges,\r\n OnInit,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport {NavigateService} from \"./navigate.service\";\r\nimport {PagePreloadService} from \"./page-preload.service\";\r\nimport {ZoomService} from \"./zoom.service\";\r\nimport {WindowService} from \"./window.service\";\r\nimport {ViewportService} from \"./viewport.service\";\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\n@Directive({\r\n selector: '[gdScrollable]'\r\n})\r\nexport class ScrollableDirective implements AfterViewInit, OnChanges, OnInit {\r\n\r\n private currentPage: number;\r\n private zoom = 100;\r\n private loadedPagesSet = new Set();\r\n\r\n constructor(private _elementRef: ElementRef,\r\n private _navigateService: NavigateService,\r\n private _pagePreloadService: PagePreloadService,\r\n private _zoomService: ZoomService,\r\n private _windowService: WindowService,\r\n private _viewportService: ViewportService) {\r\n\r\n this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom;\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n this.zoom = val ? val : this.zoom;\r\n this.refresh();\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom;\r\n this._navigateService.navigate.subscribe((value => {\r\n this.currentPage = value;\r\n this.scrollToPage(value);\r\n }));\r\n this.refresh();\r\n }\r\n\r\n @HostListener('scroll') scrolling() {\r\n this.refresh();\r\n }\r\n\r\n @HostListener('window:resize') resizing() {\r\n this.refresh();\r\n }\r\n\r\n scrollToPage(pageNumber: number) {\r\n const el = this._elementRef.nativeElement;\r\n const page = this.getPage(pageNumber);\r\n const prev = pageNumber > 0 ? this.getPage(pageNumber - 1) : null;\r\n const isSameTop = (prev && $(prev).offset().top === $(page).offset().top);\r\n if (this._viewportService.checkInViewport(page, this.zoom) && isSameTop) {\r\n return;\r\n }\r\n const pagesHeight = this.calculateOffset(pageNumber);\r\n const options = {\r\n left: 0,\r\n top: pagesHeight\r\n };\r\n if(el){\r\n // using polyfill\r\n el.scroll(options);\r\n }\r\n }\r\n\r\n private getChildren() {\r\n const el = this._elementRef ? this._elementRef.nativeElement : null;\r\n if (el) {\r\n // here and in the similar line below we getting the document pages\r\n return el.children.item(0).children.item(0).children;\r\n }\r\n }\r\n\r\n private getPage(pageNumber: number) {\r\n const el = this._elementRef ? this._elementRef.nativeElement : null;\r\n if (el) {\r\n return el.children.item(0).children.item(0).children.item(pageNumber - 1);\r\n }\r\n }\r\n\r\n private calculateOffset(pageNumber: number) {\r\n const count = this._windowService.isFirefox() ? 1 : this.countPagesOnWidth();\r\n const margin = this._windowService.isDesktop() ? 40 : 10;\r\n let pagesHeight = 0;\r\n for (let i = 1; i < pageNumber / count; i++) {\r\n const item = this.getPage(i);\r\n const clientHeight = item ? item.clientHeight : 0;\r\n pagesHeight += clientHeight > 0 ? clientHeight * this.getZoom() + margin : 0;\r\n }\r\n return pagesHeight;\r\n }\r\n\r\n private countPagesOnWidth() {\r\n const pageEl = this.getPage(1);\r\n const offset = 150;\r\n const count = Math.floor((this.getWidth() - offset) / (pageEl.getBoundingClientRect().width * this.getZoom()));\r\n return count === 0 ? 1 : count;\r\n }\r\n\r\n refresh() {\r\n let page;\r\n let currentPageSet = false;\r\n const pageElem = this.getPage(this.currentPage);\r\n const currentPageRect = this.currentPage && pageElem ? pageElem.getBoundingClientRect() : null;\r\n for (page = 1; page < this.getChildren().length + 1; page++) {\r\n const element = this.getPage(page);\r\n if (this._viewportService.checkInViewport(element, this.zoom)) {\r\n if (!currentPageSet) {\r\n if (!this.currentPage || !pageElem || (this.currentPage && currentPageRect && element.getBoundingClientRect().top !== currentPageRect.top)) {\r\n this.currentPage = page;\r\n if (this._navigateService.currentPage === 0) {\r\n this._navigateService.currentPage = page;\r\n }\r\n }\r\n currentPageSet = true;\r\n }\r\n if (!this.loadedPagesSet.has(page)) {\r\n this._pagePreloadService.changeLastPageInView(page);\r\n this.loadedPagesSet.add(page);\r\n }\r\n }\r\n }\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.refresh();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.zoom = this._zoomService.zoom ? this._zoomService.zoom : this.zoom;\r\n }\r\n\r\n\r\n private getWidth() {\r\n return this._elementRef ? this._elementRef.nativeElement.offsetWidth : window.innerWidth;\r\n }\r\n\r\n private getZoom() {\r\n return this.zoom / 100;\r\n }\r\n}\r\n","import {\r\n Directive,\r\n EventEmitter,\r\n HostListener,\r\n Output} from '@angular/core';\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\n@Directive({\r\n selector: '[gdMouseWheel]'\r\n})\r\nexport class MouseWheelDirective {\r\n @Output() mouseWheelUp = new EventEmitter();\r\n @Output() mouseWheelDown = new EventEmitter();\r\n\r\n @HostListener('mousewheel', ['$event']) onMouseWheelChrome(event: any) {\r\n this.mouseWheelFunc(event);\r\n }\r\n\r\n @HostListener('DOMMouseScroll', ['$event']) onMouseWheelFirefox(event: any) {\r\n this.mouseWheelFunc(event);\r\n }\r\n\r\n @HostListener('onmousewheel', ['$event']) onMouseWheelIE(event: any) {\r\n this.mouseWheelFunc(event);\r\n }\r\n\r\n mouseWheelFunc(event: any) {\r\n event = window.event ;\r\n const delta = Math.max(-1, Math.min(1, (event.wheelDelta || -event.detail)));\r\n if(delta > 0) {\r\n this.mouseWheelUp.emit(event);\r\n } else if(delta < 0) {\r\n this.mouseWheelDown.emit(event);\r\n }\r\n }\r\n}\r\n","import {AfterViewInit, Directive, HostBinding, Input, OnDestroy, OnInit, ElementRef, OnChanges} from '@angular/core';\r\nimport {ZoomService} from \"./zoom.service\";\r\nimport {FileUtil} from \"./file.service\";\r\nimport { WindowService } from './window.service';\r\n\r\n@Directive({\r\n selector: '[gdZoom]'\r\n})\r\nexport class ZoomDirective implements OnInit, OnDestroy, AfterViewInit, OnChanges {\r\n\r\n @Input() zoomActive = true;\r\n @Input() file;\r\n\r\n @HostBinding('style.zoom') zoomInt: number;\r\n @HostBinding('style.transform') transform: string;\r\n @HostBinding('style.transform-origin') transformOrigin: string;\r\n @HostBinding('style.width') width: string;\r\n @HostBinding('style.height') height: string;\r\n @HostBinding('style.min-width') minWidth: string;\r\n el: ElementRef;\r\n\r\n constructor(private _zoomService: ZoomService, private _windowService: WindowService, el: ElementRef) {\r\n this.el = el;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n }\r\n\r\n ngOnChanges(): void {\r\n this.setStyles(this._zoomService.zoom);\r\n this.resizePages(this._zoomService.zoom);\r\n }\r\n\r\n ngOnInit(): void {\r\n if (! this.zoomActive) {\r\n return;\r\n }\r\n\r\n this.setStyles(this._zoomService.zoom);\r\n this._zoomService.zoomChange.subscribe((zoom) => {\r\n this.setStyles(zoom);\r\n this.resizePages(zoom);\r\n });\r\n }\r\n\r\n private setStyles(zoom) {\r\n if (! this.zoomActive) {\r\n return;\r\n }\r\n\r\n const zoomInt = zoom === 100 ? 1 : zoom / 100;\r\n \r\n if (this._windowService.isEdge()) {\r\n this.zoomInt = zoomInt;\r\n }\r\n else {\r\n this.zoomInt = null;\r\n }\r\n \r\n if (!this._windowService.isEdge()) {\r\n this.transform = 'scale(' + zoomInt + ')';\r\n this.transformOrigin = 'top left';\r\n }\r\n else {\r\n this.transform = \"\";\r\n this.transformOrigin = \"\";\r\n }\r\n\r\n let maxWidth = 0;\r\n this.file.pages.forEach(page => {\r\n {\r\n if (page.width > maxWidth){\r\n maxWidth = page.width;\r\n }\r\n }\r\n });\r\n\r\n // Images and Excel-related files receiving dimensions in px from server\r\n this.minWidth = maxWidth + FileUtil.find(this.file.guid, false).unit;\r\n }\r\n\r\n private getScrollWidth(elm){\r\n return elm.offsetWidth - elm.clientWidth;\r\n }\r\n\r\n private getScrollHeight(elm){\r\n return elm.offsetHeight - elm.clientHeight;\r\n }\r\n\r\n private resizePages(zoom){\r\n const zoomInt = zoom === 100 ? 1 : zoom / 100;\r\n\r\n const viewPortWidth = this.el.nativeElement.parentElement.offsetWidth;\r\n const viewPortHeight = this.el.nativeElement.parentElement.offsetHeight;\r\n const scrollWidth = this.getScrollWidth(this.el.nativeElement.parentElement);\r\n const scrollHeight = this.getScrollHeight(this.el.nativeElement.parentElement);\r\n this.width = (viewPortWidth/zoomInt - scrollWidth/zoomInt) + 'px';\r\n this.height = (viewPortHeight/zoomInt - scrollHeight/zoomInt) + 'px';\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.setStyles(this._zoomService.zoom);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Observable, Subject} from \"rxjs\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OnCloseService {\r\n private _observer: Subject = new Subject();\r\n private readonly _onClose: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get onClose() {\r\n return this._onClose;\r\n }\r\n\r\n close(close: boolean) {\r\n this._observer.next(close)\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\r\nimport {OnCloseService} from \"../on-close.service\";\r\n\r\nexport interface Option {\r\n name: string;\r\n value: any;\r\n separator: boolean;\r\n}\r\n\r\n@Component({\r\n selector: 'gd-select',\r\n templateUrl: './select.component.html',\r\n styleUrls: ['./select.component.less']\r\n})\r\nexport class SelectComponent {\r\n\r\n @Input() options: Option[];\r\n @Input() disabled = false;\r\n @Input() showSelected: Option;\r\n @Output() selected: EventEmitter = new EventEmitter();\r\n @Input() isOpen = false;\r\n @Input() icon: string;\r\n\r\n constructor(protected _onCloseService: OnCloseService) {\r\n _onCloseService.onClose.subscribe(() => {\r\n this.close();\r\n });\r\n }\r\n\r\n open() {\r\n if (!this.disabled) {\r\n this.isOpen = true;\r\n }\r\n }\r\n\r\n close() {\r\n this.isOpen = false;\r\n }\r\n\r\n onClickOutside(event : Event){\r\n this.close();\r\n }\r\n\r\n toggle($event) {\r\n // TODO: following lines were uncommented due to needness in signature app\r\n $event.preventDefault();\r\n $event.stopPropagation();\r\n if (!this.disabled) {\r\n this.isOpen = !this.isOpen;\r\n }\r\n }\r\n\r\n select($event, value: Option) {\r\n $event.preventDefault();\r\n $event.stopPropagation();\r\n this.selected.emit(value);\r\n this.close();\r\n }\r\n}\r\n","import {Directive, HostBinding, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[gdDisabledCursor]'\r\n})\r\nexport class DisabledCursorDirective implements OnInit, OnChanges {\r\n\r\n @Input() dis: boolean;\r\n\r\n constructor() {\r\n }\r\n\r\n @HostBinding('class.inactive') cursor: boolean;\r\n\r\n private updateCursor() {\r\n this.cursor = this.dis ? true : false;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.updateCursor();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.updateCursor()\r\n }\r\n}\r\n","import {Directive, HostBinding, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[gdRotation]'\r\n})\r\nexport class RotationDirective implements OnInit, OnChanges {\r\n\r\n @Input() angle: number;\r\n @Input() isHtmlMode: boolean;\r\n @Input() width: number;\r\n @Input() height: number;\r\n @Input() withMargin = true;\r\n\r\n @HostBinding('style.animation') animation: string;\r\n @HostBinding('style.transition-property') transition: string;\r\n @HostBinding('style.transform') transform: string;\r\n\r\n @HostBinding('style.margin') margin: string;\r\n\r\n constructor() {\r\n }\r\n\r\n private updateCursor() {\r\n if (typeof this.angle === \"string\"){\r\n this.angle = parseInt(this.angle, 10);\r\n }\r\n\r\n if (this.angle) {\r\n this.animation = 'none';\r\n this.transition = 'none';\r\n this.transform = 'rotate(' + this.angle + 'deg)';\r\n } else if (this.angle === 0 && this.animation) {\r\n this.animation = null;\r\n this.transition = null;\r\n this.transform = null;\r\n }\r\n\r\n if (this.withMargin) {\r\n if (this.angle === 90 || this.angle === 270 || this.angle === -90 || this.angle === -270) {\r\n if (this.isHtmlMode) {\r\n if (this.isLandscape()) {\r\n this.margin = '164px 254px';\r\n } else {\r\n this.margin = '-111px 254px';\r\n }\r\n } else {\r\n if (this.isLandscape()) {\r\n this.margin = '129px 100px -79px';\r\n } else {\r\n this.margin = '-72px 100px -79px';\r\n }\r\n }\r\n } else if (this.angle === -180 || this.angle === 180) {\r\n this.margin = '280px';\r\n } else {\r\n this.margin = null;\r\n }\r\n }\r\n\r\n }\r\n\r\n isLandscape() {\r\n return this.width > this.height;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.updateCursor();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.updateCursor()\r\n }\r\n\r\n}\r\n","import {Component, Input, Output, EventEmitter, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-init-state',\r\n templateUrl: './init-state.component.html',\r\n styleUrls: ['./init-state.component.less']\r\n})\r\nexport class InitStateComponent implements OnInit {\r\n @Input() icon: string;\r\n @Input() text: string;\r\n @Output() fileDropped = new EventEmitter();\r\n showUploadFile = false;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n dropped($event) {\r\n if ($event) {\r\n this.fileDropped.emit($event);\r\n this.showUploadFile = false;\r\n }\r\n }\r\n}\r\n","import {Observable, Observer} from \"rxjs\";\r\nimport {PageModel} from \"./file.service\";\r\n\r\nexport class RenderPrintService {\r\n private _render: Observable;\r\n private _observer: Observer;\r\n private _renderBlob: Observable;\r\n private _observerBlob: Observer;\r\n\r\n constructor() {\r\n this._render = new Observable(observer =>\r\n this._observer = observer);\r\n this._renderBlob = new Observable(observer =>\r\n this._observerBlob = observer);\r\n }\r\n\r\n get renderPrint(): Observable {\r\n return this._render;\r\n }\r\n\r\n changePages(pages: PageModel[]) {\r\n this._observer.next(pages);\r\n }\r\n\r\n get renderPrintBlob(): Observable {\r\n return this._renderBlob;\r\n }\r\n\r\n changeBlob(file: Blob) {\r\n this._observerBlob.next(file);\r\n }\r\n}\r\n","import {Directive, Input} from '@angular/core';\r\nimport {PageModel} from \"./file.service\";\r\nimport {RenderPrintService} from \"./render-print.service\";\r\n\r\n@Directive({\r\n selector: '[gdRenderPrint]'\r\n})\r\nexport class RenderPrintDirective {\r\n @Input() htmlMode: boolean;\r\n\r\n constructor(private _renderService: RenderPrintService) {\r\n _renderService.renderPrint.subscribe(pages => {\r\n this.renderPrint(pages);\r\n });\r\n _renderService.renderPrintBlob.subscribe(file => {\r\n this.renderPrintBlob(file);\r\n });\r\n }\r\n\r\n private renderPrint(pages: PageModel[]) {\r\n let pagesHtml = '';\r\n\r\n for (const page of pages) {\r\n pagesHtml += '
' +\r\n '
' +\r\n '
';\r\n }\r\n\r\n this.openWindow(pagesHtml, pages[0].width, pages[0].height);\r\n }\r\n\r\n private openWindow(pagesHtml, width, height) {\r\n const a4Height = 842;\r\n const a4Width = 595;\r\n let imageA4Adjusted = '';\r\n if(width > a4Width && height > a4Height){\r\n const zoom = Math.round(height / a4Height) / 100;\r\n imageA4Adjusted = '.gd-page img { width: 100%; margin: 0; padding: 0;}';\r\n if(navigator.userAgent.toLowerCase().indexOf('firefox') > -1){\r\n imageA4Adjusted = '.gd-page img { transform: scale(' + zoom + ');}';\r\n }\r\n }\r\n let cssPrint = '';\r\n\r\n const windowObject = window.open('', \"PrintWindow\", \"width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes\");\r\n windowObject.focus();\r\n windowObject.document.writeln(cssPrint);\r\n windowObject.document.writeln(pagesHtml);\r\n windowObject.document.close();\r\n setTimeout(() => {\r\n windowObject.focus();\r\n windowObject.print();\r\n windowObject.close();\r\n }, 100);\r\n }\r\n\r\n private renderPrintBlob(file: Blob) {\r\n const fileURL = URL.createObjectURL(file);\r\n const windowObject = window.open(fileURL, \"PrintWindow\", \"width=750,height=650,top=50,left=50,toolbars=yes,scrollbars=yes,status=yes,resizable=yes\");\r\n windowObject.focus();\r\n windowObject.print();\r\n windowObject.close();\r\n }\r\n}\r\n","import {BehaviorSubject, Observable} from \"rxjs\";\r\n\r\nexport class ExceptionMessageService {\r\n private _observer: BehaviorSubject = new BehaviorSubject('Server is not available');\r\n private _messageChange: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get messageChange(): Observable {\r\n return this._messageChange;\r\n }\r\n\r\n changeMessage(message: string) {\r\n this._observer.next(message);\r\n }\r\n}\r\n","import {Component, OnInit} from '@angular/core';\r\nimport {ExceptionMessageService} from \"../exception-message.service\";\r\n\r\n@Component({\r\n selector: 'gd-error-modal',\r\n templateUrl: './error-modal.component.html',\r\n styleUrls: ['./error-modal.component.less']\r\n})\r\nexport class ErrorModalComponent implements OnInit {\r\n\r\n message: string;\r\n\r\n constructor(messageService: ExceptionMessageService) {\r\n messageService.messageChange.subscribe(message => this.message = message);\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class PasswordService {\r\n private _observer: Subject = new Subject();\r\n private readonly _passChange: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get passChange(): Observable {\r\n return this._passChange;\r\n }\r\n\r\n setPassword(pass: string) {\r\n this._observer.next(pass);\r\n }\r\n}\r\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\r\nimport {ExceptionMessageService} from \"../exception-message.service\";\r\nimport {PasswordService} from \"../password.service\";\r\nimport * as jquery from \"jquery\";\r\n\r\nconst $ = jquery;\r\n\r\n@Component({\r\n selector: 'gd-password-required',\r\n templateUrl: './password-required.component.html',\r\n styleUrls: ['./password-required.component.less']\r\n})\r\nexport class PasswordRequiredComponent implements OnInit {\r\n message: string;\r\n @Output() cancelEvent = new EventEmitter();\r\n\r\n constructor(messageService: ExceptionMessageService, private _passwordService: PasswordService) {\r\n messageService.messageChange.subscribe(message => this.message = message);\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n setPassword(value: string) {\r\n this._passwordService.setPassword(value);\r\n }\r\n\r\n onCloseOpen($event: boolean) {\r\n if ($event) {\r\n setTimeout(() => {\r\n const element = $(\"#password\");\r\n if (element) {\r\n element.focus();\r\n }\r\n }, 100);\r\n } else {\r\n $(\"#password\").val(\"\");\r\n }\r\n }\r\n\r\n cancel($event: boolean) {\r\n $(\"#password\").val(\"\");\r\n this.cancelEvent.emit(true);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from \"@angular/common/http\";\r\nimport {Observable, throwError} from \"rxjs\";\r\nimport {catchError, map} from \"rxjs/operators\";\r\nimport {ExceptionMessageService} from \"./exception-message.service\";\r\nimport {HttpError} from \"./file.service\";\r\nimport {CommonModals, ModalService} from \"./modal.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ErrorInterceptorService implements HttpInterceptor {\r\n\r\n constructor(private _modalService: ModalService, private _messageService: ExceptionMessageService) {\r\n }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n const logFormat = 'background: maroon; color: white';\r\n\r\n return next.handle(req)\r\n .pipe(map(data => {\r\n return data;\r\n }),\r\n catchError((exception: HttpEvent) => {\r\n if (exception instanceof HttpErrorResponse) {\r\n switch (exception.status) {\r\n\r\n case HttpError.BadRequest:\r\n console.error('%c Bad Request 400', logFormat);\r\n break;\r\n case HttpError.Unauthorized:\r\n console.error('%c Unauthorized 401', logFormat);\r\n break;\r\n case HttpError.NotFound:\r\n console.error('%c Not Found 404', logFormat);\r\n break;\r\n case HttpError.TimeOut:\r\n console.error('%c TimeOut 408', logFormat);\r\n break;\r\n case HttpError.InternalServerError:\r\n console.error('%c big bad 500', logFormat);\r\n this._messageService.changeMessage(exception.error.message);\r\n this._modalService.open(CommonModals.ErrorMessage);\r\n break;\r\n\r\n case HttpError.Forbidden:\r\n console.error('%c Forbidden 403', logFormat);\r\n this._messageService.changeMessage(exception.error.message);\r\n this._modalService.open(CommonModals.PasswordRequired);\r\n break;\r\n }\r\n }\r\n return throwError(exception);\r\n }));\r\n }\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class SearchService {\r\n private _observer: Subject = new Subject();\r\n private readonly _textChange: Observable = this._observer.asObservable();\r\n\r\n private _observerCurrent: Subject = new Subject();\r\n private readonly _currentChange: Observable = this._observerCurrent.asObservable();\r\n\r\n private _observerTotal: Subject = new Subject();\r\n private readonly _totalChange: Observable = this._observerTotal.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get textChange(): Observable {\r\n return this._textChange;\r\n }\r\n\r\n setText(text: string) {\r\n this._observer.next(text);\r\n }\r\n\r\n get currentChange(): Observable {\r\n return this._currentChange;\r\n }\r\n\r\n get totalChange(): Observable {\r\n return this._totalChange;\r\n }\r\n\r\n setCurrent(current: number) {\r\n this._observerCurrent.next(current);\r\n }\r\n\r\n setTotal(total: number) {\r\n this._observerTotal.next(total);\r\n }\r\n}\r\n","import {AfterViewInit, Component, ElementRef, EventEmitter, OnInit, Output, ViewChild} from '@angular/core';\r\nimport {SearchService} from \"../search.service\";\r\n\r\n@Component({\r\n selector: 'gd-search',\r\n templateUrl: './search.component.html',\r\n styleUrls: ['./search.component.less']\r\n})\r\nexport class SearchComponent implements OnInit, AfterViewInit {\r\n\r\n @Output() hidePanel = new EventEmitter(false);\r\n\r\n current = 0;\r\n total = 0;\r\n\r\n @ViewChild('text',{\r\n static : true\r\n }) textElement: ElementRef;\r\n\r\n constructor(private _searchService: SearchService) {\r\n _searchService.totalChange.subscribe((total: number) => {\r\n this.total = total;\r\n if (total !== 0) {\r\n this.current = 1;\r\n } else {\r\n this.current = 0;\r\n }\r\n this._searchService.setCurrent(this.current);\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n setText(text: string) {\r\n this._searchService.setText(text);\r\n }\r\n\r\n hide() {\r\n this.setText('');\r\n this.hidePanel.emit(true);\r\n }\r\n\r\n prev() {\r\n if (this.current > 1) {\r\n this.current--;\r\n this._searchService.setCurrent(this.current);\r\n }\r\n }\r\n\r\n next() {\r\n if (this.current < this.total) {\r\n this.current++;\r\n this._searchService.setCurrent(this.current);\r\n }\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.textElement.nativeElement.focus();\r\n }\r\n}\r\n","import {Directive, ElementRef} from '@angular/core';\r\nimport {SearchService} from \"./search.service\";\r\nimport {HighlightSearchPipe} from \"./pipes\";\r\nimport {ZoomService} from \"./zoom.service\";\r\nimport * as jquery from \"jquery\";\r\nconst $ = jquery;\r\n\r\n@Directive({\r\n selector: '[gdSearchable]'\r\n})\r\nexport class SearchableDirective {\r\n\r\n text: string;\r\n current = 0;\r\n total = 0;\r\n private zoom = 100;\r\n\r\n constructor(private _elementRef: ElementRef,\r\n private _searchService: SearchService,\r\n private _highlight: HighlightSearchPipe,\r\n private _zoomService: ZoomService) {\r\n _searchService.currentChange.subscribe((current: number) => {\r\n this.current = current;\r\n if (this.current !== 0) {\r\n this.moveToCurrent();\r\n }\r\n });\r\n\r\n _searchService.textChange.subscribe((text: string) => {\r\n this.text = text;\r\n this.highlightSearch();\r\n });\r\n\r\n this.zoom = _zoomService.zoom ? _zoomService.zoom : this.zoom;\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n this.zoom = val ? val : this.zoom;\r\n });\r\n }\r\n\r\n private highlightSearch() {\r\n const el = this._elementRef ? this._elementRef.nativeElement : null;\r\n if (el) {\r\n this.cleanHighlight(el);\r\n if (this.text) {\r\n this.highlightEl(el);\r\n const count = el.querySelectorAll('.gd-highlight').length;\r\n this.total = count;\r\n } else {\r\n this.total = 0;\r\n }\r\n this._searchService.setTotal(this.total);\r\n }\r\n }\r\n\r\n private moveToCurrent() {\r\n if (this.current === 0) {\r\n return;\r\n }\r\n const currentZoom = this.getZoom();\r\n const el = this._elementRef ? this._elementRef.nativeElement : null;\r\n if (el) {\r\n el.querySelectorAll('.gd-highlight-select').forEach(function (value) {\r\n $(value).removeClass('gd-highlight-select');\r\n });\r\n const currentEl = el.querySelectorAll('.gd-highlight')[this.current - 1];\r\n $(currentEl).addClass('gd-highlight-select');\r\n if (currentEl) {\r\n const options = {\r\n left: 0,\r\n top: ($(currentEl).offset().top) + el.parentElement.parentElement.scrollTop - 150,\r\n };\r\n // using polyfill\r\n el.parentElement.parentElement.scroll(options);\r\n }\r\n }\r\n }\r\n\r\n private highlightEl(el: Element) {\r\n const textNodes = $(el).find('*').contents().filter(function () {\r\n const nodeName = this.parentElement.nodeName.toLowerCase();\r\n const checkClass = (this).classList ? !(this).classList.contains('gd-highlight') : true;\r\n return this.nodeType === 3 &&\r\n this.textContent.trim().length !== 0 &&\r\n nodeName !== 'style' &&\r\n nodeName !== 'title' &&\r\n nodeName !== 'body' &&\r\n nodeName !== 'script' &&\r\n checkClass;\r\n });\r\n const text = this.text;\r\n const highlight = this._highlight;\r\n textNodes.each(function () {\r\n const $this = $(this);\r\n let content = $this.text();\r\n content = highlight.transform(content, text);\r\n $this.replaceWith(content);\r\n });\r\n el.normalize();\r\n }\r\n\r\n private cleanHighlight(el: HTMLElement) {\r\n const nodeListOf = el.querySelectorAll('.gd-highlight');\r\n for (let i = 0; i < nodeListOf.length; i++) {\r\n const element = nodeListOf.item(i);\r\n element.replaceWith((element).innerText);\r\n }\r\n el.normalize();\r\n }\r\n\r\n private getZoom() {\r\n return this.zoom / 100;\r\n }\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-tabbed-toolbars',\r\n templateUrl: './tabbed-toolbars.component.html',\r\n styleUrls: ['./tabbed-toolbars.component.less']\r\n})\r\nexport class TabbedToolbarsComponent implements OnInit {\r\n @Input() logo: string;\r\n @Input() icon: string;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class TabActivatorService {\r\n private _observer: Subject = new Subject();\r\n private readonly _activeTabChange: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get activeTabChange(): Observable {\r\n return this._activeTabChange;\r\n }\r\n\r\n changeActiveTab(tabId: string) {\r\n this._observer.next(tabId);\r\n }\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\nimport {TabActivatorService} from \"../tab-activator.service\";\r\n\r\n@Component({\r\n selector: 'gd-tab',\r\n templateUrl: './tab.component.html',\r\n styleUrls: ['./tab.component.less']\r\n})\r\nexport class TabComponent implements OnInit {\r\n @Input() id: string;\r\n @Input() tabTitle: string;\r\n @Input() icon: string;\r\n @Input() disabled = false;\r\n @Input() active = false;\r\n @Input() content = true;\r\n\r\n constructor(private _tabActivatorService: TabActivatorService) {\r\n this._tabActivatorService.activeTabChange.subscribe((tabId: string) => {\r\n this.activation(tabId);\r\n });\r\n }\r\n\r\n private activation(tabId: string) {\r\n if (this.id === tabId) {\r\n this.active = true;\r\n } else {\r\n this.active = false;\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n selectTab() {\r\n if (this.disabled) {\r\n return;\r\n }\r\n this._tabActivatorService.changeActiveTab(this.id);\r\n }\r\n}\r\n","import {Component} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-tabs',\r\n templateUrl: './tabs.component.html',\r\n styleUrls: ['./tabs.component.less']\r\n})\r\nexport class TabsComponent {\r\n constructor() {\r\n }\r\n\r\n}\r\n","import {Observable, Subject} from \"rxjs\";\r\n\r\nexport class Formatting {\r\n constructor(fontSize: number, color: string, bgColor: string, bold: boolean, italic: boolean, underline: boolean, font: string, strikeout: boolean, align: string, list: string) {\r\n this.fontSize = fontSize;\r\n this.color = color;\r\n this.bgColor = bgColor;\r\n this.bold = bold;\r\n this.italic = italic;\r\n this.underline = underline;\r\n this.font = font;\r\n this.strikeout = strikeout;\r\n this.align = align;\r\n this.list = list;\r\n }\r\n\r\n bold: boolean;\r\n italic: boolean;\r\n underline: boolean;\r\n fontSize: number;\r\n color: string;\r\n bgColor: string;\r\n font: string;\r\n strikeout: boolean;\r\n align: string;\r\n list: string;\r\n\r\n public static default(): Formatting {\r\n return new Formatting(10, '#000000', '#FFFFFF', false, false, false, 'Arial', false, \"\", \"\");\r\n }\r\n}\r\n\r\nexport class FormattingService {\r\n private _observerBold: Subject = new Subject();\r\n private readonly _formatBoldChange: Observable = this._observerBold.asObservable();\r\n private _observerUnderline: Subject = new Subject();\r\n private readonly _formatUnderlineChange: Observable = this._observerUnderline.asObservable();\r\n private _observerUndo: Subject = new Subject();\r\n private readonly _undo: Observable = this._observerUndo.asObservable();\r\n private _observerRedo: Subject = new Subject();\r\n private readonly _redo: Observable = this._observerRedo.asObservable();\r\n private _observerItalic: Subject = new Subject();\r\n private readonly _formatItalicChange: Observable = this._observerItalic.asObservable();\r\n private _observerColor: Subject = new Subject();\r\n private readonly _formatColorChange: Observable = this._observerColor.asObservable();\r\n private _observerBgColor: Subject = new Subject();\r\n private readonly _formatBgColorChange: Observable = this._observerBgColor.asObservable();\r\n private _observerFontSize: Subject = new Subject();\r\n private readonly _formatFontSizeChange: Observable = this._observerFontSize.asObservable();\r\n private _observerFont: Subject = new Subject();\r\n private readonly _formatFontChange: Observable = this._observerFont.asObservable();\r\n private _observerStrikeout: Subject = new Subject();\r\n private readonly _formatStrikeoutChange: Observable = this._observerStrikeout.asObservable();\r\n private _observerAlign: Subject = new Subject();\r\n private readonly _formatAlignChange: Observable = this._observerAlign.asObservable();\r\n private _observerList: Subject = new Subject();\r\n private readonly _formatListChange: Observable = this._observerList.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get formatBoldChange() {\r\n return this._formatBoldChange;\r\n }\r\n\r\n get formatUnderlineChange() {\r\n return this._formatUnderlineChange;\r\n }\r\n\r\n get formatColorChange() {\r\n return this._formatColorChange;\r\n }\r\n\r\n get formatBgColorChange() {\r\n return this._formatBgColorChange;\r\n }\r\n\r\n get formatFontSizeChange() {\r\n return this._formatFontSizeChange;\r\n }\r\n\r\n get formatFontChange() {\r\n return this._formatFontChange;\r\n }\r\n\r\n get undo() {\r\n return this._undo;\r\n }\r\n\r\n get redo() {\r\n return this._redo;\r\n }\r\n\r\n get formatItalicChange() {\r\n return this._formatItalicChange;\r\n }\r\n\r\n get formatStrikeoutChange() {\r\n return this._formatStrikeoutChange;\r\n }\r\n\r\n get formatAlignChange() {\r\n return this._formatAlignChange;\r\n }\r\n\r\n get formatListChange() {\r\n return this._formatListChange;\r\n }\r\n\r\n static createFontSizeOption(val: number) {\r\n return {value: val, name: val + 'px', separator: false}\r\n }\r\n\r\n static getFontSizeOptions() {\r\n return [\r\n FormattingService.createFontSizeOption(8),\r\n FormattingService.createFontSizeOption(10),\r\n FormattingService.createFontSizeOption(12),\r\n FormattingService.createFontSizeOption(14),\r\n FormattingService.createFontSizeOption(16),\r\n FormattingService.createFontSizeOption(18),\r\n FormattingService.createFontSizeOption(20),\r\n FormattingService.createFontSizeOption(22),\r\n FormattingService.createFontSizeOption(24),\r\n ];\r\n }\r\n\r\n static createFontOption(val: string) {\r\n return {value: val, name: val, separator: false}\r\n }\r\n\r\n static getFontOptions() {\r\n const fonts = [\"Arial\", \"Calibri\", \"Century Gothic\", \"Comic Sans\", \"Consolas\", \"Courier\", \"Dejavu Sans\", \"Dejavu Serif\", \"Georgia\", \"Gill Sans\", \"Helvetica\", \"Impact\", \"Lucida Sans\",\r\n \"Myriad Pro\", \"Open Sans\", \"Palatino\", \"Tahoma\", \"Times New Roman\", \"Trebuchet\"];\r\n const fontOptions = [];\r\n fonts.forEach(font => {\r\n fontOptions.push(this.createFontOption(font));\r\n })\r\n\r\n return fontOptions;\r\n }\r\n\r\n changeFormatFontSize($event: number) {\r\n this._observerFontSize.next($event);\r\n }\r\n\r\n changeFormatBold(bold: boolean) {\r\n this._observerBold.next(bold);\r\n }\r\n\r\n changeFormatUnderline(underline: boolean) {\r\n this._observerUnderline.next(underline);\r\n }\r\n\r\n Undo() {\r\n this._observerUndo.next();\r\n }\r\n\r\n Redo() {\r\n this._observerRedo.next();\r\n }\r\n\r\n changeFormatItalic(italic: boolean) {\r\n this._observerItalic.next(italic);\r\n }\r\n\r\n changeFormatColor(color: string) {\r\n this._observerColor.next(color);\r\n }\r\n\r\n changeFormatBgColor(bgcolor: string) {\r\n this._observerBgColor.next(bgcolor);\r\n }\r\n\r\n changeFormatFont(font: string) {\r\n this._observerFont.next(font);\r\n }\r\n\r\n changeFormatStrikeout(strikeout: boolean) {\r\n this._observerStrikeout.next(strikeout);\r\n }\r\n\r\n changeFormatAlign(align: string) {\r\n this._observerAlign.next(align);\r\n }\r\n\r\n changeFormatList(list: string) {\r\n this._observerList.next(list);\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\n\r\nconst DEFAULT_COLORS = [\r\n '#000000', '#434343', '#666666', '#999999', '#B7B7B7', '#CCCCCC', '#D9D9D9', '#EFEFEF', '#F3F3F3', '#FFFFFF',\r\n '#980000', '#FF0000', '#FF9900', '#FFFF00', '#00FF00', '#00FFFF', '#4986E8', '#0000FF', '#9900FF', '#FF00FF',\r\n '#E6B8AF', '#F4CCCC', '#FDE5CD', '#FFF2CC', '#D9EAD3', '#D0E0E2', '#C9DAF8', '#CFE2F3', '#D9D2E9', '#EAD1DC',\r\n '#DD7E6B', '#EA9899', '#F9CB9C', '#FFE59A', '#B7D7A8', '#A2C4C9', '#A4C2F4', '#9FC5E8', '#B4A7D7', '#D5A6BD',\r\n '#CC4125', '#E06666', '#F6B26B', '#FFD966', '#92C47D', '#75A5AF', '#6D9EEB', '#6FA9DB', '#8E7CC3', '#C27BA0',\r\n '#A61C00', '#CC0000', '#E69138', '#F2C131', '#6AA84F', '#45818E', '#3C78D8', '#3C85C6', '#674EA7', '#A64D79',\r\n '#85200B', '#990000', '#B45F05', '#BF9000', '#37761D', '#144F5C', '#1254CC', '#0A5394', '#351C75', '#741B47',\r\n '#5B0F00', '#660000', '#783F03', '#7F6000', '#284E13', '#0B343D', '#1B4586', '#063763', '#20124D', '#4C1030',\r\n];\r\n\r\n@Component({\r\n selector: 'gd-color-picker',\r\n templateUrl: './color-picker.component.html',\r\n styleUrls: ['./color-picker.component.less']\r\n})\r\nexport class ColorPickerComponent implements OnInit {\r\n @Input() isOpen = false;\r\n @Output() selectedColor = new EventEmitter();\r\n @Output() closeOutside = new EventEmitter();\r\n colors: any = DEFAULT_COLORS;\r\n white = '#FFFFFF';\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n select($event, color: string) {\r\n $event.preventDefault();\r\n $event.stopPropagation();\r\n this.selectedColor.emit(color);\r\n }\r\n\r\n close() {\r\n this.isOpen = false;\r\n this.closeOutside.emit(true);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {FormattingService} from \"./formatting.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BackFormattingService extends FormattingService {\r\n\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SelectionService {\r\n selection: Range;\r\n isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\r\n\r\n restoreSelection() {\r\n if(this.selection && !this.selection.collapsed || this.isIE){\r\n this.putSelection(this.selection );\r\n }\r\n }\r\n\r\n captureSelection() {\r\n const selection = window.getSelection();\r\n if (selection.rangeCount > 0) {\r\n this.selection = selection.getRangeAt(0);\r\n }\r\n }\r\n\r\n private putSelection(selection) {\r\n const sel = window.getSelection();\r\n sel.removeAllRanges();\r\n sel.addRange(selection.cloneRange());\r\n }\r\n\r\n refreshSelection() {\r\n this.captureSelection();\r\n this.restoreSelection();\r\n }\r\n}\r\n","import {Directive, HostListener, OnInit} from '@angular/core';\r\nimport {FormattingService} from \"./formatting.service\";\r\nimport {BackFormattingService} from \"./back-formatting.service\";\r\nimport * as jquery from 'jquery';\r\nconst $ = jquery;\r\nimport {SelectionService} from './selection.service';\r\n\r\n@Directive({\r\n selector: '[gdFormatting]'\r\n})\r\nexport class FormattingDirective implements OnInit {\r\n\r\n private bold = false;\r\n private italic = false;\r\n private underline = false;\r\n private color: string;\r\n private bgColor: string;\r\n private font: string;\r\n private strikeout = false;\r\n private align: string;\r\n private list: string;\r\n private isIE = false;\r\n\r\n constructor(private _formattingService: FormattingService,\r\n private _backFormattingService: BackFormattingService,\r\n private _selectionService: SelectionService) {\r\n this.isIE = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\r\n }\r\n\r\n @HostListener('mouseup') mouseup() {\r\n\r\n this.bold = document.queryCommandState(\"bold\");\r\n this.strikeout = document.queryCommandState(\"strikeThrough\");\r\n this.italic = document.queryCommandState(\"italic\");\r\n this.bgColor = document.queryCommandValue(\"backColor\");\r\n this.underline = document.queryCommandState(\"underline\");\r\n this.align = this.checkJustify();\r\n this.list = this.checkList();\r\n\r\n //fix required by FireFox to get correct background color\r\n if (this.bgColor === \"transparent\") {\r\n this.bgColor = $(window.getSelection().focusNode.parentNode).css('background-color').toString();\r\n }\r\n this.font = document.queryCommandValue(\"FontName\").replace(/\"/g, '');\r\n if(this.font.split(\",\").length > 1){\r\n this.font = this.font.split(\",\")[0];\r\n }\r\n this.color = document.queryCommandValue(\"foreColor\");\r\n this._backFormattingService.changeFormatBold(this.bold);\r\n this._backFormattingService.changeFormatUnderline(this.underline);\r\n this._backFormattingService.changeFormatItalic(this.italic);\r\n this._backFormattingService.changeFormatColor(this.color);\r\n this._backFormattingService.changeFormatBgColor(this.bgColor);\r\n this._backFormattingService.changeFormatFontSize(this.reportFontSize());\r\n this._backFormattingService.changeFormatFont(this.font);\r\n this._backFormattingService.changeFormatStrikeout(this.strikeout);\r\n this._backFormattingService.changeFormatAlign(this.align);\r\n this._backFormattingService.changeFormatList(this.list);\r\n }\r\n\r\n private checkJustify() {\r\n let align = \"\";\r\n align = document.queryCommandState(\"justifyCenter\") ? \"center\" : align;\r\n align = document.queryCommandState(\"justifyFull\") ? \"full\" : align;\r\n align = document.queryCommandState(\"justifyLeft\") ? \"left\" : align;\r\n align = document.queryCommandState(\"justifyRight\") ? \"right\" : align;\r\n return align;\r\n }\r\n\r\n private checkList() {\r\n let list = \"\";\r\n list = document.queryCommandState(\"insertUnorderedList\") ? \"unordered\" : list;\r\n list = document.queryCommandState(\"insertOrderedList\") ? \"ordered\" : list;\r\n return list;\r\n }\r\n\r\n reportFontSize(): number {\r\n let containerEl, sel;\r\n if (window.getSelection) {\r\n sel = window.getSelection();\r\n if (sel.rangeCount) {\r\n containerEl = sel.getRangeAt(0).commonAncestorContainer;\r\n // Make sure we have an element rather than a text node\r\n if (containerEl.nodeType === 3) {\r\n containerEl = containerEl.parentNode;\r\n }\r\n }\r\n } else if ((sel = document.getSelection()) && sel.type !== \"Control\") {\r\n containerEl = sel.createRange().parentElement();\r\n }\r\n\r\n if (containerEl) {\r\n return parseInt(this.getComputedStyleProperty(containerEl, \"fontSize\").replace(\"px\", \"\"), 10);\r\n }\r\n }\r\n\r\n getComputedStyleProperty(el, propName) {\r\n if (window.getComputedStyle) {\r\n return window.getComputedStyle(el, null)[propName];\r\n } else if (el.currentStyle) {\r\n return el.currentStyle[propName];\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this._formattingService.undo.subscribe(() => {\r\n this.toggleUndo();\r\n });\r\n this._formattingService.redo.subscribe(() => {\r\n this.toggleRedo();\r\n });\r\n this._formattingService.formatBoldChange.subscribe((bold: boolean) => {\r\n this.bold = bold;\r\n this.toggleBold();\r\n });\r\n this._formattingService.formatUnderlineChange.subscribe((underline: boolean) => {\r\n this.underline = underline;\r\n this.toggleUnderline();\r\n });\r\n this._formattingService.formatItalicChange.subscribe((italic: boolean) => {\r\n this.italic = italic;\r\n this.toggleItalic();\r\n });\r\n this._formattingService.formatColorChange.subscribe(((color: string) => {\r\n this.color = color;\r\n this.setColor(color);\r\n }));\r\n this._formattingService.formatBgColorChange.subscribe(((bgcolor: string) => {\r\n this.bgColor = bgcolor;\r\n this.setBgColor(bgcolor);\r\n }));\r\n this._formattingService.formatFontSizeChange.subscribe(((fontSize: number) => {\r\n this.setFontSize(fontSize);\r\n }));\r\n\r\n this._formattingService.formatFontChange.subscribe(((font: string) => {\r\n this.font = font;\r\n this.setFont(font);\r\n }));\r\n this._formattingService.formatStrikeoutChange.subscribe((strikeout: boolean) => {\r\n this.strikeout = strikeout;\r\n this.toggleStrikeout();\r\n });\r\n this._formattingService.formatAlignChange.subscribe((align: string) => {\r\n this.align = align;\r\n this.toggleAlign(this.align);\r\n });\r\n this._formattingService.formatListChange.subscribe((list: string) => {\r\n const remove = this.list === list;\r\n this.list = list;\r\n this.toggleList(this.list, remove);\r\n });\r\n }\r\n\r\n private toggleBold() {\r\n document.execCommand(\"bold\");\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleUnderline() {\r\n document.execCommand(\"underline\");\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleItalic() {\r\n document.execCommand(\"italic\");\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private setBgColor(bgColor: string) {\r\n document.execCommand(\"backColor\", false, bgColor);\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private setColor(color: string) {\r\n document.execCommand(\"foreColor\", false, color);\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private setFontSize(fontSize: number) {\r\n if (document.getSelection().toString()) {\r\n let spanString = \"\" +\r\n document.getSelection() + \"\";\r\n if (this.bold) {\r\n spanString = \"\" + spanString + \"\";\r\n }\r\n if (this.italic) {\r\n spanString = \"\" + spanString + \"\";\r\n }\r\n if (this.underline) {\r\n spanString = \"\" + spanString + \"\";\r\n }\r\n if (this.strikeout) {\r\n spanString = \"\" + spanString + \"\";\r\n }\r\n document.execCommand('insertHTML', false, spanString);\r\n } else {\r\n document.execCommand(\"fontsize\", false, \"7\");\r\n }\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleUndo() {\r\n document.execCommand(\"undo\");\r\n }\r\n\r\n private toggleRedo() {\r\n document.execCommand(\"redo\");\r\n }\r\n\r\n private setFont(font: string) {\r\n document.execCommand(\"fontName\", false, font);\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleStrikeout() {\r\n document.execCommand(\"strikeThrough\");\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleAlign(align: string) {\r\n if(this.isIE) {\r\n this.toggleAlignIE(align);\r\n return;\r\n }\r\n document.execCommand(\"styleWithCSS\", false, 'true');\r\n switch (align) {\r\n case 'center':\r\n document.execCommand('justifyCenter');\r\n break;\r\n case 'full':\r\n document.execCommand('justifyFull');\r\n break;\r\n case 'left':\r\n document.execCommand('justifyLeft');\r\n break;\r\n case 'right':\r\n document.execCommand('justifyRight');\r\n break;\r\n }\r\n this._selectionService.refreshSelection();\r\n }\r\n\r\n private toggleAlignIE(align: string) {\r\n this._selectionService.restoreSelection()\r\n this._selectionService.captureSelection()\r\n const selection = window.getSelection().focusNode.parentNode.parentNode;\r\n if(align === \"full\"){\r\n align = \"justify\";\r\n }\r\n $(selection).css(\"text-align\", align);\r\n this._selectionService.refreshSelection()\r\n }\r\n\r\n private toggleList(list: string, remove: boolean) {\r\n switch (list) {\r\n case 'unordered':\r\n document.execCommand('insertUnorderedList', remove);\r\n break;\r\n case 'ordered':\r\n document.execCommand('insertOrderedList', remove);\r\n break;\r\n }\r\n this._selectionService.refreshSelection();\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-success-modal',\r\n templateUrl: './success-modal.component.html',\r\n styleUrls: ['./success-modal.component.less']\r\n})\r\nexport class SuccessModalComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Observable, Subject} from \"rxjs\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class EditHtmlService {\r\n private _observer: Subject = new Subject();\r\n private readonly _htmlContent: Observable = this._observer.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n get observer(): Subject {\r\n return this._observer;\r\n }\r\n\r\n get htmlContent(): Observable {\r\n return this._htmlContent;\r\n }\r\n\r\n}\r\n","import {Directive, HostListener, Input} from '@angular/core';\r\nimport {SelectionService} from './selection.service';\r\nimport {EditHtmlService} from \"./edit-html.service\";\r\n\r\n@Directive({\r\n selector: '[gdEditor]'\r\n})\r\nexport class EditorDirective {\r\n @Input() text: any;\r\n\r\n private isIE: boolean = /*@cc_on!@*/false || !!/(MSIE|Trident\\/|Edge\\/)/i.test(navigator.userAgent);\r\n\r\n constructor(private _selectionService: SelectionService, private _htmlService: EditHtmlService) {\r\n }\r\n\r\n @HostListener('keyup', ['$event'])\r\n public onInput(event) {\r\n this.text = event.target;\r\n if(this.isIE){\r\n if (this.text.innerHTML) {\r\n const html = this.text.innerHTML.toString();\r\n this._htmlService.observer.next(html);\r\n }\r\n }\r\n }\r\n\r\n @HostListener('mouseleave', ['$event'])\r\n public onMouseleave(event) {\r\n this._selectionService.captureSelection();\r\n // this code is required to fix IE11 issue - it doesn't trigger blur event, since that we need to save updated HTML here\r\n if(this.isIE){\r\n this._htmlService.observer.next(event.target.innerHTML.toString());\r\n }\r\n }\r\n\r\n @HostListener('blur', ['$event'])\r\n public onBlur(event) {\r\n event.preventDefault();\r\n this._selectionService.restoreSelection();\r\n if (this.text.innerHTML) {\r\n const html = this.text.innerHTML.toString();\r\n this._htmlService.observer.next(html);\r\n } else {\r\n this._htmlService.observer.next(event.target.innerHTML.toString());\r\n }\r\n }\r\n}\r\n","import {EventEmitter, Injectable} from '@angular/core'\r\nimport {HttpRequest} from '@angular/common/http';\r\nimport {Api} from \"./config.service\";\r\n\r\n@Injectable()\r\nexport class LoadingMaskService {\r\n onLoadingChanged: EventEmitter = new EventEmitter();\r\n\r\n private stopList = [];\r\n private requests: HttpRequest[] = [];\r\n\r\n constructor() {\r\n this.stopList.push(Api.SAVE_TEXT);\r\n this.stopList.push(Api.SAVE_OPTICAL_CODE);\r\n this.stopList.push(Api.LOAD_DOCUMENT_PAGE);\r\n this.stopList.push(Api.LOAD_THUMBNAILS);\r\n this.stopList.push(Api.GET_FILE_STATUS);\r\n this.stopList.push(Api.LOAD_PRINT);\r\n }\r\n\r\n onRequestStart(req: HttpRequest): void {\r\n const stop = this.stopList.find(x => req.url.includes(x));\r\n if (!stop) {\r\n this.requests.push(req);\r\n this.notify();\r\n }\r\n }\r\n\r\n onRequestFinish(req: HttpRequest): void {\r\n const index = this.requests.indexOf(req);\r\n if (index !== -1) {\r\n this.requests.splice(index, 1);\r\n }\r\n this.notify();\r\n }\r\n\r\n private notify(): void {\r\n this.onLoadingChanged.emit(this.requests.length !== 0);\r\n }\r\n}\r\n","import {AfterViewInit, Component, Input, OnInit} from '@angular/core';\r\nimport {LoadingMaskService} from \"../loading-mask.service\";\r\n\r\n@Component({\r\n selector: 'gd-loading-mask',\r\n templateUrl: './loading-mask.component.html',\r\n styleUrls: ['./loading-mask.component.less']\r\n})\r\n\r\nexport class LoadingMaskComponent implements OnInit, AfterViewInit {\r\n @Input() loadingMask = false;\r\n\r\n constructor(private _loadingMaskService: LoadingMaskService) {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this._loadingMaskService\r\n .onLoadingChanged\r\n .subscribe((loading: boolean) => this.loadingMask = loading);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from \"@angular/common/http\";\r\nimport {Observable} from \"rxjs\";\r\nimport {finalize} from 'rxjs/operators'\r\nimport {LoadingMaskService} from \"./loading-mask.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LoadingMaskInterceptorService implements HttpInterceptor {\r\n\r\n constructor(private _loadingMaskService: LoadingMaskService) {\r\n }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n this._loadingMaskService.onRequestStart(req);\r\n const callback = () => this._loadingMaskService.onRequestFinish(req);\r\n return next.handle(req).pipe( finalize( callback));\r\n }\r\n}\r\n","import {\r\n Component,\r\n EventEmitter,\r\n forwardRef,\r\n HostBinding,\r\n HostListener,\r\n Inject,\r\n Input,\r\n Output,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\n\r\n\r\nconst horizontalAlignment = {\r\n center : {\r\n right: 'auto'\r\n },\r\n left : {\r\n right: '100%'\r\n },\r\n right : {\r\n right: '-100%'\r\n }\r\n};\r\n\r\nconst verticalAlignment = {\r\n center : {\r\n top : '0px',\r\n },\r\n top : {\r\n top : '-100%',\r\n right: '100%'\r\n },\r\n bottom : {\r\n top: 'autos'\r\n }\r\n};\r\n\r\n/**\r\n * DropDownToggleComponent\r\n */\r\n@Component({\r\n selector: 'gd-drop-down-toggle',\r\n template: '',\r\n styleUrls: ['./drop-down.component.less'],\r\n encapsulation : ViewEncapsulation.None\r\n})\r\nexport class DropDownToggleComponent{\r\n @HostListener('click',['$event'])\r\n click = (event: any) => this.dropdown.toggle(event);\r\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\r\n}\r\n\r\n/**\r\n * DropDownItemsComponent\r\n */\r\n@Component({\r\n selector: 'gd-drop-down-items',\r\n template: '
',\r\n styleUrls: ['./drop-down.component.less'],\r\n encapsulation : ViewEncapsulation.None\r\n})\r\nexport class DropDownItemsComponent{\r\n\r\n get horizontalAlign(){\r\n return horizontalAlignment[this.dropdown.getPlacement().h].right;\r\n }\r\n\r\n get verticalAlign(){\r\n return verticalAlignment[this.dropdown.getPlacement().v].top;\r\n }\r\n\r\n get isOpen(){\r\n return this.dropdown.open;\r\n }\r\n\r\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\r\n\r\n onClickOutside(event : Event ){\r\n this.dropdown.close();\r\n }\r\n}\r\n\r\n/**\r\n * DropDownItemComponent\r\n */\r\n@Component({\r\n selector: 'gd-drop-down-item',\r\n template: '
',\r\n styleUrls: ['./drop-down.component.less'],\r\n})\r\nexport class DropDownItemComponent{\r\n @HostBinding('class')\r\n class = 'drop-down-item';\r\n\r\n @Output()\r\n selected = new EventEmitter();\r\n\r\n @HostListener('click')\r\n click = () => this.selectEntry();\r\n\r\n constructor(@Inject(forwardRef(() => DropDownComponent)) public dropdown) {}\r\n\r\n selectEntry(){\r\n this.selected.next();\r\n this.dropdown.close();\r\n }\r\n}\r\n\r\n/**\r\n * DropDownComponent\r\n */\r\n@Component({\r\n selector: 'gd-drop-down',\r\n template: '
',\r\n styleUrls: ['./drop-down.component.less'],\r\n encapsulation : ViewEncapsulation.None\r\n})\r\nexport class DropDownComponent{\r\n @Input()\r\n placement = {\r\n h: \"center\",\r\n v: \"bottom\"\r\n };\r\n\r\n\r\n @Input()\r\n @HostBinding('class.show')\r\n open = false;\r\n\r\n @HostBinding('class')\r\n class = 'drop-down';\r\n\r\n close(){\r\n this.open = false;\r\n }\r\n\r\n toggle(event : MouseEvent){\r\n event.stopPropagation();\r\n this.open = !this.open;\r\n document.body.click();\r\n }\r\n\r\n getPlacement(){\r\n return this.placement;\r\n }\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'gd-left-side-bar',\r\n templateUrl: './left-side-bar.component.html',\r\n styleUrls: ['./left-side-bar.component.less']\r\n})\r\nexport class LeftSideBarComponent implements OnInit {\r\n @Input() showSpinner = false;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import {Directive, EventEmitter, HostListener, Input, Output} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[gdTooltip]'\r\n})\r\nexport class TooltipDirective {\r\n\r\n @Output() showToolTip = new EventEmitter();\r\n\r\n constructor() {\r\n }\r\n\r\n @HostListener('mouseenter')\r\n public onHovering() {\r\n this.showToolTip.emit(true);\r\n }\r\n\r\n @HostListener('mouseleave')\r\n public onUnhovering() {\r\n this.showToolTip.emit(false);\r\n }\r\n\r\n}\r\n","import {\r\n ApplicationRef,\r\n ComponentFactoryResolver,\r\n Injectable,\r\n ViewContainerRef\r\n} from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AddDynamicComponentService {\r\n\r\n constructor(private _factoryResolver: ComponentFactoryResolver,\r\n private _appRef: ApplicationRef) {\r\n }\r\n\r\n addDynamicComponent(viewContainerRef: ViewContainerRef, component: any) {\r\n const factory = this._factoryResolver.resolveComponentFactory(component);\r\n const componentRef = viewContainerRef.createComponent(factory);\r\n\r\n componentRef.onDestroy(() => {\r\n this._appRef.detachView(componentRef.hostView);\r\n });\r\n\r\n return componentRef;\r\n }\r\n\r\n}\r\n","import {HostDynamicDirective} from \"./host-dynamic.directive\";\r\n\r\nexport class HostingDynamicComponentService {\r\n private hosts: HostDynamicDirective[];\r\n\r\n constructor() {\r\n this.hosts = [];\r\n }\r\n\r\n add(host: HostDynamicDirective) {\r\n this.hosts = this.hosts.filter(function (h) {\r\n return h.ident !== host.ident;\r\n });\r\n this.hosts.push(host);\r\n }\r\n\r\n remove(host: HostDynamicDirective) {\r\n this.hosts = this.hosts.filter(function (h) {\r\n return h.ident !== host.ident;\r\n });\r\n }\r\n\r\n find(ident: number) {\r\n return this.hosts.find(function (h) {\r\n return h.ident === ident;\r\n });\r\n }\r\n}\r\n","import {AfterViewInit, Directive, Input, OnDestroy, ViewContainerRef} from '@angular/core';\r\nimport {HostingDynamicComponentService} from \"./hosting-dynamic-component.service\";\r\n\r\n@Directive({\r\n selector: '[gdHostDynamic]'\r\n})\r\nexport class HostDynamicDirective implements AfterViewInit, OnDestroy {\r\n @Input() ident: number;\r\n\r\n constructor(public viewContainerRef: ViewContainerRef,\r\n private _hostingService: HostingDynamicComponentService) {\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this._hostingService.add(this);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._hostingService.remove(this);\r\n this.viewContainerRef.clear();\r\n }\r\n\r\n}\r\n","import {AfterViewInit, Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport * as jquery from \"jquery\";\r\nimport {Utils} from \"../file.service\";\r\n\r\nconst $ = jquery;\r\n\r\n@Component({\r\n selector: 'gd-resizing',\r\n templateUrl: './resizing.component.html',\r\n styleUrls: ['./resizing.component.less']\r\n})\r\nexport class ResizingComponent implements OnInit, AfterViewInit {\r\n\r\n @Input() init: boolean;\r\n @Input() id: number;\r\n @Input() se = false;\r\n @Input() ne = false;\r\n @Input() sw = false;\r\n @Input() nw = false;\r\n @Input() pageWidth: number;\r\n @Input() pageHeight: number;\r\n SE = 'se';\r\n NE = 'ne';\r\n SW = 'sw';\r\n NW = 'nw';\r\n\r\n @Output() offsetX = new EventEmitter();\r\n @Output() offsetY = new EventEmitter();\r\n @Output() offsetTop = new EventEmitter();\r\n @Output() offsetLeft = new EventEmitter();\r\n @Output() release = new EventEmitter();\r\n\r\n private grab = false;\r\n private oldPosition: { x: number, y: number };\r\n\r\n constructor() {\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n const elSE = $(this.getElementId(this.SE));\r\n const elNW = $(this.getElementId(this.NW));\r\n if (this.init && elSE && elNW && elSE.offset() && elNW.offset()) {\r\n let width = elSE.offset().left - elNW.offset().left;\r\n let height = elSE.offset().top - elNW.offset().top;\r\n while (width >= this.pageWidth || height >= this.pageHeight) {\r\n width = width / 2;\r\n height = height / 2;\r\n }\r\n setTimeout(() => {\r\n this.offsetX.emit(width);\r\n this.offsetY.emit(height);\r\n }, 100);\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n catchUp($event: DragEvent) {\r\n // ff\r\n $event.preventDefault();\r\n if ($event.dataTransfer) { // ff\r\n $event.dataTransfer.setData('text', 'foo');\r\n }\r\n this.grab = true;\r\n this.oldPosition = Utils.getMousePosition($event);\r\n }\r\n\r\n resize($event: DragEvent, el: string) {\r\n if (!this.grab) {\r\n return;\r\n }\r\n const position = Utils.getMousePosition($event);\r\n if (position.x === 0 && position.y === 0) {\r\n return;\r\n }\r\n const notSW = this.NE === el || this.NW === el;\r\n const notNE = this.SW === el || this.NW === el;\r\n this.setOffsets(position, notNE, notSW);\r\n if (notSW) {\r\n this.offsetTop.emit(position.y - this.oldPosition.y);\r\n }\r\n if (notNE) {\r\n this.offsetLeft.emit(position.x - this.oldPosition.x);\r\n }\r\n this.oldPosition = position;\r\n }\r\n\r\n private setOffsets(position, x: boolean, y: boolean) {\r\n const offsetX = x ? this.oldPosition.x - position.x : position.x - this.oldPosition.x;\r\n const offsetY = y ? this.oldPosition.y - position.y : position.y - this.oldPosition.y;\r\n this.offsetX.emit(offsetX);\r\n this.offsetY.emit(offsetY);\r\n }\r\n\r\n end($event: DragEvent, el: string) {\r\n // ff\r\n this.resize($event, el);\r\n this.release.emit(true);\r\n this.grab = false;\r\n }\r\n\r\n start($event: DragEvent) {\r\n this.drop($event);\r\n }\r\n\r\n drop($event: DragEvent) {\r\n $event.stopPropagation();\r\n $event.preventDefault();\r\n }\r\n\r\n private getElementId(el: string) {\r\n return \"#\" + el + \"-\" + this.id;\r\n }\r\n}\r\n","import {TabActivatorService} from \"./tab-activator.service\";\r\n\r\nexport class TopTabActivatorService extends TabActivatorService {\r\n\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {ExceptionMessageService} from \"../exception-message.service\";\r\nimport {TopTabActivatorService} from \"../top-tab-activator.service\";\r\nimport {ModalService, CommonModals} from \"../modal.service\";\r\n\r\n@Component({\r\n selector: 'gd-top-tab',\r\n templateUrl: './top-tab.component.html',\r\n styleUrls: ['./top-tab.component.less']\r\n})\r\nexport class TopTabComponent implements OnInit {\r\n @Input() id: string;\r\n @Input() icon: string;\r\n @Input() disabled = false;\r\n @Input() tooltip: string;\r\n @Output() activeTab = new EventEmitter();\r\n @Input() elementPosition = 0;\r\n public active = false;\r\n public showToolTip = false;\r\n\r\n constructor(private _tabActivatorService: TopTabActivatorService,\r\n private _modalService: ModalService,\r\n private _excMessageService: ExceptionMessageService) {\r\n this._tabActivatorService.activeTabChange.subscribe((tabId: string) => {\r\n this.activation(tabId);\r\n if (tabId === null) {\r\n this.activeTab.emit(\"\");\r\n }\r\n });\r\n }\r\n\r\n private activation(tabId: string) {\r\n if (this.id === tabId) {\r\n this.active = !this.active;\r\n if (this.active) {\r\n this.activeTab.emit(this.id);\r\n } else {\r\n this.activeTab.emit(\"\");\r\n }\r\n } else {\r\n this.active = false;\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n toggleTab() {\r\n if (this.disabled) {\r\n this._modalService.open(CommonModals.ErrorMessage);\r\n this._excMessageService.changeMessage(\"Please open document first\");\r\n return;\r\n }\r\n this._tabActivatorService.changeActiveTab(this.id);\r\n }\r\n\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output, ElementRef, Renderer2} from '@angular/core';\r\nimport * as jquery from 'jquery';\r\nimport {FormattingService} from \"../formatting.service\";\r\nimport {OnCloseService} from \"../on-close.service\";\r\nimport {Option} from \"../select/select.component\";\r\nimport { ZoomService } from '../zoom.service';\r\nimport { WindowService } from '../window.service';\r\n\r\nconst $ = jquery;\r\n\r\n@Component({\r\n selector: 'gd-text-menu',\r\n templateUrl: './text-menu.component.html',\r\n styleUrls: ['./text-menu.component.less']\r\n})\r\nexport class TextMenuComponent implements OnInit {\r\n @Input() blur: boolean;\r\n @Input() fontSize: number;\r\n @Input() font: string;\r\n @Input() bold: boolean;\r\n @Input() italic: boolean;\r\n @Input() underline: boolean;\r\n @Input() color: string;\r\n @Input() decoration = true;\r\n @Input() showTooltips = true;\r\n\r\n @Output() outFontSize = new EventEmitter();\r\n @Output() outFont = new EventEmitter();\r\n @Output() outBold = new EventEmitter();\r\n @Output() outItalic = new EventEmitter();\r\n @Output() outUnderline = new EventEmitter();\r\n @Output() outColor = new EventEmitter();\r\n\r\n fontSizeOptions = FormattingService.getFontSizeOptions();\r\n fontOptions = FormattingService.getFontOptions();\r\n colorPickerShow = false;\r\n\r\n isMobile: boolean;\r\n\r\n constructor(private _onCloseService: OnCloseService,\r\n private _zoomService: ZoomService,\r\n private _windowService: WindowService,\r\n protected _elementRef: ElementRef,\r\n private renderer: Renderer2) {\r\n \r\n _onCloseService.onClose.subscribe(() => {\r\n this.colorPickerShow = false;\r\n });\r\n\r\n this.isMobile = _windowService.isMobile();\r\n _windowService.onResize.subscribe((w) => {\r\n this.isMobile = _windowService.isMobile();\r\n });\r\n\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n if (this.isMobile)\r\n {\r\n this.changePosition(val);\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n changePosition(val: number) {\r\n const top = (window.innerHeight - 24 - this._elementRef.nativeElement.parentElement.getBoundingClientRect().top - this._elementRef.nativeElement.parentElement.getBoundingClientRect().height);\r\n const left = this._elementRef.nativeElement.parentElement.getBoundingClientRect().left;\r\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'width', window.innerWidth + 'px');\r\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'top', top + 'px');\r\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-text-menu'), 'left', -left + 'px');\r\n }\r\n\r\n selectFontSize($event: Option) {\r\n $(\".gd-wrapper\").off(\"keyup\");\r\n this.outFontSize.emit($event.value);\r\n $(\".gd-wrapper\").on(\"keyup\", () => {\r\n const fontElements = document.getElementsByTagName(\"font\");\r\n for (let i = 0, len = fontElements.length; i < len; ++i) {\r\n if (fontElements[i].getAttribute('size') === \"7\") {\r\n fontElements[i].removeAttribute(\"size\");\r\n fontElements[i].style.fontSize = $event + \"px\";\r\n }\r\n }\r\n });\r\n }\r\n\r\n selectFont($event: Option) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.outFont.emit($event.value);\r\n }\r\n\r\n toggleColorPicker($event) {\r\n $event.preventDefault();\r\n $event.stopPropagation();\r\n this.colorPickerShow = !this.colorPickerShow;\r\n }\r\n\r\n selectColor($event: string) {\r\n this.colorPickerShow = false;\r\n this.outColor.emit($event);\r\n }\r\n\r\n toggleBold(event) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.outBold.emit(!this.bold);\r\n }\r\n\r\n toggleItalic(event) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.outItalic.emit(!this.italic);\r\n }\r\n\r\n toggleUnderline(event) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.outUnderline.emit(!this.underline);\r\n }\r\n\r\n closePicker($event) {\r\n this.colorPickerShow = !$event;\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output, Renderer2, ElementRef} from '@angular/core';\r\nimport {Formatting} from \"../formatting.service\";\r\nimport {WindowService} from \"../window.service\";\r\nimport { ZoomService } from '../zoom.service';\r\n\r\nexport class MenuType {\r\n public static FOR_SIGNATURE = \"signature\";\r\n public static FOR_ANNOTATION = \"annotation\";\r\n}\r\n\r\n@Component({\r\n selector: 'gd-context-menu',\r\n templateUrl: './context-menu.component.html',\r\n styleUrls: ['./context-menu.component.less']\r\n})\r\nexport class ContextMenuComponent implements OnInit {\r\n @Input() formatting: Formatting = Formatting.default();\r\n @Input() textMenu: boolean;\r\n @Input() topPosition: number;\r\n @Input() lock = false;\r\n @Input() translation = 0;\r\n @Input() menuType: string;\r\n @Output() changeFormatting = new EventEmitter();\r\n @Output() removeItem = new EventEmitter();\r\n @Output() copySign = new EventEmitter();\r\n @Output() lockOut = new EventEmitter();\r\n @Output() comment = new EventEmitter();\r\n\r\n isMobile: boolean;\r\n\r\n constructor(private _windowService: WindowService,\r\n private _zoomService: ZoomService,\r\n protected _elementRef: ElementRef,\r\n private renderer: Renderer2) {\r\n this.isMobile = _windowService.isMobile();\r\n _windowService.onResize.subscribe((w) => {\r\n this.isMobile = _windowService.isMobile();\r\n });\r\n\r\n _zoomService.zoomChange.subscribe((val: number) => {\r\n if (this.isMobile)\r\n {\r\n this.changeScale(val);\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n changeScale(val: number){\r\n this.renderer.setStyle(this._elementRef.nativeElement.querySelector('.gd-context-menu'), 'transform', 'scale(' + 1/(val/100) + ')');\r\n }\r\n\r\n saveChanges() {\r\n this.changeFormatting.emit(this.formatting);\r\n }\r\n\r\n selectFontSize($event: number) {\r\n this.formatting.fontSize = $event;\r\n this.saveChanges();\r\n }\r\n\r\n selectFont($event: string) {\r\n this.formatting.font = $event;\r\n this.saveChanges();\r\n }\r\n\r\n selectColor($event: string) {\r\n this.formatting.color = $event;\r\n this.saveChanges();\r\n }\r\n\r\n toggleBold($event) {\r\n this.formatting.bold = $event;\r\n this.saveChanges();\r\n }\r\n\r\n toggleItalic($event) {\r\n this.formatting.italic = $event;\r\n this.saveChanges();\r\n }\r\n\r\n toggleUnderline($event) {\r\n this.formatting.underline = $event;\r\n this.saveChanges();\r\n }\r\n\r\n deleteItem() {\r\n this.removeItem.emit(true);\r\n }\r\n\r\n toggleLock() {\r\n this.lock = !this.lock;\r\n this.lockOut.emit(this.lock);\r\n }\r\n\r\n onCopySign() {\r\n this.copySign.emit(true);\r\n }\r\n\r\n isSignature() {\r\n return this.menuType === MenuType.FOR_SIGNATURE;\r\n }\r\n\r\n isAnnotation() {\r\n return this.menuType === MenuType.FOR_ANNOTATION;\r\n }\r\n\r\n addComment() {\r\n this.comment.emit(true);\r\n }\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {TopToolbarComponent} from './top-toolbar/top-toolbar.component';\r\nimport {SidePanelComponent} from './side-panel/side-panel.component';\r\nimport {ButtonComponent} from './button/button.component';\r\nimport {LogoComponent} from './logo/logo.component';\r\nimport {TooltipComponent} from './tooltip/tooltip.component';\r\nimport {FontAwesomeModule} from '@fortawesome/angular-fontawesome';\r\nimport {library} from '@fortawesome/fontawesome-svg-core';\r\nimport {fas} from '@fortawesome/free-solid-svg-icons';\r\nimport {far} from '@fortawesome/free-regular-svg-icons';\r\nimport {Api, ConfigService,} from \"./config.service\";\r\nimport {ModalService} from \"./modal.service\";\r\nimport {ModalComponent} from './modal/modal.component';\r\nimport {BrowseFilesModalComponent} from './browse-files-modal/browse-files-modal.component';\r\nimport {FileModel, FileService, FileUtil, Utils} from \"./file.service\";\r\nimport {DocumentComponent} from './document/document.component';\r\nimport {PageComponent} from './page/page.component';\r\nimport {HighlightSearchPipe, SanitizeHtmlPipe, SanitizeResourceHtmlPipe, SanitizeStylePipe} from \"./pipes\";\r\nimport {UploadFileZoneComponent} from './upload-file-zone/upload-file-zone.component';\r\nimport {UploadFilesService} from \"./upload-files.service\";\r\nimport {DndDirective} from './dnd.directive';\r\nimport {ScrollableDirective} from './scrollable.directive';\r\nimport {MouseWheelDirective} from './mousewheel.directive';\r\nimport {NavigateService} from \"./navigate.service\";\r\nimport {PagePreloadService} from \"./page-preload.service\";\r\nimport {ZoomDirective} from './zoom.directive';\r\nimport {ZoomService} from \"./zoom.service\";\r\nimport {SelectComponent} from './select/select.component';\r\nimport {DisabledCursorDirective} from './disabled-cursor.directive';\r\nimport {RotationDirective} from './rotation.directive';\r\nimport {InitStateComponent} from './init-state/init-state.component';\r\nimport {RenderPrintService} from \"./render-print.service\";\r\nimport {RenderPrintDirective} from './render-print.directive';\r\nimport {ErrorModalComponent} from './error-modal/error-modal.component';\r\nimport {PasswordRequiredComponent} from './password-required/password-required.component';\r\nimport {ExceptionMessageService} from \"./exception-message.service\";\r\nimport {PasswordService} from \"./password.service\";\r\nimport {ErrorInterceptorService} from \"./error-interceptor.service\";\r\nimport {SearchComponent} from './search/search.component';\r\nimport {SearchableDirective} from './searchable.directive';\r\nimport {SearchService} from \"./search.service\";\r\nimport {WindowService} from \"./window.service\";\r\nimport {ViewportService} from \"./viewport.service\";\r\nimport {TabbedToolbarsComponent} from './tabbed-toolbars/tabbed-toolbars.component';\r\nimport {TabComponent} from \"./tab/tab.component\";\r\nimport {TabsComponent} from \"./tabs/tabs.component\";\r\nimport {FormattingService} from \"./formatting.service\";\r\nimport {ColorPickerComponent} from './color-picker/color-picker.component';\r\nimport {FormattingDirective} from './formatting.directive';\r\nimport {BackFormattingService} from \"./back-formatting.service\";\r\nimport {OnCloseService} from \"./on-close.service\";\r\nimport {SuccessModalComponent} from './success-modal/success-modal.component';\r\nimport {EditorDirective} from './editor.directive';\r\nimport {LoadingMaskComponent} from './loading-mask/loading-mask.component';\r\nimport {LoadingMaskService} from './loading-mask.service';\r\nimport {LoadingMaskInterceptorService} from \"./loading-mask-interceptor.service\";\r\nimport {TabActivatorService} from \"./tab-activator.service\";\r\nimport {\r\n DropDownComponent,\r\n DropDownItemComponent,\r\n DropDownItemsComponent,\r\n DropDownToggleComponent\r\n} from './drop-down/drop-down.component';\r\nimport {ClickOutsideModule} from 'ng-click-outside';\r\nimport {LeftSideBarComponent} from './left-side-bar/left-side-bar.component';\r\nimport {TooltipDirective} from './tooltip.directive';\r\nimport {AddDynamicComponentService} from \"./add-dynamic-component.service\";\r\nimport {HostDynamicDirective} from './host-dynamic.directive';\r\nimport {HostingDynamicComponentService} from \"./hosting-dynamic-component.service\";\r\nimport {ResizingComponent} from './resizing/resizing.component';\r\nimport {TopTabComponent} from './top-tab/top-tab.component';\r\nimport {TopTabActivatorService} from \"./top-tab-activator.service\";\r\nimport {TextMenuComponent} from './text-menu/text-menu.component';\r\nimport {ContextMenuComponent} from './context-menu/context-menu.component';\r\n\r\nconst providers = [ConfigService,\r\n Api,\r\n ModalService,\r\n FileService,\r\n FileModel,\r\n FileUtil,\r\n Utils,\r\n SanitizeHtmlPipe,\r\n SanitizeResourceHtmlPipe,\r\n SanitizeStylePipe,\r\n HighlightSearchPipe,\r\n UploadFilesService,\r\n RenderPrintService,\r\n NavigateService,\r\n PagePreloadService,\r\n ZoomService,\r\n ExceptionMessageService,\r\n PasswordService,\r\n ErrorInterceptorService,\r\n SearchService,\r\n WindowService,\r\n ViewportService,\r\n FormattingService,\r\n BackFormattingService,\r\n OnCloseService,\r\n LoadingMaskInterceptorService,\r\n LoadingMaskService,\r\n TabActivatorService,\r\n AddDynamicComponentService,\r\n HostingDynamicComponentService,\r\n TopTabActivatorService];\r\n\r\n@NgModule({\r\n imports: [CommonModule, FontAwesomeModule, ClickOutsideModule],\r\n declarations: [\r\n TopToolbarComponent,\r\n SidePanelComponent,\r\n ButtonComponent,\r\n LogoComponent,\r\n TooltipComponent,\r\n ModalComponent,\r\n BrowseFilesModalComponent,\r\n DocumentComponent,\r\n PageComponent,\r\n SanitizeHtmlPipe,\r\n SanitizeResourceHtmlPipe,\r\n SanitizeStylePipe,\r\n HighlightSearchPipe,\r\n UploadFileZoneComponent,\r\n DndDirective,\r\n ScrollableDirective,\r\n MouseWheelDirective,\r\n ZoomDirective,\r\n SelectComponent,\r\n DisabledCursorDirective,\r\n RotationDirective,\r\n InitStateComponent,\r\n RenderPrintDirective,\r\n ErrorModalComponent,\r\n PasswordRequiredComponent,\r\n SearchComponent,\r\n SearchableDirective,\r\n TabbedToolbarsComponent,\r\n TabComponent,\r\n TabsComponent,\r\n ColorPickerComponent,\r\n FormattingDirective,\r\n SuccessModalComponent,\r\n EditorDirective,\r\n LoadingMaskComponent,\r\n DropDownComponent,\r\n DropDownItemComponent,\r\n DropDownItemsComponent,\r\n DropDownToggleComponent,\r\n LeftSideBarComponent,\r\n TooltipDirective,\r\n HostDynamicDirective,\r\n ResizingComponent,\r\n TopTabComponent,\r\n TextMenuComponent,\r\n ContextMenuComponent\r\n ],\r\n exports: [\r\n TopToolbarComponent,\r\n SidePanelComponent,\r\n ButtonComponent,\r\n LogoComponent,\r\n TooltipComponent,\r\n ModalComponent,\r\n BrowseFilesModalComponent,\r\n DocumentComponent,\r\n PageComponent,\r\n SanitizeResourceHtmlPipe,\r\n SanitizeStylePipe,\r\n HighlightSearchPipe,\r\n SanitizeHtmlPipe,\r\n UploadFileZoneComponent,\r\n ScrollableDirective,\r\n MouseWheelDirective,\r\n SelectComponent,\r\n RotationDirective,\r\n InitStateComponent,\r\n RenderPrintDirective,\r\n ErrorModalComponent,\r\n PasswordRequiredComponent,\r\n SearchComponent,\r\n SearchableDirective,\r\n TabbedToolbarsComponent,\r\n TabComponent,\r\n TabsComponent,\r\n ColorPickerComponent,\r\n FormattingDirective,\r\n SuccessModalComponent,\r\n LoadingMaskComponent,\r\n DndDirective,\r\n DropDownComponent,\r\n DropDownItemComponent,\r\n DropDownItemsComponent,\r\n DropDownToggleComponent,\r\n ZoomDirective,\r\n DropDownToggleComponent,\r\n LeftSideBarComponent,\r\n TooltipDirective,\r\n HostDynamicDirective,\r\n ResizingComponent,\r\n TopTabComponent,\r\n TextMenuComponent,\r\n ContextMenuComponent\r\n ],\r\n providers: providers\r\n})\r\nexport class CommonComponentsModule {\r\n constructor() {\r\n library.add(fas, far);\r\n }\r\n}\r\n"],"names":["tslib_1.__extends","$","tslib_1.__values"],"mappings":"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"} \ No newline at end of file diff --git a/dist/libs/common-components/groupdocs.examples.angular-common-components.metadata.json b/dist/libs/common-components/groupdocs.examples.angular-common-components.metadata.json index 4a8002be1..99ce82451 100644 --- a/dist/libs/common-components/groupdocs.examples.angular-common-components.metadata.json +++ b/dist/libs/common-components/groupdocs.examples.angular-common-components.metadata.json @@ -1 +1 @@ -{"__symbolic":"module","version":4,"metadata":{"CommonComponentsModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":108,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":109,"character":12},{"__symbolic":"reference","module":"@fortawesome/angular-fontawesome","name":"FontAwesomeModule","line":109,"character":26},{"__symbolic":"reference","module":"ng-click-outside","name":"ClickOutsideModule","line":109,"character":45}],"declarations":[{"__symbolic":"reference","name":"TopToolbarComponent"},{"__symbolic":"reference","name":"SidePanelComponent"},{"__symbolic":"reference","name":"ButtonComponent"},{"__symbolic":"reference","name":"LogoComponent"},{"__symbolic":"reference","name":"TooltipComponent"},{"__symbolic":"reference","name":"ModalComponent"},{"__symbolic":"reference","name":"BrowseFilesModalComponent"},{"__symbolic":"reference","name":"DocumentComponent"},{"__symbolic":"reference","name":"PageComponent"},{"__symbolic":"reference","name":"SanitizeHtmlPipe"},{"__symbolic":"reference","name":"SanitizeResourceHtmlPipe"},{"__symbolic":"reference","name":"SanitizeStylePipe"},{"__symbolic":"reference","name":"HighlightSearchPipe"},{"__symbolic":"reference","name":"UploadFileZoneComponent"},{"__symbolic":"reference","name":"DndDirective"},{"__symbolic":"reference","name":"ScrollableDirective"},{"__symbolic":"reference","name":"MouseWheelDirective"},{"__symbolic":"reference","name":"ZoomDirective"},{"__symbolic":"reference","name":"SelectComponent"},{"__symbolic":"reference","name":"DisabledCursorDirective"},{"__symbolic":"reference","name":"RotationDirective"},{"__symbolic":"reference","name":"InitStateComponent"},{"__symbolic":"reference","name":"RenderPrintDirective"},{"__symbolic":"reference","name":"ErrorModalComponent"},{"__symbolic":"reference","name":"PasswordRequiredComponent"},{"__symbolic":"reference","name":"SearchComponent"},{"__symbolic":"reference","name":"SearchableDirective"},{"__symbolic":"reference","name":"TabbedToolbarsComponent"},{"__symbolic":"reference","name":"TabComponent"},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ColorPickerComponent"},{"__symbolic":"reference","name":"FormattingDirective"},{"__symbolic":"reference","name":"SuccessModalComponent"},{"__symbolic":"reference","name":"EditorDirective"},{"__symbolic":"reference","name":"LoadingMaskComponent"},{"__symbolic":"reference","name":"DropDownComponent"},{"__symbolic":"reference","name":"DropDownItemComponent"},{"__symbolic":"reference","name":"DropDownItemsComponent"},{"__symbolic":"reference","name":"DropDownToggleComponent"},{"__symbolic":"reference","name":"LeftSideBarComponent"},{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"HostDynamicDirective"},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"ɵd"},{"__symbolic":"reference","name":"TextMenuComponent"},{"__symbolic":"reference","name":"ContextMenuComponent"}],"exports":[{"__symbolic":"reference","name":"TopToolbarComponent"},{"__symbolic":"reference","name":"SidePanelComponent"},{"__symbolic":"reference","name":"ButtonComponent"},{"__symbolic":"reference","name":"LogoComponent"},{"__symbolic":"reference","name":"TooltipComponent"},{"__symbolic":"reference","name":"ModalComponent"},{"__symbolic":"reference","name":"BrowseFilesModalComponent"},{"__symbolic":"reference","name":"DocumentComponent"},{"__symbolic":"reference","name":"PageComponent"},{"__symbolic":"reference","name":"SanitizeResourceHtmlPipe"},{"__symbolic":"reference","name":"SanitizeStylePipe"},{"__symbolic":"reference","name":"HighlightSearchPipe"},{"__symbolic":"reference","name":"SanitizeHtmlPipe"},{"__symbolic":"reference","name":"UploadFileZoneComponent"},{"__symbolic":"reference","name":"ScrollableDirective"},{"__symbolic":"reference","name":"MouseWheelDirective"},{"__symbolic":"reference","name":"SelectComponent"},{"__symbolic":"reference","name":"RotationDirective"},{"__symbolic":"reference","name":"InitStateComponent"},{"__symbolic":"reference","name":"RenderPrintDirective"},{"__symbolic":"reference","name":"ErrorModalComponent"},{"__symbolic":"reference","name":"PasswordRequiredComponent"},{"__symbolic":"reference","name":"SearchComponent"},{"__symbolic":"reference","name":"SearchableDirective"},{"__symbolic":"reference","name":"TabbedToolbarsComponent"},{"__symbolic":"reference","name":"TabComponent"},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ColorPickerComponent"},{"__symbolic":"reference","name":"FormattingDirective"},{"__symbolic":"reference","name":"SuccessModalComponent"},{"__symbolic":"reference","name":"LoadingMaskComponent"},{"__symbolic":"reference","name":"DndDirective"},{"__symbolic":"reference","name":"DropDownComponent"},{"__symbolic":"reference","name":"DropDownItemComponent"},{"__symbolic":"reference","name":"DropDownItemsComponent"},{"__symbolic":"reference","name":"DropDownToggleComponent"},{"__symbolic":"reference","name":"ZoomDirective"},{"__symbolic":"reference","name":"DropDownToggleComponent"},{"__symbolic":"reference","name":"LeftSideBarComponent"},{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"HostDynamicDirective"},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"ɵd"},{"__symbolic":"reference","name":"TextMenuComponent"},{"__symbolic":"reference","name":"ContextMenuComponent"}],"providers":[{"__symbolic":"reference","name":"ConfigService"},{"__symbolic":"reference","name":"Api"},{"__symbolic":"reference","name":"ModalService"},{"__symbolic":"reference","name":"FileService"},{"__symbolic":"reference","name":"FileModel"},{"__symbolic":"reference","name":"FileUtil"},{"__symbolic":"reference","name":"Utils"},{"__symbolic":"reference","name":"SanitizeHtmlPipe"},{"__symbolic":"reference","name":"SanitizeResourceHtmlPipe"},{"__symbolic":"reference","name":"SanitizeStylePipe"},{"__symbolic":"reference","name":"HighlightSearchPipe"},{"__symbolic":"reference","name":"UploadFilesService"},{"__symbolic":"reference","name":"RenderPrintService"},{"__symbolic":"reference","name":"NavigateService"},{"__symbolic":"reference","name":"PagePreloadService"},{"__symbolic":"reference","name":"ZoomService"},{"__symbolic":"reference","name":"ExceptionMessageService"},{"__symbolic":"reference","name":"PasswordService"},{"__symbolic":"reference","name":"ErrorInterceptorService"},{"__symbolic":"reference","name":"SearchService"},{"__symbolic":"reference","name":"WindowService"},{"__symbolic":"reference","name":"ViewportService"},{"__symbolic":"reference","name":"FormattingService"},{"__symbolic":"reference","name":"BackFormattingService"},{"__symbolic":"reference","name":"OnCloseService"},{"__symbolic":"reference","name":"LoadingMaskInterceptorService"},{"__symbolic":"reference","name":"LoadingMaskService"},{"__symbolic":"reference","name":"TabActivatorService"},{"__symbolic":"reference","name":"AddDynamicComponentService"},{"__symbolic":"reference","name":"HostingDynamicComponentService"},{"__symbolic":"reference","name":"TopTabActivatorService"}]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]}},"Api":{"__symbolic":"class","members":{},"statics":{"VIEWER_APP":"/viewer","SIGNATURE_APP":"/signature","ANNOTATION_APP":"/annotation","SEARCH_APP":"/search","EDITOR_APP":"/editor","COMPARISON_APP":"/comparison","CONVERSION_APP":"/conversion","METADATA_APP":"/metadata","DEFAULT_API_ENDPOINT":{"__symbolic":"select","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"window"},"member":"location"},"member":"href"},"LOAD_FILE_TREE":"/loadFileTree","LOAD_CONFIG":"/loadConfig","LOAD_DOCUMENT_DESCRIPTION":"/loadDocumentDescription","LOAD_DOCUMENT_PAGE":"/loadDocumentPage","LOAD_DOCUMENT_PROPERTIES":"/loadProperties","LOAD_DOCUMENT_PROPERTIES_NAMES":"/loadPropertiesNames","SAVE_PROPERTY":"/saveProperty","REMOVE_PROPERTY":"/removeProperty","ROTATE_DOCUMENT_PAGE":"/rotateDocumentPages","UPLOAD_DOCUMENTS":"/uploadDocument","DOWNLOAD_DOCUMENTS":"/downloadDocument","LOAD_PRINT":"/loadPrint","LOAD_PRINT_PDF":"/printPdf","LOAD_THUMBNAILS":"/loadThumbnails","LOAD_FORMATS":"/loadFormats","SAVE_FILE":"/saveFile","CREATE_FILE":"/createFile","COMPARE_FILES":"/compare","CONVERT_FILE":"/convert","DELETE_SIGNATURE_FILE":"/deleteSignatureFile","REMOVE_FROM_INDEX":"/removeFromIndex","GET_FILE_STATUS":"/getFileStatus","SAVE_OPTICAL_CODE":"/saveOpticalCode","SAVE_TEXT":"/saveText","SAVE_IMAGE":"/saveImage","SAVE_STAMP":"/saveStamp","SIGN":"/sign","DOWNLOAD_SIGNED":"/downloadSigned","LOAD_SIGNATURE_IMAGE":"/loadSignatureImage","ANNOTATE":"/annotate","SEARCH":"/search","ADD_FILES_TO_INDEX":"/addFilesToIndex","httpOptionsJson":{"headers":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/common/http","name":"HttpHeaders","line":47,"character":17},"arguments":[{"Content-Type":"application/json","$quoted$":["Content-Type"]}]}},"httpOptionsJsonResponseTypeBlob":{"headers":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/common/http","name":"HttpHeaders","line":52,"character":17},"arguments":[{"Content-Type":"application/json","$quoted$":["Content-Type"]}]},"responseType":"blob"}}},"ConfigService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":59,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"getConfigEndpoint":[{"__symbolic":"method"}],"getViewerApiEndpoint":[{"__symbolic":"method"}],"getEditorApiEndpoint":[{"__symbolic":"method"}],"getComparisonApiEndpoint":[{"__symbolic":"method"}],"getConversionApiEndpoint":[{"__symbolic":"method"}],"getMetadataApiEndpoint":[{"__symbolic":"method"}],"getSignatureApiEndpoint":[{"__symbolic":"method"}],"getAnnotationApiEndpoint":[{"__symbolic":"method"}],"getSearchApiEndpoint":[{"__symbolic":"method"}]}},"CommonModals":{"__symbolic":"class","members":{},"statics":{"PasswordRequired":"gd-password-required","ErrorMessage":"gd-error-message","BrowseFiles":"gd-browse-files","CreateDocument":"gd-create-document","OperationSuccess":"gd-success-modal","DrawHandSignature":"gd-draw-hand-signature","DrawStampSignature":"gd-draw-stamp-signature","InformationMessage":"gd-information-message"}},"ModalService":{"__symbolic":"class","members":{"add":[{"__symbolic":"method"}],"remove":[{"__symbolic":"method"}],"open":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}]}},"PageModel":{"__symbolic":"class","members":{}},"RotatedPage":{"__symbolic":"class","members":{}},"FileCredentials":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}]}},"SaveFile":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"FileCredentials"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}]}},"FileDescription":{"__symbolic":"class","members":{}},"FileModel":{"__symbolic":"class","members":{}},"HttpError":{"__symbolic":"class","members":{},"statics":{"BadRequest":400,"Unauthorized":401,"Forbidden":403,"NotFound":404,"TimeOut":408,"Conflict":409,"InternalServerError":500}},"Utils":{"__symbolic":"class","members":{}},"FileUtil":{"__symbolic":"class","members":{},"statics":{"map":{"folder":{"format":"","icon":"folder","$quoted$":["format","icon"]},"pdf":{"format":"Portable Document Format","icon":"file-pdf","unit":"pt","$quoted$":["format","icon","unit"]},"doc":{"format":"Microsoft Word","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"docx":{"format":"Microsoft Word","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"docm":{"format":"Microsoft Word","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"dot":{"format":"Microsoft Word","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"dotx":{"format":"Microsoft Word","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"dotm":{"format":"Microsoft Word","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"xls":{"format":"Microsoft Excel","icon":"file-excel","unit":"px","$quoted$":["format","icon","unit"]},"xlsx":{"format":"Microsoft Excel","icon":"file-excel","unit":"px","$quoted$":["format","icon","unit"]},"xlsm":{"format":"Microsoft Excel","icon":"file-excel","unit":"px","$quoted$":["format","icon","unit"]},"xlsb":{"format":"Microsoft Excel","icon":"file-excel","unit":"px","$quoted$":["format","icon","unit"]},"xls2003":{"format":"Microsoft Excel","icon":"file-excel","unit":"px","$quoted$":["format","icon","unit"]},"xltx":{"format":"Microsoft Excel","icon":"file-excel","unit":"px","$quoted$":["format","icon","unit"]},"xltm":{"format":"Microsoft Excel","icon":"file-excel","unit":"px","$quoted$":["format","icon","unit"]},"ppt":{"format":"Microsoft PowerPoint","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"pptx":{"format":"Microsoft PowerPoint","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"pps":{"format":"Microsoft PowerPoint","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"ppsx":{"format":"Microsoft PowerPoint","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"vsd":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"vdx":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"vss":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"vsx":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"vst":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"vtx":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"vsdx":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"vdw":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"vstx":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"vssx":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"mpp":{"format":"Microsoft Project","icon":"file-alt","unit":"pt","$quoted$":["format","icon","unit"]},"mpt":{"format":"Microsoft Project","icon":"file-alt","unit":"pt","$quoted$":["format","icon","unit"]},"msg":{"format":"Microsoft Outlook","icon":"file-alt","unit":"pt","$quoted$":["format","icon","unit"]},"eml":{"format":"Microsoft Outlook","icon":"file-alt","unit":"pt","$quoted$":["format","icon","unit"]},"emlx":{"format":"Microsoft Outlook","icon":"file-alt","unit":"pt","$quoted$":["format","icon","unit"]},"one":{"format":"Microsoft OneNote","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"odt":{"format":"Open Document Text","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"ott":{"format":"Open Document Text Template","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"ods":{"format":"Open Document Spreadsheet","icon":"file-excel","unit":"px","$quoted$":["format","icon","unit"]},"odp":{"format":"Open Document Presentation","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"otp":{"format":"Open Document Presentation","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"ots":{"format":"Open Document Presentation","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"potx":{"format":"Open Document Presentation","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"potm":{"format":"Open Document Presentation","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"pptm":{"format":"Open Document Presentation","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"ppsm":{"format":"Open Document Presentation","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"rtf":{"format":"Rich Text Format","icon":"file-alt","unit":"pt","$quoted$":["format","icon","unit"]},"txt":{"format":"Plain Text File","icon":"file-alt","unit":"pt","$quoted$":["format","icon","unit"]},"csv":{"format":"Comma-Separated Values","icon":"file-excel","unit":"px","$quoted$":["format","icon","unit"]},"html":{"format":"HyperText Markup Language","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"mht":{"format":"HyperText Markup Language","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"mhtml":{"format":"HyperText Markup Language","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"xml":{"format":"Extensible Markup Language","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"xps":{"format":"XML Paper Specification","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"dxf":{"format":"AutoCAD Drawing File Format","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"dwg":{"format":"AutoCAD Drawing File Format","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"bmp":{"format":"Bitmap Picture","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"gif":{"format":"Graphics Interchange Format","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"jpg":{"format":"Joint Photographic Experts Group","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"jpe":{"format":"Joint Photographic Experts Group","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"jpeg":{"format":"Joint Photographic Experts Group","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"jfif":{"format":"Joint Photographic Experts Group","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"png":{"format":"Portable Network Graphics","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"tiff":{"format":"Tagged Image File Format","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"tif":{"format":"Tagged Image File Format","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"psd":{"format":"Tagged Image File Format","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"svg":{"format":"Tagged Image File Format","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"jp2":{"format":"Tagged Image File Format","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"epub":{"format":"Electronic Publication","icon":"file-pdf","unit":"pt","$quoted$":["format","icon","unit"]},"ico":{"format":"Windows Icon","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"webp":{"format":"Compressed Image","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"mobi":{"format":"Mobipocket eBook","icon":"file-pdf","unit":"pt","$quoted$":["format","icon","unit"]},"tex":{"format":"LaTeX Source Document","icon":"file-pdf","unit":"pt","$quoted$":["format","icon","unit"]},"djvu":{"format":"Multi-Layer Raster Image","icon":"file-alt","unit":"pt","$quoted$":["format","icon","unit"]},"unknown":{"format":"This format is not supported","icon":"file","$quoted$":["format","icon"]},"$quoted$":["folder","pdf","doc","docx","docm","dot","dotx","dotm","xls","xlsx","xlsm","xlsb","xls2003","xltx","xltm","ppt","pptx","pps","ppsx","vsd","vdx","vss","vsx","vst","vtx","vsdx","vdw","vstx","vssx","mpp","mpt","msg","eml","emlx","one","odt","ott","ods","odp","otp","ots","potx","potm","pptm","ppsm","rtf","txt","csv","html","mht","mhtml","xml","xps","dxf","dwg","bmp","gif","jpg","jpe","jpeg","jfif","png","tiff","tif","psd","svg","jp2","epub","ico","webp","mobi","tex","djvu","unknown"]}}},"FileService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}]}},"UploadFilesService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"changeFilesList":[{"__symbolic":"method"}]}},"SanitizeHtmlPipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":3,"character":1},"arguments":[{"name":"safeHtml"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/platform-browser","name":"DomSanitizer","line":5,"character":33}]}],"transform":[{"__symbolic":"method"}]}},"SanitizeResourceHtmlPipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":13,"character":1},"arguments":[{"name":"safeResourceHtml"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/platform-browser","name":"DomSanitizer","line":5,"character":33}]}],"transform":[{"__symbolic":"method"}]}},"SanitizeStylePipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":23,"character":1},"arguments":[{"name":"safeStyle"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/platform-browser","name":"DomSanitizer","line":5,"character":33}]}],"transform":[{"__symbolic":"method"}]}},"HighlightSearchPipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":33,"character":1},"arguments":[{"name":"highlight"}]}],"members":{"transform":[{"__symbolic":"method"}]}},"NavigateService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":4,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"PagePreloadService"}]}],"nextPage":[{"__symbolic":"method"}],"prevPage":[{"__symbolic":"method"}],"toLastPage":[{"__symbolic":"method"}],"toFirstPage":[{"__symbolic":"method"}],"navigateTo":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"PagePreloadService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"changeLastPageInView":[{"__symbolic":"method"}]}},"ZoomService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"changeZoom":[{"__symbolic":"method"}],"createZoomOption":[{"__symbolic":"method"}],"zoomOptions":[{"__symbolic":"method"}]}},"RenderPrintService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"changePages":[{"__symbolic":"method"}],"changeBlob":[{"__symbolic":"method"}]}},"ErrorInterceptorService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":8,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ModalService"},{"__symbolic":"reference","name":"ExceptionMessageService"}]}],"intercept":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ExceptionMessageService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"changeMessage":[{"__symbolic":"method"}]}},"PasswordService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"setPassword":[{"__symbolic":"method"}]}},"WindowService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"isMobile":[{"__symbolic":"method"}],"isTablet":[{"__symbolic":"method"}],"isDesktop":[{"__symbolic":"method"}],"getWidth":[{"__symbolic":"method"}],"getHeight":[{"__symbolic":"method"}],"isEdge":[{"__symbolic":"method"}],"isFirefox":[{"__symbolic":"method"}]}},"ViewportService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":4,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"checkInViewport":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"BrowseFilesModalComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":12,"character":1},"arguments":[{"selector":"gd-browse-files-modal","template":"\n
\n
\n \n Drop file here to upload\n
\n
\n
\n \n
\n
\n \n \n \n Upload file\n \n \n \n \n \n
{{item.name}}
\n
\n
\n
\n
\n
\n
\n \n
\n \n
\n
\n
\n
\n
\n
\n
FILE
\n
SIZE
\n
\n
\n
\n
\n
\n
\n \n
\n
..
\n
\n
\n
\n \n
\n
{{file?.name}}
\n
{{getFormatName(file)}}
\n
\n
\n
\n {{getSize(file?.size)}}\n
\n
\n
\n
\n
\n \n  Loading... Please wait.\n
\n
\n
\n","styles":[".gd-modal-table{width:100%;text-align:left}#gd-browse-section{width:1036px;height:561px;overflow-y:auto}.list-files-header{height:60px;color:#6e6e6e;font-size:13px;font-weight:700;background-color:#f4f4f4;margin-top:24px}.list-files-header.upload-url{margin-top:20px}.header-name{padding-left:24px;width:90%;line-height:60px}.header-size{padding-right:27px;line-height:60px}.file-size,.header-size{width:10%;color:#777;text-align:right}.file-description{display:-webkit-box;display:flex;width:90%;padding:18px 0 18px 24px;font-size:14px;-webkit-box-flex:1;flex:1;cursor:pointer;overflow:hidden}.file-size{font-size:12px;padding:0 27px 0 0;width:10%;line-height:79px}.list-files-header,.list-files-lines{display:-webkit-box;display:flex;width:100%;-webkit-box-pack:justify;justify-content:space-between}.gd-modal-spinner{background-color:#fff;width:100%;height:20px;text-align:center;font-size:16px}.gd-cancel-button{padding:7px;background:0 0;width:28px;overflow:hidden}.gd-cancel-button i{font-size:21px}.gd-file-name{white-space:nowrap;overflow:hidden;width:100%;text-overflow:ellipsis}.go-up{display:-webkit-box;display:flex;font-size:26px;cursor:pointer;color:#4b566c;height:79px}.go-up-dots{margin-left:20px;margin-top:22px;font-size:16px}.go-up-icon{display:block;padding:18px 0 18px 24px}.upload-panel{display:-webkit-box;display:flex;position:relative;width:100%}.upload-panel .context{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;width:100%;margin-left:24px;margin-top:24px;margin-right:24px}.upload-panel .context .context-actions{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;width:100%}.upload-panel .context .context-actions :last-child{margin-right:0}.upload-panel .context .context-actions ::ng-deep .button{height:37px;width:96px;padding:0;-webkit-box-pack:center;justify-content:center}.upload-panel .context .context-actions ::ng-deep .button ::ng-deep .text{font-size:10px}.upload-panel .context .context-panel{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;width:100%;margin-top:20px}.upload-panel .context .context-panel .upload-url{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;width:100%}.upload-panel .context .context-panel .upload-url .url-input{width:100%;height:27px;border:1px solid #25c2d4;font-size:14px;padding-left:6px}.upload-panel .context .context-panel .upload-url .url-check{width:31px;height:31px;color:#fff;font-size:15px;background-color:#25c2d4}.upload-panel .context .context-panel .upload-url .url-check .ng-fa-icon{display:block;padding:8px}.upload-panel gd-drop-down{margin-right:10px}.file-description .ng-fa-icon.fa-file-pdf{color:#e04e4e}.file-description .ng-fa-icon.fa-file-word{color:#539cf0}.file-description .ng-fa-icon.fa-file-powerpoint{color:#e29e1e}.file-description .ng-fa-icon.fa-file-excel{color:#7cbc46}.file-description .ng-fa-icon.fa-file-image{color:#c375ed}.file-description .ng-fa-icon.fa-file,.file-description .ng-fa-icon.fa-file-alt,.file-description .ng-fa-icon.fa-file-text .fa-folder{color:#4b566c}.file-description .ng-fa-icon{font-size:32px}.file-name{font-size:16px;color:#6e6e6e;overflow:hidden;text-overflow:ellipsis}.file-name-format{padding-left:11px;overflow:hidden}.file-format{font-size:10px;padding-top:3px;color:#acacac}.go-up,.list-files-lines{border-bottom:1px solid #e7e7e7}.list-files-lines:hover{background-color:#e5e5e5}.gd-dnd-wrap{background-color:#fff;cursor:default;position:absolute;width:100%;height:calc(100% - 60px);background:rgba(255,255,255,.7);z-index:1;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center}.dnd-wrapper{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;top:259px;position:absolute}.dnd-wrapper .text{color:#6e6e6e;font-size:14px}.dnd-wrapper .icon{display:-webkit-box;display:flex;width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}@media (max-width:1037px){.file-size,.header-size{width:18%}.gd-dnd-wrap{width:95%}#gd-browse-section{width:100%;height:calc(100% - 146px)}}"]}]}],"members":{"files":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"uploadConfig":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3}}]}],"selectedFileGuid":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":22,"character":3}}]}],"selectedDirectory":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":23,"character":3}}]}],"urlForUpload":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":24,"character":3}}]}],"closing":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":25,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"UploadFilesService"}]}],"ngOnInit":[{"__symbolic":"method"}],"getSize":[{"__symbolic":"method"}],"getFormatName":[{"__symbolic":"method"}],"getFormatIcon":[{"__symbolic":"method"}],"choose":[{"__symbolic":"method"}],"goUp":[{"__symbolic":"method"}],"selectUpload":[{"__symbolic":"method"}],"refresh":[{"__symbolic":"method"}],"showSpinner":[{"__symbolic":"method"}],"uploadUrl":[{"__symbolic":"method"}],"handleFileInput":[{"__symbolic":"method"}],"cleanUpload":[{"__symbolic":"method"}]}},"ButtonComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"gd-button","template":"
\n \n \n
\n \n
\n
\n","styles":[".icon-button{padding:0!important;margin:0 7px}.button{padding:0 10px;font-size:14px;color:#959da5;cursor:pointer;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;align-content:center;-webkit-box-pack:center;justify-content:center;min-width:37px;height:37px;text-align:center;position:relative;white-space:nowrap}.button.inactive{cursor:not-allowed;opacity:.4}.button.active *{color:#ccd0d4}.button.primary{background-color:#3e4e5a;color:#fff}.button.primary.active{color:#fff;background-color:#688296}.button.brand{background-color:#25c2d4;color:#fff}.button.brand.active{color:#fff;background-color:#688296}.button .text{font-size:13px;padding-left:10px}.button .button-tooltip{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}@media (max-width:1037px){.button{font-size:22px}.arrow-button{margin:5px}}"]}]}],"members":{"iconOnly":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"intent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"icon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"iconClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"tooltip":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"className":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3}}]}],"toggle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"iconSize":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"iconRegular":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3}}]}],"elementPosition":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"WindowService"}]}],"iconButtonClass":[{"__symbolic":"method"}],"onHovering":[{"__symbolic":"method"}],"onUnhovering":[{"__symbolic":"method"}],"cleanAll":[{"__symbolic":"method"}]}},"DisabledCursorDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":2,"character":1},"arguments":[{"selector":"[gdDisabledCursor]"}]}],"members":{"dis":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":7,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"cursor":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":12,"character":3},"arguments":["class.inactive"]}]}],"updateCursor":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"DndDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":3,"character":1},"arguments":[{"selector":"[gdDnd]"}]}],"members":{"closing":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":8,"character":3}}]}],"opening":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":9,"character":3}}]}],"dropped":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":10,"character":3}}]}],"active":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":12,"character":3},"arguments":["class.active"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"UploadFilesService"}]}],"onDragEnter":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":19,"character":3},"arguments":["dragenter",["$event"]]}]}],"onDragOver":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":28,"character":3},"arguments":["dragover",["$event"]]}]}],"onDragLeave":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":35,"character":3},"arguments":["dragleave",["$event"]]}]}],"onDrop":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":46,"character":3},"arguments":["drop",["$event"]]}]}],"onClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":59,"character":3},"arguments":["click",["$event"]]}]}],"closeArea":[{"__symbolic":"method"}]}},"DocumentComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":20,"character":1},"arguments":[{"selector":"gd-document","template":"
Please wait...
\n
\n
\n
\n \n
\n
\n \n
\n","styles":[":host{-webkit-box-flex:1;flex:1;-webkit-transition:.4s;transition:.4s;background-color:#e7e7e7;height:100%;overflow:scroll;touch-action:auto!important}:host .document{-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;user-select:text!important;touch-action:auto!important}.page{display:inline-block;background-color:#fff;margin:20px;box-shadow:0 3px 6px rgba(0,0,0,.16);-webkit-transition:.3s;transition:.3s}.page.excel{overflow:auto}.page.presentation{margin:0;-webkit-transition:unset;transition:unset}.page.presentation.active{margin:20px}.wait{position:absolute;top:55px;left:Calc(30%)}.panzoom{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;flex-wrap:wrap;-webkit-box-pack:center;justify-content:center;align-content:flex-start}@media (max-width:1037px){.page{min-width:unset!important;min-height:unset!important;margin:5px 0}}"]}]}],"members":{"mode":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":3}}]}],"preloadPageCount":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"file":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":29,"character":3}}]}],"selectedPage":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":52,"character":48,"context":{"typeName":"HTMLElement"},"module":"./lib/document/document.component"}]},{"__symbolic":"reference","name":"ZoomService"},{"__symbolic":"reference","name":"WindowService"},{"__symbolic":"reference","name":"NavigateService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ifExcel":[{"__symbolic":"method"}],"ifPresentation":[{"__symbolic":"method"}],"getDimensionWithUnit":[{"__symbolic":"method"}],"ifEdge":[{"__symbolic":"method"}],"ngAfterViewChecked":[{"__symbolic":"method"}],"isVisible":[{"__symbolic":"method"}]}},"ErrorModalComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"gd-error-modal","template":"\n
\n \n
\n
Something went wrong
\n
{{message ? message : 'Server is not available'}}
\n
\n
\n
\n","styles":[".gd-modal-error{display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-flex:1;flex:1}.gd-modal-error .gd-modal-error-message{font-size:12px;margin:0 24px 24px 0;word-break:break-word}.gd-modal-error .gd-modal-error-title{font-size:16px;font-weight:700;margin:14px 0 10px}#gd-error-section{max-width:468px;max-height:204px;display:-webkit-box;display:flex}#gd-error-section fa-icon{-webkit-box-flex:1;flex:1;color:#e04e4e;font-size:40px;margin:13px 23px 90px;text-align:center;max-width:46px}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ExceptionMessageService"}]}],"ngOnInit":[{"__symbolic":"method"}]}},"InitStateComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-init-state","template":"
\n
\n \n \n \n \n
\n
\n \n {{text}}\n
\n
\n","styles":[".wrapper{color:#959da5;background-color:#e7e7e7;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;width:100%;height:100%}.icon{font-size:65px;margin-bottom:43px;display:-webkit-box;display:flex;color:#959da5}.start{font-size:15px;text-align:center;color:#959da5}.gd-drag-n-drop-wrap.active{background-color:#fff;position:fixed;top:0;background:rgba(255,255,255,.8)}.gd-drag-n-drop-wrap.active .init-state-wrapper{position:absolute;opacity:.2;top:unset}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper{top:0;z-index:999}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper .icon{width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}.gd-drag-n-drop-wrap.active .text{color:#6e6e6e;font-size:14px}.init-state-dnd-wrapper,.init-state-wrapper{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;width:250px;height:250px;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center}.init-state-wrapper{top:-60px;position:relative}"]}]}],"members":{"icon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3}}]}],"text":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"fileDropped":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":10,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"dropped":[{"__symbolic":"method"}]}},"LogoComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-logo","template":"
\n \n \n
\n\n","styles":[".logo{background-color:#25c2d4;height:60px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center}.text{color:#fff;font-size:15px;text-transform:uppercase;margin:0 14px}.icon{display:none;font-size:32px;color:rgba(255,255,255,.5);margin:14px}@media (max-width:1037px){.logo{width:60px;height:60px}.logo .text{display:none}.logo .icon{display:block}}"]}]}],"members":{"logo":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"icon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ModalComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"gd-modal","template":"
\n
\n
\n
\n\n
\n
×
\n

{{title}}

\n
\n\n
\n \n
\n\n
\n\n
\n
\n
\n\n\n","styles":["@import url(https://fonts.googleapis.com/css?family=Montserrat&display=swap);:host *{font-family:'Open Sans',Arial,Helvetica,sans-serif}.gd-modal{overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0;background-color:rgba(0,0,0,.5)}.gd-modal-dialog{box-shadow:#0005 0 0 10px;position:fixed;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);z-index:1051}.gd-modal-dialog ::ng-deep .button{-webkit-box-orient:unset!important;-webkit-box-direction:unset!important;flex-direction:unset!important}.gd-modal-content{background-color:#fff;height:100%;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.gd-modal-header{height:60px;padding:0 12px 0 24px;background-color:#3e4e5a}.gd-modal-close{position:absolute;right:12px;top:12px;cursor:pointer;color:#fff;width:37px;height:37px;text-align:center}.gd-modal-close span{font-size:18px;font-weight:900;height:19px;width:10px;line-height:36px}.gd-modal-title{font-size:16px;font-weight:400;padding-top:17px;padding-bottom:22px;margin:0;color:#fff}.gd-modal-body{background-color:#fff;overflow:hidden;overflow-y:auto;height:calc(100% - 75px)}.gd-modal-footer{height:auto}.gd-modal-footer>.btn{float:right;margin:20px 15px;padding:10px 20px;cursor:pointer;font-size:12px}@media (max-width:1037px){.gd-modal-dialog{width:100%;height:100%}.gd-modal-body{height:100%}}"]}]}],"members":{"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"visible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":11,"character":3}}]}],"cancel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":12,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ModalService"},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":16,"character":54}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"open":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}],"onClose":[{"__symbolic":"method"}],"cancelClose":[{"__symbolic":"method"}]}},"PageComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-page","template":"
\n
\n \"\"\n\n
\n \n  Loading... Please wait.\n
\n
\n","styles":[".gd-page-spinner{margin-top:150px;text-align:center}.gd-wrapper{width:inherit;height:inherit}.gd-wrapper div{width:100%}::ng-deep .gd-highlight{background-color:#ff0}::ng-deep .gd-highlight-select{background-color:#ff9b00}"]}]}],"members":{"angle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"width":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"height":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"number":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"data":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"isHtml":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"editable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"PasswordRequiredComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"selector":"gd-password-required","template":"\n
\n
\n \n \n {{message}}\n \n Open\n \n
\n
\n
\n","styles":["#gd-password-section{width:375px;height:164px}.gd-password-wrap{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;margin:24px}.gd-password-wrap label{font-size:14px;color:#acacac;padding-bottom:12px}.gd-password-wrap input{height:30px;border:1px solid #25c2d4}.gd-password-wrap input.error{border-color:#e04e4e}.gd-password-wrap gd-button{align-self:flex-end}.gd-password-wrap ::ng-deep .button{height:37px;width:72px;padding:0;-webkit-box-pack:center;justify-content:center}.gd-password-wrap ::ng-deep .button ::ng-deep .text{font-size:10px!important}.gd-password-error{color:#e04e4e;padding:10px 0 12px;height:12px;line-height:12px;font-size:12px}@media (max-width:1037px){#gd-password-section{min-width:375px}}"]}]}],"members":{"cancelEvent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":14,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ExceptionMessageService"},{"__symbolic":"reference","name":"PasswordService"}]}],"ngOnInit":[{"__symbolic":"method"}],"setPassword":[{"__symbolic":"method"}],"onCloseOpen":[{"__symbolic":"method"}],"cancel":[{"__symbolic":"method"}]}},"RenderPrintDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":4,"character":1},"arguments":[{"selector":"[gdRenderPrint]"}]}],"members":{"htmlMode":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"RenderPrintService"}]}],"renderPrint":[{"__symbolic":"method"}],"openWindow":[{"__symbolic":"method"}],"renderPrintBlob":[{"__symbolic":"method"}]}},"RotationDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":2,"character":1},"arguments":[{"selector":"[gdRotation]"}]}],"members":{"angle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":7,"character":3}}]}],"isHtmlMode":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3}}]}],"width":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"height":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"withMargin":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"animation":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":13,"character":3},"arguments":["style.animation"]}]}],"transition":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":14,"character":3},"arguments":["style.transition-property"]}]}],"transform":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":15,"character":3},"arguments":["style.transform"]}]}],"margin":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":17,"character":3},"arguments":["style.margin"]}]}],"__ctor__":[{"__symbolic":"constructor"}],"updateCursor":[{"__symbolic":"method"}],"isLandscape":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"ScrollableDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":18,"character":1},"arguments":[{"selector":"[gdScrollable]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":27,"character":46,"context":{"typeName":"HTMLElement"},"module":"./lib/scrollable.directive"}]},{"__symbolic":"reference","name":"NavigateService"},{"__symbolic":"reference","name":"PagePreloadService"},{"__symbolic":"reference","name":"ZoomService"},{"__symbolic":"reference","name":"WindowService"},{"__symbolic":"reference","name":"ViewportService"}]}],"ngAfterViewInit":[{"__symbolic":"method"}],"scrolling":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":50,"character":3},"arguments":["scroll"]}]}],"resizing":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":54,"character":3},"arguments":["window:resize"]}]}],"scrollToPage":[{"__symbolic":"method"}],"getChildren":[{"__symbolic":"method"}],"getPage":[{"__symbolic":"method"}],"calculateOffset":[{"__symbolic":"method"}],"countPagesOnWidth":[{"__symbolic":"method"}],"refresh":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"getWidth":[{"__symbolic":"method"}],"getZoom":[{"__symbolic":"method"}]}},"MouseWheelDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":8,"character":1},"arguments":[{"selector":"[gdMouseWheel]"}]}],"members":{"mouseWheelUp":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":12,"character":3}}]}],"mouseWheelDown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":13,"character":3}}]}],"onMouseWheelChrome":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":15,"character":3},"arguments":["mousewheel",["$event"]]}]}],"onMouseWheelFirefox":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":19,"character":3},"arguments":["DOMMouseScroll",["$event"]]}]}],"onMouseWheelIE":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":23,"character":3},"arguments":["onmousewheel",["$event"]]}]}],"mouseWheelFunc":[{"__symbolic":"method"}]}},"SearchService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"setText":[{"__symbolic":"method"}],"setCurrent":[{"__symbolic":"method"}],"setTotal":[{"__symbolic":"method"}]}},"SearchComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"gd-search","template":"
\n \n
{{current}} of {{total}}
\n \n \n \n \n \n \n
\n","styles":[".gd-nav-search-btn{margin:3px 0 4px}.gd-nav-search-cancel{color:#fff;font-size:14px;width:37px}.gd-search-count{color:#959da5;font-size:12px;position:absolute;right:148px;top:14px}.gd-nav-search-container{background-color:#3e4e5a;width:410px;position:fixed;left:50%;top:60px;z-index:2;-webkit-transform:translate(-50%,0);transform:translate(-50%,0);display:-webkit-box;display:flex}.gd-search-input{float:left;height:30px;width:267px;font-size:14px;color:#6e6e6e;border:1px solid #25c2d4;margin:7px 0 7px 7px;box-sizing:border-box;padding:6px 0 5px 9px}input[type=text]::-ms-clear{display:none}@media (max-width:1037px){.gd-search-input{width:231px;height:30px;margin:7px 0 7px 5px}.gd-search-count{position:absolute;left:193px;top:15px}.gd-nav-search-container{width:100%}}"]}]}],"members":{"hidePanel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":10,"character":3}}]}],"textElement":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":15,"character":3},"arguments":["text",{"static":true}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"SearchService"}]}],"ngOnInit":[{"__symbolic":"method"}],"setText":[{"__symbolic":"method"}],"hide":[{"__symbolic":"method"}],"prev":[{"__symbolic":"method"}],"next":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}]}},"SearchableDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":7,"character":1},"arguments":[{"selector":"[gdSearchable]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":17,"character":46,"context":{"typeName":"HTMLElement"},"module":"./lib/searchable.directive"}]},{"__symbolic":"reference","name":"SearchService"},{"__symbolic":"reference","name":"HighlightSearchPipe"},{"__symbolic":"reference","name":"ZoomService"}]}],"highlightSearch":[{"__symbolic":"method"}],"moveToCurrent":[{"__symbolic":"method"}],"highlightEl":[{"__symbolic":"method"}],"cleanHighlight":[{"__symbolic":"method"}],"getZoom":[{"__symbolic":"method"}]}},"Option":{"__symbolic":"interface"},"SelectComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"gd-select","template":"
\n
\n {{showSelected?.name}}\n
\n \n \n
\n
\n
{{option.name}}
\n
\n
\n
\n
\n","styles":[".select{min-width:50px;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;color:#959da5}.selected-value{font-size:14px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:clip;max-width:70px}.selected-value.inactive{cursor:not-allowed;color:#ccc}.nav-caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-right:4px solid transparent;border-left:4px solid transparent;cursor:pointer}.nav-caret.inactive{cursor:not-allowed;color:#ccc}.dropdown-menu{position:absolute;top:49px;z-index:1000;float:left;min-width:96px;list-style:none;font-size:13px;text-align:left;background-color:#fff;box-shadow:0 3px 6px rgba(0,0,0,.3);background-clip:padding-box}.dropdown-menu .option{display:block;padding:7px 0 7px 7px;clear:both;font-weight:400;line-height:1.42857143;white-space:nowrap;cursor:pointer;font-size:10px}.dropdown-menu .option:hover{background-color:#25c2d4;color:#fff!important}.dropdown-menu-separator{height:1px;overflow:hidden;background-color:#f4f4f4;padding:0!important}"]}]}],"members":{"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"showSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3}}]}],"selected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":19,"character":3}}]}],"isOpen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"icon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"OnCloseService"}]}],"open":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}],"onClickOutside":[{"__symbolic":"method"}],"toggle":[{"__symbolic":"method"}],"select":[{"__symbolic":"method"}]}},"TooltipComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-tooltip","template":"\n","styles":[".tooltip{position:absolute;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;background-color:#000;color:#fff;text-align:center;border-radius:0;padding:5px;z-index:1;font-size:10px;height:11px;line-height:11px;-ms-grid-row-align:center;align-self:center;margin:0!important}.first-element{margin-left:10px!important}.last-element{margin-left:-10px!important}.tooltip.hidden{visibility:hidden}.tooltip.shown{visibility:visible}.shown:after{content:\" \";position:absolute;bottom:100%;left:50%;margin-left:-5px;border:5px solid transparent;border-bottom-color:#000}"]}]}],"members":{"text":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"position":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"getClass":[{"__symbolic":"method"}],"show":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3}}]}],"ngOnInit":[{"__symbolic":"method"}]}},"TopToolbarComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-top-toolbar","template":"
\n
\n \n
\n
\n","styles":[".top-toolbar{width:100%;height:60px;z-index:999;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.tools{width:100%;height:100%;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}@media (max-width:1037px){.top-toolbar{height:60px}.tools{height:100%;overflow-x:auto;overflow-scrolling:touch;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.tools::-webkit-scrollbar{width:0;height:0;background-color:#3e4e5a}}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]}},"SidePanelComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-side-panel","template":"
\n
\n \n
{{title}}
\n
\n \n
\n
\n \n
\n
\n
\n \n
\n
\n","styles":[".gd-side-panel-wrapper{margin-right:0;width:334px;z-index:999;background-color:#fff;-webkit-transition:margin-right .2s;transition:margin-right .2s;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-flow:column;height:100vh}.gd-side-panel-wrapper .gd-side-panel-header{height:60px;background-color:#222e35;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;flex-wrap:nowrap}.gd-side-panel-wrapper .gd-side-panel-header .icon{font-size:24px;color:#959da5;margin:18px;line-height:24px}.gd-side-panel-wrapper .gd-side-panel-header .title{font-size:13px;font-weight:700;color:#edf0f2;opacity:.57;margin-top:20px;width:100%}.gd-side-panel-wrapper .gd-side-panel-header .close,.gd-side-panel-wrapper .gd-side-panel-header .save{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.gd-side-panel-wrapper .gd-side-panel-header ::ng-deep gd-button .text{padding:0}.gd-side-panel-wrapper .gd-side-panel-body{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-flow:column;overflow:visible;overflow-y:auto;overflow-x:hidden;height:100%}@media (max-width:1037px){.gd-side-panel-wrapper{width:100%;position:absolute;left:0;right:0;top:0;bottom:0}.gd-side-panel-wrapper.only-title{height:60px!important}}"]}]}],"members":{"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"icon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"closable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"saveable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"hideSidePanel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":13,"character":3}}]}],"saveInSidePanel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":14,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"closeSidePanel":[{"__symbolic":"method"}],"saveBySidePanel":[{"__symbolic":"method"}],"toggleTitleMode":[{"__symbolic":"method"}]}},"UploadFileZoneComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"gd-upload-file-zone","template":"
\n
\n \n
\n

Drag & Drop your files here

\n

OR

\n
\n \n
\n
\n","styles":[".gd-drag-n-drop-wrap{border:2px dashed #ccc;background-color:#f8f8f8;text-align:center;cursor:default;position:absolute;width:-webkit-fill-available;left:1px;display:-webkit-box;display:flex;align-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:center;justify-content:center;opacity:.9;z-index:1}.gd-drag-n-drop-wrap h2{color:#959da5;margin:5px 0;font-size:15px;font-weight:300}.gd-drag-n-drop-wrap h4{color:#cacaca;font-weight:300;font-size:12px;margin:10px 0 15px}.gd-drag-n-drop-icon .fa-cloud-download-alt{color:#d1d1d1;font-size:110px}.gd-drag-n-drop-buttons i{margin-right:5px}.gd-drag-n-drop-buttons .btn{width:134px;height:35px;margin:0 10px;font-size:12px;font-weight:400}.gd-drag-n-drop-wrap.hover{background:#ddd;border-color:#aaa}"]}]}],"members":{"closeUpload":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":10,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"UploadFilesService"}]}],"ngOnInit":[{"__symbolic":"method"}],"handleFileInput":[{"__symbolic":"method"}],"onCloseUpload":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}]}},"ZoomDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":5,"character":1},"arguments":[{"selector":"[gdZoom]"}]}],"members":{"zoomActive":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"file":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"zoomInt":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":13,"character":3},"arguments":["style.zoom"]}]}],"transform":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":14,"character":3},"arguments":["style.transform"]}]}],"transformOrigin":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":15,"character":3},"arguments":["style.transform-origin"]}]}],"width":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":16,"character":3},"arguments":["style.width"]}]}],"height":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":17,"character":3},"arguments":["style.height"]}]}],"minWidth":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":18,"character":3},"arguments":["style.min-width"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ZoomService"},{"__symbolic":"reference","name":"WindowService"},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":21,"character":92}]}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"setStyles":[{"__symbolic":"method"}],"getScrollWidth":[{"__symbolic":"method"}],"getScrollHeight":[{"__symbolic":"method"}],"resizePages":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}]}},"SelectionService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":2,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"restoreSelection":[{"__symbolic":"method"}],"captureSelection":[{"__symbolic":"method"}],"putSelection":[{"__symbolic":"method"}],"refreshSelection":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"OnCloseService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":3,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"close":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"LoadingMaskService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":4,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"onRequestStart":[{"__symbolic":"method"}],"onRequestFinish":[{"__symbolic":"method"}],"notify":[{"__symbolic":"method"}]}},"LoadingMaskInterceptorService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"LoadingMaskService"}]}],"intercept":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"FormattingDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":7,"character":1},"arguments":[{"selector":"[gdFormatting]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"FormattingService"},{"__symbolic":"reference","name":"BackFormattingService"},{"__symbolic":"reference","name":"SelectionService"}]}],"mouseup":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":29,"character":3},"arguments":["mouseup"]}]}],"checkJustify":[{"__symbolic":"method"}],"checkList":[{"__symbolic":"method"}],"reportFontSize":[{"__symbolic":"method"}],"getComputedStyleProperty":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"toggleBold":[{"__symbolic":"method"}],"toggleUnderline":[{"__symbolic":"method"}],"toggleItalic":[{"__symbolic":"method"}],"setBgColor":[{"__symbolic":"method"}],"setColor":[{"__symbolic":"method"}],"setFontSize":[{"__symbolic":"method"}],"toggleUndo":[{"__symbolic":"method"}],"toggleRedo":[{"__symbolic":"method"}],"setFont":[{"__symbolic":"method"}],"toggleStrikeout":[{"__symbolic":"method"}],"toggleAlign":[{"__symbolic":"method"}],"toggleAlignIE":[{"__symbolic":"method"}],"toggleList":[{"__symbolic":"method"}]}},"Formatting":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"boolean"},{"__symbolic":"reference","name":"boolean"},{"__symbolic":"reference","name":"boolean"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"boolean"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}]},"statics":{"default":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"Formatting"},"arguments":[10,"#000000","#FFFFFF",false,false,false,"Arial",false,"",""]}}}},"FormattingService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"changeFormatFontSize":[{"__symbolic":"method"}],"changeFormatBold":[{"__symbolic":"method"}],"changeFormatUnderline":[{"__symbolic":"method"}],"Undo":[{"__symbolic":"method"}],"Redo":[{"__symbolic":"method"}],"changeFormatItalic":[{"__symbolic":"method"}],"changeFormatColor":[{"__symbolic":"method"}],"changeFormatBgColor":[{"__symbolic":"method"}],"changeFormatFont":[{"__symbolic":"method"}],"changeFormatStrikeout":[{"__symbolic":"method"}],"changeFormatAlign":[{"__symbolic":"method"}],"changeFormatList":[{"__symbolic":"method"}]},"statics":{"createFontSizeOption":{"__symbolic":"function","parameters":["val"],"value":{"value":{"__symbolic":"reference","name":"val"},"name":{"__symbolic":"binop","operator":"+","left":{"__symbolic":"reference","name":"val"},"right":"px"},"separator":false}},"getFontSizeOptions":{"__symbolic":"function","parameters":[],"value":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"FormattingService"},"member":"createFontSizeOption"},"arguments":[8]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"FormattingService"},"member":"createFontSizeOption"},"arguments":[10]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"FormattingService"},"member":"createFontSizeOption"},"arguments":[12]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"FormattingService"},"member":"createFontSizeOption"},"arguments":[14]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"FormattingService"},"member":"createFontSizeOption"},"arguments":[16]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"FormattingService"},"member":"createFontSizeOption"},"arguments":[18]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"FormattingService"},"member":"createFontSizeOption"},"arguments":[20]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"FormattingService"},"member":"createFontSizeOption"},"arguments":[22]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"FormattingService"},"member":"createFontSizeOption"},"arguments":[24]}]},"createFontOption":{"__symbolic":"function","parameters":["val"],"value":{"value":{"__symbolic":"reference","name":"val"},"name":{"__symbolic":"reference","name":"val"},"separator":false}}}},"BackFormattingService":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"FormattingService"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":3,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]},"statics":{"ngInjectableDef":{}}},"EditorDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":4,"character":1},"arguments":[{"selector":"[gdEditor]"}]}],"members":{"text":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"SelectionService"},{"__symbolic":"reference","name":"EditHtmlService"}]}],"onInput":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":15,"character":3},"arguments":["keyup",["$event"]]}]}],"onMouseleave":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":26,"character":3},"arguments":["mouseleave",["$event"]]}]}],"onBlur":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":35,"character":3},"arguments":["blur",["$event"]]}]}]}},"EditHtmlService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":3,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]},"statics":{"ngInjectableDef":{}}},"ColorPickerComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":13,"character":1},"arguments":[{"selector":"gd-color-picker","template":"
\n
\n
\n
\n
\n","styles":[".bcPicker-picker{border:1px;border-radius:100%}.bcPicker-palette{width:250px;background-color:#fdfdfd;z-index:999;box-shadow:0 0 5px #efefef;display:-webkit-box;display:flex;flex-wrap:wrap;-webkit-box-pack:center;justify-content:center}.bcPicker-palette>.bcPicker-color{width:18px;height:18px;margin:2px;cursor:pointer}"]}]}],"members":{"isOpen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"selectedColor":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":20,"character":3}}]}],"closeOutside":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":21,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"select":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}]}},"LoadingMaskComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"gd-loading-mask","template":"
\n
\n  Loading... Please wait.\n
\n
\n","styles":[".loading-wrapper{background:rgba(0,0,0,.5);width:100%;height:100%;font-size:14px;color:#fff;position:fixed;top:0;left:0;z-index:99999}.loading-message{position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}"]}]}],"members":{"loadingMask":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"LoadingMaskService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}]}},"SuccessModalComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-success-modal","template":"\n
\n
\n \n \n
\n
\n
\n
\n
\n","styles":[".check_mark{margin:47px auto}.sa-icon{width:80px;height:80px;border:4px solid gray;border-radius:50%;padding:0;position:relative;box-sizing:content-box}#gd-modal-success{display:-webkit-box;display:flex;overflow:hidden;width:469px;height:183px}.sa-icon.sa-success{border-color:#4caf50;-webkit-transform:scale(1.18);transform:scale(1.18)}.sa-icon.sa-success::after,.sa-icon.sa-success::before{content:'';position:absolute;width:60px;height:120px;background:#fff}.sa-icon.sa-success::before{border-radius:120px 0 0 120px;top:-7px;left:-33px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform-origin:60px 60px;transform-origin:60px 60px}.sa-icon.sa-success::after{border-radius:0 120px 120px 0;top:-11px;left:30px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform-origin:0 60px;transform-origin:0 60px}.sa-icon.sa-success .sa-placeholder{width:80px;height:80px;border:4px solid rgba(76,175,80,.5);border-radius:50%;box-sizing:content-box;position:absolute;left:-4px;top:-4px;z-index:2}.sa-icon.sa-success .sa-fix{width:5px;height:90px;background-color:#fff;position:absolute;left:28px;top:8px;z-index:1;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.sa-icon.sa-success.animate::after{-webkit-animation:4.25s ease-in rotatePlaceholder;animation:4.25s ease-in rotatePlaceholder}.animateSuccessTip{-webkit-animation:.75s animateSuccessTip;animation:.75s animateSuccessTip}.animateSuccessLong{-webkit-animation:.75s animateSuccessLong;animation:.75s animateSuccessLong}@-webkit-keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}@-webkit-keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}.sa-icon.sa-success .sa-line{height:5px;background-color:#4caf50;display:block;border-radius:2px;position:absolute;z-index:2}.sa-icon.sa-success .sa-line.sa-tip{width:25px;left:14px;top:46px;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.sa-icon.sa-success .sa-line.sa-long{width:47px;right:8px;top:38px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}@-webkit-keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@media (max-width:1037px){#gd-modal-success{left:50%;top:50%;position:relative;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"TabComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"gd-tab","template":"
\n
{{tabTitle}}
\n \n
\n
\n \n
\n","styles":[".tab-content{height:60px;position:absolute;background-color:#fff;width:100%;left:0;line-height:60px;display:none;z-index:9}.tab-content ::ng-deep .toolbar-panel{height:60px}.tab-content.active{display:-webkit-box;display:flex}.gd-tab{text-align:center;font-size:11px;color:#e5e5e5;height:30px;line-height:30px;cursor:pointer;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center}.gd-tab .icon{display:none;font-size:14px}.gd-tab .title{margin:auto 23px}.gd-tab.active{background-color:#fff;color:#3e4e5a;font-weight:700}@media (max-width:1037px){.gd-tab{height:60px;line-height:60px;width:60px}.gd-tab .title{display:none}.gd-tab .icon{display:block;font-size:22px}}"]}]}],"members":{"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"tabTitle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"icon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"active":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"content":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TabActivatorService"}]}],"activation":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"selectTab":[{"__symbolic":"method"}]}},"TabbedToolbarsComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-tabbed-toolbars","template":"
\n \n \n
\n","styles":[".top-panel{background:#3e4e5a;display:-webkit-box;display:flex;width:100%;height:90px}.top-panel ::ng-deep .logo{height:30px;font-size:16px}@media (max-width:1037px){.top-panel{height:60px}.top-panel ::ng-deep .logo{height:60px}}"]}]}],"members":{"logo":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3}}]}],"icon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"TabActivatorService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"changeActiveTab":[{"__symbolic":"method"}]}},"DropDownToggleComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":41,"character":1},"arguments":[{"selector":"gd-drop-down-toggle","template":"","encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":45,"character":18},"member":"None"},"styles":[".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"]}]}],"members":{"click":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":48,"character":3},"arguments":["click",["$event"]]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":50,"character":15},"arguments":[{"__symbolic":"reference","name":"DropDownComponent"}]}]],"parameters":[null]}]}},"DropDownItemsComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":56,"character":1},"arguments":[{"selector":"gd-drop-down-items","template":"
","encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":60,"character":18},"member":"None"},"styles":[".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":76,"character":15},"arguments":[{"__symbolic":"reference","name":"DropDownComponent"}]}]],"parameters":[null]}],"onClickOutside":[{"__symbolic":"method"}]}},"DropDownItemComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":86,"character":1},"arguments":[{"selector":"gd-drop-down-item","template":"
","styles":[".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"]}]}],"members":{"class":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":92,"character":3},"arguments":["class"]}]}],"selected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":95,"character":3}}]}],"click":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":98,"character":3},"arguments":["click"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":101,"character":15},"arguments":[{"__symbolic":"reference","name":"DropDownComponent"}]}]],"parameters":[null]}],"selectEntry":[{"__symbolic":"method"}]}},"DropDownComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":112,"character":1},"arguments":[{"selector":"gd-drop-down","template":"
","encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":116,"character":18},"member":"None"},"styles":[".drop-down{position:relative}.show .drop-down-items{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"]}]}],"members":{"placement":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":119,"character":3}}]}],"open":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":126,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":127,"character":3},"arguments":["class.show"]}]}],"class":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":130,"character":3},"arguments":["class"]}]}],"close":[{"__symbolic":"method"}],"toggle":[{"__symbolic":"method"}],"getPlacement":[{"__symbolic":"method"}]}},"LeftSideBarComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-left-side-bar","template":"
\n
\n
 Loading...\n
\n
\n \n
\n","styles":[".left-panel{border-radius:0;float:left}.gd-left-bar-fade{margin:auto;overflow:hidden;-webkit-overflow-scrolling:touch;-webkit-transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;width:100%;height:100%;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;position:fixed;z-index:1000}@media (max-width:1037px){.gd-left-bar-fade{top:100px;right:0}.gd-left-bar-spinner{top:20%}}"]}]}],"members":{"showSpinner":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"AddDynamicComponentService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ComponentFactoryResolver","line":12,"character":40},{"__symbolic":"reference","module":"@angular/core","name":"ApplicationRef","line":13,"character":31}]}],"addDynamicComponent":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"HostDynamicDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":3,"character":1},"arguments":[{"selector":"[gdHostDynamic]"}]}],"members":{"ident":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":7,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef","line":9,"character":39},{"__symbolic":"reference","name":"HostingDynamicComponentService"}]}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"HostingDynamicComponentService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"add":[{"__symbolic":"method"}],"remove":[{"__symbolic":"method"}],"find":[{"__symbolic":"method"}]}},"TopTabActivatorService":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"TabActivatorService"},"members":{"__ctor__":[{"__symbolic":"constructor"}]}},"MenuType":{"__symbolic":"class","members":{},"statics":{"FOR_SIGNATURE":"signature","FOR_ANNOTATION":"annotation"}},"ContextMenuComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":10,"character":1},"arguments":[{"selector":"gd-context-menu","template":"
10 ? 'gd-context-menu-top' : 'gd-context-menu-bottom'\">\n \n \n \n \n \n \n
\n","styles":[".gd-context-menu-top{top:-44px}.gd-context-menu-bottom{bottom:-40px}.gd-context-menu{box-shadow:rgba(0,0,0,.52) 0 0 5px;background-color:#fff;position:absolute;left:0;right:0;margin:auto;cursor:default;width:max-content;width:-moz-max-content;width:-webkit-max-content;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;z-index:999}.gd-context-menu .arrows{cursor:move}.gd-context-menu ::ng-deep .active{background-color:#e7e7e7}.gd-context-menu ::ng-deep .icon-button{margin:0!important}@media (max-width:1037px){.gd-context-menu-top{top:-42px;-webkit-transform-origin:bottom center;transform-origin:bottom center}}"]}]}],"members":{"formatting":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"textMenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"topPosition":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3}}]}],"lock":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"translation":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"menuType":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3}}]}],"changeFormatting":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":22,"character":3}}]}],"removeItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":23,"character":3}}]}],"copySign":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":24,"character":3}}]}],"lockOut":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":25,"character":3}}]}],"comment":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":26,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"WindowService"},{"__symbolic":"reference","name":"ZoomService"},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":32,"character":48,"context":{"typeName":"HTMLElement"},"module":"./lib/context-menu/context-menu.component"}]},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":33,"character":32}]}],"ngOnInit":[{"__symbolic":"method"}],"changeScale":[{"__symbolic":"method"}],"saveChanges":[{"__symbolic":"method"}],"selectFontSize":[{"__symbolic":"method"}],"selectFont":[{"__symbolic":"method"}],"selectColor":[{"__symbolic":"method"}],"toggleBold":[{"__symbolic":"method"}],"toggleItalic":[{"__symbolic":"method"}],"toggleUnderline":[{"__symbolic":"method"}],"deleteItem":[{"__symbolic":"method"}],"toggleLock":[{"__symbolic":"method"}],"onCopySign":[{"__symbolic":"method"}],"isSignature":[{"__symbolic":"method"}],"isAnnotation":[{"__symbolic":"method"}],"addComment":[{"__symbolic":"method"}]}},"TextMenuComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":10,"character":1},"arguments":[{"selector":"gd-text-menu","template":"
\n \n \n \n \n \n \n
\n
\n \n \n
\n","styles":["::ng-deep .active{background-color:#e7e7e7}.gd-text-menu{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row}.gd-text-menu .format-select{height:37px;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;max-width:80px;margin:0 3px}.gd-text-menu .first-component{margin-left:8px}.gd-text-menu ::ng-deep .dropdown-menu{top:40px!important;height:120px;overflow-y:auto}.gd-text-menu ::ng-deep .icon-button{margin:0!important}.bg-color-pic{border-radius:100%;border:1px solid #ccc;position:absolute;height:8px;width:8px;right:6px;bottom:6px}.palette{position:relative;top:40px;left:-55px;z-index:100}@media (max-width:1037px){.gd-text-menu{position:fixed;left:0;right:0;width:inherit;height:60px;-webkit-box-align:center;align-items:center;padding:0;margin:0;background-color:#fff;border-top:2px solid #707070;-webkit-transform-origin:top left;transform-origin:top left;z-index:1000}.gd-text-menu ::ng-deep .selected-value{white-space:normal!important;word-wrap:break-word}.gd-text-menu .icon{color:#fff;margin:0 9px}.gd-text-menu ::ng-deep .bcPicker-palette{left:-200px;top:-185px}.gd-text-menu .palette{top:unset;bottom:40px;left:unset;right:5px}.gd-text-menu ::ng-deep .dropdown-menu{bottom:40px;top:unset!important}.gd-text-menu ::ng-deep .first-component ::ng-deep .dropdown-menu{left:0}.gd-text-menu ::ng-deep .button{margin:3px!important;font-size:16px}}"]}]}],"members":{"blur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"fontSize":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"font":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3}}]}],"bold":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"italic":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"underline":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3}}]}],"color":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":3}}]}],"decoration":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3}}]}],"showTooltips":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":3}}]}],"outFontSize":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":26,"character":3}}]}],"outFont":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":27,"character":3}}]}],"outBold":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":28,"character":3}}]}],"outItalic":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":29,"character":3}}]}],"outUnderline":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":30,"character":3}}]}],"outColor":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":31,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"OnCloseService"},{"__symbolic":"reference","name":"ZoomService"},{"__symbolic":"reference","name":"WindowService"},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":42,"character":48,"context":{"typeName":"HTMLElement"},"module":"./lib/text-menu/text-menu.component"}]},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":43,"character":32}]}],"ngOnInit":[{"__symbolic":"method"}],"changePosition":[{"__symbolic":"method"}],"selectFontSize":[{"__symbolic":"method"}],"selectFont":[{"__symbolic":"method"}],"toggleColorPicker":[{"__symbolic":"method"}],"selectColor":[{"__symbolic":"method"}],"toggleBold":[{"__symbolic":"method"}],"toggleItalic":[{"__symbolic":"method"}],"toggleUnderline":[{"__symbolic":"method"}],"closePicker":[{"__symbolic":"method"}]}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-tabs","template":"
\n \n
\n","styles":[".gd-tabs{display:-webkit-box;display:flex}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":2,"character":1},"arguments":[{"selector":"[gdTooltip]"}]}],"members":{"showToolTip":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":7,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"onHovering":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":12,"character":3},"arguments":["mouseenter"]}]}],"onUnhovering":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":17,"character":3},"arguments":["mouseleave"]}]}]}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":6,"character":1},"arguments":[{"selector":"gd-resizing","template":"
\n\n
\n\n
\n\n
\n","styles":[".ui-resizable-handle{background-color:#679ffa;width:8px;height:8px;border-radius:100%;position:absolute;font-size:.1px;display:block}.se-resize{bottom:-5px;right:-5px;cursor:se-resize}.ne-resize{top:-5px;right:-5px;cursor:ne-resize}.sw-resize{bottom:-5px;left:-5px;cursor:sw-resize}.nw-resize{top:-5px;left:-5px;cursor:nw-resize}"]}]}],"members":{"init":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"se":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3}}]}],"ne":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"sw":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"nw":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3}}]}],"pageWidth":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"pageHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"offsetX":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":26,"character":3}}]}],"offsetY":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":27,"character":3}}]}],"offsetTop":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":28,"character":3}}]}],"offsetLeft":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":29,"character":3}}]}],"release":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":30,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"catchUp":[{"__symbolic":"method"}],"resize":[{"__symbolic":"method"}],"setOffsets":[{"__symbolic":"method"}],"end":[{"__symbolic":"method"}],"start":[{"__symbolic":"method"}],"drop":[{"__symbolic":"method"}],"getElementId":[{"__symbolic":"method"}]}},"ɵd":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"selector":"gd-top-tab","template":"
\n \n \n
\n","styles":[".gd-tab{font-size:14px;color:#3e4e5a;cursor:pointer;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;align-content:center;-webkit-box-pack:center;justify-content:center;min-width:36px;height:36px;text-align:center;position:relative;white-space:nowrap;padding:0!important;margin:0 10px}.gd-tab .gd-tab-tooltip{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;margin:0!important}.gd-tab.active{background-color:#acacac;color:#fff!important;font-weight:700}.gd-tab.disabled{cursor:not-allowed;opacity:.4}.gd-tab ::ng-deep .tooltip{font-size:12px;margin:20px -57px}.gd-tab .title{margin:auto 23px}@media (max-width:1037px){.gd-tab{font-size:20px}}"]}]}],"members":{"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"icon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"tooltip":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"activeTab":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":15,"character":3}}]}],"elementPosition":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TopTabActivatorService"},{"__symbolic":"reference","name":"ModalService"},{"__symbolic":"reference","name":"ExceptionMessageService"}]}],"activation":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"toggleTab":[{"__symbolic":"method"}]}}},"origins":{"CommonComponentsModule":"./lib/common-components.module","Api":"./lib/config.service","ConfigService":"./lib/config.service","CommonModals":"./lib/modal.service","ModalService":"./lib/modal.service","PageModel":"./lib/file.service","RotatedPage":"./lib/file.service","FileCredentials":"./lib/file.service","SaveFile":"./lib/file.service","FileDescription":"./lib/file.service","FileModel":"./lib/file.service","HttpError":"./lib/file.service","Utils":"./lib/file.service","FileUtil":"./lib/file.service","FileService":"./lib/file.service","UploadFilesService":"./lib/upload-files.service","SanitizeHtmlPipe":"./lib/pipes","SanitizeResourceHtmlPipe":"./lib/pipes","SanitizeStylePipe":"./lib/pipes","HighlightSearchPipe":"./lib/pipes","NavigateService":"./lib/navigate.service","PagePreloadService":"./lib/page-preload.service","ZoomService":"./lib/zoom.service","RenderPrintService":"./lib/render-print.service","ErrorInterceptorService":"./lib/error-interceptor.service","ExceptionMessageService":"./lib/exception-message.service","PasswordService":"./lib/password.service","WindowService":"./lib/window.service","ViewportService":"./lib/viewport.service","BrowseFilesModalComponent":"./lib/browse-files-modal/browse-files-modal.component","ButtonComponent":"./lib/button/button.component","DisabledCursorDirective":"./lib/disabled-cursor.directive","DndDirective":"./lib/dnd.directive","DocumentComponent":"./lib/document/document.component","ErrorModalComponent":"./lib/error-modal/error-modal.component","InitStateComponent":"./lib/init-state/init-state.component","LogoComponent":"./lib/logo/logo.component","ModalComponent":"./lib/modal/modal.component","PageComponent":"./lib/page/page.component","PasswordRequiredComponent":"./lib/password-required/password-required.component","RenderPrintDirective":"./lib/render-print.directive","RotationDirective":"./lib/rotation.directive","ScrollableDirective":"./lib/scrollable.directive","MouseWheelDirective":"./lib/mousewheel.directive","SearchService":"./lib/search.service","SearchComponent":"./lib/search/search.component","SearchableDirective":"./lib/searchable.directive","Option":"./lib/select/select.component","SelectComponent":"./lib/select/select.component","TooltipComponent":"./lib/tooltip/tooltip.component","TopToolbarComponent":"./lib/top-toolbar/top-toolbar.component","SidePanelComponent":"./lib/side-panel/side-panel.component","UploadFileZoneComponent":"./lib/upload-file-zone/upload-file-zone.component","ZoomDirective":"./lib/zoom.directive","SelectionService":"./lib/selection.service","OnCloseService":"./lib/on-close.service","LoadingMaskService":"./lib/loading-mask.service","LoadingMaskInterceptorService":"./lib/loading-mask-interceptor.service","FormattingDirective":"./lib/formatting.directive","Formatting":"./lib/formatting.service","FormattingService":"./lib/formatting.service","BackFormattingService":"./lib/back-formatting.service","EditorDirective":"./lib/editor.directive","EditHtmlService":"./lib/edit-html.service","ColorPickerComponent":"./lib/color-picker/color-picker.component","LoadingMaskComponent":"./lib/loading-mask/loading-mask.component","SuccessModalComponent":"./lib/success-modal/success-modal.component","TabComponent":"./lib/tab/tab.component","TabbedToolbarsComponent":"./lib/tabbed-toolbars/tabbed-toolbars.component","TabActivatorService":"./lib/tab-activator.service","DropDownToggleComponent":"./lib/drop-down/drop-down.component","DropDownItemsComponent":"./lib/drop-down/drop-down.component","DropDownItemComponent":"./lib/drop-down/drop-down.component","DropDownComponent":"./lib/drop-down/drop-down.component","LeftSideBarComponent":"./lib/left-side-bar/left-side-bar.component","AddDynamicComponentService":"./lib/add-dynamic-component.service","HostDynamicDirective":"./lib/host-dynamic.directive","HostingDynamicComponentService":"./lib/hosting-dynamic-component.service","TopTabActivatorService":"./lib/top-tab-activator.service","MenuType":"./lib/context-menu/context-menu.component","ContextMenuComponent":"./lib/context-menu/context-menu.component","TextMenuComponent":"./lib/text-menu/text-menu.component","ɵa":"./lib/tabs/tabs.component","ɵb":"./lib/tooltip.directive","ɵc":"./lib/resizing/resizing.component","ɵd":"./lib/top-tab/top-tab.component"},"importAs":"@groupdocs.examples.angular/common-components"} \ No newline at end of file +{"__symbolic":"module","version":4,"metadata":{"CommonComponentsModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":108,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":109,"character":12},{"__symbolic":"reference","module":"@fortawesome/angular-fontawesome","name":"FontAwesomeModule","line":109,"character":26},{"__symbolic":"reference","module":"ng-click-outside","name":"ClickOutsideModule","line":109,"character":45}],"declarations":[{"__symbolic":"reference","name":"TopToolbarComponent"},{"__symbolic":"reference","name":"SidePanelComponent"},{"__symbolic":"reference","name":"ButtonComponent"},{"__symbolic":"reference","name":"LogoComponent"},{"__symbolic":"reference","name":"TooltipComponent"},{"__symbolic":"reference","name":"ModalComponent"},{"__symbolic":"reference","name":"BrowseFilesModalComponent"},{"__symbolic":"reference","name":"DocumentComponent"},{"__symbolic":"reference","name":"PageComponent"},{"__symbolic":"reference","name":"SanitizeHtmlPipe"},{"__symbolic":"reference","name":"SanitizeResourceHtmlPipe"},{"__symbolic":"reference","name":"SanitizeStylePipe"},{"__symbolic":"reference","name":"HighlightSearchPipe"},{"__symbolic":"reference","name":"UploadFileZoneComponent"},{"__symbolic":"reference","name":"DndDirective"},{"__symbolic":"reference","name":"ScrollableDirective"},{"__symbolic":"reference","name":"MouseWheelDirective"},{"__symbolic":"reference","name":"ZoomDirective"},{"__symbolic":"reference","name":"SelectComponent"},{"__symbolic":"reference","name":"DisabledCursorDirective"},{"__symbolic":"reference","name":"RotationDirective"},{"__symbolic":"reference","name":"InitStateComponent"},{"__symbolic":"reference","name":"RenderPrintDirective"},{"__symbolic":"reference","name":"ErrorModalComponent"},{"__symbolic":"reference","name":"PasswordRequiredComponent"},{"__symbolic":"reference","name":"SearchComponent"},{"__symbolic":"reference","name":"SearchableDirective"},{"__symbolic":"reference","name":"TabbedToolbarsComponent"},{"__symbolic":"reference","name":"TabComponent"},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ColorPickerComponent"},{"__symbolic":"reference","name":"FormattingDirective"},{"__symbolic":"reference","name":"SuccessModalComponent"},{"__symbolic":"reference","name":"EditorDirective"},{"__symbolic":"reference","name":"LoadingMaskComponent"},{"__symbolic":"reference","name":"DropDownComponent"},{"__symbolic":"reference","name":"DropDownItemComponent"},{"__symbolic":"reference","name":"DropDownItemsComponent"},{"__symbolic":"reference","name":"DropDownToggleComponent"},{"__symbolic":"reference","name":"LeftSideBarComponent"},{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"HostDynamicDirective"},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"ɵd"},{"__symbolic":"reference","name":"TextMenuComponent"},{"__symbolic":"reference","name":"ContextMenuComponent"}],"exports":[{"__symbolic":"reference","name":"TopToolbarComponent"},{"__symbolic":"reference","name":"SidePanelComponent"},{"__symbolic":"reference","name":"ButtonComponent"},{"__symbolic":"reference","name":"LogoComponent"},{"__symbolic":"reference","name":"TooltipComponent"},{"__symbolic":"reference","name":"ModalComponent"},{"__symbolic":"reference","name":"BrowseFilesModalComponent"},{"__symbolic":"reference","name":"DocumentComponent"},{"__symbolic":"reference","name":"PageComponent"},{"__symbolic":"reference","name":"SanitizeResourceHtmlPipe"},{"__symbolic":"reference","name":"SanitizeStylePipe"},{"__symbolic":"reference","name":"HighlightSearchPipe"},{"__symbolic":"reference","name":"SanitizeHtmlPipe"},{"__symbolic":"reference","name":"UploadFileZoneComponent"},{"__symbolic":"reference","name":"ScrollableDirective"},{"__symbolic":"reference","name":"MouseWheelDirective"},{"__symbolic":"reference","name":"SelectComponent"},{"__symbolic":"reference","name":"RotationDirective"},{"__symbolic":"reference","name":"InitStateComponent"},{"__symbolic":"reference","name":"RenderPrintDirective"},{"__symbolic":"reference","name":"ErrorModalComponent"},{"__symbolic":"reference","name":"PasswordRequiredComponent"},{"__symbolic":"reference","name":"SearchComponent"},{"__symbolic":"reference","name":"SearchableDirective"},{"__symbolic":"reference","name":"TabbedToolbarsComponent"},{"__symbolic":"reference","name":"TabComponent"},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ColorPickerComponent"},{"__symbolic":"reference","name":"FormattingDirective"},{"__symbolic":"reference","name":"SuccessModalComponent"},{"__symbolic":"reference","name":"LoadingMaskComponent"},{"__symbolic":"reference","name":"DndDirective"},{"__symbolic":"reference","name":"DropDownComponent"},{"__symbolic":"reference","name":"DropDownItemComponent"},{"__symbolic":"reference","name":"DropDownItemsComponent"},{"__symbolic":"reference","name":"DropDownToggleComponent"},{"__symbolic":"reference","name":"ZoomDirective"},{"__symbolic":"reference","name":"DropDownToggleComponent"},{"__symbolic":"reference","name":"LeftSideBarComponent"},{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"HostDynamicDirective"},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"ɵd"},{"__symbolic":"reference","name":"TextMenuComponent"},{"__symbolic":"reference","name":"ContextMenuComponent"}],"providers":[{"__symbolic":"reference","name":"ConfigService"},{"__symbolic":"reference","name":"Api"},{"__symbolic":"reference","name":"ModalService"},{"__symbolic":"reference","name":"FileService"},{"__symbolic":"reference","name":"FileModel"},{"__symbolic":"reference","name":"FileUtil"},{"__symbolic":"reference","name":"Utils"},{"__symbolic":"reference","name":"SanitizeHtmlPipe"},{"__symbolic":"reference","name":"SanitizeResourceHtmlPipe"},{"__symbolic":"reference","name":"SanitizeStylePipe"},{"__symbolic":"reference","name":"HighlightSearchPipe"},{"__symbolic":"reference","name":"UploadFilesService"},{"__symbolic":"reference","name":"RenderPrintService"},{"__symbolic":"reference","name":"NavigateService"},{"__symbolic":"reference","name":"PagePreloadService"},{"__symbolic":"reference","name":"ZoomService"},{"__symbolic":"reference","name":"ExceptionMessageService"},{"__symbolic":"reference","name":"PasswordService"},{"__symbolic":"reference","name":"ErrorInterceptorService"},{"__symbolic":"reference","name":"SearchService"},{"__symbolic":"reference","name":"WindowService"},{"__symbolic":"reference","name":"ViewportService"},{"__symbolic":"reference","name":"FormattingService"},{"__symbolic":"reference","name":"BackFormattingService"},{"__symbolic":"reference","name":"OnCloseService"},{"__symbolic":"reference","name":"LoadingMaskInterceptorService"},{"__symbolic":"reference","name":"LoadingMaskService"},{"__symbolic":"reference","name":"TabActivatorService"},{"__symbolic":"reference","name":"AddDynamicComponentService"},{"__symbolic":"reference","name":"HostingDynamicComponentService"},{"__symbolic":"reference","name":"TopTabActivatorService"}]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]}},"Api":{"__symbolic":"class","members":{},"statics":{"VIEWER_APP":"/viewer","SIGNATURE_APP":"/signature","ANNOTATION_APP":"/annotation","SEARCH_APP":"/search","EDITOR_APP":"/editor","COMPARISON_APP":"/comparison","CONVERSION_APP":"/conversion","METADATA_APP":"/metadata","DEFAULT_API_ENDPOINT":{"__symbolic":"select","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"window"},"member":"location"},"member":"href"},"LOAD_FILE_TREE":"/loadFileTree","LOAD_CONFIG":"/loadConfig","LOAD_DOCUMENT_DESCRIPTION":"/loadDocumentDescription","LOAD_DOCUMENT_PAGE":"/loadDocumentPage","LOAD_DOCUMENT_PROPERTIES":"/loadProperties","LOAD_DOCUMENT_PROPERTIES_NAMES":"/loadPropertiesNames","SAVE_PROPERTY":"/saveProperty","REMOVE_PROPERTY":"/removeProperty","ROTATE_DOCUMENT_PAGE":"/rotateDocumentPages","UPLOAD_DOCUMENTS":"/uploadDocument","DOWNLOAD_DOCUMENTS":"/downloadDocument","LOAD_PRINT":"/loadPrint","LOAD_PRINT_PDF":"/printPdf","LOAD_THUMBNAILS":"/loadThumbnails","LOAD_FORMATS":"/loadFormats","SAVE_FILE":"/saveFile","CREATE_FILE":"/createFile","COMPARE_FILES":"/compare","CONVERT_FILE":"/convert","DELETE_SIGNATURE_FILE":"/deleteSignatureFile","REMOVE_FROM_INDEX":"/removeFromIndex","GET_FILE_STATUS":"/getFileStatus","SAVE_OPTICAL_CODE":"/saveOpticalCode","SAVE_TEXT":"/saveText","SAVE_IMAGE":"/saveImage","SAVE_STAMP":"/saveStamp","SIGN":"/sign","DOWNLOAD_SIGNED":"/downloadSigned","LOAD_SIGNATURE_IMAGE":"/loadSignatureImage","ANNOTATE":"/annotate","SEARCH":"/search","ADD_FILES_TO_INDEX":"/addFilesToIndex","httpOptionsJson":{"headers":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/common/http","name":"HttpHeaders","line":47,"character":17},"arguments":[{"Content-Type":"application/json","$quoted$":["Content-Type"]}]}},"httpOptionsJsonResponseTypeBlob":{"headers":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/common/http","name":"HttpHeaders","line":52,"character":17},"arguments":[{"Content-Type":"application/json","$quoted$":["Content-Type"]}]},"responseType":"blob"}}},"ConfigService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":59,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"getConfigEndpoint":[{"__symbolic":"method"}],"getViewerApiEndpoint":[{"__symbolic":"method"}],"getEditorApiEndpoint":[{"__symbolic":"method"}],"getComparisonApiEndpoint":[{"__symbolic":"method"}],"getConversionApiEndpoint":[{"__symbolic":"method"}],"getMetadataApiEndpoint":[{"__symbolic":"method"}],"getSignatureApiEndpoint":[{"__symbolic":"method"}],"getAnnotationApiEndpoint":[{"__symbolic":"method"}],"getSearchApiEndpoint":[{"__symbolic":"method"}]}},"CommonModals":{"__symbolic":"class","members":{},"statics":{"PasswordRequired":"gd-password-required","ErrorMessage":"gd-error-message","BrowseFiles":"gd-browse-files","CreateDocument":"gd-create-document","OperationSuccess":"gd-success-modal","DrawHandSignature":"gd-draw-hand-signature","DrawStampSignature":"gd-draw-stamp-signature","InformationMessage":"gd-information-message"}},"ModalService":{"__symbolic":"class","members":{"add":[{"__symbolic":"method"}],"remove":[{"__symbolic":"method"}],"open":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}]}},"PageModel":{"__symbolic":"class","members":{}},"RotatedPage":{"__symbolic":"class","members":{}},"FileCredentials":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}]}},"SaveFile":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"FileCredentials"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}]}},"FileDescription":{"__symbolic":"class","members":{}},"FileModel":{"__symbolic":"class","members":{}},"HttpError":{"__symbolic":"class","members":{},"statics":{"BadRequest":400,"Unauthorized":401,"Forbidden":403,"NotFound":404,"TimeOut":408,"Conflict":409,"InternalServerError":500}},"Utils":{"__symbolic":"class","members":{}},"FileUtil":{"__symbolic":"class","members":{},"statics":{"map":{"folder":{"format":"","icon":"folder","$quoted$":["format","icon"]},"pdf":{"format":"Portable Document Format","icon":"file-pdf","unit":"pt","$quoted$":["format","icon","unit"]},"doc":{"format":"Microsoft Word","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"docx":{"format":"Microsoft Word","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"docm":{"format":"Microsoft Word","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"dot":{"format":"Microsoft Word","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"dotx":{"format":"Microsoft Word","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"dotm":{"format":"Microsoft Word","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"xls":{"format":"Microsoft Excel","icon":"file-excel","unit":"px","$quoted$":["format","icon","unit"]},"xlsx":{"format":"Microsoft Excel","icon":"file-excel","unit":"px","$quoted$":["format","icon","unit"]},"xlsm":{"format":"Microsoft Excel","icon":"file-excel","unit":"px","$quoted$":["format","icon","unit"]},"xlsb":{"format":"Microsoft Excel","icon":"file-excel","unit":"px","$quoted$":["format","icon","unit"]},"xls2003":{"format":"Microsoft Excel","icon":"file-excel","unit":"px","$quoted$":["format","icon","unit"]},"xltx":{"format":"Microsoft Excel","icon":"file-excel","unit":"px","$quoted$":["format","icon","unit"]},"xltm":{"format":"Microsoft Excel","icon":"file-excel","unit":"px","$quoted$":["format","icon","unit"]},"ppt":{"format":"Microsoft PowerPoint","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"pptx":{"format":"Microsoft PowerPoint","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"pps":{"format":"Microsoft PowerPoint","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"ppsx":{"format":"Microsoft PowerPoint","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"vsd":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"vdx":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"vss":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"vsx":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"vst":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"vtx":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"vsdx":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"vdw":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"vstx":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"vssx":{"format":"Microsoft Visio","icon":"file-code","unit":"px","$quoted$":["format","icon","unit"]},"mpp":{"format":"Microsoft Project","icon":"file-alt","unit":"pt","$quoted$":["format","icon","unit"]},"mpt":{"format":"Microsoft Project","icon":"file-alt","unit":"pt","$quoted$":["format","icon","unit"]},"msg":{"format":"Microsoft Outlook","icon":"file-alt","unit":"pt","$quoted$":["format","icon","unit"]},"eml":{"format":"Microsoft Outlook","icon":"file-alt","unit":"pt","$quoted$":["format","icon","unit"]},"emlx":{"format":"Microsoft Outlook","icon":"file-alt","unit":"pt","$quoted$":["format","icon","unit"]},"one":{"format":"Microsoft OneNote","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"odt":{"format":"Open Document Text","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"ott":{"format":"Open Document Text Template","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"ods":{"format":"Open Document Spreadsheet","icon":"file-excel","unit":"px","$quoted$":["format","icon","unit"]},"odp":{"format":"Open Document Presentation","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"otp":{"format":"Open Document Presentation","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"ots":{"format":"Open Document Presentation","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"potx":{"format":"Open Document Presentation","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"potm":{"format":"Open Document Presentation","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"pptm":{"format":"Open Document Presentation","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"ppsm":{"format":"Open Document Presentation","icon":"file-powerpoint","unit":"pt","$quoted$":["format","icon","unit"]},"rtf":{"format":"Rich Text Format","icon":"file-alt","unit":"pt","$quoted$":["format","icon","unit"]},"txt":{"format":"Plain Text File","icon":"file-alt","unit":"pt","$quoted$":["format","icon","unit"]},"csv":{"format":"Comma-Separated Values","icon":"file-excel","unit":"px","$quoted$":["format","icon","unit"]},"html":{"format":"HyperText Markup Language","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"mht":{"format":"HyperText Markup Language","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"mhtml":{"format":"HyperText Markup Language","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"xml":{"format":"Extensible Markup Language","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"xps":{"format":"XML Paper Specification","icon":"file-word","unit":"pt","$quoted$":["format","icon","unit"]},"dxf":{"format":"AutoCAD Drawing File Format","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"dwg":{"format":"AutoCAD Drawing File Format","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"bmp":{"format":"Bitmap Picture","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"gif":{"format":"Graphics Interchange Format","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"jpg":{"format":"Joint Photographic Experts Group","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"jpe":{"format":"Joint Photographic Experts Group","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"jpeg":{"format":"Joint Photographic Experts Group","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"jfif":{"format":"Joint Photographic Experts Group","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"png":{"format":"Portable Network Graphics","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"tiff":{"format":"Tagged Image File Format","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"tif":{"format":"Tagged Image File Format","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"psd":{"format":"Tagged Image File Format","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"svg":{"format":"Tagged Image File Format","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"jp2":{"format":"Tagged Image File Format","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"epub":{"format":"Electronic Publication","icon":"file-pdf","unit":"pt","$quoted$":["format","icon","unit"]},"ico":{"format":"Windows Icon","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"webp":{"format":"Compressed Image","icon":"file-image","unit":"px","$quoted$":["format","icon","unit"]},"mobi":{"format":"Mobipocket eBook","icon":"file-pdf","unit":"pt","$quoted$":["format","icon","unit"]},"tex":{"format":"LaTeX Source Document","icon":"file-pdf","unit":"pt","$quoted$":["format","icon","unit"]},"djvu":{"format":"Multi-Layer Raster Image","icon":"file-alt","unit":"pt","$quoted$":["format","icon","unit"]},"unknown":{"format":"This format is not supported","icon":"file","$quoted$":["format","icon"]},"$quoted$":["folder","pdf","doc","docx","docm","dot","dotx","dotm","xls","xlsx","xlsm","xlsb","xls2003","xltx","xltm","ppt","pptx","pps","ppsx","vsd","vdx","vss","vsx","vst","vtx","vsdx","vdw","vstx","vssx","mpp","mpt","msg","eml","emlx","one","odt","ott","ods","odp","otp","ots","potx","potm","pptm","ppsm","rtf","txt","csv","html","mht","mhtml","xml","xps","dxf","dwg","bmp","gif","jpg","jpe","jpeg","jfif","png","tiff","tif","psd","svg","jp2","epub","ico","webp","mobi","tex","djvu","unknown"]}}},"FileService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}]}},"UploadFilesService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"changeFilesList":[{"__symbolic":"method"}]}},"SanitizeHtmlPipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":3,"character":1},"arguments":[{"name":"safeHtml"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/platform-browser","name":"DomSanitizer","line":5,"character":33}]}],"transform":[{"__symbolic":"method"}]}},"SanitizeResourceHtmlPipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":13,"character":1},"arguments":[{"name":"safeResourceHtml"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/platform-browser","name":"DomSanitizer","line":5,"character":33}]}],"transform":[{"__symbolic":"method"}]}},"SanitizeStylePipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":23,"character":1},"arguments":[{"name":"safeStyle"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/platform-browser","name":"DomSanitizer","line":5,"character":33}]}],"transform":[{"__symbolic":"method"}]}},"HighlightSearchPipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":33,"character":1},"arguments":[{"name":"highlight"}]}],"members":{"transform":[{"__symbolic":"method"}]}},"NavigateService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":4,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"PagePreloadService"}]}],"nextPage":[{"__symbolic":"method"}],"prevPage":[{"__symbolic":"method"}],"toLastPage":[{"__symbolic":"method"}],"toFirstPage":[{"__symbolic":"method"}],"navigateTo":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"PagePreloadService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"changeLastPageInView":[{"__symbolic":"method"}]}},"ZoomService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"changeZoom":[{"__symbolic":"method"}],"createZoomOption":[{"__symbolic":"method"}],"zoomOptions":[{"__symbolic":"method"}]}},"RenderPrintService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"changePages":[{"__symbolic":"method"}],"changeBlob":[{"__symbolic":"method"}]}},"ErrorInterceptorService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":8,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ModalService"},{"__symbolic":"reference","name":"ExceptionMessageService"}]}],"intercept":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ExceptionMessageService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"changeMessage":[{"__symbolic":"method"}]}},"PasswordService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"setPassword":[{"__symbolic":"method"}]}},"WindowService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"isMobile":[{"__symbolic":"method"}],"isTablet":[{"__symbolic":"method"}],"isDesktop":[{"__symbolic":"method"}],"getWidth":[{"__symbolic":"method"}],"getHeight":[{"__symbolic":"method"}],"isEdge":[{"__symbolic":"method"}],"isFirefox":[{"__symbolic":"method"}]}},"ViewportService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":4,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"checkInViewport":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"BrowseFilesModalComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":12,"character":1},"arguments":[{"selector":"gd-browse-files-modal","template":"\r\n
\r\n
\r\n \r\n Drop file here to upload\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Upload file\r\n \r\n \r\n \r\n \r\n \r\n
{{item.name}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
FILE
\r\n
SIZE
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
..
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{file?.name}}
\r\n
{{getFormatName(file)}}
\r\n
\r\n
\r\n
\r\n {{getSize(file?.size)}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n  Loading... Please wait.\r\n
\r\n
\r\n
\r\n","styles":[".gd-modal-table{width:100%;text-align:left}#gd-browse-section{width:1036px;height:561px;overflow-y:auto}.list-files-header{height:60px;color:#6e6e6e;font-size:13px;font-weight:700;background-color:#f4f4f4;margin-top:24px}.list-files-header.upload-url{margin-top:20px}.header-name{padding-left:24px;width:90%;line-height:60px}.header-size{padding-right:27px;line-height:60px}.file-size,.header-size{width:10%;color:#777;text-align:right}.file-description{display:flex;width:90%;padding:18px 0 18px 24px;font-size:14px;flex:1;cursor:pointer;overflow:hidden}.file-size{font-size:12px;padding:0 27px 0 0;width:10%;line-height:79px}.list-files-header,.list-files-lines{display:flex;width:100%;justify-content:space-between}.gd-modal-spinner{background-color:#fff;width:100%;height:20px;text-align:center;font-size:16px}.gd-cancel-button{padding:7px;background:0 0;width:28px;overflow:hidden}.gd-cancel-button i{font-size:21px}.gd-file-name{white-space:nowrap;overflow:hidden;width:100%;text-overflow:ellipsis}.go-up{display:flex;font-size:26px;cursor:pointer;color:#4b566c;height:79px}.go-up-dots{margin-left:20px;margin-top:22px;font-size:16px}.go-up-icon{display:block;padding:18px 0 18px 24px}.upload-panel{display:flex;position:relative;width:100%}.upload-panel .context{display:flex;flex-direction:column;width:100%;margin-left:24px;margin-top:24px;margin-right:24px}.upload-panel .context .context-actions{display:flex;flex-direction:row;width:100%}.upload-panel .context .context-actions :last-child{margin-right:0}.upload-panel .context .context-actions ::ng-deep .button{height:37px;width:96px;padding:0;justify-content:center}.upload-panel .context .context-actions ::ng-deep .button ::ng-deep .text{font-size:10px}.upload-panel .context .context-panel{display:flex;flex-direction:row;width:100%;margin-top:20px}.upload-panel .context .context-panel .upload-url{display:flex;flex-direction:row;width:100%}.upload-panel .context .context-panel .upload-url .url-input{width:100%;height:27px;border:1px solid #25c2d4;font-size:14px;padding-left:6px}.upload-panel .context .context-panel .upload-url .url-check{width:31px;height:31px;color:#fff;font-size:15px;background-color:#25c2d4}.upload-panel .context .context-panel .upload-url .url-check .ng-fa-icon{display:block;padding:8px}.upload-panel gd-drop-down{margin-right:10px}.file-description .ng-fa-icon.fa-file-pdf{color:#e04e4e}.file-description .ng-fa-icon.fa-file-word{color:#539cf0}.file-description .ng-fa-icon.fa-file-powerpoint{color:#e29e1e}.file-description .ng-fa-icon.fa-file-excel{color:#7cbc46}.file-description .ng-fa-icon.fa-file-image{color:#c375ed}.file-description .ng-fa-icon.fa-file,.file-description .ng-fa-icon.fa-file-alt,.file-description .ng-fa-icon.fa-file-text .fa-folder{color:#4b566c}.file-description .ng-fa-icon{font-size:32px}.file-name{font-size:16px;color:#6e6e6e;overflow:hidden;text-overflow:ellipsis}.file-name-format{padding-left:11px;overflow:hidden}.file-format{font-size:10px;padding-top:3px;color:#acacac}.go-up,.list-files-lines{border-bottom:1px solid #e7e7e7}.list-files-lines:hover{background-color:#e5e5e5}.gd-dnd-wrap{background-color:#fff;cursor:default;position:absolute;width:100%;height:calc(100% - 60px);background:rgba(255,255,255,.7);z-index:1;display:flex;justify-content:center;align-items:center}.dnd-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;top:259px;position:absolute}.dnd-wrapper .text{color:#6e6e6e;font-size:14px}.dnd-wrapper .icon{display:flex;width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}@media (max-width:1037px){.file-size,.header-size{width:18%}.gd-dnd-wrap{width:95%}#gd-browse-section{width:100%;height:calc(100% - 146px)}}"]}]}],"members":{"files":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"uploadConfig":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3}}]}],"selectedFileGuid":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":22,"character":3}}]}],"selectedDirectory":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":23,"character":3}}]}],"urlForUpload":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":24,"character":3}}]}],"closing":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":25,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"UploadFilesService"}]}],"ngOnInit":[{"__symbolic":"method"}],"getSize":[{"__symbolic":"method"}],"getFormatName":[{"__symbolic":"method"}],"getFormatIcon":[{"__symbolic":"method"}],"choose":[{"__symbolic":"method"}],"goUp":[{"__symbolic":"method"}],"selectUpload":[{"__symbolic":"method"}],"refresh":[{"__symbolic":"method"}],"showSpinner":[{"__symbolic":"method"}],"uploadUrl":[{"__symbolic":"method"}],"handleFileInput":[{"__symbolic":"method"}],"cleanUpload":[{"__symbolic":"method"}]}},"ButtonComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"gd-button","template":"
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n","styles":[".icon-button{padding:0!important;margin:0 7px}.button{padding:0 10px;font-size:14px;color:#959da5;cursor:pointer;display:flex;flex-direction:column;align-items:center;align-content:center;justify-content:center;min-width:37px;height:37px;text-align:center;position:relative;white-space:nowrap}.button.inactive{cursor:not-allowed;opacity:.4}.button.active *{color:#ccd0d4}.button.primary{background-color:#3e4e5a;color:#fff}.button.primary.active{color:#fff;background-color:#688296}.button.brand{background-color:#25c2d4;color:#fff}.button.brand.active{color:#fff;background-color:#688296}.button .text{font-size:13px;padding-left:10px}.button .button-tooltip{display:flex;flex-direction:column}@media (max-width:1037px){.button{font-size:22px}.arrow-button{margin:5px}}"]}]}],"members":{"iconOnly":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"intent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"icon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"iconClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"tooltip":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"className":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3}}]}],"toggle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"iconSize":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"iconRegular":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3}}]}],"elementPosition":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"WindowService"}]}],"iconButtonClass":[{"__symbolic":"method"}],"onHovering":[{"__symbolic":"method"}],"onUnhovering":[{"__symbolic":"method"}],"cleanAll":[{"__symbolic":"method"}]}},"DisabledCursorDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":2,"character":1},"arguments":[{"selector":"[gdDisabledCursor]"}]}],"members":{"dis":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":7,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"cursor":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":12,"character":3},"arguments":["class.inactive"]}]}],"updateCursor":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"DndDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":3,"character":1},"arguments":[{"selector":"[gdDnd]"}]}],"members":{"closing":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":8,"character":3}}]}],"opening":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":9,"character":3}}]}],"dropped":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":10,"character":3}}]}],"active":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":12,"character":3},"arguments":["class.active"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"UploadFilesService"}]}],"onDragEnter":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":19,"character":3},"arguments":["dragenter",["$event"]]}]}],"onDragOver":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":28,"character":3},"arguments":["dragover",["$event"]]}]}],"onDragLeave":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":35,"character":3},"arguments":["dragleave",["$event"]]}]}],"onDrop":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":46,"character":3},"arguments":["drop",["$event"]]}]}],"onClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":59,"character":3},"arguments":["click",["$event"]]}]}],"closeArea":[{"__symbolic":"method"}]}},"DocumentComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":20,"character":1},"arguments":[{"selector":"gd-document","template":"
Please wait...
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n","styles":[":host{flex:1;transition:.4s;background-color:#e7e7e7;height:100%;overflow:scroll;touch-action:auto!important}:host .document{-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;user-select:text!important;touch-action:auto!important}.page{display:inline-block;background-color:#fff;margin:20px;box-shadow:0 3px 6px rgba(0,0,0,.16);transition:.3s}.page.excel{overflow:auto}.page.presentation{margin:0;transition:unset}.page.presentation.active{margin:20px}.wait{position:absolute;top:55px;left:Calc(30%)}.panzoom{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-content:flex-start}@media (max-width:1037px){.page{min-width:unset!important;min-height:unset!important;margin:5px 0}}"]}]}],"members":{"mode":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":3}}]}],"preloadPageCount":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"file":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":29,"character":3}}]}],"selectedPage":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":52,"character":48,"context":{"typeName":"HTMLElement"},"module":"./lib/document/document.component"}]},{"__symbolic":"reference","name":"ZoomService"},{"__symbolic":"reference","name":"WindowService"},{"__symbolic":"reference","name":"NavigateService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ifExcel":[{"__symbolic":"method"}],"ifPresentation":[{"__symbolic":"method"}],"getDimensionWithUnit":[{"__symbolic":"method"}],"ifEdge":[{"__symbolic":"method"}],"ngAfterViewChecked":[{"__symbolic":"method"}],"isVisible":[{"__symbolic":"method"}]}},"ErrorModalComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"gd-error-modal","template":"\r\n
\r\n \r\n
\r\n
Something went wrong
\r\n
{{message ? message : 'Server is not available'}}
\r\n
\r\n
\r\n
\r\n","styles":[".gd-modal-error{display:inline-flex;flex-direction:column;flex:1}.gd-modal-error .gd-modal-error-message{font-size:12px;margin:0 24px 24px 0;word-break:break-word}.gd-modal-error .gd-modal-error-title{font-size:16px;font-weight:700;margin:14px 0 10px}#gd-error-section{max-width:468px;max-height:204px;display:flex}#gd-error-section fa-icon{flex:1;color:#e04e4e;font-size:40px;margin:13px 23px 90px;text-align:center;max-width:46px}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ExceptionMessageService"}]}],"ngOnInit":[{"__symbolic":"method"}]}},"InitStateComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-init-state","template":"
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {{text}}\r\n
\r\n
\r\n","styles":[".wrapper{color:#959da5;background-color:#e7e7e7;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%}.icon{font-size:65px;margin-bottom:43px;display:flex;color:#959da5}.start{font-size:15px;text-align:center;color:#959da5}.gd-drag-n-drop-wrap.active{background-color:#fff;position:fixed;top:0;background:rgba(255,255,255,.8)}.gd-drag-n-drop-wrap.active .init-state-wrapper{position:absolute;opacity:.2;top:unset}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper{top:0;z-index:999}.gd-drag-n-drop-wrap.active .init-state-dnd-wrapper .icon{width:113px;height:90px;font-size:90px;color:#3e4e5a;margin-bottom:30px}.gd-drag-n-drop-wrap.active .text{color:#6e6e6e;font-size:14px}.init-state-dnd-wrapper,.init-state-wrapper{display:flex;flex-direction:column;width:250px;height:250px;align-items:center;justify-content:center}.init-state-wrapper{top:-60px;position:relative}"]}]}],"members":{"icon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3}}]}],"text":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"fileDropped":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":10,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"dropped":[{"__symbolic":"method"}]}},"LogoComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-logo","template":"
\r\n \r\n \r\n
\r\n\r\n","styles":[".logo{background-color:#25c2d4;height:60px;display:flex;align-items:center;justify-content:center}.text{color:#fff;font-size:15px;text-transform:uppercase;margin:0 14px}.icon{display:none;font-size:32px;color:rgba(255,255,255,.5);margin:14px}@media (max-width:1037px){.logo{width:60px;height:60px}.logo .text{display:none}.logo .icon{display:block}}"]}]}],"members":{"logo":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"icon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ModalComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"gd-modal","template":"
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
×
\r\n

{{title}}

\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n","styles":["@import url(https://fonts.googleapis.com/css?family=Montserrat&display=swap);:host *{font-family:'Open Sans',Arial,Helvetica,sans-serif}.gd-modal{overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0;background-color:rgba(0,0,0,.5)}.gd-modal-dialog{box-shadow:#0005 0 0 10px;position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1051}.gd-modal-dialog ::ng-deep .button{flex-direction:unset!important}.gd-modal-content{background-color:#fff;height:100%;display:flex;flex-direction:column}.gd-modal-header{height:60px;padding:0 12px 0 24px;background-color:#3e4e5a}.gd-modal-close{position:absolute;right:12px;top:12px;cursor:pointer;color:#fff;width:37px;height:37px;text-align:center}.gd-modal-close span{font-size:18px;font-weight:900;height:19px;width:10px;line-height:36px}.gd-modal-title{font-size:16px;font-weight:400;padding-top:17px;padding-bottom:22px;margin:0;color:#fff}.gd-modal-body{background-color:#fff;overflow:hidden;overflow-y:auto;height:calc(100% - 75px)}.gd-modal-footer{height:auto}.gd-modal-footer>.btn{float:right;margin:20px 15px;padding:10px 20px;cursor:pointer;font-size:12px}@media (max-width:1037px){.gd-modal-dialog{width:100%;height:100%}.gd-modal-body{height:100%}}"]}]}],"members":{"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"visible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":11,"character":3}}]}],"cancel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":12,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ModalService"},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":16,"character":54}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"open":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}],"onClose":[{"__symbolic":"method"}],"cancelClose":[{"__symbolic":"method"}]}},"PageComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-page","template":"
\r\n
\r\n \"\"\r\n\r\n
\r\n \r\n  Loading... Please wait.\r\n
\r\n
\r\n","styles":[".gd-page-spinner{margin-top:150px;text-align:center}.gd-wrapper{width:inherit;height:inherit}.gd-wrapper div{width:100%}::ng-deep .gd-highlight{background-color:#ff0}::ng-deep .gd-highlight-select{background-color:#ff9b00}"]}]}],"members":{"angle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"width":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"height":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"number":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"data":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"isHtml":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"editable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"PasswordRequiredComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"selector":"gd-password-required","template":"\r\n
\r\n
\r\n \r\n \r\n {{message}}\r\n \r\n Open\r\n \r\n
\r\n
\r\n
\r\n","styles":["#gd-password-section{width:375px;height:164px}.gd-password-wrap{display:flex;flex-direction:column;margin:24px}.gd-password-wrap label{font-size:14px;color:#acacac;padding-bottom:12px}.gd-password-wrap input{height:30px;border:1px solid #25c2d4}.gd-password-wrap input.error{border-color:#e04e4e}.gd-password-wrap gd-button{align-self:flex-end}.gd-password-wrap ::ng-deep .button{height:37px;width:72px;padding:0;justify-content:center}.gd-password-wrap ::ng-deep .button ::ng-deep .text{font-size:10px!important}.gd-password-error{color:#e04e4e;padding:10px 0 12px;height:12px;line-height:12px;font-size:12px}@media (max-width:1037px){#gd-password-section{min-width:375px}}"]}]}],"members":{"cancelEvent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":14,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ExceptionMessageService"},{"__symbolic":"reference","name":"PasswordService"}]}],"ngOnInit":[{"__symbolic":"method"}],"setPassword":[{"__symbolic":"method"}],"onCloseOpen":[{"__symbolic":"method"}],"cancel":[{"__symbolic":"method"}]}},"RenderPrintDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":4,"character":1},"arguments":[{"selector":"[gdRenderPrint]"}]}],"members":{"htmlMode":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"RenderPrintService"}]}],"renderPrint":[{"__symbolic":"method"}],"openWindow":[{"__symbolic":"method"}],"renderPrintBlob":[{"__symbolic":"method"}]}},"RotationDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":2,"character":1},"arguments":[{"selector":"[gdRotation]"}]}],"members":{"angle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":7,"character":3}}]}],"isHtmlMode":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3}}]}],"width":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"height":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"withMargin":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"animation":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":13,"character":3},"arguments":["style.animation"]}]}],"transition":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":14,"character":3},"arguments":["style.transition-property"]}]}],"transform":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":15,"character":3},"arguments":["style.transform"]}]}],"margin":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":17,"character":3},"arguments":["style.margin"]}]}],"__ctor__":[{"__symbolic":"constructor"}],"updateCursor":[{"__symbolic":"method"}],"isLandscape":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"ScrollableDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":18,"character":1},"arguments":[{"selector":"[gdScrollable]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":27,"character":46,"context":{"typeName":"HTMLElement"},"module":"./lib/scrollable.directive"}]},{"__symbolic":"reference","name":"NavigateService"},{"__symbolic":"reference","name":"PagePreloadService"},{"__symbolic":"reference","name":"ZoomService"},{"__symbolic":"reference","name":"WindowService"},{"__symbolic":"reference","name":"ViewportService"}]}],"ngAfterViewInit":[{"__symbolic":"method"}],"scrolling":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":50,"character":3},"arguments":["scroll"]}]}],"resizing":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":54,"character":3},"arguments":["window:resize"]}]}],"scrollToPage":[{"__symbolic":"method"}],"getChildren":[{"__symbolic":"method"}],"getPage":[{"__symbolic":"method"}],"calculateOffset":[{"__symbolic":"method"}],"countPagesOnWidth":[{"__symbolic":"method"}],"refresh":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"getWidth":[{"__symbolic":"method"}],"getZoom":[{"__symbolic":"method"}]}},"MouseWheelDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":8,"character":1},"arguments":[{"selector":"[gdMouseWheel]"}]}],"members":{"mouseWheelUp":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":12,"character":3}}]}],"mouseWheelDown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":13,"character":3}}]}],"onMouseWheelChrome":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":15,"character":3},"arguments":["mousewheel",["$event"]]}]}],"onMouseWheelFirefox":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":19,"character":3},"arguments":["DOMMouseScroll",["$event"]]}]}],"onMouseWheelIE":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":23,"character":3},"arguments":["onmousewheel",["$event"]]}]}],"mouseWheelFunc":[{"__symbolic":"method"}]}},"SearchService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"setText":[{"__symbolic":"method"}],"setCurrent":[{"__symbolic":"method"}],"setTotal":[{"__symbolic":"method"}]}},"SearchComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"gd-search","template":"
\r\n \r\n
{{current}} of {{total}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n","styles":[".gd-nav-search-btn{margin:3px 0 4px}.gd-nav-search-cancel{color:#fff;font-size:14px;width:37px}.gd-search-count{color:#959da5;font-size:12px;position:absolute;right:148px;top:14px}.gd-nav-search-container{background-color:#3e4e5a;width:410px;position:fixed;left:50%;top:60px;z-index:2;transform:translate(-50%,0);display:flex}.gd-search-input{float:left;height:30px;width:267px;font-size:14px;color:#6e6e6e;border:1px solid #25c2d4;margin:7px 0 7px 7px;box-sizing:border-box;padding:6px 0 5px 9px}input[type=text]::-ms-clear{display:none}@media (max-width:1037px){.gd-search-input{width:231px;height:30px;margin:7px 0 7px 5px}.gd-search-count{position:absolute;left:193px;top:15px}.gd-nav-search-container{width:100%}}"]}]}],"members":{"hidePanel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":10,"character":3}}]}],"textElement":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":15,"character":3},"arguments":["text",{"static":true}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"SearchService"}]}],"ngOnInit":[{"__symbolic":"method"}],"setText":[{"__symbolic":"method"}],"hide":[{"__symbolic":"method"}],"prev":[{"__symbolic":"method"}],"next":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}]}},"SearchableDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":7,"character":1},"arguments":[{"selector":"[gdSearchable]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":17,"character":46,"context":{"typeName":"HTMLElement"},"module":"./lib/searchable.directive"}]},{"__symbolic":"reference","name":"SearchService"},{"__symbolic":"reference","name":"HighlightSearchPipe"},{"__symbolic":"reference","name":"ZoomService"}]}],"highlightSearch":[{"__symbolic":"method"}],"moveToCurrent":[{"__symbolic":"method"}],"highlightEl":[{"__symbolic":"method"}],"cleanHighlight":[{"__symbolic":"method"}],"getZoom":[{"__symbolic":"method"}]}},"Option":{"__symbolic":"interface"},"SelectComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"gd-select","template":"
\r\n
\r\n {{showSelected?.name}}\r\n
\r\n \r\n \r\n
\r\n
\r\n
{{option.name}}
\r\n
\r\n
\r\n
\r\n
\r\n","styles":[".select{min-width:50px;display:flex;flex-direction:row;justify-content:center;align-items:center;color:#959da5}.selected-value{font-size:14px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:clip;max-width:70px}.selected-value.inactive{cursor:not-allowed;color:#ccc}.nav-caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-right:4px solid transparent;border-left:4px solid transparent;cursor:pointer}.nav-caret.inactive{cursor:not-allowed;color:#ccc}.dropdown-menu{position:absolute;top:49px;z-index:1000;float:left;min-width:96px;list-style:none;font-size:13px;text-align:left;background-color:#fff;box-shadow:0 3px 6px rgba(0,0,0,.3);background-clip:padding-box}.dropdown-menu .option{display:block;padding:7px 0 7px 7px;clear:both;font-weight:400;line-height:1.42857143;white-space:nowrap;cursor:pointer;font-size:10px}.dropdown-menu .option:hover{background-color:#25c2d4;color:#fff!important}.dropdown-menu-separator{height:1px;overflow:hidden;background-color:#f4f4f4;padding:0!important}"]}]}],"members":{"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"showSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3}}]}],"selected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":19,"character":3}}]}],"isOpen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"icon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"OnCloseService"}]}],"open":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}],"onClickOutside":[{"__symbolic":"method"}],"toggle":[{"__symbolic":"method"}],"select":[{"__symbolic":"method"}]}},"TooltipComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-tooltip","template":"\r\n","styles":[".tooltip{position:absolute;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;background-color:#000;color:#fff;text-align:center;border-radius:0;padding:5px;z-index:1;font-size:10px;height:11px;line-height:11px;-ms-grid-row-align:center;align-self:center;margin:0!important}.first-element{margin-left:10px!important}.last-element{margin-left:-10px!important}.tooltip.hidden{visibility:hidden}.tooltip.shown{visibility:visible}.shown:after{content:\" \";position:absolute;bottom:100%;left:50%;margin-left:-5px;border:5px solid transparent;border-bottom-color:#000}"]}]}],"members":{"text":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"position":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"getClass":[{"__symbolic":"method"}],"show":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3}}]}],"ngOnInit":[{"__symbolic":"method"}]}},"TopToolbarComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-top-toolbar","template":"
\r\n
\r\n \r\n
\r\n
\r\n","styles":[".top-toolbar{width:100%;height:60px;z-index:999;display:flex;align-items:center}.tools{width:100%;height:100%;display:flex;align-items:center}@media (max-width:1037px){.top-toolbar{height:60px}.tools{height:100%;overflow-x:auto;overflow-scrolling:touch;display:flex;align-items:center;transition:.3s ease-in-out;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.tools::-webkit-scrollbar{width:0;height:0;background-color:#3e4e5a}}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]}},"SidePanelComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-side-panel","template":"
\r\n
\r\n \r\n
{{title}}
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n","styles":[".gd-side-panel-wrapper{margin-right:0;width:334px;z-index:999;background-color:#fff;transition:margin-right .2s;display:flex;flex-flow:column;height:100vh}.gd-side-panel-wrapper .gd-side-panel-header{height:60px;background-color:#222e35;display:flex;flex-direction:row;flex-wrap:nowrap}.gd-side-panel-wrapper .gd-side-panel-header .icon{font-size:24px;color:#959da5;margin:18px;line-height:24px}.gd-side-panel-wrapper .gd-side-panel-header .title{font-size:13px;font-weight:700;color:#edf0f2;opacity:.57;margin-top:20px;width:100%}.gd-side-panel-wrapper .gd-side-panel-header .close,.gd-side-panel-wrapper .gd-side-panel-header .save{display:flex;align-items:center}.gd-side-panel-wrapper .gd-side-panel-header ::ng-deep gd-button .text{padding:0}.gd-side-panel-wrapper .gd-side-panel-body{display:flex;flex-flow:column;overflow:visible;overflow-y:auto;overflow-x:hidden;height:100%}@media (max-width:1037px){.gd-side-panel-wrapper{width:100%;position:absolute;left:0;right:0;top:0;bottom:0}.gd-side-panel-wrapper.only-title{height:60px!important}}"]}]}],"members":{"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"icon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"closable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"saveable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"hideSidePanel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":13,"character":3}}]}],"saveInSidePanel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":14,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"closeSidePanel":[{"__symbolic":"method"}],"saveBySidePanel":[{"__symbolic":"method"}],"toggleTitleMode":[{"__symbolic":"method"}]}},"UploadFileZoneComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"gd-upload-file-zone","template":"
\r\n
\r\n \r\n
\r\n

Drag & Drop your files here

\r\n

OR

\r\n
\r\n \r\n
\r\n
\r\n","styles":[".gd-drag-n-drop-wrap{border:2px dashed #ccc;background-color:#f8f8f8;text-align:center;cursor:default;position:absolute;width:-webkit-fill-available;left:1px;display:flex;align-content:center;flex-direction:column;justify-content:center;opacity:.9;z-index:1}.gd-drag-n-drop-wrap h2{color:#959da5;margin:5px 0;font-size:15px;font-weight:300}.gd-drag-n-drop-wrap h4{color:#cacaca;font-weight:300;font-size:12px;margin:10px 0 15px}.gd-drag-n-drop-icon .fa-cloud-download-alt{color:#d1d1d1;font-size:110px}.gd-drag-n-drop-buttons i{margin-right:5px}.gd-drag-n-drop-buttons .btn{width:134px;height:35px;margin:0 10px;font-size:12px;font-weight:400}.gd-drag-n-drop-wrap.hover{background:#ddd;border-color:#aaa}"]}]}],"members":{"closeUpload":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":10,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"UploadFilesService"}]}],"ngOnInit":[{"__symbolic":"method"}],"handleFileInput":[{"__symbolic":"method"}],"onCloseUpload":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}]}},"ZoomDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":5,"character":1},"arguments":[{"selector":"[gdZoom]"}]}],"members":{"zoomActive":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"file":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"zoomInt":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":13,"character":3},"arguments":["style.zoom"]}]}],"transform":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":14,"character":3},"arguments":["style.transform"]}]}],"transformOrigin":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":15,"character":3},"arguments":["style.transform-origin"]}]}],"width":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":16,"character":3},"arguments":["style.width"]}]}],"height":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":17,"character":3},"arguments":["style.height"]}]}],"minWidth":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":18,"character":3},"arguments":["style.min-width"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ZoomService"},{"__symbolic":"reference","name":"WindowService"},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":21,"character":92}]}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"setStyles":[{"__symbolic":"method"}],"getScrollWidth":[{"__symbolic":"method"}],"getScrollHeight":[{"__symbolic":"method"}],"resizePages":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}]}},"SelectionService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":2,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"restoreSelection":[{"__symbolic":"method"}],"captureSelection":[{"__symbolic":"method"}],"putSelection":[{"__symbolic":"method"}],"refreshSelection":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"OnCloseService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":3,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"close":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"LoadingMaskService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":4,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"onRequestStart":[{"__symbolic":"method"}],"onRequestFinish":[{"__symbolic":"method"}],"notify":[{"__symbolic":"method"}]}},"LoadingMaskInterceptorService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"LoadingMaskService"}]}],"intercept":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"FormattingDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":7,"character":1},"arguments":[{"selector":"[gdFormatting]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"FormattingService"},{"__symbolic":"reference","name":"BackFormattingService"},{"__symbolic":"reference","name":"SelectionService"}]}],"mouseup":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":29,"character":3},"arguments":["mouseup"]}]}],"checkJustify":[{"__symbolic":"method"}],"checkList":[{"__symbolic":"method"}],"reportFontSize":[{"__symbolic":"method"}],"getComputedStyleProperty":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"toggleBold":[{"__symbolic":"method"}],"toggleUnderline":[{"__symbolic":"method"}],"toggleItalic":[{"__symbolic":"method"}],"setBgColor":[{"__symbolic":"method"}],"setColor":[{"__symbolic":"method"}],"setFontSize":[{"__symbolic":"method"}],"toggleUndo":[{"__symbolic":"method"}],"toggleRedo":[{"__symbolic":"method"}],"setFont":[{"__symbolic":"method"}],"toggleStrikeout":[{"__symbolic":"method"}],"toggleAlign":[{"__symbolic":"method"}],"toggleAlignIE":[{"__symbolic":"method"}],"toggleList":[{"__symbolic":"method"}]}},"Formatting":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"boolean"},{"__symbolic":"reference","name":"boolean"},{"__symbolic":"reference","name":"boolean"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"boolean"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}]},"statics":{"default":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"Formatting"},"arguments":[10,"#000000","#FFFFFF",false,false,false,"Arial",false,"",""]}}}},"FormattingService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"changeFormatFontSize":[{"__symbolic":"method"}],"changeFormatBold":[{"__symbolic":"method"}],"changeFormatUnderline":[{"__symbolic":"method"}],"Undo":[{"__symbolic":"method"}],"Redo":[{"__symbolic":"method"}],"changeFormatItalic":[{"__symbolic":"method"}],"changeFormatColor":[{"__symbolic":"method"}],"changeFormatBgColor":[{"__symbolic":"method"}],"changeFormatFont":[{"__symbolic":"method"}],"changeFormatStrikeout":[{"__symbolic":"method"}],"changeFormatAlign":[{"__symbolic":"method"}],"changeFormatList":[{"__symbolic":"method"}]},"statics":{"createFontSizeOption":{"__symbolic":"function","parameters":["val"],"value":{"value":{"__symbolic":"reference","name":"val"},"name":{"__symbolic":"binop","operator":"+","left":{"__symbolic":"reference","name":"val"},"right":"px"},"separator":false}},"getFontSizeOptions":{"__symbolic":"function","parameters":[],"value":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"FormattingService"},"member":"createFontSizeOption"},"arguments":[8]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"FormattingService"},"member":"createFontSizeOption"},"arguments":[10]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"FormattingService"},"member":"createFontSizeOption"},"arguments":[12]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"FormattingService"},"member":"createFontSizeOption"},"arguments":[14]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"FormattingService"},"member":"createFontSizeOption"},"arguments":[16]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"FormattingService"},"member":"createFontSizeOption"},"arguments":[18]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"FormattingService"},"member":"createFontSizeOption"},"arguments":[20]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"FormattingService"},"member":"createFontSizeOption"},"arguments":[22]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"FormattingService"},"member":"createFontSizeOption"},"arguments":[24]}]},"createFontOption":{"__symbolic":"function","parameters":["val"],"value":{"value":{"__symbolic":"reference","name":"val"},"name":{"__symbolic":"reference","name":"val"},"separator":false}}}},"BackFormattingService":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"FormattingService"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":3,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]},"statics":{"ngInjectableDef":{}}},"EditorDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":4,"character":1},"arguments":[{"selector":"[gdEditor]"}]}],"members":{"text":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"SelectionService"},{"__symbolic":"reference","name":"EditHtmlService"}]}],"onInput":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":15,"character":3},"arguments":["keyup",["$event"]]}]}],"onMouseleave":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":26,"character":3},"arguments":["mouseleave",["$event"]]}]}],"onBlur":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":35,"character":3},"arguments":["blur",["$event"]]}]}]}},"EditHtmlService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":3,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]},"statics":{"ngInjectableDef":{}}},"ColorPickerComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":13,"character":1},"arguments":[{"selector":"gd-color-picker","template":"
\r\n
\r\n
\r\n
\r\n
\r\n","styles":[".bcPicker-picker{border:1px;border-radius:100%}.bcPicker-palette{width:250px;background-color:#fdfdfd;z-index:999;box-shadow:0 0 5px #efefef;display:flex;flex-wrap:wrap;justify-content:center}.bcPicker-palette>.bcPicker-color{width:18px;height:18px;margin:2px;cursor:pointer}"]}]}],"members":{"isOpen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"selectedColor":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":20,"character":3}}]}],"closeOutside":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":21,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"select":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}]}},"LoadingMaskComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"gd-loading-mask","template":"
\r\n
\r\n  Loading... Please wait.\r\n
\r\n
\r\n","styles":[".loading-wrapper{background:rgba(0,0,0,.5);width:100%;height:100%;font-size:14px;color:#fff;position:fixed;top:0;left:0;z-index:99999}.loading-message{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}"]}]}],"members":{"loadingMask":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"LoadingMaskService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}]}},"SuccessModalComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-success-modal","template":"\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n","styles":[".check_mark{margin:47px auto}.sa-icon{width:80px;height:80px;border:4px solid gray;border-radius:50%;padding:0;position:relative;box-sizing:content-box}#gd-modal-success{display:flex;overflow:hidden;width:469px;height:183px}.sa-icon.sa-success{border-color:#4caf50;transform:scale(1.18)}.sa-icon.sa-success::after,.sa-icon.sa-success::before{content:'';position:absolute;width:60px;height:120px;background:#fff}.sa-icon.sa-success::before{border-radius:120px 0 0 120px;top:-7px;left:-33px;transform:rotate(-45deg);transform-origin:60px 60px}.sa-icon.sa-success::after{border-radius:0 120px 120px 0;top:-11px;left:30px;transform:rotate(-45deg);transform-origin:0 60px}.sa-icon.sa-success .sa-placeholder{width:80px;height:80px;border:4px solid rgba(76,175,80,.5);border-radius:50%;box-sizing:content-box;position:absolute;left:-4px;top:-4px;z-index:2}.sa-icon.sa-success .sa-fix{width:5px;height:90px;background-color:#fff;position:absolute;left:28px;top:8px;z-index:1;transform:rotate(-45deg)}.sa-icon.sa-success.animate::after{-webkit-animation:4.25s ease-in rotatePlaceholder;animation:4.25s ease-in rotatePlaceholder}.animateSuccessTip{-webkit-animation:.75s animateSuccessTip;animation:.75s animateSuccessTip}.animateSuccessLong{-webkit-animation:.75s animateSuccessLong;animation:.75s animateSuccessLong}@-webkit-keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}@-webkit-keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessTip{0%,54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}100%{width:25px;left:14px;top:45px}}@keyframes animateSuccessLong{0%,65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}100%{width:47px;right:8px;top:38px}}.sa-icon.sa-success .sa-line{height:5px;background-color:#4caf50;display:block;border-radius:2px;position:absolute;z-index:2}.sa-icon.sa-success .sa-line.sa-tip{width:25px;left:14px;top:46px;transform:rotate(45deg)}.sa-icon.sa-success .sa-line.sa-long{width:47px;right:8px;top:38px;transform:rotate(-45deg)}@-webkit-keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@keyframes rotatePlaceholder{0%,5%{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}100%,12%{transform:rotate(-405deg);-webkit-transform:rotate(-405deg)}}@media (max-width:1037px){#gd-modal-success{left:50%;top:50%;position:relative;transform:translate(-50%,-50%)}}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"TabComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"gd-tab","template":"
\r\n
{{tabTitle}}
\r\n \r\n
\r\n
\r\n \r\n
\r\n","styles":[".tab-content{height:60px;position:absolute;background-color:#fff;width:100%;left:0;line-height:60px;display:none;z-index:9}.tab-content ::ng-deep .toolbar-panel{height:60px}.tab-content.active{display:flex}.gd-tab{text-align:center;font-size:11px;color:#e5e5e5;height:30px;line-height:30px;cursor:pointer;display:flex;align-items:center;justify-content:center}.gd-tab .icon{display:none;font-size:14px}.gd-tab .title{margin:auto 23px}.gd-tab.active{background-color:#fff;color:#3e4e5a;font-weight:700}@media (max-width:1037px){.gd-tab{height:60px;line-height:60px;width:60px}.gd-tab .title{display:none}.gd-tab .icon{display:block;font-size:22px}}"]}]}],"members":{"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"tabTitle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"icon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"active":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"content":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TabActivatorService"}]}],"activation":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"selectTab":[{"__symbolic":"method"}]}},"TabbedToolbarsComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-tabbed-toolbars","template":"
\r\n \r\n \r\n
\r\n","styles":[".top-panel{background:#3e4e5a;display:flex;width:100%;height:90px}.top-panel ::ng-deep .logo{height:30px;font-size:16px}@media (max-width:1037px){.top-panel{height:60px}.top-panel ::ng-deep .logo{height:60px}}"]}]}],"members":{"logo":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3}}]}],"icon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"TabActivatorService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"changeActiveTab":[{"__symbolic":"method"}]}},"DropDownToggleComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":41,"character":1},"arguments":[{"selector":"gd-drop-down-toggle","template":"","encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":45,"character":18},"member":"None"},"styles":[".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"]}]}],"members":{"click":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":48,"character":3},"arguments":["click",["$event"]]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":50,"character":15},"arguments":[{"__symbolic":"reference","name":"DropDownComponent"}]}]],"parameters":[null]}]}},"DropDownItemsComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":56,"character":1},"arguments":[{"selector":"gd-drop-down-items","template":"
","encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":60,"character":18},"member":"None"},"styles":[".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":76,"character":15},"arguments":[{"__symbolic":"reference","name":"DropDownComponent"}]}]],"parameters":[null]}],"onClickOutside":[{"__symbolic":"method"}]}},"DropDownItemComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":86,"character":1},"arguments":[{"selector":"gd-drop-down-item","template":"
","styles":[".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"]}]}],"members":{"class":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":92,"character":3},"arguments":["class"]}]}],"selected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":95,"character":3}}]}],"click":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":98,"character":3},"arguments":["click"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":101,"character":15},"arguments":[{"__symbolic":"reference","name":"DropDownComponent"}]}]],"parameters":[null]}],"selectEntry":[{"__symbolic":"method"}]}},"DropDownComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":112,"character":1},"arguments":[{"selector":"gd-drop-down","template":"
","encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":116,"character":18},"member":"None"},"styles":[".drop-down{position:relative}.show .drop-down-items{display:flex;flex-direction:column;position:absolute;z-index:1000;min-width:100%;max-height:300px;padding:0;background-color:#fff;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;overflow-y:auto;overflow-x:hidden}.show .drop-down-items .drop-down-item,.show .drop-down-items gd-drop-down-item{color:#959da5;display:flex;flex-direction:row;justify-content:space-between;cursor:pointer;font-size:10px;line-height:28px;min-height:28px;width:100%}.show .drop-down-items .drop-down-item fa-icon svg,.show .drop-down-items gd-drop-down-item fa-icon svg{margin:0 10px;color:#959da5}.show .drop-down-items .drop-down-item .text,.show .drop-down-items gd-drop-down-item .text{width:100%;margin-right:10px}.show .drop-down-items .drop-down-item:hover,.show .drop-down-items gd-drop-down-item:hover{background-color:#25c2d4}.show .drop-down-items .drop-down-item:hover *,.show .drop-down-items gd-drop-down-item:hover *{color:#fff}.drop-down-items{display:none}"]}]}],"members":{"placement":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":119,"character":3}}]}],"open":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":126,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":127,"character":3},"arguments":["class.show"]}]}],"class":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":130,"character":3},"arguments":["class"]}]}],"close":[{"__symbolic":"method"}],"toggle":[{"__symbolic":"method"}],"getPlacement":[{"__symbolic":"method"}]}},"LeftSideBarComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-left-side-bar","template":"
\r\n
\r\n
 Loading...\r\n
\r\n
\r\n \r\n
\r\n","styles":[".left-panel{border-radius:0;float:left}.gd-left-bar-fade{margin:auto;overflow:hidden;-webkit-overflow-scrolling:touch;transition:transform .3s ease-out;width:100%;height:100%;display:flex;justify-content:center;align-items:center;position:fixed;z-index:1000}@media (max-width:1037px){.gd-left-bar-fade{top:100px;right:0}.gd-left-bar-spinner{top:20%}}"]}]}],"members":{"showSpinner":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"AddDynamicComponentService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ComponentFactoryResolver","line":12,"character":40},{"__symbolic":"reference","module":"@angular/core","name":"ApplicationRef","line":13,"character":31}]}],"addDynamicComponent":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"HostDynamicDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":3,"character":1},"arguments":[{"selector":"[gdHostDynamic]"}]}],"members":{"ident":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":7,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef","line":9,"character":39},{"__symbolic":"reference","name":"HostingDynamicComponentService"}]}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"HostingDynamicComponentService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"add":[{"__symbolic":"method"}],"remove":[{"__symbolic":"method"}],"find":[{"__symbolic":"method"}]}},"TopTabActivatorService":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"TabActivatorService"},"members":{"__ctor__":[{"__symbolic":"constructor"}]}},"MenuType":{"__symbolic":"class","members":{},"statics":{"FOR_SIGNATURE":"signature","FOR_ANNOTATION":"annotation"}},"ContextMenuComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":10,"character":1},"arguments":[{"selector":"gd-context-menu","template":"
10 ? 'gd-context-menu-top' : 'gd-context-menu-bottom'\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n","styles":[".gd-context-menu-top{top:-44px}.gd-context-menu-bottom{bottom:-40px}.gd-context-menu{box-shadow:rgba(0,0,0,.52) 0 0 5px;background-color:#fff;position:absolute;left:0;right:0;margin:auto;cursor:default;width:max-content;width:-moz-max-content;width:-webkit-max-content;display:flex;flex-direction:row;z-index:999}.gd-context-menu .arrows{cursor:move}.gd-context-menu ::ng-deep .active{background-color:#e7e7e7}.gd-context-menu ::ng-deep .icon-button{margin:0!important}@media (max-width:1037px){.gd-context-menu-top{top:-42px;transform-origin:bottom center}}"]}]}],"members":{"formatting":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"textMenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"topPosition":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3}}]}],"lock":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"translation":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"menuType":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3}}]}],"changeFormatting":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":22,"character":3}}]}],"removeItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":23,"character":3}}]}],"copySign":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":24,"character":3}}]}],"lockOut":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":25,"character":3}}]}],"comment":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":26,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"WindowService"},{"__symbolic":"reference","name":"ZoomService"},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":32,"character":48,"context":{"typeName":"HTMLElement"},"module":"./lib/context-menu/context-menu.component"}]},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":33,"character":32}]}],"ngOnInit":[{"__symbolic":"method"}],"changeScale":[{"__symbolic":"method"}],"saveChanges":[{"__symbolic":"method"}],"selectFontSize":[{"__symbolic":"method"}],"selectFont":[{"__symbolic":"method"}],"selectColor":[{"__symbolic":"method"}],"toggleBold":[{"__symbolic":"method"}],"toggleItalic":[{"__symbolic":"method"}],"toggleUnderline":[{"__symbolic":"method"}],"deleteItem":[{"__symbolic":"method"}],"toggleLock":[{"__symbolic":"method"}],"onCopySign":[{"__symbolic":"method"}],"isSignature":[{"__symbolic":"method"}],"isAnnotation":[{"__symbolic":"method"}],"addComment":[{"__symbolic":"method"}]}},"TextMenuComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":10,"character":1},"arguments":[{"selector":"gd-text-menu","template":"
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n","styles":["::ng-deep .active{background-color:#e7e7e7}.gd-text-menu{display:flex;flex-direction:row}.gd-text-menu .format-select{height:37px;display:flex;justify-content:center;align-items:center;max-width:80px;margin:0 3px}.gd-text-menu .first-component{margin-left:8px}.gd-text-menu ::ng-deep .dropdown-menu{top:40px!important;height:120px;overflow-y:auto}.gd-text-menu ::ng-deep .icon-button{margin:0!important}.bg-color-pic{border-radius:100%;border:1px solid #ccc;position:absolute;height:8px;width:8px;right:6px;bottom:6px}.palette{position:relative;top:40px;left:-55px;z-index:100}@media (max-width:1037px){.gd-text-menu{position:fixed;left:0;right:0;width:inherit;height:60px;align-items:center;padding:0;margin:0;background-color:#fff;border-top:2px solid #707070;transform-origin:top left;z-index:1000}.gd-text-menu ::ng-deep .selected-value{white-space:normal!important;word-wrap:break-word}.gd-text-menu .icon{color:#fff;margin:0 9px}.gd-text-menu ::ng-deep .bcPicker-palette{left:-200px;top:-185px}.gd-text-menu .palette{top:unset;bottom:40px;left:unset;right:5px}.gd-text-menu ::ng-deep .dropdown-menu{bottom:40px;top:unset!important}.gd-text-menu ::ng-deep .first-component ::ng-deep .dropdown-menu{left:0}.gd-text-menu ::ng-deep .button{margin:3px!important;font-size:16px}}"]}]}],"members":{"blur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"fontSize":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"font":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3}}]}],"bold":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"italic":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"underline":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3}}]}],"color":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":3}}]}],"decoration":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3}}]}],"showTooltips":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":3}}]}],"outFontSize":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":26,"character":3}}]}],"outFont":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":27,"character":3}}]}],"outBold":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":28,"character":3}}]}],"outItalic":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":29,"character":3}}]}],"outUnderline":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":30,"character":3}}]}],"outColor":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":31,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"OnCloseService"},{"__symbolic":"reference","name":"ZoomService"},{"__symbolic":"reference","name":"WindowService"},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":42,"character":48,"context":{"typeName":"HTMLElement"},"module":"./lib/text-menu/text-menu.component"}]},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":43,"character":32}]}],"ngOnInit":[{"__symbolic":"method"}],"changePosition":[{"__symbolic":"method"}],"selectFontSize":[{"__symbolic":"method"}],"selectFont":[{"__symbolic":"method"}],"toggleColorPicker":[{"__symbolic":"method"}],"selectColor":[{"__symbolic":"method"}],"toggleBold":[{"__symbolic":"method"}],"toggleItalic":[{"__symbolic":"method"}],"toggleUnderline":[{"__symbolic":"method"}],"closePicker":[{"__symbolic":"method"}]}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"gd-tabs","template":"
\r\n \r\n
\r\n","styles":[".gd-tabs{display:flex}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":2,"character":1},"arguments":[{"selector":"[gdTooltip]"}]}],"members":{"showToolTip":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":7,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"onHovering":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":12,"character":3},"arguments":["mouseenter"]}]}],"onUnhovering":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":17,"character":3},"arguments":["mouseleave"]}]}]}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":6,"character":1},"arguments":[{"selector":"gd-resizing","template":"
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n","styles":[".ui-resizable-handle{background-color:#679ffa;width:8px;height:8px;border-radius:100%;position:absolute;font-size:.1px;display:block}.se-resize{bottom:-5px;right:-5px;cursor:se-resize}.ne-resize{top:-5px;right:-5px;cursor:ne-resize}.sw-resize{bottom:-5px;left:-5px;cursor:sw-resize}.nw-resize{top:-5px;left:-5px;cursor:nw-resize}@media (max-width:1037px){.ui-resizable-handle{width:12px;height:12px}}"]}]}],"members":{"init":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"se":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3}}]}],"ne":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"sw":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"nw":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3}}]}],"pageWidth":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"pageHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"offsetX":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":26,"character":3}}]}],"offsetY":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":27,"character":3}}]}],"offsetTop":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":28,"character":3}}]}],"offsetLeft":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":29,"character":3}}]}],"release":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":30,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"catchUp":[{"__symbolic":"method"}],"resize":[{"__symbolic":"method"}],"setOffsets":[{"__symbolic":"method"}],"end":[{"__symbolic":"method"}],"start":[{"__symbolic":"method"}],"drop":[{"__symbolic":"method"}],"getElementId":[{"__symbolic":"method"}]}},"ɵd":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"selector":"gd-top-tab","template":"
\r\n \r\n \r\n
\r\n","styles":[".gd-tab{font-size:14px;color:#3e4e5a;cursor:pointer;display:flex;flex-direction:column;align-items:center;align-content:center;justify-content:center;min-width:36px;height:36px;text-align:center;position:relative;white-space:nowrap;padding:0!important;margin:0 10px}.gd-tab .gd-tab-tooltip{display:flex;flex-direction:column;margin:0!important}.gd-tab.active{background-color:#acacac;color:#fff!important;font-weight:700}.gd-tab.disabled{cursor:not-allowed;opacity:.4}.gd-tab ::ng-deep .tooltip{font-size:12px;margin:20px -57px}.gd-tab .title{margin:auto 23px}@media (max-width:1037px){.gd-tab{font-size:20px}}"]}]}],"members":{"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"icon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"tooltip":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"activeTab":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":15,"character":3}}]}],"elementPosition":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TopTabActivatorService"},{"__symbolic":"reference","name":"ModalService"},{"__symbolic":"reference","name":"ExceptionMessageService"}]}],"activation":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"toggleTab":[{"__symbolic":"method"}]}}},"origins":{"CommonComponentsModule":"./lib/common-components.module","Api":"./lib/config.service","ConfigService":"./lib/config.service","CommonModals":"./lib/modal.service","ModalService":"./lib/modal.service","PageModel":"./lib/file.service","RotatedPage":"./lib/file.service","FileCredentials":"./lib/file.service","SaveFile":"./lib/file.service","FileDescription":"./lib/file.service","FileModel":"./lib/file.service","HttpError":"./lib/file.service","Utils":"./lib/file.service","FileUtil":"./lib/file.service","FileService":"./lib/file.service","UploadFilesService":"./lib/upload-files.service","SanitizeHtmlPipe":"./lib/pipes","SanitizeResourceHtmlPipe":"./lib/pipes","SanitizeStylePipe":"./lib/pipes","HighlightSearchPipe":"./lib/pipes","NavigateService":"./lib/navigate.service","PagePreloadService":"./lib/page-preload.service","ZoomService":"./lib/zoom.service","RenderPrintService":"./lib/render-print.service","ErrorInterceptorService":"./lib/error-interceptor.service","ExceptionMessageService":"./lib/exception-message.service","PasswordService":"./lib/password.service","WindowService":"./lib/window.service","ViewportService":"./lib/viewport.service","BrowseFilesModalComponent":"./lib/browse-files-modal/browse-files-modal.component","ButtonComponent":"./lib/button/button.component","DisabledCursorDirective":"./lib/disabled-cursor.directive","DndDirective":"./lib/dnd.directive","DocumentComponent":"./lib/document/document.component","ErrorModalComponent":"./lib/error-modal/error-modal.component","InitStateComponent":"./lib/init-state/init-state.component","LogoComponent":"./lib/logo/logo.component","ModalComponent":"./lib/modal/modal.component","PageComponent":"./lib/page/page.component","PasswordRequiredComponent":"./lib/password-required/password-required.component","RenderPrintDirective":"./lib/render-print.directive","RotationDirective":"./lib/rotation.directive","ScrollableDirective":"./lib/scrollable.directive","MouseWheelDirective":"./lib/mousewheel.directive","SearchService":"./lib/search.service","SearchComponent":"./lib/search/search.component","SearchableDirective":"./lib/searchable.directive","Option":"./lib/select/select.component","SelectComponent":"./lib/select/select.component","TooltipComponent":"./lib/tooltip/tooltip.component","TopToolbarComponent":"./lib/top-toolbar/top-toolbar.component","SidePanelComponent":"./lib/side-panel/side-panel.component","UploadFileZoneComponent":"./lib/upload-file-zone/upload-file-zone.component","ZoomDirective":"./lib/zoom.directive","SelectionService":"./lib/selection.service","OnCloseService":"./lib/on-close.service","LoadingMaskService":"./lib/loading-mask.service","LoadingMaskInterceptorService":"./lib/loading-mask-interceptor.service","FormattingDirective":"./lib/formatting.directive","Formatting":"./lib/formatting.service","FormattingService":"./lib/formatting.service","BackFormattingService":"./lib/back-formatting.service","EditorDirective":"./lib/editor.directive","EditHtmlService":"./lib/edit-html.service","ColorPickerComponent":"./lib/color-picker/color-picker.component","LoadingMaskComponent":"./lib/loading-mask/loading-mask.component","SuccessModalComponent":"./lib/success-modal/success-modal.component","TabComponent":"./lib/tab/tab.component","TabbedToolbarsComponent":"./lib/tabbed-toolbars/tabbed-toolbars.component","TabActivatorService":"./lib/tab-activator.service","DropDownToggleComponent":"./lib/drop-down/drop-down.component","DropDownItemsComponent":"./lib/drop-down/drop-down.component","DropDownItemComponent":"./lib/drop-down/drop-down.component","DropDownComponent":"./lib/drop-down/drop-down.component","LeftSideBarComponent":"./lib/left-side-bar/left-side-bar.component","AddDynamicComponentService":"./lib/add-dynamic-component.service","HostDynamicDirective":"./lib/host-dynamic.directive","HostingDynamicComponentService":"./lib/hosting-dynamic-component.service","TopTabActivatorService":"./lib/top-tab-activator.service","MenuType":"./lib/context-menu/context-menu.component","ContextMenuComponent":"./lib/context-menu/context-menu.component","TextMenuComponent":"./lib/text-menu/text-menu.component","ɵa":"./lib/tabs/tabs.component","ɵb":"./lib/tooltip.directive","ɵc":"./lib/resizing/resizing.component","ɵd":"./lib/top-tab/top-tab.component"},"importAs":"@groupdocs.examples.angular/common-components"} \ No newline at end of file diff --git a/libs/common-components/src/lib/resizing/resizing.component.less b/libs/common-components/src/lib/resizing/resizing.component.less index 68d46a2de..0ee7547ee 100644 --- a/libs/common-components/src/lib/resizing/resizing.component.less +++ b/libs/common-components/src/lib/resizing/resizing.component.less @@ -1,3 +1,4 @@ +@import "../../styles/variables"; .ui-resizable-handle { background-color: #679FFA; @@ -32,3 +33,10 @@ left: -5px; cursor: nw-resize; } + +@media @phone-down { + .ui-resizable-handle { + width: 12px; + height: 12px; + } +} diff --git a/libs/signature/src/lib/signature-list-panel/signature-list-panel.component.less b/libs/signature/src/lib/signature-list-panel/signature-list-panel.component.less index 9975f781a..5883a1424 100644 --- a/libs/signature/src/lib/signature-list-panel/signature-list-panel.component.less +++ b/libs/signature/src/lib/signature-list-panel/signature-list-panel.component.less @@ -229,4 +229,8 @@ padding: 5px; height: inherit; } + + .gd-signature-empty-list { + width: unset; + } } diff --git a/libs/signature/src/lib/stamp-canvas/stamp-canvas.component.less b/libs/signature/src/lib/stamp-canvas/stamp-canvas.component.less index 47a275086..edb312226 100644 --- a/libs/signature/src/lib/stamp-canvas/stamp-canvas.component.less +++ b/libs/signature/src/lib/stamp-canvas/stamp-canvas.component.less @@ -42,7 +42,6 @@ } .csg-bounding-box { - position: absolute; background-color: unset !important; }