@rivet-health/design-system 40.24.1 → 40.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -40,10 +40,10 @@ export class CardActionsComponent {
40
40
  }
41
41
  }
42
42
  CardActionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CardActionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
43
- CardActionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CardActionsComponent, selector: "riv-card-actions", inputs: { align: "align", variant: "variant", padding: "padding", orientation: "orientation", divider: "divider" }, host: { properties: { "class": "this.classes" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{position:relative;z-index:var(--card-raised-z-index);display:flex;align-items:center;gap:var(--size-small);min-width:0}:host.horizontal{flex-direction:row}:host.vertical{flex-direction:column;align-items:stretch}:host.align-start{justify-content:flex-start}:host.align-center{justify-content:center}:host.align-end{justify-content:flex-end}:host.align-between{justify-content:space-between}:host.align-stretch{display:grid}:host.align-stretch.horizontal{grid-auto-flow:column;grid-auto-columns:1fr}:host.align-stretch.vertical{grid-auto-flow:row;grid-auto-rows:1fr}:host.filled{background-color:var(--surface-light-1)}:host.filled,:host.divider{border-top:var(--border-width) solid var(--border-light)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
43
+ CardActionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CardActionsComponent, selector: "riv-card-actions", inputs: { align: "align", variant: "variant", padding: "padding", orientation: "orientation", divider: "divider" }, host: { properties: { "class": "this.classes" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{position:relative;z-index:var(--card-raised-z-index);display:flex;align-items:center;gap:var(--size-small);min-width:0}:host.horizontal{flex-direction:row}:host.vertical{flex-direction:column;align-items:stretch}:host.align-start{justify-content:flex-start}:host.align-center{justify-content:center}:host.align-end{justify-content:flex-end}:host.align-between{justify-content:space-between}:host.align-stretch{display:grid}:host.align-stretch.horizontal{grid-auto-flow:column;grid-auto-columns:1fr}:host.align-stretch.vertical{grid-auto-flow:row;grid-auto-rows:1fr}:host.filled{background-color:var(--surface-light-1)}:host.filled,:host.divider{border-top:var(--border-width) solid var(--border-light)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.padding-xlarge{padding:var(--size-xlarge)}:host.padding-xxlarge{padding:var(--size-xxlarge)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
44
44
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CardActionsComponent, decorators: [{
45
45
  type: Component,
46
- args: [{ selector: 'riv-card-actions', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [":host{position:relative;z-index:var(--card-raised-z-index);display:flex;align-items:center;gap:var(--size-small);min-width:0}:host.horizontal{flex-direction:row}:host.vertical{flex-direction:column;align-items:stretch}:host.align-start{justify-content:flex-start}:host.align-center{justify-content:center}:host.align-end{justify-content:flex-end}:host.align-between{justify-content:space-between}:host.align-stretch{display:grid}:host.align-stretch.horizontal{grid-auto-flow:column;grid-auto-columns:1fr}:host.align-stretch.vertical{grid-auto-flow:row;grid-auto-rows:1fr}:host.filled{background-color:var(--surface-light-1)}:host.filled,:host.divider{border-top:var(--border-width) solid var(--border-light)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}\n"] }]
46
+ args: [{ selector: 'riv-card-actions', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [":host{position:relative;z-index:var(--card-raised-z-index);display:flex;align-items:center;gap:var(--size-small);min-width:0}:host.horizontal{flex-direction:row}:host.vertical{flex-direction:column;align-items:stretch}:host.align-start{justify-content:flex-start}:host.align-center{justify-content:center}:host.align-end{justify-content:flex-end}:host.align-between{justify-content:space-between}:host.align-stretch{display:grid}:host.align-stretch.horizontal{grid-auto-flow:column;grid-auto-columns:1fr}:host.align-stretch.vertical{grid-auto-flow:row;grid-auto-rows:1fr}:host.filled{background-color:var(--surface-light-1)}:host.filled,:host.divider{border-top:var(--border-width) solid var(--border-light)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.padding-xlarge{padding:var(--size-xlarge)}:host.padding-xxlarge{padding:var(--size-xxlarge)}\n"] }]
47
47
  }], propDecorators: { align: [{
48
48
  type: Input
49
49
  }], variant: [{
@@ -45,10 +45,10 @@ export class CardContentComponent {
45
45
  }
46
46
  }
47
47
  CardContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CardContentComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.CardComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component });
48
- CardContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CardContentComponent, selector: "riv-card-content", inputs: { padding: "padding", grow: "grow", divider: "divider" }, host: { properties: { "class": "this.classes" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:block;min-width:0;font:var(--body-medium)}:host.grow{flex-grow:1}:host.divider{border-bottom:var(--border-width) solid var(--border-light)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
48
+ CardContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CardContentComponent, selector: "riv-card-content", inputs: { padding: "padding", grow: "grow", divider: "divider" }, host: { properties: { "class": "this.classes" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:block;min-width:0;font:var(--body-medium)}:host.grow{flex-grow:1}:host.divider{border-bottom:var(--border-width) solid var(--border-light)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.padding-xlarge{padding:var(--size-xlarge)}:host.padding-xxlarge{padding:var(--size-xxlarge)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
49
49
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CardContentComponent, decorators: [{
50
50
  type: Component,
51
- args: [{ selector: 'riv-card-content', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [":host{display:block;min-width:0;font:var(--body-medium)}:host.grow{flex-grow:1}:host.divider{border-bottom:var(--border-width) solid var(--border-light)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}\n"] }]
51
+ args: [{ selector: 'riv-card-content', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [":host{display:block;min-width:0;font:var(--body-medium)}:host.grow{flex-grow:1}:host.divider{border-bottom:var(--border-width) solid var(--border-light)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.padding-xlarge{padding:var(--size-xlarge)}:host.padding-xxlarge{padding:var(--size-xxlarge)}\n"] }]
52
52
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.CardComponent, decorators: [{
53
53
  type: Optional
54
54
  }] }]; }, propDecorators: { padding: [{
@@ -156,10 +156,10 @@ export class CardHeaderComponent {
156
156
  }
157
157
  }
158
158
  CardHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CardHeaderComponent, deps: [{ token: i1.CardComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component });
159
- CardHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CardHeaderComponent, selector: "riv-card-header", inputs: { heading: "heading", subheading: "subheading", headingLevel: "headingLevel", variant: "variant", padding: "padding", divider: "divider", align: "align", clamp: "clamp", expandable: "expandable", expanded: "expanded", togglePosition: "togglePosition", disabled: "disabled" }, outputs: { expandedChange: "expandedChange" }, host: { properties: { "class": "this.classes" } }, usesOnChanges: true, ngImport: i0, template: "<button\n *ngIf=\"expandable\"\n type=\"button\"\n class=\"expand-toggle\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled ? 'true' : null\"\n [attr.aria-expanded]=\"expanded\"\n [attr.aria-controls]=\"regionId\"\n [attr.aria-labelledby]=\"titleId\"\n (click)=\"toggle()\"\n></button>\n<ng-container\n *ngIf=\"expandable && togglePosition === 'leading'\"\n [ngTemplateOutlet]=\"chevron\"\n></ng-container>\n<div class=\"leading\"><ng-content select=\"[leading]\"></ng-content></div>\n<div class=\"main\">\n <div class=\"title-row\" [id]=\"titleId\">\n <div *ngIf=\"heading?.trim()\" class=\"heading\" [ngStyle]=\"clampStyle\">\n <ng-container [ngSwitch]=\"headingLevel\">\n <h1 *ngSwitchCase=\"1\">{{ heading }}</h1>\n <h2 *ngSwitchCase=\"2\">{{ heading }}</h2>\n <h3 *ngSwitchCase=\"3\">{{ heading }}</h3>\n <h4 *ngSwitchCase=\"4\">{{ heading }}</h4>\n <h5 *ngSwitchCase=\"5\">{{ heading }}</h5>\n <h6 *ngSwitchCase=\"6\">{{ heading }}</h6>\n </ng-container>\n </div>\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"subheading?.trim()\" class=\"subheading\">{{ subheading }}</div>\n</div>\n<ng-container\n *ngIf=\"expandable && togglePosition === 'trailing'\"\n [ngTemplateOutlet]=\"chevron\"\n></ng-container>\n<div class=\"actions\"><ng-content select=\"[actions]\"></ng-content></div>\n\n<ng-template #chevron>\n <riv-icon\n class=\"expand-chevron\"\n [class.expanded]=\"expanded\"\n [name]=\"'ChevronDown'\"\n [size]=\"20\"\n ></riv-icon>\n</ng-template>\n", styles: [":host{display:flex;gap:var(--size-medium);min-width:0}:host.expandable{position:relative}:host.align-start{align-items:flex-start}:host.align-center{align-items:center}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.filled{background-color:var(--surface-light-1)}:host.filled,:host.divider{border-bottom:var(--border-width) solid var(--border-light)}.main{flex-grow:1;min-width:0}.title-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--size-xsmall);min-width:0;font:var(--card-heading-font, var(--title-04));color:var(--card-heading-color, var(--type-light-high-contrast))}:host.filled .title-row{font:var(--card-heading-font, var(--title-02))}.leading{flex-shrink:0}.actions{position:relative;z-index:var(--card-raised-z-index);display:flex;flex-shrink:0;align-items:center;gap:var(--size-small)}.expand-toggle{position:absolute;inset:0;z-index:var(--card-click-target-z-index);padding:0;border:none;background:none;cursor:pointer;transition:background-color var(--short-transition)}.expand-toggle:not(:disabled):hover{background-color:var(--black-20)}.expand-toggle:disabled{cursor:default}.expand-toggle:focus-visible{outline:var(--border-width-large) solid var(--type-light-link);outline-offset:calc(-1 * var(--border-width-large))}.expand-chevron{flex-shrink:0;transition:transform var(--medium-transition)}.expand-chevron.expanded{transform:rotate(-180deg)}.leading:not(:has(*)),.actions:not(:has(*)){display:none}.heading{min-width:0}.heading>*{display:inline;margin:0;font:inherit;color:inherit}.subheading{font:var(--body-small);color:var(--type-light-low-contrast)}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i3.IconComponent, selector: "riv-icon", inputs: ["name", "fillColor", "size", "customSize", "strokeWidth"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
159
+ CardHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CardHeaderComponent, selector: "riv-card-header", inputs: { heading: "heading", subheading: "subheading", headingLevel: "headingLevel", variant: "variant", padding: "padding", divider: "divider", align: "align", clamp: "clamp", expandable: "expandable", expanded: "expanded", togglePosition: "togglePosition", disabled: "disabled" }, outputs: { expandedChange: "expandedChange" }, host: { properties: { "class": "this.classes" } }, usesOnChanges: true, ngImport: i0, template: "<button\n *ngIf=\"expandable\"\n type=\"button\"\n class=\"expand-toggle\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled ? 'true' : null\"\n [attr.aria-expanded]=\"expanded\"\n [attr.aria-controls]=\"regionId\"\n [attr.aria-labelledby]=\"titleId\"\n (click)=\"toggle()\"\n></button>\n<ng-container\n *ngIf=\"expandable && togglePosition === 'leading'\"\n [ngTemplateOutlet]=\"chevron\"\n></ng-container>\n<div class=\"leading\"><ng-content select=\"[leading]\"></ng-content></div>\n<div class=\"main\">\n <div class=\"title-row\" [id]=\"titleId\">\n <div *ngIf=\"heading?.trim()\" class=\"heading\" [ngStyle]=\"clampStyle\">\n <ng-container [ngSwitch]=\"headingLevel\">\n <h1 *ngSwitchCase=\"1\">{{ heading }}</h1>\n <h2 *ngSwitchCase=\"2\">{{ heading }}</h2>\n <h3 *ngSwitchCase=\"3\">{{ heading }}</h3>\n <h4 *ngSwitchCase=\"4\">{{ heading }}</h4>\n <h5 *ngSwitchCase=\"5\">{{ heading }}</h5>\n <h6 *ngSwitchCase=\"6\">{{ heading }}</h6>\n </ng-container>\n </div>\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"subheading?.trim()\" class=\"subheading\">{{ subheading }}</div>\n</div>\n<ng-container\n *ngIf=\"expandable && togglePosition === 'trailing'\"\n [ngTemplateOutlet]=\"chevron\"\n></ng-container>\n<div class=\"actions\"><ng-content select=\"[actions]\"></ng-content></div>\n\n<ng-template #chevron>\n <riv-icon\n class=\"expand-chevron\"\n [class.expanded]=\"expanded\"\n [name]=\"'ChevronDown'\"\n [size]=\"20\"\n ></riv-icon>\n</ng-template>\n", styles: [":host{display:flex;gap:var(--size-medium);min-width:0}:host.expandable{position:relative}:host.align-start{align-items:flex-start}:host.align-center{align-items:center}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.padding-xlarge{padding:var(--size-xlarge)}:host.padding-xxlarge{padding:var(--size-xxlarge)}:host.filled{background-color:var(--surface-light-1)}:host.filled,:host.divider{border-bottom:var(--border-width) solid var(--border-light)}.main{flex-grow:1;min-width:0}.title-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--size-xsmall);min-width:0;font:var(--card-heading-font, var(--title-04));color:var(--card-heading-color, var(--type-light-high-contrast))}:host.filled .title-row{font:var(--card-heading-font, var(--title-02))}.leading{flex-shrink:0}.actions{position:relative;z-index:var(--card-raised-z-index);display:flex;flex-shrink:0;align-items:center;gap:var(--size-small)}.expand-toggle{position:absolute;inset:0;z-index:var(--card-click-target-z-index);padding:0;border:none;background:none;cursor:pointer;transition:background-color var(--short-transition)}.expand-toggle:not(:disabled):hover{background-color:var(--black-20)}.expand-toggle:disabled{cursor:default}.expand-toggle:focus-visible{outline:var(--border-width-large) solid var(--type-light-link);outline-offset:calc(-1 * var(--border-width-large))}.expand-chevron{flex-shrink:0;transition:transform var(--medium-transition)}.expand-chevron.expanded{transform:rotate(-180deg)}.leading:not(:has(*)),.actions:not(:has(*)){display:none}.heading{min-width:0}.heading>*{display:inline;margin:0;font:inherit;color:inherit}.subheading{font:var(--body-small);color:var(--type-light-low-contrast)}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i3.IconComponent, selector: "riv-icon", inputs: ["name", "fillColor", "size", "customSize", "strokeWidth"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
160
160
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CardHeaderComponent, decorators: [{
161
161
  type: Component,
162
- args: [{ selector: 'riv-card-header', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n *ngIf=\"expandable\"\n type=\"button\"\n class=\"expand-toggle\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled ? 'true' : null\"\n [attr.aria-expanded]=\"expanded\"\n [attr.aria-controls]=\"regionId\"\n [attr.aria-labelledby]=\"titleId\"\n (click)=\"toggle()\"\n></button>\n<ng-container\n *ngIf=\"expandable && togglePosition === 'leading'\"\n [ngTemplateOutlet]=\"chevron\"\n></ng-container>\n<div class=\"leading\"><ng-content select=\"[leading]\"></ng-content></div>\n<div class=\"main\">\n <div class=\"title-row\" [id]=\"titleId\">\n <div *ngIf=\"heading?.trim()\" class=\"heading\" [ngStyle]=\"clampStyle\">\n <ng-container [ngSwitch]=\"headingLevel\">\n <h1 *ngSwitchCase=\"1\">{{ heading }}</h1>\n <h2 *ngSwitchCase=\"2\">{{ heading }}</h2>\n <h3 *ngSwitchCase=\"3\">{{ heading }}</h3>\n <h4 *ngSwitchCase=\"4\">{{ heading }}</h4>\n <h5 *ngSwitchCase=\"5\">{{ heading }}</h5>\n <h6 *ngSwitchCase=\"6\">{{ heading }}</h6>\n </ng-container>\n </div>\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"subheading?.trim()\" class=\"subheading\">{{ subheading }}</div>\n</div>\n<ng-container\n *ngIf=\"expandable && togglePosition === 'trailing'\"\n [ngTemplateOutlet]=\"chevron\"\n></ng-container>\n<div class=\"actions\"><ng-content select=\"[actions]\"></ng-content></div>\n\n<ng-template #chevron>\n <riv-icon\n class=\"expand-chevron\"\n [class.expanded]=\"expanded\"\n [name]=\"'ChevronDown'\"\n [size]=\"20\"\n ></riv-icon>\n</ng-template>\n", styles: [":host{display:flex;gap:var(--size-medium);min-width:0}:host.expandable{position:relative}:host.align-start{align-items:flex-start}:host.align-center{align-items:center}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.filled{background-color:var(--surface-light-1)}:host.filled,:host.divider{border-bottom:var(--border-width) solid var(--border-light)}.main{flex-grow:1;min-width:0}.title-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--size-xsmall);min-width:0;font:var(--card-heading-font, var(--title-04));color:var(--card-heading-color, var(--type-light-high-contrast))}:host.filled .title-row{font:var(--card-heading-font, var(--title-02))}.leading{flex-shrink:0}.actions{position:relative;z-index:var(--card-raised-z-index);display:flex;flex-shrink:0;align-items:center;gap:var(--size-small)}.expand-toggle{position:absolute;inset:0;z-index:var(--card-click-target-z-index);padding:0;border:none;background:none;cursor:pointer;transition:background-color var(--short-transition)}.expand-toggle:not(:disabled):hover{background-color:var(--black-20)}.expand-toggle:disabled{cursor:default}.expand-toggle:focus-visible{outline:var(--border-width-large) solid var(--type-light-link);outline-offset:calc(-1 * var(--border-width-large))}.expand-chevron{flex-shrink:0;transition:transform var(--medium-transition)}.expand-chevron.expanded{transform:rotate(-180deg)}.leading:not(:has(*)),.actions:not(:has(*)){display:none}.heading{min-width:0}.heading>*{display:inline;margin:0;font:inherit;color:inherit}.subheading{font:var(--body-small);color:var(--type-light-low-contrast)}\n"] }]
162
+ args: [{ selector: 'riv-card-header', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n *ngIf=\"expandable\"\n type=\"button\"\n class=\"expand-toggle\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled ? 'true' : null\"\n [attr.aria-expanded]=\"expanded\"\n [attr.aria-controls]=\"regionId\"\n [attr.aria-labelledby]=\"titleId\"\n (click)=\"toggle()\"\n></button>\n<ng-container\n *ngIf=\"expandable && togglePosition === 'leading'\"\n [ngTemplateOutlet]=\"chevron\"\n></ng-container>\n<div class=\"leading\"><ng-content select=\"[leading]\"></ng-content></div>\n<div class=\"main\">\n <div class=\"title-row\" [id]=\"titleId\">\n <div *ngIf=\"heading?.trim()\" class=\"heading\" [ngStyle]=\"clampStyle\">\n <ng-container [ngSwitch]=\"headingLevel\">\n <h1 *ngSwitchCase=\"1\">{{ heading }}</h1>\n <h2 *ngSwitchCase=\"2\">{{ heading }}</h2>\n <h3 *ngSwitchCase=\"3\">{{ heading }}</h3>\n <h4 *ngSwitchCase=\"4\">{{ heading }}</h4>\n <h5 *ngSwitchCase=\"5\">{{ heading }}</h5>\n <h6 *ngSwitchCase=\"6\">{{ heading }}</h6>\n </ng-container>\n </div>\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"subheading?.trim()\" class=\"subheading\">{{ subheading }}</div>\n</div>\n<ng-container\n *ngIf=\"expandable && togglePosition === 'trailing'\"\n [ngTemplateOutlet]=\"chevron\"\n></ng-container>\n<div class=\"actions\"><ng-content select=\"[actions]\"></ng-content></div>\n\n<ng-template #chevron>\n <riv-icon\n class=\"expand-chevron\"\n [class.expanded]=\"expanded\"\n [name]=\"'ChevronDown'\"\n [size]=\"20\"\n ></riv-icon>\n</ng-template>\n", styles: [":host{display:flex;gap:var(--size-medium);min-width:0}:host.expandable{position:relative}:host.align-start{align-items:flex-start}:host.align-center{align-items:center}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.padding-xlarge{padding:var(--size-xlarge)}:host.padding-xxlarge{padding:var(--size-xxlarge)}:host.filled{background-color:var(--surface-light-1)}:host.filled,:host.divider{border-bottom:var(--border-width) solid var(--border-light)}.main{flex-grow:1;min-width:0}.title-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--size-xsmall);min-width:0;font:var(--card-heading-font, var(--title-04));color:var(--card-heading-color, var(--type-light-high-contrast))}:host.filled .title-row{font:var(--card-heading-font, var(--title-02))}.leading{flex-shrink:0}.actions{position:relative;z-index:var(--card-raised-z-index);display:flex;flex-shrink:0;align-items:center;gap:var(--size-small)}.expand-toggle{position:absolute;inset:0;z-index:var(--card-click-target-z-index);padding:0;border:none;background:none;cursor:pointer;transition:background-color var(--short-transition)}.expand-toggle:not(:disabled):hover{background-color:var(--black-20)}.expand-toggle:disabled{cursor:default}.expand-toggle:focus-visible{outline:var(--border-width-large) solid var(--type-light-link);outline-offset:calc(-1 * var(--border-width-large))}.expand-chevron{flex-shrink:0;transition:transform var(--medium-transition)}.expand-chevron.expanded{transform:rotate(-180deg)}.leading:not(:has(*)),.actions:not(:has(*)){display:none}.heading{min-width:0}.heading>*{display:inline;margin:0;font:inherit;color:inherit}.subheading{font:var(--body-small);color:var(--type-light-low-contrast)}\n"] }]
163
163
  }], ctorParameters: function () { return [{ type: i1.CardComponent, decorators: [{
164
164
  type: Optional
165
165
  }] }]; }, propDecorators: { heading: [{
@@ -219,10 +219,10 @@ export class CardComponent {
219
219
  }
220
220
  }
221
221
  CardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CardComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
222
- CardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CardComponent, selector: "riv-card", inputs: { variant: "variant", surface: "surface", tone: "tone", orientation: "orientation", padding: "padding", clickable: "clickable", clickLabel: "clickLabel", selected: "selected", disabled: "disabled" }, outputs: { cardClick: "cardClick" }, host: { properties: { "attr.aria-current": "this.ariaCurrent", "class": "this.classes" } }, ngImport: i0, template: "<button\n *ngIf=\"clickable\"\n type=\"button\"\n class=\"click-target\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled ? 'true' : null\"\n [attr.aria-label]=\"clickLabel\"\n [attr.aria-labelledby]=\"labelledBy\"\n (click)=\"cardClick.emit($event)\"\n></button>\n<ng-content></ng-content>\n", styles: [":host{position:relative;display:flex;min-width:0;overflow:hidden;border-radius:var(--card-border-radius, var(--border-radius-medium));color:var(--type-light-high-contrast);font:var(--body-medium)}:host.vertical{flex-direction:column}:host.horizontal{flex-direction:row}:host.outlined{border:var(--border-width) solid var(--border-light)}:host.dashed{border:var(--border-width) dashed var(--border-light)}:host.elevated{box-shadow:var(--depth-1)}:host.surface-0{background-color:var(--surface-light-0)}:host.surface-1{background-color:var(--surface-light-1)}:host.surface-2{background-color:var(--surface-light-2)}:host.tone-danger{background-color:var(--surface-light-danger)}:host.tone-caution{background-color:var(--surface-light-caution)}:host.tone-warning{background-color:var(--surface-light-warning)}:host.tone-safety{background-color:var(--surface-light-safety)}:host.tone-selected{background-color:var(--surface-light-selected)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.clickable{transition:box-shadow var(--short-transition)}:host.clickable:not(.disabled):hover{box-shadow:var(--depth-1)}:host.elevated.clickable:not(.disabled):hover{box-shadow:var(--depth-2)}.click-target{position:absolute;inset:0;z-index:var(--card-click-target-z-index);padding:0;border:none;background:none;cursor:pointer;transition:background-color var(--short-transition)}.click-target:not(:disabled):hover{background-color:var(--black-20)}.click-target:disabled{cursor:default}.click-target:focus-visible{outline:var(--border-width-large) solid var(--type-light-link);outline-offset:calc(-1 * var(--border-width-large))}:host.selected{border:var(--border-width) solid var(--baloo-50);box-shadow:var(--depth-2)}:host.disabled{background-color:var(--surface-light-1)}:host.outlined.disabled,:host.dashed.disabled{border-color:var(--border-light)}@media print{:host{break-inside:avoid}}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
222
+ CardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CardComponent, selector: "riv-card", inputs: { variant: "variant", surface: "surface", tone: "tone", orientation: "orientation", padding: "padding", clickable: "clickable", clickLabel: "clickLabel", selected: "selected", disabled: "disabled" }, outputs: { cardClick: "cardClick" }, host: { properties: { "attr.aria-current": "this.ariaCurrent", "class": "this.classes" } }, ngImport: i0, template: "<button\n *ngIf=\"clickable\"\n type=\"button\"\n class=\"click-target\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled ? 'true' : null\"\n [attr.aria-label]=\"clickLabel\"\n [attr.aria-labelledby]=\"labelledBy\"\n (click)=\"cardClick.emit($event)\"\n></button>\n<ng-content></ng-content>\n", styles: [":host{position:relative;display:flex;min-width:0;overflow:hidden;border-radius:var(--card-border-radius, var(--border-radius-medium));color:var(--type-light-high-contrast);font:var(--body-medium)}:host.vertical{flex-direction:column}:host.horizontal{flex-direction:row}:host.outlined{border:var(--border-width) solid var(--border-light)}:host.dashed{border:var(--border-width) dashed var(--border-light)}:host.elevated{box-shadow:var(--depth-1)}:host.surface-0{background-color:var(--surface-light-0)}:host.surface-1{background-color:var(--surface-light-1)}:host.surface-2{background-color:var(--surface-light-2)}:host.tone-danger{background-color:var(--surface-light-danger)}:host.tone-caution{background-color:var(--surface-light-caution)}:host.tone-warning{background-color:var(--surface-light-warning)}:host.tone-safety{background-color:var(--surface-light-safety)}:host.tone-selected{background-color:var(--surface-light-selected)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.padding-xlarge{padding:var(--size-xlarge)}:host.padding-xxlarge{padding:var(--size-xxlarge)}:host.clickable{transition:box-shadow var(--short-transition)}:host.clickable:not(.disabled):hover{box-shadow:var(--depth-1)}:host.elevated.clickable:not(.disabled):hover{box-shadow:var(--depth-2)}.click-target{position:absolute;inset:0;z-index:var(--card-click-target-z-index);padding:0;border:none;background:none;cursor:pointer;transition:background-color var(--short-transition)}.click-target:not(:disabled):hover{background-color:var(--black-20)}.click-target:disabled{cursor:default}.click-target:focus-visible{outline:var(--border-width-large) solid var(--type-light-link);outline-offset:calc(-1 * var(--border-width-large))}:host.selected{border:var(--border-width) solid var(--baloo-50);box-shadow:var(--depth-2)}:host.disabled{background-color:var(--surface-light-1)}:host.outlined.disabled,:host.dashed.disabled{border-color:var(--border-light)}@media print{:host{break-inside:avoid}}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
223
223
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CardComponent, decorators: [{
224
224
  type: Component,
225
- args: [{ selector: 'riv-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n *ngIf=\"clickable\"\n type=\"button\"\n class=\"click-target\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled ? 'true' : null\"\n [attr.aria-label]=\"clickLabel\"\n [attr.aria-labelledby]=\"labelledBy\"\n (click)=\"cardClick.emit($event)\"\n></button>\n<ng-content></ng-content>\n", styles: [":host{position:relative;display:flex;min-width:0;overflow:hidden;border-radius:var(--card-border-radius, var(--border-radius-medium));color:var(--type-light-high-contrast);font:var(--body-medium)}:host.vertical{flex-direction:column}:host.horizontal{flex-direction:row}:host.outlined{border:var(--border-width) solid var(--border-light)}:host.dashed{border:var(--border-width) dashed var(--border-light)}:host.elevated{box-shadow:var(--depth-1)}:host.surface-0{background-color:var(--surface-light-0)}:host.surface-1{background-color:var(--surface-light-1)}:host.surface-2{background-color:var(--surface-light-2)}:host.tone-danger{background-color:var(--surface-light-danger)}:host.tone-caution{background-color:var(--surface-light-caution)}:host.tone-warning{background-color:var(--surface-light-warning)}:host.tone-safety{background-color:var(--surface-light-safety)}:host.tone-selected{background-color:var(--surface-light-selected)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.clickable{transition:box-shadow var(--short-transition)}:host.clickable:not(.disabled):hover{box-shadow:var(--depth-1)}:host.elevated.clickable:not(.disabled):hover{box-shadow:var(--depth-2)}.click-target{position:absolute;inset:0;z-index:var(--card-click-target-z-index);padding:0;border:none;background:none;cursor:pointer;transition:background-color var(--short-transition)}.click-target:not(:disabled):hover{background-color:var(--black-20)}.click-target:disabled{cursor:default}.click-target:focus-visible{outline:var(--border-width-large) solid var(--type-light-link);outline-offset:calc(-1 * var(--border-width-large))}:host.selected{border:var(--border-width) solid var(--baloo-50);box-shadow:var(--depth-2)}:host.disabled{background-color:var(--surface-light-1)}:host.outlined.disabled,:host.dashed.disabled{border-color:var(--border-light)}@media print{:host{break-inside:avoid}}\n"] }]
225
+ args: [{ selector: 'riv-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n *ngIf=\"clickable\"\n type=\"button\"\n class=\"click-target\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled ? 'true' : null\"\n [attr.aria-label]=\"clickLabel\"\n [attr.aria-labelledby]=\"labelledBy\"\n (click)=\"cardClick.emit($event)\"\n></button>\n<ng-content></ng-content>\n", styles: [":host{position:relative;display:flex;min-width:0;overflow:hidden;border-radius:var(--card-border-radius, var(--border-radius-medium));color:var(--type-light-high-contrast);font:var(--body-medium)}:host.vertical{flex-direction:column}:host.horizontal{flex-direction:row}:host.outlined{border:var(--border-width) solid var(--border-light)}:host.dashed{border:var(--border-width) dashed var(--border-light)}:host.elevated{box-shadow:var(--depth-1)}:host.surface-0{background-color:var(--surface-light-0)}:host.surface-1{background-color:var(--surface-light-1)}:host.surface-2{background-color:var(--surface-light-2)}:host.tone-danger{background-color:var(--surface-light-danger)}:host.tone-caution{background-color:var(--surface-light-caution)}:host.tone-warning{background-color:var(--surface-light-warning)}:host.tone-safety{background-color:var(--surface-light-safety)}:host.tone-selected{background-color:var(--surface-light-selected)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.padding-xlarge{padding:var(--size-xlarge)}:host.padding-xxlarge{padding:var(--size-xxlarge)}:host.clickable{transition:box-shadow var(--short-transition)}:host.clickable:not(.disabled):hover{box-shadow:var(--depth-1)}:host.elevated.clickable:not(.disabled):hover{box-shadow:var(--depth-2)}.click-target{position:absolute;inset:0;z-index:var(--card-click-target-z-index);padding:0;border:none;background:none;cursor:pointer;transition:background-color var(--short-transition)}.click-target:not(:disabled):hover{background-color:var(--black-20)}.click-target:disabled{cursor:default}.click-target:focus-visible{outline:var(--border-width-large) solid var(--type-light-link);outline-offset:calc(-1 * var(--border-width-large))}:host.selected{border:var(--border-width) solid var(--baloo-50);box-shadow:var(--depth-2)}:host.disabled{background-color:var(--surface-light-1)}:host.outlined.disabled,:host.dashed.disabled{border-color:var(--border-light)}@media print{:host{break-inside:avoid}}\n"] }]
226
226
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { variant: [{
227
227
  type: Input
228
228
  }], surface: [{
@@ -263,6 +263,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
263
263
  ];
264
264
  CardComponent.Orientations = ['vertical', 'horizontal'];
265
265
  /** Shared padding scale for the card and its sub-components. */
266
- CardComponent.Paddings = ['none', 'small', 'medium', 'large'];
266
+ CardComponent.Paddings = [
267
+ 'none',
268
+ 'small',
269
+ 'medium',
270
+ 'large',
271
+ 'xlarge',
272
+ 'xxlarge',
273
+ ];
267
274
  })(CardComponent || (CardComponent = {}));
268
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9yaXYvc3JjL2xpYi9sYXlvdXQvY2FyZC9jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Jpdi9zcmMvbGliL2xheW91dC9jYXJkL2NhcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBRVQsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBRUwsTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxRQUFRLENBQUM7OztBQUVsQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTJGRztBQU9ILE1BQU0sT0FBTyxhQUFhO0lBQ3hCLFlBQ21CLEVBQTJCLEVBQzNCLFFBQW1CLEVBQ25CLEdBQXNCO1FBRnRCLE9BQUUsR0FBRixFQUFFLENBQXlCO1FBQzNCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFHekMsa0RBQWtEO1FBRWxELFlBQU8sR0FBMEIsVUFBVSxDQUFDO1FBRTVDLDZFQUE2RTtRQUU3RSxZQUFPLEdBQTBCLEdBQUcsQ0FBQztRQUVyQyx3RUFBd0U7UUFFeEUsU0FBSSxHQUF1QixTQUFTLENBQUM7UUFFckMsaURBQWlEO1FBRWpELGdCQUFXLEdBQThCLFVBQVUsQ0FBQztRQUVwRDs7OztXQUlHO1FBRUgsWUFBTyxHQUEwQixNQUFNLENBQUM7UUFFeEM7OztXQUdHO1FBRUgsY0FBUyxHQUFZLEtBQUssQ0FBQztRQVUzQjs7OztXQUlHO1FBRUgsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUUxQjs7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QUMsR0FBRyxDQUFDLENBQUM7SUFDZixDQUFDOzsyR0FyS1UsYUFBYTsrRkFBYixhQUFhLGlZQ2hIMUIseVRBV0E7NEZEcUdhLGFBQWE7a0JBTnpCLFNBQVM7K0JBQ0UsVUFBVSxtQkFHSCx1QkFBdUIsQ0FBQyxNQUFNO3lKQVcvQyxPQUFPO3NCQUROLEtBQUs7Z0JBS04sT0FBTztzQkFETixLQUFLO2dCQUtOLElBQUk7c0JBREgsS0FBSztnQkFLTixXQUFXO3NCQURWLEtBQUs7Z0JBU04sT0FBTztzQkFETixLQUFLO2dCQVFOLFNBQVM7c0JBRFIsS0FBSztnQkFTTixVQUFVO3NCQURULEtBQUs7Z0JBU04sUUFBUTtzQkFEUCxLQUFLO2dCQVNOLFFBQVE7c0JBRFAsS0FBSztnQkFLTixTQUFTO3NCQURSLE1BQU07Z0JBbUZILFdBQVc7c0JBRGQsV0FBVzt1QkFBQyxtQkFBbUI7Z0JBTTVCLE9BQU87c0JBRFYsV0FBVzt1QkFBQyxPQUFPOztBQWtCdEIsV0FBaUIsYUFBYTtJQUNmLHNCQUFRLEdBQUcsQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQVUsQ0FBQztJQUcvRCxzQkFBUSxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQVUsQ0FBQztJQUdwQyxtQkFBSyxHQUFHO1FBQ25CLFNBQVM7UUFDVCxRQUFRO1FBQ1IsU0FBUztRQUNULFNBQVM7UUFDVCxRQUFRO1FBQ1IsVUFBVTtLQUNGLENBQUM7SUFHRSwwQkFBWSxHQUFHLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBVSxDQUFDO0lBR2hFLGdFQUFnRTtJQUNuRCxzQkFBUSxHQUFHLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFVLENBQUM7QUFFeEUsQ0FBQyxFQXZCZ0IsYUFBYSxLQUFiLGFBQWEsUUF1QjdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHVuaXF1ZUlkIH0gZnJvbSAnbG9kYXNoJztcblxuLyoqXG4gKiBTdXJmYWNlIGNvbnRhaW5lciB0aGF0IGdyb3VwcyByZWxhdGVkIGNvbnRlbnQgaW50byBhIHNpbmdsZSBzY2FubmFibGUgdW5pdC5cbiAqXG4gKiBBIGNhcmQgaXMgY29tcG9zZWQsIG5vdCBjb25maWd1cmVkOiBwcm9qZWN0IHRoZSBwYXJ0cyB5b3UgbmVlZCwgaW4gdGhlIG9yZGVyXG4gKiB5b3UgbmVlZCB0aGVtLiBFdmVyeSBwYXJ0IGlzIG9wdGlvbmFsLCBzbyBhIGJhcmUgYHJpdi1jYXJkYCBpcyBhIHZhbGlkXG4gKiBzdXJmYWNlIG9uIGl0cyBvd24uXG4gKlxuICogLSBgcml2LWNhcmQtbWVkaWFgIOKAlCBsZWFkaW5nIGltYWdlIG9yIHZpZGVvXG4gKiAtIGByaXYtY2FyZC1oZWFkZXJgIOKAlCBoZWFkaW5nLCBzdWJoZWFkaW5nLCBsZWFkaW5nIGFkb3JubWVudCwgYWN0aW9uc1xuICogLSBgcml2LWNhcmQtY29udGVudGAg4oCUIGJvZHlcbiAqIC0gYHJpdi1jYXJkLWFjdGlvbnNgIOKAlCB0cmFpbGluZyBjb250cm9sIHJvd1xuICpcbiAqIGBgYGh0bWxcbiAqIDxyaXYtY2FyZD5cbiAqICAgPHJpdi1jYXJkLWhlYWRlciBbaGVhZGluZ109XCJ3b3JrYm9vay5uYW1lXCIgW3N1YmhlYWRpbmddPVwicGF5ZXJOYW1lXCI+XG4gKiAgICAgPHJpdi1tZW51IGFjdGlvbnM+Li4uPC9yaXYtbWVudT5cbiAqICAgPC9yaXYtY2FyZC1oZWFkZXI+XG4gKiAgIDxyaXYtY2FyZC1jb250ZW50PlxuICogICAgIExhc3QgZWRpdDoge3sgd29ya2Jvb2subW9kaWZpZWQgfCByaXZEYXRlIH19XG4gKiAgIDwvcml2LWNhcmQtY29udGVudD5cbiAqIDwvcml2LWNhcmQ+XG4gKiBgYGBcbiAqXG4gKiAjIyBNYWtpbmcgdGhlIGNhcmQgYWN0aXZhdGVcbiAqXG4gKiBTZXQgYGNsaWNrYWJsZWAgYW5kIGhhbmRsZSBgY2FyZENsaWNrYCB0byBtYWtlIHRoZSB3aG9sZSBzdXJmYWNlIGFjdCBvbiBhXG4gKiBjbGljazpcbiAqXG4gKiBgYGBodG1sXG4gKiA8cml2LWNhcmQgW2NsaWNrYWJsZV09XCJ0cnVlXCIgKGNhcmRDbGljayk9XCJnb1RvV29ya2Jvb2soKVwiPlxuICogYGBgXG4gKlxuICogVGhlIGNhcmQgcmVuZGVycyBpdHMgb3duIGZ1bGwtc3VyZmFjZSBidXR0b24gZm9yIHRoaXMsIHNvIGFjdGl2YXRpb24gd29ya3NcbiAqIHdpdGggYSBwb2ludGVyLCB3aXRoIEVudGVyLCBhbmQgd2l0aCBTcGFjZSwgYW5kIHRoZSBmb2N1cyByaW5nIHRyYWNlcyB0aGVcbiAqIHdob2xlIGNhcmQuIENvbnRyb2xzIGluIGByaXYtY2FyZC1oZWFkZXJgJ3MgYFthY3Rpb25zXWAgc2xvdCBhbmQgaW5cbiAqIGByaXYtY2FyZC1hY3Rpb25zYCBzaXQgYWJvdmUgaXQgYW5kIHN0YXkgaW5kZXBlbmRlbnRseSBjbGlja2FibGUg4oCUIGEgbWVudVxuICogaW5zaWRlIGEgY2xpY2thYmxlIGNhcmQgbmVlZHMgbm8gYHN0b3BQcm9wYWdhdGlvbmAuIE90aGVyIGludGVyYWN0aXZlIGNvbnRlbnRcbiAqIHByb2plY3RlZCBpbnRvIHRoZSBjYXJkIG11c3QgcmFpc2UgaXRzZWxmIHdpdGggYHBvc2l0aW9uOiByZWxhdGl2ZWAgYW5kXG4gKiBgei1pbmRleDogdmFyKC0tY2FyZC1yYWlzZWQtei1pbmRleClgLlxuICpcbiAqIFdoZW4gdGhlIGNhcmQncyBhY3Rpb24gaXMgcmVhbGx5IGEgbmF2aWdhdGlvbiwgcHJlZmVyIGBbcml2LWNhcmQtbGlua11gIG9uIGFuXG4gKiBgPGE+YCBpbnN0ZWFkOiB0aGF0IGtlZXBzIHRoZSBVUkwsIG1pZGRsZS1jbGljaywgYW5kIFwib3BlbiBpbiBuZXcgdGFiXCIuXG4gKlxuICogIyMgU2VsZWN0aW9uXG4gKlxuICogU2V0IGBzZWxlY3RlZGAgdG8gbWFyayB0aGUgY2FyZCB0aGUgdXNlciBpcyBjdXJyZW50bHkgbG9va2luZyBhdC4gSXQgZ2l2ZXNcbiAqIHRoZSBzdXJmYWNlIGEgZGlzdGluY3QgYm9yZGVyIGFuZCBzaGFkb3csIGFuZCBhbm5vdW5jZXMgdGhyb3VnaFxuICogYGFyaWEtY3VycmVudGAgc28gdGhlIHN0YXRlIGlzIG5vdCBjb252ZXllZCBieSBjb2xvdXIgYWxvbmUuXG4gKlxuICogYGBgaHRtbFxuICogPHJpdi1jYXJkIFtzZWxlY3RlZF09XCJ3b3JrYm9vay5pZCA9PT0gYWN0aXZlSWRcIj5cbiAqIGBgYFxuICpcbiAqIFNlbGVjdGlvbiBpcyBzZXBhcmF0ZSBmcm9tIGB0b25lYCwgc28gaXQgY29tcG9zZXMgd2l0aCBhbnkgdGludCDigJQgYSBzZWxlY3RlZFxuICogYGRhbmdlcmAgY2FyZCBrZWVwcyBpdHMgZGFuZ2VyIGJhY2tncm91bmQuXG4gKlxuICogIyMgTWFraW5nIHRoZSBjYXJkIGV4cGFuZCBhbmQgY29sbGFwc2VcbiAqXG4gKiBTZXQgYGV4cGFuZGFibGVgIG9uIGByaXYtY2FyZC1oZWFkZXJgIGFuZCByZW5kZXIgdGhlIGJvZHkgb25seSB3aGlsZSBpdCBpc1xuICogb3Blbi4gVGhlIGhlYWRlciBvd25zIHRoZSB0b2dnbGUgYWZmb3JkYW5jZSBhbmQgaXRzIGFjY2Vzc2liaWxpdHk7IHRoZVxuICogY29uc3VtZXIgb3ducyB0aGUgc3RhdGU6XG4gKlxuICogYGBgaHRtbFxuICogPHJpdi1jYXJkPlxuICogICA8cml2LWNhcmQtaGVhZGVyXG4gKiAgICAgW2hlYWRpbmddPVwiJ1BhdGllbnQgaW5mbydcIlxuICogICAgIFtleHBhbmRhYmxlXT1cInRydWVcIlxuICogICAgIFsoZXhwYW5kZWQpXT1cIm9wZW5cIlxuICogICA+PC9yaXYtY2FyZC1oZWFkZXI+XG4gKiAgIDxyaXYtY2FyZC1jb250ZW50ICpuZ0lmPVwib3BlblwiPi4uLjwvcml2LWNhcmQtY29udGVudD5cbiAqIDwvcml2LWNhcmQ+XG4gKiBgYGBcbiAqXG4gKiBUaGUgY2FyZCByZWxheXMgdGhlIHJlZ2lvbiBpZCBmcm9tIHRoZSBoZWFkZXIgdG8gdGhlIGNvbnRlbnQsIHNvIHRoZSB0b2dnbGUnc1xuICogYGFyaWEtY29udHJvbHNgIG5hbWVzIHRoZSBib2R5IHdpdGggbm8gaWRzIHdpcmVkIGJ5IGhhbmQuXG4gKlxuICogRG8gbm90IGNvbWJpbmUgYGV4cGFuZGFibGVgIHdpdGggYGNsaWNrYWJsZWA6IGJvdGggY2xhaW0gdGhlIHNhbWUgY2xpY2ssIGFuZFxuICogYSBjYXJkIHRoYXQgb3BlbnMgYXMgd2VsbCBhcyBleHBhbmRzIGxlYXZlcyB0aGUgdXNlciBubyB3YXkgdG8gdGVsbCB3aGljaCBvbmVcbiAqIHRoZXkgYXJlIGFib3V0IHRvIGdldC5cbiAqXG4gKiAjIyBOb3Rlc1xuICpcbiAqIFdoZW4gcHJvamVjdGluZyByYXcgY29udGVudCB3aXRoIG5vIHN1Yi1jb21wb25lbnRzLCBzZXQgYHBhZGRpbmdgIHNvIHRoZVxuICogY29udGVudCBpcyBub3QgZmx1c2ggYWdhaW5zdCB0aGUgYm9yZGVyLlxuICpcbiAqIFRoZSBjYXJkIGNsaXBzIGl0cyBvd24gY29udGVudCBzbyBtZWRpYSBhbmQgZmlsbGVkIGhlYWRlci9hY3Rpb24gcm93cyBmb2xsb3dcbiAqIGl0cyBjb3JuZXJzLiBQb3B1cHMgKGByaXYtbWVudWAsIGByaXZUb29sdGlwYCkgcmVuZGVyIHRocm91Z2ggdGhlIG92ZXJsYXlcbiAqIG91dGxldCwgc28gdGhleSBhcmUgbm90IGFmZmVjdGVkIGJ5IHRoYXQgY2xpcHBpbmcuXG4gKlxuICogUGVyLWluc3RhbmNlIHJhZGl1cyBjYW4gYmUgb3ZlcnJpZGRlbiB3aXRoIHRoZSBgLS1jYXJkLWJvcmRlci1yYWRpdXNgXG4gKiBjdXN0b20gcHJvcGVydHkuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3Jpdi1jYXJkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NhcmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYXJkLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIENhcmRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVsOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICApIHt9XG5cbiAgLyoqIEJvcmRlciBhbmQgc2hhZG93IHRyZWF0bWVudCBvZiB0aGUgc3VyZmFjZS4gKi9cbiAgQElucHV0KClcbiAgdmFyaWFudDogQ2FyZENvbXBvbmVudC5WYXJpYW50ID0gJ291dGxpbmVkJztcblxuICAvKiogTmV1dHJhbCBiYWNrZ3JvdW5kIGVsZXZhdGlvbiwgbWF0Y2hpbmcgdGhlIGAtLXN1cmZhY2UtbGlnaHQtKmAgdG9rZW5zLiAqL1xuICBASW5wdXQoKVxuICBzdXJmYWNlOiBDYXJkQ29tcG9uZW50LlN1cmZhY2UgPSAnMCc7XG5cbiAgLyoqIFNlbWFudGljIGJhY2tncm91bmQgdGludC4gT3ZlcnJpZGVzIGBzdXJmYWNlYCB3aGVuIG5vdCBgbmV1dHJhbGAuICovXG4gIEBJbnB1dCgpXG4gIHRvbmU6IENhcmRDb21wb25lbnQuVG9uZSA9ICduZXV0cmFsJztcblxuICAvKiogU3RhY2tpbmcgZGlyZWN0aW9uIG9mIHRoZSBwcm9qZWN0ZWQgcGFydHMuICovXG4gIEBJbnB1dCgpXG4gIG9yaWVudGF0aW9uOiBDYXJkQ29tcG9uZW50Lk9yaWVudGF0aW9uID0gJ3ZlcnRpY2FsJztcblxuICAvKipcbiAgICogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBjYXJkIGl0c2VsZi4gTGVhdmUgYXMgYG5vbmVgIHdoZW4gY29tcG9zaW5nIHdpdGhcbiAgICogYHJpdi1jYXJkLWhlYWRlcmAgLyBgcml2LWNhcmQtY29udGVudGAgLyBgcml2LWNhcmQtYWN0aW9uc2AsIHdoaWNoIG93blxuICAgKiB0aGVpciBvd24gcGFkZGluZy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHBhZGRpbmc6IENhcmRDb21wb25lbnQuUGFkZGluZyA9ICdub25lJztcblxuICAvKipcbiAgICogTWFrZXMgdGhlIHdob2xlIHN1cmZhY2UgYWN0aXZhdGUsIGVtaXR0aW5nIGBjYXJkQ2xpY2tgLiBBZGRzIHRoZSBob3ZlclxuICAgKiBhZmZvcmRhbmNlIGFuZCBrZXlib2FyZCBzdXBwb3J0LlxuICAgKi9cbiAgQElucHV0KClcbiAgY2xpY2thYmxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEFjY2Vzc2libGUgbmFtZSBmb3IgdGhlIGNhcmQncyBhY3Rpb24uIERlZmF1bHRzIHRvIHRoZSBgcml2LWNhcmQtaGVhZGVyYFxuICAgKiB0aXRsZSwgZmFsbGluZyBiYWNrIHRvIHRoZSBjYXJkJ3Mgd2hvbGUgdGV4dCBjb250ZW50IHdoZW4gdGhlcmUgaXMgbm9cbiAgICogaGVhZGVyLiBTZXQgdGhpcyB3aGVuIG5laXRoZXIgcmVhZHMgd2VsbCBvbiBpdHMgb3duLlxuICAgKi9cbiAgQElucHV0KClcbiAgY2xpY2tMYWJlbD86IHN0cmluZztcblxuICAvKipcbiAgICogTWFya3MgdGhlIGNhcmQgYXMgdGhlIGN1cnJlbnQgc2VsZWN0aW9uLCBnaXZpbmcgaXQgYSBkaXN0aW5jdCBib3JkZXIgYW5kXG4gICAqIHNoYWRvdy4gQ29tcG9zZXMgd2l0aCBhbnkgYHRvbmVgLCBzbyBhIHNlbGVjdGVkIGRhbmdlciBjYXJkIGtlZXBzIGl0c1xuICAgKiB0aW50LiBBbm5vdW5jZWQgdG8gYXNzaXN0aXZlIHRlY2hub2xvZ3kgdGhyb3VnaCBgYXJpYS1jdXJyZW50YC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHNlbGVjdGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIE11dGVzIHRoZSBzdXJmYWNlLCBzdXBwcmVzc2VzIGhvdmVyIGZlZWRiYWNrLCBhbmQgZGlzYWJsZXMgdGhlIGNsaWNrXG4gICAqIHRhcmdldC4gUHJlc2VudGF0aW9uYWwgZm9yIGV2ZXJ5dGhpbmcgZWxzZSDigJQgZGlzYWJsZSB0aGUgY2FyZCdzIG93blxuICAgKiBjb250cm9scyB0b28uXG4gICAqL1xuICBASW5wdXQoKVxuICBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBFbWl0dGVkIHdoZW4gYSBjbGlja2FibGUgY2FyZCBpcyBhY3RpdmF0ZWQgYnkgcG9pbnRlciBvciBrZXlib2FyZC4gKi9cbiAgQE91dHB1dCgpXG4gIGNhcmRDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcblxuICAvKipcbiAgICogTmFtZXMgdGhlIGNsaWNrIHRhcmdldCBmcm9tIHRoZSBjYXJkJ3MgY29udGVudC4gR2VuZXJhdGVkIG9ubHkgd2hlbiB0aGVcbiAgICogY29uc3VtZXIgaGFzIG5vdCBzZXQgdGhlaXIgb3duIGlkLlxuICAgKi9cbiAgcHJpdmF0ZSBjYXJkSWQ6IHN0cmluZyA9ICcnO1xuXG4gIC8qKiBTZXQgYnkgYSBwcm9qZWN0ZWQgYHJpdi1jYXJkLWhlYWRlcmAgdGhhdCBoYXMgYSB0aXRsZSB0byBuYW1lIGFnYWluc3QuICovXG4gIHByaXZhdGUgdGl0bGVJZD86IHN0cmluZztcblxuICAvKiogU2V0IGJ5IGEgcHJvamVjdGVkIGByaXYtY2FyZC1oZWFkZXJgIHRoYXQgaXMgZXhwYW5kYWJsZS4gKi9cbiAgcHJpdmF0ZSBleHBhbmRSZWdpb25JZD86IHN0cmluZztcblxuICAvKipcbiAgICogSWQgYW4gZXhwYW5kYWJsZSBoZWFkZXIncyB0b2dnbGUgcG9pbnRzIGBhcmlhLWNvbnRyb2xzYCBhdCwgd29ybiBieSBhXG4gICAqIHByb2plY3RlZCBgcml2LWNhcmQtY29udGVudGAuXG4gICAqL1xuICBnZXQgcmVnaW9uSWQoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5leHBhbmRSZWdpb25JZDtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuY2FyZElkID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LmlkIHx8IHVuaXF1ZUlkKCdyaXYtY2FyZC0nKTtcbiAgICBpZiAoIXRoaXMuZWwubmF0aXZlRWxlbWVudC5pZCkge1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAnaWQnLCB0aGlzLmNhcmRJZCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVycyB0aGUgaGVhZGVyJ3MgdGl0bGUgYXMgdGhlIGNsaWNrIHRhcmdldCdzIGFjY2Vzc2libGUgbmFtZSwgd2hpY2hcbiAgICoga2VlcHMgdGhlIGFubm91bmNlbWVudCB0byB0aGUgY2FyZCdzIHN1YmplY3QgaW5zdGVhZCBvZiBldmVyeSB3b3JkIG9uIHRoZVxuICAgKiBzdXJmYWNlLiBDYWxsZWQgYnkgYHJpdi1jYXJkLWhlYWRlcmA7IG5vdCBwYXJ0IG9mIHRoZSBwdWJsaWMgQVBJLlxuICAgKi9cbiAgc2V0VGl0bGVJZChpZDogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy50aXRsZUlkID0gaWQ7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogR2l2ZXMgdXAgYSB0aXRsZSByZWdpc3RlcmVkIGJ5IGBzZXRUaXRsZUlkYCwgc28gYSBoZWFkZXIgdGhhdCBpcyByZW1vdmVkXG4gICAqIGRvZXMgbm90IGxlYXZlIHRoZSBjbGljayB0YXJnZXQgbmFtaW5nIGl0c2VsZiBhZ2FpbnN0IGEgZGV0YWNoZWQgZWxlbWVudC5cbiAgICogSWdub3JlcyBpZHMgdGhhdCBhcmUgbm8gbG9uZ2VyIHRoZSBvbmUgaW4gdXNlLlxuICAgKi9cbiAgY2xlYXJUaXRsZUlkKGlkOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy50aXRsZUlkID09PSBpZCkge1xuICAgICAgdGhpcy5zZXRUaXRsZUlkKHVuZGVmaW5lZCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJlbGF5cyB0aGUgcmVnaW9uIGFuIGV4cGFuZGFibGUgaGVhZGVyIGNvbnRyb2xzIHRvIHRoZSBwcm9qZWN0ZWRcbiAgICogYHJpdi1jYXJkLWNvbnRlbnRgLCBzbyBuZWl0aGVyIHNpZGUgbmVlZHMgdGhlIGNvbnN1bWVyIHRvIHdpcmUgYW4gaWQuXG4gICAqIENhbGxlZCBieSBgcml2LWNhcmQtaGVhZGVyYDsgbm90IHBhcnQgb2YgdGhlIHB1YmxpYyBBUEkuXG4gICAqL1xuICBzZXRSZWdpb25JZChpZDogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5leHBhbmRSZWdpb25JZCA9IGlkO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdpdmVzIHVwIGEgcmVnaW9uIHJlZ2lzdGVyZWQgYnkgYHNldFJlZ2lvbklkYC4gSWdub3JlcyBpZHMgdGhhdCBhcmUgbm9cbiAgICogbG9uZ2VyIHRoZSBvbmUgaW4gdXNlLlxuICAgKi9cbiAgY2xlYXJSZWdpb25JZChpZDogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMuZXhwYW5kUmVnaW9uSWQgPT09IGlkKSB7XG4gICAgICB0aGlzLnNldFJlZ2lvbklkKHVuZGVmaW5lZCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEVsZW1lbnQgd2hvc2UgdGV4dCBuYW1lcyB0aGUgY2xpY2sgdGFyZ2V0LCB1bmxlc3MgYGNsaWNrTGFiZWxgIGlzIHNldC4gVGhlXG4gICAqIGhvc3QgaWQgaXMgcmVhZCBmcm9tIHRoZSBET00gcmF0aGVyIHRoYW4gY2FjaGVkLCBzbyBhIGJvdW5kIGBbaWRdYCB0aGF0XG4gICAqIGNoYW5nZXMgaXMgcGlja2VkIHVwIG9uIHRoZSBjYXJkJ3MgbmV4dCBjaGFuZ2UgZGV0ZWN0aW9uLlxuICAgKi9cbiAgcHJvdGVjdGVkIGdldCBsYWJlbGxlZEJ5KCk6IHN0cmluZyB8IG51bGwge1xuICAgIGlmICh0aGlzLmNsaWNrTGFiZWwpIHJldHVybiBudWxsO1xuICAgIHJldHVybiB0aGlzLnRpdGxlSWQgPz8gKHRoaXMuZWwubmF0aXZlRWxlbWVudC5pZCB8fCB0aGlzLmNhcmRJZCk7XG4gIH1cblxuICAvKiogQW5ub3VuY2VzIHRoZSBjdXJyZW50IHNlbGVjdGlvbiB0byBhc3Npc3RpdmUgdGVjaG5vbG9neS4gKi9cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmFyaWEtY3VycmVudCcpXG4gIGdldCBhcmlhQ3VycmVudCgpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZCA/ICd0cnVlJyA6IG51bGw7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IGNsYXNzZXMoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gT2JqZWN0LmVudHJpZXMoe1xuICAgICAgW3RoaXMudmFyaWFudF06IHRydWUsXG4gICAgICBbYHN1cmZhY2UtJHt0aGlzLnN1cmZhY2V9YF06IHRydWUsXG4gICAgICBbYHRvbmUtJHt0aGlzLnRvbmV9YF06IHRydWUsXG4gICAgICBbdGhpcy5vcmllbnRhdGlvbl06IHRydWUsXG4gICAgICBbYHBhZGRpbmctJHt0aGlzLnBhZGRpbmd9YF06IHRydWUsXG4gICAgICBjbGlja2FibGU6IHRoaXMuY2xpY2thYmxlLFxuICAgICAgc2VsZWN0ZWQ6IHRoaXMuc2VsZWN0ZWQsXG4gICAgICBkaXNhYmxlZDogdGhpcy5kaXNhYmxlZCxcbiAgICB9KVxuICAgICAgLmZpbHRlcigoW18sIHZdKSA9PiB2KVxuICAgICAgLm1hcCgoW2tdKSA9PiBrKVxuICAgICAgLmpvaW4oJyAnKTtcbiAgfVxufVxuXG5leHBvcnQgbmFtZXNwYWNlIENhcmRDb21wb25lbnQge1xuICBleHBvcnQgY29uc3QgVmFyaWFudHMgPSBbJ291dGxpbmVkJywgJ2VsZXZhdGVkJywgJ2ZsYXQnLCAnZGFzaGVkJ10gYXMgY29uc3Q7XG4gIGV4cG9ydCB0eXBlIFZhcmlhbnQgPSAodHlwZW9mIFZhcmlhbnRzKVtudW1iZXJdO1xuXG4gIGV4cG9ydCBjb25zdCBTdXJmYWNlcyA9IFsnMCcsICcxJywgJzInXSBhcyBjb25zdDtcbiAgZXhwb3J0IHR5cGUgU3VyZmFjZSA9ICh0eXBlb2YgU3VyZmFjZXMpW251bWJlcl07XG5cbiAgZXhwb3J0IGNvbnN0IFRvbmVzID0gW1xuICAgICduZXV0cmFsJyxcbiAgICAnZGFuZ2VyJyxcbiAgICAnY2F1dGlvbicsXG4gICAgJ3dhcm5pbmcnLFxuICAgICdzYWZldHknLFxuICAgICdzZWxlY3RlZCcsXG4gIF0gYXMgY29uc3Q7XG4gIGV4cG9ydCB0eXBlIFRvbmUgPSAodHlwZW9mIFRvbmVzKVtudW1iZXJdO1xuXG4gIGV4cG9ydCBjb25zdCBPcmllbnRhdGlvbnMgPSBbJ3ZlcnRpY2FsJywgJ2hvcml6b250YWwnXSBhcyBjb25zdDtcbiAgZXhwb3J0IHR5cGUgT3JpZW50YXRpb24gPSAodHlwZW9mIE9yaWVudGF0aW9ucylbbnVtYmVyXTtcblxuICAvKiogU2hhcmVkIHBhZGRpbmcgc2NhbGUgZm9yIHRoZSBjYXJkIGFuZCBpdHMgc3ViLWNvbXBvbmVudHMuICovXG4gIGV4cG9ydCBjb25zdCBQYWRkaW5ncyA9IFsnbm9uZScsICdzbWFsbCcsICdtZWRpdW0nLCAnbGFyZ2UnXSBhcyBjb25zdDtcbiAgZXhwb3J0IHR5cGUgUGFkZGluZyA9ICh0eXBlb2YgUGFkZGluZ3MpW251bWJlcl07XG59XG4iLCI8YnV0dG9uXG4gICpuZ0lmPVwiY2xpY2thYmxlXCJcbiAgdHlwZT1cImJ1dHRvblwiXG4gIGNsYXNzPVwiY2xpY2stdGFyZ2V0XCJcbiAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgW2F0dHIuYXJpYS1kaXNhYmxlZF09XCJkaXNhYmxlZCA/ICd0cnVlJyA6IG51bGxcIlxuICBbYXR0ci5hcmlhLWxhYmVsXT1cImNsaWNrTGFiZWxcIlxuICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwibGFiZWxsZWRCeVwiXG4gIChjbGljayk9XCJjYXJkQ2xpY2suZW1pdCgkZXZlbnQpXCJcbj48L2J1dHRvbj5cbjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiJdfQ==
275
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9yaXYvc3JjL2xpYi9sYXlvdXQvY2FyZC9jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Jpdi9zcmMvbGliL2xheW91dC9jYXJkL2NhcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBRVQsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBRUwsTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxRQUFRLENBQUM7OztBQUVsQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTJGRztBQU9ILE1BQU0sT0FBTyxhQUFhO0lBQ3hCLFlBQ21CLEVBQTJCLEVBQzNCLFFBQW1CLEVBQ25CLEdBQXNCO1FBRnRCLE9BQUUsR0FBRixFQUFFLENBQXlCO1FBQzNCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFHekMsa0RBQWtEO1FBRWxELFlBQU8sR0FBMEIsVUFBVSxDQUFDO1FBRTVDLDZFQUE2RTtRQUU3RSxZQUFPLEdBQTBCLEdBQUcsQ0FBQztRQUVyQyx3RUFBd0U7UUFFeEUsU0FBSSxHQUF1QixTQUFTLENBQUM7UUFFckMsaURBQWlEO1FBRWpELGdCQUFXLEdBQThCLFVBQVUsQ0FBQztRQUVwRDs7OztXQUlHO1FBRUgsWUFBTyxHQUEwQixNQUFNLENBQUM7UUFFeEM7OztXQUdHO1FBRUgsY0FBUyxHQUFZLEtBQUssQ0FBQztRQVUzQjs7OztXQUlHO1FBRUgsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUUxQjs7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QUMsR0FBRyxDQUFDLENBQUM7SUFDZixDQUFDOzsyR0FyS1UsYUFBYTsrRkFBYixhQUFhLGlZQ2hIMUIseVRBV0E7NEZEcUdhLGFBQWE7a0JBTnpCLFNBQVM7K0JBQ0UsVUFBVSxtQkFHSCx1QkFBdUIsQ0FBQyxNQUFNO3lKQVcvQyxPQUFPO3NCQUROLEtBQUs7Z0JBS04sT0FBTztzQkFETixLQUFLO2dCQUtOLElBQUk7c0JBREgsS0FBSztnQkFLTixXQUFXO3NCQURWLEtBQUs7Z0JBU04sT0FBTztzQkFETixLQUFLO2dCQVFOLFNBQVM7c0JBRFIsS0FBSztnQkFTTixVQUFVO3NCQURULEtBQUs7Z0JBU04sUUFBUTtzQkFEUCxLQUFLO2dCQVNOLFFBQVE7c0JBRFAsS0FBSztnQkFLTixTQUFTO3NCQURSLE1BQU07Z0JBbUZILFdBQVc7c0JBRGQsV0FBVzt1QkFBQyxtQkFBbUI7Z0JBTTVCLE9BQU87c0JBRFYsV0FBVzt1QkFBQyxPQUFPOztBQWtCdEIsV0FBaUIsYUFBYTtJQUNmLHNCQUFRLEdBQUcsQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQVUsQ0FBQztJQUcvRCxzQkFBUSxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQVUsQ0FBQztJQUdwQyxtQkFBSyxHQUFHO1FBQ25CLFNBQVM7UUFDVCxRQUFRO1FBQ1IsU0FBUztRQUNULFNBQVM7UUFDVCxRQUFRO1FBQ1IsVUFBVTtLQUNGLENBQUM7SUFHRSwwQkFBWSxHQUFHLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBVSxDQUFDO0lBR2hFLGdFQUFnRTtJQUNuRCxzQkFBUSxHQUFHO1FBQ3RCLE1BQU07UUFDTixPQUFPO1FBQ1AsUUFBUTtRQUNSLE9BQU87UUFDUCxRQUFRO1FBQ1IsU0FBUztLQUNELENBQUM7QUFFYixDQUFDLEVBOUJnQixhQUFhLEtBQWIsYUFBYSxRQThCN0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0QmluZGluZyxcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBSZW5kZXJlcjIsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdW5pcXVlSWQgfSBmcm9tICdsb2Rhc2gnO1xuXG4vKipcbiAqIFN1cmZhY2UgY29udGFpbmVyIHRoYXQgZ3JvdXBzIHJlbGF0ZWQgY29udGVudCBpbnRvIGEgc2luZ2xlIHNjYW5uYWJsZSB1bml0LlxuICpcbiAqIEEgY2FyZCBpcyBjb21wb3NlZCwgbm90IGNvbmZpZ3VyZWQ6IHByb2plY3QgdGhlIHBhcnRzIHlvdSBuZWVkLCBpbiB0aGUgb3JkZXJcbiAqIHlvdSBuZWVkIHRoZW0uIEV2ZXJ5IHBhcnQgaXMgb3B0aW9uYWwsIHNvIGEgYmFyZSBgcml2LWNhcmRgIGlzIGEgdmFsaWRcbiAqIHN1cmZhY2Ugb24gaXRzIG93bi5cbiAqXG4gKiAtIGByaXYtY2FyZC1tZWRpYWAg4oCUIGxlYWRpbmcgaW1hZ2Ugb3IgdmlkZW9cbiAqIC0gYHJpdi1jYXJkLWhlYWRlcmAg4oCUIGhlYWRpbmcsIHN1YmhlYWRpbmcsIGxlYWRpbmcgYWRvcm5tZW50LCBhY3Rpb25zXG4gKiAtIGByaXYtY2FyZC1jb250ZW50YCDigJQgYm9keVxuICogLSBgcml2LWNhcmQtYWN0aW9uc2Ag4oCUIHRyYWlsaW5nIGNvbnRyb2wgcm93XG4gKlxuICogYGBgaHRtbFxuICogPHJpdi1jYXJkPlxuICogICA8cml2LWNhcmQtaGVhZGVyIFtoZWFkaW5nXT1cIndvcmtib29rLm5hbWVcIiBbc3ViaGVhZGluZ109XCJwYXllck5hbWVcIj5cbiAqICAgICA8cml2LW1lbnUgYWN0aW9ucz4uLi48L3Jpdi1tZW51PlxuICogICA8L3Jpdi1jYXJkLWhlYWRlcj5cbiAqICAgPHJpdi1jYXJkLWNvbnRlbnQ+XG4gKiAgICAgTGFzdCBlZGl0OiB7eyB3b3JrYm9vay5tb2RpZmllZCB8IHJpdkRhdGUgfX1cbiAqICAgPC9yaXYtY2FyZC1jb250ZW50PlxuICogPC9yaXYtY2FyZD5cbiAqIGBgYFxuICpcbiAqICMjIE1ha2luZyB0aGUgY2FyZCBhY3RpdmF0ZVxuICpcbiAqIFNldCBgY2xpY2thYmxlYCBhbmQgaGFuZGxlIGBjYXJkQ2xpY2tgIHRvIG1ha2UgdGhlIHdob2xlIHN1cmZhY2UgYWN0IG9uIGFcbiAqIGNsaWNrOlxuICpcbiAqIGBgYGh0bWxcbiAqIDxyaXYtY2FyZCBbY2xpY2thYmxlXT1cInRydWVcIiAoY2FyZENsaWNrKT1cImdvVG9Xb3JrYm9vaygpXCI+XG4gKiBgYGBcbiAqXG4gKiBUaGUgY2FyZCByZW5kZXJzIGl0cyBvd24gZnVsbC1zdXJmYWNlIGJ1dHRvbiBmb3IgdGhpcywgc28gYWN0aXZhdGlvbiB3b3Jrc1xuICogd2l0aCBhIHBvaW50ZXIsIHdpdGggRW50ZXIsIGFuZCB3aXRoIFNwYWNlLCBhbmQgdGhlIGZvY3VzIHJpbmcgdHJhY2VzIHRoZVxuICogd2hvbGUgY2FyZC4gQ29udHJvbHMgaW4gYHJpdi1jYXJkLWhlYWRlcmAncyBgW2FjdGlvbnNdYCBzbG90IGFuZCBpblxuICogYHJpdi1jYXJkLWFjdGlvbnNgIHNpdCBhYm92ZSBpdCBhbmQgc3RheSBpbmRlcGVuZGVudGx5IGNsaWNrYWJsZSDigJQgYSBtZW51XG4gKiBpbnNpZGUgYSBjbGlja2FibGUgY2FyZCBuZWVkcyBubyBgc3RvcFByb3BhZ2F0aW9uYC4gT3RoZXIgaW50ZXJhY3RpdmUgY29udGVudFxuICogcHJvamVjdGVkIGludG8gdGhlIGNhcmQgbXVzdCByYWlzZSBpdHNlbGYgd2l0aCBgcG9zaXRpb246IHJlbGF0aXZlYCBhbmRcbiAqIGB6LWluZGV4OiB2YXIoLS1jYXJkLXJhaXNlZC16LWluZGV4KWAuXG4gKlxuICogV2hlbiB0aGUgY2FyZCdzIGFjdGlvbiBpcyByZWFsbHkgYSBuYXZpZ2F0aW9uLCBwcmVmZXIgYFtyaXYtY2FyZC1saW5rXWAgb24gYW5cbiAqIGA8YT5gIGluc3RlYWQ6IHRoYXQga2VlcHMgdGhlIFVSTCwgbWlkZGxlLWNsaWNrLCBhbmQgXCJvcGVuIGluIG5ldyB0YWJcIi5cbiAqXG4gKiAjIyBTZWxlY3Rpb25cbiAqXG4gKiBTZXQgYHNlbGVjdGVkYCB0byBtYXJrIHRoZSBjYXJkIHRoZSB1c2VyIGlzIGN1cnJlbnRseSBsb29raW5nIGF0LiBJdCBnaXZlc1xuICogdGhlIHN1cmZhY2UgYSBkaXN0aW5jdCBib3JkZXIgYW5kIHNoYWRvdywgYW5kIGFubm91bmNlcyB0aHJvdWdoXG4gKiBgYXJpYS1jdXJyZW50YCBzbyB0aGUgc3RhdGUgaXMgbm90IGNvbnZleWVkIGJ5IGNvbG91ciBhbG9uZS5cbiAqXG4gKiBgYGBodG1sXG4gKiA8cml2LWNhcmQgW3NlbGVjdGVkXT1cIndvcmtib29rLmlkID09PSBhY3RpdmVJZFwiPlxuICogYGBgXG4gKlxuICogU2VsZWN0aW9uIGlzIHNlcGFyYXRlIGZyb20gYHRvbmVgLCBzbyBpdCBjb21wb3NlcyB3aXRoIGFueSB0aW50IOKAlCBhIHNlbGVjdGVkXG4gKiBgZGFuZ2VyYCBjYXJkIGtlZXBzIGl0cyBkYW5nZXIgYmFja2dyb3VuZC5cbiAqXG4gKiAjIyBNYWtpbmcgdGhlIGNhcmQgZXhwYW5kIGFuZCBjb2xsYXBzZVxuICpcbiAqIFNldCBgZXhwYW5kYWJsZWAgb24gYHJpdi1jYXJkLWhlYWRlcmAgYW5kIHJlbmRlciB0aGUgYm9keSBvbmx5IHdoaWxlIGl0IGlzXG4gKiBvcGVuLiBUaGUgaGVhZGVyIG93bnMgdGhlIHRvZ2dsZSBhZmZvcmRhbmNlIGFuZCBpdHMgYWNjZXNzaWJpbGl0eTsgdGhlXG4gKiBjb25zdW1lciBvd25zIHRoZSBzdGF0ZTpcbiAqXG4gKiBgYGBodG1sXG4gKiA8cml2LWNhcmQ+XG4gKiAgIDxyaXYtY2FyZC1oZWFkZXJcbiAqICAgICBbaGVhZGluZ109XCInUGF0aWVudCBpbmZvJ1wiXG4gKiAgICAgW2V4cGFuZGFibGVdPVwidHJ1ZVwiXG4gKiAgICAgWyhleHBhbmRlZCldPVwib3BlblwiXG4gKiAgID48L3Jpdi1jYXJkLWhlYWRlcj5cbiAqICAgPHJpdi1jYXJkLWNvbnRlbnQgKm5nSWY9XCJvcGVuXCI+Li4uPC9yaXYtY2FyZC1jb250ZW50PlxuICogPC9yaXYtY2FyZD5cbiAqIGBgYFxuICpcbiAqIFRoZSBjYXJkIHJlbGF5cyB0aGUgcmVnaW9uIGlkIGZyb20gdGhlIGhlYWRlciB0byB0aGUgY29udGVudCwgc28gdGhlIHRvZ2dsZSdzXG4gKiBgYXJpYS1jb250cm9sc2AgbmFtZXMgdGhlIGJvZHkgd2l0aCBubyBpZHMgd2lyZWQgYnkgaGFuZC5cbiAqXG4gKiBEbyBub3QgY29tYmluZSBgZXhwYW5kYWJsZWAgd2l0aCBgY2xpY2thYmxlYDogYm90aCBjbGFpbSB0aGUgc2FtZSBjbGljaywgYW5kXG4gKiBhIGNhcmQgdGhhdCBvcGVucyBhcyB3ZWxsIGFzIGV4cGFuZHMgbGVhdmVzIHRoZSB1c2VyIG5vIHdheSB0byB0ZWxsIHdoaWNoIG9uZVxuICogdGhleSBhcmUgYWJvdXQgdG8gZ2V0LlxuICpcbiAqICMjIE5vdGVzXG4gKlxuICogV2hlbiBwcm9qZWN0aW5nIHJhdyBjb250ZW50IHdpdGggbm8gc3ViLWNvbXBvbmVudHMsIHNldCBgcGFkZGluZ2Agc28gdGhlXG4gKiBjb250ZW50IGlzIG5vdCBmbHVzaCBhZ2FpbnN0IHRoZSBib3JkZXIuXG4gKlxuICogVGhlIGNhcmQgY2xpcHMgaXRzIG93biBjb250ZW50IHNvIG1lZGlhIGFuZCBmaWxsZWQgaGVhZGVyL2FjdGlvbiByb3dzIGZvbGxvd1xuICogaXRzIGNvcm5lcnMuIFBvcHVwcyAoYHJpdi1tZW51YCwgYHJpdlRvb2x0aXBgKSByZW5kZXIgdGhyb3VnaCB0aGUgb3ZlcmxheVxuICogb3V0bGV0LCBzbyB0aGV5IGFyZSBub3QgYWZmZWN0ZWQgYnkgdGhhdCBjbGlwcGluZy5cbiAqXG4gKiBQZXItaW5zdGFuY2UgcmFkaXVzIGNhbiBiZSBvdmVycmlkZGVuIHdpdGggdGhlIGAtLWNhcmQtYm9yZGVyLXJhZGl1c2BcbiAqIGN1c3RvbSBwcm9wZXJ0eS5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncml2LWNhcmQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FyZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhcmQuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQ2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZWw6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge31cblxuICAvKiogQm9yZGVyIGFuZCBzaGFkb3cgdHJlYXRtZW50IG9mIHRoZSBzdXJmYWNlLiAqL1xuICBASW5wdXQoKVxuICB2YXJpYW50OiBDYXJkQ29tcG9uZW50LlZhcmlhbnQgPSAnb3V0bGluZWQnO1xuXG4gIC8qKiBOZXV0cmFsIGJhY2tncm91bmQgZWxldmF0aW9uLCBtYXRjaGluZyB0aGUgYC0tc3VyZmFjZS1saWdodC0qYCB0b2tlbnMuICovXG4gIEBJbnB1dCgpXG4gIHN1cmZhY2U6IENhcmRDb21wb25lbnQuU3VyZmFjZSA9ICcwJztcblxuICAvKiogU2VtYW50aWMgYmFja2dyb3VuZCB0aW50LiBPdmVycmlkZXMgYHN1cmZhY2VgIHdoZW4gbm90IGBuZXV0cmFsYC4gKi9cbiAgQElucHV0KClcbiAgdG9uZTogQ2FyZENvbXBvbmVudC5Ub25lID0gJ25ldXRyYWwnO1xuXG4gIC8qKiBTdGFja2luZyBkaXJlY3Rpb24gb2YgdGhlIHByb2plY3RlZCBwYXJ0cy4gKi9cbiAgQElucHV0KClcbiAgb3JpZW50YXRpb246IENhcmRDb21wb25lbnQuT3JpZW50YXRpb24gPSAndmVydGljYWwnO1xuXG4gIC8qKlxuICAgKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIGNhcmQgaXRzZWxmLiBMZWF2ZSBhcyBgbm9uZWAgd2hlbiBjb21wb3Npbmcgd2l0aFxuICAgKiBgcml2LWNhcmQtaGVhZGVyYCAvIGByaXYtY2FyZC1jb250ZW50YCAvIGByaXYtY2FyZC1hY3Rpb25zYCwgd2hpY2ggb3duXG4gICAqIHRoZWlyIG93biBwYWRkaW5nLlxuICAgKi9cbiAgQElucHV0KClcbiAgcGFkZGluZzogQ2FyZENvbXBvbmVudC5QYWRkaW5nID0gJ25vbmUnO1xuXG4gIC8qKlxuICAgKiBNYWtlcyB0aGUgd2hvbGUgc3VyZmFjZSBhY3RpdmF0ZSwgZW1pdHRpbmcgYGNhcmRDbGlja2AuIEFkZHMgdGhlIGhvdmVyXG4gICAqIGFmZm9yZGFuY2UgYW5kIGtleWJvYXJkIHN1cHBvcnQuXG4gICAqL1xuICBASW5wdXQoKVxuICBjbGlja2FibGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogQWNjZXNzaWJsZSBuYW1lIGZvciB0aGUgY2FyZCdzIGFjdGlvbi4gRGVmYXVsdHMgdG8gdGhlIGByaXYtY2FyZC1oZWFkZXJgXG4gICAqIHRpdGxlLCBmYWxsaW5nIGJhY2sgdG8gdGhlIGNhcmQncyB3aG9sZSB0ZXh0IGNvbnRlbnQgd2hlbiB0aGVyZSBpcyBub1xuICAgKiBoZWFkZXIuIFNldCB0aGlzIHdoZW4gbmVpdGhlciByZWFkcyB3ZWxsIG9uIGl0cyBvd24uXG4gICAqL1xuICBASW5wdXQoKVxuICBjbGlja0xhYmVsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBNYXJrcyB0aGUgY2FyZCBhcyB0aGUgY3VycmVudCBzZWxlY3Rpb24sIGdpdmluZyBpdCBhIGRpc3RpbmN0IGJvcmRlciBhbmRcbiAgICogc2hhZG93LiBDb21wb3NlcyB3aXRoIGFueSBgdG9uZWAsIHNvIGEgc2VsZWN0ZWQgZGFuZ2VyIGNhcmQga2VlcHMgaXRzXG4gICAqIHRpbnQuIEFubm91bmNlZCB0byBhc3Npc3RpdmUgdGVjaG5vbG9neSB0aHJvdWdoIGBhcmlhLWN1cnJlbnRgLlxuICAgKi9cbiAgQElucHV0KClcbiAgc2VsZWN0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogTXV0ZXMgdGhlIHN1cmZhY2UsIHN1cHByZXNzZXMgaG92ZXIgZmVlZGJhY2ssIGFuZCBkaXNhYmxlcyB0aGUgY2xpY2tcbiAgICogdGFyZ2V0LiBQcmVzZW50YXRpb25hbCBmb3IgZXZlcnl0aGluZyBlbHNlIOKAlCBkaXNhYmxlIHRoZSBjYXJkJ3Mgb3duXG4gICAqIGNvbnRyb2xzIHRvby5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIEVtaXR0ZWQgd2hlbiBhIGNsaWNrYWJsZSBjYXJkIGlzIGFjdGl2YXRlZCBieSBwb2ludGVyIG9yIGtleWJvYXJkLiAqL1xuICBAT3V0cHV0KClcbiAgY2FyZENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBOYW1lcyB0aGUgY2xpY2sgdGFyZ2V0IGZyb20gdGhlIGNhcmQncyBjb250ZW50LiBHZW5lcmF0ZWQgb25seSB3aGVuIHRoZVxuICAgKiBjb25zdW1lciBoYXMgbm90IHNldCB0aGVpciBvd24gaWQuXG4gICAqL1xuICBwcml2YXRlIGNhcmRJZDogc3RyaW5nID0gJyc7XG5cbiAgLyoqIFNldCBieSBhIHByb2plY3RlZCBgcml2LWNhcmQtaGVhZGVyYCB0aGF0IGhhcyBhIHRpdGxlIHRvIG5hbWUgYWdhaW5zdC4gKi9cbiAgcHJpdmF0ZSB0aXRsZUlkPzogc3RyaW5nO1xuXG4gIC8qKiBTZXQgYnkgYSBwcm9qZWN0ZWQgYHJpdi1jYXJkLWhlYWRlcmAgdGhhdCBpcyBleHBhbmRhYmxlLiAqL1xuICBwcml2YXRlIGV4cGFuZFJlZ2lvbklkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZCBhbiBleHBhbmRhYmxlIGhlYWRlcidzIHRvZ2dsZSBwb2ludHMgYGFyaWEtY29udHJvbHNgIGF0LCB3b3JuIGJ5IGFcbiAgICogcHJvamVjdGVkIGByaXYtY2FyZC1jb250ZW50YC5cbiAgICovXG4gIGdldCByZWdpb25JZCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmV4cGFuZFJlZ2lvbklkO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5jYXJkSWQgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuaWQgfHwgdW5pcXVlSWQoJ3Jpdi1jYXJkLScpO1xuICAgIGlmICghdGhpcy5lbC5uYXRpdmVFbGVtZW50LmlkKSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICdpZCcsIHRoaXMuY2FyZElkKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0ZXJzIHRoZSBoZWFkZXIncyB0aXRsZSBhcyB0aGUgY2xpY2sgdGFyZ2V0J3MgYWNjZXNzaWJsZSBuYW1lLCB3aGljaFxuICAgKiBrZWVwcyB0aGUgYW5ub3VuY2VtZW50IHRvIHRoZSBjYXJkJ3Mgc3ViamVjdCBpbnN0ZWFkIG9mIGV2ZXJ5IHdvcmQgb24gdGhlXG4gICAqIHN1cmZhY2UuIENhbGxlZCBieSBgcml2LWNhcmQtaGVhZGVyYDsgbm90IHBhcnQgb2YgdGhlIHB1YmxpYyBBUEkuXG4gICAqL1xuICBzZXRUaXRsZUlkKGlkOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLnRpdGxlSWQgPSBpZDtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHaXZlcyB1cCBhIHRpdGxlIHJlZ2lzdGVyZWQgYnkgYHNldFRpdGxlSWRgLCBzbyBhIGhlYWRlciB0aGF0IGlzIHJlbW92ZWRcbiAgICogZG9lcyBub3QgbGVhdmUgdGhlIGNsaWNrIHRhcmdldCBuYW1pbmcgaXRzZWxmIGFnYWluc3QgYSBkZXRhY2hlZCBlbGVtZW50LlxuICAgKiBJZ25vcmVzIGlkcyB0aGF0IGFyZSBubyBsb25nZXIgdGhlIG9uZSBpbiB1c2UuXG4gICAqL1xuICBjbGVhclRpdGxlSWQoaWQ6IHN0cmluZykge1xuICAgIGlmICh0aGlzLnRpdGxlSWQgPT09IGlkKSB7XG4gICAgICB0aGlzLnNldFRpdGxlSWQodW5kZWZpbmVkKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVsYXlzIHRoZSByZWdpb24gYW4gZXhwYW5kYWJsZSBoZWFkZXIgY29udHJvbHMgdG8gdGhlIHByb2plY3RlZFxuICAgKiBgcml2LWNhcmQtY29udGVudGAsIHNvIG5laXRoZXIgc2lkZSBuZWVkcyB0aGUgY29uc3VtZXIgdG8gd2lyZSBhbiBpZC5cbiAgICogQ2FsbGVkIGJ5IGByaXYtY2FyZC1oZWFkZXJgOyBub3QgcGFydCBvZiB0aGUgcHVibGljIEFQSS5cbiAgICovXG4gIHNldFJlZ2lvbklkKGlkOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLmV4cGFuZFJlZ2lvbklkID0gaWQ7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogR2l2ZXMgdXAgYSByZWdpb24gcmVnaXN0ZXJlZCBieSBgc2V0UmVnaW9uSWRgLiBJZ25vcmVzIGlkcyB0aGF0IGFyZSBub1xuICAgKiBsb25nZXIgdGhlIG9uZSBpbiB1c2UuXG4gICAqL1xuICBjbGVhclJlZ2lvbklkKGlkOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5leHBhbmRSZWdpb25JZCA9PT0gaWQpIHtcbiAgICAgIHRoaXMuc2V0UmVnaW9uSWQodW5kZWZpbmVkKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRWxlbWVudCB3aG9zZSB0ZXh0IG5hbWVzIHRoZSBjbGljayB0YXJnZXQsIHVubGVzcyBgY2xpY2tMYWJlbGAgaXMgc2V0LiBUaGVcbiAgICogaG9zdCBpZCBpcyByZWFkIGZyb20gdGhlIERPTSByYXRoZXIgdGhhbiBjYWNoZWQsIHNvIGEgYm91bmQgYFtpZF1gIHRoYXRcbiAgICogY2hhbmdlcyBpcyBwaWNrZWQgdXAgb24gdGhlIGNhcmQncyBuZXh0IGNoYW5nZSBkZXRlY3Rpb24uXG4gICAqL1xuICBwcm90ZWN0ZWQgZ2V0IGxhYmVsbGVkQnkoKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgaWYgKHRoaXMuY2xpY2tMYWJlbCkgcmV0dXJuIG51bGw7XG4gICAgcmV0dXJuIHRoaXMudGl0bGVJZCA/PyAodGhpcy5lbC5uYXRpdmVFbGVtZW50LmlkIHx8IHRoaXMuY2FyZElkKTtcbiAgfVxuXG4gIC8qKiBBbm5vdW5jZXMgdGhlIGN1cnJlbnQgc2VsZWN0aW9uIHRvIGFzc2lzdGl2ZSB0ZWNobm9sb2d5LiAqL1xuICBASG9zdEJpbmRpbmcoJ2F0dHIuYXJpYS1jdXJyZW50JylcbiAgZ2V0IGFyaWFDdXJyZW50KCk6IHN0cmluZyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdGVkID8gJ3RydWUnIDogbnVsbDtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgY2xhc3NlcygpOiBzdHJpbmcge1xuICAgIHJldHVybiBPYmplY3QuZW50cmllcyh7XG4gICAgICBbdGhpcy52YXJpYW50XTogdHJ1ZSxcbiAgICAgIFtgc3VyZmFjZS0ke3RoaXMuc3VyZmFjZX1gXTogdHJ1ZSxcbiAgICAgIFtgdG9uZS0ke3RoaXMudG9uZX1gXTogdHJ1ZSxcbiAgICAgIFt0aGlzLm9yaWVudGF0aW9uXTogdHJ1ZSxcbiAgICAgIFtgcGFkZGluZy0ke3RoaXMucGFkZGluZ31gXTogdHJ1ZSxcbiAgICAgIGNsaWNrYWJsZTogdGhpcy5jbGlja2FibGUsXG4gICAgICBzZWxlY3RlZDogdGhpcy5zZWxlY3RlZCxcbiAgICAgIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkLFxuICAgIH0pXG4gICAgICAuZmlsdGVyKChbXywgdl0pID0+IHYpXG4gICAgICAubWFwKChba10pID0+IGspXG4gICAgICAuam9pbignICcpO1xuICB9XG59XG5cbmV4cG9ydCBuYW1lc3BhY2UgQ2FyZENvbXBvbmVudCB7XG4gIGV4cG9ydCBjb25zdCBWYXJpYW50cyA9IFsnb3V0bGluZWQnLCAnZWxldmF0ZWQnLCAnZmxhdCcsICdkYXNoZWQnXSBhcyBjb25zdDtcbiAgZXhwb3J0IHR5cGUgVmFyaWFudCA9ICh0eXBlb2YgVmFyaWFudHMpW251bWJlcl07XG5cbiAgZXhwb3J0IGNvbnN0IFN1cmZhY2VzID0gWycwJywgJzEnLCAnMiddIGFzIGNvbnN0O1xuICBleHBvcnQgdHlwZSBTdXJmYWNlID0gKHR5cGVvZiBTdXJmYWNlcylbbnVtYmVyXTtcblxuICBleHBvcnQgY29uc3QgVG9uZXMgPSBbXG4gICAgJ25ldXRyYWwnLFxuICAgICdkYW5nZXInLFxuICAgICdjYXV0aW9uJyxcbiAgICAnd2FybmluZycsXG4gICAgJ3NhZmV0eScsXG4gICAgJ3NlbGVjdGVkJyxcbiAgXSBhcyBjb25zdDtcbiAgZXhwb3J0IHR5cGUgVG9uZSA9ICh0eXBlb2YgVG9uZXMpW251bWJlcl07XG5cbiAgZXhwb3J0IGNvbnN0IE9yaWVudGF0aW9ucyA9IFsndmVydGljYWwnLCAnaG9yaXpvbnRhbCddIGFzIGNvbnN0O1xuICBleHBvcnQgdHlwZSBPcmllbnRhdGlvbiA9ICh0eXBlb2YgT3JpZW50YXRpb25zKVtudW1iZXJdO1xuXG4gIC8qKiBTaGFyZWQgcGFkZGluZyBzY2FsZSBmb3IgdGhlIGNhcmQgYW5kIGl0cyBzdWItY29tcG9uZW50cy4gKi9cbiAgZXhwb3J0IGNvbnN0IFBhZGRpbmdzID0gW1xuICAgICdub25lJyxcbiAgICAnc21hbGwnLFxuICAgICdtZWRpdW0nLFxuICAgICdsYXJnZScsXG4gICAgJ3hsYXJnZScsXG4gICAgJ3h4bGFyZ2UnLFxuICBdIGFzIGNvbnN0O1xuICBleHBvcnQgdHlwZSBQYWRkaW5nID0gKHR5cGVvZiBQYWRkaW5ncylbbnVtYmVyXTtcbn1cbiIsIjxidXR0b25cbiAgKm5nSWY9XCJjbGlja2FibGVcIlxuICB0eXBlPVwiYnV0dG9uXCJcbiAgY2xhc3M9XCJjbGljay10YXJnZXRcIlxuICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICBbYXR0ci5hcmlhLWRpc2FibGVkXT1cImRpc2FibGVkID8gJ3RydWUnIDogbnVsbFwiXG4gIFthdHRyLmFyaWEtbGFiZWxdPVwiY2xpY2tMYWJlbFwiXG4gIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJsYWJlbGxlZEJ5XCJcbiAgKGNsaWNrKT1cImNhcmRDbGljay5lbWl0KCRldmVudClcIlxuPjwvYnV0dG9uPlxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuIl19
@@ -5599,10 +5599,10 @@ class CardActionsComponent {
5599
5599
  }
5600
5600
  }
5601
5601
  CardActionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CardActionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
5602
- CardActionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CardActionsComponent, selector: "riv-card-actions", inputs: { align: "align", variant: "variant", padding: "padding", orientation: "orientation", divider: "divider" }, host: { properties: { "class": "this.classes" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{position:relative;z-index:var(--card-raised-z-index);display:flex;align-items:center;gap:var(--size-small);min-width:0}:host.horizontal{flex-direction:row}:host.vertical{flex-direction:column;align-items:stretch}:host.align-start{justify-content:flex-start}:host.align-center{justify-content:center}:host.align-end{justify-content:flex-end}:host.align-between{justify-content:space-between}:host.align-stretch{display:grid}:host.align-stretch.horizontal{grid-auto-flow:column;grid-auto-columns:1fr}:host.align-stretch.vertical{grid-auto-flow:row;grid-auto-rows:1fr}:host.filled{background-color:var(--surface-light-1)}:host.filled,:host.divider{border-top:var(--border-width) solid var(--border-light)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5602
+ CardActionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CardActionsComponent, selector: "riv-card-actions", inputs: { align: "align", variant: "variant", padding: "padding", orientation: "orientation", divider: "divider" }, host: { properties: { "class": "this.classes" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{position:relative;z-index:var(--card-raised-z-index);display:flex;align-items:center;gap:var(--size-small);min-width:0}:host.horizontal{flex-direction:row}:host.vertical{flex-direction:column;align-items:stretch}:host.align-start{justify-content:flex-start}:host.align-center{justify-content:center}:host.align-end{justify-content:flex-end}:host.align-between{justify-content:space-between}:host.align-stretch{display:grid}:host.align-stretch.horizontal{grid-auto-flow:column;grid-auto-columns:1fr}:host.align-stretch.vertical{grid-auto-flow:row;grid-auto-rows:1fr}:host.filled{background-color:var(--surface-light-1)}:host.filled,:host.divider{border-top:var(--border-width) solid var(--border-light)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.padding-xlarge{padding:var(--size-xlarge)}:host.padding-xxlarge{padding:var(--size-xxlarge)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5603
5603
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CardActionsComponent, decorators: [{
5604
5604
  type: Component,
5605
- args: [{ selector: 'riv-card-actions', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [":host{position:relative;z-index:var(--card-raised-z-index);display:flex;align-items:center;gap:var(--size-small);min-width:0}:host.horizontal{flex-direction:row}:host.vertical{flex-direction:column;align-items:stretch}:host.align-start{justify-content:flex-start}:host.align-center{justify-content:center}:host.align-end{justify-content:flex-end}:host.align-between{justify-content:space-between}:host.align-stretch{display:grid}:host.align-stretch.horizontal{grid-auto-flow:column;grid-auto-columns:1fr}:host.align-stretch.vertical{grid-auto-flow:row;grid-auto-rows:1fr}:host.filled{background-color:var(--surface-light-1)}:host.filled,:host.divider{border-top:var(--border-width) solid var(--border-light)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}\n"] }]
5605
+ args: [{ selector: 'riv-card-actions', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [":host{position:relative;z-index:var(--card-raised-z-index);display:flex;align-items:center;gap:var(--size-small);min-width:0}:host.horizontal{flex-direction:row}:host.vertical{flex-direction:column;align-items:stretch}:host.align-start{justify-content:flex-start}:host.align-center{justify-content:center}:host.align-end{justify-content:flex-end}:host.align-between{justify-content:space-between}:host.align-stretch{display:grid}:host.align-stretch.horizontal{grid-auto-flow:column;grid-auto-columns:1fr}:host.align-stretch.vertical{grid-auto-flow:row;grid-auto-rows:1fr}:host.filled{background-color:var(--surface-light-1)}:host.filled,:host.divider{border-top:var(--border-width) solid var(--border-light)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.padding-xlarge{padding:var(--size-xlarge)}:host.padding-xxlarge{padding:var(--size-xxlarge)}\n"] }]
5606
5606
  }], propDecorators: { align: [{
5607
5607
  type: Input
5608
5608
  }], variant: [{
@@ -5847,10 +5847,10 @@ class CardComponent {
5847
5847
  }
5848
5848
  }
5849
5849
  CardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CardComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
5850
- CardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CardComponent, selector: "riv-card", inputs: { variant: "variant", surface: "surface", tone: "tone", orientation: "orientation", padding: "padding", clickable: "clickable", clickLabel: "clickLabel", selected: "selected", disabled: "disabled" }, outputs: { cardClick: "cardClick" }, host: { properties: { "attr.aria-current": "this.ariaCurrent", "class": "this.classes" } }, ngImport: i0, template: "<button\n *ngIf=\"clickable\"\n type=\"button\"\n class=\"click-target\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled ? 'true' : null\"\n [attr.aria-label]=\"clickLabel\"\n [attr.aria-labelledby]=\"labelledBy\"\n (click)=\"cardClick.emit($event)\"\n></button>\n<ng-content></ng-content>\n", styles: [":host{position:relative;display:flex;min-width:0;overflow:hidden;border-radius:var(--card-border-radius, var(--border-radius-medium));color:var(--type-light-high-contrast);font:var(--body-medium)}:host.vertical{flex-direction:column}:host.horizontal{flex-direction:row}:host.outlined{border:var(--border-width) solid var(--border-light)}:host.dashed{border:var(--border-width) dashed var(--border-light)}:host.elevated{box-shadow:var(--depth-1)}:host.surface-0{background-color:var(--surface-light-0)}:host.surface-1{background-color:var(--surface-light-1)}:host.surface-2{background-color:var(--surface-light-2)}:host.tone-danger{background-color:var(--surface-light-danger)}:host.tone-caution{background-color:var(--surface-light-caution)}:host.tone-warning{background-color:var(--surface-light-warning)}:host.tone-safety{background-color:var(--surface-light-safety)}:host.tone-selected{background-color:var(--surface-light-selected)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.clickable{transition:box-shadow var(--short-transition)}:host.clickable:not(.disabled):hover{box-shadow:var(--depth-1)}:host.elevated.clickable:not(.disabled):hover{box-shadow:var(--depth-2)}.click-target{position:absolute;inset:0;z-index:var(--card-click-target-z-index);padding:0;border:none;background:none;cursor:pointer;transition:background-color var(--short-transition)}.click-target:not(:disabled):hover{background-color:var(--black-20)}.click-target:disabled{cursor:default}.click-target:focus-visible{outline:var(--border-width-large) solid var(--type-light-link);outline-offset:calc(-1 * var(--border-width-large))}:host.selected{border:var(--border-width) solid var(--baloo-50);box-shadow:var(--depth-2)}:host.disabled{background-color:var(--surface-light-1)}:host.outlined.disabled,:host.dashed.disabled{border-color:var(--border-light)}@media print{:host{break-inside:avoid}}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5850
+ CardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CardComponent, selector: "riv-card", inputs: { variant: "variant", surface: "surface", tone: "tone", orientation: "orientation", padding: "padding", clickable: "clickable", clickLabel: "clickLabel", selected: "selected", disabled: "disabled" }, outputs: { cardClick: "cardClick" }, host: { properties: { "attr.aria-current": "this.ariaCurrent", "class": "this.classes" } }, ngImport: i0, template: "<button\n *ngIf=\"clickable\"\n type=\"button\"\n class=\"click-target\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled ? 'true' : null\"\n [attr.aria-label]=\"clickLabel\"\n [attr.aria-labelledby]=\"labelledBy\"\n (click)=\"cardClick.emit($event)\"\n></button>\n<ng-content></ng-content>\n", styles: [":host{position:relative;display:flex;min-width:0;overflow:hidden;border-radius:var(--card-border-radius, var(--border-radius-medium));color:var(--type-light-high-contrast);font:var(--body-medium)}:host.vertical{flex-direction:column}:host.horizontal{flex-direction:row}:host.outlined{border:var(--border-width) solid var(--border-light)}:host.dashed{border:var(--border-width) dashed var(--border-light)}:host.elevated{box-shadow:var(--depth-1)}:host.surface-0{background-color:var(--surface-light-0)}:host.surface-1{background-color:var(--surface-light-1)}:host.surface-2{background-color:var(--surface-light-2)}:host.tone-danger{background-color:var(--surface-light-danger)}:host.tone-caution{background-color:var(--surface-light-caution)}:host.tone-warning{background-color:var(--surface-light-warning)}:host.tone-safety{background-color:var(--surface-light-safety)}:host.tone-selected{background-color:var(--surface-light-selected)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.padding-xlarge{padding:var(--size-xlarge)}:host.padding-xxlarge{padding:var(--size-xxlarge)}:host.clickable{transition:box-shadow var(--short-transition)}:host.clickable:not(.disabled):hover{box-shadow:var(--depth-1)}:host.elevated.clickable:not(.disabled):hover{box-shadow:var(--depth-2)}.click-target{position:absolute;inset:0;z-index:var(--card-click-target-z-index);padding:0;border:none;background:none;cursor:pointer;transition:background-color var(--short-transition)}.click-target:not(:disabled):hover{background-color:var(--black-20)}.click-target:disabled{cursor:default}.click-target:focus-visible{outline:var(--border-width-large) solid var(--type-light-link);outline-offset:calc(-1 * var(--border-width-large))}:host.selected{border:var(--border-width) solid var(--baloo-50);box-shadow:var(--depth-2)}:host.disabled{background-color:var(--surface-light-1)}:host.outlined.disabled,:host.dashed.disabled{border-color:var(--border-light)}@media print{:host{break-inside:avoid}}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5851
5851
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CardComponent, decorators: [{
5852
5852
  type: Component,
5853
- args: [{ selector: 'riv-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n *ngIf=\"clickable\"\n type=\"button\"\n class=\"click-target\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled ? 'true' : null\"\n [attr.aria-label]=\"clickLabel\"\n [attr.aria-labelledby]=\"labelledBy\"\n (click)=\"cardClick.emit($event)\"\n></button>\n<ng-content></ng-content>\n", styles: [":host{position:relative;display:flex;min-width:0;overflow:hidden;border-radius:var(--card-border-radius, var(--border-radius-medium));color:var(--type-light-high-contrast);font:var(--body-medium)}:host.vertical{flex-direction:column}:host.horizontal{flex-direction:row}:host.outlined{border:var(--border-width) solid var(--border-light)}:host.dashed{border:var(--border-width) dashed var(--border-light)}:host.elevated{box-shadow:var(--depth-1)}:host.surface-0{background-color:var(--surface-light-0)}:host.surface-1{background-color:var(--surface-light-1)}:host.surface-2{background-color:var(--surface-light-2)}:host.tone-danger{background-color:var(--surface-light-danger)}:host.tone-caution{background-color:var(--surface-light-caution)}:host.tone-warning{background-color:var(--surface-light-warning)}:host.tone-safety{background-color:var(--surface-light-safety)}:host.tone-selected{background-color:var(--surface-light-selected)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.clickable{transition:box-shadow var(--short-transition)}:host.clickable:not(.disabled):hover{box-shadow:var(--depth-1)}:host.elevated.clickable:not(.disabled):hover{box-shadow:var(--depth-2)}.click-target{position:absolute;inset:0;z-index:var(--card-click-target-z-index);padding:0;border:none;background:none;cursor:pointer;transition:background-color var(--short-transition)}.click-target:not(:disabled):hover{background-color:var(--black-20)}.click-target:disabled{cursor:default}.click-target:focus-visible{outline:var(--border-width-large) solid var(--type-light-link);outline-offset:calc(-1 * var(--border-width-large))}:host.selected{border:var(--border-width) solid var(--baloo-50);box-shadow:var(--depth-2)}:host.disabled{background-color:var(--surface-light-1)}:host.outlined.disabled,:host.dashed.disabled{border-color:var(--border-light)}@media print{:host{break-inside:avoid}}\n"] }]
5853
+ args: [{ selector: 'riv-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n *ngIf=\"clickable\"\n type=\"button\"\n class=\"click-target\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled ? 'true' : null\"\n [attr.aria-label]=\"clickLabel\"\n [attr.aria-labelledby]=\"labelledBy\"\n (click)=\"cardClick.emit($event)\"\n></button>\n<ng-content></ng-content>\n", styles: [":host{position:relative;display:flex;min-width:0;overflow:hidden;border-radius:var(--card-border-radius, var(--border-radius-medium));color:var(--type-light-high-contrast);font:var(--body-medium)}:host.vertical{flex-direction:column}:host.horizontal{flex-direction:row}:host.outlined{border:var(--border-width) solid var(--border-light)}:host.dashed{border:var(--border-width) dashed var(--border-light)}:host.elevated{box-shadow:var(--depth-1)}:host.surface-0{background-color:var(--surface-light-0)}:host.surface-1{background-color:var(--surface-light-1)}:host.surface-2{background-color:var(--surface-light-2)}:host.tone-danger{background-color:var(--surface-light-danger)}:host.tone-caution{background-color:var(--surface-light-caution)}:host.tone-warning{background-color:var(--surface-light-warning)}:host.tone-safety{background-color:var(--surface-light-safety)}:host.tone-selected{background-color:var(--surface-light-selected)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.padding-xlarge{padding:var(--size-xlarge)}:host.padding-xxlarge{padding:var(--size-xxlarge)}:host.clickable{transition:box-shadow var(--short-transition)}:host.clickable:not(.disabled):hover{box-shadow:var(--depth-1)}:host.elevated.clickable:not(.disabled):hover{box-shadow:var(--depth-2)}.click-target{position:absolute;inset:0;z-index:var(--card-click-target-z-index);padding:0;border:none;background:none;cursor:pointer;transition:background-color var(--short-transition)}.click-target:not(:disabled):hover{background-color:var(--black-20)}.click-target:disabled{cursor:default}.click-target:focus-visible{outline:var(--border-width-large) solid var(--type-light-link);outline-offset:calc(-1 * var(--border-width-large))}:host.selected{border:var(--border-width) solid var(--baloo-50);box-shadow:var(--depth-2)}:host.disabled{background-color:var(--surface-light-1)}:host.outlined.disabled,:host.dashed.disabled{border-color:var(--border-light)}@media print{:host{break-inside:avoid}}\n"] }]
5854
5854
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { variant: [{
5855
5855
  type: Input
5856
5856
  }], surface: [{
@@ -5891,7 +5891,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
5891
5891
  ];
5892
5892
  CardComponent.Orientations = ['vertical', 'horizontal'];
5893
5893
  /** Shared padding scale for the card and its sub-components. */
5894
- CardComponent.Paddings = ['none', 'small', 'medium', 'large'];
5894
+ CardComponent.Paddings = [
5895
+ 'none',
5896
+ 'small',
5897
+ 'medium',
5898
+ 'large',
5899
+ 'xlarge',
5900
+ 'xxlarge',
5901
+ ];
5895
5902
  })(CardComponent || (CardComponent = {}));
5896
5903
 
5897
5904
  /**
@@ -5939,10 +5946,10 @@ class CardContentComponent {
5939
5946
  }
5940
5947
  }
5941
5948
  CardContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CardContentComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: CardComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component });
5942
- CardContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CardContentComponent, selector: "riv-card-content", inputs: { padding: "padding", grow: "grow", divider: "divider" }, host: { properties: { "class": "this.classes" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:block;min-width:0;font:var(--body-medium)}:host.grow{flex-grow:1}:host.divider{border-bottom:var(--border-width) solid var(--border-light)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5949
+ CardContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CardContentComponent, selector: "riv-card-content", inputs: { padding: "padding", grow: "grow", divider: "divider" }, host: { properties: { "class": "this.classes" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:block;min-width:0;font:var(--body-medium)}:host.grow{flex-grow:1}:host.divider{border-bottom:var(--border-width) solid var(--border-light)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.padding-xlarge{padding:var(--size-xlarge)}:host.padding-xxlarge{padding:var(--size-xxlarge)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5943
5950
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CardContentComponent, decorators: [{
5944
5951
  type: Component,
5945
- args: [{ selector: 'riv-card-content', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [":host{display:block;min-width:0;font:var(--body-medium)}:host.grow{flex-grow:1}:host.divider{border-bottom:var(--border-width) solid var(--border-light)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}\n"] }]
5952
+ args: [{ selector: 'riv-card-content', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [":host{display:block;min-width:0;font:var(--body-medium)}:host.grow{flex-grow:1}:host.divider{border-bottom:var(--border-width) solid var(--border-light)}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.padding-xlarge{padding:var(--size-xlarge)}:host.padding-xxlarge{padding:var(--size-xxlarge)}\n"] }]
5946
5953
  }], ctorParameters: function () {
5947
5954
  return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: CardComponent, decorators: [{
5948
5955
  type: Optional
@@ -6112,10 +6119,10 @@ class CardHeaderComponent {
6112
6119
  }
6113
6120
  }
6114
6121
  CardHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CardHeaderComponent, deps: [{ token: CardComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component });
6115
- CardHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CardHeaderComponent, selector: "riv-card-header", inputs: { heading: "heading", subheading: "subheading", headingLevel: "headingLevel", variant: "variant", padding: "padding", divider: "divider", align: "align", clamp: "clamp", expandable: "expandable", expanded: "expanded", togglePosition: "togglePosition", disabled: "disabled" }, outputs: { expandedChange: "expandedChange" }, host: { properties: { "class": "this.classes" } }, usesOnChanges: true, ngImport: i0, template: "<button\n *ngIf=\"expandable\"\n type=\"button\"\n class=\"expand-toggle\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled ? 'true' : null\"\n [attr.aria-expanded]=\"expanded\"\n [attr.aria-controls]=\"regionId\"\n [attr.aria-labelledby]=\"titleId\"\n (click)=\"toggle()\"\n></button>\n<ng-container\n *ngIf=\"expandable && togglePosition === 'leading'\"\n [ngTemplateOutlet]=\"chevron\"\n></ng-container>\n<div class=\"leading\"><ng-content select=\"[leading]\"></ng-content></div>\n<div class=\"main\">\n <div class=\"title-row\" [id]=\"titleId\">\n <div *ngIf=\"heading?.trim()\" class=\"heading\" [ngStyle]=\"clampStyle\">\n <ng-container [ngSwitch]=\"headingLevel\">\n <h1 *ngSwitchCase=\"1\">{{ heading }}</h1>\n <h2 *ngSwitchCase=\"2\">{{ heading }}</h2>\n <h3 *ngSwitchCase=\"3\">{{ heading }}</h3>\n <h4 *ngSwitchCase=\"4\">{{ heading }}</h4>\n <h5 *ngSwitchCase=\"5\">{{ heading }}</h5>\n <h6 *ngSwitchCase=\"6\">{{ heading }}</h6>\n </ng-container>\n </div>\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"subheading?.trim()\" class=\"subheading\">{{ subheading }}</div>\n</div>\n<ng-container\n *ngIf=\"expandable && togglePosition === 'trailing'\"\n [ngTemplateOutlet]=\"chevron\"\n></ng-container>\n<div class=\"actions\"><ng-content select=\"[actions]\"></ng-content></div>\n\n<ng-template #chevron>\n <riv-icon\n class=\"expand-chevron\"\n [class.expanded]=\"expanded\"\n [name]=\"'ChevronDown'\"\n [size]=\"20\"\n ></riv-icon>\n</ng-template>\n", styles: [":host{display:flex;gap:var(--size-medium);min-width:0}:host.expandable{position:relative}:host.align-start{align-items:flex-start}:host.align-center{align-items:center}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.filled{background-color:var(--surface-light-1)}:host.filled,:host.divider{border-bottom:var(--border-width) solid var(--border-light)}.main{flex-grow:1;min-width:0}.title-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--size-xsmall);min-width:0;font:var(--card-heading-font, var(--title-04));color:var(--card-heading-color, var(--type-light-high-contrast))}:host.filled .title-row{font:var(--card-heading-font, var(--title-02))}.leading{flex-shrink:0}.actions{position:relative;z-index:var(--card-raised-z-index);display:flex;flex-shrink:0;align-items:center;gap:var(--size-small)}.expand-toggle{position:absolute;inset:0;z-index:var(--card-click-target-z-index);padding:0;border:none;background:none;cursor:pointer;transition:background-color var(--short-transition)}.expand-toggle:not(:disabled):hover{background-color:var(--black-20)}.expand-toggle:disabled{cursor:default}.expand-toggle:focus-visible{outline:var(--border-width-large) solid var(--type-light-link);outline-offset:calc(-1 * var(--border-width-large))}.expand-chevron{flex-shrink:0;transition:transform var(--medium-transition)}.expand-chevron.expanded{transform:rotate(-180deg)}.leading:not(:has(*)),.actions:not(:has(*)){display:none}.heading{min-width:0}.heading>*{display:inline;margin:0;font:inherit;color:inherit}.subheading{font:var(--body-small);color:var(--type-light-low-contrast)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: IconComponent, selector: "riv-icon", inputs: ["name", "fillColor", "size", "customSize", "strokeWidth"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6122
+ CardHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CardHeaderComponent, selector: "riv-card-header", inputs: { heading: "heading", subheading: "subheading", headingLevel: "headingLevel", variant: "variant", padding: "padding", divider: "divider", align: "align", clamp: "clamp", expandable: "expandable", expanded: "expanded", togglePosition: "togglePosition", disabled: "disabled" }, outputs: { expandedChange: "expandedChange" }, host: { properties: { "class": "this.classes" } }, usesOnChanges: true, ngImport: i0, template: "<button\n *ngIf=\"expandable\"\n type=\"button\"\n class=\"expand-toggle\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled ? 'true' : null\"\n [attr.aria-expanded]=\"expanded\"\n [attr.aria-controls]=\"regionId\"\n [attr.aria-labelledby]=\"titleId\"\n (click)=\"toggle()\"\n></button>\n<ng-container\n *ngIf=\"expandable && togglePosition === 'leading'\"\n [ngTemplateOutlet]=\"chevron\"\n></ng-container>\n<div class=\"leading\"><ng-content select=\"[leading]\"></ng-content></div>\n<div class=\"main\">\n <div class=\"title-row\" [id]=\"titleId\">\n <div *ngIf=\"heading?.trim()\" class=\"heading\" [ngStyle]=\"clampStyle\">\n <ng-container [ngSwitch]=\"headingLevel\">\n <h1 *ngSwitchCase=\"1\">{{ heading }}</h1>\n <h2 *ngSwitchCase=\"2\">{{ heading }}</h2>\n <h3 *ngSwitchCase=\"3\">{{ heading }}</h3>\n <h4 *ngSwitchCase=\"4\">{{ heading }}</h4>\n <h5 *ngSwitchCase=\"5\">{{ heading }}</h5>\n <h6 *ngSwitchCase=\"6\">{{ heading }}</h6>\n </ng-container>\n </div>\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"subheading?.trim()\" class=\"subheading\">{{ subheading }}</div>\n</div>\n<ng-container\n *ngIf=\"expandable && togglePosition === 'trailing'\"\n [ngTemplateOutlet]=\"chevron\"\n></ng-container>\n<div class=\"actions\"><ng-content select=\"[actions]\"></ng-content></div>\n\n<ng-template #chevron>\n <riv-icon\n class=\"expand-chevron\"\n [class.expanded]=\"expanded\"\n [name]=\"'ChevronDown'\"\n [size]=\"20\"\n ></riv-icon>\n</ng-template>\n", styles: [":host{display:flex;gap:var(--size-medium);min-width:0}:host.expandable{position:relative}:host.align-start{align-items:flex-start}:host.align-center{align-items:center}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.padding-xlarge{padding:var(--size-xlarge)}:host.padding-xxlarge{padding:var(--size-xxlarge)}:host.filled{background-color:var(--surface-light-1)}:host.filled,:host.divider{border-bottom:var(--border-width) solid var(--border-light)}.main{flex-grow:1;min-width:0}.title-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--size-xsmall);min-width:0;font:var(--card-heading-font, var(--title-04));color:var(--card-heading-color, var(--type-light-high-contrast))}:host.filled .title-row{font:var(--card-heading-font, var(--title-02))}.leading{flex-shrink:0}.actions{position:relative;z-index:var(--card-raised-z-index);display:flex;flex-shrink:0;align-items:center;gap:var(--size-small)}.expand-toggle{position:absolute;inset:0;z-index:var(--card-click-target-z-index);padding:0;border:none;background:none;cursor:pointer;transition:background-color var(--short-transition)}.expand-toggle:not(:disabled):hover{background-color:var(--black-20)}.expand-toggle:disabled{cursor:default}.expand-toggle:focus-visible{outline:var(--border-width-large) solid var(--type-light-link);outline-offset:calc(-1 * var(--border-width-large))}.expand-chevron{flex-shrink:0;transition:transform var(--medium-transition)}.expand-chevron.expanded{transform:rotate(-180deg)}.leading:not(:has(*)),.actions:not(:has(*)){display:none}.heading{min-width:0}.heading>*{display:inline;margin:0;font:inherit;color:inherit}.subheading{font:var(--body-small);color:var(--type-light-low-contrast)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: IconComponent, selector: "riv-icon", inputs: ["name", "fillColor", "size", "customSize", "strokeWidth"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6116
6123
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CardHeaderComponent, decorators: [{
6117
6124
  type: Component,
6118
- args: [{ selector: 'riv-card-header', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n *ngIf=\"expandable\"\n type=\"button\"\n class=\"expand-toggle\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled ? 'true' : null\"\n [attr.aria-expanded]=\"expanded\"\n [attr.aria-controls]=\"regionId\"\n [attr.aria-labelledby]=\"titleId\"\n (click)=\"toggle()\"\n></button>\n<ng-container\n *ngIf=\"expandable && togglePosition === 'leading'\"\n [ngTemplateOutlet]=\"chevron\"\n></ng-container>\n<div class=\"leading\"><ng-content select=\"[leading]\"></ng-content></div>\n<div class=\"main\">\n <div class=\"title-row\" [id]=\"titleId\">\n <div *ngIf=\"heading?.trim()\" class=\"heading\" [ngStyle]=\"clampStyle\">\n <ng-container [ngSwitch]=\"headingLevel\">\n <h1 *ngSwitchCase=\"1\">{{ heading }}</h1>\n <h2 *ngSwitchCase=\"2\">{{ heading }}</h2>\n <h3 *ngSwitchCase=\"3\">{{ heading }}</h3>\n <h4 *ngSwitchCase=\"4\">{{ heading }}</h4>\n <h5 *ngSwitchCase=\"5\">{{ heading }}</h5>\n <h6 *ngSwitchCase=\"6\">{{ heading }}</h6>\n </ng-container>\n </div>\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"subheading?.trim()\" class=\"subheading\">{{ subheading }}</div>\n</div>\n<ng-container\n *ngIf=\"expandable && togglePosition === 'trailing'\"\n [ngTemplateOutlet]=\"chevron\"\n></ng-container>\n<div class=\"actions\"><ng-content select=\"[actions]\"></ng-content></div>\n\n<ng-template #chevron>\n <riv-icon\n class=\"expand-chevron\"\n [class.expanded]=\"expanded\"\n [name]=\"'ChevronDown'\"\n [size]=\"20\"\n ></riv-icon>\n</ng-template>\n", styles: [":host{display:flex;gap:var(--size-medium);min-width:0}:host.expandable{position:relative}:host.align-start{align-items:flex-start}:host.align-center{align-items:center}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.filled{background-color:var(--surface-light-1)}:host.filled,:host.divider{border-bottom:var(--border-width) solid var(--border-light)}.main{flex-grow:1;min-width:0}.title-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--size-xsmall);min-width:0;font:var(--card-heading-font, var(--title-04));color:var(--card-heading-color, var(--type-light-high-contrast))}:host.filled .title-row{font:var(--card-heading-font, var(--title-02))}.leading{flex-shrink:0}.actions{position:relative;z-index:var(--card-raised-z-index);display:flex;flex-shrink:0;align-items:center;gap:var(--size-small)}.expand-toggle{position:absolute;inset:0;z-index:var(--card-click-target-z-index);padding:0;border:none;background:none;cursor:pointer;transition:background-color var(--short-transition)}.expand-toggle:not(:disabled):hover{background-color:var(--black-20)}.expand-toggle:disabled{cursor:default}.expand-toggle:focus-visible{outline:var(--border-width-large) solid var(--type-light-link);outline-offset:calc(-1 * var(--border-width-large))}.expand-chevron{flex-shrink:0;transition:transform var(--medium-transition)}.expand-chevron.expanded{transform:rotate(-180deg)}.leading:not(:has(*)),.actions:not(:has(*)){display:none}.heading{min-width:0}.heading>*{display:inline;margin:0;font:inherit;color:inherit}.subheading{font:var(--body-small);color:var(--type-light-low-contrast)}\n"] }]
6125
+ args: [{ selector: 'riv-card-header', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n *ngIf=\"expandable\"\n type=\"button\"\n class=\"expand-toggle\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled ? 'true' : null\"\n [attr.aria-expanded]=\"expanded\"\n [attr.aria-controls]=\"regionId\"\n [attr.aria-labelledby]=\"titleId\"\n (click)=\"toggle()\"\n></button>\n<ng-container\n *ngIf=\"expandable && togglePosition === 'leading'\"\n [ngTemplateOutlet]=\"chevron\"\n></ng-container>\n<div class=\"leading\"><ng-content select=\"[leading]\"></ng-content></div>\n<div class=\"main\">\n <div class=\"title-row\" [id]=\"titleId\">\n <div *ngIf=\"heading?.trim()\" class=\"heading\" [ngStyle]=\"clampStyle\">\n <ng-container [ngSwitch]=\"headingLevel\">\n <h1 *ngSwitchCase=\"1\">{{ heading }}</h1>\n <h2 *ngSwitchCase=\"2\">{{ heading }}</h2>\n <h3 *ngSwitchCase=\"3\">{{ heading }}</h3>\n <h4 *ngSwitchCase=\"4\">{{ heading }}</h4>\n <h5 *ngSwitchCase=\"5\">{{ heading }}</h5>\n <h6 *ngSwitchCase=\"6\">{{ heading }}</h6>\n </ng-container>\n </div>\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"subheading?.trim()\" class=\"subheading\">{{ subheading }}</div>\n</div>\n<ng-container\n *ngIf=\"expandable && togglePosition === 'trailing'\"\n [ngTemplateOutlet]=\"chevron\"\n></ng-container>\n<div class=\"actions\"><ng-content select=\"[actions]\"></ng-content></div>\n\n<ng-template #chevron>\n <riv-icon\n class=\"expand-chevron\"\n [class.expanded]=\"expanded\"\n [name]=\"'ChevronDown'\"\n [size]=\"20\"\n ></riv-icon>\n</ng-template>\n", styles: [":host{display:flex;gap:var(--size-medium);min-width:0}:host.expandable{position:relative}:host.align-start{align-items:flex-start}:host.align-center{align-items:center}:host.padding-small{padding:var(--size-small)}:host.padding-medium{padding:var(--size-medium)}:host.padding-large{padding:var(--size-large)}:host.padding-xlarge{padding:var(--size-xlarge)}:host.padding-xxlarge{padding:var(--size-xxlarge)}:host.filled{background-color:var(--surface-light-1)}:host.filled,:host.divider{border-bottom:var(--border-width) solid var(--border-light)}.main{flex-grow:1;min-width:0}.title-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--size-xsmall);min-width:0;font:var(--card-heading-font, var(--title-04));color:var(--card-heading-color, var(--type-light-high-contrast))}:host.filled .title-row{font:var(--card-heading-font, var(--title-02))}.leading{flex-shrink:0}.actions{position:relative;z-index:var(--card-raised-z-index);display:flex;flex-shrink:0;align-items:center;gap:var(--size-small)}.expand-toggle{position:absolute;inset:0;z-index:var(--card-click-target-z-index);padding:0;border:none;background:none;cursor:pointer;transition:background-color var(--short-transition)}.expand-toggle:not(:disabled):hover{background-color:var(--black-20)}.expand-toggle:disabled{cursor:default}.expand-toggle:focus-visible{outline:var(--border-width-large) solid var(--type-light-link);outline-offset:calc(-1 * var(--border-width-large))}.expand-chevron{flex-shrink:0;transition:transform var(--medium-transition)}.expand-chevron.expanded{transform:rotate(-180deg)}.leading:not(:has(*)),.actions:not(:has(*)){display:none}.heading{min-width:0}.heading>*{display:inline;margin:0;font:inherit;color:inherit}.subheading{font:var(--body-small);color:var(--type-light-low-contrast)}\n"] }]
6119
6126
  }], ctorParameters: function () {
6120
6127
  return [{ type: CardComponent, decorators: [{
6121
6128
  type: Optional