keevo-components 2.0.251 → 2.0.253

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.
@@ -6,10 +6,10 @@ export class KvCardsInstructionComponent {
6
6
  this.blackCard = input();
7
7
  }
8
8
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvCardsInstructionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: KvCardsInstructionComponent, isStandalone: true, selector: "kv-cards-instruction", inputs: { whiteCard: { classPropertyName: "whiteCard", publicName: "whiteCard", isSignal: true, isRequired: false, transformFunction: null }, blackCard: { classPropertyName: "blackCard", publicName: "blackCard", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"w-full h-full flex flex-column gap-2\">\r\n @if (whiteCard()) {\r\n <div\r\n class=\"bg-white border-1 border-gray-300 border-round-lg p-3 min-h-0 flex flex-column gap-2\"\r\n [style.height.%]=\"whiteCard()?.height\"\r\n >\r\n <div class=\"flex flex-row align-items-center gap-4\">\r\n @if(whiteCard()?.icon) {\r\n <span class=\"material-symbols-outlined\"> {{ whiteCard()?.icon }}</span>\r\n }\r\n <span class=\"font-semibold\">{{ whiteCard()?.title }}</span>\r\n </div>\r\n\r\n <div class=\"h-full max-h-full overflow-y-auto text-xs\">\r\n <ng-content select=\"[white-card-content]\"></ng-content>\r\n </div>\r\n </div>\r\n }\r\n\r\n @if (blackCard()) {\r\n <div\r\n class=\"bg-gray-900 text-white border-round-lg p-3 min-h-0 flex flex-column gap-4\"\r\n [style.height.%]=\"blackCard()?.height\"\r\n >\r\n <div class=\"flex flex-row align-items-center gap-2\">\r\n @if(blackCard()?.icon) {\r\n <span class=\"material-symbols-outlined\"> {{ blackCard()?.icon }}</span>\r\n }\r\n <span class=\"font-semibold\">{{ blackCard()?.title }}</span>\r\n </div>\r\n\r\n <div class=\"h-full max-h-full overflow-y-auto text-xs\">\r\n <ng-content select=\"[black-card-content]\"></ng-content>\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n", styles: [""] }); }
9
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: KvCardsInstructionComponent, isStandalone: true, selector: "kv-cards-instruction", inputs: { whiteCard: { classPropertyName: "whiteCard", publicName: "whiteCard", isSignal: true, isRequired: false, transformFunction: null }, blackCard: { classPropertyName: "blackCard", publicName: "blackCard", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"w-full h-full flex flex-column gap-2\">\r\n @if (whiteCard()) {\r\n <div\r\n class=\"bg-white border-1 border-gray-300 border-round-lg p-3 min-h-0 flex flex-column gap-4\"\r\n [style.height.%]=\"whiteCard()?.height\"\r\n >\r\n <div class=\"flex flex-row align-items-center gap-2\">\r\n @if(whiteCard()?.icon) {\r\n <span class=\"material-symbols-outlined\"> {{ whiteCard()?.icon }}</span>\r\n }\r\n <span class=\"font-semibold\">{{ whiteCard()?.title }}</span>\r\n </div>\r\n\r\n <div class=\"h-full max-h-full overflow-y-auto text-xs\">\r\n <ng-content select=\"[white-card-content]\"></ng-content>\r\n </div>\r\n </div>\r\n }\r\n\r\n @if (blackCard()) {\r\n <div\r\n class=\"bg-gray-900 text-white border-round-lg p-3 min-h-0 flex flex-column gap-4\"\r\n [style.height.%]=\"blackCard()?.height\"\r\n >\r\n <div class=\"flex flex-row align-items-center gap-2\">\r\n @if(blackCard()?.icon) {\r\n <span class=\"material-symbols-outlined\"> {{ blackCard()?.icon }}</span>\r\n }\r\n <span class=\"font-semibold\">{{ blackCard()?.title }}</span>\r\n </div>\r\n\r\n <div class=\"h-full max-h-full overflow-y-auto text-xs\">\r\n <ng-content select=\"[black-card-content]\"></ng-content>\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n", styles: [""] }); }
10
10
  }
11
11
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvCardsInstructionComponent, decorators: [{
12
12
  type: Component,
13
- args: [{ selector: 'kv-cards-instruction', standalone: true, imports: [], template: "<div class=\"w-full h-full flex flex-column gap-2\">\r\n @if (whiteCard()) {\r\n <div\r\n class=\"bg-white border-1 border-gray-300 border-round-lg p-3 min-h-0 flex flex-column gap-2\"\r\n [style.height.%]=\"whiteCard()?.height\"\r\n >\r\n <div class=\"flex flex-row align-items-center gap-4\">\r\n @if(whiteCard()?.icon) {\r\n <span class=\"material-symbols-outlined\"> {{ whiteCard()?.icon }}</span>\r\n }\r\n <span class=\"font-semibold\">{{ whiteCard()?.title }}</span>\r\n </div>\r\n\r\n <div class=\"h-full max-h-full overflow-y-auto text-xs\">\r\n <ng-content select=\"[white-card-content]\"></ng-content>\r\n </div>\r\n </div>\r\n }\r\n\r\n @if (blackCard()) {\r\n <div\r\n class=\"bg-gray-900 text-white border-round-lg p-3 min-h-0 flex flex-column gap-4\"\r\n [style.height.%]=\"blackCard()?.height\"\r\n >\r\n <div class=\"flex flex-row align-items-center gap-2\">\r\n @if(blackCard()?.icon) {\r\n <span class=\"material-symbols-outlined\"> {{ blackCard()?.icon }}</span>\r\n }\r\n <span class=\"font-semibold\">{{ blackCard()?.title }}</span>\r\n </div>\r\n\r\n <div class=\"h-full max-h-full overflow-y-auto text-xs\">\r\n <ng-content select=\"[black-card-content]\"></ng-content>\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n" }]
13
+ args: [{ selector: 'kv-cards-instruction', standalone: true, imports: [], template: "<div class=\"w-full h-full flex flex-column gap-2\">\r\n @if (whiteCard()) {\r\n <div\r\n class=\"bg-white border-1 border-gray-300 border-round-lg p-3 min-h-0 flex flex-column gap-4\"\r\n [style.height.%]=\"whiteCard()?.height\"\r\n >\r\n <div class=\"flex flex-row align-items-center gap-2\">\r\n @if(whiteCard()?.icon) {\r\n <span class=\"material-symbols-outlined\"> {{ whiteCard()?.icon }}</span>\r\n }\r\n <span class=\"font-semibold\">{{ whiteCard()?.title }}</span>\r\n </div>\r\n\r\n <div class=\"h-full max-h-full overflow-y-auto text-xs\">\r\n <ng-content select=\"[white-card-content]\"></ng-content>\r\n </div>\r\n </div>\r\n }\r\n\r\n @if (blackCard()) {\r\n <div\r\n class=\"bg-gray-900 text-white border-round-lg p-3 min-h-0 flex flex-column gap-4\"\r\n [style.height.%]=\"blackCard()?.height\"\r\n >\r\n <div class=\"flex flex-row align-items-center gap-2\">\r\n @if(blackCard()?.icon) {\r\n <span class=\"material-symbols-outlined\"> {{ blackCard()?.icon }}</span>\r\n }\r\n <span class=\"font-semibold\">{{ blackCard()?.title }}</span>\r\n </div>\r\n\r\n <div class=\"h-full max-h-full overflow-y-auto text-xs\">\r\n <ng-content select=\"[black-card-content]\"></ng-content>\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n" }]
14
14
  }] });
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtY2FyZHMtaW5zdHJ1Y3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtaW5zdHJ1Y3Rpb24tcGFnZS9jb21wb25lbnRzL2NhcmRzLWluc3RydWN0aW9uL2t2LWNhcmRzLWluc3RydWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LWluc3RydWN0aW9uLXBhZ2UvY29tcG9uZW50cy9jYXJkcy1pbnN0cnVjdGlvbi9rdi1jYXJkcy1pbnN0cnVjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFTakQsTUFBTSxPQUFPLDJCQUEyQjtJQVB4QztRQVFFLGNBQVMsR0FBRyxLQUFLLENBSUYsU0FBUyxDQUFDLENBQUM7UUFHMUIsY0FBUyxHQUFHLEtBQUssRUFJRCxDQUFDO0tBQ2xCOzhHQWJZLDJCQUEyQjtrR0FBM0IsMkJBQTJCLG9XQ1R4QyxpM0NBcUNBOzsyRkQ1QmEsMkJBQTJCO2tCQVB2QyxTQUFTOytCQUNFLHNCQUFzQixjQUNwQixJQUFJLFdBQ1AsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAna3YtY2FyZHMtaW5zdHJ1Y3Rpb24nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW10sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2t2LWNhcmRzLWluc3RydWN0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4va3YtY2FyZHMtaW5zdHJ1Y3Rpb24uY29tcG9uZW50LnNjc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBLdkNhcmRzSW5zdHJ1Y3Rpb25Db21wb25lbnQge1xyXG4gIHdoaXRlQ2FyZCA9IGlucHV0PHtcclxuICAgIHRpdGxlOiBzdHJpbmc7XHJcbiAgICBpY29uOiBzdHJpbmc7XHJcbiAgICBoZWlnaHQ6IG51bWJlcjtcclxuICB9IHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xyXG5cclxuXHJcbiAgYmxhY2tDYXJkID0gaW5wdXQ8e1xyXG4gICAgdGl0bGU6IHN0cmluZztcclxuICAgIGljb246IHN0cmluZztcclxuICAgIGhlaWdodDogbnVtYmVyO1xyXG4gIH0gfCB1bmRlZmluZWQ+KCk7XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInctZnVsbCBoLWZ1bGwgZmxleCBmbGV4LWNvbHVtbiBnYXAtMlwiPlxyXG4gIEBpZiAod2hpdGVDYXJkKCkpIHtcclxuICAgIDxkaXZcclxuICAgICAgY2xhc3M9XCJiZy13aGl0ZSBib3JkZXItMSBib3JkZXItZ3JheS0zMDAgYm9yZGVyLXJvdW5kLWxnIHAtMyBtaW4taC0wIGZsZXggZmxleC1jb2x1bW4gZ2FwLTJcIlxyXG4gICAgICBbc3R5bGUuaGVpZ2h0LiVdPVwid2hpdGVDYXJkKCk/LmhlaWdodFwiXHJcbiAgICA+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtNFwiPlxyXG4gICAgICAgIEBpZih3aGl0ZUNhcmQoKT8uaWNvbikge1xyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkXCI+IHt7IHdoaXRlQ2FyZCgpPy5pY29uIH19PC9zcGFuPlxyXG4gICAgICAgIH1cclxuICAgICAgICA8c3BhbiBjbGFzcz1cImZvbnQtc2VtaWJvbGRcIj57eyB3aGl0ZUNhcmQoKT8udGl0bGUgfX08L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cImgtZnVsbCBtYXgtaC1mdWxsIG92ZXJmbG93LXktYXV0byB0ZXh0LXhzXCI+XHJcbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3doaXRlLWNhcmQtY29udGVudF1cIj48L25nLWNvbnRlbnQ+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgfVxyXG5cclxuICBAaWYgKGJsYWNrQ2FyZCgpKSB7XHJcbiAgICA8ZGl2XHJcbiAgICAgIGNsYXNzPVwiYmctZ3JheS05MDAgdGV4dC13aGl0ZSBib3JkZXItcm91bmQtbGcgcC0zIG1pbi1oLTAgZmxleCBmbGV4LWNvbHVtbiBnYXAtNFwiXHJcbiAgICAgIFtzdHlsZS5oZWlnaHQuJV09XCJibGFja0NhcmQoKT8uaGVpZ2h0XCJcclxuICAgID5cclxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgYWxpZ24taXRlbXMtY2VudGVyIGdhcC0yXCI+XHJcbiAgICAgICAgQGlmKGJsYWNrQ2FyZCgpPy5pY29uKSB7XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWRcIj4ge3sgYmxhY2tDYXJkKCk/Lmljb24gfX08L3NwYW4+XHJcbiAgICAgICAgfVxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZm9udC1zZW1pYm9sZFwiPnt7IGJsYWNrQ2FyZCgpPy50aXRsZSB9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaC1mdWxsIG1heC1oLWZ1bGwgb3ZlcmZsb3cteS1hdXRvIHRleHQteHNcIj5cclxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbYmxhY2stY2FyZC1jb250ZW50XVwiPjwvbmctY29udGVudD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICB9XHJcbjwvZGl2PlxyXG4iXX0=
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtY2FyZHMtaW5zdHJ1Y3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtaW5zdHJ1Y3Rpb24tcGFnZS9jb21wb25lbnRzL2NhcmRzLWluc3RydWN0aW9uL2t2LWNhcmRzLWluc3RydWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LWluc3RydWN0aW9uLXBhZ2UvY29tcG9uZW50cy9jYXJkcy1pbnN0cnVjdGlvbi9rdi1jYXJkcy1pbnN0cnVjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFTakQsTUFBTSxPQUFPLDJCQUEyQjtJQVB4QztRQVFFLGNBQVMsR0FBRyxLQUFLLENBSUYsU0FBUyxDQUFDLENBQUM7UUFHMUIsY0FBUyxHQUFHLEtBQUssRUFJRCxDQUFDO0tBQ2xCOzhHQWJZLDJCQUEyQjtrR0FBM0IsMkJBQTJCLG9XQ1R4QyxpM0NBcUNBOzsyRkQ1QmEsMkJBQTJCO2tCQVB2QyxTQUFTOytCQUNFLHNCQUFzQixjQUNwQixJQUFJLFdBQ1AsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAna3YtY2FyZHMtaW5zdHJ1Y3Rpb24nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW10sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2t2LWNhcmRzLWluc3RydWN0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4va3YtY2FyZHMtaW5zdHJ1Y3Rpb24uY29tcG9uZW50LnNjc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBLdkNhcmRzSW5zdHJ1Y3Rpb25Db21wb25lbnQge1xyXG4gIHdoaXRlQ2FyZCA9IGlucHV0PHtcclxuICAgIHRpdGxlOiBzdHJpbmc7XHJcbiAgICBpY29uOiBzdHJpbmc7XHJcbiAgICBoZWlnaHQ6IG51bWJlcjtcclxuICB9IHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xyXG5cclxuXHJcbiAgYmxhY2tDYXJkID0gaW5wdXQ8e1xyXG4gICAgdGl0bGU6IHN0cmluZztcclxuICAgIGljb246IHN0cmluZztcclxuICAgIGhlaWdodDogbnVtYmVyO1xyXG4gIH0gfCB1bmRlZmluZWQ+KCk7XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInctZnVsbCBoLWZ1bGwgZmxleCBmbGV4LWNvbHVtbiBnYXAtMlwiPlxyXG4gIEBpZiAod2hpdGVDYXJkKCkpIHtcclxuICAgIDxkaXZcclxuICAgICAgY2xhc3M9XCJiZy13aGl0ZSBib3JkZXItMSBib3JkZXItZ3JheS0zMDAgYm9yZGVyLXJvdW5kLWxnIHAtMyBtaW4taC0wIGZsZXggZmxleC1jb2x1bW4gZ2FwLTRcIlxyXG4gICAgICBbc3R5bGUuaGVpZ2h0LiVdPVwid2hpdGVDYXJkKCk/LmhlaWdodFwiXHJcbiAgICA+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMlwiPlxyXG4gICAgICAgIEBpZih3aGl0ZUNhcmQoKT8uaWNvbikge1xyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkXCI+IHt7IHdoaXRlQ2FyZCgpPy5pY29uIH19PC9zcGFuPlxyXG4gICAgICAgIH1cclxuICAgICAgICA8c3BhbiBjbGFzcz1cImZvbnQtc2VtaWJvbGRcIj57eyB3aGl0ZUNhcmQoKT8udGl0bGUgfX08L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cImgtZnVsbCBtYXgtaC1mdWxsIG92ZXJmbG93LXktYXV0byB0ZXh0LXhzXCI+XHJcbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3doaXRlLWNhcmQtY29udGVudF1cIj48L25nLWNvbnRlbnQ+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgfVxyXG5cclxuICBAaWYgKGJsYWNrQ2FyZCgpKSB7XHJcbiAgICA8ZGl2XHJcbiAgICAgIGNsYXNzPVwiYmctZ3JheS05MDAgdGV4dC13aGl0ZSBib3JkZXItcm91bmQtbGcgcC0zIG1pbi1oLTAgZmxleCBmbGV4LWNvbHVtbiBnYXAtNFwiXHJcbiAgICAgIFtzdHlsZS5oZWlnaHQuJV09XCJibGFja0NhcmQoKT8uaGVpZ2h0XCJcclxuICAgID5cclxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgYWxpZ24taXRlbXMtY2VudGVyIGdhcC0yXCI+XHJcbiAgICAgICAgQGlmKGJsYWNrQ2FyZCgpPy5pY29uKSB7XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWRcIj4ge3sgYmxhY2tDYXJkKCk/Lmljb24gfX08L3NwYW4+XHJcbiAgICAgICAgfVxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZm9udC1zZW1pYm9sZFwiPnt7IGJsYWNrQ2FyZCgpPy50aXRsZSB9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaC1mdWxsIG1heC1oLWZ1bGwgb3ZlcmZsb3cteS1hdXRvIHRleHQteHNcIj5cclxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbYmxhY2stY2FyZC1jb250ZW50XVwiPjwvbmctY29udGVudD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICB9XHJcbjwvZGl2PlxyXG4iXX0=
@@ -12,6 +12,7 @@ export class KvKanbanComponent {
12
12
  constructor() {
13
13
  this.sharedMenu = viewChild('sharedMenu');
14
14
  this.currentMenuOptions = [];
15
+ this.currentCard = null;
15
16
  this.actions = input([]);
16
17
  this.columnConfigs = input([]);
17
18
  this.columnLists = input([]);
@@ -48,7 +49,9 @@ export class KvKanbanComponent {
48
49
  }
49
50
  openCardMenu(event, item) {
50
51
  event.stopPropagation();
52
+ this.currentCard = item;
51
53
  this.currentMenuOptions = this.getActionsForCard(item);
54
+ this.onSelectedCard.emit(item);
52
55
  this.sharedMenu()?.toggle(event);
53
56
  }
54
57
  onScroll(event, columnId) {
@@ -70,8 +73,8 @@ export class KvKanbanComponent {
70
73
  if (action.command) {
71
74
  action.command(event);
72
75
  }
73
- if (action.label) {
74
- this.onActionClick(action.label, card);
76
+ if (action.label && this.currentCard) {
77
+ this.onActionClick(action.label, this.currentCard);
75
78
  }
76
79
  }
77
80
  }));
@@ -94,4 +97,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImpor
94
97
  type: Component,
95
98
  args: [{ standalone: true, selector: 'kv-kanban', imports: [CommonModule, DragDropModule, MenuModule, TooltipModule], template: "<div class=\"flex w-full h-full\">\r\n <div class=\"board-wrapper flex-column lg:flex-row\" cdkDropListGroup>\r\n \r\n @for(config of columnConfigs(); track $index) {\r\n\r\n <div class=\"board-column\" [style.flex]=\"getColumnFlex()\">\r\n \r\n <div class=\"column-header\" [style.backgroundColor]=\"config.corTitulo\">\r\n <span class=\"text-base font-semibold\">{{ config.nome }}</span>\r\n @if(this.showColumnsCounter()) {\r\n <span class=\"column-count-badge px-2 py-1\" [style.color]=\"config.corTitulo\">{{ config.contador | number:'2.0' }}</span>\r\n }\r\n </div>\r\n\r\n <div \r\n class=\"column-content\"\r\n cdkDropList\r\n [id]=\"config.id.toString()\"\r\n [cdkDropListData]=\"getColumnList()(config.id)\"\r\n (cdkDropListDropped)=\"drop($event)\"\r\n (scroll)=\"onScroll($event, config.id)\">\r\n\r\n\r\n @for(item of getColumnList()(config.id); track $index) {\r\n \r\n <div class=\"kanban-card\" cdkDrag [cdkDragDisabled]=\"!enableDrag()\">\r\n\r\n @if(actions().length > 0) {\r\n <span class=\"material-symbols-outlined card-menu-btn text-xl text-black-alpha-50 hover:surface-200 border-round-lg\" (click)=\"openCardMenu($event, item)\">\r\n more_vert\r\n </span>\r\n }\r\n \r\n\r\n @if (item.status && item.status.length > 0) {\r\n <div class=\"card-header mt-1 mr-3 gap-2 overflow-hidden\" \r\n [pTooltip]=\"getStatusTooltip(item.status)\" \r\n tooltipPosition=\"top\">\r\n @for(statusItem of item.status; track $index) {\r\n <span class=\"status-tag font-semibold text-xs border-round-3xl py-1 px-2\" \r\n [style.backgroundColor]=\"statusItem.statusColor\"\r\n [style.color]=\"statusItem.statusLabelColor\">\r\n {{ statusItem.label }}\r\n </span>\r\n }\r\n </div>\r\n }\r\n\r\n <div class=\"card-body overflow-hidden ml-1\">\r\n <p class=\"p-0 m-0 text-sm text-black-alpha-70 font-semibold mb-2 pr-4 white-space-nowrap\" pTooltip=\"{{item.titulo}}\" tooltipPosition=\"top\">\r\n {{ item.titulo }}\r\n </p>\r\n \r\n <ng-container [ngTemplateOutlet]=\"cardTemplate()\" [ngTemplateOutletContext]=\"{ $implicit: item }\"></ng-container>\r\n </div>\r\n\r\n <div *cdkDragPlaceholder class=\"custom-placeholder\"></div>\r\n </div>\r\n }\r\n\r\n </div>\r\n\r\n <div class=\"column-footer text-xs text-black-alpha-80\">\r\n Ver {{ getColumnList()(config.id).length }} de {{ config.contador }}\r\n </div>\r\n\r\n </div>\r\n\r\n }\r\n\r\n </div>\r\n</div>\r\n\r\n<p-menu #sharedMenu [model]=\"currentMenuOptions\" [popup]=\"true\" appendTo=\"body\"></p-menu>", styles: [".board-wrapper{display:flex;flex:1 1 0%;gap:16px;overflow-x:auto;padding:20px;height:100%;min-height:0}.board-column{display:flex;flex-direction:column;background-color:#f0f2f5;border-radius:18px;min-width:280px;overflow:visible;min-height:400px;max-height:600px}@media (min-width: 1024px){.board-column{height:100%;max-height:100%;min-height:0}}.column-header{padding:10px 20px;margin:7px;border-radius:18px;color:#fff;display:flex;justify-content:space-between;align-items:center;font-weight:600;gap:8px}.column-header span:first-child{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.column-header .column-count-badge{background-color:#ffffffe6;border-radius:12px;font-size:.85rem;font-weight:700;flex-shrink:0}.column-content{flex:1 1 0;overflow-y:auto;overflow-x:visible;padding:12px;min-height:0}.column-content::-webkit-scrollbar{width:6px}.column-content::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.kanban-card{background:#fff;border-radius:16px;padding:12px;margin-bottom:8px;box-shadow:0 4px 6px #0000001a;cursor:grab;transition:box-shadow .2s;position:relative}.kanban-card:active{cursor:grabbing}.kanban-card:hover{box-shadow:0 4px 8px #0000001a}.kanban-card.cdk-drag-disabled,.kanban-card.cdk-drag-disabled:active{cursor:default}.card-header{display:flex;margin-bottom:8px;flex-wrap:nowrap}.card-header .status-tag{white-space:nowrap;flex-shrink:0}.card-menu-btn{position:absolute;top:12px;right:8px;cursor:pointer;z-index:10;-webkit-user-select:none;user-select:none}.column-footer{padding:10px;text-align:center}.cdk-drag-preview{box-sizing:border-box;border-radius:8px;box-shadow:0 5px 15px #0003;background:#fff}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.column-content.cdk-drop-list-dragging .kanban-card:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}::ng-deep .p-menu{scale:.8;z-index:1000!important}\n"] }]
96
99
  }] });
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3Yta2FuYmFuLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LWthbmJhbi9rdi1rYW5iYW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3Yta2FuYmFuL2t2LWthbmJhbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFlLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRyxPQUFPLEVBQWUsY0FBYyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsVUFBVSxFQUFRLE1BQU0sY0FBYyxDQUFDO0FBRWhELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7O0FBU2hELE1BQU0sT0FBTyxpQkFBaUI7SUFQOUI7UUFTRSxlQUFVLEdBQUcsU0FBUyxDQUFPLFlBQVksQ0FBQyxDQUFDO1FBRTNDLHVCQUFrQixHQUFlLEVBQUUsQ0FBQztRQUVwQyxZQUFPLEdBQUcsS0FBSyxDQUFhLEVBQUUsQ0FBQyxDQUFDO1FBQ2hDLGtCQUFhLEdBQUcsS0FBSyxDQUF1QixFQUFFLENBQUMsQ0FBQztRQUNoRCxnQkFBVyxHQUFHLEtBQUssQ0FBcUIsRUFBRSxDQUFDLENBQUM7UUFDNUMsaUJBQVksR0FBRyxLQUFLLENBQTBCLElBQUksQ0FBQyxDQUFDO1FBQ3BELHVCQUFrQixHQUFHLEtBQUssQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUMxQyxlQUFVLEdBQUcsS0FB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eUV5Riw0OURENUQ3RSxZQUFZLDZQQUFFLGNBQWMsd3RDQUFFLFVBQVUsaXFCQUFFLGFBQWE7OzJGQUV0RCxpQkFBaUI7a0JBUDdCLFNBQVM7aUNBQ0ksSUFBSSxZQUNOLFdBQVcsV0FHWixDQUFDLFlBQVksRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0LCBPbkluaXQsIG91dHB1dCwgVGVtcGxhdGVSZWYsIHZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBLYW5iYW5Db2x1bW4sIEthbmJhbkNhcmQsIEthbmJhbkFjdGlvbiwgS2FuYmFuQ29sdW1uQ29uZmlnLCBLYW5iYW5Db2x1bW5MaXN0IH0gZnJvbSAnLi9rdi1rYW5iYW4tbW9kZWxzLm1vZGVsJztcclxuaW1wb3J0IHsgQ2RrRHJhZ0Ryb3AsIERyYWdEcm9wTW9kdWxlLCBtb3ZlSXRlbUluQXJyYXksIHRyYW5zZmVyQXJyYXlJdGVtIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IE1lbnVNb2R1bGUsIE1lbnUgfSBmcm9tICdwcmltZW5nL21lbnUnO1xyXG5pbXBvcnQgeyBNZW51SXRlbSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcclxuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdG9vbHRpcCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIHNlbGVjdG9yOiAna3Yta2FuYmFuJyxcclxuICB0ZW1wbGF0ZVVybDogJy4va3Yta2FuYmFuLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9rdi1rYW5iYW4uY29tcG9uZW50LnNjc3MnXSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBEcmFnRHJvcE1vZHVsZSwgTWVudU1vZHVsZSwgVG9vbHRpcE1vZHVsZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIEt2S2FuYmFuQ29tcG9uZW50IHtcclxuXHJcbiAgc2hhcmVkTWVudSA9IHZpZXdDaGlsZDxNZW51Pignc2hhcmVkTWVudScpO1xyXG5cclxuICBjdXJyZW50TWVudU9wdGlvbnM6IE1lbnVJdGVtW10gPSBbXTtcclxuXHJcbiAgYWN0aW9ucyA9IGlucHV0PE1lbnVJdGVtW10+KFtdKTtcclxuICBjb2x1bW5Db25maWdzID0gaW5wdXQ8S2FuYmFuQ29sdW1uQ29uZmlnW10+KFtdKTtcclxuICBjb2x1bW5MaXN0cyA9IGlucHV0PEthbmJhbkNvbHVtbkxpc3RbXT4oW10pO1xyXG4gIGNhcmRUZW1wbGF0ZSA9IGlucHV0PFRlbXBsYXRlUmVmPGFueT4gfCBudWxsPihudWxsKTtcclxuICBzaG93Q29sdW1uc0NvdW50ZXIgPSBpbnB1dDxib29sZWFuPih0cnVlKTtcclxuICBlbmFibGVEcmFnID0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XHJcbiAgb25DYXJkTW92ZWQgPSBvdXRwdXQ8YW55PigpO1xyXG4gIG9uQWN0aW9uQ2xpY2tlZCA9IG91dHB1dDx7IGFjdGlvbjogc3RyaW5nLCBjYXJkOiBLYW5iYW5DYXJkIH0+KCk7XHJcbiAgb25Mb2FkTW9yZUNhcmRzID0gb3V0cHV0PHsgY29sdW1uSWQ6IG51bWJlciB9PigpO1xyXG4gIG9uU2VsZWN0ZWRDYXJkID0gb3V0cHV0PEthbmJhbkNhcmQ+KCk7XHJcblxyXG4gIGdldENvbHVtbkxpc3QgPSBjb21wdXRlZCgoKSA9PiAoY29sdW1uSWQ6IG51bWJlcikgPT4ge1xyXG4gICAgY29uc3QgbGlzdCA9IHRoaXMuY29sdW1uTGlzdHMoKS5maW5kKGwgPT4gbC5pZENvbHVuYSA9PT0gY29sdW1uSWQpO1xyXG4gICAgcmV0dXJuIGxpc3Q/Lmxpc3RhZ2VtIHx8IFtdIGFzIEthbmJhbkNhcmRbXTtcclxuICB9KTtcclxuXHJcbiAgZHJvcChldmVudDogQ2RrRHJhZ0Ryb3A8S2FuYmFuQ2FyZFtdPikge1xyXG4gICAgaWYgKGV2ZW50LnByZXZpb3VzQ29udGFpbmVyID09PSBldmVudC5jb250YWluZXIpIHtcclxuICAgICAgbW92ZUl0ZW1JbkFycmF5KGV2ZW50LmNvbnRhaW5lci5kYXRhLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdHJhbnNmZXJBcnJheUl0ZW0oXHJcbiAgICAgICAgZXZlbnQucHJldmlvdXNDb250YWluZXIuZGF0YSxcclxuICAgICAgICBldmVudC5jb250YWluZXIuZGF0YSxcclxuICAgICAgICBldmVudC5wcmV2aW91c0luZGV4LFxyXG4gICAgICAgIGV2ZW50LmN1cnJlbnRJbmRleCxcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBtb3ZlZENhcmQgPSBldmVudC5jb250YWluZXIuZGF0YVtldmVudC5jdXJyZW50SW5kZXhdO1xyXG4gICAgXHJcbiAgICB0aGlzLm9uQ2FyZE1vdmVkLmVtaXQoe1xyXG4gICAgICBpdGVtOiBtb3ZlZENhcmQsXHJcbiAgICAgIGZyb21Db2x1bW5JZDogZXZlbnQucHJldmlvdXNDb250YWluZXIuaWQsXHJcbiAgICAgIHRvQ29sdW1uSWQ6IGV2ZW50LmNvbnRhaW5lci5pZFxyXG4gICAgfSk7XHJcbiAgICBcclxuICAgIHRoaXMub25TZWxlY3RlZENhcmQuZW1pdChtb3ZlZENhcmQpO1xyXG4gIH1cclxuXHJcbiAgb25BY3Rpb25DbGljayhhY3Rpb25Db2RlOiBzdHJpbmcsIGNhcmQ6IEthbmJhbkNhcmQpIHtcclxuICAgIHRoaXMub25BY3Rpb25DbGlja2VkLmVtaXQoeyBhY3Rpb246IGFjdGlvbkNvZGUsIGNhcmQgfSk7XHJcbiAgICBcclxuICAgIHRoaXMub25TZWxlY3RlZENhcmQuZW1pdChjYXJkKTtcclxuICB9XHJcblxyXG4gIG9wZW5DYXJkTWVudShldmVudDogTW91c2VFdmVudCwgaXRlbTogYW55KSB7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuXHJcbiAgICB0aGlzLmN1cnJlbnRNZW51T3B0aW9ucyA9IHRoaXMuZ2V0QWN0aW9uc0ZvckNhcmQoaXRlbSk7XHJcblxyXG4gICAgdGhpcy5zaGFyZWRNZW51KCk/LnRvZ2dsZShldmVudCk7XHJcbiAgfVxyXG5cclxuICBvblNjcm9sbChldmVudDogRXZlbnQsIGNvbHVtbklkOiBudW1iZXIpIHtcclxuICAgIGNvbnN0IGVsZW1lbnQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICBjb25zdCB0aHJlc2hvbGQgPSA1MDtcclxuICAgIGNvbnN0IGF0Qm90dG9tID0gZWxlbWVudC5zY3JvbGxIZWlnaHQgLSBlbGVtZW50LnNjcm9sbFRvcCAtIGVsZW1lbnQuY2xpZW50SGVpZ2h0IDwgdGhyZXNob2xkO1xyXG4gICAgXHJcbiAgICBpZiAoYXRCb3R0b20pIHtcclxuICAgICAgdGhpcy5vbkxvYWRNb3JlQ2FyZHMuZW1pdCh7IGNvbHVtbklkIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0Q29sdW1uVG90YWxJdGVtcyhjb2x1bW5JZDogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuY29sdW1uQ29uZmlncygpLmZpbmQoYyA9PiBjLmlkID09PSBjb2x1bW5JZCk7XHJcbiAgICByZXR1cm4gY29uZmlnPy5jb250YWRvciB8fCAwO1xyXG4gIH1cclxuXHJcbiAgZ2V0QWN0aW9uc0ZvckNhcmQoY2FyZDogS2FuYmFuQ2FyZCk6IE1lbnVJdGVtW10ge1xyXG4gICAgcmV0dXJuIHRoaXMuYWN0aW9ucygpLm1hcChhY3Rpb24gPT4gKHtcclxuICAgICAgLi4uYWN0aW9uLFxyXG4gICAgICBjb21tYW5kOiAoZXZlbnQ/OiBhbnkpID0+IHtcclxuICAgICAgICBpZiAoYWN0aW9uLmNvbW1hbmQpIHtcclxuICAgICAgICAgIGFjdGlvbi5jb21tYW5kKGV2ZW50KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgaWYgKGFjdGlvbi5sYWJlbCkge1xyXG4gICAgICAgICAgdGhpcy5vbkFjdGlvbkNsaWNrKGFjdGlvbi5sYWJlbCwgY2FyZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KSk7XHJcbiAgfVxyXG5cclxuICBnZXRDb2x1bW5GbGV4KCk6IHN0cmluZyB7XHJcbiAgICBjb25zdCB0b3RhbENvbHVtbnMgPSB0aGlzLmNvbHVtbkNvbmZpZ3MoKS5sZW5ndGg7XHJcbiAgICBpZiAodG90YWxDb2x1bW5zID09PSAwKSByZXR1cm4gJzEgMSAyODBweCc7XHJcbiAgICBcclxuICAgIHJldHVybiBgMSAxIGNhbGMoKDEwMCUgLSAkeyh0b3RhbENvbHVtbnMgLSAxKSAqIDE2fXB4KSAvICR7dG90YWxDb2x1bW5zfSlgO1xyXG4gIH1cclxuXHJcbiAgZ2V0U3RhdHVzVG9vbHRpcChzdGF0dXM6IGFueVtdKTogc3RyaW5nIHtcclxuICAgIGlmICghc3RhdHVzIHx8IHN0YXR1cy5sZW5ndGggPT09IDApIHJldHVybiAnJztcclxuICAgIHJldHVybiBzdGF0dXMubWFwKHMgPT4gcy5sYWJlbCkuam9pbignLCAnKTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJmbGV4IHctZnVsbCBoLWZ1bGxcIj5cclxuICA8ZGl2IGNsYXNzPVwiYm9hcmQtd3JhcHBlciBmbGV4LWNvbHVtbiBsZzpmbGV4LXJvd1wiIGNka0Ryb3BMaXN0R3JvdXA+XHJcbiAgICBcclxuICAgIEBmb3IoY29uZmlnIG9mIGNvbHVtbkNvbmZpZ3MoKTsgdHJhY2sgJGluZGV4KSB7XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiYm9hcmQtY29sdW1uXCIgW3N0eWxlLmZsZXhdPVwiZ2V0Q29sdW1uRmxleCgpXCI+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbi1oZWFkZXJcIiBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cImNvbmZpZy5jb3JUaXR1bG9cIj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1iYXNlIGZvbnQtc2VtaWJvbGRcIj57eyBjb25maWcubm9tZSB9fTwvc3Bhbj5cclxuICAgICAgICAgIEBpZih0aGlzLnNob3dDb2x1bW5zQ291bnRlcigpKSB7XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY29sdW1uLWNvdW50LWJhZGdlIHB4LTIgcHktMVwiIFtzdHlsZS5jb2xvcl09XCJjb25maWcuY29yVGl0dWxvXCI+e3sgY29uZmlnLmNvbnRhZG9yIHwgbnVtYmVyOicyLjAnIH19PC9zcGFuPlxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IFxyXG4gICAgICAgICAgY2xhc3M9XCJjb2x1bW4tY29udGVudFwiXHJcbiAgICAgICAgICBjZGtEcm9wTGlzdFxyXG4gICAgICAgICAgW2lkXT1cImNvbmZpZy5pZC50b1N0cmluZygpXCJcclxuICAgICAgICAgIFtjZGtEcm9wTGlzdERhdGFdPVwiZ2V0Q29sdW1uTGlzdCgpKGNvbmZpZy5pZClcIlxyXG4gICAgICAgICAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJkcm9wKCRldmVudClcIlxyXG4gICAgICAgICAgKHNjcm9sbCk9XCJvblNjcm9sbCgkZXZlbnQsIGNvbmZpZy5pZClcIj5cclxuXHJcblxyXG4gICAgICAgICAgQGZvcihpdGVtIG9mIGdldENvbHVtbkxpc3QoKShjb25maWcuaWQpOyB0cmFjayAkaW5kZXgpIHtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJrYW5iYW4tY2FyZFwiIGNka0RyYWcgW2Nka0RyYWdEaXNhYmxlZF09XCIhZW5hYmxlRHJhZygpXCI+XHJcblxyXG4gICAgICAgICAgICAgIEBpZihhY3Rpb25zKCkubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIGNhcmQtbWVudS1idG4gdGV4dC14bCB0ZXh0LWJsYWNrLWFscGhhLTUwIGhvdmVyOnN1cmZhY2UtMjAwIGJvcmRlci1yb3VuZC1sZ1wiIChjbGljayk9XCJvcGVuQ2FyZE1lbnUoJGV2ZW50LCBpdGVtKVwiPlxyXG4gICAgICAgICAgICAgICAgICBtb3JlX3ZlcnRcclxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgXHJcblxyXG4gICAgICAgICAgICAgIEBpZiAoaXRlbS5zdGF0dXMgJiYgaXRlbS5zdGF0dXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIG10LTEgbXItMyBnYXAtMiBvdmVyZmxvdy1oaWRkZW5cIiBcclxuICAgICAgICAgICAgICAgICAgICAgW3BUb29sdGlwXT1cImdldFN0YXR1c1Rvb2x0aXAoaXRlbS5zdGF0dXMpXCIgXHJcbiAgICAgICAgICAgICAgICAgICAgIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiPlxyXG4gICAgICAgICAgICAgICAgICBAZm9yKHN0YXR1c0l0ZW0gb2YgaXRlbS5zdGF0dXM7IHRyYWNrICRpbmRleCkge1xyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3RhdHVzLXRhZyBmb250LXNlbWlib2xkIHRleHQteHMgYm9yZGVyLXJvdW5kLTN4bCBweS0xIHB4LTJcIiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cInN0YXR1c0l0ZW0uc3RhdHVzQ29sb3JcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJzdGF0dXNJdGVtLnN0YXR1c0xhYmVsQ29sb3JcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIHt7IHN0YXR1c0l0ZW0ubGFiZWwgfX1cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBvdmVyZmxvdy1oaWRkZW4gbWwtMVwiPlxyXG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJwLTAgbS0wIHRleHQtc20gdGV4dC1ibGFjay1hbHBoYS03MCBmb250LXNlbWlib2xkIG1iLTIgcHItNCB3aGl0ZS1zcGFjZS1ub3dyYXBcIiBwVG9vbHRpcD1cInt7aXRlbS50aXR1bG99fVwiIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiPlxyXG4gICAgICAgICAgICAgICAgICB7eyBpdGVtLnRpdHVsbyB9fVxyXG4gICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNhcmRUZW1wbGF0ZSgpXCIgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtIH1cIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgPGRpdiAqY2RrRHJhZ1BsYWNlaG9sZGVyIGNsYXNzPVwiY3VzdG9tLXBsYWNlaG9sZGVyXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbi1mb290ZXIgdGV4dC14cyB0ZXh0LWJsYWNrLWFscGhhLTgwXCI+XHJcbiAgICAgICAgICBWZXIge3sgZ2V0Q29sdW1uTGlzdCgpKGNvbmZpZy5pZCkubGVuZ3RoIH19IGRlIHt7IGNvbmZpZy5jb250YWRvciB9fVxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgfVxyXG5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48cC1tZW51ICNzaGFyZWRNZW51IFttb2RlbF09XCJjdXJyZW50TWVudU9wdGlvbnNcIiBbcG9wdXBdPVwidHJ1ZVwiIGFwcGVuZFRvPVwiYm9keVwiPjwvcC1tZW51PiJdfQ==
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3Yta2FuYmFuLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LWthbmJhbi9rdi1rYW5iYW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3Yta2FuYmFuL2t2LWthbmJhbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFlLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRyxPQUFPLEVBQWUsY0FBYyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsVUFBVSxFQUFRLE1BQU0sY0FBYyxDQUFDO0FBRWhELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7O0FBU2hELE1BQU0sT0FBTyxpQkFBaUI7SUFQOUI7UUFTRSxlQUFVLEdBQUcsU0FBUyxDQUFPLFlBQVksQ0FBQyxDQUFDO1FBRTNDLHVCQUFrQixHQUFlLEVBQUUsQ0FBQztRQUNwQyxnQkFBVyxHQUFzQixJQUFJLENBQUM7UUFFdEMsWUFBTyxHQUFHLEtBQUssQ0FBYSxFQUFFLENBQUMsQ0FBQztRQUNoQyxrQkFBYSxHQUFHLEtBQUssQ0FBdUIsRUFBRSxDQUFDLENBQUM7UUFDaEQsZ0JBQVcsR0FBRyxLQUFLLENBQXFCLEVBQUUsQ0FBQyxDQUFDO1FBQzVDLGlCQUFZLEdBQUcsS0FBSyxDQUEwQixJQUFJLENBQUMsQ0FBQztRQUNwRCx1QkFBa0IsR0FBRyxLQUFLLENBQVUsSUFBSSxD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QUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdDLENBQUM7OEdBdkdVLGlCQUFpQjtrR0FBakIsaUJBQWlCLHlxQ0NmOUIsMmpHQXlFeUYsNDlERDVEN0UsWUFBWSw2UEFBRSxjQUFjLHd0Q0FBRSxVQUFVLGlxQkFBRSxhQUFhOzsyRkFFdEQsaUJBQWlCO2tCQVA3QixTQUFTO2lDQUNJLElBQUksWUFDTixXQUFXLFdBR1osQ0FBQyxZQUFZLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBpbnB1dCwgT25Jbml0LCBvdXRwdXQsIFRlbXBsYXRlUmVmLCB2aWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgS2FuYmFuQ29sdW1uLCBLYW5iYW5DYXJkLCBLYW5iYW5BY3Rpb24sIEthbmJhbkNvbHVtbkNvbmZpZywgS2FuYmFuQ29sdW1uTGlzdCB9IGZyb20gJy4va3Yta2FuYmFuLW1vZGVscy5tb2RlbCc7XHJcbmltcG9ydCB7IENka0RyYWdEcm9wLCBEcmFnRHJvcE1vZHVsZSwgbW92ZUl0ZW1JbkFycmF5LCB0cmFuc2ZlckFycmF5SXRlbSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBNZW51TW9kdWxlLCBNZW51IH0gZnJvbSAncHJpbWVuZy9tZW51JztcclxuaW1wb3J0IHsgTWVudUl0ZW0gfSBmcm9tICdwcmltZW5nL2FwaSc7XHJcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tICdwcmltZW5nL3Rvb2x0aXAnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBzZWxlY3RvcjogJ2t2LWthbmJhbicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2t2LWthbmJhbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4va3Yta2FuYmFuLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRHJhZ0Ryb3BNb2R1bGUsIE1lbnVNb2R1bGUsIFRvb2x0aXBNb2R1bGVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBLdkthbmJhbkNvbXBvbmVudCB7XHJcblxyXG4gIHNoYXJlZE1lbnUgPSB2aWV3Q2hpbGQ8TWVudT4oJ3NoYXJlZE1lbnUnKTtcclxuXHJcbiAgY3VycmVudE1lbnVPcHRpb25zOiBNZW51SXRlbVtdID0gW107XHJcbiAgY3VycmVudENhcmQ6IEthbmJhbkNhcmQgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgYWN0aW9ucyA9IGlucHV0PE1lbnVJdGVtW10+KFtdKTtcclxuICBjb2x1bW5Db25maWdzID0gaW5wdXQ8S2FuYmFuQ29sdW1uQ29uZmlnW10+KFtdKTtcclxuICBjb2x1bW5MaXN0cyA9IGlucHV0PEthbmJhbkNvbHVtbkxpc3RbXT4oW10pO1xyXG4gIGNhcmRUZW1wbGF0ZSA9IGlucHV0PFRlbXBsYXRlUmVmPGFueT4gfCBudWxsPihudWxsKTtcclxuICBzaG93Q29sdW1uc0NvdW50ZXIgPSBpbnB1dDxib29sZWFuPih0cnVlKTtcclxuICBlbmFibGVEcmFnID0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XHJcbiAgb25DYXJkTW92ZWQgPSBvdXRwdXQ8YW55PigpO1xyXG4gIG9uQWN0aW9uQ2xpY2tlZCA9IG91dHB1dDx7IGFjdGlvbjogc3RyaW5nLCBjYXJkOiBLYW5iYW5DYXJkIH0+KCk7XHJcbiAgb25Mb2FkTW9yZUNhcmRzID0gb3V0cHV0PHsgY29sdW1uSWQ6IG51bWJlciB9PigpO1xyXG4gIG9uU2VsZWN0ZWRDYXJkID0gb3V0cHV0PEthbmJhbkNhcmQ+KCk7XHJcblxyXG4gIGdldENvbHVtbkxpc3QgPSBjb21wdXRlZCgoKSA9PiAoY29sdW1uSWQ6IG51bWJlcikgPT4ge1xyXG4gICAgY29uc3QgbGlzdCA9IHRoaXMuY29sdW1uTGlzdHMoKS5maW5kKGwgPT4gbC5pZENvbHVuYSA9PT0gY29sdW1uSWQpO1xyXG4gICAgcmV0dXJuIGxpc3Q/Lmxpc3RhZ2VtIHx8IFtdIGFzIEthbmJhbkNhcmRbXTtcclxuICB9KTtcclxuXHJcbiAgZHJvcChldmVudDogQ2RrRHJhZ0Ryb3A8S2FuYmFuQ2FyZFtdPikge1xyXG4gICAgaWYgKGV2ZW50LnByZXZpb3VzQ29udGFpbmVyID09PSBldmVudC5jb250YWluZXIpIHtcclxuICAgICAgbW92ZUl0ZW1JbkFycmF5KGV2ZW50LmNvbnRhaW5lci5kYXRhLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdHJhbnNmZXJBcnJheUl0ZW0oXHJcbiAgICAgICAgZXZlbnQucHJldmlvdXNDb250YWluZXIuZGF0YSxcclxuICAgICAgICBldmVudC5jb250YWluZXIuZGF0YSxcclxuICAgICAgICBldmVudC5wcmV2aW91c0luZGV4LFxyXG4gICAgICAgIGV2ZW50LmN1cnJlbnRJbmRleCxcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBtb3ZlZENhcmQgPSBldmVudC5jb250YWluZXIuZGF0YVtldmVudC5jdXJyZW50SW5kZXhdO1xyXG4gICAgXHJcbiAgICB0aGlzLm9uQ2FyZE1vdmVkLmVtaXQoe1xyXG4gICAgICBpdGVtOiBtb3ZlZENhcmQsXHJcbiAgICAgIGZyb21Db2x1bW5JZDogZXZlbnQucHJldmlvdXNDb250YWluZXIuaWQsXHJcbiAgICAgIHRvQ29sdW1uSWQ6IGV2ZW50LmNvbnRhaW5lci5pZFxyXG4gICAgfSk7XHJcbiAgICBcclxuICAgIHRoaXMub25TZWxlY3RlZENhcmQuZW1pdChtb3ZlZENhcmQpO1xyXG4gIH1cclxuXHJcbiAgb25BY3Rpb25DbGljayhhY3Rpb25Db2RlOiBzdHJpbmcsIGNhcmQ6IEthbmJhbkNhcmQpIHtcclxuICAgIHRoaXMub25BY3Rpb25DbGlja2VkLmVtaXQoeyBhY3Rpb246IGFjdGlvbkNvZGUsIGNhcmQgfSk7XHJcbiAgICBcclxuICAgIHRoaXMub25TZWxlY3RlZENhcmQuZW1pdChjYXJkKTtcclxuICB9XHJcblxyXG4gIG9wZW5DYXJkTWVudShldmVudDogTW91c2VFdmVudCwgaXRlbTogYW55KSB7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuXHJcbiAgICB0aGlzLmN1cnJlbnRDYXJkID0gaXRlbTtcclxuICAgIHRoaXMuY3VycmVudE1lbnVPcHRpb25zID0gdGhpcy5nZXRBY3Rpb25zRm9yQ2FyZChpdGVtKTtcclxuXHJcbiAgICB0aGlzLm9uU2VsZWN0ZWRDYXJkLmVtaXQoaXRlbSk7XHJcbiAgICBcclxuICAgIHRoaXMuc2hhcmVkTWVudSgpPy50b2dnbGUoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgb25TY3JvbGwoZXZlbnQ6IEV2ZW50LCBjb2x1bW5JZDogbnVtYmVyKSB7XHJcbiAgICBjb25zdCBlbGVtZW50ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgY29uc3QgdGhyZXNob2xkID0gNTA7XHJcbiAgICBjb25zdCBhdEJvdHRvbSA9IGVsZW1lbnQuc2Nyb2xsSGVpZ2h0IC0gZWxlbWVudC5zY3JvbGxUb3AgLSBlbGVtZW50LmNsaWVudEhlaWdodCA8IHRocmVzaG9sZDtcclxuICAgIFxyXG4gICAgaWYgKGF0Qm90dG9tKSB7XHJcbiAgICAgIHRoaXMub25Mb2FkTW9yZUNhcmRzLmVtaXQoeyBjb2x1bW5JZCB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldENvbHVtblRvdGFsSXRlbXMoY29sdW1uSWQ6IG51bWJlcik6IG51bWJlciB7XHJcbiAgICBjb25zdCBjb25maWcgPSB0aGlzLmNvbHVtbkNvbmZpZ3MoKS5maW5kKGMgPT4gYy5pZCA9PT0gY29sdW1uSWQpO1xyXG4gICAgcmV0dXJuIGNvbmZpZz8uY29udGFkb3IgfHwgMDtcclxuICB9XHJcblxyXG4gIGdldEFjdGlvbnNGb3JDYXJkKGNhcmQ6IEthbmJhbkNhcmQpOiBNZW51SXRlbVtdIHtcclxuICAgIHJldHVybiB0aGlzLmFjdGlvbnMoKS5tYXAoYWN0aW9uID0+ICh7XHJcbiAgICAgIC4uLmFjdGlvbixcclxuICAgICAgY29tbWFuZDogKGV2ZW50PzogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKGFjdGlvbi5jb21tYW5kKSB7XHJcbiAgICAgICAgICBhY3Rpb24uY29tbWFuZChldmVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIGlmIChhY3Rpb24ubGFiZWwgJiYgdGhpcy5jdXJyZW50Q2FyZCkge1xyXG4gICAgICAgICAgdGhpcy5vbkFjdGlvbkNsaWNrKGFjdGlvbi5sYWJlbCwgdGhpcy5jdXJyZW50Q2FyZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KSk7XHJcbiAgfVxyXG5cclxuICBnZXRDb2x1bW5GbGV4KCk6IHN0cmluZyB7XHJcbiAgICBjb25zdCB0b3RhbENvbHVtbnMgPSB0aGlzLmNvbHVtbkNvbmZpZ3MoKS5sZW5ndGg7XHJcbiAgICBpZiAodG90YWxDb2x1bW5zID09PSAwKSByZXR1cm4gJzEgMSAyODBweCc7XHJcbiAgICBcclxuICAgIHJldHVybiBgMSAxIGNhbGMoKDEwMCUgLSAkeyh0b3RhbENvbHVtbnMgLSAxKSAqIDE2fXB4KSAvICR7dG90YWxDb2x1bW5zfSlgO1xyXG4gIH1cclxuXHJcbiAgZ2V0U3RhdHVzVG9vbHRpcChzdGF0dXM6IGFueVtdKTogc3RyaW5nIHtcclxuICAgIGlmICghc3RhdHVzIHx8IHN0YXR1cy5sZW5ndGggPT09IDApIHJldHVybiAnJztcclxuICAgIHJldHVybiBzdGF0dXMubWFwKHMgPT4gcy5sYWJlbCkuam9pbignLCAnKTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJmbGV4IHctZnVsbCBoLWZ1bGxcIj5cclxuICA8ZGl2IGNsYXNzPVwiYm9hcmQtd3JhcHBlciBmbGV4LWNvbHVtbiBsZzpmbGV4LXJvd1wiIGNka0Ryb3BMaXN0R3JvdXA+XHJcbiAgICBcclxuICAgIEBmb3IoY29uZmlnIG9mIGNvbHVtbkNvbmZpZ3MoKTsgdHJhY2sgJGluZGV4KSB7XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiYm9hcmQtY29sdW1uXCIgW3N0eWxlLmZsZXhdPVwiZ2V0Q29sdW1uRmxleCgpXCI+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbi1oZWFkZXJcIiBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cImNvbmZpZy5jb3JUaXR1bG9cIj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1iYXNlIGZvbnQtc2VtaWJvbGRcIj57eyBjb25maWcubm9tZSB9fTwvc3Bhbj5cclxuICAgICAgICAgIEBpZih0aGlzLnNob3dDb2x1bW5zQ291bnRlcigpKSB7XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY29sdW1uLWNvdW50LWJhZGdlIHB4LTIgcHktMVwiIFtzdHlsZS5jb2xvcl09XCJjb25maWcuY29yVGl0dWxvXCI+e3sgY29uZmlnLmNvbnRhZG9yIHwgbnVtYmVyOicyLjAnIH19PC9zcGFuPlxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IFxyXG4gICAgICAgICAgY2xhc3M9XCJjb2x1bW4tY29udGVudFwiXHJcbiAgICAgICAgICBjZGtEcm9wTGlzdFxyXG4gICAgICAgICAgW2lkXT1cImNvbmZpZy5pZC50b1N0cmluZygpXCJcclxuICAgICAgICAgIFtjZGtEcm9wTGlzdERhdGFdPVwiZ2V0Q29sdW1uTGlzdCgpKGNvbmZpZy5pZClcIlxyXG4gICAgICAgICAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJkcm9wKCRldmVudClcIlxyXG4gICAgICAgICAgKHNjcm9sbCk9XCJvblNjcm9sbCgkZXZlbnQsIGNvbmZpZy5pZClcIj5cclxuXHJcblxyXG4gICAgICAgICAgQGZvcihpdGVtIG9mIGdldENvbHVtbkxpc3QoKShjb25maWcuaWQpOyB0cmFjayAkaW5kZXgpIHtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJrYW5iYW4tY2FyZFwiIGNka0RyYWcgW2Nka0RyYWdEaXNhYmxlZF09XCIhZW5hYmxlRHJhZygpXCI+XHJcblxyXG4gICAgICAgICAgICAgIEBpZihhY3Rpb25zKCkubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIGNhcmQtbWVudS1idG4gdGV4dC14bCB0ZXh0LWJsYWNrLWFscGhhLTUwIGhvdmVyOnN1cmZhY2UtMjAwIGJvcmRlci1yb3VuZC1sZ1wiIChjbGljayk9XCJvcGVuQ2FyZE1lbnUoJGV2ZW50LCBpdGVtKVwiPlxyXG4gICAgICAgICAgICAgICAgICBtb3JlX3ZlcnRcclxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgXHJcblxyXG4gICAgICAgICAgICAgIEBpZiAoaXRlbS5zdGF0dXMgJiYgaXRlbS5zdGF0dXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIG10LTEgbXItMyBnYXAtMiBvdmVyZmxvdy1oaWRkZW5cIiBcclxuICAgICAgICAgICAgICAgICAgICAgW3BUb29sdGlwXT1cImdldFN0YXR1c1Rvb2x0aXAoaXRlbS5zdGF0dXMpXCIgXHJcbiAgICAgICAgICAgICAgICAgICAgIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiPlxyXG4gICAgICAgICAgICAgICAgICBAZm9yKHN0YXR1c0l0ZW0gb2YgaXRlbS5zdGF0dXM7IHRyYWNrICRpbmRleCkge1xyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3RhdHVzLXRhZyBmb250LXNlbWlib2xkIHRleHQteHMgYm9yZGVyLXJvdW5kLTN4bCBweS0xIHB4LTJcIiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cInN0YXR1c0l0ZW0uc3RhdHVzQ29sb3JcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJzdGF0dXNJdGVtLnN0YXR1c0xhYmVsQ29sb3JcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIHt7IHN0YXR1c0l0ZW0ubGFiZWwgfX1cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBvdmVyZmxvdy1oaWRkZW4gbWwtMVwiPlxyXG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJwLTAgbS0wIHRleHQtc20gdGV4dC1ibGFjay1hbHBoYS03MCBmb250LXNlbWlib2xkIG1iLTIgcHItNCB3aGl0ZS1zcGFjZS1ub3dyYXBcIiBwVG9vbHRpcD1cInt7aXRlbS50aXR1bG99fVwiIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiPlxyXG4gICAgICAgICAgICAgICAgICB7eyBpdGVtLnRpdHVsbyB9fVxyXG4gICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNhcmRUZW1wbGF0ZSgpXCIgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtIH1cIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgPGRpdiAqY2RrRHJhZ1BsYWNlaG9sZGVyIGNsYXNzPVwiY3VzdG9tLXBsYWNlaG9sZGVyXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbi1mb290ZXIgdGV4dC14cyB0ZXh0LWJsYWNrLWFscGhhLTgwXCI+XHJcbiAgICAgICAgICBWZXIge3sgZ2V0Q29sdW1uTGlzdCgpKGNvbmZpZy5pZCkubGVuZ3RoIH19IGRlIHt7IGNvbmZpZy5jb250YWRvciB9fVxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgfVxyXG5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48cC1tZW51ICNzaGFyZWRNZW51IFttb2RlbF09XCJjdXJyZW50TWVudU9wdGlvbnNcIiBbcG9wdXBdPVwidHJ1ZVwiIGFwcGVuZFRvPVwiYm9keVwiPjwvcC1tZW51PiJdfQ==
@@ -14412,6 +14412,7 @@ class KvKanbanComponent {
14412
14412
  constructor() {
14413
14413
  this.sharedMenu = viewChild('sharedMenu');
14414
14414
  this.currentMenuOptions = [];
14415
+ this.currentCard = null;
14415
14416
  this.actions = input([]);
14416
14417
  this.columnConfigs = input([]);
14417
14418
  this.columnLists = input([]);
@@ -14448,7 +14449,9 @@ class KvKanbanComponent {
14448
14449
  }
14449
14450
  openCardMenu(event, item) {
14450
14451
  event.stopPropagation();
14452
+ this.currentCard = item;
14451
14453
  this.currentMenuOptions = this.getActionsForCard(item);
14454
+ this.onSelectedCard.emit(item);
14452
14455
  this.sharedMenu()?.toggle(event);
14453
14456
  }
14454
14457
  onScroll(event, columnId) {
@@ -14470,8 +14473,8 @@ class KvKanbanComponent {
14470
14473
  if (action.command) {
14471
14474
  action.command(event);
14472
14475
  }
14473
- if (action.label) {
14474
- this.onActionClick(action.label, card);
14476
+ if (action.label && this.currentCard) {
14477
+ this.onActionClick(action.label, this.currentCard);
14475
14478
  }
14476
14479
  }
14477
14480
  }));
@@ -14501,11 +14504,11 @@ class KvCardsInstructionComponent {
14501
14504
  this.blackCard = input();
14502
14505
  }
14503
14506
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvCardsInstructionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14504
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: KvCardsInstructionComponent, isStandalone: true, selector: "kv-cards-instruction", inputs: { whiteCard: { classPropertyName: "whiteCard", publicName: "whiteCard", isSignal: true, isRequired: false, transformFunction: null }, blackCard: { classPropertyName: "blackCard", publicName: "blackCard", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"w-full h-full flex flex-column gap-2\">\r\n @if (whiteCard()) {\r\n <div\r\n class=\"bg-white border-1 border-gray-300 border-round-lg p-3 min-h-0 flex flex-column gap-2\"\r\n [style.height.%]=\"whiteCard()?.height\"\r\n >\r\n <div class=\"flex flex-row align-items-center gap-4\">\r\n @if(whiteCard()?.icon) {\r\n <span class=\"material-symbols-outlined\"> {{ whiteCard()?.icon }}</span>\r\n }\r\n <span class=\"font-semibold\">{{ whiteCard()?.title }}</span>\r\n </div>\r\n\r\n <div class=\"h-full max-h-full overflow-y-auto text-xs\">\r\n <ng-content select=\"[white-card-content]\"></ng-content>\r\n </div>\r\n </div>\r\n }\r\n\r\n @if (blackCard()) {\r\n <div\r\n class=\"bg-gray-900 text-white border-round-lg p-3 min-h-0 flex flex-column gap-4\"\r\n [style.height.%]=\"blackCard()?.height\"\r\n >\r\n <div class=\"flex flex-row align-items-center gap-2\">\r\n @if(blackCard()?.icon) {\r\n <span class=\"material-symbols-outlined\"> {{ blackCard()?.icon }}</span>\r\n }\r\n <span class=\"font-semibold\">{{ blackCard()?.title }}</span>\r\n </div>\r\n\r\n <div class=\"h-full max-h-full overflow-y-auto text-xs\">\r\n <ng-content select=\"[black-card-content]\"></ng-content>\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n", styles: [""] }); }
14507
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: KvCardsInstructionComponent, isStandalone: true, selector: "kv-cards-instruction", inputs: { whiteCard: { classPropertyName: "whiteCard", publicName: "whiteCard", isSignal: true, isRequired: false, transformFunction: null }, blackCard: { classPropertyName: "blackCard", publicName: "blackCard", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"w-full h-full flex flex-column gap-2\">\r\n @if (whiteCard()) {\r\n <div\r\n class=\"bg-white border-1 border-gray-300 border-round-lg p-3 min-h-0 flex flex-column gap-4\"\r\n [style.height.%]=\"whiteCard()?.height\"\r\n >\r\n <div class=\"flex flex-row align-items-center gap-2\">\r\n @if(whiteCard()?.icon) {\r\n <span class=\"material-symbols-outlined\"> {{ whiteCard()?.icon }}</span>\r\n }\r\n <span class=\"font-semibold\">{{ whiteCard()?.title }}</span>\r\n </div>\r\n\r\n <div class=\"h-full max-h-full overflow-y-auto text-xs\">\r\n <ng-content select=\"[white-card-content]\"></ng-content>\r\n </div>\r\n </div>\r\n }\r\n\r\n @if (blackCard()) {\r\n <div\r\n class=\"bg-gray-900 text-white border-round-lg p-3 min-h-0 flex flex-column gap-4\"\r\n [style.height.%]=\"blackCard()?.height\"\r\n >\r\n <div class=\"flex flex-row align-items-center gap-2\">\r\n @if(blackCard()?.icon) {\r\n <span class=\"material-symbols-outlined\"> {{ blackCard()?.icon }}</span>\r\n }\r\n <span class=\"font-semibold\">{{ blackCard()?.title }}</span>\r\n </div>\r\n\r\n <div class=\"h-full max-h-full overflow-y-auto text-xs\">\r\n <ng-content select=\"[black-card-content]\"></ng-content>\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n", styles: [""] }); }
14505
14508
  }
14506
14509
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvCardsInstructionComponent, decorators: [{
14507
14510
  type: Component,
14508
- args: [{ selector: 'kv-cards-instruction', standalone: true, imports: [], template: "<div class=\"w-full h-full flex flex-column gap-2\">\r\n @if (whiteCard()) {\r\n <div\r\n class=\"bg-white border-1 border-gray-300 border-round-lg p-3 min-h-0 flex flex-column gap-2\"\r\n [style.height.%]=\"whiteCard()?.height\"\r\n >\r\n <div class=\"flex flex-row align-items-center gap-4\">\r\n @if(whiteCard()?.icon) {\r\n <span class=\"material-symbols-outlined\"> {{ whiteCard()?.icon }}</span>\r\n }\r\n <span class=\"font-semibold\">{{ whiteCard()?.title }}</span>\r\n </div>\r\n\r\n <div class=\"h-full max-h-full overflow-y-auto text-xs\">\r\n <ng-content select=\"[white-card-content]\"></ng-content>\r\n </div>\r\n </div>\r\n }\r\n\r\n @if (blackCard()) {\r\n <div\r\n class=\"bg-gray-900 text-white border-round-lg p-3 min-h-0 flex flex-column gap-4\"\r\n [style.height.%]=\"blackCard()?.height\"\r\n >\r\n <div class=\"flex flex-row align-items-center gap-2\">\r\n @if(blackCard()?.icon) {\r\n <span class=\"material-symbols-outlined\"> {{ blackCard()?.icon }}</span>\r\n }\r\n <span class=\"font-semibold\">{{ blackCard()?.title }}</span>\r\n </div>\r\n\r\n <div class=\"h-full max-h-full overflow-y-auto text-xs\">\r\n <ng-content select=\"[black-card-content]\"></ng-content>\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n" }]
14511
+ args: [{ selector: 'kv-cards-instruction', standalone: true, imports: [], template: "<div class=\"w-full h-full flex flex-column gap-2\">\r\n @if (whiteCard()) {\r\n <div\r\n class=\"bg-white border-1 border-gray-300 border-round-lg p-3 min-h-0 flex flex-column gap-4\"\r\n [style.height.%]=\"whiteCard()?.height\"\r\n >\r\n <div class=\"flex flex-row align-items-center gap-2\">\r\n @if(whiteCard()?.icon) {\r\n <span class=\"material-symbols-outlined\"> {{ whiteCard()?.icon }}</span>\r\n }\r\n <span class=\"font-semibold\">{{ whiteCard()?.title }}</span>\r\n </div>\r\n\r\n <div class=\"h-full max-h-full overflow-y-auto text-xs\">\r\n <ng-content select=\"[white-card-content]\"></ng-content>\r\n </div>\r\n </div>\r\n }\r\n\r\n @if (blackCard()) {\r\n <div\r\n class=\"bg-gray-900 text-white border-round-lg p-3 min-h-0 flex flex-column gap-4\"\r\n [style.height.%]=\"blackCard()?.height\"\r\n >\r\n <div class=\"flex flex-row align-items-center gap-2\">\r\n @if(blackCard()?.icon) {\r\n <span class=\"material-symbols-outlined\"> {{ blackCard()?.icon }}</span>\r\n }\r\n <span class=\"font-semibold\">{{ blackCard()?.title }}</span>\r\n </div>\r\n\r\n <div class=\"h-full max-h-full overflow-y-auto text-xs\">\r\n <ng-content select=\"[black-card-content]\"></ng-content>\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n" }]
14509
14512
  }] });
14510
14513
 
14511
14514
  class KvInstructionPageComponent {