@indigina/ui-kit 1.1.88 → 1.1.90
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/esm2022/lib/components/kit-grid/kit-grid.component.mjs +14 -4
- package/esm2022/lib/components/kit-sortable/kit-sortable.component.mjs +36 -0
- package/esm2022/lib/components/kit-switch/kit-switch.component.mjs +2 -2
- package/esm2022/lib/components/kit-text-label/kit-text-label.component.mjs +2 -2
- package/esm2022/public-api.mjs +5 -3
- package/fesm2022/indigina-ui-kit.mjs +51 -9
- package/fesm2022/indigina-ui-kit.mjs.map +1 -1
- package/lib/components/kit-grid/kit-grid.component.d.ts +5 -1
- package/lib/components/kit-sortable/kit-sortable.component.d.ts +24 -0
- package/package.json +2 -1
- package/public-api.d.ts +1 -0
- package/styles/theming.scss +1 -0
|
@@ -41,6 +41,10 @@ export class KitGridComponent {
|
|
|
41
41
|
* Title to display in the first column of the footer row
|
|
42
42
|
*/
|
|
43
43
|
this.footerTitle = '';
|
|
44
|
+
/**
|
|
45
|
+
* Method to add additional logic to the row class
|
|
46
|
+
*/
|
|
47
|
+
this.addRowClass = () => ({});
|
|
44
48
|
/**
|
|
45
49
|
* An action which is emitted when the page of the grid is changed
|
|
46
50
|
*/
|
|
@@ -72,9 +76,13 @@ export class KitGridComponent {
|
|
|
72
76
|
this.expandedRows = [];
|
|
73
77
|
this.getCssRowClass = (context) => {
|
|
74
78
|
const expanded = this.expandedRows.includes(context.dataItem);
|
|
75
|
-
|
|
79
|
+
const classes = {
|
|
76
80
|
expanded,
|
|
77
81
|
};
|
|
82
|
+
if (this.addRowClass) {
|
|
83
|
+
Object.assign(classes, this.addRowClass(context));
|
|
84
|
+
}
|
|
85
|
+
return classes;
|
|
78
86
|
};
|
|
79
87
|
}
|
|
80
88
|
onDataStateChange(event) {
|
|
@@ -119,11 +127,11 @@ export class KitGridComponent {
|
|
|
119
127
|
this.expandedRows = [];
|
|
120
128
|
}
|
|
121
129
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KitGridComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
122
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: KitGridComponent, selector: "kit-grid", inputs: { data: "data", gridDataBinding: "gridDataBinding", sortable: "sortable", sort: "sort", pageable: "pageable", pageSize: "pageSize", skip: "skip", loading: "loading", detailTemplateShowIf: "detailTemplateShowIf", showFooter: "showFooter", footerTitle: "footerTitle", footerData: "footerData" }, outputs: { pageChanged: "pageChanged", sortChanged: "sortChanged", dataStateChanged: "dataStateChanged", detailExpanded: "detailExpanded", detailCollapsed: "detailCollapsed", cellClicked: "cellClicked" }, queries: [{ propertyName: "columns", predicate: KitGridColumnComponent, isSignal: true }, { propertyName: "kitGridDetailTemplate", first: true, predicate: KitGridDetailTemplateDirective, descendants: true, read: TemplateRef }], ngImport: i0, template: "@if (data) {\n <kendo-grid class=\"kit-grid\"\n kendoGridExpandDetailsBy\n [data]=\"data\"\n [sortable]=\"sortable\"\n [sort]=\"sort\"\n [rowClass]=\"getCssRowClass\"\n [pageable]=\"getPagerSettings()\"\n [pageSize]=\"pageSize\"\n [skip]=\"skip\"\n [loading]=\"loading\"\n [(expandedDetailKeys)]=\"expandedRows\"\n (cellClick)=\"onCellClick($event)\"\n (detailExpand)=\"onDetailExpand($event)\"\n (detailCollapse)=\"onDetailCollapse($event)\"\n (sortChange)=\"onSortChange($event)\"\n (pageChange)=\"onPageChange($event)\"\n (dataStateChange)=\"onDataStateChange($event)\">\n @for (column of columns(); track column) {\n <kendo-grid-column [field]=\"column.field\"\n [sortable]=\"column.sortable\"\n [hidden]=\"column.hidden\"\n [width]=\"column.width\">\n <ng-template kendoGridHeaderTemplate>\n <ng-container *ngTemplateOutlet=\"columnHeaderTemplate; context: { $implicit: column }\"\n ></ng-container>\n </ng-template>\n\n @if (column.cellTemplate) {\n <ng-template kendoGridCellTemplate let-dataItem>\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n\n @if (showFooter) {\n <ng-template kendoGridFooterTemplate>\n <ng-container *ngTemplateOutlet=\"footerTemplate; context: { $implicit: column }\"></ng-container>\n </ng-template>\n }\n </kendo-grid-column>\n\n @if (kitGridDetailTemplate) {\n <ng-template kendoGridDetailTemplate let-dataItem\n [kendoGridDetailTemplateShowIf]=\"detailTemplateShowIf\">\n <ng-container *ngTemplateOutlet=\"kitGridDetailTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n }\n </kendo-grid>\n}\n\n@if (gridDataBinding) {\n <kendo-grid class=\"kit-grid\"\n kendoGridExpandDetailsBy\n [kendoGridBinding]=\"gridDataBinding\"\n [rowClass]=\"getCssRowClass\"\n [pageable]=\"getPagerSettings()\"\n [pageSize]=\"pageSize\"\n [sortable]=\"sortable\"\n [sort]=\"sort\"\n [skip]=\"skip\"\n [loading]=\"loading\"\n [(expandedDetailKeys)]=\"expandedRows\"\n (cellClick)=\"onCellClick($event)\"\n (detailExpand)=\"onDetailExpand($event)\"\n (detailCollapse)=\"onDetailCollapse($event)\"\n (pageChange)=\"onPageChange($event)\"\n (sortChange)=\"onSortChange($event)\"\n (dataStateChange)=\"onDataStateChange($event)\">\n @for (column of columns(); track column) {\n <kendo-grid-column [field]=\"column.field\"\n [sortable]=\"column.sortable\"\n [hidden]=\"column.hidden\"\n [width]=\"column.width\">\n @if (column.cellTemplate) {\n <ng-template kendoGridCellTemplate let-dataItem>\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n\n <ng-template kendoGridHeaderTemplate>\n <ng-container *ngTemplateOutlet=\"columnHeaderTemplate; context: { $implicit: column }\"\n ></ng-container>\n </ng-template>\n\n @if (showFooter) {\n <ng-template kendoGridFooterTemplate>\n <ng-container *ngTemplateOutlet=\"footerTemplate; context: { $implicit: column }\"></ng-container>\n </ng-template>\n }\n </kendo-grid-column>\n\n @if (kitGridDetailTemplate) {\n <ng-template kendoGridDetailTemplate let-dataItem\n [kendoGridDetailTemplateShowIf]=\"detailTemplateShowIf\">\n <ng-container *ngTemplateOutlet=\"kitGridDetailTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n }\n </kendo-grid>\n}\n\n<ng-template #columnHeaderTemplate let-column>\n <div class=\"grid-title\"\n [class.sortable]=\"isColumnSortable(column)\">\n @if (column.titleIcon) {\n <kit-svg-icon class=\"grid-title-icon\"\n [icon]=\"column.titleIcon\"\n [ngClass]=\"column.titleIconType\"\n ></kit-svg-icon>\n }\n\n <div class=\"grid-title-text\">\n {{ column.title }}\n </div>\n\n @if (sortable && column.sortable) {\n @switch (getSortingDirection(column.field)) {\n @case (KitGridSortDirection.ASC) {\n <kit-svg-icon class=\"grid-title-sort-icon\"\n [icon]=\"KitSvgIcon.SORT_ASCENDING\"\n ></kit-svg-icon>\n }\n @case (KitGridSortDirection.DESC) {\n <kit-svg-icon class=\"grid-title-sort-icon\"\n [icon]=\"KitSvgIcon.SORT_DESCENDING\"\n ></kit-svg-icon>\n }\n }\n }\n </div>\n</ng-template>\n\n<ng-template #footerTemplate let-column>\n @if (columns()) {\n @if (footerTitle && column === columns()[0]) {\n {{ footerTitle }}\n }\n @else {\n {{ footerData?.[column.field] || '' }}\n }\n }\n</ng-template>\n", styles: [".kit-grid{border:none;background:none}.kit-grid .grid-title{display:flex;align-items:center;gap:8px;flex:1;line-height:1;min-width:0}.kit-grid .grid-title-icon{display:block;width:16px;height:16px;flex-shrink:0}.kit-grid .grid-title-icon.fill{fill:var(--ui-kit-color-grey-12);stroke:none}.kit-grid .grid-title-icon.stroke{fill:none;stroke:var(--ui-kit-color-grey-12)}.kit-grid .grid-title-text{font-weight:500;line-height:22px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kit-grid .grid-title-sort-icon{display:block;margin-left:auto;width:16px;height:16px;fill:var(--ui-kit-color-grey-12)}.kit-grid .grid-title.sortable{cursor:pointer}.kit-grid ::ng-deep .k-grid-table{color:var(--ui-kit-color-grey-10);font-size:14px;font-weight:400}.kit-grid ::ng-deep .k-grid-header{padding:0!important;border:none}.kit-grid ::ng-deep .k-grid-footer{padding:0!important}.kit-grid ::ng-deep .k-grid-content{overflow-y:auto}.kit-grid ::ng-deep .k-table{margin:0}.kit-grid ::ng-deep .k-table-th{padding:8px 0;border:none;border-bottom:1px solid var(--ui-kit-color-grey-11);background:var(--ui-kit-color-grey-15)}.kit-grid ::ng-deep .k-table-th .k-cell-inner{margin:0}.kit-grid ::ng-deep .k-table-th .k-cell-inner .k-link{padding:0 8px;border-right:1px solid var(--ui-kit-color-grey-11);cursor:default}.kit-grid ::ng-deep .k-table-th .k-sort-icon{display:none}.kit-grid ::ng-deep .k-table-th .k-sort-order{margin-left:2px;color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted{color:var(--ui-kit-color-main);border-bottom:1px solid var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-icon.fill{fill:var(--ui-kit-color-main);stroke:none}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-icon.stroke{fill:none;stroke:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-sort-icon{fill:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-row:not(.k-detail-row):hover,.kit-grid ::ng-deep .k-table-row:hover{background:none}.kit-grid ::ng-deep .k-table-row .k-table-td{border-bottom-width:1px}.kit-grid ::ng-deep .k-table-alt-row{background:none}.kit-grid ::ng-deep .k-table-td{padding:12px 8px;border-color:var(--ui-kit-color-grey-11);border-bottom-width:1px;background:var(--ui-kit-color-white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kit-grid ::ng-deep .k-table-td:first-child{border-inline-start-width:1px}.kit-grid ::ng-deep .k-master-row.expanded .k-table-td{color:var(--ui-kit-color-main);border-bottom-color:var(--ui-kit-color-grey-10)}.kit-grid ::ng-deep .k-master-row.expanded .k-icon:before{color:var(--ui-kit-color-main);transform:rotate(90deg)}.kit-grid ::ng-deep .k-detail-row>.k-table-td{border-bottom:1px solid var(--ui-kit-color-grey-10)}.kit-grid ::ng-deep .k-detail-row .k-detail-cell{padding:0}.kit-grid ::ng-deep .k-detail-row .k-pager{margin:20px 0;justify-content:flex-start}.kit-grid ::ng-deep .k-detail-row .k-grid-norecords{text-align:left}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon{display:flex;align-items:center;justify-content:center;font-family:WebComponentsIcons,sans-serif;font-size:22px}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon:before{content:\"\\e005\";color:var(--ui-kit-color-grey-12);transform:rotate(0);transition:transform .2s ease}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon:hover:before{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon svg{display:none}.kit-grid ::ng-deep .k-pager{display:flex;justify-content:flex-end;margin-top:20px;padding:0;border:none;background:none}.kit-grid ::ng-deep .k-pager:focus{box-shadow:none}.kit-grid ::ng-deep .k-pager-numbers-wrap{gap:8px}.kit-grid ::ng-deep .k-pager-numbers{gap:8px}.kit-grid ::ng-deep .k-pager-nav{width:32px;height:32px;font-size:14px;font-weight:400;border-radius:6px;transition:none}.kit-grid ::ng-deep .k-pager-nav:before{opacity:1;background:none;transition:none}.kit-grid ::ng-deep .k-pager-nav:after{opacity:0}.kit-grid ::ng-deep .k-pager-nav.k-selected{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-pager-nav.k-selected:before{border:1px solid var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-pager-nav:not(.k-selected):hover:before{background-color:#0000000f}.kit-grid ::ng-deep .k-pager-nav.k-disabled{color:var(--ui-kit-color-grey-12)}.kit-grid ::ng-deep .k-pager .k-pager-first,.kit-grid ::ng-deep .k-pager .k-pager-last{display:none}.kit-grid ::ng-deep .k-pager .k-button-icon{font-family:WebComponentsIcons,sans-serif}.kit-grid ::ng-deep .k-pager .k-button-icon svg{display:none}.kit-grid ::ng-deep .k-pager .k-svg-i-caret-alt-left:before{content:\"\\e016\"}.kit-grid ::ng-deep .k-pager .k-svg-i-caret-alt-right:before{content:\"\\e014\"}.kit-grid ::ng-deep .k-grid-aria-root{position:relative}.kit-grid ::ng-deep .k-loading-color{background:var(--ui-kit-color-grey-13)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.GridComponent, selector: "kendo-grid", inputs: ["data", "pageSize", "height", "rowHeight", "detailRowHeight", "skip", "scrollable", "selectable", "sort", "size", "trackBy", "filter", "group", "virtualColumns", "filterable", "sortable", "pageable", "groupable", "rowReorderable", "navigable", "navigatable", "autoSize", "rowClass", "rowSticky", "rowSelected", "cellSelected", "resizable", "reorderable", "loading", "columnMenu", "hideHeader", "isDetailExpanded", "isGroupExpanded"], outputs: ["filterChange", "pageChange", "groupChange", "sortChange", "selectionChange", "rowReorder", "dataStateChange", "groupExpand", "groupCollapse", "detailExpand", "detailCollapse", "edit", "cancel", "save", "remove", "add", "cellClose", "cellClick", "pdfExport", "excelExport", "columnResize", "columnReorder", "columnVisibilityChange", "columnLockedChange", "columnStickyChange", "scrollBottom", "contentScroll"], exportAs: ["kendoGrid"] }, { kind: "directive", type: i2.DataBindingDirective, selector: "[kendoGridBinding]", inputs: ["skip", "sort", "filter", "pageSize", "group", "kendoGridBinding"], exportAs: ["kendoGridBinding"] }, { kind: "directive", type: i2.ExpandDetailsDirective, selector: "[kendoGridExpandDetailsBy]", inputs: ["kendoGridExpandDetailsBy", "expandDetailBy", "expandedDetailKeys", "initiallyExpanded"], outputs: ["expandedDetailKeysChange"], exportAs: ["kendoGridExpandDetailsBy"] }, { kind: "component", type: i2.ColumnComponent, selector: "kendo-grid-column", inputs: ["field", "format", "sortable", "groupable", "editor", "filter", "filterable", "editable"] }, { kind: "directive", type: i2.FooterTemplateDirective, selector: "[kendoGridFooterTemplate]" }, { kind: "directive", type: i2.DetailTemplateDirective, selector: "[kendoGridDetailTemplate]", inputs: ["kendoGridDetailTemplateShowIf"] }, { kind: "directive", type: i2.CellTemplateDirective, selector: "[kendoGridCellTemplate]" }, { kind: "directive", type: i2.HeaderTemplateDirective, selector: "[kendoGridHeaderTemplate]" }, { kind: "component", type: i3.KitSvgIconComponent, selector: "kit-svg-icon", inputs: ["icon", "iconClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
130
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: KitGridComponent, selector: "kit-grid", inputs: { data: "data", gridDataBinding: "gridDataBinding", sortable: "sortable", sort: "sort", pageable: "pageable", pageSize: "pageSize", skip: "skip", loading: "loading", detailTemplateShowIf: "detailTemplateShowIf", showFooter: "showFooter", footerTitle: "footerTitle", footerData: "footerData", addRowClass: "addRowClass" }, outputs: { pageChanged: "pageChanged", sortChanged: "sortChanged", dataStateChanged: "dataStateChanged", detailExpanded: "detailExpanded", detailCollapsed: "detailCollapsed", cellClicked: "cellClicked" }, queries: [{ propertyName: "columns", predicate: KitGridColumnComponent, isSignal: true }, { propertyName: "kitGridDetailTemplate", first: true, predicate: KitGridDetailTemplateDirective, descendants: true, read: TemplateRef }], ngImport: i0, template: "@if (data) {\n <kendo-grid class=\"kit-grid\"\n kendoGridExpandDetailsBy\n [data]=\"data\"\n [sortable]=\"sortable\"\n [sort]=\"sort\"\n [rowClass]=\"getCssRowClass\"\n [pageable]=\"getPagerSettings()\"\n [pageSize]=\"pageSize\"\n [skip]=\"skip\"\n [loading]=\"loading\"\n [(expandedDetailKeys)]=\"expandedRows\"\n (cellClick)=\"onCellClick($event)\"\n (detailExpand)=\"onDetailExpand($event)\"\n (detailCollapse)=\"onDetailCollapse($event)\"\n (sortChange)=\"onSortChange($event)\"\n (pageChange)=\"onPageChange($event)\"\n (dataStateChange)=\"onDataStateChange($event)\">\n @for (column of columns(); track column) {\n <kendo-grid-column [field]=\"column.field\"\n [sortable]=\"column.sortable\"\n [hidden]=\"column.hidden\"\n [width]=\"column.width\">\n <ng-template kendoGridHeaderTemplate>\n <ng-container *ngTemplateOutlet=\"columnHeaderTemplate; context: { $implicit: column }\"\n ></ng-container>\n </ng-template>\n\n @if (column.cellTemplate) {\n <ng-template kendoGridCellTemplate let-dataItem>\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n\n @if (showFooter) {\n <ng-template kendoGridFooterTemplate>\n <ng-container *ngTemplateOutlet=\"footerTemplate; context: { $implicit: column }\"></ng-container>\n </ng-template>\n }\n </kendo-grid-column>\n\n @if (kitGridDetailTemplate) {\n <ng-template kendoGridDetailTemplate let-dataItem\n [kendoGridDetailTemplateShowIf]=\"detailTemplateShowIf\">\n <ng-container *ngTemplateOutlet=\"kitGridDetailTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n }\n </kendo-grid>\n}\n\n@if (gridDataBinding) {\n <kendo-grid class=\"kit-grid\"\n kendoGridExpandDetailsBy\n [kendoGridBinding]=\"gridDataBinding\"\n [rowClass]=\"getCssRowClass\"\n [pageable]=\"getPagerSettings()\"\n [pageSize]=\"pageSize\"\n [sortable]=\"sortable\"\n [sort]=\"sort\"\n [skip]=\"skip\"\n [loading]=\"loading\"\n [(expandedDetailKeys)]=\"expandedRows\"\n (cellClick)=\"onCellClick($event)\"\n (detailExpand)=\"onDetailExpand($event)\"\n (detailCollapse)=\"onDetailCollapse($event)\"\n (pageChange)=\"onPageChange($event)\"\n (sortChange)=\"onSortChange($event)\"\n (dataStateChange)=\"onDataStateChange($event)\">\n @for (column of columns(); track column) {\n <kendo-grid-column [field]=\"column.field\"\n [sortable]=\"column.sortable\"\n [hidden]=\"column.hidden\"\n [width]=\"column.width\">\n @if (column.cellTemplate) {\n <ng-template kendoGridCellTemplate let-dataItem>\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n\n <ng-template kendoGridHeaderTemplate>\n <ng-container *ngTemplateOutlet=\"columnHeaderTemplate; context: { $implicit: column }\"\n ></ng-container>\n </ng-template>\n\n @if (showFooter) {\n <ng-template kendoGridFooterTemplate>\n <ng-container *ngTemplateOutlet=\"footerTemplate; context: { $implicit: column }\"></ng-container>\n </ng-template>\n }\n </kendo-grid-column>\n\n @if (kitGridDetailTemplate) {\n <ng-template kendoGridDetailTemplate let-dataItem\n [kendoGridDetailTemplateShowIf]=\"detailTemplateShowIf\">\n <ng-container *ngTemplateOutlet=\"kitGridDetailTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n }\n </kendo-grid>\n}\n\n<ng-template #columnHeaderTemplate let-column>\n <div class=\"grid-title\"\n [class.sortable]=\"isColumnSortable(column)\">\n @if (column.titleIcon) {\n <kit-svg-icon class=\"grid-title-icon\"\n [icon]=\"column.titleIcon\"\n [ngClass]=\"column.titleIconType\"\n ></kit-svg-icon>\n }\n\n <div class=\"grid-title-text\">\n {{ column.title }}\n </div>\n\n @if (sortable && column.sortable) {\n @switch (getSortingDirection(column.field)) {\n @case (KitGridSortDirection.ASC) {\n <kit-svg-icon class=\"grid-title-sort-icon\"\n [icon]=\"KitSvgIcon.SORT_ASCENDING\"\n ></kit-svg-icon>\n }\n @case (KitGridSortDirection.DESC) {\n <kit-svg-icon class=\"grid-title-sort-icon\"\n [icon]=\"KitSvgIcon.SORT_DESCENDING\"\n ></kit-svg-icon>\n }\n }\n }\n </div>\n</ng-template>\n\n<ng-template #footerTemplate let-column>\n @if (columns()) {\n @if (footerTitle && column === columns()[0]) {\n {{ footerTitle }}\n }\n @else {\n {{ footerData?.[column.field] || '' }}\n }\n }\n</ng-template>\n", styles: [".kit-grid{border:none;background:none}.kit-grid .grid-title{display:flex;align-items:center;gap:8px;flex:1;line-height:1;min-width:0}.kit-grid .grid-title-icon{display:block;width:16px;height:16px;flex-shrink:0}.kit-grid .grid-title-icon.fill{fill:var(--ui-kit-color-grey-12);stroke:none}.kit-grid .grid-title-icon.stroke{fill:none;stroke:var(--ui-kit-color-grey-12)}.kit-grid .grid-title-text{font-weight:500;line-height:22px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kit-grid .grid-title-sort-icon{display:block;margin-left:auto;width:16px;height:16px;fill:var(--ui-kit-color-grey-12)}.kit-grid .grid-title.sortable{cursor:pointer}.kit-grid ::ng-deep .k-grid-table{color:var(--ui-kit-color-grey-10);font-size:14px;font-weight:400}.kit-grid ::ng-deep .k-grid-header{padding:0!important;border:none}.kit-grid ::ng-deep .k-grid-footer{padding:0!important}.kit-grid ::ng-deep .k-grid-content{overflow-y:auto}.kit-grid ::ng-deep .k-grid-content::-webkit-scrollbar{height:4px}.kit-grid ::ng-deep .k-grid-content::-webkit-scrollbar-thumb{background-color:var(--ui-kit-color-grey-17);border-radius:2px}.kit-grid ::ng-deep .k-table{margin:0}.kit-grid ::ng-deep .k-table-th{padding:8px 0;border:none;border-bottom:1px solid var(--ui-kit-color-grey-11);background:var(--ui-kit-color-grey-15)}.kit-grid ::ng-deep .k-table-th .k-cell-inner{margin:0}.kit-grid ::ng-deep .k-table-th .k-cell-inner .k-link{padding:0 8px;border-right:1px solid var(--ui-kit-color-grey-11);cursor:default}.kit-grid ::ng-deep .k-table-th .k-sort-icon{display:none}.kit-grid ::ng-deep .k-table-th .k-sort-order{margin-left:2px;color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted{color:var(--ui-kit-color-main);border-bottom:1px solid var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-icon.fill{fill:var(--ui-kit-color-main);stroke:none}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-icon.stroke{fill:none;stroke:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-sort-icon{fill:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-row:not(.k-detail-row):hover,.kit-grid ::ng-deep .k-table-row:hover{background:none}.kit-grid ::ng-deep .k-table-row .k-table-td{border-bottom-width:1px}.kit-grid ::ng-deep .k-table-alt-row{background:none}.kit-grid ::ng-deep .k-table-td{padding:12px 8px;border-color:var(--ui-kit-color-grey-11);border-bottom-width:1px;background:var(--ui-kit-color-white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kit-grid ::ng-deep .k-table-td:first-child{border-inline-start-width:1px}.kit-grid ::ng-deep .k-master-row.expanded .k-table-td{color:var(--ui-kit-color-main);border-bottom-color:var(--ui-kit-color-grey-10)}.kit-grid ::ng-deep .k-master-row.expanded .k-icon:before{color:var(--ui-kit-color-main);transform:rotate(90deg)}.kit-grid ::ng-deep .k-detail-row>.k-table-td{border-bottom:1px solid var(--ui-kit-color-grey-10)}.kit-grid ::ng-deep .k-detail-row .k-detail-cell{padding:0}.kit-grid ::ng-deep .k-detail-row .k-pager{margin:20px 0;justify-content:flex-start}.kit-grid ::ng-deep .k-detail-row .k-grid-norecords{text-align:left}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon{display:flex;align-items:center;justify-content:center;font-family:WebComponentsIcons,sans-serif;font-size:22px}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon:before{content:\"\\e005\";color:var(--ui-kit-color-grey-12);transform:rotate(0);transition:transform .2s ease}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon:hover:before{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon svg{display:none}.kit-grid ::ng-deep .k-pager{display:flex;justify-content:flex-end;margin-top:20px;padding:0;border:none;background:none}.kit-grid ::ng-deep .k-pager:focus{box-shadow:none}.kit-grid ::ng-deep .k-pager-numbers-wrap{gap:8px}.kit-grid ::ng-deep .k-pager-numbers{gap:8px}.kit-grid ::ng-deep .k-pager-nav{width:32px;height:32px;font-size:14px;font-weight:400;border-radius:6px;transition:none}.kit-grid ::ng-deep .k-pager-nav:before{opacity:1;background:none;transition:none}.kit-grid ::ng-deep .k-pager-nav:after{opacity:0}.kit-grid ::ng-deep .k-pager-nav.k-selected{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-pager-nav.k-selected:before{border:1px solid var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-pager-nav:not(.k-selected):hover:before{background-color:#0000000f}.kit-grid ::ng-deep .k-pager-nav.k-disabled{color:var(--ui-kit-color-grey-12)}.kit-grid ::ng-deep .k-pager .k-pager-first,.kit-grid ::ng-deep .k-pager .k-pager-last{display:none}.kit-grid ::ng-deep .k-pager .k-button-icon{font-family:WebComponentsIcons,sans-serif}.kit-grid ::ng-deep .k-pager .k-button-icon svg{display:none}.kit-grid ::ng-deep .k-pager .k-svg-i-caret-alt-left:before{content:\"\\e016\"}.kit-grid ::ng-deep .k-pager .k-svg-i-caret-alt-right:before{content:\"\\e014\"}.kit-grid ::ng-deep .k-grid-aria-root{position:relative}.kit-grid ::ng-deep .k-loading-color{background:var(--ui-kit-color-grey-13)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.GridComponent, selector: "kendo-grid", inputs: ["data", "pageSize", "height", "rowHeight", "detailRowHeight", "skip", "scrollable", "selectable", "sort", "size", "trackBy", "filter", "group", "virtualColumns", "filterable", "sortable", "pageable", "groupable", "rowReorderable", "navigable", "navigatable", "autoSize", "rowClass", "rowSticky", "rowSelected", "cellSelected", "resizable", "reorderable", "loading", "columnMenu", "hideHeader", "isDetailExpanded", "isGroupExpanded"], outputs: ["filterChange", "pageChange", "groupChange", "sortChange", "selectionChange", "rowReorder", "dataStateChange", "groupExpand", "groupCollapse", "detailExpand", "detailCollapse", "edit", "cancel", "save", "remove", "add", "cellClose", "cellClick", "pdfExport", "excelExport", "columnResize", "columnReorder", "columnVisibilityChange", "columnLockedChange", "columnStickyChange", "scrollBottom", "contentScroll"], exportAs: ["kendoGrid"] }, { kind: "directive", type: i2.DataBindingDirective, selector: "[kendoGridBinding]", inputs: ["skip", "sort", "filter", "pageSize", "group", "kendoGridBinding"], exportAs: ["kendoGridBinding"] }, { kind: "directive", type: i2.ExpandDetailsDirective, selector: "[kendoGridExpandDetailsBy]", inputs: ["kendoGridExpandDetailsBy", "expandDetailBy", "expandedDetailKeys", "initiallyExpanded"], outputs: ["expandedDetailKeysChange"], exportAs: ["kendoGridExpandDetailsBy"] }, { kind: "component", type: i2.ColumnComponent, selector: "kendo-grid-column", inputs: ["field", "format", "sortable", "groupable", "editor", "filter", "filterable", "editable"] }, { kind: "directive", type: i2.FooterTemplateDirective, selector: "[kendoGridFooterTemplate]" }, { kind: "directive", type: i2.DetailTemplateDirective, selector: "[kendoGridDetailTemplate]", inputs: ["kendoGridDetailTemplateShowIf"] }, { kind: "directive", type: i2.CellTemplateDirective, selector: "[kendoGridCellTemplate]" }, { kind: "directive", type: i2.HeaderTemplateDirective, selector: "[kendoGridHeaderTemplate]" }, { kind: "component", type: i3.KitSvgIconComponent, selector: "kit-svg-icon", inputs: ["icon", "iconClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
123
131
|
}
|
|
124
132
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KitGridComponent, decorators: [{
|
|
125
133
|
type: Component,
|
|
126
|
-
args: [{ selector: 'kit-grid', changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (data) {\n <kendo-grid class=\"kit-grid\"\n kendoGridExpandDetailsBy\n [data]=\"data\"\n [sortable]=\"sortable\"\n [sort]=\"sort\"\n [rowClass]=\"getCssRowClass\"\n [pageable]=\"getPagerSettings()\"\n [pageSize]=\"pageSize\"\n [skip]=\"skip\"\n [loading]=\"loading\"\n [(expandedDetailKeys)]=\"expandedRows\"\n (cellClick)=\"onCellClick($event)\"\n (detailExpand)=\"onDetailExpand($event)\"\n (detailCollapse)=\"onDetailCollapse($event)\"\n (sortChange)=\"onSortChange($event)\"\n (pageChange)=\"onPageChange($event)\"\n (dataStateChange)=\"onDataStateChange($event)\">\n @for (column of columns(); track column) {\n <kendo-grid-column [field]=\"column.field\"\n [sortable]=\"column.sortable\"\n [hidden]=\"column.hidden\"\n [width]=\"column.width\">\n <ng-template kendoGridHeaderTemplate>\n <ng-container *ngTemplateOutlet=\"columnHeaderTemplate; context: { $implicit: column }\"\n ></ng-container>\n </ng-template>\n\n @if (column.cellTemplate) {\n <ng-template kendoGridCellTemplate let-dataItem>\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n\n @if (showFooter) {\n <ng-template kendoGridFooterTemplate>\n <ng-container *ngTemplateOutlet=\"footerTemplate; context: { $implicit: column }\"></ng-container>\n </ng-template>\n }\n </kendo-grid-column>\n\n @if (kitGridDetailTemplate) {\n <ng-template kendoGridDetailTemplate let-dataItem\n [kendoGridDetailTemplateShowIf]=\"detailTemplateShowIf\">\n <ng-container *ngTemplateOutlet=\"kitGridDetailTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n }\n </kendo-grid>\n}\n\n@if (gridDataBinding) {\n <kendo-grid class=\"kit-grid\"\n kendoGridExpandDetailsBy\n [kendoGridBinding]=\"gridDataBinding\"\n [rowClass]=\"getCssRowClass\"\n [pageable]=\"getPagerSettings()\"\n [pageSize]=\"pageSize\"\n [sortable]=\"sortable\"\n [sort]=\"sort\"\n [skip]=\"skip\"\n [loading]=\"loading\"\n [(expandedDetailKeys)]=\"expandedRows\"\n (cellClick)=\"onCellClick($event)\"\n (detailExpand)=\"onDetailExpand($event)\"\n (detailCollapse)=\"onDetailCollapse($event)\"\n (pageChange)=\"onPageChange($event)\"\n (sortChange)=\"onSortChange($event)\"\n (dataStateChange)=\"onDataStateChange($event)\">\n @for (column of columns(); track column) {\n <kendo-grid-column [field]=\"column.field\"\n [sortable]=\"column.sortable\"\n [hidden]=\"column.hidden\"\n [width]=\"column.width\">\n @if (column.cellTemplate) {\n <ng-template kendoGridCellTemplate let-dataItem>\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n\n <ng-template kendoGridHeaderTemplate>\n <ng-container *ngTemplateOutlet=\"columnHeaderTemplate; context: { $implicit: column }\"\n ></ng-container>\n </ng-template>\n\n @if (showFooter) {\n <ng-template kendoGridFooterTemplate>\n <ng-container *ngTemplateOutlet=\"footerTemplate; context: { $implicit: column }\"></ng-container>\n </ng-template>\n }\n </kendo-grid-column>\n\n @if (kitGridDetailTemplate) {\n <ng-template kendoGridDetailTemplate let-dataItem\n [kendoGridDetailTemplateShowIf]=\"detailTemplateShowIf\">\n <ng-container *ngTemplateOutlet=\"kitGridDetailTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n }\n </kendo-grid>\n}\n\n<ng-template #columnHeaderTemplate let-column>\n <div class=\"grid-title\"\n [class.sortable]=\"isColumnSortable(column)\">\n @if (column.titleIcon) {\n <kit-svg-icon class=\"grid-title-icon\"\n [icon]=\"column.titleIcon\"\n [ngClass]=\"column.titleIconType\"\n ></kit-svg-icon>\n }\n\n <div class=\"grid-title-text\">\n {{ column.title }}\n </div>\n\n @if (sortable && column.sortable) {\n @switch (getSortingDirection(column.field)) {\n @case (KitGridSortDirection.ASC) {\n <kit-svg-icon class=\"grid-title-sort-icon\"\n [icon]=\"KitSvgIcon.SORT_ASCENDING\"\n ></kit-svg-icon>\n }\n @case (KitGridSortDirection.DESC) {\n <kit-svg-icon class=\"grid-title-sort-icon\"\n [icon]=\"KitSvgIcon.SORT_DESCENDING\"\n ></kit-svg-icon>\n }\n }\n }\n </div>\n</ng-template>\n\n<ng-template #footerTemplate let-column>\n @if (columns()) {\n @if (footerTitle && column === columns()[0]) {\n {{ footerTitle }}\n }\n @else {\n {{ footerData?.[column.field] || '' }}\n }\n }\n</ng-template>\n", styles: [".kit-grid{border:none;background:none}.kit-grid .grid-title{display:flex;align-items:center;gap:8px;flex:1;line-height:1;min-width:0}.kit-grid .grid-title-icon{display:block;width:16px;height:16px;flex-shrink:0}.kit-grid .grid-title-icon.fill{fill:var(--ui-kit-color-grey-12);stroke:none}.kit-grid .grid-title-icon.stroke{fill:none;stroke:var(--ui-kit-color-grey-12)}.kit-grid .grid-title-text{font-weight:500;line-height:22px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kit-grid .grid-title-sort-icon{display:block;margin-left:auto;width:16px;height:16px;fill:var(--ui-kit-color-grey-12)}.kit-grid .grid-title.sortable{cursor:pointer}.kit-grid ::ng-deep .k-grid-table{color:var(--ui-kit-color-grey-10);font-size:14px;font-weight:400}.kit-grid ::ng-deep .k-grid-header{padding:0!important;border:none}.kit-grid ::ng-deep .k-grid-footer{padding:0!important}.kit-grid ::ng-deep .k-grid-content{overflow-y:auto}.kit-grid ::ng-deep .k-table{margin:0}.kit-grid ::ng-deep .k-table-th{padding:8px 0;border:none;border-bottom:1px solid var(--ui-kit-color-grey-11);background:var(--ui-kit-color-grey-15)}.kit-grid ::ng-deep .k-table-th .k-cell-inner{margin:0}.kit-grid ::ng-deep .k-table-th .k-cell-inner .k-link{padding:0 8px;border-right:1px solid var(--ui-kit-color-grey-11);cursor:default}.kit-grid ::ng-deep .k-table-th .k-sort-icon{display:none}.kit-grid ::ng-deep .k-table-th .k-sort-order{margin-left:2px;color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted{color:var(--ui-kit-color-main);border-bottom:1px solid var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-icon.fill{fill:var(--ui-kit-color-main);stroke:none}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-icon.stroke{fill:none;stroke:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-sort-icon{fill:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-row:not(.k-detail-row):hover,.kit-grid ::ng-deep .k-table-row:hover{background:none}.kit-grid ::ng-deep .k-table-row .k-table-td{border-bottom-width:1px}.kit-grid ::ng-deep .k-table-alt-row{background:none}.kit-grid ::ng-deep .k-table-td{padding:12px 8px;border-color:var(--ui-kit-color-grey-11);border-bottom-width:1px;background:var(--ui-kit-color-white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kit-grid ::ng-deep .k-table-td:first-child{border-inline-start-width:1px}.kit-grid ::ng-deep .k-master-row.expanded .k-table-td{color:var(--ui-kit-color-main);border-bottom-color:var(--ui-kit-color-grey-10)}.kit-grid ::ng-deep .k-master-row.expanded .k-icon:before{color:var(--ui-kit-color-main);transform:rotate(90deg)}.kit-grid ::ng-deep .k-detail-row>.k-table-td{border-bottom:1px solid var(--ui-kit-color-grey-10)}.kit-grid ::ng-deep .k-detail-row .k-detail-cell{padding:0}.kit-grid ::ng-deep .k-detail-row .k-pager{margin:20px 0;justify-content:flex-start}.kit-grid ::ng-deep .k-detail-row .k-grid-norecords{text-align:left}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon{display:flex;align-items:center;justify-content:center;font-family:WebComponentsIcons,sans-serif;font-size:22px}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon:before{content:\"\\e005\";color:var(--ui-kit-color-grey-12);transform:rotate(0);transition:transform .2s ease}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon:hover:before{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon svg{display:none}.kit-grid ::ng-deep .k-pager{display:flex;justify-content:flex-end;margin-top:20px;padding:0;border:none;background:none}.kit-grid ::ng-deep .k-pager:focus{box-shadow:none}.kit-grid ::ng-deep .k-pager-numbers-wrap{gap:8px}.kit-grid ::ng-deep .k-pager-numbers{gap:8px}.kit-grid ::ng-deep .k-pager-nav{width:32px;height:32px;font-size:14px;font-weight:400;border-radius:6px;transition:none}.kit-grid ::ng-deep .k-pager-nav:before{opacity:1;background:none;transition:none}.kit-grid ::ng-deep .k-pager-nav:after{opacity:0}.kit-grid ::ng-deep .k-pager-nav.k-selected{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-pager-nav.k-selected:before{border:1px solid var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-pager-nav:not(.k-selected):hover:before{background-color:#0000000f}.kit-grid ::ng-deep .k-pager-nav.k-disabled{color:var(--ui-kit-color-grey-12)}.kit-grid ::ng-deep .k-pager .k-pager-first,.kit-grid ::ng-deep .k-pager .k-pager-last{display:none}.kit-grid ::ng-deep .k-pager .k-button-icon{font-family:WebComponentsIcons,sans-serif}.kit-grid ::ng-deep .k-pager .k-button-icon svg{display:none}.kit-grid ::ng-deep .k-pager .k-svg-i-caret-alt-left:before{content:\"\\e016\"}.kit-grid ::ng-deep .k-pager .k-svg-i-caret-alt-right:before{content:\"\\e014\"}.kit-grid ::ng-deep .k-grid-aria-root{position:relative}.kit-grid ::ng-deep .k-loading-color{background:var(--ui-kit-color-grey-13)}\n"] }]
|
|
134
|
+
args: [{ selector: 'kit-grid', changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (data) {\n <kendo-grid class=\"kit-grid\"\n kendoGridExpandDetailsBy\n [data]=\"data\"\n [sortable]=\"sortable\"\n [sort]=\"sort\"\n [rowClass]=\"getCssRowClass\"\n [pageable]=\"getPagerSettings()\"\n [pageSize]=\"pageSize\"\n [skip]=\"skip\"\n [loading]=\"loading\"\n [(expandedDetailKeys)]=\"expandedRows\"\n (cellClick)=\"onCellClick($event)\"\n (detailExpand)=\"onDetailExpand($event)\"\n (detailCollapse)=\"onDetailCollapse($event)\"\n (sortChange)=\"onSortChange($event)\"\n (pageChange)=\"onPageChange($event)\"\n (dataStateChange)=\"onDataStateChange($event)\">\n @for (column of columns(); track column) {\n <kendo-grid-column [field]=\"column.field\"\n [sortable]=\"column.sortable\"\n [hidden]=\"column.hidden\"\n [width]=\"column.width\">\n <ng-template kendoGridHeaderTemplate>\n <ng-container *ngTemplateOutlet=\"columnHeaderTemplate; context: { $implicit: column }\"\n ></ng-container>\n </ng-template>\n\n @if (column.cellTemplate) {\n <ng-template kendoGridCellTemplate let-dataItem>\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n\n @if (showFooter) {\n <ng-template kendoGridFooterTemplate>\n <ng-container *ngTemplateOutlet=\"footerTemplate; context: { $implicit: column }\"></ng-container>\n </ng-template>\n }\n </kendo-grid-column>\n\n @if (kitGridDetailTemplate) {\n <ng-template kendoGridDetailTemplate let-dataItem\n [kendoGridDetailTemplateShowIf]=\"detailTemplateShowIf\">\n <ng-container *ngTemplateOutlet=\"kitGridDetailTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n }\n </kendo-grid>\n}\n\n@if (gridDataBinding) {\n <kendo-grid class=\"kit-grid\"\n kendoGridExpandDetailsBy\n [kendoGridBinding]=\"gridDataBinding\"\n [rowClass]=\"getCssRowClass\"\n [pageable]=\"getPagerSettings()\"\n [pageSize]=\"pageSize\"\n [sortable]=\"sortable\"\n [sort]=\"sort\"\n [skip]=\"skip\"\n [loading]=\"loading\"\n [(expandedDetailKeys)]=\"expandedRows\"\n (cellClick)=\"onCellClick($event)\"\n (detailExpand)=\"onDetailExpand($event)\"\n (detailCollapse)=\"onDetailCollapse($event)\"\n (pageChange)=\"onPageChange($event)\"\n (sortChange)=\"onSortChange($event)\"\n (dataStateChange)=\"onDataStateChange($event)\">\n @for (column of columns(); track column) {\n <kendo-grid-column [field]=\"column.field\"\n [sortable]=\"column.sortable\"\n [hidden]=\"column.hidden\"\n [width]=\"column.width\">\n @if (column.cellTemplate) {\n <ng-template kendoGridCellTemplate let-dataItem>\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n\n <ng-template kendoGridHeaderTemplate>\n <ng-container *ngTemplateOutlet=\"columnHeaderTemplate; context: { $implicit: column }\"\n ></ng-container>\n </ng-template>\n\n @if (showFooter) {\n <ng-template kendoGridFooterTemplate>\n <ng-container *ngTemplateOutlet=\"footerTemplate; context: { $implicit: column }\"></ng-container>\n </ng-template>\n }\n </kendo-grid-column>\n\n @if (kitGridDetailTemplate) {\n <ng-template kendoGridDetailTemplate let-dataItem\n [kendoGridDetailTemplateShowIf]=\"detailTemplateShowIf\">\n <ng-container *ngTemplateOutlet=\"kitGridDetailTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n }\n </kendo-grid>\n}\n\n<ng-template #columnHeaderTemplate let-column>\n <div class=\"grid-title\"\n [class.sortable]=\"isColumnSortable(column)\">\n @if (column.titleIcon) {\n <kit-svg-icon class=\"grid-title-icon\"\n [icon]=\"column.titleIcon\"\n [ngClass]=\"column.titleIconType\"\n ></kit-svg-icon>\n }\n\n <div class=\"grid-title-text\">\n {{ column.title }}\n </div>\n\n @if (sortable && column.sortable) {\n @switch (getSortingDirection(column.field)) {\n @case (KitGridSortDirection.ASC) {\n <kit-svg-icon class=\"grid-title-sort-icon\"\n [icon]=\"KitSvgIcon.SORT_ASCENDING\"\n ></kit-svg-icon>\n }\n @case (KitGridSortDirection.DESC) {\n <kit-svg-icon class=\"grid-title-sort-icon\"\n [icon]=\"KitSvgIcon.SORT_DESCENDING\"\n ></kit-svg-icon>\n }\n }\n }\n </div>\n</ng-template>\n\n<ng-template #footerTemplate let-column>\n @if (columns()) {\n @if (footerTitle && column === columns()[0]) {\n {{ footerTitle }}\n }\n @else {\n {{ footerData?.[column.field] || '' }}\n }\n }\n</ng-template>\n", styles: [".kit-grid{border:none;background:none}.kit-grid .grid-title{display:flex;align-items:center;gap:8px;flex:1;line-height:1;min-width:0}.kit-grid .grid-title-icon{display:block;width:16px;height:16px;flex-shrink:0}.kit-grid .grid-title-icon.fill{fill:var(--ui-kit-color-grey-12);stroke:none}.kit-grid .grid-title-icon.stroke{fill:none;stroke:var(--ui-kit-color-grey-12)}.kit-grid .grid-title-text{font-weight:500;line-height:22px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kit-grid .grid-title-sort-icon{display:block;margin-left:auto;width:16px;height:16px;fill:var(--ui-kit-color-grey-12)}.kit-grid .grid-title.sortable{cursor:pointer}.kit-grid ::ng-deep .k-grid-table{color:var(--ui-kit-color-grey-10);font-size:14px;font-weight:400}.kit-grid ::ng-deep .k-grid-header{padding:0!important;border:none}.kit-grid ::ng-deep .k-grid-footer{padding:0!important}.kit-grid ::ng-deep .k-grid-content{overflow-y:auto}.kit-grid ::ng-deep .k-grid-content::-webkit-scrollbar{height:4px}.kit-grid ::ng-deep .k-grid-content::-webkit-scrollbar-thumb{background-color:var(--ui-kit-color-grey-17);border-radius:2px}.kit-grid ::ng-deep .k-table{margin:0}.kit-grid ::ng-deep .k-table-th{padding:8px 0;border:none;border-bottom:1px solid var(--ui-kit-color-grey-11);background:var(--ui-kit-color-grey-15)}.kit-grid ::ng-deep .k-table-th .k-cell-inner{margin:0}.kit-grid ::ng-deep .k-table-th .k-cell-inner .k-link{padding:0 8px;border-right:1px solid var(--ui-kit-color-grey-11);cursor:default}.kit-grid ::ng-deep .k-table-th .k-sort-icon{display:none}.kit-grid ::ng-deep .k-table-th .k-sort-order{margin-left:2px;color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted{color:var(--ui-kit-color-main);border-bottom:1px solid var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-icon.fill{fill:var(--ui-kit-color-main);stroke:none}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-icon.stroke{fill:none;stroke:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-sort-icon{fill:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-row:not(.k-detail-row):hover,.kit-grid ::ng-deep .k-table-row:hover{background:none}.kit-grid ::ng-deep .k-table-row .k-table-td{border-bottom-width:1px}.kit-grid ::ng-deep .k-table-alt-row{background:none}.kit-grid ::ng-deep .k-table-td{padding:12px 8px;border-color:var(--ui-kit-color-grey-11);border-bottom-width:1px;background:var(--ui-kit-color-white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kit-grid ::ng-deep .k-table-td:first-child{border-inline-start-width:1px}.kit-grid ::ng-deep .k-master-row.expanded .k-table-td{color:var(--ui-kit-color-main);border-bottom-color:var(--ui-kit-color-grey-10)}.kit-grid ::ng-deep .k-master-row.expanded .k-icon:before{color:var(--ui-kit-color-main);transform:rotate(90deg)}.kit-grid ::ng-deep .k-detail-row>.k-table-td{border-bottom:1px solid var(--ui-kit-color-grey-10)}.kit-grid ::ng-deep .k-detail-row .k-detail-cell{padding:0}.kit-grid ::ng-deep .k-detail-row .k-pager{margin:20px 0;justify-content:flex-start}.kit-grid ::ng-deep .k-detail-row .k-grid-norecords{text-align:left}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon{display:flex;align-items:center;justify-content:center;font-family:WebComponentsIcons,sans-serif;font-size:22px}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon:before{content:\"\\e005\";color:var(--ui-kit-color-grey-12);transform:rotate(0);transition:transform .2s ease}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon:hover:before{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon svg{display:none}.kit-grid ::ng-deep .k-pager{display:flex;justify-content:flex-end;margin-top:20px;padding:0;border:none;background:none}.kit-grid ::ng-deep .k-pager:focus{box-shadow:none}.kit-grid ::ng-deep .k-pager-numbers-wrap{gap:8px}.kit-grid ::ng-deep .k-pager-numbers{gap:8px}.kit-grid ::ng-deep .k-pager-nav{width:32px;height:32px;font-size:14px;font-weight:400;border-radius:6px;transition:none}.kit-grid ::ng-deep .k-pager-nav:before{opacity:1;background:none;transition:none}.kit-grid ::ng-deep .k-pager-nav:after{opacity:0}.kit-grid ::ng-deep .k-pager-nav.k-selected{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-pager-nav.k-selected:before{border:1px solid var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-pager-nav:not(.k-selected):hover:before{background-color:#0000000f}.kit-grid ::ng-deep .k-pager-nav.k-disabled{color:var(--ui-kit-color-grey-12)}.kit-grid ::ng-deep .k-pager .k-pager-first,.kit-grid ::ng-deep .k-pager .k-pager-last{display:none}.kit-grid ::ng-deep .k-pager .k-button-icon{font-family:WebComponentsIcons,sans-serif}.kit-grid ::ng-deep .k-pager .k-button-icon svg{display:none}.kit-grid ::ng-deep .k-pager .k-svg-i-caret-alt-left:before{content:\"\\e016\"}.kit-grid ::ng-deep .k-pager .k-svg-i-caret-alt-right:before{content:\"\\e014\"}.kit-grid ::ng-deep .k-grid-aria-root{position:relative}.kit-grid ::ng-deep .k-loading-color{background:var(--ui-kit-color-grey-13)}\n"] }]
|
|
127
135
|
}], propDecorators: { data: [{
|
|
128
136
|
type: Input
|
|
129
137
|
}], gridDataBinding: [{
|
|
@@ -148,6 +156,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
148
156
|
type: Input
|
|
149
157
|
}], footerData: [{
|
|
150
158
|
type: Input
|
|
159
|
+
}], addRowClass: [{
|
|
160
|
+
type: Input
|
|
151
161
|
}], pageChanged: [{
|
|
152
162
|
type: Output
|
|
153
163
|
}], sortChanged: [{
|
|
@@ -164,4 +174,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
164
174
|
type: ContentChild,
|
|
165
175
|
args: [KitGridDetailTemplateDirective, { read: TemplateRef }]
|
|
166
176
|
}] } });
|
|
167
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2l0LWdyaWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9raXQtZ3JpZC9raXQtZ3JpZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2tpdC1ncmlkL2tpdC1ncmlkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixlQUFlLEVBQ2YsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBRU4sV0FBVyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBS3JGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQVdoRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQzs7Ozs7QUFRdEYsTUFBTSxPQUFPLGdCQUFnQjtJQU43QjtRQWlCRTs7V0FFRztRQUNNLGFBQVEsR0FBa0MsS0FBSyxDQUFDO1FBRXpEOztXQUVHO1FBQ00sU0FBSSxHQUE0QixFQUFFLENBQUM7UUFFNUM7O1dBRUc7UUFDTSxhQUFRLEdBQVksS0FBSyxDQUFDO1FBT25DOztXQUVHO1FBQ00sU0FBSSxHQUFXLENBQUMsQ0FBQztRQUUxQjs7V0FFRztRQUNNLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFFbEM7O1dBRUc7UUFDTSx5QkFBb0IsR0FBNkIsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDO1FBRXRFOztXQUVHO1FBQ00sZUFBVSxHQUFZLEtBQUssQ0FBQztRQUVyQzs7V0FFRztRQUNNLGdCQUFXLEdBQVcs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Q2pELENBQUM7SUFFTyxlQUFlO1FBQ3JCLElBQUksQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO0lBQ3pCLENBQUM7OEdBNUpVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLG1rQkE2Rm1ELHNCQUFzQixxRkFGdEYsOEJBQThCLDJCQUFVLFdBQVcsNkJDL0huRSw0NEtBbUpBOzsyRkQvR2EsZ0JBQWdCO2tCQU41QixTQUFTOytCQUNFLFVBQVUsbUJBR0gsdUJBQXVCLENBQUMsTUFBTTs4QkFNdEMsSUFBSTtzQkFBWixLQUFLO2dCQUtHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBS0csUUFBUTtzQkFBaEIsS0FBSztnQkFLRyxJQUFJO3NCQUFaLEtBQUs7Z0JBS0csUUFBUTtzQkFBaEIsS0FBSztnQkFLRyxRQUFRO3NCQUFoQixLQUFLO2dCQUtHLElBQUk7c0JBQVosS0FBSztnQkFLRyxPQUFPO3NCQUFmLEtBQUs7Z0JBS0csb0JBQW9CO3NCQUE1QixLQUFLO2dCQUtHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBS0csV0FBVztzQkFBbkIsS0FBSztnQkFLRyxVQUFVO3NCQUFsQixLQUFLO2dCQUtJLFdBQVc7c0JBQXBCLE1BQU07Z0JBS0csV0FBVztzQkFBcEIsTUFBTTtnQkFLRyxnQkFBZ0I7c0JBQXpCLE1BQU07Z0JBS0csY0FBYztzQkFBdkIsTUFBTTtnQkFLRyxlQUFlO3NCQUF4QixNQUFNO2dCQUtHLFdBQVc7c0JBQXBCLE1BQU07Z0JBRThELHFCQUFxQjtzQkFBekYsWUFBWTt1QkFBQyw4QkFBOEIsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIGNvbnRlbnRDaGlsZHJlbixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBTaWduYWwsXG4gIFRlbXBsYXRlUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEtpdEdyaWRDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuL2tpdC1ncmlkLWNvbHVtbi9raXQtZ3JpZC1jb2x1bW4uY29tcG9uZW50JztcbmltcG9ydCB7XG4gIFBhZ2VyU2V0dGluZ3MsXG4gIFJvd0NsYXNzQXJncyxcbn0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLWFuZ3VsYXItZ3JpZCc7XG5pbXBvcnQgeyBLaXRTdmdJY29uIH0gZnJvbSAnLi4va2l0LXN2Zy1pY29uL2tpdC1zdmctaWNvbi5jb25zdCc7XG5pbXBvcnQge1xuICBLaXRHcmlkRGF0YVN0YXRlQ2hhbmdlRXZlbnQsXG4gIEtpdEdyaWRTb3J0RGVzY3JpcHRvcixcbiAgS2l0R3JpZFNvcnRTZXR0aW5ncyxcbiAgS2l0R3JpZFBhZ2VDaGFuZ2VFdmVudCxcbiAgS2l0R3JpZERldGFpbEV4cGFuZEV2ZW50LFxuICBLaXRHcmlkRGV0YWlsQ29sbGFwc2VFdmVudCxcbiAgS2l0R3JpZERhdGFSZXN1bHQsXG4gIEtpdEdyaWRDZWxsQ2xpY2tFdmVudCxcbn0gZnJvbSAnLi9raXQtZ3JpZC5tb2RlbCc7XG5pbXBvcnQgeyBLaXRHcmlkU29ydERpcmVjdGlvbiB9IGZyb20gJy4va2l0LWdyaWQuY29uc3QnO1xuaW1wb3J0IHsgS2l0R3JpZERldGFpbFRlbXBsYXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9raXQtZ3JpZC1kZXRhaWwtdGVtcGxhdGUuZGlyZWN0aXZlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAna2l0LWdyaWQnLFxuICB0ZW1wbGF0ZVVybDogJy4va2l0LWdyaWQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4va2l0LWdyaWQuY29tcG9uZW50LnNjc3MnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgS2l0R3JpZENvbXBvbmVudDxUPiB7XG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkYXRhIG9mIHRoZSBncmlkLiBBbGxvd3MgdXNlciB0byBpbXBsZW1lbnQgZGF0YSBvcGVyYXRpb25zIG1hbnVhbGx5XG4gICAqL1xuICBASW5wdXQoKSBkYXRhPzogVFtdIHwgS2l0R3JpZERhdGFSZXN1bHQ8VD47XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGRhdGEgb2YgdGhlIGdyaWQuIEFsbG93cyB1c2VyIHRvIGltcGxlbWVudCBkYXRhIG9wZXJhdGlvbnMgYXV0b21hdGljYWxseVxuICAgKi9cbiAgQElucHV0KCkgZ3JpZERhdGFCaW5kaW5nPzogVFtdO1xuXG4gIC8qKlxuICAgKiBFbmFibGVzIHRoZSBzb3J0aW5nIG9mIHRoZSBncmlkIGNvbHVtbnNcbiAgICovXG4gIEBJbnB1dCgpIHNvcnRhYmxlOiBLaXRHcmlkU29ydFNldHRpbmdzIHwgYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUaGUgZGVzY3JpcHRvcnMgYnkgd2hpY2ggdGhlIGRhdGEgd2lsbCBiZSBzb3J0ZWRcbiAgICovXG4gIEBJbnB1dCgpIHNvcnQ6IEtpdEdyaWRTb3J0RGVzY3JpcHRvcltdID0gW107XG5cbiAgLyoqXG4gICAqIEVuYWJsZXMgdGhlIHBhZ2VyIG9mIHRoZSBncmlkXG4gICAqL1xuICBASW5wdXQoKSBwYWdlYWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIHRoZSBwYWdlIHNpemVcbiAgICovXG4gIEBJbnB1dCgpIHBhZ2VTaXplPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIHRoZSBudW1iZXIgb2YgcmVjb3JkcyB0byBiZSBza2lwcGVkIGJ5IHRoZSBwYWdlclxuICAgKi9cbiAgQElucHV0KCkgc2tpcDogbnVtYmVyID0gMDtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIGlmIHRoZSBsb2FkaW5nIGluZGljYXRvciBvZiB0aGUgZ3JpZCB3aWxsIGJlIGRpc3BsYXllZFxuICAgKi9cbiAgQElucHV0KCkgbG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBGdW5jdGlvbiB0byBkZXRlcm1pbmUgaWYgdGhlIGRldGFpbCB0ZW1wbGF0ZSBzaG91bGQgYmUgdmlzaWJsZVxuICAgKi9cbiAgQElucHV0KCkgZGV0YWlsVGVtcGxhdGVTaG93SWY6IChkYXRhSXRlbTogVCkgPT4gYm9vbGVhbiA9ICgpID0+IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBGbGFnIHRvIHNob3cgb3IgaGlkZSB0aGUgZm9vdGVyIHJvd1xuICAgKi9cbiAgQElucHV0KCkgc2hvd0Zvb3RlcjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUaXRsZSB0byBkaXNwbGF5IGluIHRoZSBmaXJzdCBjb2x1bW4gb2YgdGhlIGZvb3RlciByb3dcbiAgICovXG4gIEBJbnB1dCgpIGZvb3RlclRpdGxlOiBzdHJpbmcgPSAnJztcblxuICAvKipcbiAgICogRGF0YSB0byBkaXNwbGF5IGluIHRoZSBmb290ZXIgcm93XG4gICAqL1xuICBASW5wdXQoKSBmb290ZXJEYXRhPzogUGFydGlhbDxSZWNvcmQ8a2V5b2YgVCwgVFtrZXlvZiBUXT4+O1xuXG4gIC8qKlxuICAgKiBBbiBhY3Rpb24gd2hpY2ggaXMgZW1pdHRlZCB3aGVuIHRoZSBwYWdlIG9mIHRoZSBncmlkIGlzIGNoYW5nZWRcbiAgICovXG4gIEBPdXRwdXQoKSBwYWdlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEtpdEdyaWRQYWdlQ2hhbmdlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxLaXRHcmlkUGFnZUNoYW5nZUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBBbiBhY3Rpb24gd2hpY2ggaXMgZW1pdHRlZCBvbmNlIHRoZSBzb3J0aW5nIG9mIHRoZSBncmlkIGlzIGNoYW5nZWRcbiAgICovXG4gIEBPdXRwdXQoKSBzb3J0Q2hhbmdlZDogRXZlbnRFbWl0dGVyPEtpdEdyaWRTb3J0RGVzY3JpcHRvcltdPiA9IG5ldyBFdmVudEVtaXR0ZXI8S2l0R3JpZFNvcnREZXNjcmlwdG9yW10+KCk7XG5cbiAgLyoqXG4gICAqIEFuIGFjdGlvbiB3aGljaCBpcyBlbWl0dGVkIHdoZW4gdGhlIGRhdGEgc3RhdGUgb2YgdGhlIGdyaWQgaXMgY2hhbmdlZFxuICAgKi9cbiAgQE91dHB1dCgpIGRhdGFTdGF0ZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxLaXRHcmlkRGF0YVN0YXRlQ2hhbmdlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxLaXRHcmlkRGF0YVN0YXRlQ2hhbmdlRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEFuIGFjdGlvbiB3aGljaCBpcyBlbWl0dGVkIHdoZW4gdGhlIG1hc3RlciByb3cgaXMgZXhwYW5kZWRcbiAgICovXG4gIEBPdXRwdXQoKSBkZXRhaWxFeHBhbmRlZDogRXZlbnRFbWl0dGVyPEtpdEdyaWREZXRhaWxFeHBhbmRFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEtpdEdyaWREZXRhaWxFeHBhbmRFdmVudD4oKTtcblxuICAvKipcbiAgICogQW4gYWN0aW9uIHdoaWNoIGlzIGVtaXR0ZWQgd2hlbiB0aGUgbWFzdGVyIHJvdyBpcyBjb2xsYXBzZWRcbiAgICovXG4gIEBPdXRwdXQoKSBkZXRhaWxDb2xsYXBzZWQ6IEV2ZW50RW1pdHRlcjxLaXRHcmlkRGV0YWlsQ29sbGFwc2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEtpdEdyaWREZXRhaWxDb2xsYXBzZUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBBbiBhY3Rpb24gd2hpY2ggaXMgZW1pdHRlZCB3aGVuIHVzZXIgY2xpY2tzIGEgY2VsbFxuICAgKi9cbiAgQE91dHB1dCgpIGNlbGxDbGlja2VkOiBFdmVudEVtaXR0ZXI8S2l0R3JpZENlbGxDbGlja0V2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8S2l0R3JpZENlbGxDbGlja0V2ZW50PigpO1xuXG4gIEBDb250ZW50Q2hpbGQoS2l0R3JpZERldGFpbFRlbXBsYXRlRGlyZWN0aXZlLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pIGtpdEdyaWREZXRhaWxUZW1wbGF0ZTogVGVtcGxhdGVSZWY8SFRNTEVsZW1lbnQ+IHwgbnVsbCA9IG51bGw7XG5cbiAgcmVhZG9ubHkgY29sdW1uczogU2lnbmFsPHJlYWRvbmx5IEtpdEdyaWRDb2x1bW5Db21wb25lbnRbXT4gPSBjb250ZW50Q2hpbGRyZW4oS2l0R3JpZENvbHVtbkNvbXBvbmVudCk7XG4gIHJlYWRvbmx5IEtpdFN2Z0ljb246IHR5cGVvZiBLaXRTdmdJY29uID0gS2l0U3ZnSWNvbjtcbiAgcmVhZG9ubHkgS2l0R3JpZFNvcnREaXJlY3Rpb246IHR5cGVvZiBLaXRHcmlkU29ydERpcmVjdGlvbiA9IEtpdEdyaWRTb3J0RGlyZWN0aW9uO1xuICBleHBhbmRlZFJvd3M6IFRbXSA9IFtdO1xuXG4gIG9uRGF0YVN0YXRlQ2hhbmdlKGV2ZW50OiBLaXRHcmlkRGF0YVN0YXRlQ2hhbmdlRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLnNraXAgPSBldmVudC5za2lwO1xuICAgIHRoaXMuc29ydCA9IGV2ZW50LnNvcnQgfHwgW107XG4gICAgdGhpcy5jb2xsYXBzZUFsbFJvd3MoKTtcbiAgICB0aGlzLmRhdGFTdGF0ZUNoYW5nZWQuZW1pdChldmVudCk7XG4gIH1cblxuICBvblNvcnRDaGFuZ2UoZXZlbnQ6IEtpdEdyaWRTb3J0RGVzY3JpcHRvcltdKTogdm9pZCB7XG4gICAgdGhpcy5zb3J0ID0gZXZlbnQ7XG4gICAgdGhpcy5jb2xsYXBzZUFsbFJvd3MoKTtcbiAgICB0aGlzLnNvcnRDaGFuZ2VkLmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgZ2V0U29ydGluZ0RpcmVjdGlvbihjb2x1bW5GaWVsZDogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuc29ydC5maW5kKGl0ZW0gPT4gaXRlbS5maWVsZCA9PT0gY29sdW1uRmllbGQpPy5kaXIgPz8gbnVsbDtcbiAgfVxuXG4gIGlzQ29sdW1uU29ydGFibGUoY29sdW1uOiBLaXRHcmlkQ29sdW1uQ29tcG9uZW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5zb3J0YWJsZSAmJiBjb2x1bW4uc29ydGFibGU7XG4gIH1cblxuICBvbkRldGFpbEV4cGFuZChldmVudDogS2l0R3JpZERldGFpbEV4cGFuZEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5kZXRhaWxFeHBhbmRlZC5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIG9uRGV0YWlsQ29sbGFwc2UoZXZlbnQ6IEtpdEdyaWREZXRhaWxDb2xsYXBzZUV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5kZXRhaWxDb2xsYXBzZWQuZW1pdChldmVudCk7XG4gIH1cblxuICBvblBhZ2VDaGFuZ2UoZXZlbnQ6IEtpdEdyaWRQYWdlQ2hhbmdlRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLnNraXAgPSBldmVudC5za2lwO1xuICAgIHRoaXMuY29sbGFwc2VBbGxSb3dzKCk7XG4gICAgdGhpcy5wYWdlQ2hhbmdlZC5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIG9uQ2VsbENsaWNrKGV2ZW50OiBLaXRHcmlkQ2VsbENsaWNrRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmNlbGxDbGlja2VkLmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgZ2V0Q3NzUm93Q2xhc3MgPSAoY29udGV4dDogUm93Q2xhc3NBcmdzKTogUmVjb3JkPHN0cmluZywgYm9vbGVhbj4gPT4ge1xuICAgIGNvbnN0IGV4cGFuZGVkOiBib29sZWFuID0gdGhpcy5leHBhbmRlZFJvd3MuaW5jbHVkZXMoY29udGV4dC5kYXRhSXRlbSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgZXhwYW5kZWQsXG4gICAgfTtcbiAgfTtcblxuICBnZXRQYWdlclNldHRpbmdzKCk6IGJvb2xlYW4gfCBQYWdlclNldHRpbmdzIHtcbiAgICBjb25zdCBwYWdlclNldHRpbmdzOiBQYWdlclNldHRpbmdzID0ge1xuICAgICAgYnV0dG9uQ291bnQ6IDUsXG4gICAgICBpbmZvOiBmYWxzZSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHRoaXMucGFnZWFibGUgJiYgcGFnZXJTZXR0aW5ncyB8fCBmYWxzZTtcbiAgfVxuXG4gIHByaXZhdGUgY29sbGFwc2VBbGxSb3dzKCk6IHZvaWQge1xuICAgIHRoaXMuZXhwYW5kZWRSb3dzID0gW107XG4gIH1cbn1cbiIsIkBpZiAoZGF0YSkge1xuICA8a2VuZG8tZ3JpZCBjbGFzcz1cImtpdC1ncmlkXCJcbiAgICAgICAgICAgICAga2VuZG9HcmlkRXhwYW5kRGV0YWlsc0J5XG4gICAgICAgICAgICAgIFtkYXRhXT1cImRhdGFcIlxuICAgICAgICAgICAgICBbc29ydGFibGVdPVwic29ydGFibGVcIlxuICAgICAgICAgICAgICBbc29ydF09XCJzb3J0XCJcbiAgICAgICAgICAgICAgW3Jvd0NsYXNzXT1cImdldENzc1Jvd0NsYXNzXCJcbiAgICAgICAgICAgICAgW3BhZ2VhYmxlXT1cImdldFBhZ2VyU2V0dGluZ3MoKVwiXG4gICAgICAgICAgICAgIFtwYWdlU2l6ZV09XCJwYWdlU2l6ZVwiXG4gICAgICAgICAgICAgIFtza2lwXT1cInNraXBcIlxuICAgICAgICAgICAgICBbbG9hZGluZ109XCJsb2FkaW5nXCJcbiAgICAgICAgICAgICAgWyhleHBhbmRlZERldGFpbEtleXMpXT1cImV4cGFuZGVkUm93c1wiXG4gICAgICAgICAgICAgIChjZWxsQ2xpY2spPVwib25DZWxsQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgICAgIChkZXRhaWxFeHBhbmQpPVwib25EZXRhaWxFeHBhbmQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgIChkZXRhaWxDb2xsYXBzZSk9XCJvbkRldGFpbENvbGxhcHNlKCRldmVudClcIlxuICAgICAgICAgICAgICAoc29ydENoYW5nZSk9XCJvblNvcnRDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAgIChwYWdlQ2hhbmdlKT1cIm9uUGFnZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgKGRhdGFTdGF0ZUNoYW5nZSk9XCJvbkRhdGFTdGF0ZUNoYW5nZSgkZXZlbnQpXCI+XG4gICAgQGZvciAoY29sdW1uIG9mIGNvbHVtbnMoKTsgdHJhY2sgY29sdW1uKSB7XG4gICAgICA8a2VuZG8tZ3JpZC1jb2x1bW4gW2ZpZWxkXT1cImNvbHVtbi5maWVsZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3NvcnRhYmxlXT1cImNvbHVtbi5zb3J0YWJsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2hpZGRlbl09XCJjb2x1bW4uaGlkZGVuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbd2lkdGhdPVwiY29sdW1uLndpZHRoXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBrZW5kb0dyaWRIZWFkZXJUZW1wbGF0ZT5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sdW1uSGVhZGVyVGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBjb2x1bW4gfVwiXG4gICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgICAgIEBpZiAoY29sdW1uLmNlbGxUZW1wbGF0ZSkge1xuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBrZW5kb0dyaWRDZWxsVGVtcGxhdGUgbGV0LWRhdGFJdGVtPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbHVtbi5jZWxsVGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBkYXRhSXRlbSB9XCJcbiAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChzaG93Rm9vdGVyKSB7XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIGtlbmRvR3JpZEZvb3RlclRlbXBsYXRlPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImZvb3RlclRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogY29sdW1uIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICB9XG4gICAgICA8L2tlbmRvLWdyaWQtY29sdW1uPlxuXG4gICAgICBAaWYgKGtpdEdyaWREZXRhaWxUZW1wbGF0ZSkge1xuICAgICAgICA8bmctdGVtcGxhdGUga2VuZG9HcmlkRGV0YWlsVGVtcGxhdGUgbGV0LWRhdGFJdGVtXG4gICAgICAgICAgICAgICAgICAgICBba2VuZG9HcmlkRGV0YWlsVGVtcGxhdGVTaG93SWZdPVwiZGV0YWlsVGVtcGxhdGVTaG93SWZcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwia2l0R3JpZERldGFpbFRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogZGF0YUl0ZW0gfVwiXG4gICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgfVxuICAgIH1cbiAgPC9rZW5kby1ncmlkPlxufVxuXG5AaWYgKGdyaWREYXRhQmluZGluZykge1xuICA8a2VuZG8tZ3JpZCBjbGFzcz1cImtpdC1ncmlkXCJcbiAgICAgICAgICAgICAga2VuZG9HcmlkRXhwYW5kRGV0YWlsc0J5XG4gICAgICAgICAgICAgIFtrZW5kb0dyaWRCaW5kaW5nXT1cImdyaWREYXRhQmluZGluZ1wiXG4gICAgICAgICAgICAgIFtyb3dDbGFzc109XCJnZXRDc3NSb3dDbGFzc1wiXG4gICAgICAgICAgICAgIFtwYWdlYWJsZV09XCJnZXRQYWdlclNldHRpbmdzKClcIlxuICAgICAgICAgICAgICBbcGFnZVNpemVdPVwicGFnZVNpemVcIlxuICAgICAgICAgICAgICBbc29ydGFibGVdPVwic29ydGFibGVcIlxuICAgICAgICAgICAgICBbc29ydF09XCJzb3J0XCJcbiAgICAgICAgICAgICAgW3NraXBdPVwic2tpcFwiXG4gICAgICAgICAgICAgIFtsb2FkaW5nXT1cImxvYWRpbmdcIlxuICAgICAgICAgICAgICBbKGV4cGFuZGVkRGV0YWlsS2V5cyldPVwiZXhwYW5kZWRSb3dzXCJcbiAgICAgICAgICAgICAgKGNlbGxDbGljayk9XCJvbkNlbGxDbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgICAgKGRldGFpbEV4cGFuZCk9XCJvbkRldGFpbEV4cGFuZCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgKGRldGFpbENvbGxhcHNlKT1cIm9uRGV0YWlsQ29sbGFwc2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAgIChwYWdlQ2hhbmdlKT1cIm9uUGFnZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgKHNvcnRDaGFuZ2UpPVwib25Tb3J0Q2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgICAoZGF0YVN0YXRlQ2hhbmdlKT1cIm9uRGF0YVN0YXRlQ2hhbmdlKCRldmVudClcIj5cbiAgICBAZm9yIChjb2x1bW4gb2YgY29sdW1ucygpOyB0cmFjayBjb2x1bW4pIHtcbiAgICAgIDxrZW5kby1ncmlkLWNvbHVtbiBbZmllbGRdPVwiY29sdW1uLmZpZWxkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbc29ydGFibGVdPVwiY29sdW1uLnNvcnRhYmxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbaGlkZGVuXT1cImNvbHVtbi5oaWRkZW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFt3aWR0aF09XCJjb2x1bW4ud2lkdGhcIj5cbiAgICAgICAgQGlmIChjb2x1bW4uY2VsbFRlbXBsYXRlKSB7XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIGtlbmRvR3JpZENlbGxUZW1wbGF0ZSBsZXQtZGF0YUl0ZW0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sdW1uLmNlbGxUZW1wbGF0ZTsgY29udGV4dDogeyAkaW1wbGljaXQ6IGRhdGFJdGVtIH1cIlxuICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIH1cblxuICAgICAgICA8bmctdGVtcGxhdGUga2VuZG9HcmlkSGVhZGVyVGVtcGxhdGU+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbHVtbkhlYWRlclRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogY29sdW1uIH1cIlxuICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICBAaWYgKHNob3dGb290ZXIpIHtcbiAgICAgICAgICA8bmctdGVtcGxhdGUga2VuZG9HcmlkRm9vdGVyVGVtcGxhdGU+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZm9vdGVyVGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBjb2x1bW4gfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIH1cbiAgICAgIDwva2VuZG8tZ3JpZC1jb2x1bW4+XG5cbiAgICAgIEBpZiAoa2l0R3JpZERldGFpbFRlbXBsYXRlKSB7XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBrZW5kb0dyaWREZXRhaWxUZW1wbGF0ZSBsZXQtZGF0YUl0ZW1cbiAgICAgICAgICAgICAgICAgICAgIFtrZW5kb0dyaWREZXRhaWxUZW1wbGF0ZVNob3dJZl09XCJkZXRhaWxUZW1wbGF0ZVNob3dJZlwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJraXRHcmlkRGV0YWlsVGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBkYXRhSXRlbSB9XCJcbiAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICB9XG4gICAgfVxuICA8L2tlbmRvLWdyaWQ+XG59XG5cbjxuZy10ZW1wbGF0ZSAjY29sdW1uSGVhZGVyVGVtcGxhdGUgbGV0LWNvbHVtbj5cbiAgPGRpdiBjbGFzcz1cImdyaWQtdGl0bGVcIlxuICAgICAgIFtjbGFzcy5zb3J0YWJsZV09XCJpc0NvbHVtblNvcnRhYmxlKGNvbHVtbilcIj5cbiAgICBAaWYgKGNvbHVtbi50aXRsZUljb24pIHtcbiAgICAgIDxraXQtc3ZnLWljb24gY2xhc3M9XCJncmlkLXRpdGxlLWljb25cIlxuICAgICAgICAgICAgICAgICAgICBbaWNvbl09XCJjb2x1bW4udGl0bGVJY29uXCJcbiAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiY29sdW1uLnRpdGxlSWNvblR5cGVcIlxuICAgICAgPjwva2l0LXN2Zy1pY29uPlxuICAgIH1cblxuICAgIDxkaXYgY2xhc3M9XCJncmlkLXRpdGxlLXRleHRcIj5cbiAgICAgIHt7IGNvbHVtbi50aXRsZSB9fVxuICAgIDwvZGl2PlxuXG4gICAgQGlmIChzb3J0YWJsZSAmJiBjb2x1bW4uc29ydGFibGUpIHtcbiAgICAgIEBzd2l0Y2ggKGdldFNvcnRpbmdEaXJlY3Rpb24oY29sdW1uLmZpZWxkKSkge1xuICAgICAgICBAY2FzZSAoS2l0R3JpZFNvcnREaXJlY3Rpb24uQVNDKSB7XG4gICAgICAgICAgPGtpdC1zdmctaWNvbiBjbGFzcz1cImdyaWQtdGl0bGUtc29ydC1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uXT1cIktpdFN2Z0ljb24uU09SVF9BU0NFTkRJTkdcIlxuICAgICAgICAgID48L2tpdC1zdmctaWNvbj5cbiAgICAgICAgfVxuICAgICAgICBAY2FzZSAoS2l0R3JpZFNvcnREaXJlY3Rpb24uREVTQykge1xuICAgICAgICAgIDxraXQtc3ZnLWljb24gY2xhc3M9XCJncmlkLXRpdGxlLXNvcnQtaWNvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaWNvbl09XCJLaXRTdmdJY29uLlNPUlRfREVTQ0VORElOR1wiXG4gICAgICAgICAgPjwva2l0LXN2Zy1pY29uPlxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZm9vdGVyVGVtcGxhdGUgbGV0LWNvbHVtbj5cbiAgQGlmIChjb2x1bW5zKCkpIHtcbiAgICBAaWYgKGZvb3RlclRpdGxlICYmIGNvbHVtbiA9PT0gY29sdW1ucygpWzBdKSB7XG4gICAgICB7eyBmb290ZXJUaXRsZSB9fVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB7eyBmb290ZXJEYXRhPy5bY29sdW1uLmZpZWxkXSB8fCAnJyB9fVxuICAgIH1cbiAgfVxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
177
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2l0LWdyaWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9raXQtZ3JpZC9raXQtZ3JpZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2tpdC1ncmlkL2tpdC1ncmlkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixlQUFlLEVBQ2YsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBRU4sV0FBVyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBS3JGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQVdoRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQzs7Ozs7QUFRdEYsTUFBTSxPQUFPLGdCQUFnQjtJQU43QjtRQWlCRTs7V0FFRztRQUNNLGFBQVEsR0FBa0MsS0FBSyxDQUFDO1FBRXpEOztXQUVHO1FBQ00sU0FBSSxHQUE0QixFQUFFLENBQUM7UUFFNUM7O1dBRUc7UUFDTSxhQUFRLEdBQVksS0FBSyxDQUFDO1FBT25DOztXQUVHO1FBQ00sU0FBSSxHQUFXLENBQUMsQ0FBQztRQUUxQjs7V0FFRztRQUNNLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFFbEM7O1dBRUc7UUFDTSx5QkFBb0IsR0FBNkIsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDO1FBRXRFOztXQUVHO1FBQ00sZUFBVSxHQUFZLEtBQUssQ0FBQztRQUVyQzs7V0FFRztRQUNNLGdCQUFXLEdBQVcs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QUMsOEJBQThCLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBjb250ZW50Q2hpbGRyZW4sXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgU2lnbmFsLFxuICBUZW1wbGF0ZVJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBLaXRHcmlkQ29sdW1uQ29tcG9uZW50IH0gZnJvbSAnLi9raXQtZ3JpZC1jb2x1bW4va2l0LWdyaWQtY29sdW1uLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBQYWdlclNldHRpbmdzLFxuICBSb3dDbGFzc0FyZ3MsXG59IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLWdyaWQnO1xuaW1wb3J0IHsgS2l0U3ZnSWNvbiB9IGZyb20gJy4uL2tpdC1zdmctaWNvbi9raXQtc3ZnLWljb24uY29uc3QnO1xuaW1wb3J0IHtcbiAgS2l0R3JpZERhdGFTdGF0ZUNoYW5nZUV2ZW50LFxuICBLaXRHcmlkU29ydERlc2NyaXB0b3IsXG4gIEtpdEdyaWRTb3J0U2V0dGluZ3MsXG4gIEtpdEdyaWRQYWdlQ2hhbmdlRXZlbnQsXG4gIEtpdEdyaWREZXRhaWxFeHBhbmRFdmVudCxcbiAgS2l0R3JpZERldGFpbENvbGxhcHNlRXZlbnQsXG4gIEtpdEdyaWREYXRhUmVzdWx0LFxuICBLaXRHcmlkQ2VsbENsaWNrRXZlbnQsXG59IGZyb20gJy4va2l0LWdyaWQubW9kZWwnO1xuaW1wb3J0IHsgS2l0R3JpZFNvcnREaXJlY3Rpb24gfSBmcm9tICcuL2tpdC1ncmlkLmNvbnN0JztcbmltcG9ydCB7IEtpdEdyaWREZXRhaWxUZW1wbGF0ZURpcmVjdGl2ZSB9IGZyb20gJy4va2l0LWdyaWQtZGV0YWlsLXRlbXBsYXRlLmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2tpdC1ncmlkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2tpdC1ncmlkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2tpdC1ncmlkLmNvbXBvbmVudC5zY3NzJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEtpdEdyaWRDb21wb25lbnQ8VD4ge1xuICAvKipcbiAgICogU2V0cyB0aGUgZGF0YSBvZiB0aGUgZ3JpZC4gQWxsb3dzIHVzZXIgdG8gaW1wbGVtZW50IGRhdGEgb3BlcmF0aW9ucyBtYW51YWxseVxuICAgKi9cbiAgQElucHV0KCkgZGF0YT86IFRbXSB8IEtpdEdyaWREYXRhUmVzdWx0PFQ+O1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkYXRhIG9mIHRoZSBncmlkLiBBbGxvd3MgdXNlciB0byBpbXBsZW1lbnQgZGF0YSBvcGVyYXRpb25zIGF1dG9tYXRpY2FsbHlcbiAgICovXG4gIEBJbnB1dCgpIGdyaWREYXRhQmluZGluZz86IFRbXTtcblxuICAvKipcbiAgICogRW5hYmxlcyB0aGUgc29ydGluZyBvZiB0aGUgZ3JpZCBjb2x1bW5zXG4gICAqL1xuICBASW5wdXQoKSBzb3J0YWJsZTogS2l0R3JpZFNvcnRTZXR0aW5ncyB8IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogVGhlIGRlc2NyaXB0b3JzIGJ5IHdoaWNoIHRoZSBkYXRhIHdpbGwgYmUgc29ydGVkXG4gICAqL1xuICBASW5wdXQoKSBzb3J0OiBLaXRHcmlkU29ydERlc2NyaXB0b3JbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBFbmFibGVzIHRoZSBwYWdlciBvZiB0aGUgZ3JpZFxuICAgKi9cbiAgQElucHV0KCkgcGFnZWFibGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogRGVmaW5lcyB0aGUgcGFnZSBzaXplXG4gICAqL1xuICBASW5wdXQoKSBwYWdlU2l6ZT86IG51bWJlcjtcblxuICAvKipcbiAgICogRGVmaW5lcyB0aGUgbnVtYmVyIG9mIHJlY29yZHMgdG8gYmUgc2tpcHBlZCBieSB0aGUgcGFnZXJcbiAgICovXG4gIEBJbnB1dCgpIHNraXA6IG51bWJlciA9IDA7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyBpZiB0aGUgbG9hZGluZyBpbmRpY2F0b3Igb2YgdGhlIGdyaWQgd2lsbCBiZSBkaXNwbGF5ZWRcbiAgICovXG4gIEBJbnB1dCgpIGxvYWRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogRnVuY3Rpb24gdG8gZGV0ZXJtaW5lIGlmIHRoZSBkZXRhaWwgdGVtcGxhdGUgc2hvdWxkIGJlIHZpc2libGVcbiAgICovXG4gIEBJbnB1dCgpIGRldGFpbFRlbXBsYXRlU2hvd0lmOiAoZGF0YUl0ZW06IFQpID0+IGJvb2xlYW4gPSAoKSA9PiBmYWxzZTtcblxuICAvKipcbiAgICogRmxhZyB0byBzaG93IG9yIGhpZGUgdGhlIGZvb3RlciByb3dcbiAgICovXG4gIEBJbnB1dCgpIHNob3dGb290ZXI6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogVGl0bGUgdG8gZGlzcGxheSBpbiB0aGUgZmlyc3QgY29sdW1uIG9mIHRoZSBmb290ZXIgcm93XG4gICAqL1xuICBASW5wdXQoKSBmb290ZXJUaXRsZTogc3RyaW5nID0gJyc7XG5cbiAgLyoqXG4gICAqIERhdGEgdG8gZGlzcGxheSBpbiB0aGUgZm9vdGVyIHJvd1xuICAgKi9cbiAgQElucHV0KCkgZm9vdGVyRGF0YT86IFBhcnRpYWw8UmVjb3JkPGtleW9mIFQsIFRba2V5b2YgVF0+PjtcbiAgXG4gIC8qKlxuICAgKiBNZXRob2QgdG8gYWRkIGFkZGl0aW9uYWwgbG9naWMgdG8gdGhlIHJvdyBjbGFzc1xuICAgKi9cbiAgQElucHV0KCkgYWRkUm93Q2xhc3M/OiAoY29udGV4dD86IFJvd0NsYXNzQXJncykgPT4gUmVjb3JkPHN0cmluZywgYm9vbGVhbj4gPSAoKSA9PiAoe30pO1xuXG4gIC8qKlxuICAgKiBBbiBhY3Rpb24gd2hpY2ggaXMgZW1pdHRlZCB3aGVuIHRoZSBwYWdlIG9mIHRoZSBncmlkIGlzIGNoYW5nZWRcbiAgICovXG4gIEBPdXRwdXQoKSBwYWdlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEtpdEdyaWRQYWdlQ2hhbmdlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxLaXRHcmlkUGFnZUNoYW5nZUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBBbiBhY3Rpb24gd2hpY2ggaXMgZW1pdHRlZCBvbmNlIHRoZSBzb3J0aW5nIG9mIHRoZSBncmlkIGlzIGNoYW5nZWRcbiAgICovXG4gIEBPdXRwdXQoKSBzb3J0Q2hhbmdlZDogRXZlbnRFbWl0dGVyPEtpdEdyaWRTb3J0RGVzY3JpcHRvcltdPiA9IG5ldyBFdmVudEVtaXR0ZXI8S2l0R3JpZFNvcnREZXNjcmlwdG9yW10+KCk7XG5cbiAgLyoqXG4gICAqIEFuIGFjdGlvbiB3aGljaCBpcyBlbWl0dGVkIHdoZW4gdGhlIGRhdGEgc3RhdGUgb2YgdGhlIGdyaWQgaXMgY2hhbmdlZFxuICAgKi9cbiAgQE91dHB1dCgpIGRhdGFTdGF0ZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxLaXRHcmlkRGF0YVN0YXRlQ2hhbmdlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxLaXRHcmlkRGF0YVN0YXRlQ2hhbmdlRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEFuIGFjdGlvbiB3aGljaCBpcyBlbWl0dGVkIHdoZW4gdGhlIG1hc3RlciByb3cgaXMgZXhwYW5kZWRcbiAgICovXG4gIEBPdXRwdXQoKSBkZXRhaWxFeHBhbmRlZDogRXZlbnRFbWl0dGVyPEtpdEdyaWREZXRhaWxFeHBhbmRFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEtpdEdyaWREZXRhaWxFeHBhbmRFdmVudD4oKTtcblxuICAvKipcbiAgICogQW4gYWN0aW9uIHdoaWNoIGlzIGVtaXR0ZWQgd2hlbiB0aGUgbWFzdGVyIHJvdyBpcyBjb2xsYXBzZWRcbiAgICovXG4gIEBPdXRwdXQoKSBkZXRhaWxDb2xsYXBzZWQ6IEV2ZW50RW1pdHRlcjxLaXRHcmlkRGV0YWlsQ29sbGFwc2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEtpdEdyaWREZXRhaWxDb2xsYXBzZUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBBbiBhY3Rpb24gd2hpY2ggaXMgZW1pdHRlZCB3aGVuIHVzZXIgY2xpY2tzIGEgY2VsbFxuICAgKi9cbiAgQE91dHB1dCgpIGNlbGxDbGlja2VkOiBFdmVudEVtaXR0ZXI8S2l0R3JpZENlbGxDbGlja0V2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8S2l0R3JpZENlbGxDbGlja0V2ZW50PigpO1xuXG4gIEBDb250ZW50Q2hpbGQoS2l0R3JpZERldGFpbFRlbXBsYXRlRGlyZWN0aXZlLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pIGtpdEdyaWREZXRhaWxUZW1wbGF0ZTogVGVtcGxhdGVSZWY8SFRNTEVsZW1lbnQ+IHwgbnVsbCA9IG51bGw7XG5cbiAgcmVhZG9ubHkgY29sdW1uczogU2lnbmFsPHJlYWRvbmx5IEtpdEdyaWRDb2x1bW5Db21wb25lbnRbXT4gPSBjb250ZW50Q2hpbGRyZW4oS2l0R3JpZENvbHVtbkNvbXBvbmVudCk7XG4gIHJlYWRvbmx5IEtpdFN2Z0ljb246IHR5cGVvZiBLaXRTdmdJY29uID0gS2l0U3ZnSWNvbjtcbiAgcmVhZG9ubHkgS2l0R3JpZFNvcnREaXJlY3Rpb246IHR5cGVvZiBLaXRHcmlkU29ydERpcmVjdGlvbiA9IEtpdEdyaWRTb3J0RGlyZWN0aW9uO1xuICBleHBhbmRlZFJvd3M6IFRbXSA9IFtdO1xuXG4gIG9uRGF0YVN0YXRlQ2hhbmdlKGV2ZW50OiBLaXRHcmlkRGF0YVN0YXRlQ2hhbmdlRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLnNraXAgPSBldmVudC5za2lwO1xuICAgIHRoaXMuc29ydCA9IGV2ZW50LnNvcnQgfHwgW107XG4gICAgdGhpcy5jb2xsYXBzZUFsbFJvd3MoKTtcbiAgICB0aGlzLmRhdGFTdGF0ZUNoYW5nZWQuZW1pdChldmVudCk7XG4gIH1cblxuICBvblNvcnRDaGFuZ2UoZXZlbnQ6IEtpdEdyaWRTb3J0RGVzY3JpcHRvcltdKTogdm9pZCB7XG4gICAgdGhpcy5zb3J0ID0gZXZlbnQ7XG4gICAgdGhpcy5jb2xsYXBzZUFsbFJvd3MoKTtcbiAgICB0aGlzLnNvcnRDaGFuZ2VkLmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgZ2V0U29ydGluZ0RpcmVjdGlvbihjb2x1bW5GaWVsZDogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuc29ydC5maW5kKGl0ZW0gPT4gaXRlbS5maWVsZCA9PT0gY29sdW1uRmllbGQpPy5kaXIgPz8gbnVsbDtcbiAgfVxuXG4gIGlzQ29sdW1uU29ydGFibGUoY29sdW1uOiBLaXRHcmlkQ29sdW1uQ29tcG9uZW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5zb3J0YWJsZSAmJiBjb2x1bW4uc29ydGFibGU7XG4gIH1cblxuICBvbkRldGFpbEV4cGFuZChldmVudDogS2l0R3JpZERldGFpbEV4cGFuZEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5kZXRhaWxFeHBhbmRlZC5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIG9uRGV0YWlsQ29sbGFwc2UoZXZlbnQ6IEtpdEdyaWREZXRhaWxDb2xsYXBzZUV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5kZXRhaWxDb2xsYXBzZWQuZW1pdChldmVudCk7XG4gIH1cblxuICBvblBhZ2VDaGFuZ2UoZXZlbnQ6IEtpdEdyaWRQYWdlQ2hhbmdlRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLnNraXAgPSBldmVudC5za2lwO1xuICAgIHRoaXMuY29sbGFwc2VBbGxSb3dzKCk7XG4gICAgdGhpcy5wYWdlQ2hhbmdlZC5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIG9uQ2VsbENsaWNrKGV2ZW50OiBLaXRHcmlkQ2VsbENsaWNrRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmNlbGxDbGlja2VkLmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgZ2V0Q3NzUm93Q2xhc3MgPSAoY29udGV4dDogUm93Q2xhc3NBcmdzKTogUmVjb3JkPHN0cmluZywgYm9vbGVhbj4gPT4ge1xuICAgIGNvbnN0IGV4cGFuZGVkOiBib29sZWFuID0gdGhpcy5leHBhbmRlZFJvd3MuaW5jbHVkZXMoY29udGV4dC5kYXRhSXRlbSk7XG5cbiAgICBjb25zdCBjbGFzc2VzOiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiA9IHtcbiAgICAgIGV4cGFuZGVkLFxuICAgIH07XG5cbiAgICBpZiAodGhpcy5hZGRSb3dDbGFzcykge1xuICAgICAgT2JqZWN0LmFzc2lnbihjbGFzc2VzLCB0aGlzLmFkZFJvd0NsYXNzKGNvbnRleHQpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gY2xhc3NlcztcbiAgfTtcblxuICBnZXRQYWdlclNldHRpbmdzKCk6IGJvb2xlYW4gfCBQYWdlclNldHRpbmdzIHtcbiAgICBjb25zdCBwYWdlclNldHRpbmdzOiBQYWdlclNldHRpbmdzID0ge1xuICAgICAgYnV0dG9uQ291bnQ6IDUsXG4gICAgICBpbmZvOiBmYWxzZSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHRoaXMucGFnZWFibGUgJiYgcGFnZXJTZXR0aW5ncyB8fCBmYWxzZTtcbiAgfVxuXG4gIHByaXZhdGUgY29sbGFwc2VBbGxSb3dzKCk6IHZvaWQge1xuICAgIHRoaXMuZXhwYW5kZWRSb3dzID0gW107XG4gIH1cbn1cbiIsIkBpZiAoZGF0YSkge1xuICA8a2VuZG8tZ3JpZCBjbGFzcz1cImtpdC1ncmlkXCJcbiAgICAgICAgICAgICAga2VuZG9HcmlkRXhwYW5kRGV0YWlsc0J5XG4gICAgICAgICAgICAgIFtkYXRhXT1cImRhdGFcIlxuICAgICAgICAgICAgICBbc29ydGFibGVdPVwic29ydGFibGVcIlxuICAgICAgICAgICAgICBbc29ydF09XCJzb3J0XCJcbiAgICAgICAgICAgICAgW3Jvd0NsYXNzXT1cImdldENzc1Jvd0NsYXNzXCJcbiAgICAgICAgICAgICAgW3BhZ2VhYmxlXT1cImdldFBhZ2VyU2V0dGluZ3MoKVwiXG4gICAgICAgICAgICAgIFtwYWdlU2l6ZV09XCJwYWdlU2l6ZVwiXG4gICAgICAgICAgICAgIFtza2lwXT1cInNraXBcIlxuICAgICAgICAgICAgICBbbG9hZGluZ109XCJsb2FkaW5nXCJcbiAgICAgICAgICAgICAgWyhleHBhbmRlZERldGFpbEtleXMpXT1cImV4cGFuZGVkUm93c1wiXG4gICAgICAgICAgICAgIChjZWxsQ2xpY2spPVwib25DZWxsQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgICAgIChkZXRhaWxFeHBhbmQpPVwib25EZXRhaWxFeHBhbmQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgIChkZXRhaWxDb2xsYXBzZSk9XCJvbkRldGFpbENvbGxhcHNlKCRldmVudClcIlxuICAgICAgICAgICAgICAoc29ydENoYW5nZSk9XCJvblNvcnRDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAgIChwYWdlQ2hhbmdlKT1cIm9uUGFnZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgKGRhdGFTdGF0ZUNoYW5nZSk9XCJvbkRhdGFTdGF0ZUNoYW5nZSgkZXZlbnQpXCI+XG4gICAgQGZvciAoY29sdW1uIG9mIGNvbHVtbnMoKTsgdHJhY2sgY29sdW1uKSB7XG4gICAgICA8a2VuZG8tZ3JpZC1jb2x1bW4gW2ZpZWxkXT1cImNvbHVtbi5maWVsZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3NvcnRhYmxlXT1cImNvbHVtbi5zb3J0YWJsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2hpZGRlbl09XCJjb2x1bW4uaGlkZGVuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbd2lkdGhdPVwiY29sdW1uLndpZHRoXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBrZW5kb0dyaWRIZWFkZXJUZW1wbGF0ZT5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sdW1uSGVhZGVyVGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBjb2x1bW4gfVwiXG4gICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgICAgIEBpZiAoY29sdW1uLmNlbGxUZW1wbGF0ZSkge1xuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBrZW5kb0dyaWRDZWxsVGVtcGxhdGUgbGV0LWRhdGFJdGVtPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbHVtbi5jZWxsVGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBkYXRhSXRlbSB9XCJcbiAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChzaG93Rm9vdGVyKSB7XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIGtlbmRvR3JpZEZvb3RlclRlbXBsYXRlPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImZvb3RlclRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogY29sdW1uIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICB9XG4gICAgICA8L2tlbmRvLWdyaWQtY29sdW1uPlxuXG4gICAgICBAaWYgKGtpdEdyaWREZXRhaWxUZW1wbGF0ZSkge1xuICAgICAgICA8bmctdGVtcGxhdGUga2VuZG9HcmlkRGV0YWlsVGVtcGxhdGUgbGV0LWRhdGFJdGVtXG4gICAgICAgICAgICAgICAgICAgICBba2VuZG9HcmlkRGV0YWlsVGVtcGxhdGVTaG93SWZdPVwiZGV0YWlsVGVtcGxhdGVTaG93SWZcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwia2l0R3JpZERldGFpbFRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogZGF0YUl0ZW0gfVwiXG4gICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgfVxuICAgIH1cbiAgPC9rZW5kby1ncmlkPlxufVxuXG5AaWYgKGdyaWREYXRhQmluZGluZykge1xuICA8a2VuZG8tZ3JpZCBjbGFzcz1cImtpdC1ncmlkXCJcbiAgICAgICAgICAgICAga2VuZG9HcmlkRXhwYW5kRGV0YWlsc0J5XG4gICAgICAgICAgICAgIFtrZW5kb0dyaWRCaW5kaW5nXT1cImdyaWREYXRhQmluZGluZ1wiXG4gICAgICAgICAgICAgIFtyb3dDbGFzc109XCJnZXRDc3NSb3dDbGFzc1wiXG4gICAgICAgICAgICAgIFtwYWdlYWJsZV09XCJnZXRQYWdlclNldHRpbmdzKClcIlxuICAgICAgICAgICAgICBbcGFnZVNpemVdPVwicGFnZVNpemVcIlxuICAgICAgICAgICAgICBbc29ydGFibGVdPVwic29ydGFibGVcIlxuICAgICAgICAgICAgICBbc29ydF09XCJzb3J0XCJcbiAgICAgICAgICAgICAgW3NraXBdPVwic2tpcFwiXG4gICAgICAgICAgICAgIFtsb2FkaW5nXT1cImxvYWRpbmdcIlxuICAgICAgICAgICAgICBbKGV4cGFuZGVkRGV0YWlsS2V5cyldPVwiZXhwYW5kZWRSb3dzXCJcbiAgICAgICAgICAgICAgKGNlbGxDbGljayk9XCJvbkNlbGxDbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgICAgKGRldGFpbEV4cGFuZCk9XCJvbkRldGFpbEV4cGFuZCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgKGRldGFpbENvbGxhcHNlKT1cIm9uRGV0YWlsQ29sbGFwc2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAgIChwYWdlQ2hhbmdlKT1cIm9uUGFnZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgKHNvcnRDaGFuZ2UpPVwib25Tb3J0Q2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgICAoZGF0YVN0YXRlQ2hhbmdlKT1cIm9uRGF0YVN0YXRlQ2hhbmdlKCRldmVudClcIj5cbiAgICBAZm9yIChjb2x1bW4gb2YgY29sdW1ucygpOyB0cmFjayBjb2x1bW4pIHtcbiAgICAgIDxrZW5kby1ncmlkLWNvbHVtbiBbZmllbGRdPVwiY29sdW1uLmZpZWxkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbc29ydGFibGVdPVwiY29sdW1uLnNvcnRhYmxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbaGlkZGVuXT1cImNvbHVtbi5oaWRkZW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFt3aWR0aF09XCJjb2x1bW4ud2lkdGhcIj5cbiAgICAgICAgQGlmIChjb2x1bW4uY2VsbFRlbXBsYXRlKSB7XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIGtlbmRvR3JpZENlbGxUZW1wbGF0ZSBsZXQtZGF0YUl0ZW0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sdW1uLmNlbGxUZW1wbGF0ZTsgY29udGV4dDogeyAkaW1wbGljaXQ6IGRhdGFJdGVtIH1cIlxuICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIH1cblxuICAgICAgICA8bmctdGVtcGxhdGUga2VuZG9HcmlkSGVhZGVyVGVtcGxhdGU+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbHVtbkhlYWRlclRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogY29sdW1uIH1cIlxuICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICBAaWYgKHNob3dGb290ZXIpIHtcbiAgICAgICAgICA8bmctdGVtcGxhdGUga2VuZG9HcmlkRm9vdGVyVGVtcGxhdGU+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZm9vdGVyVGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBjb2x1bW4gfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIH1cbiAgICAgIDwva2VuZG8tZ3JpZC1jb2x1bW4+XG5cbiAgICAgIEBpZiAoa2l0R3JpZERldGFpbFRlbXBsYXRlKSB7XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBrZW5kb0dyaWREZXRhaWxUZW1wbGF0ZSBsZXQtZGF0YUl0ZW1cbiAgICAgICAgICAgICAgICAgICAgIFtrZW5kb0dyaWREZXRhaWxUZW1wbGF0ZVNob3dJZl09XCJkZXRhaWxUZW1wbGF0ZVNob3dJZlwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJraXRHcmlkRGV0YWlsVGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBkYXRhSXRlbSB9XCJcbiAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICB9XG4gICAgfVxuICA8L2tlbmRvLWdyaWQ+XG59XG5cbjxuZy10ZW1wbGF0ZSAjY29sdW1uSGVhZGVyVGVtcGxhdGUgbGV0LWNvbHVtbj5cbiAgPGRpdiBjbGFzcz1cImdyaWQtdGl0bGVcIlxuICAgICAgIFtjbGFzcy5zb3J0YWJsZV09XCJpc0NvbHVtblNvcnRhYmxlKGNvbHVtbilcIj5cbiAgICBAaWYgKGNvbHVtbi50aXRsZUljb24pIHtcbiAgICAgIDxraXQtc3ZnLWljb24gY2xhc3M9XCJncmlkLXRpdGxlLWljb25cIlxuICAgICAgICAgICAgICAgICAgICBbaWNvbl09XCJjb2x1bW4udGl0bGVJY29uXCJcbiAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiY29sdW1uLnRpdGxlSWNvblR5cGVcIlxuICAgICAgPjwva2l0LXN2Zy1pY29uPlxuICAgIH1cblxuICAgIDxkaXYgY2xhc3M9XCJncmlkLXRpdGxlLXRleHRcIj5cbiAgICAgIHt7IGNvbHVtbi50aXRsZSB9fVxuICAgIDwvZGl2PlxuXG4gICAgQGlmIChzb3J0YWJsZSAmJiBjb2x1bW4uc29ydGFibGUpIHtcbiAgICAgIEBzd2l0Y2ggKGdldFNvcnRpbmdEaXJlY3Rpb24oY29sdW1uLmZpZWxkKSkge1xuICAgICAgICBAY2FzZSAoS2l0R3JpZFNvcnREaXJlY3Rpb24uQVNDKSB7XG4gICAgICAgICAgPGtpdC1zdmctaWNvbiBjbGFzcz1cImdyaWQtdGl0bGUtc29ydC1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uXT1cIktpdFN2Z0ljb24uU09SVF9BU0NFTkRJTkdcIlxuICAgICAgICAgID48L2tpdC1zdmctaWNvbj5cbiAgICAgICAgfVxuICAgICAgICBAY2FzZSAoS2l0R3JpZFNvcnREaXJlY3Rpb24uREVTQykge1xuICAgICAgICAgIDxraXQtc3ZnLWljb24gY2xhc3M9XCJncmlkLXRpdGxlLXNvcnQtaWNvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaWNvbl09XCJLaXRTdmdJY29uLlNPUlRfREVTQ0VORElOR1wiXG4gICAgICAgICAgPjwva2l0LXN2Zy1pY29uPlxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZm9vdGVyVGVtcGxhdGUgbGV0LWNvbHVtbj5cbiAgQGlmIChjb2x1bW5zKCkpIHtcbiAgICBAaWYgKGZvb3RlclRpdGxlICYmIGNvbHVtbiA9PT0gY29sdW1ucygpWzBdKSB7XG4gICAgICB7eyBmb290ZXJUaXRsZSB9fVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB7eyBmb290ZXJEYXRhPy5bY29sdW1uLmZpZWxkXSB8fCAnJyB9fVxuICAgIH1cbiAgfVxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, contentChild, Input, TemplateRef } from '@angular/core';
|
|
2
|
+
import { KENDO_SORTABLE } from '@progress/kendo-angular-sortable';
|
|
3
|
+
import { CommonModule } from '@angular/common';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
import * as i2 from "@progress/kendo-angular-sortable";
|
|
7
|
+
export class KitSortableComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
/**
|
|
10
|
+
* An items list which is going to be rendered as sortable items
|
|
11
|
+
*/
|
|
12
|
+
this.items = [];
|
|
13
|
+
this.itemTemplate = contentChild(TemplateRef);
|
|
14
|
+
}
|
|
15
|
+
get columnsCount() {
|
|
16
|
+
return this.columnCount ?? null;
|
|
17
|
+
}
|
|
18
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KitSortableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
19
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: KitSortableComponent, isStandalone: true, selector: "kit-sortable", inputs: { items: "items", columnCount: "columnCount", itemClass: "itemClass", activeItemClass: "activeItemClass" }, queries: [{ propertyName: "itemTemplate", first: true, predicate: TemplateRef, descendants: true, isSignal: true }], ngImport: i0, template: "<kendo-sortable class=\"kit-sortable\"\n [style.column-count]=\"columnsCount\"\n [kendoSortableBinding]=\"items\"\n [itemClass]=\"itemClass\"\n [activeItemClass]=\"activeItemClass\"\n [animation]=\"true\">\n <ng-template let-item=\"item\">\n @if (itemTemplate()) {\n <ng-container *ngTemplateOutlet=\"itemTemplate(); context: { $implicit: item }\"\n ></ng-container>\n } @else {\n {{ item }}\n }\n </ng-template>\n</kendo-sortable>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.SortableComponent, selector: "kendo-sortable", inputs: ["tabIndex", "data", "navigable", "navigatable", "animation", "disabledIndexes", "zone", "acceptZones", "itemStyle", "emptyItemStyle", "activeItemStyle", "disabledItemStyle", "itemClass", "activeItemClass", "emptyItemClass", "disabledItemClass", "emptyText", "activeIndex"], outputs: ["dragStart", "dragEnd", "dragOver", "dragLeave", "dataMove", "dataAdd", "dataRemove", "navigate"], exportAs: ["kendoSortable"] }, { kind: "directive", type: i2.SortableBindingDirective, selector: "[kendoSortableBinding]", inputs: ["kendoSortableBinding"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
20
|
+
}
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KitSortableComponent, decorators: [{
|
|
22
|
+
type: Component,
|
|
23
|
+
args: [{ selector: 'kit-sortable', standalone: true, imports: [
|
|
24
|
+
CommonModule,
|
|
25
|
+
KENDO_SORTABLE,
|
|
26
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<kendo-sortable class=\"kit-sortable\"\n [style.column-count]=\"columnsCount\"\n [kendoSortableBinding]=\"items\"\n [itemClass]=\"itemClass\"\n [activeItemClass]=\"activeItemClass\"\n [animation]=\"true\">\n <ng-template let-item=\"item\">\n @if (itemTemplate()) {\n <ng-container *ngTemplateOutlet=\"itemTemplate(); context: { $implicit: item }\"\n ></ng-container>\n } @else {\n {{ item }}\n }\n </ng-template>\n</kendo-sortable>\n" }]
|
|
27
|
+
}], propDecorators: { items: [{
|
|
28
|
+
type: Input
|
|
29
|
+
}], columnCount: [{
|
|
30
|
+
type: Input
|
|
31
|
+
}], itemClass: [{
|
|
32
|
+
type: Input
|
|
33
|
+
}], activeItemClass: [{
|
|
34
|
+
type: Input
|
|
35
|
+
}] } });
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2l0LXNvcnRhYmxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMva2l0LXNvcnRhYmxlL2tpdC1zb3J0YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2tpdC1zb3J0YWJsZS9raXQtc29ydGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7O0FBWS9DLE1BQU0sT0FBTyxvQkFBb0I7SUFWakM7UUFXRTs7V0FFRztRQUNNLFVBQUssR0FBUSxFQUFFLENBQUM7UUFpQmhCLGlCQUFZLEdBQWlELFlBQVksQ0FBQyxXQUFXLENBQUMsQ0FBQztLQUtqRztJQUhDLElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUM7SUFDbEMsQ0FBQzs4R0F6QlUsb0JBQW9CO2tHQUFwQixvQkFBb0Isc09BcUJvRCxXQUFXLGdFQ25DaEcsd2hCQWVBLDJDRFBJLFlBQVk7OzJGQU1ILG9CQUFvQjtrQkFWaEMsU0FBUzsrQkFDRSxjQUFjLGNBQ1osSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osY0FBYztxQkFDZixtQkFFZ0IsdUJBQXVCLENBQUMsTUFBTTs4QkFNdEMsS0FBSztzQkFBYixLQUFLO2dCQUtHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBS0csU0FBUztzQkFBakIsS0FBSztnQkFLRyxlQUFlO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29udGVudENoaWxkLCBJbnB1dCwgU2lnbmFsLCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgS0VORE9fU09SVEFCTEUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1zb3J0YWJsZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdraXQtc29ydGFibGUnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEtFTkRPX1NPUlRBQkxFLFxuICBdLFxuICB0ZW1wbGF0ZVVybDogJy4va2l0LXNvcnRhYmxlLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEtpdFNvcnRhYmxlQ29tcG9uZW50PFQ+IHtcbiAgLyoqXG4gICAqIEFuIGl0ZW1zIGxpc3Qgd2hpY2ggaXMgZ29pbmcgdG8gYmUgcmVuZGVyZWQgYXMgc29ydGFibGUgaXRlbXNcbiAgICovXG4gIEBJbnB1dCgpIGl0ZW1zOiBUW10gPSBbXTtcblxuICAvKipcbiAgICogRGVmaW5lcyB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgb2YgdGhlIGNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgY29sdW1uQ291bnQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIERlZmluZXMgdGhlIGNzcyBjbGFzcyB3aGljaCBpcyBhcHBsaWVkIHRvIGVhY2ggaXRlbVxuICAgKi9cbiAgQElucHV0KCkgaXRlbUNsYXNzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIHRoZSBjc3MgY2xhc3Mgd2hpY2ggaXMgYXBwbGllZCB0byB0aGUgYWN0aXZlIGl0ZW0uXG4gICAqL1xuICBASW5wdXQoKSBhY3RpdmVJdGVtQ2xhc3M/OiBzdHJpbmc7XG5cbiAgcmVhZG9ubHkgaXRlbVRlbXBsYXRlOiBTaWduYWw8VGVtcGxhdGVSZWY8SFRNTEVsZW1lbnQ+IHwgdW5kZWZpbmVkPiA9IGNvbnRlbnRDaGlsZChUZW1wbGF0ZVJlZik7XG5cbiAgZ2V0IGNvbHVtbnNDb3VudCgpOiBudW1iZXIgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5jb2x1bW5Db3VudCA/PyBudWxsO1xuICB9XG59XG4iLCI8a2VuZG8tc29ydGFibGUgY2xhc3M9XCJraXQtc29ydGFibGVcIlxuICAgICAgICAgICAgICAgIFtzdHlsZS5jb2x1bW4tY291bnRdPVwiY29sdW1uc0NvdW50XCJcbiAgICAgICAgICAgICAgICBba2VuZG9Tb3J0YWJsZUJpbmRpbmddPVwiaXRlbXNcIlxuICAgICAgICAgICAgICAgIFtpdGVtQ2xhc3NdPVwiaXRlbUNsYXNzXCJcbiAgICAgICAgICAgICAgICBbYWN0aXZlSXRlbUNsYXNzXT1cImFjdGl2ZUl0ZW1DbGFzc1wiXG4gICAgICAgICAgICAgICAgW2FuaW1hdGlvbl09XCJ0cnVlXCI+XG4gIDxuZy10ZW1wbGF0ZSBsZXQtaXRlbT1cIml0ZW1cIj5cbiAgICBAaWYgKGl0ZW1UZW1wbGF0ZSgpKSB7XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbVRlbXBsYXRlKCk7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBpdGVtIH1cIlxuICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgIH0gQGVsc2Uge1xuICAgICAge3sgaXRlbSB9fVxuICAgIH1cbiAgPC9uZy10ZW1wbGF0ZT5cbjwva2VuZG8tc29ydGFibGU+XG4iXX0=
|
|
@@ -69,11 +69,11 @@ export class KitSwitchComponent {
|
|
|
69
69
|
return this.mode === KitSwitchMode.SINGLE;
|
|
70
70
|
}
|
|
71
71
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KitSwitchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
72
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: KitSwitchComponent, selector: "kit-switch", inputs: { items: "items", mode: "mode", label: "label", disabled: "disabled", selection: "selection", messageIcon: "messageIcon", messageText: "messageText", state: "state" }, outputs: { selected: "selected" }, ngImport: i0, template: "<div class=\"kit-switch {{ state }}\">\n <ng-container *ngIf=\"items.length\">\n @if (label) {\n <kit-input-label class=\"label\"\n [text]=\"label\"\n ></kit-input-label>\n }\n\n <kendo-buttongroup look=\"outline\" class=\"button-group\"\n [selection]=\"mode\"\n [class.disabled]=\"disabled\">\n <button *ngFor=\"let item of items\" class=\"button\" kendoButton\n [selected]=\"isItemSelected(item)\"\n [togglable]=\"true\"\n [disabled]=\"item.disabled && item.disabled(item)\"\n (selectedChange)=\"onItemSelect($event, item)\">\n <ng-container *ngIf=\"item.title; else icon\">\n {{ item.title }}\n </ng-container>\n\n <ng-template #icon>\n <kit-svg-icon class=\"icon-wrapper\"\n [icon]=\"item.icon\"\n ></kit-svg-icon>\n </ng-template>\n </button>\n </kendo-buttongroup>\n <kit-input-message *ngIf=\"messageText\"\n [icon]=\"messageIcon\"\n [message]=\"messageText\"\n ></kit-input-message>\n </ng-container>\n</div>\n", styles: [":root{--ui-kit-color-white: #ffffff;--ui-kit-color-black: #000000;--ui-kit-color-main: #56a2f7;--ui-kit-color-hover: #3678c3;--ui-kit-color-selected: #3678c366;--ui-kit-color-active: #3678c3;--ui-kit-color-focus: #56a2f733;--ui-kit-color-grey-0: #252b30;--ui-kit-color-grey-2: #a7b2c3;--ui-kit-color-grey-3: #c2d1d9;--ui-kit-color-grey-4: #e2e7ed;--ui-kit-color-grey-5: #fafafc;--ui-kit-color-grey-6: #ebebe4;--ui-kit-color-grey-7: #a9a8a8;--ui-kit-color-grey-8: #efefef;--ui-kit-color-grey-9: #969696;--ui-kit-color-grey-10: #2a2b32;--ui-kit-color-grey-11: #e3e4e5;--ui-kit-color-grey-12: #a9aec3;--ui-kit-color-grey-13: #f7f7f8;--ui-kit-color-grey-14: #565963;--ui-kit-color-grey-15: #f0f0f0;--ui-kit-color-grey-16: #ececf8;--ui-kit-color-green: #00b0ad;--ui-kit-color-green-1: #39c237;--ui-kit-color-green-2: #39c23733;--ui-kit-color-green-3: #1cb589;--ui-kit-color-green-4: #e0f2ed;--ui-kit-color-green-5: #e5ffe5;--ui-kit-color-red: #ef3e42;--ui-kit-color-red-20: #f8e0e0;--ui-kit-color-red-1: #f5222d;--ui-kit-color-red-2: #f5222d33;--ui-kit-color-red-3: #f9e9ea;--ui-kit-color-cobalt: #006890;--ui-kit-color-cobalt-darkest: #002a3a;--ui-kit-color-teal: #23afd2;--ui-kit-color-teal-1: #d8edf3;--ui-kit-color-orange: #faad14;--ui-kit-color-orange-1: #faad1433;--ui-kit-color-orange-2: #ff7a00;--ui-kit-color-orange-3: #fbecde;--ui-kit-color-orange-4: #fff6e4;--ui-kit-color-pink: #cd1159;--ui-kit-color-pink-1: #fae7ee;--ui-kit-color-purple: #7673ce;--ui-kit-color-purple-1: #e7e7f6;--ui-kit-color-blue: #1677ff;--ui-kit-color-blue-1: #e4eeff}.display-flex{display:flex}.flex-align-items-center{align-items:center}.flex-justify-content-center{justify-content:center}.flex-justify-content-end{justify-content:flex-end}.display-block{display:block}div[kendowatermarkoverlay]{display:none}.kit-switch .label{display:block;margin-bottom:4px}.kit-switch .button-group{background:#fff;border:1px solid #c1c7d0;border-radius:4px;overflow:hidden}.kit-switch .button-group.disabled{color:#fff;pointer-events:none}.kit-switch .button-group.disabled .button{color:#c1c7d0}.kit-switch .button-group.disabled .icon{stroke:#c1c7d0}.kit-switch .button-group.disabled .button.k-state-selected{background-color:#abcad6;color:#fff}.kit-switch .button.k-button{border:0;color:var(--ui-kit-color-cobalt);padding:8px;border-radius:4px;opacity:1;box-shadow:none}.kit-switch .button.k-button:not(:first-child),.kit-switch .button.k-button:not(:last-child){border-radius:4px}.kit-switch .button.k-button .icon{stroke:var(--ui-kit-color-cobalt);fill:none}.kit-switch .button.k-button.k-selected,.kit-switch .button.k-button:hover,.kit-switch .button.k-button.k-state-hover{background-color:var(--ui-kit-color-cobalt-darkest);color:#fff}.kit-switch .button.k-button.k-selected .icon,.kit-switch .button.k-button:hover .icon,.kit-switch .button.k-button.k-state-hover .icon{stroke:#fff}.kit-switch .button.k-button.k-disabled{color:#c1c7d0}.kit-switch .button.k-button.k-selected.k-disabled{background-color:#abcad6;color:#fff}.kit-switch .icon-wrapper{display:block;width:16px;height:16px}.kit-switch.danger .k-button-group{border-color:#ef3e42;background:#f8e0e0}\n"], dependencies: [{ kind: "component", type: i1.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "component", type: i1.ButtonGroupComponent, selector: "kendo-buttongroup", inputs: ["disabled", "selection", "width", "tabIndex", "navigable"], outputs: ["navigate"], exportAs: ["kendoButtonGroup"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.KitSvgIconComponent, selector: "kit-svg-icon", inputs: ["icon", "iconClass"] }, { kind: "component", type: i4.KitInputMessageComponent, selector: "kit-input-message", inputs: ["icon", "message"] }, { kind: "component", type: i5.KitInputLabelComponent, selector: "kit-input-label", inputs: ["text", "for", "tooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
72
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: KitSwitchComponent, selector: "kit-switch", inputs: { items: "items", mode: "mode", label: "label", disabled: "disabled", selection: "selection", messageIcon: "messageIcon", messageText: "messageText", state: "state" }, outputs: { selected: "selected" }, ngImport: i0, template: "<div class=\"kit-switch {{ state }}\">\n <ng-container *ngIf=\"items.length\">\n @if (label) {\n <kit-input-label class=\"label\"\n [text]=\"label\"\n ></kit-input-label>\n }\n\n <kendo-buttongroup look=\"outline\" class=\"button-group\"\n [selection]=\"mode\"\n [class.disabled]=\"disabled\">\n <button *ngFor=\"let item of items\" class=\"button\" kendoButton\n [selected]=\"isItemSelected(item)\"\n [togglable]=\"true\"\n [disabled]=\"item.disabled && item.disabled(item)\"\n (selectedChange)=\"onItemSelect($event, item)\">\n <ng-container *ngIf=\"item.title; else icon\">\n {{ item.title }}\n </ng-container>\n\n <ng-template #icon>\n <kit-svg-icon class=\"icon-wrapper\"\n [icon]=\"item.icon\"\n ></kit-svg-icon>\n </ng-template>\n </button>\n </kendo-buttongroup>\n <kit-input-message *ngIf=\"messageText\"\n [icon]=\"messageIcon\"\n [message]=\"messageText\"\n ></kit-input-message>\n </ng-container>\n</div>\n", styles: [":root{--ui-kit-color-white: #ffffff;--ui-kit-color-black: #000000;--ui-kit-color-main: #56a2f7;--ui-kit-color-hover: #3678c3;--ui-kit-color-selected: #3678c366;--ui-kit-color-active: #3678c3;--ui-kit-color-focus: #56a2f733;--ui-kit-color-grey-0: #252b30;--ui-kit-color-grey-2: #a7b2c3;--ui-kit-color-grey-3: #c2d1d9;--ui-kit-color-grey-4: #e2e7ed;--ui-kit-color-grey-5: #fafafc;--ui-kit-color-grey-6: #ebebe4;--ui-kit-color-grey-7: #a9a8a8;--ui-kit-color-grey-8: #efefef;--ui-kit-color-grey-9: #969696;--ui-kit-color-grey-10: #2a2b32;--ui-kit-color-grey-11: #e3e4e5;--ui-kit-color-grey-12: #a9aec3;--ui-kit-color-grey-13: #f7f7f8;--ui-kit-color-grey-14: #565963;--ui-kit-color-grey-15: #f0f0f0;--ui-kit-color-grey-16: #ececf8;--ui-kit-color-grey-17: #878787;--ui-kit-color-green: #00b0ad;--ui-kit-color-green-1: #39c237;--ui-kit-color-green-2: #39c23733;--ui-kit-color-green-3: #1cb589;--ui-kit-color-green-4: #e0f2ed;--ui-kit-color-green-5: #e5ffe5;--ui-kit-color-red: #ef3e42;--ui-kit-color-red-20: #f8e0e0;--ui-kit-color-red-1: #f5222d;--ui-kit-color-red-2: #f5222d33;--ui-kit-color-red-3: #f9e9ea;--ui-kit-color-cobalt: #006890;--ui-kit-color-cobalt-darkest: #002a3a;--ui-kit-color-teal: #23afd2;--ui-kit-color-teal-1: #d8edf3;--ui-kit-color-orange: #faad14;--ui-kit-color-orange-1: #faad1433;--ui-kit-color-orange-2: #ff7a00;--ui-kit-color-orange-3: #fbecde;--ui-kit-color-orange-4: #fff6e4;--ui-kit-color-pink: #cd1159;--ui-kit-color-pink-1: #fae7ee;--ui-kit-color-purple: #7673ce;--ui-kit-color-purple-1: #e7e7f6;--ui-kit-color-blue: #1677ff;--ui-kit-color-blue-1: #e4eeff}.display-flex{display:flex}.flex-align-items-center{align-items:center}.flex-justify-content-center{justify-content:center}.flex-justify-content-end{justify-content:flex-end}.display-block{display:block}div[kendowatermarkoverlay]{display:none}.kit-switch .label{display:block;margin-bottom:4px}.kit-switch .button-group{background:#fff;border:1px solid #c1c7d0;border-radius:4px;overflow:hidden}.kit-switch .button-group.disabled{color:#fff;pointer-events:none}.kit-switch .button-group.disabled .button{color:#c1c7d0}.kit-switch .button-group.disabled .icon{stroke:#c1c7d0}.kit-switch .button-group.disabled .button.k-state-selected{background-color:#abcad6;color:#fff}.kit-switch .button.k-button{border:0;color:var(--ui-kit-color-cobalt);padding:8px;border-radius:4px;opacity:1;box-shadow:none}.kit-switch .button.k-button:not(:first-child),.kit-switch .button.k-button:not(:last-child){border-radius:4px}.kit-switch .button.k-button .icon{stroke:var(--ui-kit-color-cobalt);fill:none}.kit-switch .button.k-button.k-selected,.kit-switch .button.k-button:hover,.kit-switch .button.k-button.k-state-hover{background-color:var(--ui-kit-color-cobalt-darkest);color:#fff}.kit-switch .button.k-button.k-selected .icon,.kit-switch .button.k-button:hover .icon,.kit-switch .button.k-button.k-state-hover .icon{stroke:#fff}.kit-switch .button.k-button.k-disabled{color:#c1c7d0}.kit-switch .button.k-button.k-selected.k-disabled{background-color:#abcad6;color:#fff}.kit-switch .icon-wrapper{display:block;width:16px;height:16px}.kit-switch.danger .k-button-group{border-color:#ef3e42;background:#f8e0e0}\n"], dependencies: [{ kind: "component", type: i1.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "component", type: i1.ButtonGroupComponent, selector: "kendo-buttongroup", inputs: ["disabled", "selection", "width", "tabIndex", "navigable"], outputs: ["navigate"], exportAs: ["kendoButtonGroup"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.KitSvgIconComponent, selector: "kit-svg-icon", inputs: ["icon", "iconClass"] }, { kind: "component", type: i4.KitInputMessageComponent, selector: "kit-input-message", inputs: ["icon", "message"] }, { kind: "component", type: i5.KitInputLabelComponent, selector: "kit-input-label", inputs: ["text", "for", "tooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
73
73
|
}
|
|
74
74
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KitSwitchComponent, decorators: [{
|
|
75
75
|
type: Component,
|
|
76
|
-
args: [{ selector: 'kit-switch', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"kit-switch {{ state }}\">\n <ng-container *ngIf=\"items.length\">\n @if (label) {\n <kit-input-label class=\"label\"\n [text]=\"label\"\n ></kit-input-label>\n }\n\n <kendo-buttongroup look=\"outline\" class=\"button-group\"\n [selection]=\"mode\"\n [class.disabled]=\"disabled\">\n <button *ngFor=\"let item of items\" class=\"button\" kendoButton\n [selected]=\"isItemSelected(item)\"\n [togglable]=\"true\"\n [disabled]=\"item.disabled && item.disabled(item)\"\n (selectedChange)=\"onItemSelect($event, item)\">\n <ng-container *ngIf=\"item.title; else icon\">\n {{ item.title }}\n </ng-container>\n\n <ng-template #icon>\n <kit-svg-icon class=\"icon-wrapper\"\n [icon]=\"item.icon\"\n ></kit-svg-icon>\n </ng-template>\n </button>\n </kendo-buttongroup>\n <kit-input-message *ngIf=\"messageText\"\n [icon]=\"messageIcon\"\n [message]=\"messageText\"\n ></kit-input-message>\n </ng-container>\n</div>\n", styles: [":root{--ui-kit-color-white: #ffffff;--ui-kit-color-black: #000000;--ui-kit-color-main: #56a2f7;--ui-kit-color-hover: #3678c3;--ui-kit-color-selected: #3678c366;--ui-kit-color-active: #3678c3;--ui-kit-color-focus: #56a2f733;--ui-kit-color-grey-0: #252b30;--ui-kit-color-grey-2: #a7b2c3;--ui-kit-color-grey-3: #c2d1d9;--ui-kit-color-grey-4: #e2e7ed;--ui-kit-color-grey-5: #fafafc;--ui-kit-color-grey-6: #ebebe4;--ui-kit-color-grey-7: #a9a8a8;--ui-kit-color-grey-8: #efefef;--ui-kit-color-grey-9: #969696;--ui-kit-color-grey-10: #2a2b32;--ui-kit-color-grey-11: #e3e4e5;--ui-kit-color-grey-12: #a9aec3;--ui-kit-color-grey-13: #f7f7f8;--ui-kit-color-grey-14: #565963;--ui-kit-color-grey-15: #f0f0f0;--ui-kit-color-grey-16: #ececf8;--ui-kit-color-green: #00b0ad;--ui-kit-color-green-1: #39c237;--ui-kit-color-green-2: #39c23733;--ui-kit-color-green-3: #1cb589;--ui-kit-color-green-4: #e0f2ed;--ui-kit-color-green-5: #e5ffe5;--ui-kit-color-red: #ef3e42;--ui-kit-color-red-20: #f8e0e0;--ui-kit-color-red-1: #f5222d;--ui-kit-color-red-2: #f5222d33;--ui-kit-color-red-3: #f9e9ea;--ui-kit-color-cobalt: #006890;--ui-kit-color-cobalt-darkest: #002a3a;--ui-kit-color-teal: #23afd2;--ui-kit-color-teal-1: #d8edf3;--ui-kit-color-orange: #faad14;--ui-kit-color-orange-1: #faad1433;--ui-kit-color-orange-2: #ff7a00;--ui-kit-color-orange-3: #fbecde;--ui-kit-color-orange-4: #fff6e4;--ui-kit-color-pink: #cd1159;--ui-kit-color-pink-1: #fae7ee;--ui-kit-color-purple: #7673ce;--ui-kit-color-purple-1: #e7e7f6;--ui-kit-color-blue: #1677ff;--ui-kit-color-blue-1: #e4eeff}.display-flex{display:flex}.flex-align-items-center{align-items:center}.flex-justify-content-center{justify-content:center}.flex-justify-content-end{justify-content:flex-end}.display-block{display:block}div[kendowatermarkoverlay]{display:none}.kit-switch .label{display:block;margin-bottom:4px}.kit-switch .button-group{background:#fff;border:1px solid #c1c7d0;border-radius:4px;overflow:hidden}.kit-switch .button-group.disabled{color:#fff;pointer-events:none}.kit-switch .button-group.disabled .button{color:#c1c7d0}.kit-switch .button-group.disabled .icon{stroke:#c1c7d0}.kit-switch .button-group.disabled .button.k-state-selected{background-color:#abcad6;color:#fff}.kit-switch .button.k-button{border:0;color:var(--ui-kit-color-cobalt);padding:8px;border-radius:4px;opacity:1;box-shadow:none}.kit-switch .button.k-button:not(:first-child),.kit-switch .button.k-button:not(:last-child){border-radius:4px}.kit-switch .button.k-button .icon{stroke:var(--ui-kit-color-cobalt);fill:none}.kit-switch .button.k-button.k-selected,.kit-switch .button.k-button:hover,.kit-switch .button.k-button.k-state-hover{background-color:var(--ui-kit-color-cobalt-darkest);color:#fff}.kit-switch .button.k-button.k-selected .icon,.kit-switch .button.k-button:hover .icon,.kit-switch .button.k-button.k-state-hover .icon{stroke:#fff}.kit-switch .button.k-button.k-disabled{color:#c1c7d0}.kit-switch .button.k-button.k-selected.k-disabled{background-color:#abcad6;color:#fff}.kit-switch .icon-wrapper{display:block;width:16px;height:16px}.kit-switch.danger .k-button-group{border-color:#ef3e42;background:#f8e0e0}\n"] }]
|
|
76
|
+
args: [{ selector: 'kit-switch', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"kit-switch {{ state }}\">\n <ng-container *ngIf=\"items.length\">\n @if (label) {\n <kit-input-label class=\"label\"\n [text]=\"label\"\n ></kit-input-label>\n }\n\n <kendo-buttongroup look=\"outline\" class=\"button-group\"\n [selection]=\"mode\"\n [class.disabled]=\"disabled\">\n <button *ngFor=\"let item of items\" class=\"button\" kendoButton\n [selected]=\"isItemSelected(item)\"\n [togglable]=\"true\"\n [disabled]=\"item.disabled && item.disabled(item)\"\n (selectedChange)=\"onItemSelect($event, item)\">\n <ng-container *ngIf=\"item.title; else icon\">\n {{ item.title }}\n </ng-container>\n\n <ng-template #icon>\n <kit-svg-icon class=\"icon-wrapper\"\n [icon]=\"item.icon\"\n ></kit-svg-icon>\n </ng-template>\n </button>\n </kendo-buttongroup>\n <kit-input-message *ngIf=\"messageText\"\n [icon]=\"messageIcon\"\n [message]=\"messageText\"\n ></kit-input-message>\n </ng-container>\n</div>\n", styles: [":root{--ui-kit-color-white: #ffffff;--ui-kit-color-black: #000000;--ui-kit-color-main: #56a2f7;--ui-kit-color-hover: #3678c3;--ui-kit-color-selected: #3678c366;--ui-kit-color-active: #3678c3;--ui-kit-color-focus: #56a2f733;--ui-kit-color-grey-0: #252b30;--ui-kit-color-grey-2: #a7b2c3;--ui-kit-color-grey-3: #c2d1d9;--ui-kit-color-grey-4: #e2e7ed;--ui-kit-color-grey-5: #fafafc;--ui-kit-color-grey-6: #ebebe4;--ui-kit-color-grey-7: #a9a8a8;--ui-kit-color-grey-8: #efefef;--ui-kit-color-grey-9: #969696;--ui-kit-color-grey-10: #2a2b32;--ui-kit-color-grey-11: #e3e4e5;--ui-kit-color-grey-12: #a9aec3;--ui-kit-color-grey-13: #f7f7f8;--ui-kit-color-grey-14: #565963;--ui-kit-color-grey-15: #f0f0f0;--ui-kit-color-grey-16: #ececf8;--ui-kit-color-grey-17: #878787;--ui-kit-color-green: #00b0ad;--ui-kit-color-green-1: #39c237;--ui-kit-color-green-2: #39c23733;--ui-kit-color-green-3: #1cb589;--ui-kit-color-green-4: #e0f2ed;--ui-kit-color-green-5: #e5ffe5;--ui-kit-color-red: #ef3e42;--ui-kit-color-red-20: #f8e0e0;--ui-kit-color-red-1: #f5222d;--ui-kit-color-red-2: #f5222d33;--ui-kit-color-red-3: #f9e9ea;--ui-kit-color-cobalt: #006890;--ui-kit-color-cobalt-darkest: #002a3a;--ui-kit-color-teal: #23afd2;--ui-kit-color-teal-1: #d8edf3;--ui-kit-color-orange: #faad14;--ui-kit-color-orange-1: #faad1433;--ui-kit-color-orange-2: #ff7a00;--ui-kit-color-orange-3: #fbecde;--ui-kit-color-orange-4: #fff6e4;--ui-kit-color-pink: #cd1159;--ui-kit-color-pink-1: #fae7ee;--ui-kit-color-purple: #7673ce;--ui-kit-color-purple-1: #e7e7f6;--ui-kit-color-blue: #1677ff;--ui-kit-color-blue-1: #e4eeff}.display-flex{display:flex}.flex-align-items-center{align-items:center}.flex-justify-content-center{justify-content:center}.flex-justify-content-end{justify-content:flex-end}.display-block{display:block}div[kendowatermarkoverlay]{display:none}.kit-switch .label{display:block;margin-bottom:4px}.kit-switch .button-group{background:#fff;border:1px solid #c1c7d0;border-radius:4px;overflow:hidden}.kit-switch .button-group.disabled{color:#fff;pointer-events:none}.kit-switch .button-group.disabled .button{color:#c1c7d0}.kit-switch .button-group.disabled .icon{stroke:#c1c7d0}.kit-switch .button-group.disabled .button.k-state-selected{background-color:#abcad6;color:#fff}.kit-switch .button.k-button{border:0;color:var(--ui-kit-color-cobalt);padding:8px;border-radius:4px;opacity:1;box-shadow:none}.kit-switch .button.k-button:not(:first-child),.kit-switch .button.k-button:not(:last-child){border-radius:4px}.kit-switch .button.k-button .icon{stroke:var(--ui-kit-color-cobalt);fill:none}.kit-switch .button.k-button.k-selected,.kit-switch .button.k-button:hover,.kit-switch .button.k-button.k-state-hover{background-color:var(--ui-kit-color-cobalt-darkest);color:#fff}.kit-switch .button.k-button.k-selected .icon,.kit-switch .button.k-button:hover .icon,.kit-switch .button.k-button.k-state-hover .icon{stroke:#fff}.kit-switch .button.k-button.k-disabled{color:#c1c7d0}.kit-switch .button.k-button.k-selected.k-disabled{background-color:#abcad6;color:#fff}.kit-switch .icon-wrapper{display:block;width:16px;height:16px}.kit-switch.danger .k-button-group{border-color:#ef3e42;background:#f8e0e0}\n"] }]
|
|
77
77
|
}], propDecorators: { items: [{
|
|
78
78
|
type: Input
|
|
79
79
|
}], mode: [{
|
|
@@ -28,11 +28,11 @@ export class KitTextLabelComponent {
|
|
|
28
28
|
this.state = KitTextLabelState.REGULAR;
|
|
29
29
|
}
|
|
30
30
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KitTextLabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
31
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: KitTextLabelComponent, selector: "kit-text-label", inputs: { label: "label", value: "value", htmlMode: "htmlMode", noValueMessage: "noValueMessage", messageText: "messageText", state: "state" }, ngImport: i0, template: "<div class=\"kit-text-label {{ state }}\" tabindex=\"0\" [class.text-label-empty]=\"!value\">\n @if (value) {\n <kit-input-label class=\"label\"\n [text]=\"label\"\n ></kit-input-label>\n }\n\n @if (!value) {\n <kit-input-label class=\"label\"\n [text]=\"noValueMessage || label\"\n ></kit-input-label>\n }\n\n <div *ngIf=\"!htmlMode; else htmlModeTemplate\" class=\"value\">{{ value }}</div>\n <ng-template #htmlModeTemplate>\n <div class=\"value\" [innerHTML]=\"value\"></div>\n </ng-template>\n <kit-input-message *ngIf=\"messageText && value\"\n [message]=\"messageText\"\n ></kit-input-message>\n</div>\n", styles: [".display-flex{display:flex}.flex-align-items-center{align-items:center}.flex-justify-content-center{justify-content:center}.flex-justify-content-end{justify-content:flex-end}.display-block{display:block}div[kendowatermarkoverlay]{display:none}:root{--ui-kit-color-white: #ffffff;--ui-kit-color-black: #000000;--ui-kit-color-main: #56a2f7;--ui-kit-color-hover: #3678c3;--ui-kit-color-selected: #3678c366;--ui-kit-color-active: #3678c3;--ui-kit-color-focus: #56a2f733;--ui-kit-color-grey-0: #252b30;--ui-kit-color-grey-2: #a7b2c3;--ui-kit-color-grey-3: #c2d1d9;--ui-kit-color-grey-4: #e2e7ed;--ui-kit-color-grey-5: #fafafc;--ui-kit-color-grey-6: #ebebe4;--ui-kit-color-grey-7: #a9a8a8;--ui-kit-color-grey-8: #efefef;--ui-kit-color-grey-9: #969696;--ui-kit-color-grey-10: #2a2b32;--ui-kit-color-grey-11: #e3e4e5;--ui-kit-color-grey-12: #a9aec3;--ui-kit-color-grey-13: #f7f7f8;--ui-kit-color-grey-14: #565963;--ui-kit-color-grey-15: #f0f0f0;--ui-kit-color-grey-16: #ececf8;--ui-kit-color-green: #00b0ad;--ui-kit-color-green-1: #39c237;--ui-kit-color-green-2: #39c23733;--ui-kit-color-green-3: #1cb589;--ui-kit-color-green-4: #e0f2ed;--ui-kit-color-green-5: #e5ffe5;--ui-kit-color-red: #ef3e42;--ui-kit-color-red-20: #f8e0e0;--ui-kit-color-red-1: #f5222d;--ui-kit-color-red-2: #f5222d33;--ui-kit-color-red-3: #f9e9ea;--ui-kit-color-cobalt: #006890;--ui-kit-color-cobalt-darkest: #002a3a;--ui-kit-color-teal: #23afd2;--ui-kit-color-teal-1: #d8edf3;--ui-kit-color-orange: #faad14;--ui-kit-color-orange-1: #faad1433;--ui-kit-color-orange-2: #ff7a00;--ui-kit-color-orange-3: #fbecde;--ui-kit-color-orange-4: #fff6e4;--ui-kit-color-pink: #cd1159;--ui-kit-color-pink-1: #fae7ee;--ui-kit-color-purple: #7673ce;--ui-kit-color-purple-1: #e7e7f6;--ui-kit-color-blue: #1677ff;--ui-kit-color-blue-1: #e4eeff}.kit-text-label{padding:6px 4px 4px;border-radius:4px;border:1px solid transparent;outline:none;background:#fff}.kit-text-label:focus{border-color:#006890;box-shadow:0 0 0 3px #e7f4ec}.kit-text-label .label{display:block;margin-bottom:4px}.kit-text-label .value{color:#002a3a;font-weight:400;font-size:13px;border-radius:4px;line-height:17px}.kit-text-label.text-label-empty .value{height:22px;min-width:112px;background:#f3f4f6}.kit-text-label.danger{border-color:#ef3e42;background:#f8e0e0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.KitInputMessageComponent, selector: "kit-input-message", inputs: ["icon", "message"] }, { kind: "component", type: i3.KitInputLabelComponent, selector: "kit-input-label", inputs: ["text", "for", "tooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
31
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: KitTextLabelComponent, selector: "kit-text-label", inputs: { label: "label", value: "value", htmlMode: "htmlMode", noValueMessage: "noValueMessage", messageText: "messageText", state: "state" }, ngImport: i0, template: "<div class=\"kit-text-label {{ state }}\" tabindex=\"0\" [class.text-label-empty]=\"!value\">\n @if (value) {\n <kit-input-label class=\"label\"\n [text]=\"label\"\n ></kit-input-label>\n }\n\n @if (!value) {\n <kit-input-label class=\"label\"\n [text]=\"noValueMessage || label\"\n ></kit-input-label>\n }\n\n <div *ngIf=\"!htmlMode; else htmlModeTemplate\" class=\"value\">{{ value }}</div>\n <ng-template #htmlModeTemplate>\n <div class=\"value\" [innerHTML]=\"value\"></div>\n </ng-template>\n <kit-input-message *ngIf=\"messageText && value\"\n [message]=\"messageText\"\n ></kit-input-message>\n</div>\n", styles: [".display-flex{display:flex}.flex-align-items-center{align-items:center}.flex-justify-content-center{justify-content:center}.flex-justify-content-end{justify-content:flex-end}.display-block{display:block}div[kendowatermarkoverlay]{display:none}:root{--ui-kit-color-white: #ffffff;--ui-kit-color-black: #000000;--ui-kit-color-main: #56a2f7;--ui-kit-color-hover: #3678c3;--ui-kit-color-selected: #3678c366;--ui-kit-color-active: #3678c3;--ui-kit-color-focus: #56a2f733;--ui-kit-color-grey-0: #252b30;--ui-kit-color-grey-2: #a7b2c3;--ui-kit-color-grey-3: #c2d1d9;--ui-kit-color-grey-4: #e2e7ed;--ui-kit-color-grey-5: #fafafc;--ui-kit-color-grey-6: #ebebe4;--ui-kit-color-grey-7: #a9a8a8;--ui-kit-color-grey-8: #efefef;--ui-kit-color-grey-9: #969696;--ui-kit-color-grey-10: #2a2b32;--ui-kit-color-grey-11: #e3e4e5;--ui-kit-color-grey-12: #a9aec3;--ui-kit-color-grey-13: #f7f7f8;--ui-kit-color-grey-14: #565963;--ui-kit-color-grey-15: #f0f0f0;--ui-kit-color-grey-16: #ececf8;--ui-kit-color-grey-17: #878787;--ui-kit-color-green: #00b0ad;--ui-kit-color-green-1: #39c237;--ui-kit-color-green-2: #39c23733;--ui-kit-color-green-3: #1cb589;--ui-kit-color-green-4: #e0f2ed;--ui-kit-color-green-5: #e5ffe5;--ui-kit-color-red: #ef3e42;--ui-kit-color-red-20: #f8e0e0;--ui-kit-color-red-1: #f5222d;--ui-kit-color-red-2: #f5222d33;--ui-kit-color-red-3: #f9e9ea;--ui-kit-color-cobalt: #006890;--ui-kit-color-cobalt-darkest: #002a3a;--ui-kit-color-teal: #23afd2;--ui-kit-color-teal-1: #d8edf3;--ui-kit-color-orange: #faad14;--ui-kit-color-orange-1: #faad1433;--ui-kit-color-orange-2: #ff7a00;--ui-kit-color-orange-3: #fbecde;--ui-kit-color-orange-4: #fff6e4;--ui-kit-color-pink: #cd1159;--ui-kit-color-pink-1: #fae7ee;--ui-kit-color-purple: #7673ce;--ui-kit-color-purple-1: #e7e7f6;--ui-kit-color-blue: #1677ff;--ui-kit-color-blue-1: #e4eeff}.kit-text-label{padding:6px 4px 4px;border-radius:4px;border:1px solid transparent;outline:none;background:#fff}.kit-text-label:focus{border-color:#006890;box-shadow:0 0 0 3px #e7f4ec}.kit-text-label .label{display:block;margin-bottom:4px}.kit-text-label .value{color:#002a3a;font-weight:400;font-size:13px;border-radius:4px;line-height:17px}.kit-text-label.text-label-empty .value{height:22px;min-width:112px;background:#f3f4f6}.kit-text-label.danger{border-color:#ef3e42;background:#f8e0e0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.KitInputMessageComponent, selector: "kit-input-message", inputs: ["icon", "message"] }, { kind: "component", type: i3.KitInputLabelComponent, selector: "kit-input-label", inputs: ["text", "for", "tooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
32
32
|
}
|
|
33
33
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KitTextLabelComponent, decorators: [{
|
|
34
34
|
type: Component,
|
|
35
|
-
args: [{ selector: 'kit-text-label', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"kit-text-label {{ state }}\" tabindex=\"0\" [class.text-label-empty]=\"!value\">\n @if (value) {\n <kit-input-label class=\"label\"\n [text]=\"label\"\n ></kit-input-label>\n }\n\n @if (!value) {\n <kit-input-label class=\"label\"\n [text]=\"noValueMessage || label\"\n ></kit-input-label>\n }\n\n <div *ngIf=\"!htmlMode; else htmlModeTemplate\" class=\"value\">{{ value }}</div>\n <ng-template #htmlModeTemplate>\n <div class=\"value\" [innerHTML]=\"value\"></div>\n </ng-template>\n <kit-input-message *ngIf=\"messageText && value\"\n [message]=\"messageText\"\n ></kit-input-message>\n</div>\n", styles: [".display-flex{display:flex}.flex-align-items-center{align-items:center}.flex-justify-content-center{justify-content:center}.flex-justify-content-end{justify-content:flex-end}.display-block{display:block}div[kendowatermarkoverlay]{display:none}:root{--ui-kit-color-white: #ffffff;--ui-kit-color-black: #000000;--ui-kit-color-main: #56a2f7;--ui-kit-color-hover: #3678c3;--ui-kit-color-selected: #3678c366;--ui-kit-color-active: #3678c3;--ui-kit-color-focus: #56a2f733;--ui-kit-color-grey-0: #252b30;--ui-kit-color-grey-2: #a7b2c3;--ui-kit-color-grey-3: #c2d1d9;--ui-kit-color-grey-4: #e2e7ed;--ui-kit-color-grey-5: #fafafc;--ui-kit-color-grey-6: #ebebe4;--ui-kit-color-grey-7: #a9a8a8;--ui-kit-color-grey-8: #efefef;--ui-kit-color-grey-9: #969696;--ui-kit-color-grey-10: #2a2b32;--ui-kit-color-grey-11: #e3e4e5;--ui-kit-color-grey-12: #a9aec3;--ui-kit-color-grey-13: #f7f7f8;--ui-kit-color-grey-14: #565963;--ui-kit-color-grey-15: #f0f0f0;--ui-kit-color-grey-16: #ececf8;--ui-kit-color-green: #00b0ad;--ui-kit-color-green-1: #39c237;--ui-kit-color-green-2: #39c23733;--ui-kit-color-green-3: #1cb589;--ui-kit-color-green-4: #e0f2ed;--ui-kit-color-green-5: #e5ffe5;--ui-kit-color-red: #ef3e42;--ui-kit-color-red-20: #f8e0e0;--ui-kit-color-red-1: #f5222d;--ui-kit-color-red-2: #f5222d33;--ui-kit-color-red-3: #f9e9ea;--ui-kit-color-cobalt: #006890;--ui-kit-color-cobalt-darkest: #002a3a;--ui-kit-color-teal: #23afd2;--ui-kit-color-teal-1: #d8edf3;--ui-kit-color-orange: #faad14;--ui-kit-color-orange-1: #faad1433;--ui-kit-color-orange-2: #ff7a00;--ui-kit-color-orange-3: #fbecde;--ui-kit-color-orange-4: #fff6e4;--ui-kit-color-pink: #cd1159;--ui-kit-color-pink-1: #fae7ee;--ui-kit-color-purple: #7673ce;--ui-kit-color-purple-1: #e7e7f6;--ui-kit-color-blue: #1677ff;--ui-kit-color-blue-1: #e4eeff}.kit-text-label{padding:6px 4px 4px;border-radius:4px;border:1px solid transparent;outline:none;background:#fff}.kit-text-label:focus{border-color:#006890;box-shadow:0 0 0 3px #e7f4ec}.kit-text-label .label{display:block;margin-bottom:4px}.kit-text-label .value{color:#002a3a;font-weight:400;font-size:13px;border-radius:4px;line-height:17px}.kit-text-label.text-label-empty .value{height:22px;min-width:112px;background:#f3f4f6}.kit-text-label.danger{border-color:#ef3e42;background:#f8e0e0}\n"] }]
|
|
35
|
+
args: [{ selector: 'kit-text-label', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"kit-text-label {{ state }}\" tabindex=\"0\" [class.text-label-empty]=\"!value\">\n @if (value) {\n <kit-input-label class=\"label\"\n [text]=\"label\"\n ></kit-input-label>\n }\n\n @if (!value) {\n <kit-input-label class=\"label\"\n [text]=\"noValueMessage || label\"\n ></kit-input-label>\n }\n\n <div *ngIf=\"!htmlMode; else htmlModeTemplate\" class=\"value\">{{ value }}</div>\n <ng-template #htmlModeTemplate>\n <div class=\"value\" [innerHTML]=\"value\"></div>\n </ng-template>\n <kit-input-message *ngIf=\"messageText && value\"\n [message]=\"messageText\"\n ></kit-input-message>\n</div>\n", styles: [".display-flex{display:flex}.flex-align-items-center{align-items:center}.flex-justify-content-center{justify-content:center}.flex-justify-content-end{justify-content:flex-end}.display-block{display:block}div[kendowatermarkoverlay]{display:none}:root{--ui-kit-color-white: #ffffff;--ui-kit-color-black: #000000;--ui-kit-color-main: #56a2f7;--ui-kit-color-hover: #3678c3;--ui-kit-color-selected: #3678c366;--ui-kit-color-active: #3678c3;--ui-kit-color-focus: #56a2f733;--ui-kit-color-grey-0: #252b30;--ui-kit-color-grey-2: #a7b2c3;--ui-kit-color-grey-3: #c2d1d9;--ui-kit-color-grey-4: #e2e7ed;--ui-kit-color-grey-5: #fafafc;--ui-kit-color-grey-6: #ebebe4;--ui-kit-color-grey-7: #a9a8a8;--ui-kit-color-grey-8: #efefef;--ui-kit-color-grey-9: #969696;--ui-kit-color-grey-10: #2a2b32;--ui-kit-color-grey-11: #e3e4e5;--ui-kit-color-grey-12: #a9aec3;--ui-kit-color-grey-13: #f7f7f8;--ui-kit-color-grey-14: #565963;--ui-kit-color-grey-15: #f0f0f0;--ui-kit-color-grey-16: #ececf8;--ui-kit-color-grey-17: #878787;--ui-kit-color-green: #00b0ad;--ui-kit-color-green-1: #39c237;--ui-kit-color-green-2: #39c23733;--ui-kit-color-green-3: #1cb589;--ui-kit-color-green-4: #e0f2ed;--ui-kit-color-green-5: #e5ffe5;--ui-kit-color-red: #ef3e42;--ui-kit-color-red-20: #f8e0e0;--ui-kit-color-red-1: #f5222d;--ui-kit-color-red-2: #f5222d33;--ui-kit-color-red-3: #f9e9ea;--ui-kit-color-cobalt: #006890;--ui-kit-color-cobalt-darkest: #002a3a;--ui-kit-color-teal: #23afd2;--ui-kit-color-teal-1: #d8edf3;--ui-kit-color-orange: #faad14;--ui-kit-color-orange-1: #faad1433;--ui-kit-color-orange-2: #ff7a00;--ui-kit-color-orange-3: #fbecde;--ui-kit-color-orange-4: #fff6e4;--ui-kit-color-pink: #cd1159;--ui-kit-color-pink-1: #fae7ee;--ui-kit-color-purple: #7673ce;--ui-kit-color-purple-1: #e7e7f6;--ui-kit-color-blue: #1677ff;--ui-kit-color-blue-1: #e4eeff}.kit-text-label{padding:6px 4px 4px;border-radius:4px;border:1px solid transparent;outline:none;background:#fff}.kit-text-label:focus{border-color:#006890;box-shadow:0 0 0 3px #e7f4ec}.kit-text-label .label{display:block;margin-bottom:4px}.kit-text-label .value{color:#002a3a;font-weight:400;font-size:13px;border-radius:4px;line-height:17px}.kit-text-label.text-label-empty .value{height:22px;min-width:112px;background:#f3f4f6}.kit-text-label.danger{border-color:#ef3e42;background:#f8e0e0}\n"] }]
|
|
36
36
|
}], propDecorators: { label: [{
|
|
37
37
|
type: Input
|
|
38
38
|
}], value: [{
|