@bizdoc/core 1.9.14 → 1.10.0-next.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/dayjs/locale/af.js +1 -0
- package/assets/dayjs/locale/am.js +1 -0
- package/assets/dayjs/locale/ar-dz.js +1 -0
- package/assets/dayjs/locale/ar-iq.js +1 -0
- package/assets/dayjs/locale/ar-kw.js +1 -0
- package/assets/dayjs/locale/ar-ly.js +1 -0
- package/assets/dayjs/locale/ar-ma.js +1 -0
- package/assets/dayjs/locale/ar-sa.js +1 -0
- package/assets/dayjs/locale/ar-tn.js +1 -0
- package/assets/dayjs/locale/ar.js +1 -0
- package/assets/dayjs/locale/az.js +1 -0
- package/assets/dayjs/locale/be.js +1 -0
- package/assets/dayjs/locale/bg.js +1 -0
- package/assets/dayjs/locale/bi.js +1 -0
- package/assets/dayjs/locale/bm.js +1 -0
- package/assets/dayjs/locale/bn.js +1 -0
- package/assets/dayjs/locale/bo.js +1 -0
- package/assets/dayjs/locale/br.js +1 -0
- package/assets/dayjs/locale/bs.js +1 -0
- package/assets/dayjs/locale/ca.js +1 -0
- package/assets/dayjs/locale/cs.js +1 -0
- package/assets/dayjs/locale/cv.js +1 -0
- package/assets/dayjs/locale/cy.js +1 -0
- package/assets/dayjs/locale/da.js +1 -0
- package/assets/dayjs/locale/de-at.js +1 -0
- package/assets/dayjs/locale/de-ch.js +1 -0
- package/assets/dayjs/locale/de.js +1 -0
- package/assets/dayjs/locale/dv.js +1 -0
- package/assets/dayjs/locale/el.js +1 -0
- package/assets/dayjs/locale/en-au.js +1 -0
- package/assets/dayjs/locale/en-ca.js +1 -0
- package/assets/dayjs/locale/en-gb.js +1 -0
- package/assets/dayjs/locale/en-ie.js +1 -0
- package/assets/dayjs/locale/en-il.js +1 -0
- package/assets/dayjs/locale/en-in.js +1 -0
- package/assets/dayjs/locale/en-nz.js +1 -0
- package/assets/dayjs/locale/en-sg.js +1 -0
- package/assets/dayjs/locale/en-tt.js +1 -0
- package/assets/dayjs/locale/en.js +1 -0
- package/assets/dayjs/locale/eo.js +1 -0
- package/assets/dayjs/locale/es-do.js +1 -0
- package/assets/dayjs/locale/es-mx.js +1 -0
- package/assets/dayjs/locale/es-pr.js +1 -0
- package/assets/dayjs/locale/es-us.js +1 -0
- package/assets/dayjs/locale/es.js +1 -0
- package/assets/dayjs/locale/et.js +1 -0
- package/assets/dayjs/locale/eu.js +1 -0
- package/assets/dayjs/locale/fa.js +1 -0
- package/assets/dayjs/locale/fi.js +1 -0
- package/assets/dayjs/locale/fo.js +1 -0
- package/assets/dayjs/locale/fr-ca.js +1 -0
- package/assets/dayjs/locale/fr-ch.js +1 -0
- package/assets/dayjs/locale/fr.js +1 -0
- package/assets/dayjs/locale/fy.js +1 -0
- package/assets/dayjs/locale/ga.js +1 -0
- package/assets/dayjs/locale/gd.js +1 -0
- package/assets/dayjs/locale/gl.js +1 -0
- package/assets/dayjs/locale/gom-latn.js +1 -0
- package/assets/dayjs/locale/gu.js +1 -0
- package/assets/dayjs/locale/he.js +1 -0
- package/assets/dayjs/locale/hi.js +1 -0
- package/assets/dayjs/locale/hr.js +1 -0
- package/assets/dayjs/locale/ht.js +1 -0
- package/assets/dayjs/locale/hu.js +1 -0
- package/assets/dayjs/locale/hy-am.js +1 -0
- package/assets/dayjs/locale/id.js +1 -0
- package/assets/dayjs/locale/index.d.ts +11 -0
- package/assets/dayjs/locale/is.js +1 -0
- package/assets/dayjs/locale/it-ch.js +1 -0
- package/assets/dayjs/locale/it.js +1 -0
- package/assets/dayjs/locale/ja.js +1 -0
- package/assets/dayjs/locale/jv.js +1 -0
- package/assets/dayjs/locale/ka.js +1 -0
- package/assets/dayjs/locale/kk.js +1 -0
- package/assets/dayjs/locale/km.js +1 -0
- package/assets/dayjs/locale/kn.js +1 -0
- package/assets/dayjs/locale/ko.js +1 -0
- package/assets/dayjs/locale/ku.js +1 -0
- package/assets/dayjs/locale/ky.js +1 -0
- package/assets/dayjs/locale/lb.js +1 -0
- package/assets/dayjs/locale/lo.js +1 -0
- package/assets/dayjs/locale/lt.js +1 -0
- package/assets/dayjs/locale/lv.js +1 -0
- package/assets/dayjs/locale/me.js +1 -0
- package/assets/dayjs/locale/mi.js +1 -0
- package/assets/dayjs/locale/mk.js +1 -0
- package/assets/dayjs/locale/ml.js +1 -0
- package/assets/dayjs/locale/mn.js +1 -0
- package/assets/dayjs/locale/mr.js +1 -0
- package/assets/dayjs/locale/ms-my.js +1 -0
- package/assets/dayjs/locale/ms.js +1 -0
- package/assets/dayjs/locale/mt.js +1 -0
- package/assets/dayjs/locale/my.js +1 -0
- package/assets/dayjs/locale/nb.js +1 -0
- package/assets/dayjs/locale/ne.js +1 -0
- package/assets/dayjs/locale/nl-be.js +1 -0
- package/assets/dayjs/locale/nl.js +1 -0
- package/assets/dayjs/locale/nn.js +1 -0
- package/assets/dayjs/locale/oc-lnc.js +1 -0
- package/assets/dayjs/locale/pa-in.js +1 -0
- package/assets/dayjs/locale/pl.js +1 -0
- package/assets/dayjs/locale/pt-br.js +1 -0
- package/assets/dayjs/locale/pt.js +1 -0
- package/assets/dayjs/locale/ro.js +1 -0
- package/assets/dayjs/locale/ru.js +1 -0
- package/assets/dayjs/locale/rw.js +1 -0
- package/assets/dayjs/locale/sd.js +1 -0
- package/assets/dayjs/locale/se.js +1 -0
- package/assets/dayjs/locale/si.js +1 -0
- package/assets/dayjs/locale/sk.js +1 -0
- package/assets/dayjs/locale/sl.js +1 -0
- package/assets/dayjs/locale/sq.js +1 -0
- package/assets/dayjs/locale/sr-cyrl.js +1 -0
- package/assets/dayjs/locale/sr.js +1 -0
- package/assets/dayjs/locale/ss.js +1 -0
- package/assets/dayjs/locale/sv-fi.js +1 -0
- package/assets/dayjs/locale/sv.js +1 -0
- package/assets/dayjs/locale/sw.js +1 -0
- package/assets/dayjs/locale/ta.js +1 -0
- package/assets/dayjs/locale/te.js +1 -0
- package/assets/dayjs/locale/tet.js +1 -0
- package/assets/dayjs/locale/tg.js +1 -0
- package/assets/dayjs/locale/th.js +1 -0
- package/assets/dayjs/locale/tk.js +1 -0
- package/assets/dayjs/locale/tl-ph.js +1 -0
- package/assets/dayjs/locale/tlh.js +1 -0
- package/assets/dayjs/locale/tr.js +1 -0
- package/assets/dayjs/locale/types.d.ts +33 -0
- package/assets/dayjs/locale/tzl.js +1 -0
- package/assets/dayjs/locale/tzm-latn.js +1 -0
- package/assets/dayjs/locale/tzm.js +1 -0
- package/assets/dayjs/locale/ug-cn.js +1 -0
- package/assets/dayjs/locale/uk.js +1 -0
- package/assets/dayjs/locale/ur.js +1 -0
- package/assets/dayjs/locale/uz-latn.js +1 -0
- package/assets/dayjs/locale/uz.js +1 -0
- package/assets/dayjs/locale/vi.js +1 -0
- package/assets/dayjs/locale/x-pseudo.js +1 -0
- package/assets/dayjs/locale/yo.js +1 -0
- package/assets/dayjs/locale/zh-cn.js +1 -0
- package/assets/dayjs/locale/zh-hk.js +1 -0
- package/assets/dayjs/locale/zh-tw.js +1 -0
- package/assets/dayjs/locale/zh.js +1 -0
- package/esm2020/lib/admin/diff/configuration-diff.component.mjs +2 -2
- package/esm2020/lib/admin/document-trace/document-trace.component.mjs +6 -7
- package/esm2020/lib/admin/document-trace/trace-element.component.mjs +1 -1
- package/esm2020/lib/admin/profiler/profiler.component.mjs +8 -8
- package/esm2020/lib/bizdoc.module.mjs +5 -17
- package/esm2020/lib/browse/browse-items.component.mjs +4 -3
- package/esm2020/lib/browse/expanded-item/expanded-item.component.mjs +10 -10
- package/esm2020/lib/chat/contacts.component.mjs +4 -3
- package/esm2020/lib/chat/conversation.component.mjs +6 -4
- package/esm2020/lib/compose/attachments/attachments.component.mjs +1 -1
- package/esm2020/lib/compose/comments/comment.component.mjs +4 -3
- package/esm2020/lib/compose/comments/edits.component.mjs +1 -1
- package/esm2020/lib/compose/comments/votes.component.mjs +4 -3
- package/esm2020/lib/compose/compose.pane.component.mjs +3 -1
- package/esm2020/lib/compose/events/events.component.mjs +1 -1
- package/esm2020/lib/compose/trace/flow.component.mjs +9 -10
- package/esm2020/lib/compose/trace/trace.base.mjs +3 -4
- package/esm2020/lib/compose/trace/trace.component.mjs +8 -8
- package/esm2020/lib/compose/version-compare/version.pane.component.mjs +2 -2
- package/esm2020/lib/core/pipes/calendar.pipe.mjs +74 -0
- package/esm2020/lib/core/pipes/date-format.pipe.mjs +19 -0
- package/esm2020/lib/core/pipes/daterange.pipe.mjs +7 -8
- package/esm2020/lib/core/pipes/difference.pipe.mjs +15 -0
- package/esm2020/lib/core/pipes/duration-format.pipe.mjs +50 -0
- package/esm2020/lib/core/pipes/duration.pipe.mjs +17 -42
- package/esm2020/lib/core/pipes/time-ago.pipe.mjs +68 -0
- package/esm2020/lib/core/session.service.mjs +6 -6
- package/esm2020/lib/core/slots/slots.component.mjs +8 -7
- package/esm2020/lib/core/tagging/edit-input.component.mjs +7 -6
- package/esm2020/lib/core/translate.service.mjs +26 -101
- package/esm2020/lib/cube/cube-view.component.mjs +13 -2
- package/esm2020/lib/cube/cube.service.mjs +2 -2
- package/esm2020/lib/cube/explore/explore-items.component.mjs +1 -1
- package/esm2020/lib/cube/grid/spreadsheet.component.mjs +2 -3
- package/esm2020/lib/cube/matrix/table.component.mjs +4 -4
- package/esm2020/lib/cube/pivot/pivot.component.mjs +12 -10
- package/esm2020/lib/cube/view-base.mjs +1 -1
- package/esm2020/lib/cube/view.pane.component.mjs +7 -4
- package/esm2020/lib/dashboard/score/activity.widget.mjs +3 -4
- package/esm2020/lib/dashboard/score/compare-departments.widget.mjs +4 -5
- package/esm2020/lib/dashboard/score/peers-performance.widget.mjs +5 -5
- package/esm2020/lib/dashboard/score/pending-results.widget.mjs +6 -5
- package/esm2020/lib/dashboard/score/personal-score.widget.mjs +2 -2
- package/esm2020/lib/desktop.module.mjs +1 -5
- package/esm2020/lib/home/about/about.dialog.mjs +4 -5
- package/esm2020/lib/home/notifications/notifications.component.mjs +5 -4
- package/esm2020/lib/mobile.module.mjs +1 -5
- package/esm2020/lib/modules/date.adapter.mjs +30 -0
- package/esm2020/lib/modules/datepicker.intl.mjs +39 -0
- package/esm2020/lib/modules/material.module.mjs +11 -5
- package/esm2020/lib/modules/paginator.intl.mjs +21 -0
- package/esm2020/lib/modules/stepper.intl.mjs +17 -0
- package/esm2020/lib/modules/texteditor.module.mjs +27 -0
- package/esm2020/lib/notifications/notifications-table.component.mjs +4 -3
- package/esm2020/lib/notifications/types/nudge.notification.mjs +3 -4
- package/esm2020/lib/notifications/types/upcoming-event.notification.mjs +4 -5
- package/esm2020/lib/reports/cube/grid-documents.component.mjs +1 -1
- package/esm2020/lib/reports/substitution/substitution.component.mjs +1 -1
- package/esm2020/lib/scheduler/schedule.component.mjs +5 -6
- package/esm2020/lib/scheduler/scheduler.mobile.component.mjs +4 -5
- package/esm2020/lib/scheduler/scheduler.pane.component.mjs +4 -5
- package/esm2020/lib/shared.module.mjs +20 -16
- package/esm2020/lib/system.module.mjs +1 -5
- package/esm2020/lib/views/cube/matrix.component.mjs +1 -1
- package/esm2020/lib/views/timeline/timeline.component.exp.mjs +3 -4
- package/esm2020/public-api.mjs +7 -2
- package/fesm2015/bizdoc-core.mjs +511 -305
- package/fesm2015/bizdoc-core.mjs.map +1 -1
- package/fesm2020/bizdoc-core.mjs +511 -303
- package/fesm2020/bizdoc-core.mjs.map +1 -1
- package/lib/admin/diff/configuration-diff.component.d.ts +1 -1
- package/lib/bizdoc.module.d.ts +6 -7
- package/lib/chat/conversation.component.d.ts +1 -1
- package/lib/compose/trace/flow.component.d.ts +1 -1
- package/lib/compose/trace/trace.component.d.ts +1 -1
- package/lib/compose/version-compare/version.pane.component.d.ts +1 -1
- package/lib/core/pipes/calendar.pipe.d.ts +27 -0
- package/lib/core/pipes/date-format.pipe.d.ts +8 -0
- package/lib/core/pipes/daterange.pipe.d.ts +1 -1
- package/lib/core/pipes/difference.pipe.d.ts +7 -0
- package/lib/core/pipes/duration-format.pipe.d.ts +11 -0
- package/lib/core/pipes/duration.pipe.d.ts +5 -8
- package/lib/core/pipes/time-ago.pipe.d.ts +16 -0
- package/lib/core/session.service.d.ts +2 -1
- package/lib/core/translate.service.d.ts +2 -56
- package/lib/cube/pivot/pivot.component.d.ts +3 -5
- package/lib/dashboard/score/peers-performance.widget.d.ts +1 -1
- package/lib/dashboard/score/personal-score.widget.d.ts +1 -1
- package/lib/desktop.module.d.ts +2 -3
- package/lib/home/about/about.dialog.d.ts +2 -1
- package/lib/mobile.module.d.ts +2 -3
- package/lib/modules/date.adapter.d.ts +13 -0
- package/lib/modules/datepicker.intl.d.ts +30 -0
- package/lib/modules/paginator.intl.d.ts +14 -0
- package/lib/modules/stepper.intl.d.ts +10 -0
- package/lib/modules/texteditor.module.d.ts +8 -0
- package/lib/notifications/types/nudge.notification.d.ts +2 -1
- package/lib/notifications/types/upcoming-event.notification.d.ts +2 -1
- package/lib/shared.module.d.ts +175 -171
- package/lib/system.module.d.ts +4 -5
- package/lib/views/cube/matrix.component.d.ts +2 -2
- package/package.json +3 -5
- package/public-api.d.ts +6 -1
@@ -27,7 +27,8 @@ import * as i16 from "@angular/cdk/bidi";
|
|
27
27
|
import * as i17 from "../../core/tagging/tagging.pipe";
|
28
28
|
import * as i18 from "../../core/pipes/translate.pipe";
|
29
29
|
import * as i19 from "../../core/pipes/sanitize-html.pipe";
|
30
|
-
import * as i20 from "
|
30
|
+
import * as i20 from "../../core/pipes/calendar.pipe";
|
31
|
+
import * as i21 from "../../core/pipes/time-ago.pipe";
|
31
32
|
/** comment component*/
|
32
33
|
export class CommentComponent {
|
33
34
|
constructor(_session, _ps, _translate, _chat, _accounts, _popup, _overlay, _mailbox, _vc, _config) {
|
@@ -158,7 +159,7 @@ export class CommentComponent {
|
|
158
159
|
}
|
159
160
|
}
|
160
161
|
CommentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: CommentComponent, deps: [{ token: i1.SessionService }, { token: i2.PromptService }, { token: i3.TranslateService }, { token: i4.ChatInfo }, { token: i5.AccountService }, { token: i6.Popup }, { token: i7.Overlay }, { token: i8.MailboxService }, { token: i0.ViewContainerRef }, { token: BIZDOC_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
|
161
|
-
CommentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: CommentComponent, selector: "bizdoc-comment", inputs: { model: "model", item: "item" }, outputs: { deleted: "deleted", reply: "reply" }, host: { classAttribute: "comment" }, viewQueries: [{ propertyName: "bodyElement", first: true, predicate: ["body"], descendants: true }, { propertyName: "previewTemplate", first: true, predicate: ["previewTemplate"], descendants: true }], ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"comment-body\" #body>\r\n <div [innerHTML]=\"item.text|taggingHtml:item.resource\" class=\"comment-text\"></div>\r\n <img *ngIf=\"item.image\" [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" (click)=\"preview()\" />\r\n </div>\r\n <button mat-icon-button *ngIf=\"me\" [matMenuTriggerFor]=\"menu\" class=\"tool\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\r\n <mat-menu #menu>\r\n <ng-template matMenuContent>\r\n <button mat-menu-item (click)=\"edit()\">{{'Edit'|translate}}</button>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"delete()\">{{'Delete'|translate}}</button>\r\n </ng-template>\r\n </mat-menu>\r\n</div>\r\n<div class=\"row\">\r\n <div class=\"column\">\r\n <span [innerHTML]=\"name | sanitizeHtml\" (click)=\"chat($event)\"></span>\r\n <div>\r\n <small fxFlex bizdocTooltip=\"{{item.edited || item.time | amCalendar }}\">{{item.edited || item.time | amTimeAgo}}</small>\r\n <ng-container *ngIf=\"item.edited\">\r\n <a (click)=\"edits()\" class=\"modification\">{{'Edited'| translate}}</a>\r\n </ng-container>\r\n <ng-container *ngIf=\"!me\">\r\n <a (click)=\"reply.emit()\" class=\"modification\">{{'Reply'| translate}}</a>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div class=\"comment-actions\" *ngIf=\"voting\">\r\n <a *ngIf=\"item.votes > 0 || item.votes < 0\" [class.score-negative]=\"item.votes < 0\" class=\"comment-score\" dir=\"ltr\" (click)=\"votes()\" [bizdocTooltip]=\"'Votes'|translate\">{{item.votes}}</a>\r\n <button mat-icon-button (click)=\"vote(1, $event)\" [class.voted-true]=\"item.voted===1\" ><mat-icon>thumb_up_alt</mat-icon></button>\r\n <button mat-icon-button (click)=\"vote(-1, $event)\" [class.voted-false]=\"item.voted===-1\" ><mat-icon>thumb_down_alt</mat-icon></button>\r\n </div>\r\n</div>\r\n<ng-template #previewTemplate>\r\n <img [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" />\r\n</ng-template>\r\n", components: [{ type: i9.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i11.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i11.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i12.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }], directives: [{ type: i13.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i11.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i11.MatMenuContent, selector: "ng-template[matMenuContent]" }, { type: i14.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i15.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i16.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }], pipes: { "taggingHtml": i17.TaggingPipe, "translate": i18.TranslatePipe, "sanitizeHtml": i19.SanitizeHtmlPipe, "amCalendar": i20.CalendarPipe, "amTimeAgo":
|
162
|
+
CommentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: CommentComponent, selector: "bizdoc-comment", inputs: { model: "model", item: "item" }, outputs: { deleted: "deleted", reply: "reply" }, host: { classAttribute: "comment" }, viewQueries: [{ propertyName: "bodyElement", first: true, predicate: ["body"], descendants: true }, { propertyName: "previewTemplate", first: true, predicate: ["previewTemplate"], descendants: true }], ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"comment-body\" #body>\r\n <div [innerHTML]=\"item.text|taggingHtml:item.resource\" class=\"comment-text\"></div>\r\n <img *ngIf=\"item.image\" [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" (click)=\"preview()\" />\r\n </div>\r\n <button mat-icon-button *ngIf=\"me\" [matMenuTriggerFor]=\"menu\" class=\"tool\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\r\n <mat-menu #menu>\r\n <ng-template matMenuContent>\r\n <button mat-menu-item (click)=\"edit()\">{{'Edit'|translate}}</button>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"delete()\">{{'Delete'|translate}}</button>\r\n </ng-template>\r\n </mat-menu>\r\n</div>\r\n<div class=\"row\">\r\n <div class=\"column\">\r\n <span [innerHTML]=\"name | sanitizeHtml\" (click)=\"chat($event)\"></span>\r\n <div>\r\n <small fxFlex bizdocTooltip=\"{{item.edited || item.time | amCalendar }}\">{{item.edited || item.time | amTimeAgo}}</small>\r\n <ng-container *ngIf=\"item.edited\">\r\n <a (click)=\"edits()\" class=\"modification\">{{'Edited'| translate}}</a>\r\n </ng-container>\r\n <ng-container *ngIf=\"!me\">\r\n <a (click)=\"reply.emit()\" class=\"modification\">{{'Reply'| translate}}</a>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div class=\"comment-actions\" *ngIf=\"voting\">\r\n <a *ngIf=\"item.votes > 0 || item.votes < 0\" [class.score-negative]=\"item.votes < 0\" class=\"comment-score\" dir=\"ltr\" (click)=\"votes()\" [bizdocTooltip]=\"'Votes'|translate\">{{item.votes}}</a>\r\n <button mat-icon-button (click)=\"vote(1, $event)\" [class.voted-true]=\"item.voted===1\" ><mat-icon>thumb_up_alt</mat-icon></button>\r\n <button mat-icon-button (click)=\"vote(-1, $event)\" [class.voted-false]=\"item.voted===-1\" ><mat-icon>thumb_down_alt</mat-icon></button>\r\n </div>\r\n</div>\r\n<ng-template #previewTemplate>\r\n <img [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" />\r\n</ng-template>\r\n", components: [{ type: i9.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i11.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i11.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i12.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }], directives: [{ type: i13.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i11.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i11.MatMenuContent, selector: "ng-template[matMenuContent]" }, { type: i14.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i15.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i16.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }], pipes: { "taggingHtml": i17.TaggingPipe, "translate": i18.TranslatePipe, "sanitizeHtml": i19.SanitizeHtmlPipe, "amCalendar": i20.CalendarPipe, "amTimeAgo": i21.TimeAgoPipe } });
|
162
163
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: CommentComponent, decorators: [{
|
163
164
|
type: Component,
|
164
165
|
args: [{ selector: 'bizdoc-comment', host: {
|
@@ -182,4 +183,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImpor
|
|
182
183
|
type: ViewChild,
|
183
184
|
args: ['previewTemplate']
|
184
185
|
}] } });
|
185
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2NvbXBvc2UvY29tbWVudHMvY29tbWVudC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2NvbXBvc2UvY29tbWVudHMvY29tbWVudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBYyxNQUFNLEVBQXlDLE1BQU0sZUFBZSxDQUFDO0FBRTdJLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQWdCLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBT3ZFLE9BQU8sRUFBZSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxxQkFBcUIsRUFBc0IsTUFBTSxtQkFBbUIsQ0FBQztBQUM5RSxPQUFPLEVBQW1CLHFCQUFxQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFXM0UsdUJBQXVCO0FBQ3ZCLE1BQU0sT0FBTyxnQkFBZ0I7SUFVM0IsWUFDVSxRQUF3QixFQUN4QixHQUFrQixFQUNsQixVQUE0QixFQUM1QixLQUFlLEVBQ2YsU0FBeUIsRUFDekIsTUFBYSxFQUNiLFFBQWlCLEVBQ2pCLFFBQXdCLEVBQ3hCLEdBQXFCLEVBQ0UsT0FBcUI7UUFU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Q0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUMzSCxDQUFDO0lBQ0QsS0FBSztRQUNILElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFCLEVBQUU7WUFDaEMsRUFBRSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNoQixVQUFVLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVO1NBQ2YsQ0FBQyxDQUFDO0lBQ3hCLENBQUM7OzZHQW5JVSxnQkFBZ0IsNlFBb0JqQixhQUFhO2lHQXBCWixnQkFBZ0IsZ1lDM0I3Qix1aEVBb0NBOzJGRFRhLGdCQUFnQjtrQkFSNUIsU0FBUzsrQkFDRSxnQkFBZ0IsUUFFcEI7d0JBQ0osS0FBSyxFQUFFLFNBQVM7cUJBQ2pCOzswQkF1QkUsTUFBTTsyQkFBQyxhQUFhOzRDQW5CZCxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUVhLE9BQU87c0JBQXpCLE1BQU07Z0JBQ1ksS0FBSztzQkFBdkIsTUFBTTtnQkFDWSxXQUFXO3NCQUE3QixTQUFTO3VCQUFDLE1BQU07Z0JBQ2EsZUFBZTtzQkFBNUMsU0FBUzt1QkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgVmlld0NoaWxkLCBFbGVtZW50UmVmLCBJbmplY3QsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT3ZlcmxheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcclxuaW1wb3J0IHsgVGVtcGxhdGVQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcclxuaW1wb3J0IHsgRVNDQVBFIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcclxuaW1wb3J0IHsgZm9ya0pvaW4sIG1lcmdlLCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEJpekRvY0NvbmZpZywgQklaRE9DX0NPTkZJRyB9IGZyb20gJy4uLy4uL2NvcmUvY29uZmlndXJhdGlvbic7XHJcbmltcG9ydCB7IENvbW1lbnQsIERvY3VtZW50TW9kZWwsIFVzZXJJbmZvIH0gZnJvbSAnLi4vLi4vY29yZS9tb2RlbHMnO1xyXG5pbXBvcnQgeyBQcm9tcHRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9wcm9tcHQuc2VydmljZSc7XHJcbmltcG9ydCB7IE1haWxib3hTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9tYWlsYm94LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTZXNzaW9uU2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvc2Vzc2lvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvdHJhbnNsYXRlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQb3B1cCB9IGZyb20gXCIuLi8uLi9jb3JlL3BvcHVwL3BvcHVwLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgQ29tbWVudERhdGEsIEVkaXRDb21tZW50Q29tcG9uZW50IH0gZnJvbSAnLi9lZGl0LWNvbW1lbnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tbWVudEVkaXRzQ29tcG9uZW50LCBDb21tZW50VmVyc2lvbkRhdGEgfSBmcm9tICcuL2VkaXRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbW1lbnRWb3RlRGF0YSwgQ29tbWVudExpa2VzQ29tcG9uZW50IH0gZnJvbSAnLi92b3Rlcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBY2NvdW50U2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvYWNjb3VudC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ2hhdEluZm8gfSBmcm9tICcuLi8uLi9jaGF0L2NoYXQtaW5mbyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2JpemRvYy1jb21tZW50JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29tbWVudC5jb21wb25lbnQuaHRtbCcsXHJcbiAgaG9zdDoge1xyXG4gICAgY2xhc3M6ICdjb21tZW50J1xyXG4gIH1cclxufSlcclxuLyoqIGNvbW1lbnQgY29tcG9uZW50Ki9cclxuZXhwb3J0IGNsYXNzIENvbW1lbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIG1vZGVsITogRG9jdW1lbnRNb2RlbDxhbnk+O1xyXG4gIEBJbnB1dCgpIGl0ZW0hOiBDb21tZW50O1xyXG4gIHZvdGluZzogYm9vbGVhbjtcclxuICBAT3V0cHV0KCkgcmVhZG9ubHkgZGVsZXRlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgcmVhZG9ubHkgcmVwbHkgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQFZpZXdDaGlsZCgnYm9keScpIGJvZHlFbGVtZW50OiBFbGVtZW50UmVmPEhUTUxUZXh0QXJlYUVsZW1lbnQ+O1xyXG4gIEBWaWV3Q2hpbGQoJ3ByZXZpZXdUZW1wbGF0ZScpIHByZXZpZXdUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBuYW1lOiBzdHJpbmcgPSAnJztcclxuICBtZTogYm9vbGVhbjtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX3Nlc3Npb246IFNlc3Npb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfcHM6IFByb21wdFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF90cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9jaGF0OiBDaGF0SW5mbyxcclxuICAgIHByaXZhdGUgX2FjY291bnRzOiBBY2NvdW50U2VydmljZSxcclxuICAgIHByaXZhdGUgX3BvcHVwOiBQb3B1cCxcclxuICAgIHByaXZhdGUgX292ZXJsYXk6IE92ZXJsYXksXHJcbiAgICBwcml2YXRlIF9tYWlsYm94OiBNYWlsYm94U2VydmljZSxcclxuICAgIHByaXZhdGUgX3ZjOiBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgQEluamVjdChCSVpET0NfQ09ORklHKSBwcml2YXRlIF9jb25maWc6IEJpekRvY0NvbmZpZykge1xyXG4gICAgdGhpcy52b3RpbmcgPSAhX2NvbmZpZy5jb21tZW50cyB8fCBfY29uZmlnLmNvbW1lbnRzLnZvdGluZyAhPT0gZmFsc2U7XHJcbiAgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgY29uc3QgbWUgPSB0aGlzLl9zZXNzaW9uLnVzZXJJZCwgeW91ID0gb2YoJ3lvdScpO1xyXG4gICAgdGhpcy5tZSA9ICh0aGlzLml0ZW0uYnlJZCB8fCB0aGlzLml0ZW0udXNlcklkKSA9PT0gbWU7XHJcbiAgICBjb25zdCB3aG9zOiBbT2JzZXJ2YWJsZTxhbnk+XSA9IFt0aGlzLml0ZW0udXNlcklkID09PSBtZSA/IHlvdSA6IHRoaXMuX2FjY291bnRzLmdldCh0aGlzLml0ZW0udXNlcklkKV07XHJcbiAgICBpZiAodGhpcy5pdGVtLmJ5SWQpXHJcbiAgICAgIHdob3MucHVzaCh0aGlzLml0ZW0uYnlJZCA9PT0gbWUgPyB5b3UgOiB0aGlzLl9hY2NvdW50cy5nZXQodGhpcy5pdGVtLmJ5SWQpKTtcclxuICAgIGlmICh0aGlzLml0ZW0ucGFyZW50SWQpIHtcclxuICAgICAgY29uc3QgcGFyZW50ID0gdGhpcy5tb2RlbC5jb21tZW50cy5maW5kKGMgPT4gYy5pZCA9PSB0aGlzLml0ZW0ucGFyZW50SWQpLCB3aG8gPSBwYXJlbnQuYnlJZCB8fCBwYXJlbnQudXNlcklkO1xyXG4gICAgICB3aG9zLnB1c2god2hvID09IG1lID8geW91IDogdGhpcy5fYWNjb3VudHMuZ2V0KHdobykpO1xyXG4gICAgfVxyXG4gICAgZm9ya0pvaW4od2hvcykuc3Vic2NyaWJlKHRoaXMuX25hbWUuYmluZCh0aGlzKSk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX25hbWUodXM6IE9ic2VydmFibGU8VXNlckluZm8gfCAneW91Jz4pIHtcclxuICAgIGlmICh1c1swXSA9PT0gJ3lvdScpXHJcbiAgICAgIHRoaXMubmFtZSA9IHRoaXMuX3RyYW5zbGF0ZS5nZXQoJ1lvdScpO1xyXG4gICAgZWxzZVxyXG4gICAgICB0aGlzLm5hbWUgPSB0aGlzLl9mb3JtYXRVc2VyRWxlbWVudCh1c1swXSBhcyBVc2VySW5mbyk7XHJcbiAgICBpZiAodGhpcy5pdGVtLmJ5SWQpIHtcclxuICAgICAgaWYgKHVzWzFdID09PSAneW91JylcclxuICAgICAgICB0aGlzLm5hbWUgPSB0aGlzLl90cmFuc2xhdGUuZ2V0KCdCeVlvdScsIHRoaXMubmFtZSk7XHJcbiAgICAgIGVsc2VcclxuICAgICAgICB0aGlzLm5hbWUgPSB0aGlzLl90cmFuc2xhdGUuZ2V0KCdCeScsIHRoaXMubmFtZSwgdGhpcy5fZm9ybWF0VXNlckVsZW1lbnQodXNbMV0gYXMgVXNlckluZm8pKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLml0ZW0ucGFyZW50SWQpIHtcclxuICAgICAgY29uc3Qgd2hvID0gdXNbMl0gfHwgdXNbMV07XHJcbiAgICAgIGlmICh3aG8gPT09ICd5b3UnKVxyXG4gICAgICAgIHRoaXMubmFtZSA9IHRoaXMuX3RyYW5zbGF0ZS5nZXQoJ1JlcGx5aW5nVG9Zb3UnLCB0aGlzLm5hbWUpO1xyXG4gICAgICBlbHNlIGlmICh1c1swXSA9PT0gJ3lvdScpXHJcbiAgICAgICAgdGhpcy5uYW1lID0gdGhpcy5fdHJhbnNsYXRlLmdldCgnWW91UmVwbGllZFRvJywgdGhpcy5fZm9ybWF0VXNlckVsZW1lbnQod2hvIGFzIFVzZXJJbmZvKSk7XHJcbiAgICAgIGVsc2VcclxuICAgICAgICB0aGlzLm5hbWUgPSB0aGlzLl90cmFuc2xhdGUuZ2V0KCdSZXBseWluZ1RvJywgdGhpcy5uYW1lLCB0aGlzLl9mb3JtYXRVc2VyRWxlbWVudCh3aG8gYXMgVXNlckluZm8pKTtcclxuICAgIH1cclxuICB9XHJcbiAgcHJpdmF0ZSBfZm9ybWF0VXNlckVsZW1lbnQocGVyc29uOiBVc2VySW5mbykge1xyXG4gICAgaWYgKHRoaXMuX2NvbmZpZy5jaGF0aW5nICE9PSBmYWxzZSlcclxuICAgICAgcmV0dXJuIHRoaXMuX2NoYXQuZm9ybWF0KHBlcnNvbik7XHJcbiAgICBlbHNlXHJcbiAgICAgIHJldHVybiBwZXJzb24ubmljayB8fCBwZXJzb24ubmFtZTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogQ2hhdFxyXG4gICAqIEBwYXJhbSBlXHJcbiAgICovXHJcbiAgY2hhdChlOiBNb3VzZUV2ZW50KSB7XHJcbiAgICBjb25zdCB1c2VySWQgPSAoZS5zcmNFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5nZXRBdHRyaWJ1dGUoJ2RhdGEtaW5mbycpO1xyXG4gICAgdXNlcklkICYmXHJcbiAgICAgIHRoaXMuX2NoYXQub3Blbih1c2VySWQpO1xyXG4gIH1cclxuICB2b3RlKHZhbHVlOiBudW1iZXIsIGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICB2YWx1ZSA9IHRoaXMuaXRlbS52b3RlZCAhPT0gdmFsdWUgPyB2YWx1ZSA6IDA7XHJcbiAgICB0aGlzLl9tYWlsYm94LnZvdGUodGhpcy5tb2RlbC5kb2N1bWVudElkLCB0aGlzLml0ZW0uaWQsIHZhbHVlKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICBpZiAodGhpcy5pdGVtLnZvdGVzID09PSB1bmRlZmluZWQpXHJcbiAgICAgICAgdGhpcy5pdGVtLnZvdGVzID0gdmFsdWU7XHJcbiAgICAgIGVsc2UgaWYgKHZhbHVlID09PSAwKVxyXG4gICAgICAgIHRoaXMuaXRlbS52b3RlcyAtPSB0aGlzLml0ZW0udm90ZWQ7XHJcbiAgICAgIGVsc2VcclxuICAgICAgICB0aGlzLml0ZW0udm90ZXMgKz0gdmFsdWUgLSAodGhpcy5pdGVtLnZvdGVkIHx8IDApO1xyXG4gICAgICBpZiAodGhpcy5pdGVtLnZvdGVzID09PSAwKSB0aGlzLml0ZW0udm90ZXMgPSB1bmRlZmluZWQ7XHJcbiAgICAgIHRoaXMuaXRlbS52b3RlZCA9IHZhbHVlICE9PSAwID8gdmFsdWUgOiB1bmRlZmluZWQ7XHJcbiAgICB9KTtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIH1cclxuICBlZGl0KCkge1xyXG4gICAgY29uc3QgeyBpZCwgdGV4dCwgcmVzb3VyY2UsIGltYWdlIH0gPSB0aGlzLml0ZW07XHJcbiAgICB0aGlzLl9vcGVuKEVkaXRDb21tZW50Q29tcG9uZW50LCB7XHJcbiAgICAgIGlkLCB0ZXh0LCByZXNvdXJjZSwgaW1hZ2UsXHJcbiAgICAgIGRvY3VtZW50SWQ6IHRoaXMubW9kZWwuZG9jdW1lbnRJZFxyXG4gICAgfSBhcyBDb21tZW50RGF0YSkuY2xvc2VkLnN1YnNjcmliZShjID0+IHtcclxuICAgICAgYyAmJlxyXG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcy5pdGVtLCB7IGltYWdlOiBudWxsLCB0ZXh0OiBudWxsIH0sIGMpXHJcbiAgICB9KTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfb3Blbihjb21wb25lbnQsIGRhdGEpIHtcclxuICAgIHJldHVybiB0aGlzLl9wb3B1cC5vcGVuKGNvbXBvbmVudCwgdGhpcy5ib2R5RWxlbWVudCwgeyBwb3NpdGlvbjogJ3N0YXJ0JywgZGF0YSB9KTtcclxuICB9XHJcbiAgZGVsZXRlKCkge1xyXG4gICAgdGhpcy5fcHMuYXNrKCdEZWxldGVDb21tZW50QXNrJywgbnVsbCwge1xyXG4gICAgICBvazogJ0RlbGV0ZScsXHJcbiAgICAgIGNvbG9yOiAnd2FybidcclxuICAgIH0pLnN1YnNjcmliZShvayA9PiB7XHJcbiAgICAgIG9rICYmIHRoaXMuX21haWxib3gucmVtb3ZlY29tbWVudCh0aGlzLml0ZW0uaWQpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5pdGVtLmRlbGV0ZWQgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuZGVsZXRlZC5lbWl0KCk7XHJcbiAgICAgIH0sICgpID0+IHRoaXMuX3BzLmVycm9yKCkpO1xyXG4gICAgfSlcclxuICB9XHJcbiAgZWRpdHMoKSB7XHJcbiAgICB0aGlzLl9vcGVuKENvbW1lbnRFZGl0c0NvbXBvbmVudCwge1xyXG4gICAgICBpZDogdGhpcy5pdGVtLmlkLFxyXG4gICAgICBieUlkOiB0aGlzLml0ZW0uYnlJZCxcclxuICAgICAgcmVzb3VyY2U6IHRoaXMuaXRlbS5yZXNvdXJjZSxcclxuICAgICAgZG9jdW1lbnRJZDogdGhpcy5tb2RlbC5kb2N1bWVudElkXHJcbiAgICB9IGFzIENvbW1lbnRWZXJzaW9uRGF0YSk7XHJcbiAgfVxyXG4gIHByZXZpZXcoKSB7XHJcbiAgICBjb25zdCBvUmVmID0gdGhpcy5fb3ZlcmxheS5jcmVhdGUoe1xyXG4gICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcclxuICAgICAgZGlzcG9zZU9uTmF2aWdhdGlvbjogdHJ1ZSxcclxuICAgICAgcG9zaXRpb25TdHJhdGVneTogdGhpcy5fb3ZlcmxheS5wb3NpdGlvbigpLmdsb2JhbCgpLmNlbnRlckhvcml6b250YWxseSgpLmNlbnRlclZlcnRpY2FsbHkoKSxcclxuICAgIH0pO1xyXG4gICAgb1JlZi5hdHRhY2gobmV3IFRlbXBsYXRlUG9ydGFsKHRoaXMucHJldmlld1RlbXBsYXRlLCB0aGlzLl92YykpO1xyXG4gICAgbWVyZ2Uob1JlZi5rZXlkb3duRXZlbnRzKCkucGlwZShmaWx0ZXIoayA9PiBrLmtleUNvZGUgPT09IEVTQ0FQRSkpLCBvUmVmLmJhY2tkcm9wQ2xpY2soKSkuc3Vic2NyaWJlKCgpID0+IG9SZWYuZGV0YWNoKCkpO1xyXG4gIH1cclxuICB2b3RlcygpIHtcclxuICAgIHRoaXMuX29wZW4oQ29tbWVudExpa2VzQ29tcG9uZW50LCB7XHJcbiAgICAgIGlkOiB0aGlzLml0ZW0uaWQsXHJcbiAgICAgIGRvY3VtZW50SWQ6IHRoaXMubW9kZWwuZG9jdW1lbnRJZFxyXG4gICAgfSBhcyBDb21tZW50Vm90ZURhdGEpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgPGRpdiBjbGFzcz1cImNvbW1lbnQtYm9keVwiICNib2R5PlxyXG4gICAgPGRpdiBbaW5uZXJIVE1MXT1cIml0ZW0udGV4dHx0YWdnaW5nSHRtbDppdGVtLnJlc291cmNlXCIgY2xhc3M9XCJjb21tZW50LXRleHRcIj48L2Rpdj5cclxuICAgIDxpbWcgKm5nSWY9XCJpdGVtLmltYWdlXCIgW3NyY109XCInZGF0YTppbWFnZS9wbmc7YmFzZTY0LCcraXRlbS5pbWFnZVwiIGFsdD1cIlwiIChjbGljayk9XCJwcmV2aWV3KClcIiAvPlxyXG4gIDwvZGl2PlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uICpuZ0lmPVwibWVcIiBbbWF0TWVudVRyaWdnZXJGb3JdPVwibWVudVwiIGNsYXNzPVwidG9vbFwiIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj48bWF0LWljb24+bW9yZV92ZXJ0PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICA8bWF0LW1lbnUgI21lbnU+XHJcbiAgICA8bmctdGVtcGxhdGUgbWF0TWVudUNvbnRlbnQ+XHJcbiAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwiZWRpdCgpXCI+e3snRWRpdCd8dHJhbnNsYXRlfX08L2J1dHRvbj5cclxuICAgICAgPG1hdC1kaXZpZGVyPjwvbWF0LWRpdmlkZXI+XHJcbiAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwiZGVsZXRlKClcIj57eydEZWxldGUnfHRyYW5zbGF0ZX19PC9idXR0b24+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIDwvbWF0LW1lbnU+XHJcbjwvZGl2PlxyXG48ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgPGRpdiBjbGFzcz1cImNvbHVtblwiPlxyXG4gICAgPHNwYW4gW2lubmVySFRNTF09XCJuYW1lIHwgc2FuaXRpemVIdG1sXCIgKGNsaWNrKT1cImNoYXQoJGV2ZW50KVwiPjwvc3Bhbj5cclxuICAgIDxkaXY+XHJcbiAgICAgIDxzbWFsbCBmeEZsZXggYml6ZG9jVG9vbHRpcD1cInt7aXRlbS5lZGl0ZWQgfHwgaXRlbS50aW1lIHwgYW1DYWxlbmRhciB9fVwiPnt7aXRlbS5lZGl0ZWQgfHwgaXRlbS50aW1lIHwgYW1UaW1lQWdvfX08L3NtYWxsPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbS5lZGl0ZWRcIj5cclxuICAgICAgICAmbmJzcDs8YSAoY2xpY2spPVwiZWRpdHMoKVwiIGNsYXNzPVwibW9kaWZpY2F0aW9uXCI+e3snRWRpdGVkJ3wgdHJhbnNsYXRlfX08L2E+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIW1lXCI+XHJcbiAgICAgICAgJm5ic3A7PGEgKGNsaWNrKT1cInJlcGx5LmVtaXQoKVwiIGNsYXNzPVwibW9kaWZpY2F0aW9uXCI+e3snUmVwbHknfCB0cmFuc2xhdGV9fTwvYT5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwiY29tbWVudC1hY3Rpb25zXCIgKm5nSWY9XCJ2b3RpbmdcIj5cclxuICAgIDxhICpuZ0lmPVwiaXRlbS52b3RlcyA+IDAgfHwgaXRlbS52b3RlcyA8IDBcIiBbY2xhc3Muc2NvcmUtbmVnYXRpdmVdPVwiaXRlbS52b3RlcyA8IDBcIiBjbGFzcz1cImNvbW1lbnQtc2NvcmVcIiBkaXI9XCJsdHJcIiAoY2xpY2spPVwidm90ZXMoKVwiIFtiaXpkb2NUb29sdGlwXT1cIidWb3Rlcyd8dHJhbnNsYXRlXCI+e3tpdGVtLnZvdGVzfX08L2E+XHJcbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwidm90ZSgxLCAkZXZlbnQpXCIgW2NsYXNzLnZvdGVkLXRydWVdPVwiaXRlbS52b3RlZD09PTFcIiA+PG1hdC1pY29uPnRodW1iX3VwX2FsdDwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwidm90ZSgtMSwgJGV2ZW50KVwiIFtjbGFzcy52b3RlZC1mYWxzZV09XCJpdGVtLnZvdGVkPT09LTFcIiA+PG1hdC1pY29uPnRodW1iX2Rvd25fYWx0PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbjxuZy10ZW1wbGF0ZSAjcHJldmlld1RlbXBsYXRlPlxyXG4gIDxpbWcgW3NyY109XCInZGF0YTppbWFnZS9wbmc7YmFzZTY0LCcraXRlbS5pbWFnZVwiIGFsdD1cIlwiIC8+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
|
186
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2NvbXBvc2UvY29tbWVudHMvY29tbWVudC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2NvbXBvc2UvY29tbWVudHMvY29tbWVudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBYyxNQUFNLEVBQXlDLE1BQU0sZUFBZSxDQUFDO0FBRTdJLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQWdCLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBT3ZFLE9BQU8sRUFBZSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxxQkFBcUIsRUFBc0IsTUFBTSxtQkFBbUIsQ0FBQztBQUM5RSxPQUFPLEVBQW1CLHFCQUFxQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBVzNFLHVCQUF1QjtBQUN2QixNQUFNLE9BQU8sZ0JBQWdCO0lBVTNCLFlBQ1UsUUFBd0IsRUFDeEIsR0FBa0IsRUFDbEIsVUFBNEIsRUFDNUIsS0FBZSxFQUNmLFNBQXlCLEVBQ3pCLE1BQWEsRUFDYixRQUFpQixFQUNqQixRQUF3QixFQUN4QixHQUFxQixFQUNFLE9BQXFCO1FB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LENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDM0gsQ0FBQztJQUNELEtBQUs7UUFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLHFCQUFxQixFQUFFO1lBQ2hDLEVBQUUsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDaEIsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVTtTQUNmLENBQUMsQ0FBQztJQUN4QixDQUFDOzs2R0FuSVUsZ0JBQWdCLDZRQW9CakIsYUFBYTtpR0FwQlosZ0JBQWdCLGdZQzNCN0IsdWhFQW9DQTsyRkRUYSxnQkFBZ0I7a0JBUjVCLFNBQVM7K0JBQ0UsZ0JBQWdCLFFBRXBCO3dCQUNKLEtBQUssRUFBRSxTQUFTO3FCQUNqQjs7MEJBdUJFLE1BQU07MkJBQUMsYUFBYTs0Q0FuQmQsS0FBSztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFFYSxPQUFPO3NCQUF6QixNQUFNO2dCQUNZLEtBQUs7c0JBQXZCLE1BQU07Z0JBQ1ksV0FBVztzQkFBN0IsU0FBUzt1QkFBQyxNQUFNO2dCQUNhLGVBQWU7c0JBQTVDLFNBQVM7dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIFZpZXdDaGlsZCwgRWxlbWVudFJlZiwgSW5qZWN0LCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZiwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE92ZXJsYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XHJcbmltcG9ydCB7IFRlbXBsYXRlUG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XHJcbmltcG9ydCB7IEVTQ0FQRSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9rZXljb2Rlcyc7XHJcbmltcG9ydCB7IGZvcmtKb2luLCBtZXJnZSwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBCaXpEb2NDb25maWcsIEJJWkRPQ19DT05GSUcgfSBmcm9tICcuLi8uLi9jb3JlL2NvbmZpZ3VyYXRpb24nO1xyXG5pbXBvcnQgeyBDb21tZW50LCBEb2N1bWVudE1vZGVsLCBVc2VySW5mbyB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWxzJztcclxuaW1wb3J0IHsgUHJvbXB0U2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvcHJvbXB0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNYWlsYm94U2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvbWFpbGJveC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU2Vzc2lvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL3Nlc3Npb24uc2VydmljZSc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL3RyYW5zbGF0ZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUG9wdXAgfSBmcm9tIFwiLi4vLi4vY29yZS9wb3B1cC9wb3B1cC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IENvbW1lbnREYXRhLCBFZGl0Q29tbWVudENvbXBvbmVudCB9IGZyb20gJy4vZWRpdC1jb21tZW50LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbW1lbnRFZGl0c0NvbXBvbmVudCwgQ29tbWVudFZlcnNpb25EYXRhIH0gZnJvbSAnLi9lZGl0cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb21tZW50Vm90ZURhdGEsIENvbW1lbnRMaWtlc0NvbXBvbmVudCB9IGZyb20gJy4vdm90ZXMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQWNjb3VudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL2FjY291bnQuc2VydmljZSc7XHJcbmltcG9ydCB7IENoYXRJbmZvIH0gZnJvbSAnLi4vLi4vY2hhdC9jaGF0LWluZm8nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdiaXpkb2MtY29tbWVudCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbW1lbnQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIGhvc3Q6IHtcclxuICAgIGNsYXNzOiAnY29tbWVudCdcclxuICB9XHJcbn0pXHJcbi8qKiBjb21tZW50IGNvbXBvbmVudCovXHJcbmV4cG9ydCBjbGFzcyBDb21tZW50Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSBtb2RlbCE6IERvY3VtZW50TW9kZWw8YW55PjtcclxuICBASW5wdXQoKSBpdGVtITogQ29tbWVudDtcclxuICB2b3Rpbmc6IGJvb2xlYW47XHJcbiAgQE91dHB1dCgpIHJlYWRvbmx5IGRlbGV0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIHJlYWRvbmx5IHJlcGx5ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBWaWV3Q2hpbGQoJ2JvZHknKSBib2R5RWxlbWVudDogRWxlbWVudFJlZjxIVE1MVGV4dEFyZWFFbGVtZW50PjtcclxuICBAVmlld0NoaWxkKCdwcmV2aWV3VGVtcGxhdGUnKSBwcmV2aWV3VGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgbmFtZTogc3RyaW5nID0gJyc7XHJcbiAgbWU6IGJvb2xlYW47XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9zZXNzaW9uOiBTZXNzaW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgX3BzOiBQcm9tcHRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfY2hhdDogQ2hhdEluZm8sXHJcbiAgICBwcml2YXRlIF9hY2NvdW50czogQWNjb3VudFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9wb3B1cDogUG9wdXAsXHJcbiAgICBwcml2YXRlIF9vdmVybGF5OiBPdmVybGF5LFxyXG4gICAgcHJpdmF0ZSBfbWFpbGJveDogTWFpbGJveFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF92YzogVmlld0NvbnRhaW5lclJlZixcclxuICAgIEBJbmplY3QoQklaRE9DX0NPTkZJRykgcHJpdmF0ZSBfY29uZmlnOiBCaXpEb2NDb25maWcpIHtcclxuICAgIHRoaXMudm90aW5nID0gIV9jb25maWcuY29tbWVudHMgfHwgX2NvbmZpZy5jb21tZW50cy52b3RpbmcgIT09IGZhbHNlO1xyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IG1lID0gdGhpcy5fc2Vzc2lvbi51c2VySWQsIHlvdSA9IG9mKCd5b3UnKTtcclxuICAgIHRoaXMubWUgPSAodGhpcy5pdGVtLmJ5SWQgfHwgdGhpcy5pdGVtLnVzZXJJZCkgPT09IG1lO1xyXG4gICAgY29uc3Qgd2hvczogW09ic2VydmFibGU8YW55Pl0gPSBbdGhpcy5pdGVtLnVzZXJJZCA9PT0gbWUgPyB5b3UgOiB0aGlzLl9hY2NvdW50cy5nZXQodGhpcy5pdGVtLnVzZXJJZCldO1xyXG4gICAgaWYgKHRoaXMuaXRlbS5ieUlkKVxyXG4gICAgICB3aG9zLnB1c2godGhpcy5pdGVtLmJ5SWQgPT09IG1lID8geW91IDogdGhpcy5fYWNjb3VudHMuZ2V0KHRoaXMuaXRlbS5ieUlkKSk7XHJcbiAgICBpZiAodGhpcy5pdGVtLnBhcmVudElkKSB7XHJcbiAgICAgIGNvbnN0IHBhcmVudCA9IHRoaXMubW9kZWwuY29tbWVudHMuZmluZChjID0+IGMuaWQgPT0gdGhpcy5pdGVtLnBhcmVudElkKSwgd2hvID0gcGFyZW50LmJ5SWQgfHwgcGFyZW50LnVzZXJJZDtcclxuICAgICAgd2hvcy5wdXNoKHdobyA9PSBtZSA/IHlvdSA6IHRoaXMuX2FjY291bnRzLmdldCh3aG8pKTtcclxuICAgIH1cclxuICAgIGZvcmtKb2luKHdob3MpLnN1YnNjcmliZSh0aGlzLl9uYW1lLmJpbmQodGhpcykpO1xyXG4gIH1cclxuICBwcml2YXRlIF9uYW1lKHVzOiBPYnNlcnZhYmxlPFVzZXJJbmZvIHwgJ3lvdSc+KSB7XHJcbiAgICBpZiAodXNbMF0gPT09ICd5b3UnKVxyXG4gICAgICB0aGlzLm5hbWUgPSB0aGlzLl90cmFuc2xhdGUuZ2V0KCdZb3UnKTtcclxuICAgIGVsc2VcclxuICAgICAgdGhpcy5uYW1lID0gdGhpcy5fZm9ybWF0VXNlckVsZW1lbnQodXNbMF0gYXMgVXNlckluZm8pO1xyXG4gICAgaWYgKHRoaXMuaXRlbS5ieUlkKSB7XHJcbiAgICAgIGlmICh1c1sxXSA9PT0gJ3lvdScpXHJcbiAgICAgICAgdGhpcy5uYW1lID0gdGhpcy5fdHJhbnNsYXRlLmdldCgnQnlZb3UnLCB0aGlzLm5hbWUpO1xyXG4gICAgICBlbHNlXHJcbiAgICAgICAgdGhpcy5uYW1lID0gdGhpcy5fdHJhbnNsYXRlLmdldCgnQnknLCB0aGlzLm5hbWUsIHRoaXMuX2Zvcm1hdFVzZXJFbGVtZW50KHVzWzFdIGFzIFVzZXJJbmZvKSk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5pdGVtLnBhcmVudElkKSB7XHJcbiAgICAgIGNvbnN0IHdobyA9IHVzWzJdIHx8IHVzWzFdO1xyXG4gICAgICBpZiAod2hvID09PSAneW91JylcclxuICAgICAgICB0aGlzLm5hbWUgPSB0aGlzLl90cmFuc2xhdGUuZ2V0KCdSZXBseWluZ1RvWW91JywgdGhpcy5uYW1lKTtcclxuICAgICAgZWxzZSBpZiAodXNbMF0gPT09ICd5b3UnKVxyXG4gICAgICAgIHRoaXMubmFtZSA9IHRoaXMuX3RyYW5zbGF0ZS5nZXQoJ1lvdVJlcGxpZWRUbycsIHRoaXMuX2Zvcm1hdFVzZXJFbGVtZW50KHdobyBhcyBVc2VySW5mbykpO1xyXG4gICAgICBlbHNlXHJcbiAgICAgICAgdGhpcy5uYW1lID0gdGhpcy5fdHJhbnNsYXRlLmdldCgnUmVwbHlpbmdUbycsIHRoaXMubmFtZSwgdGhpcy5fZm9ybWF0VXNlckVsZW1lbnQod2hvIGFzIFVzZXJJbmZvKSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHByaXZhdGUgX2Zvcm1hdFVzZXJFbGVtZW50KHBlcnNvbjogVXNlckluZm8pIHtcclxuICAgIGlmICh0aGlzLl9jb25maWcuY2hhdGluZyAhPT0gZmFsc2UpXHJcbiAgICAgIHJldHVybiB0aGlzLl9jaGF0LmZvcm1hdChwZXJzb24pO1xyXG4gICAgZWxzZVxyXG4gICAgICByZXR1cm4gcGVyc29uLm5pY2sgfHwgcGVyc29uLm5hbWU7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIENoYXRcclxuICAgKiBAcGFyYW0gZVxyXG4gICAqL1xyXG4gIGNoYXQoZTogTW91c2VFdmVudCkge1xyXG4gICAgY29uc3QgdXNlcklkID0gKGUuc3JjRWxlbWVudCBhcyBIVE1MRWxlbWVudCkuZ2V0QXR0cmlidXRlKCdkYXRhLWluZm8nKTtcclxuICAgIHVzZXJJZCAmJlxyXG4gICAgICB0aGlzLl9jaGF0Lm9wZW4odXNlcklkKTtcclxuICB9XHJcbiAgdm90ZSh2YWx1ZTogbnVtYmVyLCBldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgdmFsdWUgPSB0aGlzLml0ZW0udm90ZWQgIT09IHZhbHVlID8gdmFsdWUgOiAwO1xyXG4gICAgdGhpcy5fbWFpbGJveC52b3RlKHRoaXMubW9kZWwuZG9jdW1lbnRJZCwgdGhpcy5pdGVtLmlkLCB2YWx1ZSkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgaWYgKHRoaXMuaXRlbS52b3RlcyA9PT0gdW5kZWZpbmVkKVxyXG4gICAgICAgIHRoaXMuaXRlbS52b3RlcyA9IHZhbHVlO1xyXG4gICAgICBlbHNlIGlmICh2YWx1ZSA9PT0gMClcclxuICAgICAgICB0aGlzLml0ZW0udm90ZXMgLT0gdGhpcy5pdGVtLnZvdGVkO1xyXG4gICAgICBlbHNlXHJcbiAgICAgICAgdGhpcy5pdGVtLnZvdGVzICs9IHZhbHVlIC0gKHRoaXMuaXRlbS52b3RlZCB8fCAwKTtcclxuICAgICAgaWYgKHRoaXMuaXRlbS52b3RlcyA9PT0gMCkgdGhpcy5pdGVtLnZvdGVzID0gdW5kZWZpbmVkO1xyXG4gICAgICB0aGlzLml0ZW0udm90ZWQgPSB2YWx1ZSAhPT0gMCA/IHZhbHVlIDogdW5kZWZpbmVkO1xyXG4gICAgfSk7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICB9XHJcbiAgZWRpdCgpIHtcclxuICAgIGNvbnN0IHsgaWQsIHRleHQsIHJlc291cmNlLCBpbWFnZSB9ID0gdGhpcy5pdGVtO1xyXG4gICAgdGhpcy5fb3BlbihFZGl0Q29tbWVudENvbXBvbmVudCwge1xyXG4gICAgICBpZCwgdGV4dCwgcmVzb3VyY2UsIGltYWdlLFxyXG4gICAgICBkb2N1bWVudElkOiB0aGlzLm1vZGVsLmRvY3VtZW50SWRcclxuICAgIH0gYXMgQ29tbWVudERhdGEpLmNsb3NlZC5zdWJzY3JpYmUoYyA9PiB7XHJcbiAgICAgIGMgJiZcclxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMuaXRlbSwgeyBpbWFnZTogbnVsbCwgdGV4dDogbnVsbCB9LCBjKVxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX29wZW4oY29tcG9uZW50LCBkYXRhKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fcG9wdXAub3Blbihjb21wb25lbnQsIHRoaXMuYm9keUVsZW1lbnQsIHsgcG9zaXRpb246ICdzdGFydCcsIGRhdGEgfSk7XHJcbiAgfVxyXG4gIGRlbGV0ZSgpIHtcclxuICAgIHRoaXMuX3BzLmFzaygnRGVsZXRlQ29tbWVudEFzaycsIG51bGwsIHtcclxuICAgICAgb2s6ICdEZWxldGUnLFxyXG4gICAgICBjb2xvcjogJ3dhcm4nXHJcbiAgICB9KS5zdWJzY3JpYmUob2sgPT4ge1xyXG4gICAgICBvayAmJiB0aGlzLl9tYWlsYm94LnJlbW92ZWNvbW1lbnQodGhpcy5pdGVtLmlkKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuaXRlbS5kZWxldGVkID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLmRlbGV0ZWQuZW1pdCgpO1xyXG4gICAgICB9LCAoKSA9PiB0aGlzLl9wcy5lcnJvcigpKTtcclxuICAgIH0pXHJcbiAgfVxyXG4gIGVkaXRzKCkge1xyXG4gICAgdGhpcy5fb3BlbihDb21tZW50RWRpdHNDb21wb25lbnQsIHtcclxuICAgICAgaWQ6IHRoaXMuaXRlbS5pZCxcclxuICAgICAgYnlJZDogdGhpcy5pdGVtLmJ5SWQsXHJcbiAgICAgIHJlc291cmNlOiB0aGlzLml0ZW0ucmVzb3VyY2UsXHJcbiAgICAgIGRvY3VtZW50SWQ6IHRoaXMubW9kZWwuZG9jdW1lbnRJZFxyXG4gICAgfSBhcyBDb21tZW50VmVyc2lvbkRhdGEpO1xyXG4gIH1cclxuICBwcmV2aWV3KCkge1xyXG4gICAgY29uc3Qgb1JlZiA9IHRoaXMuX292ZXJsYXkuY3JlYXRlKHtcclxuICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXHJcbiAgICAgIGRpc3Bvc2VPbk5hdmlnYXRpb246IHRydWUsXHJcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMuX292ZXJsYXkucG9zaXRpb24oKS5nbG9iYWwoKS5jZW50ZXJIb3Jpem9udGFsbHkoKS5jZW50ZXJWZXJ0aWNhbGx5KCksXHJcbiAgICB9KTtcclxuICAgIG9SZWYuYXR0YWNoKG5ldyBUZW1wbGF0ZVBvcnRhbCh0aGlzLnByZXZpZXdUZW1wbGF0ZSwgdGhpcy5fdmMpKTtcclxuICAgIG1lcmdlKG9SZWYua2V5ZG93bkV2ZW50cygpLnBpcGUoZmlsdGVyKGsgPT4gay5rZXlDb2RlID09PSBFU0NBUEUpKSwgb1JlZi5iYWNrZHJvcENsaWNrKCkpLnN1YnNjcmliZSgoKSA9PiBvUmVmLmRldGFjaCgpKTtcclxuICB9XHJcbiAgdm90ZXMoKSB7XHJcbiAgICB0aGlzLl9vcGVuKENvbW1lbnRMaWtlc0NvbXBvbmVudCwge1xyXG4gICAgICBpZDogdGhpcy5pdGVtLmlkLFxyXG4gICAgICBkb2N1bWVudElkOiB0aGlzLm1vZGVsLmRvY3VtZW50SWRcclxuICAgIH0gYXMgQ29tbWVudFZvdGVEYXRhKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gIDxkaXYgY2xhc3M9XCJjb21tZW50LWJvZHlcIiAjYm9keT5cclxuICAgIDxkaXYgW2lubmVySFRNTF09XCJpdGVtLnRleHR8dGFnZ2luZ0h0bWw6aXRlbS5yZXNvdXJjZVwiIGNsYXNzPVwiY29tbWVudC10ZXh0XCI+PC9kaXY+XHJcbiAgICA8aW1nICpuZ0lmPVwiaXRlbS5pbWFnZVwiIFtzcmNdPVwiJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCwnK2l0ZW0uaW1hZ2VcIiBhbHQ9XCJcIiAoY2xpY2spPVwicHJldmlldygpXCIgLz5cclxuICA8L2Rpdj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAqbmdJZj1cIm1lXCIgW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm1lbnVcIiBjbGFzcz1cInRvb2xcIiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+PG1hdC1pY29uPm1vcmVfdmVydDwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgPG1hdC1tZW51ICNtZW51PlxyXG4gICAgPG5nLXRlbXBsYXRlIG1hdE1lbnVDb250ZW50PlxyXG4gICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cImVkaXQoKVwiPnt7J0VkaXQnfHRyYW5zbGF0ZX19PC9idXR0b24+XHJcbiAgICAgIDxtYXQtZGl2aWRlcj48L21hdC1kaXZpZGVyPlxyXG4gICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cImRlbGV0ZSgpXCI+e3snRGVsZXRlJ3x0cmFuc2xhdGV9fTwvYnV0dG9uPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICA8L21hdC1tZW51PlxyXG48L2Rpdj5cclxuPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gIDxkaXYgY2xhc3M9XCJjb2x1bW5cIj5cclxuICAgIDxzcGFuIFtpbm5lckhUTUxdPVwibmFtZSB8IHNhbml0aXplSHRtbFwiIChjbGljayk9XCJjaGF0KCRldmVudClcIj48L3NwYW4+XHJcbiAgICA8ZGl2PlxyXG4gICAgICA8c21hbGwgZnhGbGV4IGJpemRvY1Rvb2x0aXA9XCJ7e2l0ZW0uZWRpdGVkIHx8IGl0ZW0udGltZSB8IGFtQ2FsZW5kYXIgfX1cIj57e2l0ZW0uZWRpdGVkIHx8IGl0ZW0udGltZSB8IGFtVGltZUFnb319PC9zbWFsbD5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW0uZWRpdGVkXCI+XHJcbiAgICAgICAgJm5ic3A7PGEgKGNsaWNrKT1cImVkaXRzKClcIiBjbGFzcz1cIm1vZGlmaWNhdGlvblwiPnt7J0VkaXRlZCd8IHRyYW5zbGF0ZX19PC9hPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFtZVwiPlxyXG4gICAgICAgICZuYnNwOzxhIChjbGljayk9XCJyZXBseS5lbWl0KClcIiBjbGFzcz1cIm1vZGlmaWNhdGlvblwiPnt7J1JlcGx5J3wgdHJhbnNsYXRlfX08L2E+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cImNvbW1lbnQtYWN0aW9uc1wiICpuZ0lmPVwidm90aW5nXCI+XHJcbiAgICA8YSAqbmdJZj1cIml0ZW0udm90ZXMgPiAwIHx8IGl0ZW0udm90ZXMgPCAwXCIgW2NsYXNzLnNjb3JlLW5lZ2F0aXZlXT1cIml0ZW0udm90ZXMgPCAwXCIgY2xhc3M9XCJjb21tZW50LXNjb3JlXCIgZGlyPVwibHRyXCIgKGNsaWNrKT1cInZvdGVzKClcIiBbYml6ZG9jVG9vbHRpcF09XCInVm90ZXMnfHRyYW5zbGF0ZVwiPnt7aXRlbS52b3Rlc319PC9hPlxyXG4gICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInZvdGUoMSwgJGV2ZW50KVwiIFtjbGFzcy52b3RlZC10cnVlXT1cIml0ZW0udm90ZWQ9PT0xXCIgPjxtYXQtaWNvbj50aHVtYl91cF9hbHQ8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInZvdGUoLTEsICRldmVudClcIiBbY2xhc3Mudm90ZWQtZmFsc2VdPVwiaXRlbS52b3RlZD09PS0xXCIgPjxtYXQtaWNvbj50aHVtYl9kb3duX2FsdDwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG48bmctdGVtcGxhdGUgI3ByZXZpZXdUZW1wbGF0ZT5cclxuICA8aW1nIFtzcmNdPVwiJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCwnK2l0ZW0uaW1hZ2VcIiBhbHQ9XCJcIiAvPlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|
@@ -6,7 +6,7 @@ import * as i2 from "../../core/identity/identity.component";
|
|
6
6
|
import * as i3 from "@angular/common";
|
7
7
|
import * as i4 from "../../core/pipes/translate.pipe";
|
8
8
|
import * as i5 from "../../core/tagging/tagging.pipe";
|
9
|
-
import * as i6 from "
|
9
|
+
import * as i6 from "../../core/pipes/calendar.pipe";
|
10
10
|
export class CommentEditsComponent {
|
11
11
|
constructor(_data, _mailbox) {
|
12
12
|
this._data = _data;
|
@@ -11,7 +11,8 @@ import * as i5 from "@angular/material/icon";
|
|
11
11
|
import * as i6 from "@angular/common";
|
12
12
|
import * as i7 from "../../core/popup/tooltip.directive";
|
13
13
|
import * as i8 from "../../core/pipes/translate.pipe";
|
14
|
-
import * as i9 from "
|
14
|
+
import * as i9 from "../../core/pipes/calendar.pipe";
|
15
|
+
import * as i10 from "../../core/pipes/time-ago.pipe";
|
15
16
|
export class CommentLikesComponent {
|
16
17
|
constructor(_data, _mailbox, _messaging) {
|
17
18
|
this._data = _data;
|
@@ -30,7 +31,7 @@ export class CommentLikesComponent {
|
|
30
31
|
}
|
31
32
|
}
|
32
33
|
CommentLikesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: CommentLikesComponent, deps: [{ token: POPUP_DATA }, { token: i1.MailboxService }, { token: i2.HubService }], target: i0.ɵɵFactoryTarget.Component });
|
33
|
-
CommentLikesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: CommentLikesComponent, selector: "bizdoc-comment-votes", ngImport: i0, template: "<span class=\"mat-title\">{{'Votes' | translate}}</span>\r\n<div *ngFor=\"let v of votes | async\" class=\"vote\">\r\n <bizdoc-identity-name class=\"mat-body\" [identity]=\"v.userId\" [by]=\"v.byId\"></bizdoc-identity-name>\r\n <button mat-icon-button><mat-icon>{{v.voted === 1 ? 'thumb_up_alt' : 'thumb_down_alt'}}</mat-icon></button>\r\n <br />\r\n <small bizdocTooltip=\"{{v.time | amCalendar }}\">{{v.time | amTimeAgo}}</small>\r\n</div>\r\n", styles: [":host{padding:8px}\n"], components: [{ type: i3.IdentityName, selector: "bizdoc-identity-name", inputs: ["identity", "by", "chating"] }, { type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }], pipes: { "translate": i8.TranslatePipe, "async": i6.AsyncPipe, "amCalendar": i9.CalendarPipe, "amTimeAgo":
|
34
|
+
CommentLikesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: CommentLikesComponent, selector: "bizdoc-comment-votes", ngImport: i0, template: "<span class=\"mat-title\">{{'Votes' | translate}}</span>\r\n<div *ngFor=\"let v of votes | async\" class=\"vote\">\r\n <bizdoc-identity-name class=\"mat-body\" [identity]=\"v.userId\" [by]=\"v.byId\"></bizdoc-identity-name>\r\n <button mat-icon-button><mat-icon>{{v.voted === 1 ? 'thumb_up_alt' : 'thumb_down_alt'}}</mat-icon></button>\r\n <br />\r\n <small bizdocTooltip=\"{{v.time | amCalendar }}\">{{v.time | amTimeAgo}}</small>\r\n</div>\r\n", styles: [":host{padding:8px}\n"], components: [{ type: i3.IdentityName, selector: "bizdoc-identity-name", inputs: ["identity", "by", "chating"] }, { type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }], pipes: { "translate": i8.TranslatePipe, "async": i6.AsyncPipe, "amCalendar": i9.CalendarPipe, "amTimeAgo": i10.TimeAgoPipe } });
|
34
35
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: CommentLikesComponent, decorators: [{
|
35
36
|
type: Component,
|
36
37
|
args: [{ selector: 'bizdoc-comment-votes', styles: [':host { padding: 8px }'], template: "<span class=\"mat-title\">{{'Votes' | translate}}</span>\r\n<div *ngFor=\"let v of votes | async\" class=\"vote\">\r\n <bizdoc-identity-name class=\"mat-body\" [identity]=\"v.userId\" [by]=\"v.byId\"></bizdoc-identity-name>\r\n <button mat-icon-button><mat-icon>{{v.voted === 1 ? 'thumb_up_alt' : 'thumb_down_alt'}}</mat-icon></button>\r\n <br />\r\n <small bizdocTooltip=\"{{v.time | amCalendar }}\">{{v.time | amTimeAgo}}</small>\r\n</div>\r\n" }]
|
@@ -38,4 +39,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImpor
|
|
38
39
|
type: Inject,
|
39
40
|
args: [POPUP_DATA]
|
40
41
|
}] }, { type: i1.MailboxService }, { type: i2.HubService }]; } });
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidm90ZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jb21wb3NlL2NvbW1lbnRzL3ZvdGVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvY29tcG9zZS9jb21tZW50cy92b3Rlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDckUsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7Ozs7Ozs7Ozs7O0FBUTlELE1BQU0sT0FBTyxxQkFBcUI7SUFHaEMsWUFDOEIsS0FBc0IsRUFDMUMsUUFBd0IsRUFDeEIsVUFBc0I7UUFGRixVQUFLLEdBQUwsS0FBSyxDQUFpQjtRQUMxQyxhQUFRLEdBQVIsUUFBUSxDQUFnQjtRQUN4QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBSmYsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFNOUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO1FBRWhILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUNELFdBQVc7UUFDVCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7a0hBbEJVLHFCQUFxQixrQkFJdEIsVUFBVTtzR0FKVCxxQkFBcUIsNERDYmxDLG1jQU9BOzJGRE1hLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxzQkFBc0IsVUFFeEIsQ0FBQyx3QkFBd0IsQ0FBQzs7MEJBTS9CLE1BQU07MkJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGZpbHRlciwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBIdWJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9odWIuc2VydmljZSc7XHJcbmltcG9ydCB7IFZvdGUgfSBmcm9tICcuLi8uLi9jb3JlL21vZGVscyc7XHJcbmltcG9ydCB7IFBPUFVQX0RBVEEgfSBmcm9tICcuLi8uLi9jb3JlL3BvcHVwL3BvcHVwLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1haWxib3hTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9tYWlsYm94LnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdiaXpkb2MtY29tbWVudC12b3RlcycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3ZvdGVzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZXM6IFsnOmhvc3QgeyBwYWRkaW5nOiA4cHggfSddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb21tZW50TGlrZXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgdm90ZXM6IE9ic2VydmFibGU8Vm90ZVtdPjtcclxuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBJbmplY3QoUE9QVVBfREFUQSkgcHJpdmF0ZSBfZGF0YTogQ29tbWVudFZvdGVEYXRhLFxyXG4gICAgcHJpdmF0ZSBfbWFpbGJveDogTWFpbGJveFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9tZXNzYWdpbmc6IEh1YlNlcnZpY2VcclxuICApIHtcclxuICAgIHRoaXMuX21lc3NhZ2luZy52b3RlJC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95KSwgZmlsdGVyKGUgPT4gZS5pZCA9PT0gdGhpcy5fZGF0YS5kb2N1bWVudElkKSkuc3Vic2NyaWJlKGUgPT4ge1xyXG5cclxuICAgIH0pO1xyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMudm90ZXMgPSB0aGlzLl9tYWlsYm94LnZvdGVzKHRoaXMuX2RhdGEuZG9jdW1lbnRJZCwgdGhpcy5fZGF0YS5pZCk7XHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fZGVzdHJveS5uZXh0KCk7XHJcbiAgICB0aGlzLl9kZXN0cm95LmNvbXBsZXRlKCk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENvbW1lbnRWb3RlRGF0YSB7XHJcbiAgaWQ6IG51bWJlcjtcclxuICBkb2N1bWVudElkOiBudW1iZXI7XHJcbn1cclxuIiwiPHNwYW4gY2xhc3M9XCJtYXQtdGl0bGVcIj57eydWb3RlcycgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuPGRpdiAqbmdGb3I9XCJsZXQgdiBvZiB2b3RlcyB8IGFzeW5jXCIgY2xhc3M9XCJ2b3RlXCI+XHJcbiAgPGJpemRvYy1pZGVudGl0eS1uYW1lIGNsYXNzPVwibWF0LWJvZHlcIiBbaWRlbnRpdHldPVwidi51c2VySWRcIiBbYnldPVwidi5ieUlkXCI+PC9iaXpkb2MtaWRlbnRpdHktbmFtZT5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbj48bWF0LWljb24+e3t2LnZvdGVkID09PSAxID8gJ3RodW1iX3VwX2FsdCcgOiAndGh1bWJfZG93bl9hbHQnfX08L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gIDxiciAvPlxyXG4gIDxzbWFsbCBiaXpkb2NUb29sdGlwPVwie3t2LnRpbWUgfCBhbUNhbGVuZGFyIH19XCI+e3t2LnRpbWUgfCBhbVRpbWVBZ299fTwvc21hbGw+XHJcbjwvZGl2PlxyXG4iXX0=
|
@@ -32,6 +32,8 @@ export class ComposePaneComponent {
|
|
32
32
|
}
|
33
33
|
ngOnInit() {
|
34
34
|
this._pane.dataChange.subscribe(d => {
|
35
|
+
if (this.model == d.item)
|
36
|
+
return;
|
35
37
|
this.model = d.item;
|
36
38
|
const form = this._session.profile.forms.find(f => f.name === this.model.formId);
|
37
39
|
this._pane.icon = form.icon;
|
@@ -195,4 +197,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImpor
|
|
195
197
|
type: HostListener,
|
196
198
|
args: ['document:keydown', ['$event']]
|
197
199
|
}] } });
|
198
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9zZS5wYW5lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvY29tcG9zZS9jb21wb3NlLnBhbmUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jb21wb3NlL2NvbXBvc2UucGFuZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBYSxTQUFTLEVBQUUsVUFBVSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUduRCxPQUFPLEVBQXNCLGVBQWUsRUFBVyxNQUFNLHdCQUF3QixDQUFDO0FBQ3RGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7O0FBYXhELHVEQUF1RDtBQUN2RCxNQUFNLE9BQU8sb0JBQW9CO0lBWS9CLG1CQUFtQjtJQUNuQixZQUNVLFFBQXdCLEVBQ3hCLFFBQXdCLEVBQ3hCLEtBQW9DLEVBQ3BDLE9BQW9CO1FBSHBCLGFBQVEsR0FBUixRQUFRLENBQWdCO1FBQ3hCLGFBQVEsR0FBUixRQUFRLENBQWdCO1FBQ3hCLFVBQUssR0FBTCxLQUFLLENBQStCO1FBQ3BDLFlBQU8sR0FBUCxPQUFPLENBQWE7UUFQYixjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVcsQ0FBQztRQUNuQyxhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQU9oRCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFNB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ZXIsIE9uRGVzdHJveSwgVmlld0NoaWxkLCBFbGVtZW50UmVmLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBmaWx0ZXIsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgUmVjaXBpZW50TW9kZWwgfSBmcm9tICcuLi9jb3JlL21vZGVscyc7XHJcbmltcG9ydCB7IFBhbmVzUm91dGVyIH0gZnJvbSAnLi4vY29yZS9zbG90cy9yb3V0ZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IE5hdmlnYXRpb25QYW5lQmFzZSwgTmF2aWdhdGlvblN0YXJ0LCBQYW5lUmVmIH0gZnJvbSAnLi4vY29yZS9zbG90cy9wYW5lLXJlZic7XHJcbmltcG9ydCB7IENvbW1lbnRzUGFuZUNvbXBvbmVudCB9IGZyb20gJy4vY29tbWVudHMvQ29tbWVudHMucGFuZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb21wb3NlRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vZm9ybS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBWaWV3TW9kZSB9IGZyb20gJy4uL2NvcmUvYmFzZSc7XHJcbmltcG9ydCB7IE1haWxib3hTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9tYWlsYm94LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTZXNzaW9uU2VydmljZSB9IGZyb20gJy4uL2NvcmUvc2Vzc2lvbi5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYml6ZG9jLWNvbXBvc2UucGFuZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbXBvc2UucGFuZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY29tcG9zZS5wYW5lLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgaG9zdDoge1xyXG4gICAgY2xhc3M6ICdwYW5lJ1xyXG4gIH1cclxufSlcclxuLyoqIGNvbXBvc2UgY29tcG9uZW50IHJlc3BvbnNpYmxlIGZvciBlZGl0aW5nIGEgZm9ybSAqL1xyXG5leHBvcnQgY2xhc3MgQ29tcG9zZVBhbmVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQFZpZXdDaGlsZChDb21wb3NlRm9ybUNvbXBvbmVudCwgeyBzdGF0aWM6IHRydWUgfSkgZm9ybTogQ29tcG9zZUZvcm1Db21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnZHJvcGFibGUnLCB7IHN0YXRpYzogdHJ1ZSwgcmVhZDogRWxlbWVudFJlZiB9KSBkcm9wYWJsZUVsZW1lbnQ6IEVsZW1lbnRSZWY7XHJcbiAgbW9kZWw6IFJlY2lwaWVudE1vZGVsPGFueT47XHJcbiAgbmV3Q29tbWVudHNDb3VudDogbnVtYmVyO1xyXG4gIHdvcmtpbmc6IGJvb2xlYW47XHJcbiAgZGlydHk6IGJvb2xlYW47XHJcbiAgdmFsaWQ6IGJvb2xlYW47XHJcbiAgbW9kZTogVmlld01vZGU7XHJcbiAgZXhwZW5kYWJsZTogYm9vbGVhbjtcclxuICBwcml2YXRlIHJlYWRvbmx5IF9kcmFnRHJvcCA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgLyoqIGNvbXBvc2UgY3RvciAqL1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfc2Vzc2lvbjogU2Vzc2lvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9tYWlsYm94OiBNYWlsYm94U2VydmljZSxcclxuICAgIHByaXZhdGUgX3BhbmU6IFBhbmVSZWY8Q29tcG9zZVBhbmVDb21wb25lbnQ+LFxyXG4gICAgcHJpdmF0ZSBfcm91dGVyOiBQYW5lc1JvdXRlcikge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9wYW5lLmRhdGFDaGFuZ2Uuc3Vic2NyaWJlKGQgPT4ge1xyXG4gICAgICB0aGlzLm1vZGVsID0gZC5pdGVtO1xyXG4gICAgICBjb25zdCBmb3JtID0gdGhpcy5fc2Vzc2lvbi5wcm9maWxlLmZvcm1zLmZpbmQoZiA9PiBmLm5hbWUgPT09IHRoaXMubW9kZWwuZm9ybUlkKTtcclxuICAgICAgdGhpcy5fcGFuZS5pY29uID0gZm9ybS5pY29uO1xyXG4gICAgICBpZiAodGhpcy5tb2RlbC5kcmFmdCkge1xyXG4gICAgICAgIHRoaXMubW9kZSA9ICdjb21wb3NlJztcclxuICAgICAgICAvL3NldFRpbWVvdXQoKCk9PnRoaXMuX3BhbmUuZXhwYW5kKCkpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2VcclxuICAgICAgICB0aGlzLm1vZGUgPSAncHJldmlldyc7XHJcbiAgICAgIHRoaXMubmV3Q29tbWVudHNDb3VudCA9IHRoaXMubW9kZWwudW5yZWFkQ29tbWVudHM7XHJcbiAgICAgIHRoaXMuX3BhbmUudGl0bGUgPSB0aGlzLl9wYW5lLmdyb3VwID0gYCMke3RoaXMubW9kZWwubnVtYmVyfWA7XHJcbiAgICB9KTtcclxuICAgIHRoaXMuX3JvdXRlci5ldmVudHMucGlwZSh0YWtlVW50aWwodGhpcy5fZGVzdHJveSksXHJcbiAgICAgIGZpbHRlcihlID0+IGUgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQgJiZcclxuICAgICAgICBlLnBhbmUuY29tcG9uZW50ID09PSBDb21tZW50c1BhbmVDb21wb25lbnRcclxuICAgICAgICAmJiBlLnBhbmUucGFyZW50ID09PSB0aGlzLl9wYW5lKSkuXHJcbiAgICAgIHN1YnNjcmliZSgoZTogTmF2aWdhdGlvblBhbmVCYXNlKSA9PiB7XHJcbiAgICAgICAgKGUucGFuZS5pbnN0YW5jZSBhcyBDb21tZW50c1BhbmVDb21wb25lbnQpLmNvbW1lbnRzLmNoYW5nZS5cclxuICAgICAgICAgIHBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpKS5zdWJzY3JpYmUoKCkgPT5cclxuICAgICAgICAgICAgdGhpcy5uZXdDb21tZW50c0NvdW50ID0gKGUucGFuZS5pbnN0YW5jZSBhcyBDb21tZW50c1BhbmVDb21wb25lbnQpLmNvbW1lbnRzLnVucmVhZENvbW1lbnRzKTtcclxuICAgICAgfSk7XHJcbiAgICB0aGlzLl9wYW5lLnF1ZXJ5UGFyYW1zQ2hhbmdlLnN1YnNjcmliZShwID0+IHtcclxuICAgICAgY29uc3QgeyBwYWdlIH0gPSBwO1xyXG4gICAgICBpZiAocGFnZSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgLy8gICBjb25zdCBwYWdlbiA9IHBhcnNlSW50KHBhZ2UpO1xyXG4gICAgICAgIC8vICB0aGlzLmZvcm0ubmF2aWdhdGUoaXNOYU4ocGFnZW4pID8gcGFnZSA6IHBhZ2VuKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICB0aGlzLl9tYWlsYm94LmNoYW5nZWQucGlwZSh0YWtlVW50aWwodGhpcy5fZGVzdHJveSkpLnN1YnNjcmliZShlID0+IHtcclxuICAgICAgaWYgKGUuaWQgPT09IHRoaXMubW9kZWwuaWQgJiYgIXRoaXMud29ya2luZykge1xyXG4gICAgICAgIGlmIChlLmZvbGRlcklkICYmIGUuZm9sZGVySWQgIT09IHRoaXMubW9kZWwuZm9sZGVySWQpIHRoaXMuX2Nsb3NlKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgdGhpcy5fbWFpbGJveC5kZWxldGVkLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpKS5zdWJzY3JpYmUoZSA9PlxyXG4gICAgICBlID09PSB0aGlzLm1vZGVsLmlkICYmICF0aGlzLndvcmtpbmcgJiZcclxuICAgICAgdGhpcy5fY2xvc2UoKVxyXG4gICAgKTtcclxuICAgIGNvbnN0IGNvbnRhaW5lciA9IHRoaXMuZHJvcGFibGVFbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICB0aGlzLl9kcmFnRHJvcC5zdWJzY3JpYmUob2sgPT4ge1xyXG4gICAgICBpZiAob2spIGNvbnRhaW5lci5jbGFzc0xpc3QuYWRkKCdkcmFnJyk7XHJcbiAgICAgIGVsc2UgY29udGFpbmVyLmNsYXNzTGlzdC5yZW1vdmUoJ2RyYWcnKTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5fcGFuZS5mdWxsc2NyZWVuQ2hhbmdlLnN1YnNjcmliZShmID0+XHJcbiAgICAgIHRoaXMuZXhwZW5kYWJsZSA9ICFmKTtcclxuICB9XHJcbiAgY2xvc2UoKSB7XHJcbiAgICB0aGlzLl9wYW5lLmNsb3NlKCk7XHJcbiAgfVxyXG4gIGVkaXQoKSB7XHJcbiAgICB0aGlzLm1vZGUgPSAnY29tcG9zZSc7XHJcbiAgICB0aGlzLmV4cGVuZGFibGUgJiYgdGhpcy5leHBhbmQoKTtcclxuICB9XHJcbiAgZXhwYW5kKCkge1xyXG4gICAgdGhpcy5fcGFuZS5leHBhbmQoKTtcclxuICB9XHJcbiAgY2hhbmdlKCkge1xyXG4gICAgdGhpcy5fcGFuZS5mb2N1cygpO1xyXG4gIH1cclxuICBzYXZlKCkge1xyXG4gICAgdGhpcy5mb3JtLnNhdmUoKS5zdWJzY3JpYmUoKCkgPT4gXHJcbiAgICAgIHRoaXMuX3BhbmUucmVmcmVzaCgpXHJcbiAgICApO1xyXG4gIH1cclxuICBuYXZDb21tZW50cygpIHtcclxuICAgIHRoaXMuX25hdmlnYXRlKCdjb21tZW50cycpO1xyXG4gIH1cclxuICBuYXZUcmFjZSgpIHtcclxuICAgIHRoaXMuX25hdmlnYXRlKCd0cmFjZScpXHJcbiAgfVxyXG4gIHByaXZhdGUgX25hdmlnYXRlKGNvbW1hbmQ6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShbY29tbWFuZF0sIHtcclxuICAgICAgcGF0aE1vZGU6ICdyZWxhdGl2ZScsXHJcbiAgICAgIHJlbGF0aXZlVG86IHRoaXMuX3BhbmVcclxuICAgIH0pO1xyXG4gIH1cclxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpkcm9wJywgWyckZXZlbnQnXSlcclxuICBoYW5kbGVEb2N1bWVudERyb3AoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICB9XHJcbiAgQEhvc3RMaXN0ZW5lcignZHJvcCcsIFsnJGV2ZW50J10pXHJcbiAgaGFuZGxlRHJvcChldmVudDogRHJhZ0V2ZW50KSB7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgdGhpcy5fZHJhZ0Ryb3AubmV4dChmYWxzZSk7XHJcbiAgICBjb25zdCB7IGl0ZW1zIH0gPSBldmVudC5kYXRhVHJhbnNmZXI7XHJcbiAgICBjb25zdCBhcnI6IEZpbGVbXSA9IFtdO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpdGVtcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICBjb25zdCBmaWxlID0gaXRlbXNbaV0uZ2V0QXNGaWxlKCk7XHJcbiAgICAgIGFyci5wdXNoKGZpbGUpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5mb3JtLnVwbG9hZChhcnIpLnN1YnNjcmliZSgpO1xyXG4gIH1cclxuICBASG9zdExpc3RlbmVyKCdkcmFnZW50ZXInLCBbJyRldmVudCddKVxyXG4gIGhhbmRsZUVudGVyKGV2ZW50OiBEcmFnRXZlbnQpIHtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB0aGlzLl9kcmFnRHJvcC5uZXh0KHRydWUpO1xyXG4gIH1cclxuICBASG9zdExpc3RlbmVyKCdkcmFnbGVhdmUnLCBbJyRldmVudCddKVxyXG4gIGhhbmRsZUxlYXZlKGV2ZW50OiBEcmFnRXZlbnQpIHtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB0aGlzLl9kcmFnRHJvcC5uZXh0KGZhbHNlKTtcclxuICB9XHJcbiAgQEhvc3RMaXN0ZW5lcignZHJhZ292ZXInLCBbJyRldmVudCddKVxyXG4gIGhhbmRsZU92ZXIoZXZlbnQ6IERyYWdFdmVudCkge1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIHRoaXMuX2RyYWdEcm9wLm5leHQodHJ1ZSk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIEN0cmwtcyBzYXZlXHJcbiAgICogQHBhcmFtIGV2ZW50XHJcbiAgICovXHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5ZG93bicsIFsnJGV2ZW50J10pXHJcbiAgaGFuZGxlS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xyXG4gICAgaWYgKGV2ZW50LmN0cmxLZXkgJiYgKGV2ZW50LndoaWNoID09PSA4MyB8fCBldmVudC53aGljaCA9PT0gMTE1KSkge1xyXG4gICAgICBpZiAodGhpcy5kaXJ0eSAmJiAhdGhpcy53b3JraW5nKSBcclxuICAgICAgICB0aGlzLnNhdmUoKTtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuICB9XHJcbiAgZGlzY2FyZCgpIHtcclxuICAgIHRoaXMuZm9ybS5kaXNjYXJkKCkuc3Vic2NyaWJlKHRoaXMuX2Nsb3NlLmJpbmQodGhpcykpXHJcbiAgfVxyXG4gIHNlbmQoYWN0aW9uOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuZm9ybS5zZW5kKGFjdGlvbikuc3Vic2NyaWJlKHRoaXMuX2Nsb3NlLmJpbmQodGhpcykpO1xyXG4gIH1cclxuICBzdWJtaXQoKSB7XHJcbiAgICB0aGlzLmZvcm0uc3VibWl0KCkuc3Vic2NyaWJlKHRoaXMuX2Nsb3NlLmJpbmQodGhpcykpXHJcbiAgfVxyXG4gIHByaXZhdGUgX2Nsb3NlKCkge1xyXG4gICAgdGhpcy5mb3JtLmRpcnR5ID0gZmFsc2U7XHJcbiAgICB0aGlzLl9wYW5lLmNsb3NlKCk7XHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fZHJhZ0Ryb3AuY29tcGxldGUoKTtcclxuXHJcbiAgICB0aGlzLl9kZXN0cm95Lm5leHQoKTtcclxuICAgIHRoaXMuX2Rlc3Ryb3kuY29tcGxldGUoKTtcclxuICB9XHJcbiAgdmlldygpIHtcclxuICAgIHRoaXMuX25hdmlnYXRlKCd2aWV3cycpXHJcbiAgfVxyXG59XHJcbiIsIjxtYXQtdG9vbGJhciBjbGFzcz1cIm5hdi10b29sYmFyXCI+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cImZvcm0uYmFjaygpXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ0JhY2snfHRyYW5zbGF0ZVwiICpuZ0lmPVwiZm9ybS5wYWdlICE9PSB1bmRlZmluZWRcIiB0YWJpbmRleD1cIjFcIj5cclxuICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdC1pY29uLXJ0bC1taXJyb3JcIj5hcnJvd19iYWNrPC9tYXQtaWNvbj5cclxuICA8L2J1dHRvbj5cclxuICA8YnV0dG9uIG1hdC1zdHJva2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAqbmdJZj1cIm1vZGVsLmRyYWZ0XCIgZGF0YS1oZWxwPVwic3VibWl0XCJcclxuICAgICAgICAgIChjbGljayk9XCJzdWJtaXQoKVwiIFtkaXNhYmxlZF09XCIhdmFsaWR8fHdvcmtpbmdcIj5cclxuICAgIDxzcGFuPnt7J1N1Ym1pdCcgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICA8L2J1dHRvbj5cclxuICA8YnV0dG9uIG1hdC1zdHJva2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAqbmdJZj1cIm1vZGVsLmFjdGlvbnM/Lmxlbmd0aCA9PT0gMVwiIFthdHRyLmRhdGEtaGVscF09XCInYWN0aW9uLScrZm9ybS5hY3Rpb25zWzBdLm5hbWVcIiAoY2xpY2spPVwic2VuZChtb2RlbC5hY3Rpb25zWzBdKVwiIFtkaXNhYmxlZF09XCIhdmFsaWR8fHdvcmtpbmdcIj5cclxuICAgIDxzcGFuPnt7Zm9ybS5hY3Rpb25zWzBdLnRpdGxlfX08L3NwYW4+XHJcbiAgPC9idXR0b24+XHJcbiAgPGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gZGF0YS1oZWxwPVwic2VuZFwiIGNvbG9yPVwicHJpbWFyeVwiICpuZ0lmPVwibW9kZWwuYWN0aW9ucz8ubGVuZ3RoID4gMVwiIFttYXRNZW51VHJpZ2dlckZvcl09XCJhY3Rpb25NZW51XCIgW2Rpc2FibGVkXT1cIiF2YWxpZHx8d29ya2luZ1wiIFtiaXpkb2NUb29sdGlwXT1cIidTZW5kJyB8IHRyYW5zbGF0ZVwiPlxyXG4gICAgPHNwYW4+e3snU2VuZCcgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICA8L2J1dHRvbj5cclxuICA8IS0tIGFjdGlvbiAtLT5cclxuICA8bWF0LW1lbnUgI2FjdGlvbk1lbnU+XHJcbiAgICA8bmctdGVtcGxhdGUgbWF0TWVudUNvbnRlbnQ+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGEgb2YgZm9ybS5hY3Rpb25zOyBsZXQgaSA9IGluZGV4XCI+XHJcbiAgICAgICAgPG1hdC1kaXZpZGVyICpuZ0lmPVwiaSA+IDAgJiYgZm9ybS5hY3Rpb25zW2kgLSAxXS5ncm91cCAhPT0gYS5ncm91cFwiPjwvbWF0LWRpdmlkZXI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJzZW5kKGEubmFtZSlcIj57e2EudGl0bGV9fTwvYnV0dG9uPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgPC9tYXQtbWVudT5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwic2F2ZSgpXCIgZGF0YS1oZWxwPVwic2F2ZVwiIFtkaXNhYmxlZF09XCIhZGlydHl8fHdvcmtpbmdcIiBbYml6ZG9jVG9vbHRpcF09XCInU2F2ZSd8dHJhbnNsYXRlXCIgKm5nSWY9XCJtb2RlID09PSAnY29tcG9zZSdcIj5cclxuICAgIDxtYXQtaWNvbj5zYXZlPC9tYXQtaWNvbj5cclxuICA8L2J1dHRvbj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBkYXRhLWhlbHA9XCJ0YWdcIiAoY2xpY2spPVwiZm9ybS50YWcoJGV2ZW50KVwiIFtiaXpkb2NUb29sdGlwXT1cIidUYWdzJyB8IHRyYW5zbGF0ZVwiIFtkaXNhYmxlZF09XCJ3b3JraW5nXCI+PG1hdC1pY29uIGNsYXNzPVwiZmlsbGVkXCI+e3ttb2RlbC50YWdzICYmIG1vZGVsLnRhZ3MubGVuZ3RoID8nYm9va21hcmsnOidib29rbWFya19ib3JkZXInfX08L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIGRhdGEtaGVscD1cImZsYWdcIiBbYml6ZG9jVG9vbHRpcF09XCInRmxhZ2dlZCd8IHRyYW5zbGF0ZVwiIFtkaXNhYmxlZF09XCJ3b3JraW5nXCIgKGNsaWNrKT1cImZvcm0uZmxhZygpXCI+PG1hdC1pY29uIFtjbGFzcy5kb2N1bWVudC1mbGFnXT1cIm1vZGVsLmZsYWdcIj57e21vZGVsLmZsYWcgPyAnc3RhcicgOiAnc3Rhcl9ib3JkZXInfX08L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJmb3JtLmF0dGFjaCgpXCIgZGF0YS1oZWxwPVwiYXR0YWNoXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ0F0dGFjaEZpbGUnIHwgdHJhbnNsYXRlXCIgW2Rpc2FibGVkXT1cIndvcmtpbmdcIj48bWF0LWljb24+YXR0YWNoX2ZpbGU8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIFtkaXNhYmxlZF09XCJ3b3JraW5nXCIgZGF0YS1oZWxwPVwiZWRpdFwiIChjbGljayk9XCJlZGl0KClcIiBbYml6ZG9jVG9vbHRpcF09XCInRWRpdCcgfCB0cmFuc2xhdGVcIiAqbmdJZj1cIm1vZGUgIT09ICdjb21wb3NlJyAmJiBtb2RlbC5wZW5kaW5nICYmICFtb2RlbC5jb21wbGV0ZWRcIj48bWF0LWljb24+Y3JlYXRlPC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICA8c3BhbiBjbGFzcz1cImRpdmlkZXJcIj48L3NwYW4+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cIm5hdlRyYWNlKClcIiBbYml6ZG9jVG9vbHRpcF09XCInVHJhY2UnIHwgdHJhbnNsYXRlXCIgdGFiaW5kZXg9XCIxXCI+PG1hdC1pY29uPnRpbWVsaW5lPC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwibmF2Q29tbWVudHMoKVwiIGRhdGEtaGVscD1cImNvbW1lbnRzXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ0NvbW1lbnRzJyB8IHRyYW5zbGF0ZVwiIFttYXRCYWRnZV09XCJuZXdDb21tZW50c0NvdW50XCIgW21hdEJhZGdlSGlkZGVuXT1cIiFuZXdDb21tZW50c0NvdW50XCIgbWF0QmFkZ2VDb2xvcj1cImFjY2VudFwiPlxyXG4gICAgPG1hdC1pY29uIFtjbGFzcy5maWxsZWRdPVwibW9kZWwuY29tbWVudHMubGVuZ3RoID4gMFwiPmZvcm1hdF9xdW90ZTwvbWF0LWljb24+XHJcbiAgPC9idXR0b24+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInZpZXcoKVwiIFtiaXpkb2NUb29sdGlwXT1cIidWaWV3JyB8IHRyYW5zbGF0ZVwiIFthdHRyLmFyaWEtbGFiZWxdPVwiJ1ZpZXcnIHwgdHJhbnNsYXRlXCIgY2xhc3M9XCJ0b29sXCI+PG1hdC1pY29uPmRhdGFfdXNhZ2U8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJvcHRpb25zTWVudVwiIFtiaXpkb2NUb29sdGlwXT1cIidPcHRpb25zJyB8IHRyYW5zbGF0ZVwiIFthdHRyLmFyaWEtbGFiZWxdPVwiJ09wdGlvbnMnIHwgdHJhbnNsYXRlXCI+PG1hdC1pY29uPm1vcmVfdmVydDwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cImV4cGFuZCgpXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ0V4cGFuZCcgfCB0cmFuc2xhdGVcIiAqbmdJZj1cImV4cGVuZGFibGVcIiBbYXR0ci5hcmlhLWxhYmVsXT1cIidFeHBhbmQnIHwgdHJhbnNsYXRlXCI+PG1hdC1pY29uPm9wZW5faW5fbmV3PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICA8bWF0LW1lbnUgI29wdGlvbnNNZW51PVwibWF0TWVudVwiPlxyXG4gICAgPG5nLXRlbXBsYXRlIG1hdE1lbnVDb250ZW50PlxyXG4gICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cImZvcm0uY29weSgpXCIgW2Rpc2FibGVkXT1cIndvcmtpbmdcIj5cclxuICAgICAgICA8IS0tPG1hdC1pY29uPmNvbnRlbnRfY29weTwvbWF0LWljb24+LS0+XHJcbiAgICAgICAgPHNwYW4+e3snQ29weScgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgPC9idXR0b24+XHJcbiAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwiZGlzY2FyZCgpXCIgKm5nSWY9XCJtb2RlbC5kcmFmdCAmJiAhbW9kZWwuaXNzdWVkXCIgW2Rpc2FibGVkXT1cIndvcmtpbmdcIj5cclxuICAgICAgICA8IS0tPG1hdC1pY29uPmRlbGV0ZV9vdXRsaW5lZDwvbWF0LWljb24+LS0+XHJcbiAgICAgICAgPHNwYW4+e3snRGlzY2FyZCcgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgPC9idXR0b24+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmb3JtLmhlbHBcIj5cclxuICAgICAgICA8bWF0LWRpdmlkZXI+PC9tYXQtZGl2aWRlcj5cclxuICAgICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cImZvcm0uZ3VpZGUoZm9ybS5oZWxwKVwiPlxyXG4gICAgICAgICAgPCEtLTxtYXQtaWNvbj5oZWxwX291dGxpbmU8L21hdC1pY29uPi0tPlxyXG4gICAgICAgICAgPHNwYW4+e3snSGVscCcgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDxtYXQtZGl2aWRlcj48L21hdC1kaXZpZGVyPlxyXG4gICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cImNsb3NlKClcIj48IS0tPG1hdC1pY29uPjwvbWF0LWljb24+LS0+PHNwYW4+e3snQ2xvc2UnfCB0cmFuc2xhdGV9fTwvc3Bhbj48L2J1dHRvbj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgPC9tYXQtbWVudT5cclxuPC9tYXQtdG9vbGJhcj5cclxuPGRpdiBjbGFzcz1cImZpbGUtZHJvcGFibGVcIiAjZHJvcGFibGU+XHJcbiAgPGJpemRvYy1mb3JtIFttb2RlbF09bW9kZWwgI2Zvcm1cclxuICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cImNoYW5nZSgpXCJcclxuICAgICAgICAgICAgICAgKHZhbGlkQ2hhbmdlKT1cInZhbGlkPSRldmVudFwiXHJcbiAgICAgICAgICAgICAgICh3b3JraW5nQ2hhbmdlKT1cIndvcmtpbmc9JGV2ZW50XCJcclxuICAgICAgICAgICAgICAgKGRpcnR5Q2hhbmdlKT1cImRpcnR5PSRldmVudFwiIFttb2RlXT1cIm1vZGVcIj48L2JpemRvYy1mb3JtPlxyXG48L2Rpdj5cclxuIl19
|
200
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9zZS5wYW5lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvY29tcG9zZS9jb21wb3NlLnBhbmUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jb21wb3NlL2NvbXBvc2UucGFuZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBYSxTQUFTLEVBQUUsVUFBVSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUduRCxPQUFPLEVBQXNCLGVBQWUsRUFBVyxNQUFNLHdCQUF3QixDQUFDO0FBQ3RGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7O0FBYXhELHVEQUF1RDtBQUN2RCxNQUFNLE9BQU8sb0JBQW9CO0lBWS9CLG1CQUFtQjtJQUNuQixZQUNVLFFBQXdCLEVBQ3hCLFFBQXdCLEVBQ3hCLEtBQW9DLEVBQ3BDLE9BQW9CO1FBSHBCLGFBQVEsR0FBUixRQUFRLENBQWdCO1FBQ3hCLGFBQVEsR0FBUixRQUFRLENBQWdCO1FBQ3hCLFVBQUssR0FBTCxLQUFLLENBQStCO1FBQ3BDLFlBQU8sR0FBUCxPQUFPLENBQWE7UUFQYixjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVcsQ0FBQztRQUNuQyxhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQU9oRCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFNB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USxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIE9uRGVzdHJveSwgVmlld0NoaWxkLCBFbGVtZW50UmVmLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBmaWx0ZXIsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgUmVjaXBpZW50TW9kZWwgfSBmcm9tICcuLi9jb3JlL21vZGVscyc7XHJcbmltcG9ydCB7IFBhbmVzUm91dGVyIH0gZnJvbSAnLi4vY29yZS9zbG90cy9yb3V0ZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IE5hdmlnYXRpb25QYW5lQmFzZSwgTmF2aWdhdGlvblN0YXJ0LCBQYW5lUmVmIH0gZnJvbSAnLi4vY29yZS9zbG90cy9wYW5lLXJlZic7XHJcbmltcG9ydCB7IENvbW1lbnRzUGFuZUNvbXBvbmVudCB9IGZyb20gJy4vY29tbWVudHMvQ29tbWVudHMucGFuZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb21wb3NlRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vZm9ybS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBWaWV3TW9kZSB9IGZyb20gJy4uL2NvcmUvYmFzZSc7XHJcbmltcG9ydCB7IE1haWxib3hTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9tYWlsYm94LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTZXNzaW9uU2VydmljZSB9IGZyb20gJy4uL2NvcmUvc2Vzc2lvbi5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYml6ZG9jLWNvbXBvc2UucGFuZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbXBvc2UucGFuZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY29tcG9zZS5wYW5lLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgaG9zdDoge1xyXG4gICAgY2xhc3M6ICdwYW5lJ1xyXG4gIH1cclxufSlcclxuLyoqIGNvbXBvc2UgY29tcG9uZW50IHJlc3BvbnNpYmxlIGZvciBlZGl0aW5nIGEgZm9ybSAqL1xyXG5leHBvcnQgY2xhc3MgQ29tcG9zZVBhbmVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQFZpZXdDaGlsZChDb21wb3NlRm9ybUNvbXBvbmVudCwgeyBzdGF0aWM6IHRydWUgfSkgZm9ybTogQ29tcG9zZUZvcm1Db21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnZHJvcGFibGUnLCB7IHN0YXRpYzogdHJ1ZSwgcmVhZDogRWxlbWVudFJlZiB9KSBkcm9wYWJsZUVsZW1lbnQ6IEVsZW1lbnRSZWY7XHJcbiAgbW9kZWw6IFJlY2lwaWVudE1vZGVsPGFueT47XHJcbiAgbmV3Q29tbWVudHNDb3VudDogbnVtYmVyO1xyXG4gIHdvcmtpbmc6IGJvb2xlYW47XHJcbiAgZGlydHk6IGJvb2xlYW47XHJcbiAgdmFsaWQ6IGJvb2xlYW47XHJcbiAgbW9kZTogVmlld01vZGU7XHJcbiAgZXhwZW5kYWJsZTogYm9vbGVhbjtcclxuICBwcml2YXRlIHJlYWRvbmx5IF9kcmFnRHJvcCA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgLyoqIGNvbXBvc2UgY3RvciAqL1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfc2Vzc2lvbjogU2Vzc2lvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9tYWlsYm94OiBNYWlsYm94U2VydmljZSxcclxuICAgIHByaXZhdGUgX3BhbmU6IFBhbmVSZWY8Q29tcG9zZVBhbmVDb21wb25lbnQ+LFxyXG4gICAgcHJpdmF0ZSBfcm91dGVyOiBQYW5lc1JvdXRlcikge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9wYW5lLmRhdGFDaGFuZ2Uuc3Vic2NyaWJlKGQgPT4ge1xyXG4gICAgICBpZiAodGhpcy5tb2RlbCA9PSBkLml0ZW0pIHJldHVybjtcclxuICAgICAgdGhpcy5tb2RlbCA9IGQuaXRlbTtcclxuICAgICAgY29uc3QgZm9ybSA9IHRoaXMuX3Nlc3Npb24ucHJvZmlsZS5mb3Jtcy5maW5kKGYgPT4gZi5uYW1lID09PSB0aGlzLm1vZGVsLmZvcm1JZCk7XHJcbiAgICAgIHRoaXMuX3BhbmUuaWNvbiA9IGZvcm0uaWNvbjtcclxuICAgICAgaWYgKHRoaXMubW9kZWwuZHJhZnQpIHtcclxuICAgICAgICB0aGlzLm1vZGUgPSAnY29tcG9zZSc7XHJcbiAgICAgICAgLy9zZXRUaW1lb3V0KCgpPT50aGlzLl9wYW5lLmV4cGFuZCgpKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlXHJcbiAgICAgICAgdGhpcy5tb2RlID0gJ3ByZXZpZXcnO1xyXG4gICAgICB0aGlzLm5ld0NvbW1lbnRzQ291bnQgPSB0aGlzLm1vZGVsLnVucmVhZENvbW1lbnRzO1xyXG4gICAgICB0aGlzLl9wYW5lLnRpdGxlID0gdGhpcy5fcGFuZS5ncm91cCA9IGAjJHt0aGlzLm1vZGVsLm51bWJlcn1gO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLl9yb3V0ZXIuZXZlbnRzLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpLFxyXG4gICAgICBmaWx0ZXIoZSA9PiBlIGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0ICYmXHJcbiAgICAgICAgZS5wYW5lLmNvbXBvbmVudCA9PT0gQ29tbWVudHNQYW5lQ29tcG9uZW50XHJcbiAgICAgICAgJiYgZS5wYW5lLnBhcmVudCA9PT0gdGhpcy5fcGFuZSkpLlxyXG4gICAgICBzdWJzY3JpYmUoKGU6IE5hdmlnYXRpb25QYW5lQmFzZSkgPT4ge1xyXG4gICAgICAgIChlLnBhbmUuaW5zdGFuY2UgYXMgQ29tbWVudHNQYW5lQ29tcG9uZW50KS5jb21tZW50cy5jaGFuZ2UuXHJcbiAgICAgICAgICBwaXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95KSkuc3Vic2NyaWJlKCgpID0+XHJcbiAgICAgICAgICAgIHRoaXMubmV3Q29tbWVudHNDb3VudCA9IChlLnBhbmUuaW5zdGFuY2UgYXMgQ29tbWVudHNQYW5lQ29tcG9uZW50KS5jb21tZW50cy51bnJlYWRDb21tZW50cyk7XHJcbiAgICAgIH0pO1xyXG4gICAgdGhpcy5fcGFuZS5xdWVyeVBhcmFtc0NoYW5nZS5zdWJzY3JpYmUocCA9PiB7XHJcbiAgICAgIGNvbnN0IHsgcGFnZSB9ID0gcDtcclxuICAgICAgaWYgKHBhZ2UgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgIC8vICAgY29uc3QgcGFnZW4gPSBwYXJzZUludChwYWdlKTtcclxuICAgICAgICAvLyAgdGhpcy5mb3JtLm5hdmlnYXRlKGlzTmFOKHBhZ2VuKSA/IHBhZ2UgOiBwYWdlbik7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgdGhpcy5fbWFpbGJveC5jaGFuZ2VkLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpKS5zdWJzY3JpYmUoZSA9PiB7XHJcbiAgICAgIGlmIChlLmlkID09PSB0aGlzLm1vZGVsLmlkICYmICF0aGlzLndvcmtpbmcpIHtcclxuICAgICAgICBpZiAoZS5mb2xkZXJJZCAmJiBlLmZvbGRlcklkICE9PSB0aGlzLm1vZGVsLmZvbGRlcklkKSB0aGlzLl9jbG9zZSgpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHRoaXMuX21haWxib3guZGVsZXRlZC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95KSkuc3Vic2NyaWJlKGUgPT5cclxuICAgICAgZSA9PT0gdGhpcy5tb2RlbC5pZCAmJiAhdGhpcy53b3JraW5nICYmXHJcbiAgICAgIHRoaXMuX2Nsb3NlKClcclxuICAgICk7XHJcbiAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLmRyb3BhYmxlRWxlbWVudC5uYXRpdmVFbGVtZW50O1xyXG4gICAgdGhpcy5fZHJhZ0Ryb3Auc3Vic2NyaWJlKG9rID0+IHtcclxuICAgICAgaWYgKG9rKSBjb250YWluZXIuY2xhc3NMaXN0LmFkZCgnZHJhZycpO1xyXG4gICAgICBlbHNlIGNvbnRhaW5lci5jbGFzc0xpc3QucmVtb3ZlKCdkcmFnJyk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMuX3BhbmUuZnVsbHNjcmVlbkNoYW5nZS5zdWJzY3JpYmUoZiA9PlxyXG4gICAgICB0aGlzLmV4cGVuZGFibGUgPSAhZik7XHJcbiAgfVxyXG4gIGNsb3NlKCkge1xyXG4gICAgdGhpcy5fcGFuZS5jbG9zZSgpO1xyXG4gIH1cclxuICBlZGl0KCkge1xyXG4gICAgdGhpcy5tb2RlID0gJ2NvbXBvc2UnO1xyXG4gICAgdGhpcy5leHBlbmRhYmxlICYmIHRoaXMuZXhwYW5kKCk7XHJcbiAgfVxyXG4gIGV4cGFuZCgpIHtcclxuICAgIHRoaXMuX3BhbmUuZXhwYW5kKCk7XHJcbiAgfVxyXG4gIGNoYW5nZSgpIHtcclxuICAgIHRoaXMuX3BhbmUuZm9jdXMoKTtcclxuICB9XHJcbiAgc2F2ZSgpIHtcclxuICAgIHRoaXMuZm9ybS5zYXZlKCkuc3Vic2NyaWJlKCgpID0+IFxyXG4gICAgICB0aGlzLl9wYW5lLnJlZnJlc2goKVxyXG4gICAgKTtcclxuICB9XHJcbiAgbmF2Q29tbWVudHMoKSB7XHJcbiAgICB0aGlzLl9uYXZpZ2F0ZSgnY29tbWVudHMnKTtcclxuICB9XHJcbiAgbmF2VHJhY2UoKSB7XHJcbiAgICB0aGlzLl9uYXZpZ2F0ZSgndHJhY2UnKVxyXG4gIH1cclxuICBwcml2YXRlIF9uYXZpZ2F0ZShjb21tYW5kOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLl9yb3V0ZXIubmF2aWdhdGUoW2NvbW1hbmRdLCB7XHJcbiAgICAgIHBhdGhNb2RlOiAncmVsYXRpdmUnLFxyXG4gICAgICByZWxhdGl2ZVRvOiB0aGlzLl9wYW5lXHJcbiAgICB9KTtcclxuICB9XHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6ZHJvcCcsIFsnJGV2ZW50J10pXHJcbiAgaGFuZGxlRG9jdW1lbnREcm9wKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgfVxyXG4gIEBIb3N0TGlzdGVuZXIoJ2Ryb3AnLCBbJyRldmVudCddKVxyXG4gIGhhbmRsZURyb3AoZXZlbnQ6IERyYWdFdmVudCkge1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIHRoaXMuX2RyYWdEcm9wLm5leHQoZmFsc2UpO1xyXG4gICAgY29uc3QgeyBpdGVtcyB9ID0gZXZlbnQuZGF0YVRyYW5zZmVyO1xyXG4gICAgY29uc3QgYXJyOiBGaWxlW10gPSBbXTtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaXRlbXMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgY29uc3QgZmlsZSA9IGl0ZW1zW2ldLmdldEFzRmlsZSgpO1xyXG4gICAgICBhcnIucHVzaChmaWxlKTtcclxuICAgIH1cclxuICAgIHRoaXMuZm9ybS51cGxvYWQoYXJyKS5zdWJzY3JpYmUoKTtcclxuICB9XHJcbiAgQEhvc3RMaXN0ZW5lcignZHJhZ2VudGVyJywgWyckZXZlbnQnXSlcclxuICBoYW5kbGVFbnRlcihldmVudDogRHJhZ0V2ZW50KSB7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgdGhpcy5fZHJhZ0Ryb3AubmV4dCh0cnVlKTtcclxuICB9XHJcbiAgQEhvc3RMaXN0ZW5lcignZHJhZ2xlYXZlJywgWyckZXZlbnQnXSlcclxuICBoYW5kbGVMZWF2ZShldmVudDogRHJhZ0V2ZW50KSB7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgdGhpcy5fZHJhZ0Ryb3AubmV4dChmYWxzZSk7XHJcbiAgfVxyXG4gIEBIb3N0TGlzdGVuZXIoJ2RyYWdvdmVyJywgWyckZXZlbnQnXSlcclxuICBoYW5kbGVPdmVyKGV2ZW50OiBEcmFnRXZlbnQpIHtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB0aGlzLl9kcmFnRHJvcC5uZXh0KHRydWUpO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBDdHJsLXMgc2F2ZVxyXG4gICAqIEBwYXJhbSBldmVudFxyXG4gICAqL1xyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24nLCBbJyRldmVudCddKVxyXG4gIGhhbmRsZUtleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcclxuICAgIGlmIChldmVudC5jdHJsS2V5ICYmIChldmVudC53aGljaCA9PT0gODMgfHwgZXZlbnQud2hpY2ggPT09IDExNSkpIHtcclxuICAgICAgaWYgKHRoaXMuZGlydHkgJiYgIXRoaXMud29ya2luZykgXHJcbiAgICAgICAgdGhpcy5zYXZlKCk7XHJcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGRpc2NhcmQoKSB7XHJcbiAgICB0aGlzLmZvcm0uZGlzY2FyZCgpLnN1YnNjcmliZSh0aGlzLl9jbG9zZS5iaW5kKHRoaXMpKVxyXG4gIH1cclxuICBzZW5kKGFjdGlvbjogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmZvcm0uc2VuZChhY3Rpb24pLnN1YnNjcmliZSh0aGlzLl9jbG9zZS5iaW5kKHRoaXMpKTtcclxuICB9XHJcbiAgc3VibWl0KCkge1xyXG4gICAgdGhpcy5mb3JtLnN1Ym1pdCgpLnN1YnNjcmliZSh0aGlzLl9jbG9zZS5iaW5kKHRoaXMpKVxyXG4gIH1cclxuICBwcml2YXRlIF9jbG9zZSgpIHtcclxuICAgIHRoaXMuZm9ybS5kaXJ0eSA9IGZhbHNlO1xyXG4gICAgdGhpcy5fcGFuZS5jbG9zZSgpO1xyXG4gIH1cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2RyYWdEcm9wLmNvbXBsZXRlKCk7XHJcblxyXG4gICAgdGhpcy5fZGVzdHJveS5uZXh0KCk7XHJcbiAgICB0aGlzLl9kZXN0cm95LmNvbXBsZXRlKCk7XHJcbiAgfVxyXG4gIHZpZXcoKSB7XHJcbiAgICB0aGlzLl9uYXZpZ2F0ZSgndmlld3MnKVxyXG4gIH1cclxufVxyXG4iLCI8bWF0LXRvb2xiYXIgY2xhc3M9XCJuYXYtdG9vbGJhclwiPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIChjbGljayk9XCJmb3JtLmJhY2soKVwiIFtiaXpkb2NUb29sdGlwXT1cIidCYWNrJ3x0cmFuc2xhdGVcIiAqbmdJZj1cImZvcm0ucGFnZSAhPT0gdW5kZWZpbmVkXCIgdGFiaW5kZXg9XCIxXCI+XHJcbiAgICA8bWF0LWljb24gY2xhc3M9XCJtYXQtaWNvbi1ydGwtbWlycm9yXCI+YXJyb3dfYmFjazwvbWF0LWljb24+XHJcbiAgPC9idXR0b24+XHJcbiAgPGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKm5nSWY9XCJtb2RlbC5kcmFmdFwiIGRhdGEtaGVscD1cInN1Ym1pdFwiXHJcbiAgICAgICAgICAoY2xpY2spPVwic3VibWl0KClcIiBbZGlzYWJsZWRdPVwiIXZhbGlkfHx3b3JraW5nXCI+XHJcbiAgICA8c3Bhbj57eydTdWJtaXQnIHwgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgPC9idXR0b24+XHJcbiAgPGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKm5nSWY9XCJtb2RlbC5hY3Rpb25zPy5sZW5ndGggPT09IDFcIiBbYXR0ci5kYXRhLWhlbHBdPVwiJ2FjdGlvbi0nK2Zvcm0uYWN0aW9uc1swXS5uYW1lXCIgKGNsaWNrKT1cInNlbmQobW9kZWwuYWN0aW9uc1swXSlcIiBbZGlzYWJsZWRdPVwiIXZhbGlkfHx3b3JraW5nXCI+XHJcbiAgICA8c3Bhbj57e2Zvcm0uYWN0aW9uc1swXS50aXRsZX19PC9zcGFuPlxyXG4gIDwvYnV0dG9uPlxyXG4gIDxidXR0b24gbWF0LXN0cm9rZWQtYnV0dG9uIGRhdGEtaGVscD1cInNlbmRcIiBjb2xvcj1cInByaW1hcnlcIiAqbmdJZj1cIm1vZGVsLmFjdGlvbnM/Lmxlbmd0aCA+IDFcIiBbbWF0TWVudVRyaWdnZXJGb3JdPVwiYWN0aW9uTWVudVwiIFtkaXNhYmxlZF09XCIhdmFsaWR8fHdvcmtpbmdcIiBbYml6ZG9jVG9vbHRpcF09XCInU2VuZCcgfCB0cmFuc2xhdGVcIj5cclxuICAgIDxzcGFuPnt7J1NlbmQnIHwgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgPC9idXR0b24+XHJcbiAgPCEtLSBhY3Rpb24gLS0+XHJcbiAgPG1hdC1tZW51ICNhY3Rpb25NZW51PlxyXG4gICAgPG5nLXRlbXBsYXRlIG1hdE1lbnVDb250ZW50PlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBhIG9mIGZvcm0uYWN0aW9uczsgbGV0IGkgPSBpbmRleFwiPlxyXG4gICAgICAgIDxtYXQtZGl2aWRlciAqbmdJZj1cImkgPiAwICYmIGZvcm0uYWN0aW9uc1tpIC0gMV0uZ3JvdXAgIT09IGEuZ3JvdXBcIj48L21hdC1kaXZpZGVyPlxyXG4gICAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwic2VuZChhLm5hbWUpXCI+e3thLnRpdGxlfX08L2J1dHRvbj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIDwvbWF0LW1lbnU+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInNhdmUoKVwiIGRhdGEtaGVscD1cInNhdmVcIiBbZGlzYWJsZWRdPVwiIWRpcnR5fHx3b3JraW5nXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ1NhdmUnfHRyYW5zbGF0ZVwiICpuZ0lmPVwibW9kZSA9PT0gJ2NvbXBvc2UnXCI+XHJcbiAgICA8bWF0LWljb24+c2F2ZTwvbWF0LWljb24+XHJcbiAgPC9idXR0b24+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gZGF0YS1oZWxwPVwidGFnXCIgKGNsaWNrKT1cImZvcm0udGFnKCRldmVudClcIiBbYml6ZG9jVG9vbHRpcF09XCInVGFncycgfCB0cmFuc2xhdGVcIiBbZGlzYWJsZWRdPVwid29ya2luZ1wiPjxtYXQtaWNvbiBjbGFzcz1cImZpbGxlZFwiPnt7bW9kZWwudGFncyAmJiBtb2RlbC50YWdzLmxlbmd0aCA/J2Jvb2ttYXJrJzonYm9va21hcmtfYm9yZGVyJ319PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBkYXRhLWhlbHA9XCJmbGFnXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ0ZsYWdnZWQnfCB0cmFuc2xhdGVcIiBbZGlzYWJsZWRdPVwid29ya2luZ1wiIChjbGljayk9XCJmb3JtLmZsYWcoKVwiPjxtYXQtaWNvbiBbY2xhc3MuZG9jdW1lbnQtZmxhZ109XCJtb2RlbC5mbGFnXCI+e3ttb2RlbC5mbGFnID8gJ3N0YXInIDogJ3N0YXJfYm9yZGVyJ319PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiZm9ybS5hdHRhY2goKVwiIGRhdGEtaGVscD1cImF0dGFjaFwiIFtiaXpkb2NUb29sdGlwXT1cIidBdHRhY2hGaWxlJyB8IHRyYW5zbGF0ZVwiIFtkaXNhYmxlZF09XCJ3b3JraW5nXCI+PG1hdC1pY29uPmF0dGFjaF9maWxlPC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBbZGlzYWJsZWRdPVwid29ya2luZ1wiIGRhdGEtaGVscD1cImVkaXRcIiAoY2xpY2spPVwiZWRpdCgpXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ0VkaXQnIHwgdHJhbnNsYXRlXCIgKm5nSWY9XCJtb2RlICE9PSAnY29tcG9zZScgJiYgbW9kZWwucGVuZGluZyAmJiAhbW9kZWwuY29tcGxldGVkXCI+PG1hdC1pY29uPmNyZWF0ZTwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgPHNwYW4gY2xhc3M9XCJkaXZpZGVyXCI+PC9zcGFuPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJuYXZUcmFjZSgpXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ1RyYWNlJyB8IHRyYW5zbGF0ZVwiIHRhYmluZGV4PVwiMVwiPjxtYXQtaWNvbj50aW1lbGluZTwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cIm5hdkNvbW1lbnRzKClcIiBkYXRhLWhlbHA9XCJjb21tZW50c1wiIFtiaXpkb2NUb29sdGlwXT1cIidDb21tZW50cycgfCB0cmFuc2xhdGVcIiBbbWF0QmFkZ2VdPVwibmV3Q29tbWVudHNDb3VudFwiIFttYXRCYWRnZUhpZGRlbl09XCIhbmV3Q29tbWVudHNDb3VudFwiIG1hdEJhZGdlQ29sb3I9XCJhY2NlbnRcIj5cclxuICAgIDxtYXQtaWNvbiBbY2xhc3MuZmlsbGVkXT1cIm1vZGVsLmNvbW1lbnRzLmxlbmd0aCA+IDBcIj5mb3JtYXRfcXVvdGU8L21hdC1pY29uPlxyXG4gIDwvYnV0dG9uPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJ2aWV3KClcIiBbYml6ZG9jVG9vbHRpcF09XCInVmlldycgfCB0cmFuc2xhdGVcIiBbYXR0ci5hcmlhLWxhYmVsXT1cIidWaWV3JyB8IHRyYW5zbGF0ZVwiIGNsYXNzPVwidG9vbFwiPjxtYXQtaWNvbj5kYXRhX3VzYWdlPC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBbbWF0TWVudVRyaWdnZXJGb3JdPVwib3B0aW9uc01lbnVcIiBbYml6ZG9jVG9vbHRpcF09XCInT3B0aW9ucycgfCB0cmFuc2xhdGVcIiBbYXR0ci5hcmlhLWxhYmVsXT1cIidPcHRpb25zJyB8IHRyYW5zbGF0ZVwiPjxtYXQtaWNvbj5tb3JlX3ZlcnQ8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJleHBhbmQoKVwiIFtiaXpkb2NUb29sdGlwXT1cIidFeHBhbmQnIHwgdHJhbnNsYXRlXCIgKm5nSWY9XCJleHBlbmRhYmxlXCIgW2F0dHIuYXJpYS1sYWJlbF09XCInRXhwYW5kJyB8IHRyYW5zbGF0ZVwiPjxtYXQtaWNvbj5vcGVuX2luX25ldzwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgPG1hdC1tZW51ICNvcHRpb25zTWVudT1cIm1hdE1lbnVcIj5cclxuICAgIDxuZy10ZW1wbGF0ZSBtYXRNZW51Q29udGVudD5cclxuICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJmb3JtLmNvcHkoKVwiIFtkaXNhYmxlZF09XCJ3b3JraW5nXCI+XHJcbiAgICAgICAgPCEtLTxtYXQtaWNvbj5jb250ZW50X2NvcHk8L21hdC1pY29uPi0tPlxyXG4gICAgICAgIDxzcGFuPnt7J0NvcHknIHwgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cImRpc2NhcmQoKVwiICpuZ0lmPVwibW9kZWwuZHJhZnQgJiYgIW1vZGVsLmlzc3VlZFwiIFtkaXNhYmxlZF09XCJ3b3JraW5nXCI+XHJcbiAgICAgICAgPCEtLTxtYXQtaWNvbj5kZWxldGVfb3V0bGluZWQ8L21hdC1pY29uPi0tPlxyXG4gICAgICAgIDxzcGFuPnt7J0Rpc2NhcmQnIHwgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZm9ybS5oZWxwXCI+XHJcbiAgICAgICAgPG1hdC1kaXZpZGVyPjwvbWF0LWRpdmlkZXI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJmb3JtLmd1aWRlKGZvcm0uaGVscClcIj5cclxuICAgICAgICAgIDwhLS08bWF0LWljb24+aGVscF9vdXRsaW5lPC9tYXQtaWNvbj4tLT5cclxuICAgICAgICAgIDxzcGFuPnt7J0hlbHAnIHwgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bWF0LWRpdmlkZXI+PC9tYXQtZGl2aWRlcj5cclxuICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJjbG9zZSgpXCI+PCEtLTxtYXQtaWNvbj48L21hdC1pY29uPi0tPjxzcGFuPnt7J0Nsb3NlJ3wgdHJhbnNsYXRlfX08L3NwYW4+PC9idXR0b24+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIDwvbWF0LW1lbnU+XHJcbjwvbWF0LXRvb2xiYXI+XHJcbjxkaXYgY2xhc3M9XCJmaWxlLWRyb3BhYmxlXCIgI2Ryb3BhYmxlPlxyXG4gIDxiaXpkb2MtZm9ybSBbbW9kZWxdPW1vZGVsICNmb3JtXHJcbiAgICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJjaGFuZ2UoKVwiXHJcbiAgICAgICAgICAgICAgICh2YWxpZENoYW5nZSk9XCJ2YWxpZD0kZXZlbnRcIlxyXG4gICAgICAgICAgICAgICAod29ya2luZ0NoYW5nZSk9XCJ3b3JraW5nPSRldmVudFwiXHJcbiAgICAgICAgICAgICAgIChkaXJ0eUNoYW5nZSk9XCJkaXJ0eT0kZXZlbnRcIiBbbW9kZV09XCJtb2RlXCI+PC9iaXpkb2MtZm9ybT5cclxuPC9kaXY+XHJcbiJdfQ==
|
@@ -5,7 +5,7 @@ import * as i2 from "@angular/material/button";
|
|
5
5
|
import * as i3 from "@angular/material/icon";
|
6
6
|
import * as i4 from "@angular/common";
|
7
7
|
import * as i5 from "../../core/pipes/sort.pipe";
|
8
|
-
import * as i6 from "
|
8
|
+
import * as i6 from "../../core/pipes/calendar.pipe";
|
9
9
|
/** events component*/
|
10
10
|
export class DocumentEventsComponent {
|
11
11
|
/** events ctor */
|