@bcgov/nr-ngx-component-lib 0.0.69 → 0.0.71

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.
@@ -47,6 +47,9 @@ import * as i2$6 from '@angular/material/tabs';
47
47
  import { MatTabGroup, MatTabsModule } from '@angular/material/tabs';
48
48
  import * as i2$7 from '@angular/material/menu';
49
49
  import { MatMenuModule } from '@angular/material/menu';
50
+ import { provideMomentDateAdapter } from '@angular/material-moment-adapter';
51
+ import * as i2$8 from '@angular/material/datepicker';
52
+ import { MatDatepickerModule } from '@angular/material/datepicker';
50
53
  import { MatButtonModule } from '@angular/material/button';
51
54
  import { MatCheckboxModule } from '@angular/material/checkbox';
52
55
  import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
@@ -295,7 +298,7 @@ class ButtonComponent extends ConfigurationSubscriberBase {
295
298
  this.useContent = !this.hasLabel && !this.hasIconLeft && !this.hasIconRight && !this.hasIconCompact;
296
299
  }
297
300
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
298
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ButtonComponent, selector: "nrcl-button", inputs: { label: "label", icon: "icon", iconRight: "iconRight", iconCompact: "iconCompact", tooltip: "tooltip", compact: "compact", small: "small", primary: ["primary", "primary", booleanAttribute], secondary: ["secondary", "secondary", booleanAttribute], tertiary: ["tertiary", "tertiary", booleanAttribute], disabled: ["disabled", "disabled", booleanAttribute], anchor: "anchor" }, outputs: { click: "click" }, host: { properties: { "class.disabled": "disabled", "class.primary": "isPrimary", "class.secondary": "isSecondary", "class.tertiary": "isTertiary", "class.anchor": "isAnchor", "class.normal": "!isCompact && !isSmall", "class.compact": "isCompact", "class.small": "isSmall && !isCompact", "class.label": "hasLabel", "class.icon-left": "hasIconLeft", "class.icon-right": "hasIconRight", "class.icon-compact": "hasIconCompact", "class.icon-small": "isIconSmall" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if ( !isAnchor ) {\n <button\n matRipple\n [disabled]=\"disabled\"\n [matTooltip]=\"tooltipVal\"\n >\n @if ( useContent ) {\n <div class=\"content\">\n <ng-content></ng-content>\n </div>\n }\n @else {\n @if ( hasIconLeft ) {\n <nrcl-icon class=\"left\" [small]=\"isIconSmall\">{{ icon }}</nrcl-icon>\n }\n\n @if ( hasIconRight ) {\n <nrcl-icon class=\"right\" [small]=\"isIconSmall\">{{ iconRight }}</nrcl-icon>\n }\n\n @if ( hasIconCompact ) {\n <nrcl-icon class=\"compact\" [small]=\"isIconSmall\">{{ iconCompact || icon }}</nrcl-icon>\n }\n\n @if ( hasLabel ) {\n <span class=\"label\">{{ label }}</span>\n }\n }\n </button>\n}\n@else {\n <a \n [attr.href]=\"href\" \n [attr.target]=\"href && target\"\n [matTooltip]=\"tooltipVal\"\n >\n @if ( hasIconLeft ) {\n <nrcl-icon class=\"left\" [small]=\"isIconSmall\">{{ icon }}</nrcl-icon>\n }\n\n @if ( hasIconRight ) {\n <nrcl-icon class=\"right\" [small]=\"isIconSmall\">{{ iconRight }}</nrcl-icon>\n }\n\n @if ( hasIconCompact ) {\n <nrcl-icon class=\"compact\" [small]=\"isIconSmall\">{{ iconCompact || icon }}</nrcl-icon>\n }\n\n @if ( hasLabel ) {\n <span class=\"label\">{{ label }}</span>\n }\n </a>\n}", styles: ["::ng-deep :root{--nrcl-button-normal-height: 36px;--nrcl-button-normal-padding-horizontal: 16px;--nrcl-button-normal-icon-padding-horizontal: 36px;--nrcl-button-normal-font-size: var( --nrcl-font-size );--nrcl-button-normal-icon-size: var( --nrcl-icon-normal-size );--nrcl-button-small-height: 24px;--nrcl-button-small-padding-horizontal: 8px;--nrcl-button-small-icon-padding-horizontal: 24px;--nrcl-button-small-font-size: var( --nrcl-font-size-small );--nrcl-button-small-icon-size: var( --nrcl-icon-small-size );--nrcl-button-compact-height: 44px;--nrcl-button-compact-padding-horizontal: 8px;--nrcl-button-compact-font-size: var( --nrcl-font-size-small );--nrcl-button-compact-icon-size: var( --nrcl-icon-normal-size );--nrcl-button-primary-foreground-color: white;--nrcl-button-primary-background-color: #003366;--nrcl-button-primary-border-color: #003366;--nrcl-button-primary-hover-background-color: #144a89cc;--nrcl-button-primary-disabled-foreground-color: #7E7E7E;--nrcl-button-primary-disabled-background-color: #CCCCCC;--nrcl-button-primary-disabled-border-color: #CCCCCC;--nrcl-button-primary-disabled-hover-background-color: #CCCCCC;--nrcl-button-secondary-foreground-color: black;--nrcl-button-secondary-background-color: white;--nrcl-button-secondary-border-color: #003366;--nrcl-button-secondary-hover-background-color: #f5f5f5;--nrcl-button-secondary-disabled-foreground-color: #7E7E7E;--nrcl-button-secondary-disabled-background-color: #CCCCCC;--nrcl-button-secondary-disabled-border-color: #CCCCCC;--nrcl-button-secondary-disabled-hover-background-color: #CCCCCC;--nrcl-button-tertiary-foreground-color: black;--nrcl-button-tertiary-background-color: transparent;--nrcl-button-tertiary-border-color: transparent;--nrcl-button-tertiary-hover-background-color: rgba(0, 0, 0, .04);--nrcl-button-tertiary-disabled-foreground-color: #7E7E7E;--nrcl-button-tertiary-disabled-background-color: transparent;--nrcl-button-tertiary-disabled-border-color: transparent;--nrcl-button-tertiary-disabled-hover-background-color: transparent;--nrcl-button-anchor-foreground-color: #255a90;--nrcl-button-anchor-background-color: transparent;--nrcl-button-anchor-border-color: transparent;--nrcl-button-anchor-hover-foreground-color: #0000ee;--nrcl-button-anchor-hover-background-color: transparent;--nrcl-button-anchor-disabled-foreground-color: #7E7E7E;--nrcl-button-anchor-disabled-background-color: transparent;--nrcl-button-anchor-disabled-border-color: transparent;--nrcl-button-anchor-disabled-hover-background-color: transparent}:host{--nrcl-button-height: 50px;--nrcl-icon-padding: 50px;--nrcl-button-font-size: 40px;--nrcl-button-font-weight: 500;--nrcl-button-padding-left: 50px;--nrcl-button-padding-right: 50px;--nrcl-button-foreground-color: #red;--nrcl-button-background-color: #green;--nrcl-button-border-color: #yellow;--nrcl-button-hover-background-color: #blue}:host button,:host a{display:inline-flex;align-items:center;position:relative;height:var(--nrcl-button-height);min-width:var(--nrcl-button-height);width:var(--nrcl-button-width);cursor:pointer;-webkit-user-select:none;user-select:none;margin:0;padding:0;background-color:var(--nrcl-button-background-color);color:var(--nrcl-button-foreground-color);border-color:var(--nrcl-button-border-color);border-width:1px;border-style:solid;border-radius:4px}:host button:hover,:host a:hover{background-color:var(--nrcl-button-hover-background-color)}:host button .label,:host button .content,:host a .label,:host a .content{font-family:var(--nrcl-font-family);font-size:var(--nrcl-button-font-size);font-weight:var(--nrcl-button-font-weight);width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}:host button .content,:host a .content{padding-left:var(--nrcl-button-padding-left);padding-right:var(--nrcl-button-padding-right);display:flex;align-items:center}:host.normal{--nrcl-button-height: var( --nrcl-button-normal-height );--nrcl-button-padding-left: var( --nrcl-button-normal-padding-horizontal );--nrcl-button-padding-right: var( --nrcl-button-normal-padding-horizontal );--nrcl-button-font-size: var( --nrcl-button-normal-font-size );--nrcl-button-icon-size: var( --nrcl-button-normal-icon-size );--nrcl-icon-padding: var( --nrcl-button-normal-icon-padding-horizontal )}:host.small{--nrcl-button-height: var( --nrcl-button-small-height );--nrcl-button-font-size: var( --nrcl-button-small-font-size )}:host.icon-small{--nrcl-button-padding-left: var( --nrcl-button-small-padding-horizontal );--nrcl-button-padding-right: var( --nrcl-button-small-padding-horizontal );--nrcl-button-icon-size: var( --nrcl-button-small-icon-size );--nrcl-icon-padding: var( --nrcl-button-small-icon-padding-horizontal )}:host.compact{--nrcl-button-height: var( --nrcl-button-compact-height );--nrcl-button-padding-left: var( --nrcl-button-compact-padding-horizontal );--nrcl-button-padding-right: var( --nrcl-button-compact-padding-horizontal );--nrcl-button-font-size: var( --nrcl-button-compact-font-size );--nrcl-button-icon-size: var( --nrcl-button-normal-icon-size )}:host.compact button{flex-direction:column;justify-content:center}:host.label button,:host.label a{padding-left:var(--nrcl-button-padding-left);padding-right:var(--nrcl-button-padding-right)}:host.icon-left button,:host.icon-left a{--nrcl-button-padding-left: var( --nrcl-icon-padding )}:host.icon-left button .content,:host.icon-left a .content{padding-left:0}:host.icon-left button ::ng-deep .mat-icon.left,:host.icon-left button ::ng-deep nrcl-icon.left,:host.icon-left a ::ng-deep .mat-icon.left,:host.icon-left a ::ng-deep nrcl-icon.left{position:absolute;left:calc((var(--nrcl-icon-padding) - var(--nrcl-button-icon-size)) / 2 - 1px)}:host.icon-right button,:host.icon-right a{--nrcl-button-padding-right: var( --nrcl-icon-padding )}:host.icon-right button .content,:host.icon-right a .content{padding-right:0}:host.icon-right button ::ng-deep .mat-icon.right,:host.icon-right button ::ng-deep nrcl-icon.right,:host.icon-right a ::ng-deep .mat-icon.right,:host.icon-right a ::ng-deep nrcl-icon.right{position:absolute;right:calc((var(--nrcl-icon-padding) - var(--nrcl-button-icon-size)) / 2 - 1px)}:host.primary{--nrcl-button-foreground-color: var( --nrcl-button-primary-foreground-color );--nrcl-button-background-color: var( --nrcl-button-primary-background-color );--nrcl-button-border-color: var( --nrcl-button-primary-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-primary-hover-background-color )}:host.primary button{box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}:host.primary.disabled{--nrcl-button-foreground-color: var( --nrcl-button-primary-disabled-foreground-color );--nrcl-button-background-color: var( --nrcl-button-primary-disabled-background-color );--nrcl-button-border-color: var( --nrcl-button-primary-disabled-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-primary-disabled-hover-background-color )}:host.secondary{--nrcl-button-foreground-color: var( --nrcl-button-secondary-foreground-color );--nrcl-button-background-color: var( --nrcl-button-secondary-background-color );--nrcl-button-border-color: var( --nrcl-button-secondary-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-secondary-hover-background-color )}:host.secondary button{box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}:host.secondary.disabled{--nrcl-button-foreground-color: var( --nrcl-button-secondary-disabled-foreground-color );--nrcl-button-background-color: var( --nrcl-button-secondary-disabled-background-color );--nrcl-button-border-color: var( --nrcl-button-secondary-disabled-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-secondary-disabled-hover-background-color )}:host.tertiary{--nrcl-button-foreground-color: var( --nrcl-button-tertiary-foreground-color );--nrcl-button-background-color: var( --nrcl-button-tertiary-background-color );--nrcl-button-border-color: var( --nrcl-button-tertiary-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-tertiary-hover-background-color )}:host.tertiary.disabled{--nrcl-button-foreground-color: var( --nrcl-button-tertiary-disabled-foreground-color );--nrcl-button-background-color: var( --nrcl-button-tertiary-disabled-background-color );--nrcl-button-border-color: var( --nrcl-button-tertiary-disabled-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-tertiary-disabled-hover-background-color )}:host.anchor{--nrcl-button-foreground-color: var( --nrcl-button-anchor-foreground-color );--nrcl-button-background-color: var( --nrcl-button-anchor-background-color );--nrcl-button-border-color: var( --nrcl-button-anchor-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-anchor-hover-background-color );--nrcl-button-padding-left: 0;--nrcl-button-padding-right: 0;--nrcl-button-normal-height: 20px}:host.anchor a{box-sizing:border-box}:host.anchor a:hover{color:var(--nrcl-button-anchor-hover-foreground-color)}:host.anchor a .label,:host.anchor a .content{text-decoration:underline}:host.anchor.disabled{--nrcl-button-foreground-color: var( --nrcl-button-anchor-disabled-foreground-color );--nrcl-button-background-color: var( --nrcl-button-anchor-disabled-background-color );--nrcl-button-border-color: var( --nrcl-button-anchor-disabled-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-anchor-disabled-hover-background-color )}:host.disabled button,:host.disabled a{cursor:default}:host.disabled button:hover,:host.disabled a:hover{color:var(--nrcl-button-foreground-color)}\n"], dependencies: [{ kind: "directive", type: i1$1.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: IconComponent, selector: "nrcl-icon", inputs: ["small", "large"] }] }); }
301
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ButtonComponent, selector: "nrcl-button", inputs: { label: "label", icon: "icon", iconRight: "iconRight", iconCompact: "iconCompact", tooltip: "tooltip", compact: "compact", small: "small", primary: ["primary", "primary", booleanAttribute], secondary: ["secondary", "secondary", booleanAttribute], tertiary: ["tertiary", "tertiary", booleanAttribute], disabled: ["disabled", "disabled", booleanAttribute], anchor: "anchor" }, outputs: { click: "click" }, host: { properties: { "class.disabled": "disabled", "class.primary": "isPrimary", "class.secondary": "isSecondary", "class.tertiary": "isTertiary", "class.anchor": "isAnchor", "class.normal": "!isCompact && !isSmall", "class.compact": "isCompact", "class.small": "isSmall && !isCompact", "class.label": "hasLabel", "class.icon-left": "hasIconLeft", "class.icon-right": "hasIconRight", "class.icon-compact": "hasIconCompact", "class.icon-small": "isIconSmall" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if ( !isAnchor ) {\n <button\n matRipple\n [disabled]=\"disabled\"\n [matTooltip]=\"tooltipVal\"\n >\n @if ( useContent ) {\n <div class=\"content\">\n <ng-content></ng-content>\n </div>\n }\n @else {\n @if ( hasIconLeft ) {\n <nrcl-icon class=\"left\" [small]=\"isIconSmall\">{{ icon }}</nrcl-icon>\n }\n\n @if ( hasIconRight ) {\n <nrcl-icon class=\"right\" [small]=\"isIconSmall\">{{ iconRight }}</nrcl-icon>\n }\n\n @if ( hasIconCompact ) {\n <nrcl-icon class=\"compact\" [small]=\"isIconSmall\">{{ iconCompact || icon }}</nrcl-icon>\n }\n\n @if ( hasLabel ) {\n <span class=\"label\">{{ label }}</span>\n }\n }\n </button>\n}\n@else {\n <a \n [attr.href]=\"href\" \n [attr.target]=\"href && target\"\n [matTooltip]=\"tooltipVal\"\n >\n @if ( hasIconLeft ) {\n <nrcl-icon class=\"left\" [small]=\"isIconSmall\">{{ icon }}</nrcl-icon>\n }\n\n @if ( hasIconRight ) {\n <nrcl-icon class=\"right\" [small]=\"isIconSmall\">{{ iconRight }}</nrcl-icon>\n }\n\n @if ( hasIconCompact ) {\n <nrcl-icon class=\"compact\" [small]=\"isIconSmall\">{{ iconCompact || icon }}</nrcl-icon>\n }\n\n @if ( hasLabel ) {\n <span class=\"label\">{{ label }}</span>\n }\n </a>\n}", styles: ["::ng-deep :root{--nrcl-button-normal-height: 36px;--nrcl-button-normal-padding-horizontal: 16px;--nrcl-button-normal-icon-padding-horizontal: 36px;--nrcl-button-normal-font-size: var( --nrcl-font-size );--nrcl-button-normal-icon-size: var( --nrcl-icon-normal-size );--nrcl-button-small-height: 24px;--nrcl-button-small-padding-horizontal: 8px;--nrcl-button-small-icon-padding-horizontal: 24px;--nrcl-button-small-font-size: var( --nrcl-font-size-small );--nrcl-button-small-icon-size: var( --nrcl-icon-small-size );--nrcl-button-compact-height: 44px;--nrcl-button-compact-padding-horizontal: 8px;--nrcl-button-compact-font-size: var( --nrcl-font-size-small );--nrcl-button-compact-icon-size: var( --nrcl-icon-normal-size );--nrcl-button-primary-foreground-color: white;--nrcl-button-primary-background-color: #003366;--nrcl-button-primary-border-color: #003366;--nrcl-button-primary-hover-background-color: #144a89cc;--nrcl-button-primary-disabled-foreground-color: #7E7E7E;--nrcl-button-primary-disabled-background-color: #CCCCCC;--nrcl-button-primary-disabled-border-color: #CCCCCC;--nrcl-button-primary-disabled-hover-background-color: #CCCCCC;--nrcl-button-secondary-foreground-color: black;--nrcl-button-secondary-background-color: white;--nrcl-button-secondary-border-color: #003366;--nrcl-button-secondary-hover-background-color: #f5f5f5;--nrcl-button-secondary-disabled-foreground-color: #7E7E7E;--nrcl-button-secondary-disabled-background-color: #CCCCCC;--nrcl-button-secondary-disabled-border-color: #CCCCCC;--nrcl-button-secondary-disabled-hover-background-color: #CCCCCC;--nrcl-button-tertiary-foreground-color: black;--nrcl-button-tertiary-background-color: transparent;--nrcl-button-tertiary-border-color: transparent;--nrcl-button-tertiary-hover-background-color: rgba(0, 0, 0, .04);--nrcl-button-tertiary-disabled-foreground-color: #7E7E7E;--nrcl-button-tertiary-disabled-background-color: transparent;--nrcl-button-tertiary-disabled-border-color: transparent;--nrcl-button-tertiary-disabled-hover-background-color: transparent;--nrcl-button-anchor-foreground-color: #255a90;--nrcl-button-anchor-background-color: transparent;--nrcl-button-anchor-border-color: transparent;--nrcl-button-anchor-hover-foreground-color: #0000ee;--nrcl-button-anchor-hover-background-color: transparent;--nrcl-button-anchor-disabled-foreground-color: #7E7E7E;--nrcl-button-anchor-disabled-background-color: transparent;--nrcl-button-anchor-disabled-border-color: transparent;--nrcl-button-anchor-disabled-hover-background-color: transparent}:host{--nrcl-button-height: 50px;--nrcl-icon-padding: 50px;--nrcl-button-font-size: 40px;--nrcl-button-font-weight: 500;--nrcl-button-padding-left: 50px;--nrcl-button-padding-right: 50px;--nrcl-button-foreground-color: #red;--nrcl-button-background-color: #green;--nrcl-button-border-color: #yellow;--nrcl-button-hover-background-color: #blue;display:flex}:host button,:host a{display:inline-flex;align-items:center;position:relative;height:var(--nrcl-button-height);min-width:var(--nrcl-button-height);width:var(--nrcl-button-width);cursor:pointer;-webkit-user-select:none;user-select:none;margin:0;padding:0;background-color:var(--nrcl-button-background-color);color:var(--nrcl-button-foreground-color);border-color:var(--nrcl-button-border-color);border-width:1px;border-style:solid;border-radius:4px}:host button:hover,:host a:hover{background-color:var(--nrcl-button-hover-background-color)}:host button .label,:host button .content,:host a .label,:host a .content{font-family:var(--nrcl-font-family);font-size:var(--nrcl-button-font-size);font-weight:var(--nrcl-button-font-weight);width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}:host button .content,:host a .content{padding-left:var(--nrcl-button-padding-left);padding-right:var(--nrcl-button-padding-right);display:flex;align-items:center}:host.normal{--nrcl-button-height: var( --nrcl-button-normal-height );--nrcl-button-padding-left: var( --nrcl-button-normal-padding-horizontal );--nrcl-button-padding-right: var( --nrcl-button-normal-padding-horizontal );--nrcl-button-font-size: var( --nrcl-button-normal-font-size );--nrcl-button-icon-size: var( --nrcl-button-normal-icon-size );--nrcl-icon-padding: var( --nrcl-button-normal-icon-padding-horizontal )}:host.small{--nrcl-button-height: var( --nrcl-button-small-height );--nrcl-button-font-size: var( --nrcl-button-small-font-size )}:host.icon-small{--nrcl-button-padding-left: var( --nrcl-button-small-padding-horizontal );--nrcl-button-padding-right: var( --nrcl-button-small-padding-horizontal );--nrcl-button-icon-size: var( --nrcl-button-small-icon-size );--nrcl-icon-padding: var( --nrcl-button-small-icon-padding-horizontal )}:host.compact{--nrcl-button-height: var( --nrcl-button-compact-height );--nrcl-button-padding-left: var( --nrcl-button-compact-padding-horizontal );--nrcl-button-padding-right: var( --nrcl-button-compact-padding-horizontal );--nrcl-button-font-size: var( --nrcl-button-compact-font-size );--nrcl-button-icon-size: var( --nrcl-button-normal-icon-size )}:host.compact button{flex-direction:column;justify-content:center}:host.label button,:host.label a{padding-left:var(--nrcl-button-padding-left);padding-right:var(--nrcl-button-padding-right)}:host.icon-left button,:host.icon-left a{--nrcl-button-padding-left: var( --nrcl-icon-padding )}:host.icon-left button .content,:host.icon-left a .content{padding-left:0}:host.icon-left button ::ng-deep .mat-icon.left,:host.icon-left button ::ng-deep nrcl-icon.left,:host.icon-left a ::ng-deep .mat-icon.left,:host.icon-left a ::ng-deep nrcl-icon.left{position:absolute;left:calc((var(--nrcl-icon-padding) - var(--nrcl-button-icon-size)) / 2 - 1px)}:host.icon-right button,:host.icon-right a{--nrcl-button-padding-right: var( --nrcl-icon-padding )}:host.icon-right button .content,:host.icon-right a .content{padding-right:0}:host.icon-right button ::ng-deep .mat-icon.right,:host.icon-right button ::ng-deep nrcl-icon.right,:host.icon-right a ::ng-deep .mat-icon.right,:host.icon-right a ::ng-deep nrcl-icon.right{position:absolute;right:calc((var(--nrcl-icon-padding) - var(--nrcl-button-icon-size)) / 2 - 1px)}:host.primary{--nrcl-button-foreground-color: var( --nrcl-button-primary-foreground-color );--nrcl-button-background-color: var( --nrcl-button-primary-background-color );--nrcl-button-border-color: var( --nrcl-button-primary-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-primary-hover-background-color )}:host.primary button{box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}:host.primary.disabled{--nrcl-button-foreground-color: var( --nrcl-button-primary-disabled-foreground-color );--nrcl-button-background-color: var( --nrcl-button-primary-disabled-background-color );--nrcl-button-border-color: var( --nrcl-button-primary-disabled-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-primary-disabled-hover-background-color )}:host.secondary{--nrcl-button-foreground-color: var( --nrcl-button-secondary-foreground-color );--nrcl-button-background-color: var( --nrcl-button-secondary-background-color );--nrcl-button-border-color: var( --nrcl-button-secondary-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-secondary-hover-background-color )}:host.secondary button{box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}:host.secondary.disabled{--nrcl-button-foreground-color: var( --nrcl-button-secondary-disabled-foreground-color );--nrcl-button-background-color: var( --nrcl-button-secondary-disabled-background-color );--nrcl-button-border-color: var( --nrcl-button-secondary-disabled-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-secondary-disabled-hover-background-color )}:host.tertiary{--nrcl-button-foreground-color: var( --nrcl-button-tertiary-foreground-color );--nrcl-button-background-color: var( --nrcl-button-tertiary-background-color );--nrcl-button-border-color: var( --nrcl-button-tertiary-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-tertiary-hover-background-color )}:host.tertiary.disabled{--nrcl-button-foreground-color: var( --nrcl-button-tertiary-disabled-foreground-color );--nrcl-button-background-color: var( --nrcl-button-tertiary-disabled-background-color );--nrcl-button-border-color: var( --nrcl-button-tertiary-disabled-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-tertiary-disabled-hover-background-color )}:host.anchor{--nrcl-button-foreground-color: var( --nrcl-button-anchor-foreground-color );--nrcl-button-background-color: var( --nrcl-button-anchor-background-color );--nrcl-button-border-color: var( --nrcl-button-anchor-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-anchor-hover-background-color );--nrcl-button-padding-left: 0;--nrcl-button-padding-right: 0;--nrcl-button-normal-height: 20px}:host.anchor a{box-sizing:border-box}:host.anchor a:hover{color:var(--nrcl-button-anchor-hover-foreground-color)}:host.anchor a .label,:host.anchor a .content{text-decoration:underline}:host.anchor.disabled{--nrcl-button-foreground-color: var( --nrcl-button-anchor-disabled-foreground-color );--nrcl-button-background-color: var( --nrcl-button-anchor-disabled-background-color );--nrcl-button-border-color: var( --nrcl-button-anchor-disabled-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-anchor-disabled-hover-background-color )}:host.disabled button,:host.disabled a{cursor:default}:host.disabled button:hover,:host.disabled a:hover{color:var(--nrcl-button-foreground-color)}\n"], dependencies: [{ kind: "directive", type: i1$1.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: IconComponent, selector: "nrcl-icon", inputs: ["small", "large"] }] }); }
299
302
  }
300
303
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ButtonComponent, decorators: [{
301
304
  type: Component,
@@ -313,7 +316,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
313
316
  '[class.icon-right]': 'hasIconRight',
314
317
  '[class.icon-compact]': 'hasIconCompact',
315
318
  '[class.icon-small]': 'isIconSmall',
316
- }, template: "@if ( !isAnchor ) {\n <button\n matRipple\n [disabled]=\"disabled\"\n [matTooltip]=\"tooltipVal\"\n >\n @if ( useContent ) {\n <div class=\"content\">\n <ng-content></ng-content>\n </div>\n }\n @else {\n @if ( hasIconLeft ) {\n <nrcl-icon class=\"left\" [small]=\"isIconSmall\">{{ icon }}</nrcl-icon>\n }\n\n @if ( hasIconRight ) {\n <nrcl-icon class=\"right\" [small]=\"isIconSmall\">{{ iconRight }}</nrcl-icon>\n }\n\n @if ( hasIconCompact ) {\n <nrcl-icon class=\"compact\" [small]=\"isIconSmall\">{{ iconCompact || icon }}</nrcl-icon>\n }\n\n @if ( hasLabel ) {\n <span class=\"label\">{{ label }}</span>\n }\n }\n </button>\n}\n@else {\n <a \n [attr.href]=\"href\" \n [attr.target]=\"href && target\"\n [matTooltip]=\"tooltipVal\"\n >\n @if ( hasIconLeft ) {\n <nrcl-icon class=\"left\" [small]=\"isIconSmall\">{{ icon }}</nrcl-icon>\n }\n\n @if ( hasIconRight ) {\n <nrcl-icon class=\"right\" [small]=\"isIconSmall\">{{ iconRight }}</nrcl-icon>\n }\n\n @if ( hasIconCompact ) {\n <nrcl-icon class=\"compact\" [small]=\"isIconSmall\">{{ iconCompact || icon }}</nrcl-icon>\n }\n\n @if ( hasLabel ) {\n <span class=\"label\">{{ label }}</span>\n }\n </a>\n}", styles: ["::ng-deep :root{--nrcl-button-normal-height: 36px;--nrcl-button-normal-padding-horizontal: 16px;--nrcl-button-normal-icon-padding-horizontal: 36px;--nrcl-button-normal-font-size: var( --nrcl-font-size );--nrcl-button-normal-icon-size: var( --nrcl-icon-normal-size );--nrcl-button-small-height: 24px;--nrcl-button-small-padding-horizontal: 8px;--nrcl-button-small-icon-padding-horizontal: 24px;--nrcl-button-small-font-size: var( --nrcl-font-size-small );--nrcl-button-small-icon-size: var( --nrcl-icon-small-size );--nrcl-button-compact-height: 44px;--nrcl-button-compact-padding-horizontal: 8px;--nrcl-button-compact-font-size: var( --nrcl-font-size-small );--nrcl-button-compact-icon-size: var( --nrcl-icon-normal-size );--nrcl-button-primary-foreground-color: white;--nrcl-button-primary-background-color: #003366;--nrcl-button-primary-border-color: #003366;--nrcl-button-primary-hover-background-color: #144a89cc;--nrcl-button-primary-disabled-foreground-color: #7E7E7E;--nrcl-button-primary-disabled-background-color: #CCCCCC;--nrcl-button-primary-disabled-border-color: #CCCCCC;--nrcl-button-primary-disabled-hover-background-color: #CCCCCC;--nrcl-button-secondary-foreground-color: black;--nrcl-button-secondary-background-color: white;--nrcl-button-secondary-border-color: #003366;--nrcl-button-secondary-hover-background-color: #f5f5f5;--nrcl-button-secondary-disabled-foreground-color: #7E7E7E;--nrcl-button-secondary-disabled-background-color: #CCCCCC;--nrcl-button-secondary-disabled-border-color: #CCCCCC;--nrcl-button-secondary-disabled-hover-background-color: #CCCCCC;--nrcl-button-tertiary-foreground-color: black;--nrcl-button-tertiary-background-color: transparent;--nrcl-button-tertiary-border-color: transparent;--nrcl-button-tertiary-hover-background-color: rgba(0, 0, 0, .04);--nrcl-button-tertiary-disabled-foreground-color: #7E7E7E;--nrcl-button-tertiary-disabled-background-color: transparent;--nrcl-button-tertiary-disabled-border-color: transparent;--nrcl-button-tertiary-disabled-hover-background-color: transparent;--nrcl-button-anchor-foreground-color: #255a90;--nrcl-button-anchor-background-color: transparent;--nrcl-button-anchor-border-color: transparent;--nrcl-button-anchor-hover-foreground-color: #0000ee;--nrcl-button-anchor-hover-background-color: transparent;--nrcl-button-anchor-disabled-foreground-color: #7E7E7E;--nrcl-button-anchor-disabled-background-color: transparent;--nrcl-button-anchor-disabled-border-color: transparent;--nrcl-button-anchor-disabled-hover-background-color: transparent}:host{--nrcl-button-height: 50px;--nrcl-icon-padding: 50px;--nrcl-button-font-size: 40px;--nrcl-button-font-weight: 500;--nrcl-button-padding-left: 50px;--nrcl-button-padding-right: 50px;--nrcl-button-foreground-color: #red;--nrcl-button-background-color: #green;--nrcl-button-border-color: #yellow;--nrcl-button-hover-background-color: #blue}:host button,:host a{display:inline-flex;align-items:center;position:relative;height:var(--nrcl-button-height);min-width:var(--nrcl-button-height);width:var(--nrcl-button-width);cursor:pointer;-webkit-user-select:none;user-select:none;margin:0;padding:0;background-color:var(--nrcl-button-background-color);color:var(--nrcl-button-foreground-color);border-color:var(--nrcl-button-border-color);border-width:1px;border-style:solid;border-radius:4px}:host button:hover,:host a:hover{background-color:var(--nrcl-button-hover-background-color)}:host button .label,:host button .content,:host a .label,:host a .content{font-family:var(--nrcl-font-family);font-size:var(--nrcl-button-font-size);font-weight:var(--nrcl-button-font-weight);width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}:host button .content,:host a .content{padding-left:var(--nrcl-button-padding-left);padding-right:var(--nrcl-button-padding-right);display:flex;align-items:center}:host.normal{--nrcl-button-height: var( --nrcl-button-normal-height );--nrcl-button-padding-left: var( --nrcl-button-normal-padding-horizontal );--nrcl-button-padding-right: var( --nrcl-button-normal-padding-horizontal );--nrcl-button-font-size: var( --nrcl-button-normal-font-size );--nrcl-button-icon-size: var( --nrcl-button-normal-icon-size );--nrcl-icon-padding: var( --nrcl-button-normal-icon-padding-horizontal )}:host.small{--nrcl-button-height: var( --nrcl-button-small-height );--nrcl-button-font-size: var( --nrcl-button-small-font-size )}:host.icon-small{--nrcl-button-padding-left: var( --nrcl-button-small-padding-horizontal );--nrcl-button-padding-right: var( --nrcl-button-small-padding-horizontal );--nrcl-button-icon-size: var( --nrcl-button-small-icon-size );--nrcl-icon-padding: var( --nrcl-button-small-icon-padding-horizontal )}:host.compact{--nrcl-button-height: var( --nrcl-button-compact-height );--nrcl-button-padding-left: var( --nrcl-button-compact-padding-horizontal );--nrcl-button-padding-right: var( --nrcl-button-compact-padding-horizontal );--nrcl-button-font-size: var( --nrcl-button-compact-font-size );--nrcl-button-icon-size: var( --nrcl-button-normal-icon-size )}:host.compact button{flex-direction:column;justify-content:center}:host.label button,:host.label a{padding-left:var(--nrcl-button-padding-left);padding-right:var(--nrcl-button-padding-right)}:host.icon-left button,:host.icon-left a{--nrcl-button-padding-left: var( --nrcl-icon-padding )}:host.icon-left button .content,:host.icon-left a .content{padding-left:0}:host.icon-left button ::ng-deep .mat-icon.left,:host.icon-left button ::ng-deep nrcl-icon.left,:host.icon-left a ::ng-deep .mat-icon.left,:host.icon-left a ::ng-deep nrcl-icon.left{position:absolute;left:calc((var(--nrcl-icon-padding) - var(--nrcl-button-icon-size)) / 2 - 1px)}:host.icon-right button,:host.icon-right a{--nrcl-button-padding-right: var( --nrcl-icon-padding )}:host.icon-right button .content,:host.icon-right a .content{padding-right:0}:host.icon-right button ::ng-deep .mat-icon.right,:host.icon-right button ::ng-deep nrcl-icon.right,:host.icon-right a ::ng-deep .mat-icon.right,:host.icon-right a ::ng-deep nrcl-icon.right{position:absolute;right:calc((var(--nrcl-icon-padding) - var(--nrcl-button-icon-size)) / 2 - 1px)}:host.primary{--nrcl-button-foreground-color: var( --nrcl-button-primary-foreground-color );--nrcl-button-background-color: var( --nrcl-button-primary-background-color );--nrcl-button-border-color: var( --nrcl-button-primary-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-primary-hover-background-color )}:host.primary button{box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}:host.primary.disabled{--nrcl-button-foreground-color: var( --nrcl-button-primary-disabled-foreground-color );--nrcl-button-background-color: var( --nrcl-button-primary-disabled-background-color );--nrcl-button-border-color: var( --nrcl-button-primary-disabled-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-primary-disabled-hover-background-color )}:host.secondary{--nrcl-button-foreground-color: var( --nrcl-button-secondary-foreground-color );--nrcl-button-background-color: var( --nrcl-button-secondary-background-color );--nrcl-button-border-color: var( --nrcl-button-secondary-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-secondary-hover-background-color )}:host.secondary button{box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}:host.secondary.disabled{--nrcl-button-foreground-color: var( --nrcl-button-secondary-disabled-foreground-color );--nrcl-button-background-color: var( --nrcl-button-secondary-disabled-background-color );--nrcl-button-border-color: var( --nrcl-button-secondary-disabled-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-secondary-disabled-hover-background-color )}:host.tertiary{--nrcl-button-foreground-color: var( --nrcl-button-tertiary-foreground-color );--nrcl-button-background-color: var( --nrcl-button-tertiary-background-color );--nrcl-button-border-color: var( --nrcl-button-tertiary-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-tertiary-hover-background-color )}:host.tertiary.disabled{--nrcl-button-foreground-color: var( --nrcl-button-tertiary-disabled-foreground-color );--nrcl-button-background-color: var( --nrcl-button-tertiary-disabled-background-color );--nrcl-button-border-color: var( --nrcl-button-tertiary-disabled-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-tertiary-disabled-hover-background-color )}:host.anchor{--nrcl-button-foreground-color: var( --nrcl-button-anchor-foreground-color );--nrcl-button-background-color: var( --nrcl-button-anchor-background-color );--nrcl-button-border-color: var( --nrcl-button-anchor-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-anchor-hover-background-color );--nrcl-button-padding-left: 0;--nrcl-button-padding-right: 0;--nrcl-button-normal-height: 20px}:host.anchor a{box-sizing:border-box}:host.anchor a:hover{color:var(--nrcl-button-anchor-hover-foreground-color)}:host.anchor a .label,:host.anchor a .content{text-decoration:underline}:host.anchor.disabled{--nrcl-button-foreground-color: var( --nrcl-button-anchor-disabled-foreground-color );--nrcl-button-background-color: var( --nrcl-button-anchor-disabled-background-color );--nrcl-button-border-color: var( --nrcl-button-anchor-disabled-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-anchor-disabled-hover-background-color )}:host.disabled button,:host.disabled a{cursor:default}:host.disabled button:hover,:host.disabled a:hover{color:var(--nrcl-button-foreground-color)}\n"] }]
319
+ }, template: "@if ( !isAnchor ) {\n <button\n matRipple\n [disabled]=\"disabled\"\n [matTooltip]=\"tooltipVal\"\n >\n @if ( useContent ) {\n <div class=\"content\">\n <ng-content></ng-content>\n </div>\n }\n @else {\n @if ( hasIconLeft ) {\n <nrcl-icon class=\"left\" [small]=\"isIconSmall\">{{ icon }}</nrcl-icon>\n }\n\n @if ( hasIconRight ) {\n <nrcl-icon class=\"right\" [small]=\"isIconSmall\">{{ iconRight }}</nrcl-icon>\n }\n\n @if ( hasIconCompact ) {\n <nrcl-icon class=\"compact\" [small]=\"isIconSmall\">{{ iconCompact || icon }}</nrcl-icon>\n }\n\n @if ( hasLabel ) {\n <span class=\"label\">{{ label }}</span>\n }\n }\n </button>\n}\n@else {\n <a \n [attr.href]=\"href\" \n [attr.target]=\"href && target\"\n [matTooltip]=\"tooltipVal\"\n >\n @if ( hasIconLeft ) {\n <nrcl-icon class=\"left\" [small]=\"isIconSmall\">{{ icon }}</nrcl-icon>\n }\n\n @if ( hasIconRight ) {\n <nrcl-icon class=\"right\" [small]=\"isIconSmall\">{{ iconRight }}</nrcl-icon>\n }\n\n @if ( hasIconCompact ) {\n <nrcl-icon class=\"compact\" [small]=\"isIconSmall\">{{ iconCompact || icon }}</nrcl-icon>\n }\n\n @if ( hasLabel ) {\n <span class=\"label\">{{ label }}</span>\n }\n </a>\n}", styles: ["::ng-deep :root{--nrcl-button-normal-height: 36px;--nrcl-button-normal-padding-horizontal: 16px;--nrcl-button-normal-icon-padding-horizontal: 36px;--nrcl-button-normal-font-size: var( --nrcl-font-size );--nrcl-button-normal-icon-size: var( --nrcl-icon-normal-size );--nrcl-button-small-height: 24px;--nrcl-button-small-padding-horizontal: 8px;--nrcl-button-small-icon-padding-horizontal: 24px;--nrcl-button-small-font-size: var( --nrcl-font-size-small );--nrcl-button-small-icon-size: var( --nrcl-icon-small-size );--nrcl-button-compact-height: 44px;--nrcl-button-compact-padding-horizontal: 8px;--nrcl-button-compact-font-size: var( --nrcl-font-size-small );--nrcl-button-compact-icon-size: var( --nrcl-icon-normal-size );--nrcl-button-primary-foreground-color: white;--nrcl-button-primary-background-color: #003366;--nrcl-button-primary-border-color: #003366;--nrcl-button-primary-hover-background-color: #144a89cc;--nrcl-button-primary-disabled-foreground-color: #7E7E7E;--nrcl-button-primary-disabled-background-color: #CCCCCC;--nrcl-button-primary-disabled-border-color: #CCCCCC;--nrcl-button-primary-disabled-hover-background-color: #CCCCCC;--nrcl-button-secondary-foreground-color: black;--nrcl-button-secondary-background-color: white;--nrcl-button-secondary-border-color: #003366;--nrcl-button-secondary-hover-background-color: #f5f5f5;--nrcl-button-secondary-disabled-foreground-color: #7E7E7E;--nrcl-button-secondary-disabled-background-color: #CCCCCC;--nrcl-button-secondary-disabled-border-color: #CCCCCC;--nrcl-button-secondary-disabled-hover-background-color: #CCCCCC;--nrcl-button-tertiary-foreground-color: black;--nrcl-button-tertiary-background-color: transparent;--nrcl-button-tertiary-border-color: transparent;--nrcl-button-tertiary-hover-background-color: rgba(0, 0, 0, .04);--nrcl-button-tertiary-disabled-foreground-color: #7E7E7E;--nrcl-button-tertiary-disabled-background-color: transparent;--nrcl-button-tertiary-disabled-border-color: transparent;--nrcl-button-tertiary-disabled-hover-background-color: transparent;--nrcl-button-anchor-foreground-color: #255a90;--nrcl-button-anchor-background-color: transparent;--nrcl-button-anchor-border-color: transparent;--nrcl-button-anchor-hover-foreground-color: #0000ee;--nrcl-button-anchor-hover-background-color: transparent;--nrcl-button-anchor-disabled-foreground-color: #7E7E7E;--nrcl-button-anchor-disabled-background-color: transparent;--nrcl-button-anchor-disabled-border-color: transparent;--nrcl-button-anchor-disabled-hover-background-color: transparent}:host{--nrcl-button-height: 50px;--nrcl-icon-padding: 50px;--nrcl-button-font-size: 40px;--nrcl-button-font-weight: 500;--nrcl-button-padding-left: 50px;--nrcl-button-padding-right: 50px;--nrcl-button-foreground-color: #red;--nrcl-button-background-color: #green;--nrcl-button-border-color: #yellow;--nrcl-button-hover-background-color: #blue;display:flex}:host button,:host a{display:inline-flex;align-items:center;position:relative;height:var(--nrcl-button-height);min-width:var(--nrcl-button-height);width:var(--nrcl-button-width);cursor:pointer;-webkit-user-select:none;user-select:none;margin:0;padding:0;background-color:var(--nrcl-button-background-color);color:var(--nrcl-button-foreground-color);border-color:var(--nrcl-button-border-color);border-width:1px;border-style:solid;border-radius:4px}:host button:hover,:host a:hover{background-color:var(--nrcl-button-hover-background-color)}:host button .label,:host button .content,:host a .label,:host a .content{font-family:var(--nrcl-font-family);font-size:var(--nrcl-button-font-size);font-weight:var(--nrcl-button-font-weight);width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}:host button .content,:host a .content{padding-left:var(--nrcl-button-padding-left);padding-right:var(--nrcl-button-padding-right);display:flex;align-items:center}:host.normal{--nrcl-button-height: var( --nrcl-button-normal-height );--nrcl-button-padding-left: var( --nrcl-button-normal-padding-horizontal );--nrcl-button-padding-right: var( --nrcl-button-normal-padding-horizontal );--nrcl-button-font-size: var( --nrcl-button-normal-font-size );--nrcl-button-icon-size: var( --nrcl-button-normal-icon-size );--nrcl-icon-padding: var( --nrcl-button-normal-icon-padding-horizontal )}:host.small{--nrcl-button-height: var( --nrcl-button-small-height );--nrcl-button-font-size: var( --nrcl-button-small-font-size )}:host.icon-small{--nrcl-button-padding-left: var( --nrcl-button-small-padding-horizontal );--nrcl-button-padding-right: var( --nrcl-button-small-padding-horizontal );--nrcl-button-icon-size: var( --nrcl-button-small-icon-size );--nrcl-icon-padding: var( --nrcl-button-small-icon-padding-horizontal )}:host.compact{--nrcl-button-height: var( --nrcl-button-compact-height );--nrcl-button-padding-left: var( --nrcl-button-compact-padding-horizontal );--nrcl-button-padding-right: var( --nrcl-button-compact-padding-horizontal );--nrcl-button-font-size: var( --nrcl-button-compact-font-size );--nrcl-button-icon-size: var( --nrcl-button-normal-icon-size )}:host.compact button{flex-direction:column;justify-content:center}:host.label button,:host.label a{padding-left:var(--nrcl-button-padding-left);padding-right:var(--nrcl-button-padding-right)}:host.icon-left button,:host.icon-left a{--nrcl-button-padding-left: var( --nrcl-icon-padding )}:host.icon-left button .content,:host.icon-left a .content{padding-left:0}:host.icon-left button ::ng-deep .mat-icon.left,:host.icon-left button ::ng-deep nrcl-icon.left,:host.icon-left a ::ng-deep .mat-icon.left,:host.icon-left a ::ng-deep nrcl-icon.left{position:absolute;left:calc((var(--nrcl-icon-padding) - var(--nrcl-button-icon-size)) / 2 - 1px)}:host.icon-right button,:host.icon-right a{--nrcl-button-padding-right: var( --nrcl-icon-padding )}:host.icon-right button .content,:host.icon-right a .content{padding-right:0}:host.icon-right button ::ng-deep .mat-icon.right,:host.icon-right button ::ng-deep nrcl-icon.right,:host.icon-right a ::ng-deep .mat-icon.right,:host.icon-right a ::ng-deep nrcl-icon.right{position:absolute;right:calc((var(--nrcl-icon-padding) - var(--nrcl-button-icon-size)) / 2 - 1px)}:host.primary{--nrcl-button-foreground-color: var( --nrcl-button-primary-foreground-color );--nrcl-button-background-color: var( --nrcl-button-primary-background-color );--nrcl-button-border-color: var( --nrcl-button-primary-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-primary-hover-background-color )}:host.primary button{box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}:host.primary.disabled{--nrcl-button-foreground-color: var( --nrcl-button-primary-disabled-foreground-color );--nrcl-button-background-color: var( --nrcl-button-primary-disabled-background-color );--nrcl-button-border-color: var( --nrcl-button-primary-disabled-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-primary-disabled-hover-background-color )}:host.secondary{--nrcl-button-foreground-color: var( --nrcl-button-secondary-foreground-color );--nrcl-button-background-color: var( --nrcl-button-secondary-background-color );--nrcl-button-border-color: var( --nrcl-button-secondary-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-secondary-hover-background-color )}:host.secondary button{box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}:host.secondary.disabled{--nrcl-button-foreground-color: var( --nrcl-button-secondary-disabled-foreground-color );--nrcl-button-background-color: var( --nrcl-button-secondary-disabled-background-color );--nrcl-button-border-color: var( --nrcl-button-secondary-disabled-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-secondary-disabled-hover-background-color )}:host.tertiary{--nrcl-button-foreground-color: var( --nrcl-button-tertiary-foreground-color );--nrcl-button-background-color: var( --nrcl-button-tertiary-background-color );--nrcl-button-border-color: var( --nrcl-button-tertiary-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-tertiary-hover-background-color )}:host.tertiary.disabled{--nrcl-button-foreground-color: var( --nrcl-button-tertiary-disabled-foreground-color );--nrcl-button-background-color: var( --nrcl-button-tertiary-disabled-background-color );--nrcl-button-border-color: var( --nrcl-button-tertiary-disabled-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-tertiary-disabled-hover-background-color )}:host.anchor{--nrcl-button-foreground-color: var( --nrcl-button-anchor-foreground-color );--nrcl-button-background-color: var( --nrcl-button-anchor-background-color );--nrcl-button-border-color: var( --nrcl-button-anchor-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-anchor-hover-background-color );--nrcl-button-padding-left: 0;--nrcl-button-padding-right: 0;--nrcl-button-normal-height: 20px}:host.anchor a{box-sizing:border-box}:host.anchor a:hover{color:var(--nrcl-button-anchor-hover-foreground-color)}:host.anchor a .label,:host.anchor a .content{text-decoration:underline}:host.anchor.disabled{--nrcl-button-foreground-color: var( --nrcl-button-anchor-disabled-foreground-color );--nrcl-button-background-color: var( --nrcl-button-anchor-disabled-background-color );--nrcl-button-border-color: var( --nrcl-button-anchor-disabled-border-color );--nrcl-button-hover-background-color: var( --nrcl-button-anchor-disabled-hover-background-color )}:host.disabled button,:host.disabled a{cursor:default}:host.disabled button:hover,:host.disabled a:hover{color:var(--nrcl-button-foreground-color)}\n"] }]
317
320
  }], propDecorators: { label: [{
318
321
  type: Input
319
322
  }], icon: [{
@@ -2477,8 +2480,9 @@ class ScheduleComponent extends RowListBase {
2477
2480
  super.ngAfterViewInit();
2478
2481
  }
2479
2482
  loadRowList() {
2483
+ // if ( !this.provider?.startloadSchedule ) throw Error( 'ScheduleComponent.provider.startloadSchedule not set' )
2480
2484
  if (!this.provider?.startloadSchedule)
2481
- throw Error('ScheduleComponent.provider.startloadSchedule not set');
2485
+ return super.loadRowList();
2482
2486
  return this.provider.startloadSchedule(() => { return super.loadRowList(); });
2483
2487
  }
2484
2488
  fetchRowListPage() {
@@ -2503,8 +2507,9 @@ class ScheduleComponent extends RowListBase {
2503
2507
  return this.provider.getInitialPageState();
2504
2508
  }
2505
2509
  completedRowListPage() {
2510
+ // if ( !this.provider?.completedLoadSchedule ) throw Error( 'ScheduleComponent.provider.completedRowListPage not set' )
2506
2511
  if (!this.provider?.completedLoadSchedule)
2507
- throw Error('ScheduleComponent.provider.completedRowListPage not set');
2512
+ return super.completedRowListPage();
2508
2513
  return this.provider.completedLoadSchedule(() => { return super.completedRowListPage(); });
2509
2514
  }
2510
2515
  onSamePageFilterChange(ev) {
@@ -2552,6 +2557,8 @@ class ScheduleComponent extends RowListBase {
2552
2557
  this._templates[i] = Array.from({ length: this.dayCount });
2553
2558
  return {
2554
2559
  id: row.id ?? String(i),
2560
+ rowClass: row.rowClass,
2561
+ metadata: row.metadata,
2555
2562
  heading: row.heading,
2556
2563
  items: row.items
2557
2564
  .then(rowItems => {
@@ -2570,13 +2577,13 @@ class ScheduleComponent extends RowListBase {
2570
2577
  }) || [];
2571
2578
  }
2572
2579
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScheduleComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
2573
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ScheduleComponent, selector: "nrcl-schedule", inputs: { provider: "provider", startDate: "startDate", weekStart: ["weekStart", "weekStart", numberAttribute], dayCount: ["dayCount", "dayCount", numberAttribute], menu: "menu", hover: "hover", pagination: "pagination", heading: "heading", highlightDate: "highlightDate" }, host: { properties: { "style.--nrcl-schedule-day-count": "this.dayCount" } }, queries: [{ propertyName: "headerTemplate", first: true, predicate: ScheduleRowHeadingDirective, descendants: true }, { propertyName: "itemTemplates", predicate: ScheduleItemDirective }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if ( rows?.length > 0 ) {\n <div class=\"schedule\"\n [class.heading]=\"heading\"\n >\n @if ( heading ) {\n <div class=\"upper-left\">\n <ng-content></ng-content>\n </div>\n }\n\n <div class=\"row weeks\">\n @for ( week of _weeks; track $index ) {\n @if ( week.span == 1 ) {\n <div class=\"week\">\n {{ week.start }}\n </div>\n }\n @else {\n <div class=\"week\" [style.grid-column]=\"'span ' + week.span\">\n {{ week.start }} - {{ week.end }}\n </div>\n }\n }\n </div>\n\n <div class=\"row days\"> \n @for ( day of _days; track $index ) {\n <div class=\"day\"\n [class.weekend]=\"day.isWeekend\"\n [class.today]=\"day.isToday\"\n [class.first]=\"day.isFirst\"\n [class.highlight]=\"day.isHighlight\"\n >\n <div class=\"day-name\">{{ day.dayName }}</div>\n <div class=\"date\">{{ day.monthDay }}</div>\n </div>\n }\n </div>\n\n @for ( row of rows | paginate: paginateState( 'nrcl-schedule' ); track row.id; let rowIndex = $index ) {\n <div class=\"row items\">\n @if ( heading ) {\n <div class=\"outer heading\">\n <div class=\"inner heading\">\n <ng-container \n [ngTemplateOutlet]=\"headerTemplate?.template\" \n [ngTemplateOutletContext]=\"{ $implicit: row.heading }\" \n ></ng-container>\n </div>\n </div> \n }\n\n @if ( row.items | async; as rowItems ) {\n @for ( item of rowItems; track item.id; let colIndex = $index ) {\n <div class=\"outer item\"\n [class.menu-open]=\"itemMenu.menuOpen\"\n [class.highlight]=\"_days[ colIndex ].isHighlight\"\n [class.hover]=\"hover\"\n >\n <div class=\"inner item\" #itemMenu=\"matMenuTrigger\"\n [class]=\"'item-' + item.name\" \n matRipple\n [matRippleDisabled]=\"!hover\"\n [matMenuTriggerFor]=\"menu\"\n [matMenuTriggerData]=\"{ $implicit: { item: item, heading: row.heading } }\"\n [matTooltip]=\"item?.tooltip?.()\"\n matTooltipClass=\"nrcl-schedule-multiline\"\n [class.travel]=\"item?.travel\"\n >\n <ng-container \n [ngTemplateOutlet]=\"_templates[ rowIndex ][ colIndex ] || empty\" \n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-container>\n \n @let icons = item?.icons?.();\n @if ( icons && icons.length > 0 ) {\n <div class=\"icons\">\n @for ( icon of icons; track icon ) {\n <nrcl-icon small>{{ icon }}</nrcl-icon>\n } \n </div>\n }\n </div>\n </div>\n }\n }\n @else {\n @for ( day of _days; track day ) {\n <div class=\"item item-loading\"></div>\n }\n }\n </div>\n }\n </div>\n}\n\n@if ( rows?.length > 0 && pagination ) {\n <nrcl-gap/>\n}\n\n@if ( pagination ) {\n <nrcl-row-list-pagination\n paginationId=\"nrcl-schedule\"\n [pageSize]=\"pageSize\"\n [pageNumber]=\"pageNumber\"\n [rowCount]=\"totalRowCount\"\n (pageNumberChange)=\"onPageNumberChange( $event )\"\n (pageSizeChange)=\"onPageSizeChange( $event )\"\n ></nrcl-row-list-pagination>\n}\n\n<ng-template #empty>\n</ng-template>\n", styles: ["::ng-deep :root{--nrcl-schedule-border-color: #c6c8cb;--nrcl-schedule-background-color: white;--nrcl-schedule-alternate-background-color: #f2f2f2;--nrcl-schedule-hover-background-color: #d7d7d7;--nrcl-schedule-row-weeks-height: 30px;--nrcl-schedule-row-weeks-font-size: 15px;--nrcl-schedule-row-weeks-font-weight: bold;--nrcl-schedule-row-weeks-foreground-color: black;--nrcl-schedule-row-days-height: 45px;--nrcl-schedule-row-days-font-size: 15px;--nrcl-schedule-row-days-font-weight: normal;--nrcl-schedule-row-days-foreground-color: black;--nrcl-schedule-row-days-weekend-background-color: #e0f8fc;--nrcl-schedule-row-days-today-background-color: #fcf8d9;--nrcl-schedule-row-days-highlight-background-color: #eafce8;--nrcl-schedule-row-schedule-height: 70px;--nrcl-schedule-heading-width: 300px;--nrcl-schedule-item-width: 80px}:host{display:flex;flex-direction:column;font-family:var(--nrcl-font-family)}:host .schedule{display:grid;grid-template-columns:repeat(var(--nrcl-schedule-day-count),var(--nrcl-schedule-item-width));overflow:auto;height:100%;flex-grow:1}:host .schedule.heading{grid-template-columns:var(--nrcl-schedule-heading-width) repeat(var(--nrcl-schedule-day-count),var(--nrcl-schedule-item-width))}:host .schedule.heading .upper-left{grid-row:1/span 2;grid-column:1;border-bottom:1px solid var(--nrcl-schedule-border-color);position:sticky;top:0;left:0;z-index:2;background:var(--nrcl-schedule-background-color)}:host .schedule.heading .row .outer.heading{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule.heading .row.items .outer.heading{box-sizing:border-box;cursor:default;position:sticky;left:0;z-index:1;height:var(--nrcl-schedule-row-schedule-height)}:host .schedule.heading .row.items .outer.heading .heading{flex-grow:1;cursor:default;height:100%}:host .schedule .row{display:contents}:host .schedule .row.weeks>*{height:var(--nrcl-schedule-row-weeks-height)}:host .schedule .row.weeks>*:first-child{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row.days>*{height:var(--nrcl-schedule-row-days-height)}:host .schedule .row.days>*:first-child{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.heading,:host .schedule .row .day,:host .schedule .row .week{border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.item:last-child{border-right:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row:last-child .outer.item{border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .week{border-top:1px solid var(--nrcl-schedule-border-color);display:flex;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-weeks-font-size);font-weight:var(--nrcl-schedule-row-weeks-font-weight);color:var(--nrcl-schedule-row-weeks-foreground-color);position:sticky;top:0;background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day{display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-days-font-size);font-weight:var(--nrcl-schedule-row-days-font-weight);color:var(--nrcl-schedule-row-days-foreground-color);position:sticky;top:calc(var(--nrcl-schedule-row-weeks-height) + 2px);background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day .day-name{font-size:13px}:host .schedule .row .day.weekend{background-color:var(--nrcl-schedule-row-days-weekend-background-color)}:host .schedule .row .day.today{background-color:var(--nrcl-schedule-row-days-today-background-color)}:host .schedule .row .day.highlight{background-color:var(--nrcl-schedule-row-days-highlight-background-color)}:host .schedule .row .day.first:after{content:\"\";position:absolute;top:0;left:0;bottom:0;border-left:2px solid black}:host .schedule .row.items .outer.item{box-sizing:border-box;height:var(--nrcl-schedule-row-schedule-height);display:flex;flex-direction:column;justify-content:stretch;align-items:stretch;border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row.items .outer.item:first-child{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row.items .outer.item.hover:hover .item{background-color:#06e;color:#fff}:host .schedule .row.items .outer.item.menu-open .item{background-color:#036;color:#fff}:host .schedule .row.items .outer.item .item{flex-grow:1;cursor:pointer;position:relative;padding:4px 4px 8px}:host .schedule .row.items .outer.item .item .icons{position:absolute;right:2px;bottom:2px;display:flex;gap:2px;background-color:#f1ebe4;border-radius:4px;padding:3px;color:var(--nrcl-schedule-row-days-foreground-color)}:host .schedule .row.items .outer.item .item.travel{position:relative}:host .schedule .row.items .outer.item .item.travel:after{content:\"\";position:absolute;inset:0 0 2px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAABAQMAAAD+YPzoAAAABlBMVEX///8AAABVwtN+AAAAAnRSTlP/AOW3MEoAAAAMSURBVHicY+BwEgAAALAAW97nJhUAAAAASUVORK5CYII=);background-repeat:no-repeat;background-size:calc(100% - 8px) 3px;background-position:bottom}:host .schedule .row:nth-child(odd) .outer{background-color:var(--nrcl-schedule-background-color)}:host .schedule .row:nth-child(2n) .outer{background-color:var(--nrcl-schedule-alternate-background-color)}:host .schedule .row:hover .outer{background-color:var(--nrcl-schedule-hover-background-color)}.empty{height:100%;display:flex;justify-content:center;align-items:center;color:#aaa}::ng-deep .cdk-overlay-container .nrcl-schedule-multiline .mdc-tooltip__surface{white-space:pre-line;max-width:unset;text-align:left}\n"], dependencies: [{ kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2$7.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i1$1.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: GapComponent, selector: "nrcl-gap", inputs: ["horizontal", "vertical", "divider"] }, { kind: "component", type: RowListPaginationComponent, selector: "nrcl-row-list-pagination", inputs: ["paginationId", "pageSizeOptions", "pageSize", "pageNumber", "rowCount", "showPageSize", "noRowsMessage"], outputs: ["pageSizeChange", "pageNumberChange"] }, { kind: "component", type: IconComponent, selector: "nrcl-icon", inputs: ["small", "large"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$6.PaginatePipe, name: "paginate" }] }); }
2580
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ScheduleComponent, selector: "nrcl-schedule", inputs: { provider: "provider", startDate: "startDate", weekStart: ["weekStart", "weekStart", numberAttribute], dayCount: ["dayCount", "dayCount", numberAttribute], menu: "menu", hover: "hover", pagination: "pagination", heading: "heading", highlightDate: "highlightDate" }, host: { properties: { "style.--nrcl-schedule-day-count": "this.dayCount" } }, queries: [{ propertyName: "headerTemplate", first: true, predicate: ScheduleRowHeadingDirective, descendants: true }, { propertyName: "itemTemplates", predicate: ScheduleItemDirective }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if ( rows?.length > 0 ) {\n <div class=\"schedule\"\n [class.heading]=\"heading\"\n >\n @if ( heading ) {\n <div class=\"upper-left\">\n <ng-content></ng-content>\n </div>\n }\n\n <div class=\"row weeks\">\n @for ( week of _weeks; track $index ) {\n @if ( week.span == 1 ) {\n <div class=\"week\">\n {{ week.start }}\n </div>\n }\n @else {\n <div class=\"week\" [style.grid-column]=\"'span ' + week.span\">\n {{ week.start }} - {{ week.end }}\n </div>\n }\n }\n </div>\n\n <div class=\"row days\"> \n @for ( day of _days; track $index ) {\n <div class=\"day\"\n [class.weekend]=\"day.isWeekend\"\n [class.today]=\"day.isToday\"\n [class.first]=\"day.isFirst\"\n [class.highlight]=\"day.isHighlight\"\n >\n <div class=\"day-name\">{{ day.dayName }}</div>\n <div class=\"date\">{{ day.monthDay }}</div>\n </div>\n }\n </div>\n\n @for ( row of rows | paginate: paginateState( 'nrcl-schedule' ); track row.id; let rowIndex = $index ) {\n <div class=\"row items\" [class]=\"row.rowClass\">\n @if ( heading ) {\n <div class=\"outer heading\">\n <div class=\"inner heading\">\n <ng-container \n [ngTemplateOutlet]=\"headerTemplate?.template\" \n [ngTemplateOutletContext]=\"{ $implicit: { heading: row.heading, metadata: row.metadata } }\"\n ></ng-container>\n </div>\n </div> \n }\n\n @if ( row.items | async; as rowItems ) {\n @for ( item of rowItems; track item.id; let colIndex = $index ) {\n <div class=\"outer item\"\n [class.menu-open]=\"itemMenu.menuOpen\"\n [class.highlight]=\"_days[ colIndex ].isHighlight\"\n [class.hover]=\"hover\"\n >\n <div class=\"inner item\" #itemMenu=\"matMenuTrigger\"\n [class]=\"'item-' + item.name\" \n matRipple\n [matRippleDisabled]=\"!hover\"\n [matMenuTriggerFor]=\"menu\"\n [matMenuTriggerData]=\"{ $implicit: { heading: row.heading, metadata: row.metadata, item: item } }\"\n [matTooltip]=\"item?.tooltip?.()\"\n matTooltipClass=\"nrcl-schedule-multiline\"\n [class.travel]=\"item?.travel\"\n >\n <ng-container \n [ngTemplateOutlet]=\"_templates[ rowIndex ][ colIndex ] || empty\" \n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-container>\n \n @let icons = item?.icons?.();\n @if ( icons && icons.length > 0 ) {\n <div class=\"icons\">\n @for ( icon of icons; track icon ) {\n <nrcl-icon small>{{ icon }}</nrcl-icon>\n } \n </div>\n }\n </div>\n </div>\n }\n }\n @else {\n @for ( day of _days; track day ) {\n <div class=\"item item-loading\"></div>\n }\n }\n </div>\n }\n </div>\n}\n\n@if ( rows?.length > 0 && pagination ) {\n <nrcl-gap/>\n}\n\n@if ( pagination ) {\n <nrcl-row-list-pagination\n paginationId=\"nrcl-schedule\"\n [pageSize]=\"pageSize\"\n [pageNumber]=\"pageNumber\"\n [rowCount]=\"totalRowCount\"\n (pageNumberChange)=\"onPageNumberChange( $event )\"\n (pageSizeChange)=\"onPageSizeChange( $event )\"\n ></nrcl-row-list-pagination>\n}\n\n<ng-template #empty>\n</ng-template>\n", styles: ["::ng-deep :root{--nrcl-schedule-border-color: #c6c8cb;--nrcl-schedule-background-color: white;--nrcl-schedule-alternate-background-color: #f2f2f2;--nrcl-schedule-hover-background-color: #d7d7d7;--nrcl-schedule-row-weeks-height: 30px;--nrcl-schedule-row-weeks-font-size: 15px;--nrcl-schedule-row-weeks-font-weight: bold;--nrcl-schedule-row-weeks-foreground-color: black;--nrcl-schedule-row-days-height: 45px;--nrcl-schedule-row-days-font-size: 15px;--nrcl-schedule-row-days-font-weight: normal;--nrcl-schedule-row-days-foreground-color: black;--nrcl-schedule-row-days-weekend-background-color: #e0f8fc;--nrcl-schedule-row-days-today-background-color: #fcf8d9;--nrcl-schedule-row-days-highlight-background-color: #eafce8;--nrcl-schedule-row-schedule-height: 70px;--nrcl-schedule-heading-width: 300px;--nrcl-schedule-item-width: 80px}:host{display:flex;flex-direction:column;font-family:var(--nrcl-font-family)}:host .schedule{display:grid;grid-template-columns:repeat(var(--nrcl-schedule-day-count),var(--nrcl-schedule-item-width));overflow:auto;height:100%;flex-grow:1}:host .schedule.heading{grid-template-columns:var(--nrcl-schedule-heading-width) repeat(var(--nrcl-schedule-day-count),var(--nrcl-schedule-item-width))}:host .schedule.heading .upper-left{grid-row:1/span 2;grid-column:1;border-bottom:1px solid var(--nrcl-schedule-border-color);position:sticky;top:0;left:0;z-index:2;background:var(--nrcl-schedule-background-color)}:host .schedule.heading .row .outer.heading{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule.heading .row.items .outer.heading{box-sizing:border-box;cursor:default;position:sticky;left:0;z-index:1;height:var(--nrcl-schedule-row-schedule-height)}:host .schedule.heading .row.items .outer.heading .heading{flex-grow:1;cursor:default;height:100%}:host .schedule .row{display:contents}:host .schedule .row.weeks>*{height:var(--nrcl-schedule-row-weeks-height)}:host .schedule .row.weeks>*:first-child{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row.days>*{height:var(--nrcl-schedule-row-days-height)}:host .schedule .row.days>*:first-child{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.heading,:host .schedule .row .day,:host .schedule .row .week{border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.item:last-child{border-right:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row:last-child .outer.item{border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .week{border-top:1px solid var(--nrcl-schedule-border-color);display:flex;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-weeks-font-size);font-weight:var(--nrcl-schedule-row-weeks-font-weight);color:var(--nrcl-schedule-row-weeks-foreground-color);position:sticky;top:0;background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day{display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-days-font-size);font-weight:var(--nrcl-schedule-row-days-font-weight);color:var(--nrcl-schedule-row-days-foreground-color);position:sticky;top:calc(var(--nrcl-schedule-row-weeks-height) + 2px);background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day .day-name{font-size:13px}:host .schedule .row .day.weekend{background-color:var(--nrcl-schedule-row-days-weekend-background-color)}:host .schedule .row .day.today{background-color:var(--nrcl-schedule-row-days-today-background-color)}:host .schedule .row .day.highlight{background-color:var(--nrcl-schedule-row-days-highlight-background-color)}:host .schedule .row .day.first:after{content:\"\";position:absolute;top:0;left:0;bottom:0;border-left:2px solid black}:host .schedule .row.items .outer.item{box-sizing:border-box;height:var(--nrcl-schedule-row-schedule-height);display:flex;flex-direction:column;justify-content:stretch;align-items:stretch;border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row.items .outer.item:first-child{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row.items .outer.item.hover:hover .item{background-color:#06e;color:#fff}:host .schedule .row.items .outer.item.menu-open .item{background-color:#036;color:#fff}:host .schedule .row.items .outer.item .item{flex-grow:1;cursor:pointer;position:relative;padding:4px 4px 8px}:host .schedule .row.items .outer.item .item .icons{position:absolute;right:2px;bottom:2px;display:flex;gap:2px;background-color:#f1ebe4;border-radius:4px;padding:3px;color:var(--nrcl-schedule-row-days-foreground-color)}:host .schedule .row.items .outer.item .item.travel{position:relative}:host .schedule .row.items .outer.item .item.travel:after{content:\"\";position:absolute;inset:0 0 2px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAABAQMAAAD+YPzoAAAABlBMVEX///8AAABVwtN+AAAAAnRSTlP/AOW3MEoAAAAMSURBVHicY+BwEgAAALAAW97nJhUAAAAASUVORK5CYII=);background-repeat:no-repeat;background-size:calc(100% - 8px) 3px;background-position:bottom}:host .schedule .row:nth-child(odd) .outer{background-color:var(--nrcl-schedule-background-color)}:host .schedule .row:nth-child(2n) .outer{background-color:var(--nrcl-schedule-alternate-background-color)}:host .schedule .row:hover .outer{background-color:var(--nrcl-schedule-hover-background-color)}.empty{height:100%;display:flex;justify-content:center;align-items:center;color:#aaa}::ng-deep .cdk-overlay-container .nrcl-schedule-multiline .mdc-tooltip__surface{white-space:pre-line;max-width:unset;text-align:left}\n"], dependencies: [{ kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2$7.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i1$1.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: GapComponent, selector: "nrcl-gap", inputs: ["horizontal", "vertical", "divider"] }, { kind: "component", type: RowListPaginationComponent, selector: "nrcl-row-list-pagination", inputs: ["paginationId", "pageSizeOptions", "pageSize", "pageNumber", "rowCount", "showPageSize", "noRowsMessage"], outputs: ["pageSizeChange", "pageNumberChange"] }, { kind: "component", type: IconComponent, selector: "nrcl-icon", inputs: ["small", "large"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$6.PaginatePipe, name: "paginate" }] }); }
2574
2581
  }
2575
2582
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScheduleComponent, decorators: [{
2576
2583
  type: Component,
2577
2584
  args: [{ selector: 'nrcl-schedule', host: {
2578
2585
  '[style.--nrcl-schedule-day-count]': 'this.dayCount'
2579
- }, template: "@if ( rows?.length > 0 ) {\n <div class=\"schedule\"\n [class.heading]=\"heading\"\n >\n @if ( heading ) {\n <div class=\"upper-left\">\n <ng-content></ng-content>\n </div>\n }\n\n <div class=\"row weeks\">\n @for ( week of _weeks; track $index ) {\n @if ( week.span == 1 ) {\n <div class=\"week\">\n {{ week.start }}\n </div>\n }\n @else {\n <div class=\"week\" [style.grid-column]=\"'span ' + week.span\">\n {{ week.start }} - {{ week.end }}\n </div>\n }\n }\n </div>\n\n <div class=\"row days\"> \n @for ( day of _days; track $index ) {\n <div class=\"day\"\n [class.weekend]=\"day.isWeekend\"\n [class.today]=\"day.isToday\"\n [class.first]=\"day.isFirst\"\n [class.highlight]=\"day.isHighlight\"\n >\n <div class=\"day-name\">{{ day.dayName }}</div>\n <div class=\"date\">{{ day.monthDay }}</div>\n </div>\n }\n </div>\n\n @for ( row of rows | paginate: paginateState( 'nrcl-schedule' ); track row.id; let rowIndex = $index ) {\n <div class=\"row items\">\n @if ( heading ) {\n <div class=\"outer heading\">\n <div class=\"inner heading\">\n <ng-container \n [ngTemplateOutlet]=\"headerTemplate?.template\" \n [ngTemplateOutletContext]=\"{ $implicit: row.heading }\" \n ></ng-container>\n </div>\n </div> \n }\n\n @if ( row.items | async; as rowItems ) {\n @for ( item of rowItems; track item.id; let colIndex = $index ) {\n <div class=\"outer item\"\n [class.menu-open]=\"itemMenu.menuOpen\"\n [class.highlight]=\"_days[ colIndex ].isHighlight\"\n [class.hover]=\"hover\"\n >\n <div class=\"inner item\" #itemMenu=\"matMenuTrigger\"\n [class]=\"'item-' + item.name\" \n matRipple\n [matRippleDisabled]=\"!hover\"\n [matMenuTriggerFor]=\"menu\"\n [matMenuTriggerData]=\"{ $implicit: { item: item, heading: row.heading } }\"\n [matTooltip]=\"item?.tooltip?.()\"\n matTooltipClass=\"nrcl-schedule-multiline\"\n [class.travel]=\"item?.travel\"\n >\n <ng-container \n [ngTemplateOutlet]=\"_templates[ rowIndex ][ colIndex ] || empty\" \n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-container>\n \n @let icons = item?.icons?.();\n @if ( icons && icons.length > 0 ) {\n <div class=\"icons\">\n @for ( icon of icons; track icon ) {\n <nrcl-icon small>{{ icon }}</nrcl-icon>\n } \n </div>\n }\n </div>\n </div>\n }\n }\n @else {\n @for ( day of _days; track day ) {\n <div class=\"item item-loading\"></div>\n }\n }\n </div>\n }\n </div>\n}\n\n@if ( rows?.length > 0 && pagination ) {\n <nrcl-gap/>\n}\n\n@if ( pagination ) {\n <nrcl-row-list-pagination\n paginationId=\"nrcl-schedule\"\n [pageSize]=\"pageSize\"\n [pageNumber]=\"pageNumber\"\n [rowCount]=\"totalRowCount\"\n (pageNumberChange)=\"onPageNumberChange( $event )\"\n (pageSizeChange)=\"onPageSizeChange( $event )\"\n ></nrcl-row-list-pagination>\n}\n\n<ng-template #empty>\n</ng-template>\n", styles: ["::ng-deep :root{--nrcl-schedule-border-color: #c6c8cb;--nrcl-schedule-background-color: white;--nrcl-schedule-alternate-background-color: #f2f2f2;--nrcl-schedule-hover-background-color: #d7d7d7;--nrcl-schedule-row-weeks-height: 30px;--nrcl-schedule-row-weeks-font-size: 15px;--nrcl-schedule-row-weeks-font-weight: bold;--nrcl-schedule-row-weeks-foreground-color: black;--nrcl-schedule-row-days-height: 45px;--nrcl-schedule-row-days-font-size: 15px;--nrcl-schedule-row-days-font-weight: normal;--nrcl-schedule-row-days-foreground-color: black;--nrcl-schedule-row-days-weekend-background-color: #e0f8fc;--nrcl-schedule-row-days-today-background-color: #fcf8d9;--nrcl-schedule-row-days-highlight-background-color: #eafce8;--nrcl-schedule-row-schedule-height: 70px;--nrcl-schedule-heading-width: 300px;--nrcl-schedule-item-width: 80px}:host{display:flex;flex-direction:column;font-family:var(--nrcl-font-family)}:host .schedule{display:grid;grid-template-columns:repeat(var(--nrcl-schedule-day-count),var(--nrcl-schedule-item-width));overflow:auto;height:100%;flex-grow:1}:host .schedule.heading{grid-template-columns:var(--nrcl-schedule-heading-width) repeat(var(--nrcl-schedule-day-count),var(--nrcl-schedule-item-width))}:host .schedule.heading .upper-left{grid-row:1/span 2;grid-column:1;border-bottom:1px solid var(--nrcl-schedule-border-color);position:sticky;top:0;left:0;z-index:2;background:var(--nrcl-schedule-background-color)}:host .schedule.heading .row .outer.heading{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule.heading .row.items .outer.heading{box-sizing:border-box;cursor:default;position:sticky;left:0;z-index:1;height:var(--nrcl-schedule-row-schedule-height)}:host .schedule.heading .row.items .outer.heading .heading{flex-grow:1;cursor:default;height:100%}:host .schedule .row{display:contents}:host .schedule .row.weeks>*{height:var(--nrcl-schedule-row-weeks-height)}:host .schedule .row.weeks>*:first-child{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row.days>*{height:var(--nrcl-schedule-row-days-height)}:host .schedule .row.days>*:first-child{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.heading,:host .schedule .row .day,:host .schedule .row .week{border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.item:last-child{border-right:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row:last-child .outer.item{border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .week{border-top:1px solid var(--nrcl-schedule-border-color);display:flex;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-weeks-font-size);font-weight:var(--nrcl-schedule-row-weeks-font-weight);color:var(--nrcl-schedule-row-weeks-foreground-color);position:sticky;top:0;background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day{display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-days-font-size);font-weight:var(--nrcl-schedule-row-days-font-weight);color:var(--nrcl-schedule-row-days-foreground-color);position:sticky;top:calc(var(--nrcl-schedule-row-weeks-height) + 2px);background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day .day-name{font-size:13px}:host .schedule .row .day.weekend{background-color:var(--nrcl-schedule-row-days-weekend-background-color)}:host .schedule .row .day.today{background-color:var(--nrcl-schedule-row-days-today-background-color)}:host .schedule .row .day.highlight{background-color:var(--nrcl-schedule-row-days-highlight-background-color)}:host .schedule .row .day.first:after{content:\"\";position:absolute;top:0;left:0;bottom:0;border-left:2px solid black}:host .schedule .row.items .outer.item{box-sizing:border-box;height:var(--nrcl-schedule-row-schedule-height);display:flex;flex-direction:column;justify-content:stretch;align-items:stretch;border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row.items .outer.item:first-child{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row.items .outer.item.hover:hover .item{background-color:#06e;color:#fff}:host .schedule .row.items .outer.item.menu-open .item{background-color:#036;color:#fff}:host .schedule .row.items .outer.item .item{flex-grow:1;cursor:pointer;position:relative;padding:4px 4px 8px}:host .schedule .row.items .outer.item .item .icons{position:absolute;right:2px;bottom:2px;display:flex;gap:2px;background-color:#f1ebe4;border-radius:4px;padding:3px;color:var(--nrcl-schedule-row-days-foreground-color)}:host .schedule .row.items .outer.item .item.travel{position:relative}:host .schedule .row.items .outer.item .item.travel:after{content:\"\";position:absolute;inset:0 0 2px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAABAQMAAAD+YPzoAAAABlBMVEX///8AAABVwtN+AAAAAnRSTlP/AOW3MEoAAAAMSURBVHicY+BwEgAAALAAW97nJhUAAAAASUVORK5CYII=);background-repeat:no-repeat;background-size:calc(100% - 8px) 3px;background-position:bottom}:host .schedule .row:nth-child(odd) .outer{background-color:var(--nrcl-schedule-background-color)}:host .schedule .row:nth-child(2n) .outer{background-color:var(--nrcl-schedule-alternate-background-color)}:host .schedule .row:hover .outer{background-color:var(--nrcl-schedule-hover-background-color)}.empty{height:100%;display:flex;justify-content:center;align-items:center;color:#aaa}::ng-deep .cdk-overlay-container .nrcl-schedule-multiline .mdc-tooltip__surface{white-space:pre-line;max-width:unset;text-align:left}\n"] }]
2586
+ }, template: "@if ( rows?.length > 0 ) {\n <div class=\"schedule\"\n [class.heading]=\"heading\"\n >\n @if ( heading ) {\n <div class=\"upper-left\">\n <ng-content></ng-content>\n </div>\n }\n\n <div class=\"row weeks\">\n @for ( week of _weeks; track $index ) {\n @if ( week.span == 1 ) {\n <div class=\"week\">\n {{ week.start }}\n </div>\n }\n @else {\n <div class=\"week\" [style.grid-column]=\"'span ' + week.span\">\n {{ week.start }} - {{ week.end }}\n </div>\n }\n }\n </div>\n\n <div class=\"row days\"> \n @for ( day of _days; track $index ) {\n <div class=\"day\"\n [class.weekend]=\"day.isWeekend\"\n [class.today]=\"day.isToday\"\n [class.first]=\"day.isFirst\"\n [class.highlight]=\"day.isHighlight\"\n >\n <div class=\"day-name\">{{ day.dayName }}</div>\n <div class=\"date\">{{ day.monthDay }}</div>\n </div>\n }\n </div>\n\n @for ( row of rows | paginate: paginateState( 'nrcl-schedule' ); track row.id; let rowIndex = $index ) {\n <div class=\"row items\" [class]=\"row.rowClass\">\n @if ( heading ) {\n <div class=\"outer heading\">\n <div class=\"inner heading\">\n <ng-container \n [ngTemplateOutlet]=\"headerTemplate?.template\" \n [ngTemplateOutletContext]=\"{ $implicit: { heading: row.heading, metadata: row.metadata } }\"\n ></ng-container>\n </div>\n </div> \n }\n\n @if ( row.items | async; as rowItems ) {\n @for ( item of rowItems; track item.id; let colIndex = $index ) {\n <div class=\"outer item\"\n [class.menu-open]=\"itemMenu.menuOpen\"\n [class.highlight]=\"_days[ colIndex ].isHighlight\"\n [class.hover]=\"hover\"\n >\n <div class=\"inner item\" #itemMenu=\"matMenuTrigger\"\n [class]=\"'item-' + item.name\" \n matRipple\n [matRippleDisabled]=\"!hover\"\n [matMenuTriggerFor]=\"menu\"\n [matMenuTriggerData]=\"{ $implicit: { heading: row.heading, metadata: row.metadata, item: item } }\"\n [matTooltip]=\"item?.tooltip?.()\"\n matTooltipClass=\"nrcl-schedule-multiline\"\n [class.travel]=\"item?.travel\"\n >\n <ng-container \n [ngTemplateOutlet]=\"_templates[ rowIndex ][ colIndex ] || empty\" \n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-container>\n \n @let icons = item?.icons?.();\n @if ( icons && icons.length > 0 ) {\n <div class=\"icons\">\n @for ( icon of icons; track icon ) {\n <nrcl-icon small>{{ icon }}</nrcl-icon>\n } \n </div>\n }\n </div>\n </div>\n }\n }\n @else {\n @for ( day of _days; track day ) {\n <div class=\"item item-loading\"></div>\n }\n }\n </div>\n }\n </div>\n}\n\n@if ( rows?.length > 0 && pagination ) {\n <nrcl-gap/>\n}\n\n@if ( pagination ) {\n <nrcl-row-list-pagination\n paginationId=\"nrcl-schedule\"\n [pageSize]=\"pageSize\"\n [pageNumber]=\"pageNumber\"\n [rowCount]=\"totalRowCount\"\n (pageNumberChange)=\"onPageNumberChange( $event )\"\n (pageSizeChange)=\"onPageSizeChange( $event )\"\n ></nrcl-row-list-pagination>\n}\n\n<ng-template #empty>\n</ng-template>\n", styles: ["::ng-deep :root{--nrcl-schedule-border-color: #c6c8cb;--nrcl-schedule-background-color: white;--nrcl-schedule-alternate-background-color: #f2f2f2;--nrcl-schedule-hover-background-color: #d7d7d7;--nrcl-schedule-row-weeks-height: 30px;--nrcl-schedule-row-weeks-font-size: 15px;--nrcl-schedule-row-weeks-font-weight: bold;--nrcl-schedule-row-weeks-foreground-color: black;--nrcl-schedule-row-days-height: 45px;--nrcl-schedule-row-days-font-size: 15px;--nrcl-schedule-row-days-font-weight: normal;--nrcl-schedule-row-days-foreground-color: black;--nrcl-schedule-row-days-weekend-background-color: #e0f8fc;--nrcl-schedule-row-days-today-background-color: #fcf8d9;--nrcl-schedule-row-days-highlight-background-color: #eafce8;--nrcl-schedule-row-schedule-height: 70px;--nrcl-schedule-heading-width: 300px;--nrcl-schedule-item-width: 80px}:host{display:flex;flex-direction:column;font-family:var(--nrcl-font-family)}:host .schedule{display:grid;grid-template-columns:repeat(var(--nrcl-schedule-day-count),var(--nrcl-schedule-item-width));overflow:auto;height:100%;flex-grow:1}:host .schedule.heading{grid-template-columns:var(--nrcl-schedule-heading-width) repeat(var(--nrcl-schedule-day-count),var(--nrcl-schedule-item-width))}:host .schedule.heading .upper-left{grid-row:1/span 2;grid-column:1;border-bottom:1px solid var(--nrcl-schedule-border-color);position:sticky;top:0;left:0;z-index:2;background:var(--nrcl-schedule-background-color)}:host .schedule.heading .row .outer.heading{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule.heading .row.items .outer.heading{box-sizing:border-box;cursor:default;position:sticky;left:0;z-index:1;height:var(--nrcl-schedule-row-schedule-height)}:host .schedule.heading .row.items .outer.heading .heading{flex-grow:1;cursor:default;height:100%}:host .schedule .row{display:contents}:host .schedule .row.weeks>*{height:var(--nrcl-schedule-row-weeks-height)}:host .schedule .row.weeks>*:first-child{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row.days>*{height:var(--nrcl-schedule-row-days-height)}:host .schedule .row.days>*:first-child{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.heading,:host .schedule .row .day,:host .schedule .row .week{border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.item:last-child{border-right:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row:last-child .outer.item{border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .week{border-top:1px solid var(--nrcl-schedule-border-color);display:flex;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-weeks-font-size);font-weight:var(--nrcl-schedule-row-weeks-font-weight);color:var(--nrcl-schedule-row-weeks-foreground-color);position:sticky;top:0;background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day{display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-days-font-size);font-weight:var(--nrcl-schedule-row-days-font-weight);color:var(--nrcl-schedule-row-days-foreground-color);position:sticky;top:calc(var(--nrcl-schedule-row-weeks-height) + 2px);background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day .day-name{font-size:13px}:host .schedule .row .day.weekend{background-color:var(--nrcl-schedule-row-days-weekend-background-color)}:host .schedule .row .day.today{background-color:var(--nrcl-schedule-row-days-today-background-color)}:host .schedule .row .day.highlight{background-color:var(--nrcl-schedule-row-days-highlight-background-color)}:host .schedule .row .day.first:after{content:\"\";position:absolute;top:0;left:0;bottom:0;border-left:2px solid black}:host .schedule .row.items .outer.item{box-sizing:border-box;height:var(--nrcl-schedule-row-schedule-height);display:flex;flex-direction:column;justify-content:stretch;align-items:stretch;border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row.items .outer.item:first-child{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row.items .outer.item.hover:hover .item{background-color:#06e;color:#fff}:host .schedule .row.items .outer.item.menu-open .item{background-color:#036;color:#fff}:host .schedule .row.items .outer.item .item{flex-grow:1;cursor:pointer;position:relative;padding:4px 4px 8px}:host .schedule .row.items .outer.item .item .icons{position:absolute;right:2px;bottom:2px;display:flex;gap:2px;background-color:#f1ebe4;border-radius:4px;padding:3px;color:var(--nrcl-schedule-row-days-foreground-color)}:host .schedule .row.items .outer.item .item.travel{position:relative}:host .schedule .row.items .outer.item .item.travel:after{content:\"\";position:absolute;inset:0 0 2px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAABAQMAAAD+YPzoAAAABlBMVEX///8AAABVwtN+AAAAAnRSTlP/AOW3MEoAAAAMSURBVHicY+BwEgAAALAAW97nJhUAAAAASUVORK5CYII=);background-repeat:no-repeat;background-size:calc(100% - 8px) 3px;background-position:bottom}:host .schedule .row:nth-child(odd) .outer{background-color:var(--nrcl-schedule-background-color)}:host .schedule .row:nth-child(2n) .outer{background-color:var(--nrcl-schedule-alternate-background-color)}:host .schedule .row:hover .outer{background-color:var(--nrcl-schedule-hover-background-color)}.empty{height:100%;display:flex;justify-content:center;align-items:center;color:#aaa}::ng-deep .cdk-overlay-container .nrcl-schedule-multiline .mdc-tooltip__surface{white-space:pre-line;max-width:unset;text-align:left}\n"] }]
2580
2587
  }], propDecorators: { provider: [{
2581
2588
  type: Input
2582
2589
  }], startDate: [{
@@ -2659,6 +2666,85 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
2659
2666
  args: [ResourceScheduleRowHeadingDirective]
2660
2667
  }] } });
2661
2668
 
2669
+ class DateNavigatorComponent extends NrclBase {
2670
+ constructor() {
2671
+ super(...arguments);
2672
+ this.elementRef = inject(ElementRef);
2673
+ this.value = moment().format(DATE_FORMATS.datePickerInput);
2674
+ this.largeChange = 7;
2675
+ this.smallChange = 1;
2676
+ this.valueChange = new EventEmitter();
2677
+ }
2678
+ ngOnChanges(changes) {
2679
+ if (changes.value) {
2680
+ this.date = moment(this.value);
2681
+ }
2682
+ }
2683
+ onDateNav(offset) {
2684
+ if (offset == 0) {
2685
+ this.date = moment();
2686
+ }
2687
+ else {
2688
+ this.date = this.date.clone().add(offset, 'day');
2689
+ }
2690
+ this.valueChange.emit(this.date.format(DATE_FORMATS.datePickerInput));
2691
+ }
2692
+ onDateChange(ev) {
2693
+ this.date = ev;
2694
+ this.valueChange.emit(this.date.format(DATE_FORMATS.datePickerInput));
2695
+ }
2696
+ onInputFocus(ev) {
2697
+ this.picker.open();
2698
+ this.input.nativeElement.blur();
2699
+ }
2700
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DateNavigatorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
2701
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: DateNavigatorComponent, selector: "nrcl-date-navigator", inputs: { value: "value", largeChange: ["largeChange", "largeChange", numberAttribute], smallChange: ["smallChange", "smallChange", numberAttribute] }, outputs: { valueChange: "valueChange" }, providers: [
2702
+ provideMomentDateAdapter({
2703
+ parse: {
2704
+ dateInput: 'YYYY-MM-DD'
2705
+ },
2706
+ display: {
2707
+ dateInput: 'MMMM D, YYYY', // Change how date appears in the input
2708
+ monthYearLabel: 'MMM YYYY',
2709
+ dateA11yLabel: 'LL',
2710
+ monthYearA11yLabel: 'MMMM YYYY',
2711
+ }
2712
+ })
2713
+ ], viewQueries: [{ propertyName: "picker", first: true, predicate: ["picker"], descendants: true }, { propertyName: "input", first: true, predicate: ["input"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<nrcl-button tertiary\n label=\"Today\"\n icon=\"event\"\n (click)=\"onDateNav( 0 )\"\n></nrcl-button>\n\n@if ( largeChange ) {\n <nrcl-button tertiary\n icon=\"keyboard_double_arrow_left\"\n (click)=\"onDateNav( -1 * largeChange )\"\n ></nrcl-button>\n}\n\n@if ( smallChange ) {\n <nrcl-button tertiary\n icon=\"keyboard_arrow_left\"\n (click)=\"onDateNav( -1 * smallChange )\"\n ></nrcl-button>\n}\n\n<mat-form-field\n floatLabel=\"auto\"\n appearance=\"fill\"\n subscriptSizing=\"dynamic\"\n>\n <input matInput #input\n [matDatepicker]=\"picker\"\n (focus)=\"onInputFocus( $event )\"\n [ngModel]=\"date\" \n (ngModelChange)=\"onDateChange( $event )\"\n >\n\n <mat-datepicker #picker></mat-datepicker>\n</mat-form-field>\n\n@if ( smallChange ) {\n <nrcl-button tertiary\n icon=\"keyboard_arrow_right\"\n (click)=\"onDateNav( smallChange )\"\n ></nrcl-button>\n}\n\n@if ( largeChange ) {\n <nrcl-button tertiary\n icon=\"keyboard_double_arrow_right\"\n (click)=\"onDateNav( largeChange )\"\n ></nrcl-button>\n}\n", styles: ["::ng-deep :root{--nrcl-date-navigator-input-width: 150px;--nrcl-date-navigator-height: var( --nrcl-filter-height )}:host{--mat-form-field-container-height: calc( var( --nrcl-date-navigator-height ) - 4px );--mat-form-field-container-vertical-padding: 8px;--mat-form-field-container-text-size: 15px;--mdc-outlined-text-field-focus-label-text-color: black;--mdc-outlined-text-field-hover-label-text-color: black;--mdc-outlined-text-field-focus-outline-width: 0;--mdc-outlined-text-field-outline-width: 0;display:flex;align-items:center}:host ::ng-deep .mat-mdc-form-field{width:var(--nrcl-date-navigator-input-width)}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper{background-color:#fff;height:var(--nrcl-date-navigator-height);padding:0}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix{width:var(--nrcl-date-navigator-input-width)}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix input{text-align:center;cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i1$5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2$8.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i2$8.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i1$4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: ButtonComponent, selector: "nrcl-button", inputs: ["label", "icon", "iconRight", "iconCompact", "tooltip", "compact", "small", "primary", "secondary", "tertiary", "disabled", "anchor"], outputs: ["click"] }] }); }
2714
+ }
2715
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DateNavigatorComponent, decorators: [{
2716
+ type: Component,
2717
+ args: [{ selector: 'nrcl-date-navigator', providers: [
2718
+ provideMomentDateAdapter({
2719
+ parse: {
2720
+ dateInput: 'YYYY-MM-DD'
2721
+ },
2722
+ display: {
2723
+ dateInput: 'MMMM D, YYYY', // Change how date appears in the input
2724
+ monthYearLabel: 'MMM YYYY',
2725
+ dateA11yLabel: 'LL',
2726
+ monthYearA11yLabel: 'MMMM YYYY',
2727
+ }
2728
+ })
2729
+ ], template: "<nrcl-button tertiary\n label=\"Today\"\n icon=\"event\"\n (click)=\"onDateNav( 0 )\"\n></nrcl-button>\n\n@if ( largeChange ) {\n <nrcl-button tertiary\n icon=\"keyboard_double_arrow_left\"\n (click)=\"onDateNav( -1 * largeChange )\"\n ></nrcl-button>\n}\n\n@if ( smallChange ) {\n <nrcl-button tertiary\n icon=\"keyboard_arrow_left\"\n (click)=\"onDateNav( -1 * smallChange )\"\n ></nrcl-button>\n}\n\n<mat-form-field\n floatLabel=\"auto\"\n appearance=\"fill\"\n subscriptSizing=\"dynamic\"\n>\n <input matInput #input\n [matDatepicker]=\"picker\"\n (focus)=\"onInputFocus( $event )\"\n [ngModel]=\"date\" \n (ngModelChange)=\"onDateChange( $event )\"\n >\n\n <mat-datepicker #picker></mat-datepicker>\n</mat-form-field>\n\n@if ( smallChange ) {\n <nrcl-button tertiary\n icon=\"keyboard_arrow_right\"\n (click)=\"onDateNav( smallChange )\"\n ></nrcl-button>\n}\n\n@if ( largeChange ) {\n <nrcl-button tertiary\n icon=\"keyboard_double_arrow_right\"\n (click)=\"onDateNav( largeChange )\"\n ></nrcl-button>\n}\n", styles: ["::ng-deep :root{--nrcl-date-navigator-input-width: 150px;--nrcl-date-navigator-height: var( --nrcl-filter-height )}:host{--mat-form-field-container-height: calc( var( --nrcl-date-navigator-height ) - 4px );--mat-form-field-container-vertical-padding: 8px;--mat-form-field-container-text-size: 15px;--mdc-outlined-text-field-focus-label-text-color: black;--mdc-outlined-text-field-hover-label-text-color: black;--mdc-outlined-text-field-focus-outline-width: 0;--mdc-outlined-text-field-outline-width: 0;display:flex;align-items:center}:host ::ng-deep .mat-mdc-form-field{width:var(--nrcl-date-navigator-input-width)}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper{background-color:#fff;height:var(--nrcl-date-navigator-height);padding:0}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix{width:var(--nrcl-date-navigator-input-width)}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix input{text-align:center;cursor:pointer}\n"] }]
2730
+ }], propDecorators: { value: [{
2731
+ type: Input
2732
+ }], largeChange: [{
2733
+ type: Input,
2734
+ args: [{ transform: numberAttribute }]
2735
+ }], smallChange: [{
2736
+ type: Input,
2737
+ args: [{ transform: numberAttribute }]
2738
+ }], valueChange: [{
2739
+ type: Output
2740
+ }], picker: [{
2741
+ type: ViewChild,
2742
+ args: ['picker']
2743
+ }], input: [{
2744
+ type: ViewChild,
2745
+ args: ['input']
2746
+ }] } });
2747
+
2662
2748
  class SnackbarUtilService {
2663
2749
  constructor() {
2664
2750
  this.snackbar = inject(MatSnackBar);
@@ -2824,13 +2910,15 @@ class NrNgxComponentLibModule {
2824
2910
  ScheduleItemDirective,
2825
2911
  ScheduleRowHeadingDirective,
2826
2912
  ResourceScheduleComponent,
2827
- ResourceScheduleRowHeadingDirective], imports: [BrowserAnimationsModule,
2913
+ ResourceScheduleRowHeadingDirective,
2914
+ DateNavigatorComponent], imports: [BrowserAnimationsModule,
2828
2915
  CommonModule,
2829
2916
  FormsModule,
2830
2917
  MatButtonModule,
2831
2918
  MatCardModule,
2832
2919
  MatCheckboxModule,
2833
2920
  MatChipsModule,
2921
+ MatDatepickerModule,
2834
2922
  MatExpansionModule,
2835
2923
  MatRadioModule,
2836
2924
  MatFormFieldModule,
@@ -2891,7 +2979,8 @@ class NrNgxComponentLibModule {
2891
2979
  ScheduleItemDirective,
2892
2980
  ScheduleRowHeadingDirective,
2893
2981
  ResourceScheduleComponent,
2894
- ResourceScheduleRowHeadingDirective] }); }
2982
+ ResourceScheduleRowHeadingDirective,
2983
+ DateNavigatorComponent] }); }
2895
2984
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NrNgxComponentLibModule, providers: [
2896
2985
  SnackbarUtilService,
2897
2986
  ConfigurationService,
@@ -2905,6 +2994,7 @@ class NrNgxComponentLibModule {
2905
2994
  MatCardModule,
2906
2995
  MatCheckboxModule,
2907
2996
  MatChipsModule,
2997
+ MatDatepickerModule,
2908
2998
  MatExpansionModule,
2909
2999
  MatRadioModule,
2910
3000
  MatFormFieldModule,
@@ -2936,6 +3026,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
2936
3026
  MatCardModule,
2937
3027
  MatCheckboxModule,
2938
3028
  MatChipsModule,
3029
+ MatDatepickerModule,
2939
3030
  MatExpansionModule,
2940
3031
  MatRadioModule,
2941
3032
  MatFormFieldModule,
@@ -3000,6 +3091,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
3000
3091
  ScheduleRowHeadingDirective,
3001
3092
  ResourceScheduleComponent,
3002
3093
  ResourceScheduleRowHeadingDirective,
3094
+ DateNavigatorComponent,
3003
3095
  ],
3004
3096
  exports: [
3005
3097
  ButtonComponent,
@@ -3045,6 +3137,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
3045
3137
  ScheduleRowHeadingDirective,
3046
3138
  ResourceScheduleComponent,
3047
3139
  ResourceScheduleRowHeadingDirective,
3140
+ DateNavigatorComponent,
3048
3141
  ],
3049
3142
  providers: [
3050
3143
  SnackbarUtilService,
@@ -3064,5 +3157,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
3064
3157
  * Generated bundle index. Do not edit.
3065
3158
  */
3066
3159
 
3067
- export { Aborted, ButtonComponent, CellContentComponent, CodeTable, ConfigurationService, ConfigurationSubscriberBase, DATE_FORMATS, DesktopViewDirective, DeviceViewComponent, DialogBase, DialogComponent, DialogConfirmComponent, DialogService, ExpansionPanelComponent, ExpansionPanelFooterComponent, ExpansionPanelHeaderComponent, ExpansionPanelSectionComponent, FilterContainerComponent, FilterDateComponent, FilterSearchComponent, FilterSelectComponent, FiltersPanelComponent, FormFieldComponent, FormLayoutComponent, GapComponent, IconComponent, IndicatorComponent, IndicatorSelectComponent, ListAttachmentsComponent, ListEventHistoryComponent, ListSelectComponent, LoadingStatusComponent, MobileViewDirective, NrNgxComponentLibModule, NrclBase, ObservableAborter, ObservableAborterGroup, PageContainerComponent, PageHeaderComponent, PageStateService, PaginationBase, ResourceScheduleComponent, ResourceScheduleRowHeadingDirective, RowListBase, RowListDesktopComponent, RowListMobileComponent, RowListPaginationComponent, RowListSortingComponent, ScheduleComponent, ScheduleItemDirective, ScheduleRowHeadingDirective, SnackbarComponent, SnackbarUtilService, TabComponent, TabContentDirective, TabGroupComponent, TabLabelDirective, TagListComponent, mapToCodeDescription, unwrapFilterValue, wrapFilterValue };
3160
+ export { Aborted, ButtonComponent, CellContentComponent, CodeTable, ConfigurationService, ConfigurationSubscriberBase, DATE_FORMATS, DateNavigatorComponent, DesktopViewDirective, DeviceViewComponent, DialogBase, DialogComponent, DialogConfirmComponent, DialogService, ExpansionPanelComponent, ExpansionPanelFooterComponent, ExpansionPanelHeaderComponent, ExpansionPanelSectionComponent, FilterContainerComponent, FilterDateComponent, FilterSearchComponent, FilterSelectComponent, FiltersPanelComponent, FormFieldComponent, FormLayoutComponent, GapComponent, IconComponent, IndicatorComponent, IndicatorSelectComponent, ListAttachmentsComponent, ListEventHistoryComponent, ListSelectComponent, LoadingStatusComponent, MobileViewDirective, NrNgxComponentLibModule, NrclBase, ObservableAborter, ObservableAborterGroup, PageContainerComponent, PageHeaderComponent, PageStateService, PaginationBase, ResourceScheduleComponent, ResourceScheduleRowHeadingDirective, RowListBase, RowListDesktopComponent, RowListMobileComponent, RowListPaginationComponent, RowListSortingComponent, ScheduleComponent, ScheduleItemDirective, ScheduleRowHeadingDirective, SnackbarComponent, SnackbarUtilService, TabComponent, TabContentDirective, TabGroupComponent, TabLabelDirective, TagListComponent, mapToCodeDescription, unwrapFilterValue, wrapFilterValue };
3068
3161
  //# sourceMappingURL=bcgov-nr-ngx-component-lib.mjs.map