barsa-kanban 0.0.2 → 0.0.3
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/esm2020/lib/Models/drop-info.mjs +1 -1
- package/esm2020/lib/Models/kanban-view-setting.interface.mjs +1 -1
- package/esm2020/lib/avatar-group/barsa-avatar-group.component.mjs +3 -3
- package/esm2020/lib/barsa-kanban.module.mjs +1 -1
- package/esm2020/lib/kanban-base/kanban-base.component.mjs +1 -1
- package/esm2020/lib/kanban-card/kanban-card.component.mjs +3 -3
- package/esm2020/lib/kanban-tags/kanban-tags.component.mjs +3 -3
- package/esm2020/lib/kanban-view/kanban-view.component.mjs +3 -3
- package/esm2020/public-api.mjs +1 -1
- package/fesm2015/barsa-kanban.mjs +8 -8
- package/fesm2015/barsa-kanban.mjs.map +1 -1
- package/fesm2020/barsa-kanban.mjs +8 -8
- package/fesm2020/barsa-kanban.mjs.map +1 -1
- package/package.json +2 -2
|
@@ -229,10 +229,10 @@ export class KanbanViewComponent extends ReportViewBaseComponent {
|
|
|
229
229
|
}
|
|
230
230
|
}
|
|
231
231
|
KanbanViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: KanbanViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
232
|
-
KanbanViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: KanbanViewComponent, selector: "bk-kanban-view", inputs: { kanbanColumns: "kanbanColumns", groupbyProperty: "groupbyProperty" }, viewQueries: [{ propertyName: "inputEl", first: true, predicate: ["inputEl"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<fd-layout-panel>\n <fd-layout-panel-body [bleed]=\"true\">\n <table fd-table *ngIf=\"isCheckList\">\n <thead fd-table-header>\n <tr fd-table-row>\n <th fd-table-cell>\n <fd-checkbox\n name=\"allCheckbox\"\n [ngModel]=\"allChecked\"\n (ngModelChange)=\"onAllCheckbox($event)\"\n >{{ 'All' | bbbTranslate }}</fd-checkbox\n >\n </th>\n </tr>\n </thead>\n </table>\n </fd-layout-panel-body>\n</fd-layout-panel>\n\n<fd-layout-grid\n *ngIf=\"moDataList?.length; else noData\"\n class=\"columns\"\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n [cdkDropListData]=\"kanbanColumns\"\n [id]=\"'$Root'\"\n (cdkDropListDropped)=\"onDrop($event, true)\"\n>\n <div\n *ngFor=\"let column of kanbanColumns; let columnIndex = index\"\n [fdLayoutGridCol]=\"12\"\n [colMd]=\"6\"\n [colLg]=\"4\"\n [colXl]=\"3\"\n class=\"column\"\n [id]=\"column.Id\"\n [attr.state]=\"column.$Caption\"\n cdkDrag\n >\n <ng-container\n *ngTemplateOutlet=\"\n columnCard;\n context: {\n column: column,\n columnIndex: columnIndex\n }\n \"\n ></ng-container>\n </div>\n <div\n [fdLayoutGridCol]=\"12\"\n [colMd]=\"6\"\n [colLg]=\"4\"\n [colXl]=\"3\"\n class=\"newColumn\"\n (click)=\"onActiveNewColumnMode()\"\n *ngIf=\"!isNewColumnMode; else newColumnInput\"\n >\n <ng-container>\n <span>\u0633\u062A\u0648\u0646 \u062C\u062F\u06CC\u062F</span>\n </ng-container>\n </div>\n <ng-template #newColumnInput>\n <div [fdLayoutGridCol]=\"12\" [colMd]=\"6\" [colLg]=\"4\" [colXl]=\"3\">\n <input\n #inputEl\n fd-form-control\n type=\"text\"\n autofocus\n (focusout)=\"onCancelNewColumn()\"\n [(ngModel)]=\"newColumn.$Caption\"\n (keydown.enter)=\"onAddNewColumn()\"\n id=\"new-column-name\"\n placeholder=\" \u0646\u0627\u0645\"\n />\n </div>\n </ng-template>\n</fd-layout-grid>\n\n<!--noData-->\n<ng-template #noData>\n <bsu-no-data></bsu-no-data>\n</ng-template>\n\n<!--column card-->\n<ng-template #columnCard let-column=\"column\" let-columnIndex=\"columnIndex\">\n <fd-card cardType=\"quickView\" class=\"docs-flex-item-margin\" ellipsify>\n <fd-card-header>\n <span fd-card-title>{{ column.$Caption }}</span>\n </fd-card-header>\n <fd-card-content\n cdkDropList\n (cdkDropListDropped)=\"onDrop($event)\"\n [cdkDropListSortingDisabled]=\"true\"\n [cdkDropListData]=\"moDataList\"\n >\n <ng-container *ngFor=\"let mo of moDataList; let index = index\">\n <bk-kanban-card\n [mo]=\"mo\"\n [viewSetting]=\"viewSetting\"\n [formSetting]=\"formSetting\"\n [allAvailableAssignees]=\"allAvailableAssignees\"\n [index]=\"index\"\n *ngIf=\"mo[viewSetting.State].$Caption === column.$Caption\"\n [attr.id]=\"mo.Id\"\n [inlineEditMode]=\"true\"\n [isChecked]=\"true\"\n [attr.state]=\"column.$Caption\"\n [attr.index]=\"index\"\n [class.selected]=\"mo.$IsChecked\"\n (cdkDragMoved)=\"onDragMove($event, mo, index, column)\"\n (click)=\"onRowCheck({mo, index})\"\n (dblclick)=\"onRowClick({mo, index})\"\n cdkDrag\n >\n </bk-kanban-card>\n </ng-container>\n </fd-card-content>\n <fd-card-footer class=\"column-footer\">\n <div class=\"new-card\" *ngIf=\"newCard[groupbyProperty] === column.$Caption; else addNewCard\">\n <fd-card>\n <div fd-form-item>\n <textarea\n fd-form-control\n [autofocus]=\"true\"\n [(ngModel)]=\"newCard.$Caption\"\n (keydown.enter)=\"onAddNewCard($event)\"\n (focusout)=\"onNewCardInputFocusout()\"\n [placeholder]=\"'Title' | bbbTranslate\"\n ></textarea>\n </div>\n </fd-card>\n <div class=\"new-card-actions\">\n <button\n fd-button\n (click)=\"onAddNewCard($event)\"\n fdType=\"emphasized\"\n class=\"add-card-btn\"\n [label]=\"'\u0627\u0641\u0632\u0648\u062F\u0646'\"\n ></button>\n <fd-icon (mousedown)=\"onCancelNewCard($event)\" glyph=\"decline\"></fd-icon>\n </div>\n </div>\n\n <ng-template #addNewCard>\n <div class=\"add-new-card\" (click)=\"onInitNewCard(column.$Caption)\">\n <span>\n <fd-icon glyph=\"add\"></fd-icon>\n \u06A9\u0627\u0631\u062A \u062C\u062F\u06CC\u062F\n </span>\n </div>\n </ng-template>\n </fd-card-footer>\n </fd-card>\n</ng-template>\n", styles: [":host{display:flex;column-gap:20px;row-gap:20px;flex-wrap:wrap;overflow:auto;padding-bottom:1rem;height:calc(100% - 38.5px)}::-webkit-scrollbar{height:7px;width:7px}::-webkit-scrollbar-track{box-shadow:inset 0 0 2px #d0cece;border-radius:10px}::-webkit-scrollbar-thumb{background:#c8cacb;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#adb0b2}.columns{height:inherit;width:100%;column-gap:15px;flex-wrap:nowrap!important}.column{height:100%;background-color:var(--sapList_Background, #fff)!important}.column.cdk-drag-placeholder{opacity:0}.column>fd-card{overflow-y:hidden;height:100%;box-shadow:none}.column>fd-card fd-card-header{border:none;background:none;padding:1rem 2rem!important}.column>fd-card fd-card-content{flex:1;overflow-y:auto;padding:0 1rem;margin:0;display:flex;flex-direction:column;row-gap:20px}.column>fd-card .column-footer{padding:1rem 1rem 1rem 1.5rem;position:sticky}.column>fd-card .column-footer .new-card{display:flex;flex-direction:column;justify-content:center;row-gap:1rem}.column>fd-card .column-footer .new-card fd-card{padding:0 1rem;background:var(--sapBackgroundColor, #f7f7f7)!important}.column>fd-card .column-footer .new-card textarea{background:var(--sapBackgroundColor, #f7f7f7)!important;border:none}.column>fd-card .column-footer .new-card span{height:auto!important}.column>fd-card .column-footer .new-card .new-card-actions{display:flex;align-items:center;column-gap:10px}.column>fd-card .column-footer .new-card .new-card-actions fd-icon{font-size:1rem}.column>fd-card .column-footer .add-new-card{padding:0 1rem}.column>fd-card .column-footer .add-new-card span{display:flex;column-gap:4px}.newColumn{background-color:var(--sapList_Background, #fff)!important;border-radius:var(--sapElement_BorderCornerRadius, .25rem);align-self:flex-start;height:100px;opacity:.5;display:flex;align-items:center;justify-content:center;border:1px dashed;position:relative;cursor:pointer}.newColumn span{position:absolute}.newColumn .new-column-popover{width:100%}.newColumn .new-column-popover fd-popover-control{width:100%;height:1px}.new-column-popover-body input{border:none}.row{display:flex;align-items:center}.drop-inside{border:1px solid #00f}.drop-inside ::ng-deep .fd-list__item{background-color:#dce9f6!important}.drop-before{border-top:2px solid #00f}.drop-before ::ng-deep .fd-list__item{background-color:#dce9f6!important}.drop-after{border-bottom:2px solid #00f}.drop-after ::ng-deep .fd-list__item{background-color:#dce9f6!important}.columns.cdk-drop-list-dragging .column:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.EllipsifyDirective, selector: "[ellipsify]", inputs: ["limitLine"] }, { kind: "component", type: i3.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i4.CardComponent, selector: "fd-card", inputs: ["badge", "isLoading", "cardType", "id", "role"] }, { kind: "component", type: i4.CardHeaderComponent, selector: "fd-card-header", inputs: ["interactive", "tabindex"] }, { kind: "component", type: i4.CardContentComponent, selector: "fd-card-content" }, { kind: "directive", type: i4.CardTitleDirective, selector: "[fd-card-title]" }, { kind: "component", type: i4.CardFooterComponent, selector: "fd-card-footer" }, { kind: "component", type: i5.CheckboxComponent, selector: "fd-checkbox", inputs: ["ariaLabel", "value", "ariaLabelledBy", "ariaDescribedBy", "title", "inputId", "state", "name", "label", "disabled", "tristate", "tristateSelectable", "labelClass", "required", "values"], outputs: ["focusChange"] }, { kind: "component", type: i6.FormControlComponent, selector: "[fd-form-control]", inputs: ["state", "type", "class"] }, { kind: "directive", type: i6.InputFormControlDirective, selector: "input[fd-form-control]" }, { kind: "directive", type: i6.TextareaFormControlDirective, selector: "textarea[fd-form-control]" }, { kind: "component", type: i6.FormItemComponent, selector: "[fd-form-item]", inputs: ["isInline", "horizontal"] }, { kind: "component", type: i7.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "class", "ariaLabel"] }, { kind: "component", type: i8.LayoutGridComponent, selector: "fd-layout-grid, [fdLayoutGrid]", inputs: ["class", "noGap", "noHorizontalGap", "noVerticalGap"] }, { kind: "directive", type: i8.LayoutGridColDirective, selector: "[fd-layout-grid-col], [fdLayoutGridCol]", inputs: ["fdLayoutGridCol", "colGrow", "colMd", "colLg", "colXl", "colOffset", "colOffsetMd", "colOffsetLg", "colOffsetXl", "class"] }, { kind: "component", type: i9.LayoutPanelComponent, selector: "fd-layout-panel", inputs: ["backgroundImage"] }, { kind: "component", type: i9.LayoutPanelBodyComponent, selector: "fd-layout-panel-body", inputs: ["bleed"] }, { kind: "component", type: i10.TableComponent, selector: "table[fd-table]", inputs: ["noBorderX", "noBorderY", "popIn", "responsive", "keys", "allCellsFocusable"], exportAs: ["fd-table"] }, { kind: "directive", type: i10.TableHeaderDirective, selector: "[fdTableHeader], [fd-table-header]", inputs: ["noBorderX", "noBorderY"] }, { kind: "directive", type: i10.TableRowDirective, selector: "[fdTableRow], [fd-table-row]", inputs: ["activable", "highlightActive", "hoverable", "focusable", "main", "secondary", "active"] }, { kind: "directive", type: i10.TableCellDirective, selector: "[fdTableCell], [fd-table-cell]", inputs: ["noBorderX", "noBorderY", "activable", "focusable", "tabindex", "hoverable", "fitContent", "noPadding", "noData", "key", "cellFocusedEventAnnouncer"] }, { kind: "component", type: i11.NoDataComponent, selector: "bsu-no-data" }, { kind: "directive", type: i12.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i12.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i12.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i13.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i13.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i14.KanbanCardComponent, selector: "bk-kanban-card", inputs: ["index", "mo", "viewSetting", "allAvailableAssignees"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
232
|
+
KanbanViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: KanbanViewComponent, selector: "bk-kanban-view", inputs: { kanbanColumns: "kanbanColumns", groupbyProperty: "groupbyProperty" }, viewQueries: [{ propertyName: "inputEl", first: true, predicate: ["inputEl"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<fd-layout-panel>\r\n <fd-layout-panel-body [bleed]=\"true\">\r\n <table fd-table *ngIf=\"isCheckList\">\r\n <thead fd-table-header>\r\n <tr fd-table-row>\r\n <th fd-table-cell>\r\n <fd-checkbox\r\n name=\"allCheckbox\"\r\n [ngModel]=\"allChecked\"\r\n (ngModelChange)=\"onAllCheckbox($event)\"\r\n >{{ 'All' | bbbTranslate }}</fd-checkbox\r\n >\r\n </th>\r\n </tr>\r\n </thead>\r\n </table>\r\n </fd-layout-panel-body>\r\n</fd-layout-panel>\r\n\r\n<fd-layout-grid\r\n *ngIf=\"moDataList?.length; else noData\"\r\n class=\"columns\"\r\n cdkDropList\r\n cdkDropListOrientation=\"horizontal\"\r\n [cdkDropListData]=\"kanbanColumns\"\r\n [id]=\"'$Root'\"\r\n (cdkDropListDropped)=\"onDrop($event, true)\"\r\n>\r\n <div\r\n *ngFor=\"let column of kanbanColumns; let columnIndex = index\"\r\n [fdLayoutGridCol]=\"12\"\r\n [colMd]=\"6\"\r\n [colLg]=\"4\"\r\n [colXl]=\"3\"\r\n class=\"column\"\r\n [id]=\"column.Id\"\r\n [attr.state]=\"column.$Caption\"\r\n cdkDrag\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnCard;\r\n context: {\r\n column: column,\r\n columnIndex: columnIndex\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n <div\r\n [fdLayoutGridCol]=\"12\"\r\n [colMd]=\"6\"\r\n [colLg]=\"4\"\r\n [colXl]=\"3\"\r\n class=\"newColumn\"\r\n (click)=\"onActiveNewColumnMode()\"\r\n *ngIf=\"!isNewColumnMode; else newColumnInput\"\r\n >\r\n <ng-container>\r\n <span>\u0633\u062A\u0648\u0646 \u062C\u062F\u06CC\u062F</span>\r\n </ng-container>\r\n </div>\r\n <ng-template #newColumnInput>\r\n <div [fdLayoutGridCol]=\"12\" [colMd]=\"6\" [colLg]=\"4\" [colXl]=\"3\">\r\n <input\r\n #inputEl\r\n fd-form-control\r\n type=\"text\"\r\n autofocus\r\n (focusout)=\"onCancelNewColumn()\"\r\n [(ngModel)]=\"newColumn.$Caption\"\r\n (keydown.enter)=\"onAddNewColumn()\"\r\n id=\"new-column-name\"\r\n placeholder=\" \u0646\u0627\u0645\"\r\n />\r\n </div>\r\n </ng-template>\r\n</fd-layout-grid>\r\n\r\n<!--noData-->\r\n<ng-template #noData>\r\n <bsu-no-data></bsu-no-data>\r\n</ng-template>\r\n\r\n<!--column card-->\r\n<ng-template #columnCard let-column=\"column\" let-columnIndex=\"columnIndex\">\r\n <fd-card cardType=\"quickView\" class=\"docs-flex-item-margin\" ellipsify>\r\n <fd-card-header>\r\n <span fd-card-title>{{ column.$Caption }}</span>\r\n </fd-card-header>\r\n <fd-card-content\r\n cdkDropList\r\n (cdkDropListDropped)=\"onDrop($event)\"\r\n [cdkDropListSortingDisabled]=\"true\"\r\n [cdkDropListData]=\"moDataList\"\r\n >\r\n <ng-container *ngFor=\"let mo of moDataList; let index = index\">\r\n <bk-kanban-card\r\n [mo]=\"mo\"\r\n [viewSetting]=\"viewSetting\"\r\n [formSetting]=\"formSetting\"\r\n [allAvailableAssignees]=\"allAvailableAssignees\"\r\n [index]=\"index\"\r\n *ngIf=\"mo[viewSetting.State].$Caption === column.$Caption\"\r\n [attr.id]=\"mo.Id\"\r\n [inlineEditMode]=\"true\"\r\n [isChecked]=\"true\"\r\n [attr.state]=\"column.$Caption\"\r\n [attr.index]=\"index\"\r\n [class.selected]=\"mo.$IsChecked\"\r\n (cdkDragMoved)=\"onDragMove($event, mo, index, column)\"\r\n (click)=\"onRowCheck({mo, index})\"\r\n (dblclick)=\"onRowClick({mo, index})\"\r\n cdkDrag\r\n >\r\n </bk-kanban-card>\r\n </ng-container>\r\n </fd-card-content>\r\n <fd-card-footer class=\"column-footer\">\r\n <div class=\"new-card\" *ngIf=\"newCard[groupbyProperty] === column.$Caption; else addNewCard\">\r\n <fd-card>\r\n <div fd-form-item>\r\n <textarea\r\n fd-form-control\r\n [autofocus]=\"true\"\r\n [(ngModel)]=\"newCard.$Caption\"\r\n (keydown.enter)=\"onAddNewCard($event)\"\r\n (focusout)=\"onNewCardInputFocusout()\"\r\n [placeholder]=\"'Title' | bbbTranslate\"\r\n ></textarea>\r\n </div>\r\n </fd-card>\r\n <div class=\"new-card-actions\">\r\n <button\r\n fd-button\r\n (click)=\"onAddNewCard($event)\"\r\n fdType=\"emphasized\"\r\n class=\"add-card-btn\"\r\n [label]=\"'\u0627\u0641\u0632\u0648\u062F\u0646'\"\r\n ></button>\r\n <fd-icon (mousedown)=\"onCancelNewCard($event)\" glyph=\"decline\"></fd-icon>\r\n </div>\r\n </div>\r\n\r\n <ng-template #addNewCard>\r\n <div class=\"add-new-card\" (click)=\"onInitNewCard(column.$Caption)\">\r\n <span>\r\n <fd-icon glyph=\"add\"></fd-icon>\r\n \u06A9\u0627\u0631\u062A \u062C\u062F\u06CC\u062F\r\n </span>\r\n </div>\r\n </ng-template>\r\n </fd-card-footer>\r\n </fd-card>\r\n</ng-template>\r\n", styles: [":host{display:flex;column-gap:20px;row-gap:20px;flex-wrap:wrap;overflow:auto;padding-bottom:1rem;height:calc(100% - 38.5px)}::-webkit-scrollbar{height:7px;width:7px}::-webkit-scrollbar-track{box-shadow:inset 0 0 2px #d0cece;border-radius:10px}::-webkit-scrollbar-thumb{background:#c8cacb;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#adb0b2}.columns{height:inherit;width:100%;column-gap:15px;flex-wrap:nowrap!important}.column{height:100%;background-color:var(--sapList_Background, #fff)!important}.column.cdk-drag-placeholder{opacity:0}.column>fd-card{overflow-y:hidden;height:100%;box-shadow:none}.column>fd-card fd-card-header{border:none;background:none;padding:1rem 2rem!important}.column>fd-card fd-card-content{flex:1;overflow-y:auto;padding:0 1rem;margin:0;display:flex;flex-direction:column;row-gap:20px}.column>fd-card .column-footer{padding:1rem 1rem 1rem 1.5rem;position:sticky}.column>fd-card .column-footer .new-card{display:flex;flex-direction:column;justify-content:center;row-gap:1rem}.column>fd-card .column-footer .new-card fd-card{padding:0 1rem;background:var(--sapBackgroundColor, #f7f7f7)!important}.column>fd-card .column-footer .new-card textarea{background:var(--sapBackgroundColor, #f7f7f7)!important;border:none}.column>fd-card .column-footer .new-card span{height:auto!important}.column>fd-card .column-footer .new-card .new-card-actions{display:flex;align-items:center;column-gap:10px}.column>fd-card .column-footer .new-card .new-card-actions fd-icon{font-size:1rem}.column>fd-card .column-footer .add-new-card{padding:0 1rem}.column>fd-card .column-footer .add-new-card span{display:flex;column-gap:4px}.newColumn{background-color:var(--sapList_Background, #fff)!important;border-radius:var(--sapElement_BorderCornerRadius, .25rem);align-self:flex-start;height:100px;opacity:.5;display:flex;align-items:center;justify-content:center;border:1px dashed;position:relative;cursor:pointer}.newColumn span{position:absolute}.newColumn .new-column-popover{width:100%}.newColumn .new-column-popover fd-popover-control{width:100%;height:1px}.new-column-popover-body input{border:none}.row{display:flex;align-items:center}.drop-inside{border:1px solid #00f}.drop-inside ::ng-deep .fd-list__item{background-color:#dce9f6!important}.drop-before{border-top:2px solid #00f}.drop-before ::ng-deep .fd-list__item{background-color:#dce9f6!important}.drop-after{border-bottom:2px solid #00f}.drop-after ::ng-deep .fd-list__item{background-color:#dce9f6!important}.columns.cdk-drop-list-dragging .column:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.EllipsifyDirective, selector: "[ellipsify]", inputs: ["limitLine"] }, { kind: "component", type: i3.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i4.CardComponent, selector: "fd-card", inputs: ["badge", "isLoading", "cardType", "id", "role"] }, { kind: "component", type: i4.CardHeaderComponent, selector: "fd-card-header", inputs: ["interactive", "tabindex"] }, { kind: "component", type: i4.CardContentComponent, selector: "fd-card-content" }, { kind: "directive", type: i4.CardTitleDirective, selector: "[fd-card-title]" }, { kind: "component", type: i4.CardFooterComponent, selector: "fd-card-footer" }, { kind: "component", type: i5.CheckboxComponent, selector: "fd-checkbox", inputs: ["ariaLabel", "value", "ariaLabelledBy", "ariaDescribedBy", "title", "inputId", "state", "name", "label", "disabled", "tristate", "tristateSelectable", "labelClass", "required", "values"], outputs: ["focusChange"] }, { kind: "component", type: i6.FormControlComponent, selector: "[fd-form-control]", inputs: ["state", "type", "class"] }, { kind: "directive", type: i6.InputFormControlDirective, selector: "input[fd-form-control]" }, { kind: "directive", type: i6.TextareaFormControlDirective, selector: "textarea[fd-form-control]" }, { kind: "component", type: i6.FormItemComponent, selector: "[fd-form-item]", inputs: ["isInline", "horizontal"] }, { kind: "component", type: i7.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "class", "ariaLabel"] }, { kind: "component", type: i8.LayoutGridComponent, selector: "fd-layout-grid, [fdLayoutGrid]", inputs: ["class", "noGap", "noHorizontalGap", "noVerticalGap"] }, { kind: "directive", type: i8.LayoutGridColDirective, selector: "[fd-layout-grid-col], [fdLayoutGridCol]", inputs: ["fdLayoutGridCol", "colGrow", "colMd", "colLg", "colXl", "colOffset", "colOffsetMd", "colOffsetLg", "colOffsetXl", "class"] }, { kind: "component", type: i9.LayoutPanelComponent, selector: "fd-layout-panel", inputs: ["backgroundImage"] }, { kind: "component", type: i9.LayoutPanelBodyComponent, selector: "fd-layout-panel-body", inputs: ["bleed"] }, { kind: "component", type: i10.TableComponent, selector: "table[fd-table]", inputs: ["noBorderX", "noBorderY", "popIn", "responsive", "keys", "allCellsFocusable"], exportAs: ["fd-table"] }, { kind: "directive", type: i10.TableHeaderDirective, selector: "[fdTableHeader], [fd-table-header]", inputs: ["noBorderX", "noBorderY"] }, { kind: "directive", type: i10.TableRowDirective, selector: "[fdTableRow], [fd-table-row]", inputs: ["activable", "highlightActive", "hoverable", "focusable", "main", "secondary", "active"] }, { kind: "directive", type: i10.TableCellDirective, selector: "[fdTableCell], [fd-table-cell]", inputs: ["noBorderX", "noBorderY", "activable", "focusable", "tabindex", "hoverable", "fitContent", "noPadding", "noData", "key", "cellFocusedEventAnnouncer"] }, { kind: "component", type: i11.NoDataComponent, selector: "bsu-no-data" }, { kind: "directive", type: i12.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i12.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i12.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i13.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i13.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i14.KanbanCardComponent, selector: "bk-kanban-card", inputs: ["index", "mo", "viewSetting", "allAvailableAssignees"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
233
233
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: KanbanViewComponent, decorators: [{
|
|
234
234
|
type: Component,
|
|
235
|
-
args: [{ selector: 'bk-kanban-view', changeDetection: ChangeDetectionStrategy.OnPush, template: "<fd-layout-panel>\n <fd-layout-panel-body [bleed]=\"true\">\n <table fd-table *ngIf=\"isCheckList\">\n <thead fd-table-header>\n <tr fd-table-row>\n <th fd-table-cell>\n <fd-checkbox\n name=\"allCheckbox\"\n [ngModel]=\"allChecked\"\n (ngModelChange)=\"onAllCheckbox($event)\"\n >{{ 'All' | bbbTranslate }}</fd-checkbox\n >\n </th>\n </tr>\n </thead>\n </table>\n </fd-layout-panel-body>\n</fd-layout-panel>\n\n<fd-layout-grid\n *ngIf=\"moDataList?.length; else noData\"\n class=\"columns\"\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n [cdkDropListData]=\"kanbanColumns\"\n [id]=\"'$Root'\"\n (cdkDropListDropped)=\"onDrop($event, true)\"\n>\n <div\n *ngFor=\"let column of kanbanColumns; let columnIndex = index\"\n [fdLayoutGridCol]=\"12\"\n [colMd]=\"6\"\n [colLg]=\"4\"\n [colXl]=\"3\"\n class=\"column\"\n [id]=\"column.Id\"\n [attr.state]=\"column.$Caption\"\n cdkDrag\n >\n <ng-container\n *ngTemplateOutlet=\"\n columnCard;\n context: {\n column: column,\n columnIndex: columnIndex\n }\n \"\n ></ng-container>\n </div>\n <div\n [fdLayoutGridCol]=\"12\"\n [colMd]=\"6\"\n [colLg]=\"4\"\n [colXl]=\"3\"\n class=\"newColumn\"\n (click)=\"onActiveNewColumnMode()\"\n *ngIf=\"!isNewColumnMode; else newColumnInput\"\n >\n <ng-container>\n <span>\u0633\u062A\u0648\u0646 \u062C\u062F\u06CC\u062F</span>\n </ng-container>\n </div>\n <ng-template #newColumnInput>\n <div [fdLayoutGridCol]=\"12\" [colMd]=\"6\" [colLg]=\"4\" [colXl]=\"3\">\n <input\n #inputEl\n fd-form-control\n type=\"text\"\n autofocus\n (focusout)=\"onCancelNewColumn()\"\n [(ngModel)]=\"newColumn.$Caption\"\n (keydown.enter)=\"onAddNewColumn()\"\n id=\"new-column-name\"\n placeholder=\" \u0646\u0627\u0645\"\n />\n </div>\n </ng-template>\n</fd-layout-grid>\n\n<!--noData-->\n<ng-template #noData>\n <bsu-no-data></bsu-no-data>\n</ng-template>\n\n<!--column card-->\n<ng-template #columnCard let-column=\"column\" let-columnIndex=\"columnIndex\">\n <fd-card cardType=\"quickView\" class=\"docs-flex-item-margin\" ellipsify>\n <fd-card-header>\n <span fd-card-title>{{ column.$Caption }}</span>\n </fd-card-header>\n <fd-card-content\n cdkDropList\n (cdkDropListDropped)=\"onDrop($event)\"\n [cdkDropListSortingDisabled]=\"true\"\n [cdkDropListData]=\"moDataList\"\n >\n <ng-container *ngFor=\"let mo of moDataList; let index = index\">\n <bk-kanban-card\n [mo]=\"mo\"\n [viewSetting]=\"viewSetting\"\n [formSetting]=\"formSetting\"\n [allAvailableAssignees]=\"allAvailableAssignees\"\n [index]=\"index\"\n *ngIf=\"mo[viewSetting.State].$Caption === column.$Caption\"\n [attr.id]=\"mo.Id\"\n [inlineEditMode]=\"true\"\n [isChecked]=\"true\"\n [attr.state]=\"column.$Caption\"\n [attr.index]=\"index\"\n [class.selected]=\"mo.$IsChecked\"\n (cdkDragMoved)=\"onDragMove($event, mo, index, column)\"\n (click)=\"onRowCheck({mo, index})\"\n (dblclick)=\"onRowClick({mo, index})\"\n cdkDrag\n >\n </bk-kanban-card>\n </ng-container>\n </fd-card-content>\n <fd-card-footer class=\"column-footer\">\n <div class=\"new-card\" *ngIf=\"newCard[groupbyProperty] === column.$Caption; else addNewCard\">\n <fd-card>\n <div fd-form-item>\n <textarea\n fd-form-control\n [autofocus]=\"true\"\n [(ngModel)]=\"newCard.$Caption\"\n (keydown.enter)=\"onAddNewCard($event)\"\n (focusout)=\"onNewCardInputFocusout()\"\n [placeholder]=\"'Title' | bbbTranslate\"\n ></textarea>\n </div>\n </fd-card>\n <div class=\"new-card-actions\">\n <button\n fd-button\n (click)=\"onAddNewCard($event)\"\n fdType=\"emphasized\"\n class=\"add-card-btn\"\n [label]=\"'\u0627\u0641\u0632\u0648\u062F\u0646'\"\n ></button>\n <fd-icon (mousedown)=\"onCancelNewCard($event)\" glyph=\"decline\"></fd-icon>\n </div>\n </div>\n\n <ng-template #addNewCard>\n <div class=\"add-new-card\" (click)=\"onInitNewCard(column.$Caption)\">\n <span>\n <fd-icon glyph=\"add\"></fd-icon>\n \u06A9\u0627\u0631\u062A \u062C\u062F\u06CC\u062F\n </span>\n </div>\n </ng-template>\n </fd-card-footer>\n </fd-card>\n</ng-template>\n", styles: [":host{display:flex;column-gap:20px;row-gap:20px;flex-wrap:wrap;overflow:auto;padding-bottom:1rem;height:calc(100% - 38.5px)}::-webkit-scrollbar{height:7px;width:7px}::-webkit-scrollbar-track{box-shadow:inset 0 0 2px #d0cece;border-radius:10px}::-webkit-scrollbar-thumb{background:#c8cacb;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#adb0b2}.columns{height:inherit;width:100%;column-gap:15px;flex-wrap:nowrap!important}.column{height:100%;background-color:var(--sapList_Background, #fff)!important}.column.cdk-drag-placeholder{opacity:0}.column>fd-card{overflow-y:hidden;height:100%;box-shadow:none}.column>fd-card fd-card-header{border:none;background:none;padding:1rem 2rem!important}.column>fd-card fd-card-content{flex:1;overflow-y:auto;padding:0 1rem;margin:0;display:flex;flex-direction:column;row-gap:20px}.column>fd-card .column-footer{padding:1rem 1rem 1rem 1.5rem;position:sticky}.column>fd-card .column-footer .new-card{display:flex;flex-direction:column;justify-content:center;row-gap:1rem}.column>fd-card .column-footer .new-card fd-card{padding:0 1rem;background:var(--sapBackgroundColor, #f7f7f7)!important}.column>fd-card .column-footer .new-card textarea{background:var(--sapBackgroundColor, #f7f7f7)!important;border:none}.column>fd-card .column-footer .new-card span{height:auto!important}.column>fd-card .column-footer .new-card .new-card-actions{display:flex;align-items:center;column-gap:10px}.column>fd-card .column-footer .new-card .new-card-actions fd-icon{font-size:1rem}.column>fd-card .column-footer .add-new-card{padding:0 1rem}.column>fd-card .column-footer .add-new-card span{display:flex;column-gap:4px}.newColumn{background-color:var(--sapList_Background, #fff)!important;border-radius:var(--sapElement_BorderCornerRadius, .25rem);align-self:flex-start;height:100px;opacity:.5;display:flex;align-items:center;justify-content:center;border:1px dashed;position:relative;cursor:pointer}.newColumn span{position:absolute}.newColumn .new-column-popover{width:100%}.newColumn .new-column-popover fd-popover-control{width:100%;height:1px}.new-column-popover-body input{border:none}.row{display:flex;align-items:center}.drop-inside{border:1px solid #00f}.drop-inside ::ng-deep .fd-list__item{background-color:#dce9f6!important}.drop-before{border-top:2px solid #00f}.drop-before ::ng-deep .fd-list__item{background-color:#dce9f6!important}.drop-after{border-bottom:2px solid #00f}.drop-after ::ng-deep .fd-list__item{background-color:#dce9f6!important}.columns.cdk-drop-list-dragging .column:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"] }]
|
|
235
|
+
args: [{ selector: 'bk-kanban-view', changeDetection: ChangeDetectionStrategy.OnPush, template: "<fd-layout-panel>\r\n <fd-layout-panel-body [bleed]=\"true\">\r\n <table fd-table *ngIf=\"isCheckList\">\r\n <thead fd-table-header>\r\n <tr fd-table-row>\r\n <th fd-table-cell>\r\n <fd-checkbox\r\n name=\"allCheckbox\"\r\n [ngModel]=\"allChecked\"\r\n (ngModelChange)=\"onAllCheckbox($event)\"\r\n >{{ 'All' | bbbTranslate }}</fd-checkbox\r\n >\r\n </th>\r\n </tr>\r\n </thead>\r\n </table>\r\n </fd-layout-panel-body>\r\n</fd-layout-panel>\r\n\r\n<fd-layout-grid\r\n *ngIf=\"moDataList?.length; else noData\"\r\n class=\"columns\"\r\n cdkDropList\r\n cdkDropListOrientation=\"horizontal\"\r\n [cdkDropListData]=\"kanbanColumns\"\r\n [id]=\"'$Root'\"\r\n (cdkDropListDropped)=\"onDrop($event, true)\"\r\n>\r\n <div\r\n *ngFor=\"let column of kanbanColumns; let columnIndex = index\"\r\n [fdLayoutGridCol]=\"12\"\r\n [colMd]=\"6\"\r\n [colLg]=\"4\"\r\n [colXl]=\"3\"\r\n class=\"column\"\r\n [id]=\"column.Id\"\r\n [attr.state]=\"column.$Caption\"\r\n cdkDrag\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnCard;\r\n context: {\r\n column: column,\r\n columnIndex: columnIndex\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n <div\r\n [fdLayoutGridCol]=\"12\"\r\n [colMd]=\"6\"\r\n [colLg]=\"4\"\r\n [colXl]=\"3\"\r\n class=\"newColumn\"\r\n (click)=\"onActiveNewColumnMode()\"\r\n *ngIf=\"!isNewColumnMode; else newColumnInput\"\r\n >\r\n <ng-container>\r\n <span>\u0633\u062A\u0648\u0646 \u062C\u062F\u06CC\u062F</span>\r\n </ng-container>\r\n </div>\r\n <ng-template #newColumnInput>\r\n <div [fdLayoutGridCol]=\"12\" [colMd]=\"6\" [colLg]=\"4\" [colXl]=\"3\">\r\n <input\r\n #inputEl\r\n fd-form-control\r\n type=\"text\"\r\n autofocus\r\n (focusout)=\"onCancelNewColumn()\"\r\n [(ngModel)]=\"newColumn.$Caption\"\r\n (keydown.enter)=\"onAddNewColumn()\"\r\n id=\"new-column-name\"\r\n placeholder=\" \u0646\u0627\u0645\"\r\n />\r\n </div>\r\n </ng-template>\r\n</fd-layout-grid>\r\n\r\n<!--noData-->\r\n<ng-template #noData>\r\n <bsu-no-data></bsu-no-data>\r\n</ng-template>\r\n\r\n<!--column card-->\r\n<ng-template #columnCard let-column=\"column\" let-columnIndex=\"columnIndex\">\r\n <fd-card cardType=\"quickView\" class=\"docs-flex-item-margin\" ellipsify>\r\n <fd-card-header>\r\n <span fd-card-title>{{ column.$Caption }}</span>\r\n </fd-card-header>\r\n <fd-card-content\r\n cdkDropList\r\n (cdkDropListDropped)=\"onDrop($event)\"\r\n [cdkDropListSortingDisabled]=\"true\"\r\n [cdkDropListData]=\"moDataList\"\r\n >\r\n <ng-container *ngFor=\"let mo of moDataList; let index = index\">\r\n <bk-kanban-card\r\n [mo]=\"mo\"\r\n [viewSetting]=\"viewSetting\"\r\n [formSetting]=\"formSetting\"\r\n [allAvailableAssignees]=\"allAvailableAssignees\"\r\n [index]=\"index\"\r\n *ngIf=\"mo[viewSetting.State].$Caption === column.$Caption\"\r\n [attr.id]=\"mo.Id\"\r\n [inlineEditMode]=\"true\"\r\n [isChecked]=\"true\"\r\n [attr.state]=\"column.$Caption\"\r\n [attr.index]=\"index\"\r\n [class.selected]=\"mo.$IsChecked\"\r\n (cdkDragMoved)=\"onDragMove($event, mo, index, column)\"\r\n (click)=\"onRowCheck({mo, index})\"\r\n (dblclick)=\"onRowClick({mo, index})\"\r\n cdkDrag\r\n >\r\n </bk-kanban-card>\r\n </ng-container>\r\n </fd-card-content>\r\n <fd-card-footer class=\"column-footer\">\r\n <div class=\"new-card\" *ngIf=\"newCard[groupbyProperty] === column.$Caption; else addNewCard\">\r\n <fd-card>\r\n <div fd-form-item>\r\n <textarea\r\n fd-form-control\r\n [autofocus]=\"true\"\r\n [(ngModel)]=\"newCard.$Caption\"\r\n (keydown.enter)=\"onAddNewCard($event)\"\r\n (focusout)=\"onNewCardInputFocusout()\"\r\n [placeholder]=\"'Title' | bbbTranslate\"\r\n ></textarea>\r\n </div>\r\n </fd-card>\r\n <div class=\"new-card-actions\">\r\n <button\r\n fd-button\r\n (click)=\"onAddNewCard($event)\"\r\n fdType=\"emphasized\"\r\n class=\"add-card-btn\"\r\n [label]=\"'\u0627\u0641\u0632\u0648\u062F\u0646'\"\r\n ></button>\r\n <fd-icon (mousedown)=\"onCancelNewCard($event)\" glyph=\"decline\"></fd-icon>\r\n </div>\r\n </div>\r\n\r\n <ng-template #addNewCard>\r\n <div class=\"add-new-card\" (click)=\"onInitNewCard(column.$Caption)\">\r\n <span>\r\n <fd-icon glyph=\"add\"></fd-icon>\r\n \u06A9\u0627\u0631\u062A \u062C\u062F\u06CC\u062F\r\n </span>\r\n </div>\r\n </ng-template>\r\n </fd-card-footer>\r\n </fd-card>\r\n</ng-template>\r\n", styles: [":host{display:flex;column-gap:20px;row-gap:20px;flex-wrap:wrap;overflow:auto;padding-bottom:1rem;height:calc(100% - 38.5px)}::-webkit-scrollbar{height:7px;width:7px}::-webkit-scrollbar-track{box-shadow:inset 0 0 2px #d0cece;border-radius:10px}::-webkit-scrollbar-thumb{background:#c8cacb;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#adb0b2}.columns{height:inherit;width:100%;column-gap:15px;flex-wrap:nowrap!important}.column{height:100%;background-color:var(--sapList_Background, #fff)!important}.column.cdk-drag-placeholder{opacity:0}.column>fd-card{overflow-y:hidden;height:100%;box-shadow:none}.column>fd-card fd-card-header{border:none;background:none;padding:1rem 2rem!important}.column>fd-card fd-card-content{flex:1;overflow-y:auto;padding:0 1rem;margin:0;display:flex;flex-direction:column;row-gap:20px}.column>fd-card .column-footer{padding:1rem 1rem 1rem 1.5rem;position:sticky}.column>fd-card .column-footer .new-card{display:flex;flex-direction:column;justify-content:center;row-gap:1rem}.column>fd-card .column-footer .new-card fd-card{padding:0 1rem;background:var(--sapBackgroundColor, #f7f7f7)!important}.column>fd-card .column-footer .new-card textarea{background:var(--sapBackgroundColor, #f7f7f7)!important;border:none}.column>fd-card .column-footer .new-card span{height:auto!important}.column>fd-card .column-footer .new-card .new-card-actions{display:flex;align-items:center;column-gap:10px}.column>fd-card .column-footer .new-card .new-card-actions fd-icon{font-size:1rem}.column>fd-card .column-footer .add-new-card{padding:0 1rem}.column>fd-card .column-footer .add-new-card span{display:flex;column-gap:4px}.newColumn{background-color:var(--sapList_Background, #fff)!important;border-radius:var(--sapElement_BorderCornerRadius, .25rem);align-self:flex-start;height:100px;opacity:.5;display:flex;align-items:center;justify-content:center;border:1px dashed;position:relative;cursor:pointer}.newColumn span{position:absolute}.newColumn .new-column-popover{width:100%}.newColumn .new-column-popover fd-popover-control{width:100%;height:1px}.new-column-popover-body input{border:none}.row{display:flex;align-items:center}.drop-inside{border:1px solid #00f}.drop-inside ::ng-deep .fd-list__item{background-color:#dce9f6!important}.drop-before{border-top:2px solid #00f}.drop-before ::ng-deep .fd-list__item{background-color:#dce9f6!important}.drop-after{border-bottom:2px solid #00f}.drop-after ::ng-deep .fd-list__item{background-color:#dce9f6!important}.columns.cdk-drop-list-dragging .column:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"] }]
|
|
236
236
|
}], propDecorators: { inputEl: [{
|
|
237
237
|
type: ViewChild,
|
|
238
238
|
args: ['inputEl', { read: ElementRef }]
|
|
@@ -241,4 +241,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
|
|
|
241
241
|
}], groupbyProperty: [{
|
|
242
242
|
type: Input
|
|
243
243
|
}] } });
|
|
244
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2FuYmFuLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Eta2FuYmFuL3NyYy9saWIva2FuYmFuLXZpZXcva2FuYmFuLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Eta2FuYmFuL3NyYy9saWIva2FuYmFuLXZpZXcva2FuYmFuLXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFekQsT0FBTyxFQUF1Qix1QkFBdUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7O0FBVXBGLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSx1QkFBMEM7SUFObkY7O1FBU2Esb0JBQWUsR0FBRyxPQUFPLENBQUM7UUFHbkMsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFDeEIsWUFBTyxHQUFRLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDNUMsY0FBUyxHQUFRLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7S0F3T2pEO0lBdE9HLFFBQVE7UUFDSixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFakIsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDO1FBQzlELElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2xFLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFB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TyxHQUFHLEVBQUUsQ0FBQztRQUNuQixXQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDekIsT0FBTyxDQUFDLElBQUksR0FBRyxRQUFRLENBQUMsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDekYsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLE9BQU8sQ0FBQztJQUNuQixDQUFDOztnSEEvT1EsbUJBQW1CO29HQUFuQixtQkFBbUIscU5BQ0UsVUFBVSxvRENkNUMsa3JMQTJKQTsyRkQ5SWEsbUJBQW1CO2tCQU4vQixTQUFTOytCQUNJLGdCQUFnQixtQkFHVCx1QkFBdUIsQ0FBQyxNQUFNOzhCQUdILE9BQU87c0JBQWxELFNBQVM7dUJBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFDakMsYUFBYTtzQkFBckIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBtb3ZlSXRlbUluQXJyYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcblxuaW1wb3J0IHsgTWV0YW9iamVjdERhdGFNb2RlbCwgUmVwb3J0Vmlld0Jhc2VDb21wb25lbnQgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5pbXBvcnQgeyBLYW5iYW5WaWV3U2V0dGluZyB9IGZyb20gJy4uL01vZGVscy9rYW5iYW4tdmlldy1zZXR0aW5nLmludGVyZmFjZSc7XG5pbXBvcnQgeyBEcm9wSW5mbyB9IGZyb20gJy4uL01vZGVscy9kcm9wLWluZm8nO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JrLWthbmJhbi12aWV3JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4va2FuYmFuLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2thbmJhbi12aWV3LmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgS2FuYmFuVmlld0NvbXBvbmVudCBleHRlbmRzIFJlcG9ydFZpZXdCYXNlQ29tcG9uZW50PEthbmJhblZpZXdTZXR0aW5nPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQFZpZXdDaGlsZCgnaW5wdXRFbCcsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBpbnB1dEVsOiBFbGVtZW50UmVmPGFueT47XG4gICAgQElucHV0KCkga2FuYmFuQ29sdW1uczogTWV0YW9iamVjdERhdGFNb2RlbFtdO1xuICAgIEBJbnB1dCgpIGdyb3VwYnlQcm9wZXJ0eSA9ICdTdGF0ZSc7XG4gICAgZHJvcEFjdGlvblRvZG86IERyb3BJbmZvO1xuICAgIGFsbEF2YWlsYWJsZUFzc2lnbmVlczogTWV0YW9iamVjdERhdGFNb2RlbFtdO1xuICAgIGlzTmV3Q29sdW1uTW9kZSA9IGZhbHNlO1xuICAgIG5ld0NhcmQ6IGFueSA9IHsgSWQ6IG51bGwsICRDYXB0aW9uOiBudWxsIH07XG4gICAgbmV3Q29sdW1uOiBhbnkgPSB7IElkOiBudWxsLCAkQ2FwdGlvbjogbnVsbCB9O1xuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG5cbiAgICAgICAgY29uc3QgY29sdW1uc1JlcG9ydCA9IHRoaXMudmlld1NldHRpbmcuQ29sdW1uc1JlcG9ydC4kQ2FwdGlvbjtcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5SZXBvcnRFeGVjdXRlKGNvbHVtbnNSZXBvcnQpLnN1YnNjcmliZSgocmVwb3J0KSA9PiB7XG4gICAgICAgICAgICB0aGlzLmthbmJhbkNvbHVtbnMgPSByZXBvcnQuTW9EYXRhTGlzdDtcbiAgICAgICAgICAgIHRoaXMuX2NoYW5nZURldGVjdCgpO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5mb3JtU2V0dGluZy5WaWV3LkNvbnRyb2xJbmZvLmZvckVhY2goKGMpID0+IChjLklubGluZUVkaXRNb2RlID0gdHJ1ZSkpO1xuICAgICAgICBjb25zdCBhc3NpZ25lZXNSZXBvcnQgPSB0aGlzLnZpZXdTZXR0aW5nLkFzc2lnbmVlc1JlcG9ydC4kQ2FwdGlvbjtcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5SZXBvcnRFeGVjdXRlKGFzc2lnbmVlc1JlcG9ydCkuc3Vic2NyaWJlKChyZXBvcnQpID0+IHtcbiAgICAgICAgICAgIHRoaXMuYWxsQXZhaWxhYmxlQXNzaWduZWVzID0gcmVwb3J0Lk1vRGF0YUxpc3Q7XG4gICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3QoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy52aWV3U2V0dGluZyA9IHtcbiAgICAgICAgICAgIC4uLnRoaXMudmlld1NldHRpbmcsXG4gICAgICAgICAgICAuLi50aGlzLl9maW5kQ29sdW1uKHRoaXMuYWxsQ29sdW1ucywgW1xuICAgICAgICAgICAgICAgIHRoaXMudmlld1NldHRpbmcuQ292ZXIsXG4gICAgICAgICAgICAgICAgdGhpcy52aWV3U2V0dGluZy5TdGF0ZSxcbiAgICAgICAgICAgICAgICB0aGlzLnZpZXdTZXR0aW5nLkNhcHRpb25cbiAgICAgICAgICAgIF0pXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgb25BZGROZXdDb2x1bW4oKTogdm9pZCB7XG4gICAgICAgIHRoaXMua2FuYmFuQ29sdW1ucy5wdXNoKHRoaXMubmV3Q29sdW1uKTtcbiAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgdGhpcy5fcmVzZXROZXdDb2x1bW4oKTtcbiAgICAgICAgdGhpcy5fc2Nyb2xsSW5wdXRJbnRvVmlldygpO1xuICAgIH1cblxuICAgIG9uQWN0aXZlTmV3Q29sdW1uTW9kZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY2hhbmdlTmV3Q29sdW1uTW9kZSh0cnVlKTtcbiAgICB9XG5cbiAgICBvbkNhbmNlbE5ld0NvbHVtbigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY2hhbmdlTmV3Q29sdW1uTW9kZShmYWxzZSk7XG4gICAgICAgIHRoaXMuX3Jlc2V0TmV3Q29sdW1uKCk7XG4gICAgfVxuXG4gICAgb25Jbml0TmV3Q2FyZChncm91cGJ5OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fcmVzZXROZXdDYXJkKCk7XG4gICAgICAgIHRoaXMubmV3Q2FyZFt0aGlzLmdyb3VwYnlQcm9wZXJ0eV0gPSBncm91cGJ5O1xuICAgIH1cblxuICAgIG9uQWRkTmV3Q2FyZChlKTogdm9pZCB7XG4gICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5fYWRkTmV3Q2FyZCgpO1xuICAgIH1cblxuICAgIG9uTmV3Q2FyZElucHV0Rm9jdXNvdXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm5ld0NhcmQuJENhcHRpb24pIHtcbiAgICAgICAgICAgIHRoaXMuX2FkZE5ld0NhcmQoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX2NhbmNlbE5ld0NhcmQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQ2FuY2VsTmV3Q2FyZChlOiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5fY2FuY2VsTmV3Q2FyZCgpO1xuICAgIH1cblxuICAgIG9uRHJvcChldmVudCwgaXNDb2x1bW4/OiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGxldCBwcmV2aW91c0luZGV4O1xuICAgICAgICBsZXQgY3VycmVudEluZGV4O1xuICAgICAgICBjb25zdCBhcnJheSA9IGV2ZW50LmNvbnRhaW5lci5kYXRhO1xuXG4gICAgICAgIGlmIChpc0NvbHVtbikge1xuICAgICAgICAgICAgcHJldmlvdXNJbmRleCA9IGV2ZW50LnByZXZpb3VzSW5kZXg7XG4gICAgICAgICAgICBjdXJyZW50SW5kZXggPSBldmVudC5jdXJyZW50SW5kZXg7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBkcmFnZ2VkSXRlbUlkID0gdGhpcy5kcm9wQWN0aW9uVG9kby5kcmFnZ2VkSWQ7XG4gICAgICAgICAgICBpZiAoIWRyYWdnZWRJdGVtSWQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBkcmFnZ2VkSXRlbSA9IHRoaXMuX2dldE1vQnlJZChkcmFnZ2VkSXRlbUlkKTtcbiAgICAgICAgICAgIGNvbnN0IHRhcmdldFN0YXRlID0gdGhpcy5kcm9wQWN0aW9uVG9kby50YXJnZXRTdGF0ZTtcbiAgICAgICAgICAgIHByZXZpb3VzSW5kZXggPSBhcnJheS5pbmRleE9mKGRyYWdnZWRJdGVtKTtcbiAgICAgICAgICAgIGN1cnJlbnRJbmRleCA9IHRoaXMuZHJvcEFjdGlvblRvZG8udGFyZ2V0SW5kZXg7XG4gICAgICAgICAgICBkcmFnZ2VkSXRlbS5TdGF0ZSA9IHRhcmdldFN0YXRlO1xuICAgICAgICAgICAgdGhpcy5fc3RvcERyYWdnaW5nKCk7XG4gICAgICAgIH1cblxuICAgICAgICBtb3ZlSXRlbUluQXJyYXkoYXJyYXksIHByZXZpb3VzSW5kZXgsIGN1cnJlbnRJbmRleCk7XG4gICAgfVxuXG4gICAgb25EcmFnTW92ZShldmVudCwgZHJhZ2dlZE1vLCBkcmFnZ2VkSW5kZXg6IG51bWJlciwgdGFyZ2V0U3RhdGU6IE1ldGFvYmplY3REYXRhTW9kZWwpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZWxlbWVudEZyb21Qb2ludCA9IGRvY3VtZW50LmVsZW1lbnRGcm9tUG9pbnQoZXZlbnQucG9pbnRlclBvc2l0aW9uLngsIGV2ZW50LnBvaW50ZXJQb3NpdGlvbi55KTtcblxuICAgICAgICBpZiAodGFyZ2V0U3RhdGUpIHtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWVsZW1lbnRGcm9tUG9pbnQpIHtcbiAgICAgICAgICAgIHRoaXMuX3N0b3BEcmFnZ2luZygpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHRhcmdldE5vZGVFbGVtZW50ID0gZWxlbWVudEZyb21Qb2ludC5jbG9zZXN0KCdbc3RhdGVdJyk7XG4gICAgICAgIGlmICghdGFyZ2V0Tm9kZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMuX3N0b3BEcmFnZ2luZygpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZHJvcEFjdGlvblRvZG8gPSB7XG4gICAgICAgICAgICBkcmFnZ2VkSWQ6IGRyYWdnZWRNby5JZCxcbiAgICAgICAgICAgIHRhcmdldElkOiB0YXJnZXROb2RlRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2lkJyksXG4gICAgICAgICAgICB0YXJnZXRTdGF0ZTogbnVsbCxcbiAgICAgICAgICAgIHRhcmdldEluZGV4OiBOdW1iZXIodGFyZ2V0Tm9kZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCdpbmRleCcpKVxuICAgICAgICB9O1xuICAgICAgICBjb25zdCB0YXJnZXRSZWN0ID0gdGFyZ2V0Tm9kZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IG9uZVRoaXJkID0gdGFyZ2V0UmVjdC5oZWlnaHQgLyAzO1xuXG4gICAgICAgIGNvbnN0IGlzQ2FyZFRhcmdldCA9ICF0YXJnZXROb2RlRWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoJ2NvbHVtbicpO1xuXG4gICAgICAgIGNvbnN0IGlzQmVmb3JlID0gZXZlbnQucG9pbnRlclBvc2l0aW9uLnkgLSB0YXJnZXRSZWN0LnRvcCA8IG9uZVRoaXJkICYmIGlzQ2FyZFRhcmdldDtcblxuICAgICAgICBjb25zdCBpc0FmdGVyID0gZXZlbnQucG9pbnRlclBvc2l0aW9uLnkgLSB0YXJnZXRSZWN0LnRvcCA+IDIgKiBvbmVUaGlyZCAmJiBpc0NhcmRUYXJnZXQ7XG5cbiAgICAgICAgY29uc3QgaXNJbnNpZGUgPSAhaXNDYXJkVGFyZ2V0O1xuXG4gICAgICAgIGNvbnN0IHRhcmdldEluZGV4ID0gdGhpcy5kcm9wQWN0aW9uVG9kby50YXJnZXRJbmRleCA/PyAtMTtcbiAgICAgICAgY29uc3QgdGFyZ2V0TW8gPSB0aGlzLm1vRGF0YUxpc3RbdGFyZ2V0SW5kZXhdO1xuXG4gICAgICAgIGlmIChpc0NhcmRUYXJnZXQpIHtcbiAgICAgICAgICAgIHRoaXMuZHJvcEFjdGlvblRvZG8udGFyZ2V0U3RhdGUgPSB0YXJnZXRNb1t0aGlzLnZpZXdTZXR0aW5nLlN0YXRlXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZHJvcEFjdGlvblRvZG8udGFyZ2V0U3RhdGUgPSB7XG4gICAgICAgICAgICAgICAgJENhcHRpb246IHRhcmdldE5vZGVFbGVtZW50LmdldEF0dHJpYnV0ZSgnc3RhdGUnKSEsXG4gICAgICAgICAgICAgICAgSWQ6IHRhcmdldE5vZGVFbGVtZW50LmdldEF0dHJpYnV0ZSgnaWQnKSEsXG4gICAgICAgICAgICAgICAgJFR5cGVEZWZJZDogZHJhZ2dlZE1vW3RoaXMudmlld1NldHRpbmcuU3RhdGVdPy4kVHlwZURlZklkXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc0JlZm9yZSkge1xuICAgICAgICAgICAgdGhpcy5kcm9wQWN0aW9uVG9kby5hY3Rpb24gPSAnYmVmb3JlJztcbiAgICAgICAgICAgIHRoaXMuZHJvcEFjdGlvblRvZG8udGFyZ2V0SW5kZXggPSBkcmFnZ2VkSW5kZXggPiB0YXJnZXRJbmRleCA/IHRhcmdldEluZGV4IDogdGFyZ2V0SW5kZXggLSAxO1xuICAgICAgICB9IGVsc2UgaWYgKGlzQWZ0ZXIpIHtcbiAgICAgICAgICAgIHRoaXMuZHJvcEFjdGlvblRvZG8uYWN0aW9uID0gJ2FmdGVyJztcbiAgICAgICAgICAgIHRoaXMuZHJvcEFjdGlvblRvZG8udGFyZ2V0SW5kZXggPSBkcmFnZ2VkSW5kZXggPCB0YXJnZXRJbmRleCA/IHRhcmdldEluZGV4IDogdGFyZ2V0SW5kZXggKyAxO1xuICAgICAgICB9IGVsc2UgaWYgKGlzSW5zaWRlKSB7XG4gICAgICAgICAgICB0aGlzLmRyb3BBY3Rpb25Ub2RvLmFjdGlvbiA9ICdpbnNpZGUnO1xuICAgICAgICAgICAgdGhpcy5kcm9wQWN0aW9uVG9kby50YXJnZXRJbmRleCA9IDA7XG4gICAgICAgIH1cbiAgICAgICAgY29uc29sZS5sb2codGhpcy5kcm9wQWN0aW9uVG9kby50YXJnZXRTdGF0ZSk7XG4gICAgICAgIHRoaXMuX3Nob3dEcmFnSW5mbygpO1xuICAgIH1cbiAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3QoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfc3RvcERyYWdnaW5nKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9jbGVhckRyYWdJbmZvKCk7XG4gICAgICAgIHRoaXMuX3Jlc2V0RHJvcEFjdGlvblRvZG8oKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9jaGFuZ2VOZXdDb2x1bW5Nb2RlKG1vZGU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc05ld0NvbHVtbk1vZGUgPSBtb2RlO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3Jlc2V0RHJvcEFjdGlvblRvZG8oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZHJvcEFjdGlvblRvZG8gPSB7XG4gICAgICAgICAgICB0YXJnZXRJZDogbnVsbCxcbiAgICAgICAgICAgIGRyYWdnZWRJZDogbnVsbCxcbiAgICAgICAgICAgIHRhcmdldFN0YXRlOiBudWxsLFxuICAgICAgICAgICAgdGFyZ2V0SW5kZXg6IG51bGwsXG4gICAgICAgICAgICBhY3Rpb246IG51bGxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9zY3JvbGxJbnB1dEludG9WaWV3KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBpbnB1dEVsOiBIVE1MSW5wdXRFbGVtZW50ID0gdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGlucHV0RWwuZm9jdXMoKTtcbiAgICAgICAgaW5wdXRFbC5zY3JvbGxJbnRvVmlldyh7IGlubGluZTogJ2VuZCcgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfcmVzZXROZXdDb2x1bW4oKTogdm9pZCB7XG4gICAgICAgIHRoaXMubmV3Q29sdW1uID0geyBJZDogJycsICRDYXB0aW9uOiAnJyB9O1xuICAgIH1cblxuICAgIHByaXZhdGUgX2NsZWFyRHJhZ0luZm8oZHJvcHBlZCA9IGZhbHNlKTogdm9pZCB7XG4gICAgICAgIGlmIChkcm9wcGVkKSB7XG4gICAgICAgICAgICB0aGlzLl9yZXNldERyb3BBY3Rpb25Ub2RvKCk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZWxEb20gPSB0aGlzLl9lbC5uYXRpdmVFbGVtZW50O1xuICAgICAgICBlbERvbVxuICAgICAgICAgICAgLnF1ZXJ5U2VsZWN0b3JBbGwoJy5kcm9wLWJlZm9yZScpXG4gICAgICAgICAgICAuZm9yRWFjaCgoZWxlbWVudCkgPT4gdGhpcy5fcmVuZGVyZXIyLnJlbW92ZUNsYXNzKGVsZW1lbnQsICdkcm9wLWJlZm9yZScpKTtcbiAgICAgICAgZWxEb20ucXVlcnlTZWxlY3RvckFsbCgnLmRyb3AtYWZ0ZXInKS5mb3JFYWNoKChlbGVtZW50KSA9PiB0aGlzLl9yZW5kZXJlcjIucmVtb3ZlQ2xhc3MoZWxlbWVudCwgJ2Ryb3AtYWZ0ZXInKSk7XG4gICAgICAgIGVsRG9tXG4gICAgICAgICAgICAucXVlcnlTZWxlY3RvckFsbCgnLmRyb3AtaW5zaWRlJylcbiAgICAgICAgICAgIC5mb3JFYWNoKChlbGVtZW50KSA9PiB0aGlzLl9yZW5kZXJlcjIucmVtb3ZlQ2xhc3MoZWxlbWVudCwgJ2Ryb3AtaW5zaWRlJykpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3Nob3dEcmFnSW5mbygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY2xlYXJEcmFnSW5mbygpO1xuICAgICAgICBpZiAodGhpcy5kcm9wQWN0aW9uVG9kby50YXJnZXRJZCkge1xuICAgICAgICAgICAgY29uc3QgdGFyZ2V0Tm9kZUVsZW1lbnQgPSB0aGlzLl9lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJyMnICsgdGhpcy5kcm9wQWN0aW9uVG9kby50YXJnZXRJZCk7XG4gICAgICAgICAgICBpZiAoIXRhcmdldE5vZGVFbGVtZW50KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fcmVzZXREcm9wQWN0aW9uVG9kbygpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyMi5hZGRDbGFzcyh0YXJnZXROb2RlRWxlbWVudCwgJ2Ryb3AtJyArIHRoaXMuZHJvcEFjdGlvblRvZG8/LmFjdGlvbik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIF9hZGROZXdDYXJkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1vRGF0YUxpc3QucHVzaCh0aGlzLm5ld0NhcmQpO1xuICAgICAgICBjb25zdCBjdXJyZW50R3JvdXBieSA9IHRoaXMubmV3Q2FyZFt0aGlzLmdyb3VwYnlQcm9wZXJ0eV07XG4gICAgICAgIHRoaXMub25Jbml0TmV3Q2FyZChjdXJyZW50R3JvdXBieSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfcmVzZXROZXdDYXJkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm5ld0NhcmQgPSB7IElkOiBudWxsLCAkQ2FwdGlvbjogbnVsbCB9O1xuICAgIH1cblxuICAgIHByaXZhdGUgX2NhbmNlbE5ld0NhcmQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3Jlc2V0TmV3Q2FyZCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2dldE1vQnlJZChpZDogc3RyaW5nKTogTWV0YW9iamVjdERhdGFNb2RlbCB7XG4gICAgICAgIHJldHVybiB0aGlzLm1vRGF0YUxpc3QuZmluZCgoYykgPT4gYy5JZCA9PT0gaWQpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2ZpbmRDb2x1bW4oYWxsQ29sdW1ucywgY29sdW1uc05hbWU6IHN0cmluZ1tdKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgY29sdW1ucyA9IHt9O1xuICAgICAgICBjb2x1bW5zTmFtZS5mb3JFYWNoKChuYW1lKSA9PiB7XG4gICAgICAgICAgICBjb2x1bW5zW25hbWUgKyAnQ29sdW1uJ10gPSB0aGlzLl9maW5kQ29sdW1uQnlEYk5hbWUudHJhbnNmb3JtKHRoaXMuYWxsQ29sdW1ucywgbmFtZSk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gY29sdW1ucztcbiAgICB9XG59XG4iLCI8ZmQtbGF5b3V0LXBhbmVsPlxuICAgIDxmZC1sYXlvdXQtcGFuZWwtYm9keSBbYmxlZWRdPVwidHJ1ZVwiPlxuICAgICAgICA8dGFibGUgZmQtdGFibGUgKm5nSWY9XCJpc0NoZWNrTGlzdFwiPlxuICAgICAgICAgICAgPHRoZWFkIGZkLXRhYmxlLWhlYWRlcj5cbiAgICAgICAgICAgICAgICA8dHIgZmQtdGFibGUtcm93PlxuICAgICAgICAgICAgICAgICAgICA8dGggZmQtdGFibGUtY2VsbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1jaGVja2JveFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJhbGxDaGVja2JveFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiYWxsQ2hlY2tlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25BbGxDaGVja2JveCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3sgJ0FsbCcgfCBiYmJUcmFuc2xhdGUgfX08L2ZkLWNoZWNrYm94XG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgIDwvdGFibGU+XG4gICAgPC9mZC1sYXlvdXQtcGFuZWwtYm9keT5cbjwvZmQtbGF5b3V0LXBhbmVsPlxuXG48ZmQtbGF5b3V0LWdyaWRcbiAgICAqbmdJZj1cIm1vRGF0YUxpc3Q/Lmxlbmd0aDsgZWxzZSBub0RhdGFcIlxuICAgIGNsYXNzPVwiY29sdW1uc1wiXG4gICAgY2RrRHJvcExpc3RcbiAgICBjZGtEcm9wTGlzdE9yaWVudGF0aW9uPVwiaG9yaXpvbnRhbFwiXG4gICAgW2Nka0Ryb3BMaXN0RGF0YV09XCJrYW5iYW5Db2x1bW5zXCJcbiAgICBbaWRdPVwiJyRSb290J1wiXG4gICAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJvbkRyb3AoJGV2ZW50LCB0cnVlKVwiXG4+XG4gICAgPGRpdlxuICAgICAgICAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGthbmJhbkNvbHVtbnM7IGxldCBjb2x1bW5JbmRleCA9IGluZGV4XCJcbiAgICAgICAgW2ZkTGF5b3V0R3JpZENvbF09XCIxMlwiXG4gICAgICAgIFtjb2xNZF09XCI2XCJcbiAgICAgICAgW2NvbExnXT1cIjRcIlxuICAgICAgICBbY29sWGxdPVwiM1wiXG4gICAgICAgIGNsYXNzPVwiY29sdW1uXCJcbiAgICAgICAgW2lkXT1cImNvbHVtbi5JZFwiXG4gICAgICAgIFthdHRyLnN0YXRlXT1cImNvbHVtbi4kQ2FwdGlvblwiXG4gICAgICAgIGNka0RyYWdcbiAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICAgICAgY29sdW1uQ2FyZDtcbiAgICAgICAgICAgICAgICBjb250ZXh0OiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbHVtbjogY29sdW1uLFxuICAgICAgICAgICAgICAgICAgICBjb2x1bW5JbmRleDogY29sdW1uSW5kZXhcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBcIlxuICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdlxuICAgICAgICBbZmRMYXlvdXRHcmlkQ29sXT1cIjEyXCJcbiAgICAgICAgW2NvbE1kXT1cIjZcIlxuICAgICAgICBbY29sTGddPVwiNFwiXG4gICAgICAgIFtjb2xYbF09XCIzXCJcbiAgICAgICAgY2xhc3M9XCJuZXdDb2x1bW5cIlxuICAgICAgICAoY2xpY2spPVwib25BY3RpdmVOZXdDb2x1bW5Nb2RlKClcIlxuICAgICAgICAqbmdJZj1cIiFpc05ld0NvbHVtbk1vZGU7IGVsc2UgbmV3Q29sdW1uSW5wdXRcIlxuICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDxzcGFuPtiz2KrZiNmGINis2K/bjNivPC9zcGFuPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8bmctdGVtcGxhdGUgI25ld0NvbHVtbklucHV0PlxuICAgICAgICA8ZGl2IFtmZExheW91dEdyaWRDb2xdPVwiMTJcIiBbY29sTWRdPVwiNlwiIFtjb2xMZ109XCI0XCIgW2NvbFhsXT1cIjNcIj5cbiAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICNpbnB1dEVsXG4gICAgICAgICAgICAgICAgZmQtZm9ybS1jb250cm9sXG4gICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgIGF1dG9mb2N1c1xuICAgICAgICAgICAgICAgIChmb2N1c291dCk9XCJvbkNhbmNlbE5ld0NvbHVtbigpXCJcbiAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cIm5ld0NvbHVtbi4kQ2FwdGlvblwiXG4gICAgICAgICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwib25BZGROZXdDb2x1bW4oKVwiXG4gICAgICAgICAgICAgICAgaWQ9XCJuZXctY29sdW1uLW5hbWVcIlxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiINmG2KfZhVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuPC9mZC1sYXlvdXQtZ3JpZD5cblxuPCEtLW5vRGF0YS0tPlxuPG5nLXRlbXBsYXRlICNub0RhdGE+XG4gICAgPGJzdS1uby1kYXRhPjwvYnN1LW5vLWRhdGE+XG48L25nLXRlbXBsYXRlPlxuXG48IS0tY29sdW1uIGNhcmQtLT5cbjxuZy10ZW1wbGF0ZSAjY29sdW1uQ2FyZCBsZXQtY29sdW1uPVwiY29sdW1uXCIgbGV0LWNvbHVtbkluZGV4PVwiY29sdW1uSW5kZXhcIj5cbiAgICA8ZmQtY2FyZCBjYXJkVHlwZT1cInF1aWNrVmlld1wiIGNsYXNzPVwiZG9jcy1mbGV4LWl0ZW0tbWFyZ2luXCIgZWxsaXBzaWZ5PlxuICAgICAgICA8ZmQtY2FyZC1oZWFkZXI+XG4gICAgICAgICAgICA8c3BhbiBmZC1jYXJkLXRpdGxlPnt7IGNvbHVtbi4kQ2FwdGlvbiB9fTwvc3Bhbj5cbiAgICAgICAgPC9mZC1jYXJkLWhlYWRlcj5cbiAgICAgICAgPGZkLWNhcmQtY29udGVudFxuICAgICAgICAgICAgY2RrRHJvcExpc3RcbiAgICAgICAgICAgIChjZGtEcm9wTGlzdERyb3BwZWQpPVwib25Ecm9wKCRldmVudClcIlxuICAgICAgICAgICAgW2Nka0Ryb3BMaXN0U29ydGluZ0Rpc2FibGVkXT1cInRydWVcIlxuICAgICAgICAgICAgW2Nka0Ryb3BMaXN0RGF0YV09XCJtb0RhdGFMaXN0XCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbW8gb2YgbW9EYXRhTGlzdDsgbGV0IGluZGV4ID0gaW5kZXhcIj5cbiAgICAgICAgICAgICAgICA8Ymsta2FuYmFuLWNhcmRcbiAgICAgICAgICAgICAgICAgICAgW21vXT1cIm1vXCJcbiAgICAgICAgICAgICAgICAgICAgW3ZpZXdTZXR0aW5nXT1cInZpZXdTZXR0aW5nXCJcbiAgICAgICAgICAgICAgICAgICAgW2Zvcm1TZXR0aW5nXT1cImZvcm1TZXR0aW5nXCJcbiAgICAgICAgICAgICAgICAgICAgW2FsbEF2YWlsYWJsZUFzc2lnbmVlc109XCJhbGxBdmFpbGFibGVBc3NpZ25lZXNcIlxuICAgICAgICAgICAgICAgICAgICBbaW5kZXhdPVwiaW5kZXhcIlxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIm1vW3ZpZXdTZXR0aW5nLlN0YXRlXS4kQ2FwdGlvbiA9PT0gY29sdW1uLiRDYXB0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuaWRdPVwibW8uSWRcIlxuICAgICAgICAgICAgICAgICAgICBbaW5saW5lRWRpdE1vZGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtpc0NoZWNrZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLnN0YXRlXT1cImNvbHVtbi4kQ2FwdGlvblwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmluZGV4XT1cImluZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnNlbGVjdGVkXT1cIm1vLiRJc0NoZWNrZWRcIlxuICAgICAgICAgICAgICAgICAgICAoY2RrRHJhZ01vdmVkKT1cIm9uRHJhZ01vdmUoJGV2ZW50LCBtbywgaW5kZXgsIGNvbHVtbilcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25Sb3dDaGVjayh7bW8sIGluZGV4fSlcIlxuICAgICAgICAgICAgICAgICAgICAoZGJsY2xpY2spPVwib25Sb3dDbGljayh7bW8sIGluZGV4fSlcIlxuICAgICAgICAgICAgICAgICAgICBjZGtEcmFnXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDwvYmsta2FuYmFuLWNhcmQ+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9mZC1jYXJkLWNvbnRlbnQ+XG4gICAgICAgIDxmZC1jYXJkLWZvb3RlciBjbGFzcz1cImNvbHVtbi1mb290ZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJuZXctY2FyZFwiICpuZ0lmPVwibmV3Q2FyZFtncm91cGJ5UHJvcGVydHldID09PSBjb2x1bW4uJENhcHRpb247IGVsc2UgYWRkTmV3Q2FyZFwiPlxuICAgICAgICAgICAgICAgIDxmZC1jYXJkPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGZkLWZvcm0taXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZXh0YXJlYVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkLWZvcm0tY29udHJvbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdXRvZm9jdXNdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJuZXdDYXJkLiRDYXB0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJvbkFkZE5ld0NhcmQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGZvY3Vzb3V0KT1cIm9uTmV3Q2FyZElucHV0Rm9jdXNvdXQoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidUaXRsZScgfCBiYmJUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvdGV4dGFyZWE+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZmQtY2FyZD5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmV3LWNhcmQtYWN0aW9uc1wiPlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBmZC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkFkZE5ld0NhcmQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBmZFR5cGU9XCJlbXBoYXNpemVkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYWRkLWNhcmQtYnRuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCIn2KfZgdiy2YjYr9mGJ1wiXG4gICAgICAgICAgICAgICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPGZkLWljb24gKG1vdXNlZG93bik9XCJvbkNhbmNlbE5ld0NhcmQoJGV2ZW50KVwiIGdseXBoPVwiZGVjbGluZVwiPjwvZmQtaWNvbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI2FkZE5ld0NhcmQ+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFkZC1uZXctY2FyZFwiIChjbGljayk9XCJvbkluaXROZXdDYXJkKGNvbHVtbi4kQ2FwdGlvbilcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmQtaWNvbiBnbHlwaD1cImFkZFwiPjwvZmQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgINqp2KfYsdiqINis2K/bjNivXG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvZmQtY2FyZC1mb290ZXI+XG4gICAgPC9mZC1jYXJkPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
244
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2FuYmFuLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Eta2FuYmFuL3NyYy9saWIva2FuYmFuLXZpZXcva2FuYmFuLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Eta2FuYmFuL3NyYy9saWIva2FuYmFuLXZpZXcva2FuYmFuLXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFekQsT0FBTyxFQUF1Qix1QkFBdUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7O0FBVXBGLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSx1QkFBMEM7SUFObkY7O1FBU2Esb0JBQWUsR0FBRyxPQUFPLENBQUM7UUFHbkMsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFDeEIsWUFBTyxHQUFRLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDNUMsY0FBUyxHQUFRLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7S0F3T2pEO0lBdE9HLFFBQVE7UUFDSixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFakIsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDO1FBQzlELElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2xFLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFB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TyxHQUFHLEVBQUUsQ0FBQztRQUNuQixXQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDekIsT0FBTyxDQUFDLElBQUksR0FBRyxRQUFRLENBQUMsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDekYsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLE9BQU8sQ0FBQztJQUNuQixDQUFDOztnSEEvT1EsbUJBQW1CO29HQUFuQixtQkFBbUIscU5BQ0UsVUFBVSxvRENkNUMsdytMQTJKQTsyRkQ5SWEsbUJBQW1CO2tCQU4vQixTQUFTOytCQUNJLGdCQUFnQixtQkFHVCx1QkFBdUIsQ0FBQyxNQUFNOzhCQUdILE9BQU87c0JBQWxELFNBQVM7dUJBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFDakMsYUFBYTtzQkFBckIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IG1vdmVJdGVtSW5BcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xyXG5cclxuaW1wb3J0IHsgTWV0YW9iamVjdERhdGFNb2RlbCwgUmVwb3J0Vmlld0Jhc2VDb21wb25lbnQgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcbmltcG9ydCB7IEthbmJhblZpZXdTZXR0aW5nIH0gZnJvbSAnLi4vTW9kZWxzL2thbmJhbi12aWV3LXNldHRpbmcuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgRHJvcEluZm8gfSBmcm9tICcuLi9Nb2RlbHMvZHJvcC1pbmZvJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdiay1rYW5iYW4tdmlldycsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4va2FuYmFuLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4va2FuYmFuLXZpZXcuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBLYW5iYW5WaWV3Q29tcG9uZW50IGV4dGVuZHMgUmVwb3J0Vmlld0Jhc2VDb21wb25lbnQ8S2FuYmFuVmlld1NldHRpbmc+IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBWaWV3Q2hpbGQoJ2lucHV0RWwnLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSkgaW5wdXRFbDogRWxlbWVudFJlZjxhbnk+O1xyXG4gICAgQElucHV0KCkga2FuYmFuQ29sdW1uczogTWV0YW9iamVjdERhdGFNb2RlbFtdO1xyXG4gICAgQElucHV0KCkgZ3JvdXBieVByb3BlcnR5ID0gJ1N0YXRlJztcclxuICAgIGRyb3BBY3Rpb25Ub2RvOiBEcm9wSW5mbztcclxuICAgIGFsbEF2YWlsYWJsZUFzc2lnbmVlczogTWV0YW9iamVjdERhdGFNb2RlbFtdO1xyXG4gICAgaXNOZXdDb2x1bW5Nb2RlID0gZmFsc2U7XHJcbiAgICBuZXdDYXJkOiBhbnkgPSB7IElkOiBudWxsLCAkQ2FwdGlvbjogbnVsbCB9O1xyXG4gICAgbmV3Q29sdW1uOiBhbnkgPSB7IElkOiBudWxsLCAkQ2FwdGlvbjogbnVsbCB9O1xyXG5cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcblxyXG4gICAgICAgIGNvbnN0IGNvbHVtbnNSZXBvcnQgPSB0aGlzLnZpZXdTZXR0aW5nLkNvbHVtbnNSZXBvcnQuJENhcHRpb247XHJcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5SZXBvcnRFeGVjdXRlKGNvbHVtbnNSZXBvcnQpLnN1YnNjcmliZSgocmVwb3J0KSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMua2FuYmFuQ29sdW1ucyA9IHJlcG9ydC5Nb0RhdGFMaXN0O1xyXG4gICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3QoKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLmZvcm1TZXR0aW5nLlZpZXcuQ29udHJvbEluZm8uZm9yRWFjaCgoYykgPT4gKGMuSW5saW5lRWRpdE1vZGUgPSB0cnVlKSk7XHJcbiAgICAgICAgY29uc3QgYXNzaWduZWVzUmVwb3J0ID0gdGhpcy52aWV3U2V0dGluZy5Bc3NpZ25lZXNSZXBvcnQuJENhcHRpb247XHJcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5SZXBvcnRFeGVjdXRlKGFzc2lnbmVlc1JlcG9ydCkuc3Vic2NyaWJlKChyZXBvcnQpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5hbGxBdmFpbGFibGVBc3NpZ25lZXMgPSByZXBvcnQuTW9EYXRhTGlzdDtcclxuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0KCk7XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMudmlld1NldHRpbmcgPSB7XHJcbiAgICAgICAgICAgIC4uLnRoaXMudmlld1NldHRpbmcsXHJcbiAgICAgICAgICAgIC4uLnRoaXMuX2ZpbmRDb2x1bW4odGhpcy5hbGxDb2x1bW5zLCBbXHJcbiAgICAgICAgICAgICAgICB0aGlzLnZpZXdTZXR0aW5nLkNvdmVyLFxyXG4gICAgICAgICAgICAgICAgdGhpcy52aWV3U2V0dGluZy5TdGF0ZSxcclxuICAgICAgICAgICAgICAgIHRoaXMudmlld1NldHRpbmcuQ2FwdGlvblxyXG4gICAgICAgICAgICBdKVxyXG4gICAgICAgIH07XHJcbiAgICB9XHJcblxyXG4gICAgb25BZGROZXdDb2x1bW4oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5rYW5iYW5Db2x1bW5zLnB1c2godGhpcy5uZXdDb2x1bW4pO1xyXG4gICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgdGhpcy5fcmVzZXROZXdDb2x1bW4oKTtcclxuICAgICAgICB0aGlzLl9zY3JvbGxJbnB1dEludG9WaWV3KCk7XHJcbiAgICB9XHJcblxyXG4gICAgb25BY3RpdmVOZXdDb2x1bW5Nb2RlKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX2NoYW5nZU5ld0NvbHVtbk1vZGUodHJ1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgb25DYW5jZWxOZXdDb2x1bW4oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fY2hhbmdlTmV3Q29sdW1uTW9kZShmYWxzZSk7XHJcbiAgICAgICAgdGhpcy5fcmVzZXROZXdDb2x1bW4oKTtcclxuICAgIH1cclxuXHJcbiAgICBvbkluaXROZXdDYXJkKGdyb3VwYnk6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3Jlc2V0TmV3Q2FyZCgpO1xyXG4gICAgICAgIHRoaXMubmV3Q2FyZFt0aGlzLmdyb3VwYnlQcm9wZXJ0eV0gPSBncm91cGJ5O1xyXG4gICAgfVxyXG5cclxuICAgIG9uQWRkTmV3Q2FyZChlKTogdm9pZCB7XHJcbiAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgICAgdGhpcy5fYWRkTmV3Q2FyZCgpO1xyXG4gICAgfVxyXG5cclxuICAgIG9uTmV3Q2FyZElucHV0Rm9jdXNvdXQoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMubmV3Q2FyZC4kQ2FwdGlvbikge1xyXG4gICAgICAgICAgICB0aGlzLl9hZGROZXdDYXJkKCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5fY2FuY2VsTmV3Q2FyZCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBvbkNhbmNlbE5ld0NhcmQoZTogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICAgIHRoaXMuX2NhbmNlbE5ld0NhcmQoKTtcclxuICAgIH1cclxuXHJcbiAgICBvbkRyb3AoZXZlbnQsIGlzQ29sdW1uPzogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIGxldCBwcmV2aW91c0luZGV4O1xyXG4gICAgICAgIGxldCBjdXJyZW50SW5kZXg7XHJcbiAgICAgICAgY29uc3QgYXJyYXkgPSBldmVudC5jb250YWluZXIuZGF0YTtcclxuXHJcbiAgICAgICAgaWYgKGlzQ29sdW1uKSB7XHJcbiAgICAgICAgICAgIHByZXZpb3VzSW5kZXggPSBldmVudC5wcmV2aW91c0luZGV4O1xyXG4gICAgICAgICAgICBjdXJyZW50SW5kZXggPSBldmVudC5jdXJyZW50SW5kZXg7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc3QgZHJhZ2dlZEl0ZW1JZCA9IHRoaXMuZHJvcEFjdGlvblRvZG8uZHJhZ2dlZElkO1xyXG4gICAgICAgICAgICBpZiAoIWRyYWdnZWRJdGVtSWQpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBjb25zdCBkcmFnZ2VkSXRlbSA9IHRoaXMuX2dldE1vQnlJZChkcmFnZ2VkSXRlbUlkKTtcclxuICAgICAgICAgICAgY29uc3QgdGFyZ2V0U3RhdGUgPSB0aGlzLmRyb3BBY3Rpb25Ub2RvLnRhcmdldFN0YXRlO1xyXG4gICAgICAgICAgICBwcmV2aW91c0luZGV4ID0gYXJyYXkuaW5kZXhPZihkcmFnZ2VkSXRlbSk7XHJcbiAgICAgICAgICAgIGN1cnJlbnRJbmRleCA9IHRoaXMuZHJvcEFjdGlvblRvZG8udGFyZ2V0SW5kZXg7XHJcbiAgICAgICAgICAgIGRyYWdnZWRJdGVtLlN0YXRlID0gdGFyZ2V0U3RhdGU7XHJcbiAgICAgICAgICAgIHRoaXMuX3N0b3BEcmFnZ2luZygpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbW92ZUl0ZW1JbkFycmF5KGFycmF5LCBwcmV2aW91c0luZGV4LCBjdXJyZW50SW5kZXgpO1xyXG4gICAgfVxyXG5cclxuICAgIG9uRHJhZ01vdmUoZXZlbnQsIGRyYWdnZWRNbywgZHJhZ2dlZEluZGV4OiBudW1iZXIsIHRhcmdldFN0YXRlOiBNZXRhb2JqZWN0RGF0YU1vZGVsKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgZWxlbWVudEZyb21Qb2ludCA9IGRvY3VtZW50LmVsZW1lbnRGcm9tUG9pbnQoZXZlbnQucG9pbnRlclBvc2l0aW9uLngsIGV2ZW50LnBvaW50ZXJQb3NpdGlvbi55KTtcclxuXHJcbiAgICAgICAgaWYgKHRhcmdldFN0YXRlKSB7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICghZWxlbWVudEZyb21Qb2ludCkge1xyXG4gICAgICAgICAgICB0aGlzLl9zdG9wRHJhZ2dpbmcoKTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCB0YXJnZXROb2RlRWxlbWVudCA9IGVsZW1lbnRGcm9tUG9pbnQuY2xvc2VzdCgnW3N0YXRlXScpO1xyXG4gICAgICAgIGlmICghdGFyZ2V0Tm9kZUVsZW1lbnQpIHtcclxuICAgICAgICAgICAgdGhpcy5fc3RvcERyYWdnaW5nKCk7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5kcm9wQWN0aW9uVG9kbyA9IHtcclxuICAgICAgICAgICAgZHJhZ2dlZElkOiBkcmFnZ2VkTW8uSWQsXHJcbiAgICAgICAgICAgIHRhcmdldElkOiB0YXJnZXROb2RlRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2lkJyksXHJcbiAgICAgICAgICAgIHRhcmdldFN0YXRlOiBudWxsLFxyXG4gICAgICAgICAgICB0YXJnZXRJbmRleDogTnVtYmVyKHRhcmdldE5vZGVFbGVtZW50LmdldEF0dHJpYnV0ZSgnaW5kZXgnKSlcclxuICAgICAgICB9O1xyXG4gICAgICAgIGNvbnN0IHRhcmdldFJlY3QgPSB0YXJnZXROb2RlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgICAgICBjb25zdCBvbmVUaGlyZCA9IHRhcmdldFJlY3QuaGVpZ2h0IC8gMztcclxuXHJcbiAgICAgICAgY29uc3QgaXNDYXJkVGFyZ2V0ID0gIXRhcmdldE5vZGVFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygnY29sdW1uJyk7XHJcblxyXG4gICAgICAgIGNvbnN0IGlzQmVmb3JlID0gZXZlbnQucG9pbnRlclBvc2l0aW9uLnkgLSB0YXJnZXRSZWN0LnRvcCA8IG9uZVRoaXJkICYmIGlzQ2FyZFRhcmdldDtcclxuXHJcbiAgICAgICAgY29uc3QgaXNBZnRlciA9IGV2ZW50LnBvaW50ZXJQb3NpdGlvbi55IC0gdGFyZ2V0UmVjdC50b3AgPiAyICogb25lVGhpcmQgJiYgaXNDYXJkVGFyZ2V0O1xyXG5cclxuICAgICAgICBjb25zdCBpc0luc2lkZSA9ICFpc0NhcmRUYXJnZXQ7XHJcblxyXG4gICAgICAgIGNvbnN0IHRhcmdldEluZGV4ID0gdGhpcy5kcm9wQWN0aW9uVG9kby50YXJnZXRJbmRleCA/PyAtMTtcclxuICAgICAgICBjb25zdCB0YXJnZXRNbyA9IHRoaXMubW9EYXRhTGlzdFt0YXJnZXRJbmRleF07XHJcblxyXG4gICAgICAgIGlmIChpc0NhcmRUYXJnZXQpIHtcclxuICAgICAgICAgICAgdGhpcy5kcm9wQWN0aW9uVG9kby50YXJnZXRTdGF0ZSA9IHRhcmdldE1vW3RoaXMudmlld1NldHRpbmcuU3RhdGVdO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuZHJvcEFjdGlvblRvZG8udGFyZ2V0U3RhdGUgPSB7XHJcbiAgICAgICAgICAgICAgICAkQ2FwdGlvbjogdGFyZ2V0Tm9kZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCdzdGF0ZScpISxcclxuICAgICAgICAgICAgICAgIElkOiB0YXJnZXROb2RlRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2lkJykhLFxyXG4gICAgICAgICAgICAgICAgJFR5cGVEZWZJZDogZHJhZ2dlZE1vW3RoaXMudmlld1NldHRpbmcuU3RhdGVdPy4kVHlwZURlZklkXHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChpc0JlZm9yZSkge1xyXG4gICAgICAgICAgICB0aGlzLmRyb3BBY3Rpb25Ub2RvLmFjdGlvbiA9ICdiZWZvcmUnO1xyXG4gICAgICAgICAgICB0aGlzLmRyb3BBY3Rpb25Ub2RvLnRhcmdldEluZGV4ID0gZHJhZ2dlZEluZGV4ID4gdGFyZ2V0SW5kZXggPyB0YXJnZXRJbmRleCA6IHRhcmdldEluZGV4IC0gMTtcclxuICAgICAgICB9IGVsc2UgaWYgKGlzQWZ0ZXIpIHtcclxuICAgICAgICAgICAgdGhpcy5kcm9wQWN0aW9uVG9kby5hY3Rpb24gPSAnYWZ0ZXInO1xyXG4gICAgICAgICAgICB0aGlzLmRyb3BBY3Rpb25Ub2RvLnRhcmdldEluZGV4ID0gZHJhZ2dlZEluZGV4IDwgdGFyZ2V0SW5kZXggPyB0YXJnZXRJbmRleCA6IHRhcmdldEluZGV4ICsgMTtcclxuICAgICAgICB9IGVsc2UgaWYgKGlzSW5zaWRlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZHJvcEFjdGlvblRvZG8uYWN0aW9uID0gJ2luc2lkZSc7XHJcbiAgICAgICAgICAgIHRoaXMuZHJvcEFjdGlvblRvZG8udGFyZ2V0SW5kZXggPSAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zb2xlLmxvZyh0aGlzLmRyb3BBY3Rpb25Ub2RvLnRhcmdldFN0YXRlKTtcclxuICAgICAgICB0aGlzLl9zaG93RHJhZ0luZm8oKTtcclxuICAgIH1cclxuICAgIHByaXZhdGUgX2NoYW5nZURldGVjdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3N0b3BEcmFnZ2luZygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9jbGVhckRyYWdJbmZvKCk7XHJcbiAgICAgICAgdGhpcy5fcmVzZXREcm9wQWN0aW9uVG9kbygpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2NoYW5nZU5ld0NvbHVtbk1vZGUobW9kZTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuaXNOZXdDb2x1bW5Nb2RlID0gbW9kZTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9yZXNldERyb3BBY3Rpb25Ub2RvKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZHJvcEFjdGlvblRvZG8gPSB7XHJcbiAgICAgICAgICAgIHRhcmdldElkOiBudWxsLFxyXG4gICAgICAgICAgICBkcmFnZ2VkSWQ6IG51bGwsXHJcbiAgICAgICAgICAgIHRhcmdldFN0YXRlOiBudWxsLFxyXG4gICAgICAgICAgICB0YXJnZXRJbmRleDogbnVsbCxcclxuICAgICAgICAgICAgYWN0aW9uOiBudWxsXHJcbiAgICAgICAgfTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9zY3JvbGxJbnB1dEludG9WaWV3KCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGlucHV0RWw6IEhUTUxJbnB1dEVsZW1lbnQgPSB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudDtcclxuICAgICAgICBpbnB1dEVsLmZvY3VzKCk7XHJcbiAgICAgICAgaW5wdXRFbC5zY3JvbGxJbnRvVmlldyh7IGlubGluZTogJ2VuZCcgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfcmVzZXROZXdDb2x1bW4oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5uZXdDb2x1bW4gPSB7IElkOiAnJywgJENhcHRpb246ICcnIH07XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfY2xlYXJEcmFnSW5mbyhkcm9wcGVkID0gZmFsc2UpOiB2b2lkIHtcclxuICAgICAgICBpZiAoZHJvcHBlZCkge1xyXG4gICAgICAgICAgICB0aGlzLl9yZXNldERyb3BBY3Rpb25Ub2RvKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IGVsRG9tID0gdGhpcy5fZWwubmF0aXZlRWxlbWVudDtcclxuICAgICAgICBlbERvbVxyXG4gICAgICAgICAgICAucXVlcnlTZWxlY3RvckFsbCgnLmRyb3AtYmVmb3JlJylcclxuICAgICAgICAgICAgLmZvckVhY2goKGVsZW1lbnQpID0+IHRoaXMuX3JlbmRlcmVyMi5yZW1vdmVDbGFzcyhlbGVtZW50LCAnZHJvcC1iZWZvcmUnKSk7XHJcbiAgICAgICAgZWxEb20ucXVlcnlTZWxlY3RvckFsbCgnLmRyb3AtYWZ0ZXInKS5mb3JFYWNoKChlbGVtZW50KSA9PiB0aGlzLl9yZW5kZXJlcjIucmVtb3ZlQ2xhc3MoZWxlbWVudCwgJ2Ryb3AtYWZ0ZXInKSk7XHJcbiAgICAgICAgZWxEb21cclxuICAgICAgICAgICAgLnF1ZXJ5U2VsZWN0b3JBbGwoJy5kcm9wLWluc2lkZScpXHJcbiAgICAgICAgICAgIC5mb3JFYWNoKChlbGVtZW50KSA9PiB0aGlzLl9yZW5kZXJlcjIucmVtb3ZlQ2xhc3MoZWxlbWVudCwgJ2Ryb3AtaW5zaWRlJykpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3Nob3dEcmFnSW5mbygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9jbGVhckRyYWdJbmZvKCk7XHJcbiAgICAgICAgaWYgKHRoaXMuZHJvcEFjdGlvblRvZG8udGFyZ2V0SWQpIHtcclxuICAgICAgICAgICAgY29uc3QgdGFyZ2V0Tm9kZUVsZW1lbnQgPSB0aGlzLl9lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJyMnICsgdGhpcy5kcm9wQWN0aW9uVG9kby50YXJnZXRJZCk7XHJcbiAgICAgICAgICAgIGlmICghdGFyZ2V0Tm9kZUVsZW1lbnQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX3Jlc2V0RHJvcEFjdGlvblRvZG8oKTtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLl9yZW5kZXJlcjIuYWRkQ2xhc3ModGFyZ2V0Tm9kZUVsZW1lbnQsICdkcm9wLScgKyB0aGlzLmRyb3BBY3Rpb25Ub2RvPy5hY3Rpb24pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9hZGROZXdDYXJkKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMubW9EYXRhTGlzdC5wdXNoKHRoaXMubmV3Q2FyZCk7XHJcbiAgICAgICAgY29uc3QgY3VycmVudEdyb3VwYnkgPSB0aGlzLm5ld0NhcmRbdGhpcy5ncm91cGJ5UHJvcGVydHldO1xyXG4gICAgICAgIHRoaXMub25Jbml0TmV3Q2FyZChjdXJyZW50R3JvdXBieSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfcmVzZXROZXdDYXJkKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMubmV3Q2FyZCA9IHsgSWQ6IG51bGwsICRDYXB0aW9uOiBudWxsIH07XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfY2FuY2VsTmV3Q2FyZCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9yZXNldE5ld0NhcmQoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9nZXRNb0J5SWQoaWQ6IHN0cmluZyk6IE1ldGFvYmplY3REYXRhTW9kZWwge1xyXG4gICAgICAgIHJldHVybiB0aGlzLm1vRGF0YUxpc3QuZmluZCgoYykgPT4gYy5JZCA9PT0gaWQpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2ZpbmRDb2x1bW4oYWxsQ29sdW1ucywgY29sdW1uc05hbWU6IHN0cmluZ1tdKTogb2JqZWN0IHtcclxuICAgICAgICBjb25zdCBjb2x1bW5zID0ge307XHJcbiAgICAgICAgY29sdW1uc05hbWUuZm9yRWFjaCgobmFtZSkgPT4ge1xyXG4gICAgICAgICAgICBjb2x1bW5zW25hbWUgKyAnQ29sdW1uJ10gPSB0aGlzLl9maW5kQ29sdW1uQnlEYk5hbWUudHJhbnNmb3JtKHRoaXMuYWxsQ29sdW1ucywgbmFtZSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIGNvbHVtbnM7XHJcbiAgICB9XHJcbn1cclxuIiwiPGZkLWxheW91dC1wYW5lbD5cclxuICAgIDxmZC1sYXlvdXQtcGFuZWwtYm9keSBbYmxlZWRdPVwidHJ1ZVwiPlxyXG4gICAgICAgIDx0YWJsZSBmZC10YWJsZSAqbmdJZj1cImlzQ2hlY2tMaXN0XCI+XHJcbiAgICAgICAgICAgIDx0aGVhZCBmZC10YWJsZS1oZWFkZXI+XHJcbiAgICAgICAgICAgICAgICA8dHIgZmQtdGFibGUtcm93PlxyXG4gICAgICAgICAgICAgICAgICAgIDx0aCBmZC10YWJsZS1jZWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmQtY2hlY2tib3hcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJhbGxDaGVja2JveFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJhbGxDaGVja2VkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uQWxsQ2hlY2tib3goJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3sgJ0FsbCcgfCBiYmJUcmFuc2xhdGUgfX08L2ZkLWNoZWNrYm94XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgPC90aGVhZD5cclxuICAgICAgICA8L3RhYmxlPlxyXG4gICAgPC9mZC1sYXlvdXQtcGFuZWwtYm9keT5cclxuPC9mZC1sYXlvdXQtcGFuZWw+XHJcblxyXG48ZmQtbGF5b3V0LWdyaWRcclxuICAgICpuZ0lmPVwibW9EYXRhTGlzdD8ubGVuZ3RoOyBlbHNlIG5vRGF0YVwiXHJcbiAgICBjbGFzcz1cImNvbHVtbnNcIlxyXG4gICAgY2RrRHJvcExpc3RcclxuICAgIGNka0Ryb3BMaXN0T3JpZW50YXRpb249XCJob3Jpem9udGFsXCJcclxuICAgIFtjZGtEcm9wTGlzdERhdGFdPVwia2FuYmFuQ29sdW1uc1wiXHJcbiAgICBbaWRdPVwiJyRSb290J1wiXHJcbiAgICAoY2RrRHJvcExpc3REcm9wcGVkKT1cIm9uRHJvcCgkZXZlbnQsIHRydWUpXCJcclxuPlxyXG4gICAgPGRpdlxyXG4gICAgICAgICpuZ0Zvcj1cImxldCBjb2x1bW4gb2Yga2FuYmFuQ29sdW1uczsgbGV0IGNvbHVtbkluZGV4ID0gaW5kZXhcIlxyXG4gICAgICAgIFtmZExheW91dEdyaWRDb2xdPVwiMTJcIlxyXG4gICAgICAgIFtjb2xNZF09XCI2XCJcclxuICAgICAgICBbY29sTGddPVwiNFwiXHJcbiAgICAgICAgW2NvbFhsXT1cIjNcIlxyXG4gICAgICAgIGNsYXNzPVwiY29sdW1uXCJcclxuICAgICAgICBbaWRdPVwiY29sdW1uLklkXCJcclxuICAgICAgICBbYXR0ci5zdGF0ZV09XCJjb2x1bW4uJENhcHRpb25cIlxyXG4gICAgICAgIGNka0RyYWdcclxuICAgID5cclxuICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXHJcbiAgICAgICAgICAgICAgICBjb2x1bW5DYXJkO1xyXG4gICAgICAgICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbHVtbjogY29sdW1uLFxyXG4gICAgICAgICAgICAgICAgICAgIGNvbHVtbkluZGV4OiBjb2x1bW5JbmRleFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcIlxyXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdlxyXG4gICAgICAgIFtmZExheW91dEdyaWRDb2xdPVwiMTJcIlxyXG4gICAgICAgIFtjb2xNZF09XCI2XCJcclxuICAgICAgICBbY29sTGddPVwiNFwiXHJcbiAgICAgICAgW2NvbFhsXT1cIjNcIlxyXG4gICAgICAgIGNsYXNzPVwibmV3Q29sdW1uXCJcclxuICAgICAgICAoY2xpY2spPVwib25BY3RpdmVOZXdDb2x1bW5Nb2RlKClcIlxyXG4gICAgICAgICpuZ0lmPVwiIWlzTmV3Q29sdW1uTW9kZTsgZWxzZSBuZXdDb2x1bW5JbnB1dFwiXHJcbiAgICA+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPHNwYW4+2LPYqtmI2YYg2KzYr9uM2K88L3NwYW4+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxuZy10ZW1wbGF0ZSAjbmV3Q29sdW1uSW5wdXQ+XHJcbiAgICAgICAgPGRpdiBbZmRMYXlvdXRHcmlkQ29sXT1cIjEyXCIgW2NvbE1kXT1cIjZcIiBbY29sTGddPVwiNFwiIFtjb2xYbF09XCIzXCI+XHJcbiAgICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICAgICAgI2lucHV0RWxcclxuICAgICAgICAgICAgICAgIGZkLWZvcm0tY29udHJvbFxyXG4gICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICAgICAgICAgICAgYXV0b2ZvY3VzXHJcbiAgICAgICAgICAgICAgICAoZm9jdXNvdXQpPVwib25DYW5jZWxOZXdDb2x1bW4oKVwiXHJcbiAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cIm5ld0NvbHVtbi4kQ2FwdGlvblwiXHJcbiAgICAgICAgICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJvbkFkZE5ld0NvbHVtbigpXCJcclxuICAgICAgICAgICAgICAgIGlkPVwibmV3LWNvbHVtbi1uYW1lXCJcclxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiINmG2KfZhVwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG48L2ZkLWxheW91dC1ncmlkPlxyXG5cclxuPCEtLW5vRGF0YS0tPlxyXG48bmctdGVtcGxhdGUgI25vRGF0YT5cclxuICAgIDxic3Utbm8tZGF0YT48L2JzdS1uby1kYXRhPlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPCEtLWNvbHVtbiBjYXJkLS0+XHJcbjxuZy10ZW1wbGF0ZSAjY29sdW1uQ2FyZCBsZXQtY29sdW1uPVwiY29sdW1uXCIgbGV0LWNvbHVtbkluZGV4PVwiY29sdW1uSW5kZXhcIj5cclxuICAgIDxmZC1jYXJkIGNhcmRUeXBlPVwicXVpY2tWaWV3XCIgY2xhc3M9XCJkb2NzLWZsZXgtaXRlbS1tYXJnaW5cIiBlbGxpcHNpZnk+XHJcbiAgICAgICAgPGZkLWNhcmQtaGVhZGVyPlxyXG4gICAgICAgICAgICA8c3BhbiBmZC1jYXJkLXRpdGxlPnt7IGNvbHVtbi4kQ2FwdGlvbiB9fTwvc3Bhbj5cclxuICAgICAgICA8L2ZkLWNhcmQtaGVhZGVyPlxyXG4gICAgICAgIDxmZC1jYXJkLWNvbnRlbnRcclxuICAgICAgICAgICAgY2RrRHJvcExpc3RcclxuICAgICAgICAgICAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJvbkRyb3AoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgIFtjZGtEcm9wTGlzdFNvcnRpbmdEaXNhYmxlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgW2Nka0Ryb3BMaXN0RGF0YV09XCJtb0RhdGFMaXN0XCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IG1vIG9mIG1vRGF0YUxpc3Q7IGxldCBpbmRleCA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICA8Ymsta2FuYmFuLWNhcmRcclxuICAgICAgICAgICAgICAgICAgICBbbW9dPVwibW9cIlxyXG4gICAgICAgICAgICAgICAgICAgIFt2aWV3U2V0dGluZ109XCJ2aWV3U2V0dGluZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW2Zvcm1TZXR0aW5nXT1cImZvcm1TZXR0aW5nXCJcclxuICAgICAgICAgICAgICAgICAgICBbYWxsQXZhaWxhYmxlQXNzaWduZWVzXT1cImFsbEF2YWlsYWJsZUFzc2lnbmVlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW2luZGV4XT1cImluZGV4XCJcclxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIm1vW3ZpZXdTZXR0aW5nLlN0YXRlXS4kQ2FwdGlvbiA9PT0gY29sdW1uLiRDYXB0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5pZF09XCJtby5JZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2lubGluZUVkaXRNb2RlXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtpc0NoZWNrZWRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3RhdGVdPVwiY29sdW1uLiRDYXB0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5pbmRleF09XCJpbmRleFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnNlbGVjdGVkXT1cIm1vLiRJc0NoZWNrZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgIChjZGtEcmFnTW92ZWQpPVwib25EcmFnTW92ZSgkZXZlbnQsIG1vLCBpbmRleCwgY29sdW1uKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uUm93Q2hlY2soe21vLCBpbmRleH0pXCJcclxuICAgICAgICAgICAgICAgICAgICAoZGJsY2xpY2spPVwib25Sb3dDbGljayh7bW8sIGluZGV4fSlcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNka0RyYWdcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDwvYmsta2FuYmFuLWNhcmQ+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZmQtY2FyZC1jb250ZW50PlxyXG4gICAgICAgIDxmZC1jYXJkLWZvb3RlciBjbGFzcz1cImNvbHVtbi1mb290ZXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5ldy1jYXJkXCIgKm5nSWY9XCJuZXdDYXJkW2dyb3VwYnlQcm9wZXJ0eV0gPT09IGNvbHVtbi4kQ2FwdGlvbjsgZWxzZSBhZGROZXdDYXJkXCI+XHJcbiAgICAgICAgICAgICAgICA8ZmQtY2FyZD5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGZkLWZvcm0taXRlbT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRleHRhcmVhXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZC1mb3JtLWNvbnRyb2xcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdXRvZm9jdXNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cIm5ld0NhcmQuJENhcHRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwib25BZGROZXdDYXJkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGZvY3Vzb3V0KT1cIm9uTmV3Q2FyZElucHV0Rm9jdXNvdXQoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1RpdGxlJyB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L3RleHRhcmVhPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9mZC1jYXJkPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5ldy1jYXJkLWFjdGlvbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZkLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25BZGROZXdDYXJkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmZFR5cGU9XCJlbXBoYXNpemVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhZGQtY2FyZC1idG5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ9in2YHYstmI2K/ZhidcIlxyXG4gICAgICAgICAgICAgICAgICAgID48L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmQtaWNvbiAobW91c2Vkb3duKT1cIm9uQ2FuY2VsTmV3Q2FyZCgkZXZlbnQpXCIgZ2x5cGg9XCJkZWNsaW5lXCI+PC9mZC1pY29uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNhZGROZXdDYXJkPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFkZC1uZXctY2FyZFwiIChjbGljayk9XCJvbkluaXROZXdDYXJkKGNvbHVtbi4kQ2FwdGlvbilcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGZkLWljb24gZ2x5cGg9XCJhZGRcIj48L2ZkLWljb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgINqp2KfYsdiqINis2K/bjNivXHJcbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPC9mZC1jYXJkLWZvb3Rlcj5cclxuICAgIDwvZmQtY2FyZD5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
|
package/esm2020/public-api.mjs
CHANGED
|
@@ -4,4 +4,4 @@ export * from './lib/kanban-card/kanban-card.component';
|
|
|
4
4
|
export * from './lib/avatar-group/barsa-avatar-group.component';
|
|
5
5
|
export * from './lib/kanban-view/kanban-view.component';
|
|
6
6
|
export * from './lib/barsa-kanban.module';
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLWthbmJhbi9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2thbmJhbi1iYXNlL2thbmJhbi1iYXNlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2thbmJhbi10YWdzL2thbmJhbi10YWdzLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2thbmJhbi1jYXJkL2thbmJhbi1jYXJkLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2F2YXRhci1ncm91cC9iYXJzYS1hdmF0YXItZ3JvdXAuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIva2FuYmFuLXZpZXcva2FuYmFuLXZpZXcuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYmFyc2Eta2FuYmFuLm1vZHVsZSc7XHJcbiJdfQ==
|