@natec/mef-dev-ui-kit 20.0.0-beta.2 → 20.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/natec-mef-dev-ui-kit.mjs +526 -2023
- package/fesm2022/natec-mef-dev-ui-kit.mjs.map +1 -1
- package/index.d.ts +201 -1317
- package/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/lib/styles/core.scss +51 -195
- package/src/lib/styles/pg/modules/_typography.scss +1 -8
- package/src/lib/styles/pg/vendor/ng-datatable.scss +7 -0
- package/src/lib/styles/vars.scss +8 -8
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Input, ViewEncapsulation, Component, EventEmitter, Output, HostBinding, ContentChild, Host, NgModule, Injectable, Pipe, forwardRef, HostListener, ViewChild, Directive, ContentChildren, Optional, TemplateRef, InjectionToken, inject, ViewContainerRef, DOCUMENT, NgZone, ElementRef, Renderer2, booleanAttribute,
|
|
2
|
+
import { Input, ViewEncapsulation, Component, EventEmitter, Output, HostBinding, ContentChild, Host, NgModule, Injectable, ChangeDetectionStrategy, Pipe, forwardRef, HostListener, ViewChild, Directive, ContentChildren, Optional, TemplateRef, InjectionToken, inject, ViewContainerRef, DOCUMENT, NgZone, ElementRef, Renderer2, booleanAttribute, ChangeDetectorRef, HostAttributeToken, numberAttribute, QueryList, Injector, SkipSelf, signal, ViewChildren, input, computed, afterNextRender } from '@angular/core';
|
|
3
3
|
import { trigger, state, transition, style, animate } from '@angular/animations';
|
|
4
4
|
import * as i1 from '@angular/common';
|
|
5
|
-
import { CommonModule,
|
|
6
|
-
import { Subject, of, fromEvent, merge, Subscription, EMPTY, defer, filter as filter$1, map as map$1, startWith as startWith$1, switchMap as switchMap$1, takeUntil as takeUntil$1, take as take$1
|
|
5
|
+
import { CommonModule, NgTemplateOutlet, NgClass } from '@angular/common';
|
|
6
|
+
import { Subject, of, fromEvent, merge, Subscription, EMPTY, defer, timer, Observable, filter as filter$1, map as map$1, startWith as startWith$1, switchMap as switchMap$1, takeUntil as takeUntil$1, take as take$1 } from 'rxjs';
|
|
7
|
+
import * as i3 from '@angular/cdk/overlay';
|
|
8
|
+
import { CdkConnectedOverlay, OverlayModule, createBlockScrollStrategy, createGlobalPositionStrategy, ViewportRuler, Overlay, CdkOverlayOrigin } from '@angular/cdk/overlay';
|
|
7
9
|
import * as i2 from '@angular/forms';
|
|
8
10
|
import { NG_VALUE_ACCESSOR, FormsModule, NgControl, Validators, NG_VALIDATORS } from '@angular/forms';
|
|
9
11
|
import { TAB, DOWN_ARROW, ENTER, hasModifierKey, SPACE, ESCAPE, UP_ARROW, LEFT_ARROW, RIGHT_ARROW, A } from '@angular/cdk/keycodes';
|
|
10
|
-
import * as i3 from '@angular/cdk/overlay';
|
|
11
|
-
import { CdkConnectedOverlay, OverlayModule, createBlockScrollStrategy, createGlobalPositionStrategy, ViewportRuler, Overlay, CdkOverlayOrigin } from '@angular/cdk/overlay';
|
|
12
|
-
import * as i1$1 from '@angular/router';
|
|
13
12
|
import { auditTime, startWith, map, filter, take, switchMap, takeUntil, debounceTime, skip } from 'rxjs/operators';
|
|
14
|
-
import * as i1$
|
|
13
|
+
import * as i1$1 from '@angular/cdk/bidi';
|
|
15
14
|
import { Directionality } from '@angular/cdk/bidi';
|
|
16
15
|
import { CdkAccordionItem, CdkAccordion } from '@angular/cdk/accordion';
|
|
17
16
|
import { _IdGenerator, FocusMonitor, FocusKeyManager, ActiveDescendantKeyManager, CdkMonitorFocus } from '@angular/cdk/a11y';
|
|
@@ -19,7 +18,7 @@ import { UniqueSelectionDispatcher, SelectionModel } from '@angular/cdk/collecti
|
|
|
19
18
|
import { TemplatePortal, CdkPortalOutlet, PortalModule, CdkPortal } from '@angular/cdk/portal';
|
|
20
19
|
import { CdkDialogContainer, Dialog, DialogConfig, DialogModule } from '@angular/cdk/dialog';
|
|
21
20
|
import { coerceNumberProperty } from '@angular/cdk/coercion';
|
|
22
|
-
import * as i1$
|
|
21
|
+
import * as i1$2 from '@angular/cdk/scrolling';
|
|
23
22
|
import { CdkScrollable, ViewportRuler as ViewportRuler$1 } from '@angular/cdk/scrolling';
|
|
24
23
|
import { CdkStepLabel, CdkStepHeader, CdkStep, CdkStepper, CdkStepperNext, CdkStepperPrevious, CdkStepperModule } from '@angular/cdk/stepper';
|
|
25
24
|
import { Platform } from '@angular/cdk/platform';
|
|
@@ -504,92 +503,52 @@ class FiltredItemModel {
|
|
|
504
503
|
}
|
|
505
504
|
|
|
506
505
|
/**
|
|
507
|
-
*
|
|
508
|
-
*
|
|
509
|
-
*
|
|
510
|
-
*```
|
|
511
|
-
* <mefdev-
|
|
512
|
-
*
|
|
513
|
-
*
|
|
514
|
-
*
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
506
|
+
* Component for displaying a simple card with a title.
|
|
507
|
+
*
|
|
508
|
+
* Example of usage:
|
|
509
|
+
*```
|
|
510
|
+
* <mefdev-card-simple [disabled]="true">
|
|
511
|
+
* <ng-template #card_title>
|
|
512
|
+
* <!-- Content for the card title -->
|
|
513
|
+
* </ng-template>
|
|
514
|
+
* </mefdev-card-simple>
|
|
515
|
+
*```
|
|
516
|
+
*
|
|
517
|
+
* <example-url>https://platform.mef.dev/ui_kit_demo/view/page_components/card/card_simple</example-url>
|
|
518
|
+
*/
|
|
519
|
+
class CardSimpleComponent {
|
|
519
520
|
/**
|
|
520
|
-
*
|
|
521
|
+
* Determines whether the card is disabled or not.
|
|
521
522
|
*/
|
|
522
|
-
|
|
523
|
+
isDisabled = false;
|
|
523
524
|
/**
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
*/
|
|
535
|
-
title = "Help";
|
|
525
|
+
* Template for displaying the title of the card.
|
|
526
|
+
*```
|
|
527
|
+
* <mefdev-card-simple>
|
|
528
|
+
* <ng-template #card_title>
|
|
529
|
+
* <h3>Card Title</h3>
|
|
530
|
+
* </ng-template>
|
|
531
|
+
* </mefdev-card-simple>
|
|
532
|
+
*```
|
|
533
|
+
*/
|
|
534
|
+
card_title;
|
|
536
535
|
constructor() { }
|
|
537
536
|
ngOnInit() {
|
|
538
537
|
}
|
|
539
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type:
|
|
540
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type:
|
|
541
|
-
trigger('smothExpand', [
|
|
542
|
-
state('close', style({
|
|
543
|
-
height: '0',
|
|
544
|
-
margin: '0',
|
|
545
|
-
padding: '0',
|
|
546
|
-
opacity: '0',
|
|
547
|
-
visibility: 'hidden',
|
|
548
|
-
})),
|
|
549
|
-
state('open', style({})),
|
|
550
|
-
transition('close<=>open', animate(200))
|
|
551
|
-
])
|
|
552
|
-
] });
|
|
538
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: CardSimpleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
539
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type: CardSimpleComponent, isStandalone: false, selector: "mefdev-card-simple", inputs: { isDisabled: ["disabled", "isDisabled"] }, queries: [{ propertyName: "card_title", first: true, predicate: ["card_title"], descendants: true }], ngImport: i0, template: "<div class=\"md-card-simple\" [class.md-card-simple--disabled]=\"isDisabled\">\r\n <div class=\"md-card-simple__section md-card-simple__section--header\" *ngIf=\"card_title as tpl\">\r\n <ng-template [ngTemplateOutlet]=\"tpl\"></ng-template>\r\n </div>\r\n\r\n <div class=\"md-card-simple__section md-card-simple__section--content\">\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n <!-- optional named slot for actions -->\r\n <div class=\"md-card-simple__section md-card-simple__section--actions\">\r\n <ng-content select=\"[card-actions]\"></ng-content>\r\n </div>\r\n</div>\r\n", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.h1,h1{font-family:Montserrat,Arial,sans-serif;font-size:32px;line-height:40px;font-weight:700;text-transform:none;color:#000;margin-bottom:16px}.h2,h2{font-family:Montserrat,Arial,sans-serif;font-size:24px;line-height:30px;font-weight:700;text-transform:none;color:#000;margin-bottom:12px}.h3,.md-card-simple__section--header,h3{font-family:Montserrat,Arial,sans-serif;font-size:18px;line-height:24px;font-weight:600;text-transform:none;color:#000;margin-bottom:10px}.h4,h4{font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:22px;font-weight:600;text-transform:none;letter-spacing:.5px;color:#000;margin-bottom:8px}.h5,h5{font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:20px;font-weight:500;text-transform:none;color:#000;margin-bottom:6px}.h6,h6{font-family:Montserrat,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:500;text-transform:none;color:#000;margin-bottom:4px}.body-1,body-1{font-family:Open Sans,Arial,sans-serif;font-size:18px;line-height:27px;font-weight:700;color:#000}.body-2,body-2{font-family:Open Sans,Arial,sans-serif;font-size:16px;line-height:24px;font-weight:400;color:#000}.body-3,body-3{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:700;color:#000}.body-4,body-4{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:400;color:#000}.body-5,body-5{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:600;color:#000}.body-6,body-6{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:16px;font-weight:400;color:#000}:host{display:block;box-sizing:border-box}.md-card-simple{background-color:#f3f3f3;border-radius:5px;padding:.5rem}.md-card-simple__section{margin:.5rem}.md-card-simple__section--actions{display:flex;gap:.5rem;justify-content:flex-end;flex-wrap:wrap}.md-card-simple__section--actions:empty{display:none}.md-card-simple--disabled{opacity:.6;pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
553
540
|
}
|
|
554
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type:
|
|
541
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: CardSimpleComponent, decorators: [{
|
|
555
542
|
type: Component,
|
|
556
|
-
args: [{ selector: 'mefdev-
|
|
557
|
-
|
|
558
|
-
state('close', style({
|
|
559
|
-
height: '0',
|
|
560
|
-
margin: '0',
|
|
561
|
-
padding: '0',
|
|
562
|
-
opacity: '0',
|
|
563
|
-
visibility: 'hidden',
|
|
564
|
-
})),
|
|
565
|
-
state('open', style({})),
|
|
566
|
-
transition('close<=>open', animate(200))
|
|
567
|
-
])
|
|
568
|
-
], standalone: false, template: "<div class=\"card-simple\" *ngIf=\"isVisible\">\r\n <div class=\"row m-1 body-1\" (click)=\"expanded = !expanded\" style=\"cursor: pointer;\">\r\n <div class=\"col-10\" style=\"color: white;\">\r\n {{ title }}\r\n </div>\r\n <div class=\"col-2\">\r\n <i class=\"fa fa-window-close\" aria-hidden=\"true\" style=\"float: right; margin-left: 20px;\" (click)=\"isVisible = !isVisible;\"></i>\r\n \r\n <i class=\"fa fa-angle-down \" *ngIf=\"!expanded\" aria-hidden=\"true\" style=\"float: right;\"></i>\r\n <i class=\"fa fa-angle-up\" *ngIf=\"expanded\" aria-hidden=\"true\" style=\"float: right;\"></i> \r\n </div>\r\n </div>\r\n\r\n <div class=\"card-body row\" [@smothExpand]=\"expanded ? 'open' : 'close'\">\r\n <div class=\"col-12\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.card-simple{opacity:.7;background-color:#28b446;padding:2px;border-radius:5px;margin-top:.3em;margin-bottom:.5em}.card-body{opacity:1;margin-left:2px;margin-right:2px;margin-bottom:2px;border-radius:5px;padding-top:15px;padding-bottom:15px;background-color:#f3f3f3;color:#000}\n"] }]
|
|
569
|
-
}], ctorParameters: () => [], propDecorators: { title: [{
|
|
543
|
+
args: [{ selector: 'mefdev-card-simple', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<div class=\"md-card-simple\" [class.md-card-simple--disabled]=\"isDisabled\">\r\n <div class=\"md-card-simple__section md-card-simple__section--header\" *ngIf=\"card_title as tpl\">\r\n <ng-template [ngTemplateOutlet]=\"tpl\"></ng-template>\r\n </div>\r\n\r\n <div class=\"md-card-simple__section md-card-simple__section--content\">\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n <!-- optional named slot for actions -->\r\n <div class=\"md-card-simple__section md-card-simple__section--actions\">\r\n <ng-content select=\"[card-actions]\"></ng-content>\r\n </div>\r\n</div>\r\n", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.h1,h1{font-family:Montserrat,Arial,sans-serif;font-size:32px;line-height:40px;font-weight:700;text-transform:none;color:#000;margin-bottom:16px}.h2,h2{font-family:Montserrat,Arial,sans-serif;font-size:24px;line-height:30px;font-weight:700;text-transform:none;color:#000;margin-bottom:12px}.h3,.md-card-simple__section--header,h3{font-family:Montserrat,Arial,sans-serif;font-size:18px;line-height:24px;font-weight:600;text-transform:none;color:#000;margin-bottom:10px}.h4,h4{font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:22px;font-weight:600;text-transform:none;letter-spacing:.5px;color:#000;margin-bottom:8px}.h5,h5{font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:20px;font-weight:500;text-transform:none;color:#000;margin-bottom:6px}.h6,h6{font-family:Montserrat,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:500;text-transform:none;color:#000;margin-bottom:4px}.body-1,body-1{font-family:Open Sans,Arial,sans-serif;font-size:18px;line-height:27px;font-weight:700;color:#000}.body-2,body-2{font-family:Open Sans,Arial,sans-serif;font-size:16px;line-height:24px;font-weight:400;color:#000}.body-3,body-3{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:700;color:#000}.body-4,body-4{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:400;color:#000}.body-5,body-5{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:600;color:#000}.body-6,body-6{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:16px;font-weight:400;color:#000}:host{display:block;box-sizing:border-box}.md-card-simple{background-color:#f3f3f3;border-radius:5px;padding:.5rem}.md-card-simple__section{margin:.5rem}.md-card-simple__section--actions{display:flex;gap:.5rem;justify-content:flex-end;flex-wrap:wrap}.md-card-simple__section--actions:empty{display:none}.md-card-simple--disabled{opacity:.6;pointer-events:none}\n"] }]
|
|
544
|
+
}], ctorParameters: () => [], propDecorators: { isDisabled: [{
|
|
570
545
|
type: Input,
|
|
571
|
-
args: [
|
|
546
|
+
args: ["disabled"]
|
|
547
|
+
}], card_title: [{
|
|
548
|
+
type: ContentChild,
|
|
549
|
+
args: ["card_title"]
|
|
572
550
|
}] } });
|
|
573
551
|
|
|
574
|
-
class MefDevHelpBlockModule {
|
|
575
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevHelpBlockModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
576
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type: MefDevHelpBlockModule, declarations: [HelpBlockComponent], imports: [CommonModule,
|
|
577
|
-
MefDevCollapseModule], exports: [HelpBlockComponent] });
|
|
578
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevHelpBlockModule, imports: [CommonModule,
|
|
579
|
-
MefDevCollapseModule] });
|
|
580
|
-
}
|
|
581
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevHelpBlockModule, decorators: [{
|
|
582
|
-
type: NgModule,
|
|
583
|
-
args: [{
|
|
584
|
-
declarations: [HelpBlockComponent],
|
|
585
|
-
exports: [HelpBlockComponent],
|
|
586
|
-
imports: [
|
|
587
|
-
CommonModule,
|
|
588
|
-
MefDevCollapseModule
|
|
589
|
-
]
|
|
590
|
-
}]
|
|
591
|
-
}] });
|
|
592
|
-
|
|
593
552
|
function toBoolean(value) {
|
|
594
553
|
return value === '' || (value && value !== 'false');
|
|
595
554
|
}
|
|
@@ -1497,1641 +1456,134 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
1497
1456
|
type: Input
|
|
1498
1457
|
}] } });
|
|
1499
1458
|
|
|
1459
|
+
class MefDevSelectModule {
|
|
1460
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1461
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type: MefDevSelectModule, declarations: [OptionPipe, MefDevOptionComponent, MefDevSelectComponent], imports: [CommonModule, FormsModule, OverlayModule], exports: [OptionPipe, MefDevOptionComponent, MefDevSelectComponent] });
|
|
1462
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevSelectModule, imports: [CommonModule, FormsModule, OverlayModule] });
|
|
1463
|
+
}
|
|
1464
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevSelectModule, decorators: [{
|
|
1465
|
+
type: NgModule,
|
|
1466
|
+
args: [{
|
|
1467
|
+
imports: [CommonModule, FormsModule, OverlayModule],
|
|
1468
|
+
declarations: [OptionPipe, MefDevOptionComponent, MefDevSelectComponent],
|
|
1469
|
+
exports: [OptionPipe, MefDevOptionComponent, MefDevSelectComponent]
|
|
1470
|
+
}]
|
|
1471
|
+
}] });
|
|
1472
|
+
|
|
1473
|
+
const mefDevCardComponents = [CardSimpleComponent];
|
|
1474
|
+
class MefDevCardModule {
|
|
1475
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevCardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1476
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type: MefDevCardModule, declarations: [CardSimpleComponent], imports: [CommonModule,
|
|
1477
|
+
MefDevCollapseModule,
|
|
1478
|
+
MefDevSelectModule], exports: [CardSimpleComponent] });
|
|
1479
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevCardModule, imports: [CommonModule,
|
|
1480
|
+
MefDevCollapseModule,
|
|
1481
|
+
MefDevSelectModule] });
|
|
1482
|
+
}
|
|
1483
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevCardModule, decorators: [{
|
|
1484
|
+
type: NgModule,
|
|
1485
|
+
args: [{
|
|
1486
|
+
declarations: mefDevCardComponents,
|
|
1487
|
+
exports: mefDevCardComponents,
|
|
1488
|
+
imports: [
|
|
1489
|
+
CommonModule,
|
|
1490
|
+
MefDevCollapseModule,
|
|
1491
|
+
MefDevSelectModule,
|
|
1492
|
+
]
|
|
1493
|
+
}]
|
|
1494
|
+
}] });
|
|
1495
|
+
|
|
1500
1496
|
/**
|
|
1501
|
-
|
|
1502
|
-
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
|
|
1507
|
-
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
|
|
1511
|
-
|
|
1512
|
-
|
|
1513
|
-
|
|
1514
|
-
|
|
1515
|
-
|
|
1516
|
-
|
|
1517
|
-
|
|
1518
|
-
|
|
1519
|
-
|
|
1520
|
-
class
|
|
1521
|
-
|
|
1522
|
-
|
|
1523
|
-
/**
|
|
1524
|
-
* A flag that checks whether a valid date has been entered and whether the entered date exists.
|
|
1525
|
-
* If the two previous conditions are not true, the datepicker will be highlighted in red
|
|
1526
|
-
*/
|
|
1527
|
-
isUserDateValid = true;
|
|
1528
|
-
/**
|
|
1529
|
-
* Flag to determine if the calendar is open or closed.
|
|
1530
|
-
* Default value: false (closed).
|
|
1531
|
-
*/
|
|
1532
|
-
isCalendarOpen = false;
|
|
1533
|
-
/**
|
|
1534
|
-
* The currently selected date.
|
|
1535
|
-
* Default value: Today's date.
|
|
1536
|
-
*/
|
|
1537
|
-
selectedDate = new Date();
|
|
1538
|
-
/**
|
|
1539
|
-
* The formatted date for display in the input.
|
|
1540
|
-
* Default value: Formatted representation of the selected date.
|
|
1541
|
-
*/
|
|
1542
|
-
formattedDate;
|
|
1543
|
-
/**
|
|
1544
|
-
* Track the edited date separately when in editing mode.
|
|
1545
|
-
* Default value: An empty string.
|
|
1546
|
-
*/
|
|
1547
|
-
editedDate = '';
|
|
1548
|
-
/**
|
|
1549
|
-
* Flag to determine if the month dropdown is open or closed.
|
|
1550
|
-
* Default value: true (open).
|
|
1551
|
-
*/
|
|
1552
|
-
isMonthDropdownOpen = true;
|
|
1553
|
-
/**
|
|
1554
|
-
* Flag to determine if the year dropdown is open or closed.
|
|
1555
|
-
* Default value: true (open).
|
|
1556
|
-
*/
|
|
1557
|
-
isYearDropdownOpen = true;
|
|
1558
|
-
/**
|
|
1559
|
-
* The selected month (0-11).
|
|
1560
|
-
* Default value: The month of the selected date.
|
|
1561
|
-
*/
|
|
1562
|
-
selectedDateMonth = this.selectedDate.getMonth();
|
|
1563
|
-
/**
|
|
1564
|
-
* The selected year.
|
|
1565
|
-
* Default value: The year of the selected date.
|
|
1566
|
-
*/
|
|
1567
|
-
selectedDateYear = this.selectedDate.getFullYear();
|
|
1568
|
-
/**
|
|
1569
|
-
* An array of years for the year dropdown.
|
|
1570
|
-
* Default value: An array of years within the specified range.
|
|
1571
|
-
*/
|
|
1572
|
-
years;
|
|
1573
|
-
/**
|
|
1574
|
-
* Label text for the datepicker.
|
|
1575
|
-
* Default value: 'en' (English).
|
|
1576
|
-
* @example
|
|
1577
|
-
* <mefdev-datepicker
|
|
1578
|
-
* [labelContentText] = "'Chose your date'">
|
|
1579
|
-
* </mefdev-datepicker>
|
|
1580
|
-
*/
|
|
1581
|
-
labelContentText;
|
|
1582
|
-
/**
|
|
1583
|
-
* The language/locale for the datepicker.
|
|
1584
|
-
* Default value: 'en' (English).
|
|
1585
|
-
* @example
|
|
1586
|
-
* <mefdev-datepicker
|
|
1587
|
-
* [lang] = "'uk'">
|
|
1588
|
-
* </mefdev-datepicker>
|
|
1589
|
-
*/
|
|
1590
|
-
lang = 'en';
|
|
1591
|
-
/**
|
|
1592
|
-
* The date format for displaying the selected date.
|
|
1593
|
-
* Default value: 'EEE MMM dd yyyy'.
|
|
1594
|
-
* @example
|
|
1595
|
-
* <mefdev-datepicker
|
|
1596
|
-
* [dateFormat]="'dd/MM/yyyy'">
|
|
1597
|
-
* </mefdev-datepicker>
|
|
1598
|
-
*/
|
|
1599
|
-
dateFormat = 'EEE MMM dd yyyy';
|
|
1600
|
-
/**
|
|
1601
|
-
* The range of years available in the year dropdown.
|
|
1602
|
-
* Default value: { startYear: 1900, toYear: 300 }.
|
|
1603
|
-
* @example
|
|
1604
|
-
* <mefdev-datepicker
|
|
1605
|
-
* [range]="{startYear: 1900, toYear: 300}">
|
|
1606
|
-
* </mefdev-datepicker>
|
|
1607
|
-
*/
|
|
1608
|
-
yearsRange = { startYear: 1900, toYear: 300 };
|
|
1497
|
+
* Fill Component for a modal window.
|
|
1498
|
+
*
|
|
1499
|
+
* Example of usage:
|
|
1500
|
+
* ```
|
|
1501
|
+
* <mefdev-fill-modal #pin_modal>
|
|
1502
|
+
* <!-- Modal header content -->
|
|
1503
|
+
* <ng-template #modal_header>
|
|
1504
|
+
* <!-- Header content goes here -->
|
|
1505
|
+
* </ng-template>
|
|
1506
|
+
*
|
|
1507
|
+
* <!-- Modal footer content -->
|
|
1508
|
+
* <ng-template #modal_footer>
|
|
1509
|
+
* <!-- Footer content goes here -->
|
|
1510
|
+
* </ng-template>
|
|
1511
|
+
* </mefdev-fill-modal>
|
|
1512
|
+
* ```
|
|
1513
|
+
*
|
|
1514
|
+
* <example-url>https://platform.mef.dev/ui_kit_demo/view/page_components/modals/fill</example-url>
|
|
1515
|
+
*/
|
|
1516
|
+
class FillComponent {
|
|
1517
|
+
visible = false;
|
|
1518
|
+
dialog;
|
|
1609
1519
|
/**
|
|
1610
|
-
|
|
1611
|
-
|
|
1612
|
-
|
|
1613
|
-
*
|
|
1614
|
-
*
|
|
1615
|
-
*
|
|
1616
|
-
|
|
1617
|
-
|
|
1520
|
+
* The header template of the modal window.
|
|
1521
|
+
* ```
|
|
1522
|
+
* <mefdev-fill-modal #pin_modal>
|
|
1523
|
+
* <ng-template #modal_header>
|
|
1524
|
+
* <!-- Header content goes here -->
|
|
1525
|
+
* </ng-template>
|
|
1526
|
+
* </mefdev-fill-modal>
|
|
1527
|
+
* ```
|
|
1528
|
+
*/
|
|
1529
|
+
modal_header;
|
|
1618
1530
|
/**
|
|
1619
|
-
|
|
1620
|
-
|
|
1621
|
-
|
|
1622
|
-
*
|
|
1623
|
-
*
|
|
1624
|
-
*
|
|
1625
|
-
|
|
1626
|
-
|
|
1531
|
+
* The footer template of the modal window.
|
|
1532
|
+
* ```
|
|
1533
|
+
* <mefdev-fill-modal #pin_modal>
|
|
1534
|
+
* <ng-template #modal_footer>
|
|
1535
|
+
* <!-- Footer content goes here -->
|
|
1536
|
+
* </ng-template>
|
|
1537
|
+
* </mefdev-fill-modal>
|
|
1538
|
+
* ```
|
|
1539
|
+
*/
|
|
1540
|
+
modal_footer;
|
|
1627
1541
|
/**
|
|
1628
|
-
*
|
|
1629
|
-
* Default value: '10'.
|
|
1630
|
-
* @example
|
|
1631
|
-
* <mefdev-datepicker
|
|
1632
|
-
* [leftOffset]="'10'">
|
|
1633
|
-
* </mefdev-datepicker>
|
|
1542
|
+
* Input parameter that determines whether to show the modal window.
|
|
1634
1543
|
*/
|
|
1635
|
-
|
|
1636
|
-
|
|
1637
|
-
|
|
1638
|
-
|
|
1639
|
-
|
|
1640
|
-
|
|
1641
|
-
* (dateChanged)="onDateChanged($event)">
|
|
1642
|
-
* </mefdev-datepicker>
|
|
1643
|
-
*/
|
|
1644
|
-
dateChanged = new EventEmitter();
|
|
1645
|
-
/**
|
|
1646
|
-
* Regular expression to validate user input for date in the format "dd/MM/yyyy".
|
|
1647
|
-
* - The day (dd) should be between 01 and 31.
|
|
1648
|
-
* - The month (MM) should be between 01 and 12.
|
|
1649
|
-
* - The year (yyyy) should be a 4-digit number.
|
|
1650
|
-
*/
|
|
1651
|
-
dateRegExp = /^(0[1-9]|[12][0-9]|3[01])\/(0[1-9]|1[0-2])\/\d{4}$/;
|
|
1652
|
-
/**
|
|
1653
|
-
* The string entered by the user for date input.
|
|
1654
|
-
* This variable stores the user's input as they type in the date field.
|
|
1655
|
-
*/
|
|
1656
|
-
userInput = '';
|
|
1657
|
-
/**
|
|
1658
|
-
* Host listener for document click events to handle calendar interaction.
|
|
1659
|
-
* This function checks if a click event occurred within the calendar or input elements.
|
|
1660
|
-
* - If the click occurred within the calendar, no action is taken.
|
|
1661
|
-
* - If the click occurred within the input element and the component is not in editing mode,
|
|
1662
|
-
* it opens the calendar.
|
|
1663
|
-
* @param event The MouseEvent object representing the click event.
|
|
1664
|
-
*/
|
|
1665
|
-
onClick(event) {
|
|
1666
|
-
const targetElement = event.target;
|
|
1667
|
-
const datepickerContainer = this.elementRef.nativeElement.querySelector('.datepicker-container');
|
|
1668
|
-
const calendar = this.elementRef.nativeElement.querySelector('.calendar');
|
|
1669
|
-
const monthDropdown = this.elementRef.nativeElement.querySelector('.monthDropdown');
|
|
1670
|
-
const yearDropdown = this.elementRef.nativeElement.querySelector('.yearDropdown');
|
|
1671
|
-
const inputElement = this.elementRef.nativeElement.querySelector('input');
|
|
1672
|
-
if (datepickerContainer && datepickerContainer.contains(calendar)) {
|
|
1673
|
-
if (calendar && calendar.contains(targetElement))
|
|
1674
|
-
return;
|
|
1675
|
-
if (this.isMonthDropdownOpen && !calendar.contains(targetElement))
|
|
1676
|
-
return;
|
|
1677
|
-
if (this.isYearDropdownOpen && !calendar.contains(targetElement))
|
|
1678
|
-
return;
|
|
1679
|
-
if ((monthDropdown && monthDropdown.contains(targetElement)) && (yearDropdown && yearDropdown.contains(targetElement))) {
|
|
1680
|
-
this.toggleMonthDropdown(event);
|
|
1681
|
-
this.toggleYearDropdown(event);
|
|
1682
|
-
}
|
|
1544
|
+
set show(val) {
|
|
1545
|
+
if (val) {
|
|
1546
|
+
this.showModal();
|
|
1547
|
+
}
|
|
1548
|
+
else {
|
|
1549
|
+
this.hideModal();
|
|
1683
1550
|
}
|
|
1684
1551
|
}
|
|
1552
|
+
;
|
|
1685
1553
|
/**
|
|
1686
|
-
*
|
|
1687
|
-
*
|
|
1688
|
-
*
|
|
1689
|
-
* It is used to access DOM elements.
|
|
1690
|
-
*/
|
|
1691
|
-
constructor(datePipe, elementRef) {
|
|
1692
|
-
this.datePipe = datePipe;
|
|
1693
|
-
this.elementRef = elementRef;
|
|
1694
|
-
this.updateInputValue();
|
|
1695
|
-
}
|
|
1696
|
-
/**
|
|
1697
|
-
* Lifecycle hook called after the component is initialized.
|
|
1698
|
-
* It initializes the years for the year select dropdown.
|
|
1699
|
-
*/
|
|
1700
|
-
ngOnInit() {
|
|
1701
|
-
this.initializeYears();
|
|
1702
|
-
}
|
|
1703
|
-
/**
|
|
1704
|
-
* Lifecycle hook called whenever the input properties of the component change.
|
|
1705
|
-
* It updates the input value.
|
|
1706
|
-
*/
|
|
1707
|
-
ngOnChanges() {
|
|
1708
|
-
this.updateInputValue();
|
|
1709
|
-
}
|
|
1710
|
-
/**
|
|
1711
|
-
* An array of month names based on the selected language.
|
|
1712
|
-
* It provides localized month names for display in the datepicker.
|
|
1713
|
-
*/
|
|
1714
|
-
get months() {
|
|
1715
|
-
return this.getMonthList(this.lang);
|
|
1716
|
-
}
|
|
1717
|
-
/**
|
|
1718
|
-
* An array of weekday names based on the selected language.
|
|
1719
|
-
* It provides localized weekday names for display in the datepicker.
|
|
1720
|
-
*/
|
|
1721
|
-
get weekdays() {
|
|
1722
|
-
return this.getWeekdayList(this.lang);
|
|
1723
|
-
}
|
|
1724
|
-
/**
|
|
1725
|
-
* Initialize the list of years to be displayed in the year dropdown.
|
|
1726
|
-
* This method populates the 'years' array with a range of years based on the provided 'yearsRange' configuration.
|
|
1727
|
-
* @example
|
|
1728
|
-
* ```
|
|
1729
|
-
* // Assuming 'yearsRange' is { startYear: 1900, toYear: 300 }
|
|
1730
|
-
* // After calling initializeYears(), 'years' might contain [1900, 1901, ..., 300]
|
|
1731
|
-
* this.initializeYears();
|
|
1732
|
-
* ```
|
|
1733
|
-
*/
|
|
1734
|
-
initializeYears() {
|
|
1735
|
-
this.years = Array.from({ length: this.yearsRange.toYear }, (_, index) => index + this.yearsRange.startYear);
|
|
1736
|
-
}
|
|
1737
|
-
/**
|
|
1738
|
-
* Toggle the editing mode for the date input. When enabled, the user can edit the date directly in the input field.
|
|
1739
|
-
*/
|
|
1740
|
-
toggleEdit() {
|
|
1741
|
-
this.editedDate = this.formatSelectedDate(); // Store the current formatted date for editing
|
|
1742
|
-
this.isCalendarOpen = false;
|
|
1743
|
-
}
|
|
1744
|
-
/**
|
|
1745
|
-
* Get a list of month names in the specified language and format.
|
|
1746
|
-
* @param locales - An optional parameter specifying the locale or locales to use for formatting.
|
|
1747
|
-
* @param format - The format for month names, either "long" (default) or "short".
|
|
1748
|
-
* @returns An array of month names based on the provided format and locale.
|
|
1749
|
-
* ```
|
|
1750
|
-
* // Get a list of month names in the default language and long format
|
|
1751
|
-
* const months = this.getMonthList(this.lang);
|
|
1752
|
-
* ```
|
|
1753
|
-
*/
|
|
1754
|
-
getMonthList(locales, format = "long") {
|
|
1755
|
-
const year = new Date().getFullYear();
|
|
1756
|
-
const monthList = [...Array(12).keys()];
|
|
1757
|
-
const formatter = new Intl.DateTimeFormat(locales, { month: format });
|
|
1758
|
-
const getMonthName = (monthIndex) => formatter.format(new Date(year, monthIndex));
|
|
1759
|
-
return monthList.map(getMonthName);
|
|
1760
|
-
}
|
|
1761
|
-
/**
|
|
1762
|
-
* Get a list of weekday names in the specified language and format.
|
|
1763
|
-
* @param locales - An optional parameter specifying the locale or locales to use for formatting.
|
|
1764
|
-
* @param format - The format for weekday names, either "short" (default) or "long".
|
|
1765
|
-
* @returns An array of weekday names based on the provided format and locale.
|
|
1554
|
+
* Event emitted when the modal is change state.
|
|
1555
|
+
* Emits a boolean value indicating if the modal is closed(false), or open(true).
|
|
1556
|
+
* Example:
|
|
1766
1557
|
* ```
|
|
1767
|
-
*
|
|
1768
|
-
* const weekdays = this.getWeekdayList();
|
|
1558
|
+
* <mefdev-fill-modal (visibleChange)="onModalClosed($event)"></mefdev-fill-modal>
|
|
1769
1559
|
* ```
|
|
1770
1560
|
*/
|
|
1771
|
-
|
|
1772
|
-
|
|
1773
|
-
|
|
1774
|
-
weekdays.splice(mondayIndex, 1);
|
|
1775
|
-
weekdays.push(0);
|
|
1776
|
-
const formatter = new Intl.DateTimeFormat(locales, { weekday: format });
|
|
1777
|
-
const getWeekdayName = (weekdayIndex) => {
|
|
1778
|
-
return formatter.format(new Date(2023, 9, weekdayIndex + 1));
|
|
1779
|
-
};
|
|
1780
|
-
return weekdays.map(getWeekdayName);
|
|
1561
|
+
visibleChange = new EventEmitter();
|
|
1562
|
+
constructor() { }
|
|
1563
|
+
ngOnInit() {
|
|
1781
1564
|
}
|
|
1782
1565
|
/**
|
|
1783
|
-
*
|
|
1784
|
-
*
|
|
1785
|
-
* the edited date to the 'selectedDate'. It then reformats the selected date and closes the calendar.
|
|
1786
|
-
* ```
|
|
1787
|
-
* // Save the edited date and update the selected date
|
|
1788
|
-
* this.saveEditedDate();
|
|
1789
|
-
* ```
|
|
1566
|
+
* Shows the modal state.
|
|
1567
|
+
* Return a boolean value indicating if the modal is closed(false), or open(true)
|
|
1790
1568
|
*/
|
|
1791
|
-
|
|
1792
|
-
|
|
1793
|
-
const [day, month, year] = this.editedDate.split('/');
|
|
1794
|
-
this.selectedDate = new Date(+year, +month - 1, +day);
|
|
1795
|
-
this.formatDate();
|
|
1796
|
-
}
|
|
1569
|
+
getModalState() {
|
|
1570
|
+
return this.visible;
|
|
1797
1571
|
}
|
|
1798
1572
|
/**
|
|
1799
|
-
*
|
|
1800
|
-
*
|
|
1801
|
-
* 'selectedDateMonth' and 'selectedDateYear' accordingly.
|
|
1802
|
-
* @param event - The input event containing the user's input.
|
|
1803
|
-
* ```
|
|
1804
|
-
* // Handle user input in the editable input field
|
|
1805
|
-
* this.onDateInput(event);
|
|
1806
|
-
* ```
|
|
1573
|
+
* Shows the modal.
|
|
1574
|
+
* Call this method to open the modal window.
|
|
1807
1575
|
*/
|
|
1808
|
-
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
this.editedDate = inputDate;
|
|
1812
|
-
const parsedDate = inputDate.split('/');
|
|
1813
|
-
this.selectedDateMonth = +parsedDate[1] - 1;
|
|
1814
|
-
this.selectedDateYear = +parsedDate[2];
|
|
1815
|
-
this.selectedDate = new Date(+parsedDate[2], +parsedDate[1] - 1, +parsedDate[0]);
|
|
1816
|
-
this.calculateFirstDayOfCalendar();
|
|
1817
|
-
}
|
|
1818
|
-
this.isUserDateValid = this.isDateValid(inputDate);
|
|
1576
|
+
showModal() {
|
|
1577
|
+
this.visible = true;
|
|
1578
|
+
this.visibleChange.emit(this.visible);
|
|
1819
1579
|
}
|
|
1820
1580
|
/**
|
|
1821
|
-
*
|
|
1822
|
-
*
|
|
1823
|
-
* @param event - The event triggering the toggle action (e.g., a click event).
|
|
1824
|
-
* ```
|
|
1825
|
-
* // Toggle the visibility of the month dropdown
|
|
1826
|
-
* this.toggleMonthDropdown(event);
|
|
1827
|
-
* ```
|
|
1581
|
+
* Hides the modal.
|
|
1582
|
+
* Call this method to close the modal window.
|
|
1828
1583
|
*/
|
|
1829
|
-
|
|
1830
|
-
this.
|
|
1831
|
-
|
|
1832
|
-
/**
|
|
1833
|
-
* Toggle the visibility of the year dropdown in the calendar interface.
|
|
1834
|
-
* This method is used to open or close the dropdown for selecting years.
|
|
1835
|
-
* @param event - The event triggering the toggle action (e.g., a click event).
|
|
1836
|
-
* ```
|
|
1837
|
-
* // Toggle the visibility of the year dropdown
|
|
1838
|
-
* this.toggleYearDropdown(event);
|
|
1839
|
-
* ```
|
|
1840
|
-
*/
|
|
1841
|
-
toggleYearDropdown(event) {
|
|
1842
|
-
this.isYearDropdownOpen = !this.isYearDropdownOpen;
|
|
1843
|
-
}
|
|
1844
|
-
/**
|
|
1845
|
-
* Handle the change of the selected month in the calendar interface.
|
|
1846
|
-
* This method updates the input value, sets the selected date to the first day of the chosen month,
|
|
1847
|
-
* and recalculates the calendar display accordingly.
|
|
1848
|
-
* ```
|
|
1849
|
-
* // Handle the change of the selected month
|
|
1850
|
-
* this.onMonthChange();
|
|
1851
|
-
* ```
|
|
1852
|
-
*/
|
|
1853
|
-
onMonthChange() {
|
|
1854
|
-
this.updateInputValue();
|
|
1855
|
-
this.selectedDate = new Date(this.selectedDateYear, this.selectedDateMonth, 1);
|
|
1856
|
-
this.formatDate();
|
|
1857
|
-
this.calculateFirstDayOfCalendar();
|
|
1858
|
-
}
|
|
1859
|
-
/**
|
|
1860
|
-
* Handle the change of the selected year in the calendar interface.
|
|
1861
|
-
* This method updates the input value, sets the selected date to the first day of the chosen year,
|
|
1862
|
-
* reformats the selected date, and recalculates the calendar display.
|
|
1863
|
-
* ```
|
|
1864
|
-
* // Handle the change of the selected year
|
|
1865
|
-
* this.onYearChange();
|
|
1866
|
-
* ```
|
|
1867
|
-
*/
|
|
1868
|
-
onYearChange() {
|
|
1869
|
-
this.updateInputValue();
|
|
1870
|
-
this.selectedDate = new Date(this.selectedDateYear, this.selectedDateMonth, 1);
|
|
1871
|
-
this.formatDate();
|
|
1872
|
-
this.calculateFirstDayOfCalendar();
|
|
1873
|
-
}
|
|
1874
|
-
/**
|
|
1875
|
-
* Select a date in the calendar interface and perform necessary updates.
|
|
1876
|
-
* This method sets the selected date, formats it, closes the calendar, and emits a dateChanged event.
|
|
1877
|
-
* It also updates the selected month and year dropdown values.
|
|
1878
|
-
* @param date - The date to be selected in the calendar.
|
|
1879
|
-
*/
|
|
1880
|
-
selectDate(date) {
|
|
1881
|
-
this.selectedDate = date;
|
|
1882
|
-
this.formatDate();
|
|
1883
|
-
this.isCalendarOpen = false;
|
|
1884
|
-
this.dateChanged.next(this.selectedDate);
|
|
1885
|
-
this.selectedDateMonth = this.selectedDate.getMonth();
|
|
1886
|
-
this.selectedDateYear = this.selectedDate.getFullYear();
|
|
1887
|
-
}
|
|
1888
|
-
/**
|
|
1889
|
-
* Format the selected date based on the chosen date format and language.
|
|
1890
|
-
* This method uses the Angular DatePipe to format the selected date and updates the formattedDate variable.
|
|
1891
|
-
* ```
|
|
1892
|
-
* // Format the selected date
|
|
1893
|
-
* this.formatDate();
|
|
1894
|
-
* ```
|
|
1895
|
-
*/
|
|
1896
|
-
formatDate() {
|
|
1897
|
-
this.formattedDate = this.datePipe.transform(this.selectedDate, this.dateFormat) || '';
|
|
1898
|
-
}
|
|
1899
|
-
/**
|
|
1900
|
-
* Format the selected date based on the chosen date format, language, and locale.
|
|
1901
|
-
* This method uses the Angular DatePipe to format the selected date with the specified language and updates the formatted date as a string.
|
|
1902
|
-
* @returns A formatted date string.
|
|
1903
|
-
* ```
|
|
1904
|
-
* // Format the selected date with language
|
|
1905
|
-
* const formatted = this.formatSelectedDate();
|
|
1906
|
-
* ```
|
|
1907
|
-
*/
|
|
1908
|
-
formatSelectedDate() {
|
|
1909
|
-
return this.datePipe.transform(this.selectedDate, this.dateFormat, this.lang) || '';
|
|
1910
|
-
}
|
|
1911
|
-
/**
|
|
1912
|
-
* Update the input value displayed in the calendar interface.
|
|
1913
|
-
* This method updates the input value to either the edited date or the formatted selected date,
|
|
1914
|
-
* depending on whether the user is in edit mode or not.
|
|
1915
|
-
* ```
|
|
1916
|
-
* // Update the input value
|
|
1917
|
-
* this.updateInputValue();
|
|
1918
|
-
* ```
|
|
1919
|
-
*/
|
|
1920
|
-
updateInputValue() {
|
|
1921
|
-
this.formattedDate = this.isCalendarOpen ? this.editedDate : this.formatSelectedDate();
|
|
1922
|
-
}
|
|
1923
|
-
/**
|
|
1924
|
-
* Get an array of arrays representing the days of the current month.
|
|
1925
|
-
* Each sub-array contains the day data for a week, and each day data object includes the date and whether it belongs to the current month.
|
|
1926
|
-
* @returns An array of arrays representing the days of the current month.
|
|
1927
|
-
* ```
|
|
1928
|
-
* // Get an array of arrays representing the days of the current month
|
|
1929
|
-
* const calendar = this.calendarDays;
|
|
1930
|
-
* ```
|
|
1931
|
-
*/
|
|
1932
|
-
get calendarDays() {
|
|
1933
|
-
return this.calculateFirstDayOfCalendar();
|
|
1934
|
-
}
|
|
1935
|
-
/**
|
|
1936
|
-
* Get the date of the previous month to display in empty cells of the current month.
|
|
1937
|
-
* This method returns the date of the previous month if the provided date is not in the current month.
|
|
1938
|
-
* If the provided date is in the current month, it returns the date's day as a string.
|
|
1939
|
-
* @param date - The date to evaluate.
|
|
1940
|
-
* @returns The date of the previous month or a day string.
|
|
1941
|
-
* ```
|
|
1942
|
-
* // Get the previous month's date to display in empty cells
|
|
1943
|
-
* const previousMonthDate = this.getPreviousMonthDate(new Date(2023, 8, 1));
|
|
1944
|
-
* ```
|
|
1945
|
-
*/
|
|
1946
|
-
getPreviousMonthDate(date) {
|
|
1947
|
-
if (!date) {
|
|
1948
|
-
return '';
|
|
1949
|
-
}
|
|
1950
|
-
const currentDate = new Date();
|
|
1951
|
-
if (date.getMonth() === currentDate.getMonth() && date.getFullYear() === currentDate.getFullYear()) {
|
|
1952
|
-
return date.getDate().toString();
|
|
1953
|
-
}
|
|
1954
|
-
else {
|
|
1955
|
-
return this.datePipe.transform(date, 'dd');
|
|
1956
|
-
}
|
|
1957
|
-
}
|
|
1958
|
-
/**
|
|
1959
|
-
* Navigate to the previous month in the calendar interface.
|
|
1960
|
-
* This method updates the selectedDate, formats it, and recalculates the first day of the calendar.
|
|
1961
|
-
* ```
|
|
1962
|
-
* // Navigate to the previous month
|
|
1963
|
-
* this.getPreviousMonth();
|
|
1964
|
-
* ```
|
|
1965
|
-
*/
|
|
1966
|
-
getPreviousMonth() {
|
|
1967
|
-
const currentMonth = this.selectedDate.getMonth();
|
|
1968
|
-
this.selectedDate = new Date(this.selectedDate.getFullYear(), currentMonth - 1, 1);
|
|
1969
|
-
this.formatDate();
|
|
1970
|
-
this.calculateFirstDayOfCalendar();
|
|
1971
|
-
}
|
|
1972
|
-
/**
|
|
1973
|
-
* Navigate to the next month in the calendar interface.
|
|
1974
|
-
* This method updates the selectedDate, formats it, and recalculates the first day of the calendar.
|
|
1975
|
-
* ```
|
|
1976
|
-
* // Navigate to the next month
|
|
1977
|
-
* this.getNextMonth();
|
|
1978
|
-
* ```
|
|
1979
|
-
*/
|
|
1980
|
-
getNextMonth() {
|
|
1981
|
-
const currentMonth = this.selectedDate.getMonth();
|
|
1982
|
-
this.selectedDate = new Date(this.selectedDate.getFullYear(), currentMonth + 1, 1);
|
|
1983
|
-
this.formatDate();
|
|
1984
|
-
this.calculateFirstDayOfCalendar();
|
|
1985
|
-
}
|
|
1986
|
-
/**
|
|
1987
|
-
* Get the number of days in a given month of a specific year.
|
|
1988
|
-
* @param year - The year for which you want to determine the number of days.
|
|
1989
|
-
* @param month - The month (0-based index) for which you want to determine the number of days.
|
|
1990
|
-
* @returns The number of days in the specified month of the given year.
|
|
1991
|
-
*/
|
|
1992
|
-
daysInMonth(year, month) {
|
|
1993
|
-
return new Date(year, month + 1, 0).getDate();
|
|
1994
|
-
}
|
|
1995
|
-
/**
|
|
1996
|
-
* Calculate the structure of days in a month for the calendar display.
|
|
1997
|
-
* This method generates a matrix of day data objects representing the days in the calendar.
|
|
1998
|
-
* Each day data object contains the date and whether it belongs to the current month.
|
|
1999
|
-
* @returns A matrix of day data objects for the calendar display.
|
|
2000
|
-
*/
|
|
2001
|
-
calculateFirstDayOfCalendar() {
|
|
2002
|
-
const year = this.selectedDate.getFullYear();
|
|
2003
|
-
const month = this.selectedDate.getMonth();
|
|
2004
|
-
const firstDayOfMonth = new Date(year, month, 1);
|
|
2005
|
-
const firstWeekday = firstDayOfMonth.getDay();
|
|
2006
|
-
const startDay = firstWeekday === 0 ? -5 : 2 - firstWeekday;
|
|
2007
|
-
const calendarDays = [];
|
|
2008
|
-
let currentDay = startDay;
|
|
2009
|
-
for (let i = 0; i < 6; i++) {
|
|
2010
|
-
const week = [];
|
|
2011
|
-
for (let j = 0; j < 7; j++) {
|
|
2012
|
-
const day = new Date(year, month, currentDay);
|
|
2013
|
-
const dayData = {
|
|
2014
|
-
date: day,
|
|
2015
|
-
isCurrentMonth: currentDay >= 1 && currentDay <= this.daysInMonth(year, month),
|
|
2016
|
-
};
|
|
2017
|
-
week.push(dayData);
|
|
2018
|
-
currentDay++;
|
|
2019
|
-
}
|
|
2020
|
-
calendarDays.push(week);
|
|
2021
|
-
}
|
|
2022
|
-
return calendarDays;
|
|
2023
|
-
}
|
|
2024
|
-
/**
|
|
2025
|
-
* Check if a given date is the currently selected date in the calendar.
|
|
2026
|
-
* @param date - The date to check.
|
|
2027
|
-
* @returns `true` if the provided date matches the selected date, otherwise `false`.
|
|
2028
|
-
* ```
|
|
2029
|
-
* // Check if a date is selected
|
|
2030
|
-
* const isSelected = this.isDateSelected(someDate);
|
|
2031
|
-
* ```
|
|
2032
|
-
*/
|
|
2033
|
-
isDateSelected(date) {
|
|
2034
|
-
return date.toDateString() === this.selectedDate.toDateString();
|
|
2035
|
-
}
|
|
2036
|
-
/**
|
|
2037
|
-
* Check if a date string is valid based on the specified date format.
|
|
2038
|
-
* It also checks whether the specified number, month is correct and whether the specified one exists among calendar years
|
|
2039
|
-
* @param inputDate - The date string to validate.
|
|
2040
|
-
* @returns `true` if the input date string is valid, otherwise `false`.
|
|
2041
|
-
* ```
|
|
2042
|
-
* // Check if a date string is valid
|
|
2043
|
-
* const isValidDate = this.isDateValid('05/25/2023');
|
|
2044
|
-
* ```
|
|
2045
|
-
*/
|
|
2046
|
-
isDateValid(inputDate) {
|
|
2047
|
-
if (!this.dateRegExp.test(inputDate)) {
|
|
2048
|
-
return false;
|
|
2049
|
-
}
|
|
2050
|
-
const parts = inputDate.split('/');
|
|
2051
|
-
const day = parseInt(parts[0], 10);
|
|
2052
|
-
const month = parseInt(parts[1], 10);
|
|
2053
|
-
const year = parseInt(parts[2], 10);
|
|
2054
|
-
if (year > this.years[this.years.length - 1] || year < this.years[0]) {
|
|
2055
|
-
return false;
|
|
2056
|
-
}
|
|
2057
|
-
const daysInMonth = new Date(year, month, 0).getDate();
|
|
2058
|
-
return day <= daysInMonth;
|
|
2059
|
-
}
|
|
2060
|
-
/**
|
|
2061
|
-
* Check if a given date is today's date.
|
|
2062
|
-
* @param date - The date to check.
|
|
2063
|
-
* @returns `true` if the provided date is today's date, otherwise `false`.
|
|
2064
|
-
* ```
|
|
2065
|
-
* // Check if a date is today's date
|
|
2066
|
-
* const isToday = this.isDateToday(someDate);
|
|
2067
|
-
* ```
|
|
2068
|
-
*/
|
|
2069
|
-
isDateToday(date) {
|
|
2070
|
-
const today = new Date();
|
|
2071
|
-
return date.toDateString() === today.toDateString();
|
|
2072
|
-
}
|
|
2073
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: DatepickerComponent, deps: [{ token: i1.DatePipe }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
2074
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type: DatepickerComponent, isStandalone: false, selector: "mefdev-datepicker", inputs: { labelContentText: "labelContentText", lang: "lang", dateFormat: "dateFormat", yearsRange: ["range", "yearsRange"], disabled: "disabled", topOffset: "topOffset", leftOffset: "leftOffset" }, outputs: { dateChanged: "dateChanged" }, host: { listeners: { "document:click": "onClick($event)" } }, usesOnChanges: true, ngImport: i0, template: "<div class=\"datepicker-container\" [class.disabled]=\"disabled\">\r\n\r\n <!-- Input, save & edit buttons -->\r\n <div class=\"input-container form-group\">\r\n <label *ngIf=\"labelContentText\" class=\"form-label\"> {{ labelContentText }} </label>\r\n <input\r\n [ngClass]=\"{ 'calendarNotOpened': !isCalendarOpen }\"\r\n [ngStyle]=\"{ 'border-color': isUserDateValid ? '' : 'red' }\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n (input)=\"onDateInput($event)\"\r\n (click)=\"isCalendarOpen = true\"\r\n [value]=\"formattedDate\"\r\n [readOnly]=\"!isCalendarOpen\"\r\n >\r\n </div>\r\n\r\n <!-- Calendar(Dropdowns, dates) -->\r\n <div *ngIf=\"isCalendarOpen\" class=\"calendar\" #calendarContainer\r\n [style.top]=\"topOffset\"\r\n [style.left]=\"leftOffset\">\r\n <div class=\"calendar-header\">\r\n <div class=\"monthButtonContainer\">\r\n <!-- Month dropdown -->\r\n <ng-container *ngIf=\"isMonthDropdownOpen; else monthLabel\">\r\n <mefdev-select\r\n class=\"monthDropdown\"\r\n [(ngModel)]=\"selectedDateMonth\"\r\n (ngModelChange)=\"onMonthChange()\"\r\n [PlaceHolder]=\"'month'\"\r\n >\r\n <mefdev-option\r\n *ngFor=\"let month of months; let i = index\"\r\n [Value]=\"i\"\r\n [Label]=\"month\"\r\n style=\"z-index: 1\"\r\n >{{ month }}</mefdev-option>\r\n </mefdev-select>\r\n </ng-container>\r\n <ng-template #monthLabel>\r\n <span (click)=\"toggleMonthDropdown($event)\"></span>\r\n </ng-template>\r\n\r\n <!-- Year dropdown -->\r\n <ng-container *ngIf=\"isYearDropdownOpen; else yearLabel\">\r\n <mefdev-select\r\n class=\"yearDropdown\"\r\n [(ngModel)]=\"selectedDateYear\"\r\n (ngModelChange)=\"onYearChange()\"\r\n [PlaceHolder]=\"'year'\"\r\n >\r\n <mefdev-option\r\n *ngFor=\"let year of years\"\r\n [Label]=\"year\"\r\n [Value]=\"year\"\r\n >{{year}}</mefdev-option>\r\n </mefdev-select>\r\n </ng-container>\r\n <ng-template #yearLabel>\r\n <span (click)=\"toggleYearDropdown($event)\">{{ selectedDateYear }}</span>\r\n </ng-template>\r\n </div>\r\n <!-- Calendar exit button -->\r\n <div>\r\n <i class=\"fa fa-times toggleCalendarButton\" (click)=\"isCalendarOpen = false\" aria-hidden=\"true\"></i>\r\n </div>\r\n </div>\r\n\r\n <div class=\"calendar-body\">\r\n <table>\r\n <tr>\r\n <th class=\"text-center\" *ngFor=\"let weekday of weekdays\">{{ weekday }}</th>\r\n </tr>\r\n <tr *ngFor=\"let week of calendarDays\">\r\n <td *ngFor=\"let dayData of week\"\r\n (click)=\"selectDate(dayData.date)\"\r\n [ngClass]=\"{ 'selected': isDateSelected(dayData.date), 'prev-month': !dayData.isCurrentMonth }\">\r\n\r\n <span class=\"date\" [class.prev-month]=\"!dayData.isCurrentMonth\">\r\n {{ dayData.date.getDate() }}\r\n </span>\r\n </td>\r\n </tr>\r\n </table>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.datepicker-container{position:relative;display:inline-block}.datepicker-container.disabled{pointer-events:none;opacity:.8}.input-container{position:relative;display:inline-block}.input-container input[type=text]{padding:5px 5px 5px 15px;border:1px solid #929292}.input-container .calendarNotOpened{cursor:pointer}.calendar{position:absolute;border:1px solid #929292;background-color:#eaeaea;z-index:1}.calendar .calendar-header{background-color:#fff;text-align:center;justify-content:space-between;display:flex;padding:5px 0}.calendar .calendar-header i.fa{display:flex;justify-content:center;align-items:center;width:30px;height:30px;font-size:20px;border-radius:50%;cursor:pointer;background-color:transparent;border:none;color:#cf0106}.calendar .calendar-header .monthButtonContainer{padding-left:10px;height:45px;min-width:140px;display:flex;align-items:center}.calendar .calendar-header .monthDropdown,.calendar .calendar-header .yearDropdown{height:45px;width:105px;cursor:pointer;display:inline-block;padding:6px 5px;border:1px solid #EAEAEA;border-radius:4px;background-color:#fff;color:#4d4d4d}.calendar .calendar-header .monthDropdown{margin:0 8px 0 0;width:130px}.calendar .calendar-header .monthDropdown:hover,.calendar .calendar-header .yearDropdown:hover{border-color:#f3f3f3}.calendar .calendar-body{padding:5px}.calendar .calendar-body table{width:100%}.calendar .calendar-body td{padding:10px;position:relative}.calendar .calendar-body td.selected{position:relative;color:#fff}.calendar .calendar-body td.selected:before{content:\"\";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:20%;background-color:#cf0106;z-index:-1;width:30px;height:30px;color:#fff;border:1px solid #373737}.calendar .calendar-body td:hover{color:#fff;font-weight:700;background-color:#929292;border-radius:20%;cursor:pointer}.calendar .calendar-body .date{display:flex;justify-content:center}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: MefDevOptionComponent, selector: "mefdev-option", inputs: ["Value", "Label", "Disabled"] }, { kind: "component", type: MefDevSelectComponent, selector: "mefdev-select", inputs: ["Filter", "MaxMultiple", "FirstDefault", "AllowClear", "KeepUnListOptions", "Mode", "Multiple", "PlaceHolder", "NotFoundContent", "Size", "ShowSearch", "Tags", "Disabled", "Open"], outputs: ["SearchChange", "change", "OpenChange", "ScrollToBottom"] }] });
|
|
2075
|
-
}
|
|
2076
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: DatepickerComponent, decorators: [{
|
|
2077
|
-
type: Component,
|
|
2078
|
-
args: [{ selector: 'mefdev-datepicker', standalone: false, template: "<div class=\"datepicker-container\" [class.disabled]=\"disabled\">\r\n\r\n <!-- Input, save & edit buttons -->\r\n <div class=\"input-container form-group\">\r\n <label *ngIf=\"labelContentText\" class=\"form-label\"> {{ labelContentText }} </label>\r\n <input\r\n [ngClass]=\"{ 'calendarNotOpened': !isCalendarOpen }\"\r\n [ngStyle]=\"{ 'border-color': isUserDateValid ? '' : 'red' }\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n (input)=\"onDateInput($event)\"\r\n (click)=\"isCalendarOpen = true\"\r\n [value]=\"formattedDate\"\r\n [readOnly]=\"!isCalendarOpen\"\r\n >\r\n </div>\r\n\r\n <!-- Calendar(Dropdowns, dates) -->\r\n <div *ngIf=\"isCalendarOpen\" class=\"calendar\" #calendarContainer\r\n [style.top]=\"topOffset\"\r\n [style.left]=\"leftOffset\">\r\n <div class=\"calendar-header\">\r\n <div class=\"monthButtonContainer\">\r\n <!-- Month dropdown -->\r\n <ng-container *ngIf=\"isMonthDropdownOpen; else monthLabel\">\r\n <mefdev-select\r\n class=\"monthDropdown\"\r\n [(ngModel)]=\"selectedDateMonth\"\r\n (ngModelChange)=\"onMonthChange()\"\r\n [PlaceHolder]=\"'month'\"\r\n >\r\n <mefdev-option\r\n *ngFor=\"let month of months; let i = index\"\r\n [Value]=\"i\"\r\n [Label]=\"month\"\r\n style=\"z-index: 1\"\r\n >{{ month }}</mefdev-option>\r\n </mefdev-select>\r\n </ng-container>\r\n <ng-template #monthLabel>\r\n <span (click)=\"toggleMonthDropdown($event)\"></span>\r\n </ng-template>\r\n\r\n <!-- Year dropdown -->\r\n <ng-container *ngIf=\"isYearDropdownOpen; else yearLabel\">\r\n <mefdev-select\r\n class=\"yearDropdown\"\r\n [(ngModel)]=\"selectedDateYear\"\r\n (ngModelChange)=\"onYearChange()\"\r\n [PlaceHolder]=\"'year'\"\r\n >\r\n <mefdev-option\r\n *ngFor=\"let year of years\"\r\n [Label]=\"year\"\r\n [Value]=\"year\"\r\n >{{year}}</mefdev-option>\r\n </mefdev-select>\r\n </ng-container>\r\n <ng-template #yearLabel>\r\n <span (click)=\"toggleYearDropdown($event)\">{{ selectedDateYear }}</span>\r\n </ng-template>\r\n </div>\r\n <!-- Calendar exit button -->\r\n <div>\r\n <i class=\"fa fa-times toggleCalendarButton\" (click)=\"isCalendarOpen = false\" aria-hidden=\"true\"></i>\r\n </div>\r\n </div>\r\n\r\n <div class=\"calendar-body\">\r\n <table>\r\n <tr>\r\n <th class=\"text-center\" *ngFor=\"let weekday of weekdays\">{{ weekday }}</th>\r\n </tr>\r\n <tr *ngFor=\"let week of calendarDays\">\r\n <td *ngFor=\"let dayData of week\"\r\n (click)=\"selectDate(dayData.date)\"\r\n [ngClass]=\"{ 'selected': isDateSelected(dayData.date), 'prev-month': !dayData.isCurrentMonth }\">\r\n\r\n <span class=\"date\" [class.prev-month]=\"!dayData.isCurrentMonth\">\r\n {{ dayData.date.getDate() }}\r\n </span>\r\n </td>\r\n </tr>\r\n </table>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.datepicker-container{position:relative;display:inline-block}.datepicker-container.disabled{pointer-events:none;opacity:.8}.input-container{position:relative;display:inline-block}.input-container input[type=text]{padding:5px 5px 5px 15px;border:1px solid #929292}.input-container .calendarNotOpened{cursor:pointer}.calendar{position:absolute;border:1px solid #929292;background-color:#eaeaea;z-index:1}.calendar .calendar-header{background-color:#fff;text-align:center;justify-content:space-between;display:flex;padding:5px 0}.calendar .calendar-header i.fa{display:flex;justify-content:center;align-items:center;width:30px;height:30px;font-size:20px;border-radius:50%;cursor:pointer;background-color:transparent;border:none;color:#cf0106}.calendar .calendar-header .monthButtonContainer{padding-left:10px;height:45px;min-width:140px;display:flex;align-items:center}.calendar .calendar-header .monthDropdown,.calendar .calendar-header .yearDropdown{height:45px;width:105px;cursor:pointer;display:inline-block;padding:6px 5px;border:1px solid #EAEAEA;border-radius:4px;background-color:#fff;color:#4d4d4d}.calendar .calendar-header .monthDropdown{margin:0 8px 0 0;width:130px}.calendar .calendar-header .monthDropdown:hover,.calendar .calendar-header .yearDropdown:hover{border-color:#f3f3f3}.calendar .calendar-body{padding:5px}.calendar .calendar-body table{width:100%}.calendar .calendar-body td{padding:10px;position:relative}.calendar .calendar-body td.selected{position:relative;color:#fff}.calendar .calendar-body td.selected:before{content:\"\";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:20%;background-color:#cf0106;z-index:-1;width:30px;height:30px;color:#fff;border:1px solid #373737}.calendar .calendar-body td:hover{color:#fff;font-weight:700;background-color:#929292;border-radius:20%;cursor:pointer}.calendar .calendar-body .date{display:flex;justify-content:center}\n"] }]
|
|
2079
|
-
}], ctorParameters: () => [{ type: i1.DatePipe }, { type: i0.ElementRef }], propDecorators: { labelContentText: [{
|
|
2080
|
-
type: Input
|
|
2081
|
-
}], lang: [{
|
|
2082
|
-
type: Input
|
|
2083
|
-
}], dateFormat: [{
|
|
2084
|
-
type: Input
|
|
2085
|
-
}], yearsRange: [{
|
|
2086
|
-
type: Input,
|
|
2087
|
-
args: ['range']
|
|
2088
|
-
}], disabled: [{
|
|
2089
|
-
type: Input
|
|
2090
|
-
}], topOffset: [{
|
|
2091
|
-
type: Input
|
|
2092
|
-
}], leftOffset: [{
|
|
2093
|
-
type: Input
|
|
2094
|
-
}], dateChanged: [{
|
|
2095
|
-
type: Output
|
|
2096
|
-
}], onClick: [{
|
|
2097
|
-
type: HostListener,
|
|
2098
|
-
args: ['document:click', ['$event']]
|
|
2099
|
-
}] } });
|
|
2100
|
-
|
|
2101
|
-
class MefDevSelectModule {
|
|
2102
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2103
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type: MefDevSelectModule, declarations: [OptionPipe, MefDevOptionComponent, MefDevSelectComponent], imports: [CommonModule, FormsModule, OverlayModule], exports: [OptionPipe, MefDevOptionComponent, MefDevSelectComponent] });
|
|
2104
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevSelectModule, imports: [CommonModule, FormsModule, OverlayModule] });
|
|
2105
|
-
}
|
|
2106
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevSelectModule, decorators: [{
|
|
2107
|
-
type: NgModule,
|
|
2108
|
-
args: [{
|
|
2109
|
-
imports: [CommonModule, FormsModule, OverlayModule],
|
|
2110
|
-
declarations: [OptionPipe, MefDevOptionComponent, MefDevSelectComponent],
|
|
2111
|
-
exports: [OptionPipe, MefDevOptionComponent, MefDevSelectComponent]
|
|
2112
|
-
}]
|
|
2113
|
-
}] });
|
|
2114
|
-
|
|
2115
|
-
class MefDevDatepickerModule {
|
|
2116
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevDatepickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2117
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type: MefDevDatepickerModule, declarations: [DatepickerComponent], imports: [CommonModule, FormsModule, DatePipe, MefDevSelectModule], exports: [DatepickerComponent] });
|
|
2118
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevDatepickerModule, providers: [DatePipe], imports: [CommonModule, FormsModule, MefDevSelectModule] });
|
|
2119
|
-
}
|
|
2120
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevDatepickerModule, decorators: [{
|
|
2121
|
-
type: NgModule,
|
|
2122
|
-
args: [{
|
|
2123
|
-
declarations: [DatepickerComponent],
|
|
2124
|
-
exports: [DatepickerComponent],
|
|
2125
|
-
imports: [CommonModule, FormsModule, DatePipe, MefDevSelectModule],
|
|
2126
|
-
providers: [DatePipe]
|
|
2127
|
-
}]
|
|
2128
|
-
}] });
|
|
2129
|
-
|
|
2130
|
-
/**
|
|
2131
|
-
* Component representing a progress bar.
|
|
2132
|
-
*
|
|
2133
|
-
* Example of usage:
|
|
2134
|
-
*
|
|
2135
|
-
* ```
|
|
2136
|
-
* <mefdev-progress type="linear" color="blue" [thick]="true"></mefdev-progress>
|
|
2137
|
-
* <mefdev-progress type="circle" color="red" [indeterminate]="true"></mefdev-progress>
|
|
2138
|
-
* ```
|
|
2139
|
-
*/
|
|
2140
|
-
class MefDevProgressComponent {
|
|
2141
|
-
_value;
|
|
2142
|
-
_value2;
|
|
2143
|
-
/**
|
|
2144
|
-
* The type of progress bar.
|
|
2145
|
-
* Possible values: "linear" | "circle".
|
|
2146
|
-
* Default value: "linear".
|
|
2147
|
-
*/
|
|
2148
|
-
type;
|
|
2149
|
-
/**
|
|
2150
|
-
* The color of the progress bar.
|
|
2151
|
-
* Possible values: any valid CSS color value.
|
|
2152
|
-
* Default value: none.
|
|
2153
|
-
*/
|
|
2154
|
-
color;
|
|
2155
|
-
/**
|
|
2156
|
-
* Determines whether the progress bar is thick.
|
|
2157
|
-
* Default value: false.
|
|
2158
|
-
*/
|
|
2159
|
-
thick;
|
|
2160
|
-
/**
|
|
2161
|
-
* Determines whether the progress bar is indeterminate.
|
|
2162
|
-
* Default value: false.
|
|
2163
|
-
*/
|
|
2164
|
-
indeterminate;
|
|
2165
|
-
/**
|
|
2166
|
-
* The value of the progress bar.
|
|
2167
|
-
* For the "circle" type, it should be a number between 0 and 100.
|
|
2168
|
-
*/
|
|
2169
|
-
set value(value) {
|
|
2170
|
-
if (this.type == "circle") {
|
|
2171
|
-
this._value = (value / 100) * 360;
|
|
2172
|
-
if (this.value >= 50) {
|
|
2173
|
-
this._value2 = true;
|
|
2174
|
-
}
|
|
2175
|
-
}
|
|
2176
|
-
else
|
|
2177
|
-
this._value = value;
|
|
2178
|
-
}
|
|
2179
|
-
get value() {
|
|
2180
|
-
return this._value;
|
|
2181
|
-
}
|
|
2182
|
-
/**
|
|
2183
|
-
* Additional value property.
|
|
2184
|
-
*/
|
|
2185
|
-
get value2() {
|
|
2186
|
-
return this._value2;
|
|
2187
|
-
}
|
|
2188
|
-
constructor() { }
|
|
2189
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2190
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type: MefDevProgressComponent, isStandalone: false, selector: "mefdev-progress", inputs: { type: "type", color: "color", thick: "thick", indeterminate: "indeterminate", value: "value" }, ngImport: i0, template: "<div *ngIf=\"type === 'bar'; else circleBlock\">\r\n <div *ngIf=\"indeterminate; else determineBarBlock\">\r\n <div class=\"progress\" [class.progress-small]=\"!thick\">\r\n <div class=\"progress-bar-{{ color }}\" [class.progress-bar-indeterminate]=\"indeterminate\"></div>\r\n </div>\r\n </div>\r\n <ng-template #determineBarBlock>\r\n <div class=\"progress\" [class.progress-small]=\"!thick\">\r\n <div class=\"progress-bar progress-bar-{{ color }}\" [ngStyle]=\"{ width: value + '%' }\"></div>\r\n </div>\r\n </ng-template>\r\n</div>\r\n<ng-template #circleBlock>\r\n <div class=\"progress-circle-{{ color }}\" [class.progress-circle-indeterminate]=\"indeterminate\"\r\n [class.progress-circle]=\"!indeterminate\" [class.progress-circle-thick]=\"thick\">\r\n <div *ngIf=\"indeterminate; else determineBlock\"></div>\r\n <ng-template #determineBlock>\r\n <div class=\"pie\" [ngStyle]=\"_value2 && { clip: 'rect(auto, auto, auto, auto)' }\">\r\n <div class=\"left-side half-circle\" [ngStyle]=\"_value2 && { transform: 'rotate(' + value + 'deg)' }\"></div>\r\n <div class=\"right-side half-circle\" [ngStyle]=\"{\r\n transform:\r\n _value2 === true ? 'rotate(180deg)' : 'rotate(' + value + 'deg)'\r\n }\"></div>\r\n </div>\r\n <div class=\"shadow\"></div>\r\n </ng-template>\r\n </div>\r\n</ng-template>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
2191
|
-
}
|
|
2192
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevProgressComponent, decorators: [{
|
|
2193
|
-
type: Component,
|
|
2194
|
-
args: [{ selector: "mefdev-progress", standalone: false, template: "<div *ngIf=\"type === 'bar'; else circleBlock\">\r\n <div *ngIf=\"indeterminate; else determineBarBlock\">\r\n <div class=\"progress\" [class.progress-small]=\"!thick\">\r\n <div class=\"progress-bar-{{ color }}\" [class.progress-bar-indeterminate]=\"indeterminate\"></div>\r\n </div>\r\n </div>\r\n <ng-template #determineBarBlock>\r\n <div class=\"progress\" [class.progress-small]=\"!thick\">\r\n <div class=\"progress-bar progress-bar-{{ color }}\" [ngStyle]=\"{ width: value + '%' }\"></div>\r\n </div>\r\n </ng-template>\r\n</div>\r\n<ng-template #circleBlock>\r\n <div class=\"progress-circle-{{ color }}\" [class.progress-circle-indeterminate]=\"indeterminate\"\r\n [class.progress-circle]=\"!indeterminate\" [class.progress-circle-thick]=\"thick\">\r\n <div *ngIf=\"indeterminate; else determineBlock\"></div>\r\n <ng-template #determineBlock>\r\n <div class=\"pie\" [ngStyle]=\"_value2 && { clip: 'rect(auto, auto, auto, auto)' }\">\r\n <div class=\"left-side half-circle\" [ngStyle]=\"_value2 && { transform: 'rotate(' + value + 'deg)' }\"></div>\r\n <div class=\"right-side half-circle\" [ngStyle]=\"{\r\n transform:\r\n _value2 === true ? 'rotate(180deg)' : 'rotate(' + value + 'deg)'\r\n }\"></div>\r\n </div>\r\n <div class=\"shadow\"></div>\r\n </ng-template>\r\n </div>\r\n</ng-template>" }]
|
|
2195
|
-
}], ctorParameters: () => [], propDecorators: { type: [{
|
|
2196
|
-
type: Input
|
|
2197
|
-
}], color: [{
|
|
2198
|
-
type: Input
|
|
2199
|
-
}], thick: [{
|
|
2200
|
-
type: Input
|
|
2201
|
-
}], indeterminate: [{
|
|
2202
|
-
type: Input
|
|
2203
|
-
}], value: [{
|
|
2204
|
-
type: Input
|
|
2205
|
-
}] } });
|
|
2206
|
-
|
|
2207
|
-
/**
|
|
2208
|
-
* Component representing a custom card.
|
|
2209
|
-
* It provides various styling and animation options for the card layout.
|
|
2210
|
-
*
|
|
2211
|
-
* Example usage:
|
|
2212
|
-
* ```
|
|
2213
|
-
* <mefdev-inner-card [Title]="'Card Title'" [Type]="'default'" [MinimalHeader]="false" [ProgressType]="'circle'">
|
|
2214
|
-
* Card content goes here...
|
|
2215
|
-
* </mefdev-inner-card>
|
|
2216
|
-
* ```
|
|
2217
|
-
*/
|
|
2218
|
-
class MefdevInnerCard {
|
|
2219
|
-
// constructor() {
|
|
2220
|
-
// console.log('1')
|
|
2221
|
-
// }
|
|
2222
|
-
/**
|
|
2223
|
-
* Indicates whether the card is collapsed or not.
|
|
2224
|
-
* Default: false
|
|
2225
|
-
*/
|
|
2226
|
-
_isCollapsed = false;
|
|
2227
|
-
/**
|
|
2228
|
-
* Indicates whether the card is maximized or not.
|
|
2229
|
-
* Default: false
|
|
2230
|
-
*/
|
|
2231
|
-
_isMaximixed = false;
|
|
2232
|
-
/**
|
|
2233
|
-
* Indicates whether the card is in loading state or not.
|
|
2234
|
-
* Default: false
|
|
2235
|
-
*/
|
|
2236
|
-
_isLoading = false;
|
|
2237
|
-
/**
|
|
2238
|
-
* Indicates whether the card has a minimal header or not.
|
|
2239
|
-
* Default: false
|
|
2240
|
-
*/
|
|
2241
|
-
_minimalHeader = false;
|
|
2242
|
-
/**
|
|
2243
|
-
* The message to be displayed in the card.
|
|
2244
|
-
*/
|
|
2245
|
-
_message = "";
|
|
2246
|
-
/**
|
|
2247
|
-
* The type of message to be displayed in the card (e.g., success, danger, warning).
|
|
2248
|
-
* Default: "danger"
|
|
2249
|
-
*/
|
|
2250
|
-
_messageType = "danger";
|
|
2251
|
-
/**
|
|
2252
|
-
* Indicates whether the message in the card is visible or not.
|
|
2253
|
-
* Default: false
|
|
2254
|
-
*/
|
|
2255
|
-
_messageVisible = false;
|
|
2256
|
-
/**
|
|
2257
|
-
* The type of progress indicator to be displayed in the card (e.g., circle, bar, none).
|
|
2258
|
-
* Default: "circle"
|
|
2259
|
-
*/
|
|
2260
|
-
_progressType = "circle";
|
|
2261
|
-
/**
|
|
2262
|
-
* The color of the progress indicator in the card.
|
|
2263
|
-
*/
|
|
2264
|
-
_progressColor = "";
|
|
2265
|
-
/**
|
|
2266
|
-
* Indicates whether the tools (e.g., refresh, close, maximize) are shown in the card header or not.
|
|
2267
|
-
* Default: true
|
|
2268
|
-
*/
|
|
2269
|
-
_showTools = true;
|
|
2270
|
-
_close_card = false;
|
|
2271
|
-
_refresh = false;
|
|
2272
|
-
_refreshColor = "light";
|
|
2273
|
-
/**
|
|
2274
|
-
* Indicates whether the close button in the card is visible or not.
|
|
2275
|
-
* Default: true
|
|
2276
|
-
*/
|
|
2277
|
-
_close = true;
|
|
2278
|
-
/**
|
|
2279
|
-
* Indicates whether the toggle button in the card is visible or not.
|
|
2280
|
-
* Default: true
|
|
2281
|
-
*/
|
|
2282
|
-
_toggle = true;
|
|
2283
|
-
/**
|
|
2284
|
-
* Indicates whether the maximize button in the card is visible or not.
|
|
2285
|
-
* Default: true
|
|
2286
|
-
*/
|
|
2287
|
-
_maximize = true;
|
|
2288
|
-
/**
|
|
2289
|
-
* The timeout value in milliseconds for the loading state of the card.
|
|
2290
|
-
* If set to 0, the loading state will not automatically turn off.
|
|
2291
|
-
* Default: 0
|
|
2292
|
-
*/
|
|
2293
|
-
_timeout = 0;
|
|
2294
|
-
/**
|
|
2295
|
-
* The title text to be displayed in the card header.
|
|
2296
|
-
*/
|
|
2297
|
-
_titleText = "";
|
|
2298
|
-
/**
|
|
2299
|
-
* The border style of the card.
|
|
2300
|
-
*/
|
|
2301
|
-
_card_border_style = "";
|
|
2302
|
-
/**
|
|
2303
|
-
* The type of the card (e.g., default, bordered, minimal).
|
|
2304
|
-
* Default: "default"
|
|
2305
|
-
*/
|
|
2306
|
-
_type = "default";
|
|
2307
|
-
/**
|
|
2308
|
-
* Additional CSS class(es) to be added to the card header.
|
|
2309
|
-
*/
|
|
2310
|
-
_extraHeaderClass = "";
|
|
2311
|
-
/**
|
|
2312
|
-
* Additional CSS class(es) to be added to the card body.
|
|
2313
|
-
*/
|
|
2314
|
-
_extraBodyClass = "";
|
|
2315
|
-
/**
|
|
2316
|
-
* Additional CSS class(es) to be added to the card.
|
|
2317
|
-
*/
|
|
2318
|
-
_additionalClasses = "";
|
|
2319
|
-
/**
|
|
2320
|
-
* ViewChild reference to the host content element.
|
|
2321
|
-
*/
|
|
2322
|
-
_hostContent;
|
|
2323
|
-
/**
|
|
2324
|
-
* ViewChild reference to the minimal circle loading element.
|
|
2325
|
-
*/
|
|
2326
|
-
minimalCircleLoading;
|
|
2327
|
-
/**
|
|
2328
|
-
* ViewChild reference to the minimal circle loading trigger element.
|
|
2329
|
-
*/
|
|
2330
|
-
minimalCircleLoadingTrigger;
|
|
2331
|
-
/**
|
|
2332
|
-
* ContentChild reference to the CardTitle template.
|
|
2333
|
-
*/
|
|
2334
|
-
CardTitle;
|
|
2335
|
-
/**
|
|
2336
|
-
* ContentChild reference to the CardExtraControls template.
|
|
2337
|
-
*/
|
|
2338
|
-
CardExtraControls;
|
|
2339
|
-
// Input properties
|
|
2340
|
-
/**
|
|
2341
|
-
* The title text to be displayed in the card header.
|
|
2342
|
-
*/
|
|
2343
|
-
set Title(value) {
|
|
2344
|
-
this._titleText = value;
|
|
2345
|
-
}
|
|
2346
|
-
get Title() {
|
|
2347
|
-
return this._titleText;
|
|
2348
|
-
}
|
|
2349
|
-
/**
|
|
2350
|
-
* The type of the card (e.g., default, bordered, minimal).
|
|
2351
|
-
* Default: "default"
|
|
2352
|
-
*/
|
|
2353
|
-
set Type(value) {
|
|
2354
|
-
this._type = value;
|
|
2355
|
-
}
|
|
2356
|
-
/**
|
|
2357
|
-
* Indicates whether the card has a minimal header or not.
|
|
2358
|
-
* Default: false
|
|
2359
|
-
*/
|
|
2360
|
-
set MinimalHeader(value) {
|
|
2361
|
-
this._minimalHeader = value;
|
|
2362
|
-
}
|
|
2363
|
-
/**
|
|
2364
|
-
* The type of progress indicator to be displayed in the card (e.g., circle, bar, none).
|
|
2365
|
-
* Default: "circle"
|
|
2366
|
-
*/
|
|
2367
|
-
set ProgressType(value) {
|
|
2368
|
-
this._progressType = value;
|
|
2369
|
-
}
|
|
2370
|
-
/**
|
|
2371
|
-
* The color of the progress indicator in the card.
|
|
2372
|
-
*/
|
|
2373
|
-
set ProgressColor(value) {
|
|
2374
|
-
this._progressColor = value;
|
|
2375
|
-
}
|
|
2376
|
-
/**
|
|
2377
|
-
* Indicates whether the card should have a refresh button or not.
|
|
2378
|
-
*/
|
|
2379
|
-
set Refresh(value) {
|
|
2380
|
-
this._refresh = value;
|
|
2381
|
-
}
|
|
2382
|
-
/**
|
|
2383
|
-
* The color of the refresh button in the card (e.g., light, dark).
|
|
2384
|
-
* Default: "light"
|
|
2385
|
-
*/
|
|
2386
|
-
set RefreshColor(value) {
|
|
2387
|
-
this._refreshColor = value;
|
|
2388
|
-
}
|
|
2389
|
-
/**
|
|
2390
|
-
* Indicates whether the card should have a maximize button or not.
|
|
2391
|
-
*/
|
|
2392
|
-
set Maximize(value) {
|
|
2393
|
-
this._maximize = value;
|
|
2394
|
-
}
|
|
2395
|
-
/**
|
|
2396
|
-
* Indicates whether the card should have a close button or not.
|
|
2397
|
-
*/
|
|
2398
|
-
set Close(value) {
|
|
2399
|
-
this._close = value;
|
|
2400
|
-
}
|
|
2401
|
-
/**
|
|
2402
|
-
* Indicates whether the card should have a toggle button or not.
|
|
2403
|
-
*/
|
|
2404
|
-
set Toggle(value) {
|
|
2405
|
-
this._toggle = value;
|
|
2406
|
-
}
|
|
2407
|
-
/**
|
|
2408
|
-
* Additional CSS class(es) to be added to the card header.
|
|
2409
|
-
*/
|
|
2410
|
-
set HeaderClass(value) {
|
|
2411
|
-
this._extraHeaderClass = value;
|
|
2412
|
-
}
|
|
2413
|
-
/**
|
|
2414
|
-
* Additional CSS class(es) to be added to the card body.
|
|
2415
|
-
*/
|
|
2416
|
-
set BodyClass(value) {
|
|
2417
|
-
this._extraBodyClass = value;
|
|
2418
|
-
}
|
|
2419
|
-
/**
|
|
2420
|
-
* Additional CSS class(es) to be added to the card.
|
|
2421
|
-
*/
|
|
2422
|
-
set AdditionalClasses(value) {
|
|
2423
|
-
this._additionalClasses = value;
|
|
2424
|
-
}
|
|
2425
|
-
/**
|
|
2426
|
-
* Indicates whether the tools (e.g., refresh, close, maximize) are shown in the card header or not.
|
|
2427
|
-
*/
|
|
2428
|
-
set Controls(value) {
|
|
2429
|
-
this._showTools = value;
|
|
2430
|
-
}
|
|
2431
|
-
/**
|
|
2432
|
-
* Indicates whether the message in the card is visible or not.
|
|
2433
|
-
*/
|
|
2434
|
-
set ShowMessage(value) {
|
|
2435
|
-
this._messageVisible = value;
|
|
2436
|
-
}
|
|
2437
|
-
/**
|
|
2438
|
-
* The message text to be displayed in the card.
|
|
2439
|
-
*/
|
|
2440
|
-
set Message(value) {
|
|
2441
|
-
this._message = value;
|
|
2442
|
-
}
|
|
2443
|
-
/**
|
|
2444
|
-
* Indicates whether the loading indicator is shown in the card or not.
|
|
2445
|
-
*/
|
|
2446
|
-
set Loading(value) {
|
|
2447
|
-
this._isLoading = value;
|
|
2448
|
-
}
|
|
2449
|
-
/**
|
|
2450
|
-
* The timeout duration for the loading indicator (in milliseconds).
|
|
2451
|
-
* If set to 0, the loading indicator will be displayed indefinitely until manually dismissed.
|
|
2452
|
-
* Default: 0
|
|
2453
|
-
*/
|
|
2454
|
-
set TimeOut(value) {
|
|
2455
|
-
this._timeout = value;
|
|
2456
|
-
}
|
|
2457
|
-
/**
|
|
2458
|
-
* The border style of the card.
|
|
2459
|
-
*/
|
|
2460
|
-
set CardBorderStyle(value) {
|
|
2461
|
-
this._card_border_style = value;
|
|
2462
|
-
}
|
|
2463
|
-
// Output properties
|
|
2464
|
-
/**
|
|
2465
|
-
* Event emitted when the refresh button is clicked.
|
|
2466
|
-
*/
|
|
2467
|
-
onRefresh = new EventEmitter();
|
|
2468
|
-
// Other methods and lifecycle hooks
|
|
2469
|
-
/**
|
|
2470
|
-
* Toggles the collapsed state of the card.
|
|
2471
|
-
*/
|
|
2472
|
-
toggle() {
|
|
2473
|
-
this._isCollapsed = this._isCollapsed === true ? false : true;
|
|
2474
|
-
}
|
|
2475
|
-
/**
|
|
2476
|
-
* Maximizes or restores the card to its original position.
|
|
2477
|
-
*/
|
|
2478
|
-
maximize() {
|
|
2479
|
-
let nativeElement = this._hostContent.nativeElement;
|
|
2480
|
-
if (this._isMaximixed) {
|
|
2481
|
-
this._isMaximixed = false;
|
|
2482
|
-
nativeElement.style.left = null;
|
|
2483
|
-
nativeElement.style.top = null;
|
|
2484
|
-
}
|
|
2485
|
-
else {
|
|
2486
|
-
this._isMaximixed = true;
|
|
2487
|
-
let pagecontainer = document.querySelector(".content") ?? new Element();
|
|
2488
|
-
console.log(pagecontainer);
|
|
2489
|
-
let rect = pagecontainer.getBoundingClientRect();
|
|
2490
|
-
let elementRect = nativeElement.getBoundingClientRect();
|
|
2491
|
-
let style = window.getComputedStyle(pagecontainer);
|
|
2492
|
-
nativeElement.style.left =
|
|
2493
|
-
parseFloat(style["marginLeft"]) +
|
|
2494
|
-
parseFloat(style["paddingLeft"]) +
|
|
2495
|
-
rect.left +
|
|
2496
|
-
"px";
|
|
2497
|
-
nativeElement.style.top =
|
|
2498
|
-
parseFloat(style.paddingTop) + rect.top + "px";
|
|
2499
|
-
}
|
|
2500
|
-
}
|
|
2501
|
-
/**
|
|
2502
|
-
* Dismisses the message in the card.
|
|
2503
|
-
*/
|
|
2504
|
-
alertDismiss() {
|
|
2505
|
-
this._messageVisible = false;
|
|
2506
|
-
}
|
|
2507
|
-
/**
|
|
2508
|
-
* Triggers the refresh action of the card.
|
|
2509
|
-
*/
|
|
2510
|
-
refresh() {
|
|
2511
|
-
if (!this._isLoading) {
|
|
2512
|
-
this._isLoading = true;
|
|
2513
|
-
this.onRefresh.emit();
|
|
2514
|
-
}
|
|
2515
|
-
if (this._timeout > 0) {
|
|
2516
|
-
setTimeout(() => {
|
|
2517
|
-
this._isLoading = false;
|
|
2518
|
-
}, this._timeout);
|
|
2519
|
-
}
|
|
2520
|
-
}
|
|
2521
|
-
/**
|
|
2522
|
-
* Closes the card.
|
|
2523
|
-
*/
|
|
2524
|
-
close() {
|
|
2525
|
-
this._close_card = true;
|
|
2526
|
-
}
|
|
2527
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefdevInnerCard, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2528
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type: MefdevInnerCard, isStandalone: false, selector: "mefdev-inner-card", inputs: { Title: "Title", Type: "Type", MinimalHeader: "MinimalHeader", ProgressType: "ProgressType", ProgressColor: "ProgressColor", Refresh: "Refresh", RefreshColor: "RefreshColor", Maximize: "Maximize", Close: "Close", Toggle: "Toggle", HeaderClass: "HeaderClass", BodyClass: "BodyClass", AdditionalClasses: "AdditionalClasses", Controls: "Controls", ShowMessage: "ShowMessage", Message: "Message", Loading: "Loading", TimeOut: "TimeOut", CardBorderStyle: "CardBorderStyle" }, outputs: { onRefresh: "onRefresh" }, queries: [{ propertyName: "CardTitle", first: true, predicate: ["CardTitle"], descendants: true }, { propertyName: "CardExtraControls", first: true, predicate: ["CardExtraControls"], descendants: true }], viewQueries: [{ propertyName: "_hostContent", first: true, predicate: ["hostContent"], descendants: true }, { propertyName: "minimalCircleLoading", first: true, predicate: ["minimalCircleLoading"], descendants: true }, { propertyName: "minimalCircleLoadingTrigger", first: true, predicate: ["minimalCircleLoadingTrigger"], descendants: true }], ngImport: i0, template: "<div class=\"card card-{{ _type }} {{ _additionalClasses }}\" *ngIf=\"!_close_card\" [class.card-collapsed]=\"_isCollapsed\"\r\n [class.card-maximized]=\"_isMaximixed\" #hostContent class=\"col-sm-12 col-md-6 col-lg-4\"\r\n [ngStyle]=\"{'border': _card_border_style}\">\r\n <div class=\"card-header {{ _extraHeaderClass }}\">\r\n <div class=\"card-title\">\r\n <ng-template [ngTemplateOutlet]=\"CardTitle\"></ng-template>\r\n </div>\r\n <div class=\"card-controls\" *ngIf=\"_showTools == true\">\r\n <ng-template [ngTemplateOutlet]=\"CardExtraControls\"></ng-template>\r\n <ul *ngIf=\"_minimalHeader == false; else minimalBlock\">\r\n <li *ngIf=\"_toggle == true\">\r\n <a href=\"javascript:void(0);\" data-toggle class=\"card-collapse\" (click)=\"toggle()\"><i\r\n class=\"pg pg-arrow_maximize\" [class.pg-arrow_minimize]=\"_isCollapsed\"></i></a>\r\n </li>\r\n <li *ngIf=\"_refresh == true\">\r\n <a href=\"javascript:void(0);\" data-toggle class=\"card-refresh\" (click)=\"refresh()\"><i\r\n class=\"card-icon card-icon-refresh\"></i></a>\r\n </li>\r\n <li *ngIf=\"_maximize == true\">\r\n <a href=\"javascript:void(0);\" data-toggle class=\"card-maximize\" (click)=\"maximize()\"><i\r\n class=\"card-icon card-icon-maximize\"></i></a>\r\n </li>\r\n <li *ngIf=\"_close == true\">\r\n <a href=\"javascript:void(0);\" data-toggle class=\"card-close\" (click)=\"close()\"><i\r\n class=\"card-icon card-icon-close\"></i></a>\r\n </li>\r\n </ul>\r\n <!-- <ng-template #minimalBlock>\r\n <ul>\r\n <li>\r\n <a href=\"javascript:void(0);\" (click)=\"refresh()\" class=\"card-refresh minimal\"\r\n [class.refreshing]=\"_isLoading\">\r\n <i #minimalCircleLoadingTrigger class=\"card-icon card-icon-refresh-lg-{{\r\n _refreshColor == 'light' ? 'white' : 'master'\r\n }}\" [class.fade]=\"_isLoading\"></i>\r\n <i #minimalCircleLoading class=\"card-icon-refresh-lg-white-animated\"\r\n style=\"position: absolute;top:0;left:0\" [class.active]=\"_isLoading\"\r\n [class.hide]=\"_isLoading != true\"></i>\r\n </a>\r\n </li>\r\n </ul>\r\n </ng-template> -->\r\n </div>\r\n </div>\r\n <div class=\"card-body {{ _extraBodyClass }}\" [@collapseState]=\"_isCollapsed == true ? 'inactive' : 'active'\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div *ngIf=\"_messageVisible == true\" class=\"pgn-wrapper\" data-position=\"top\">\r\n <div class=\"pgn pgn-bar push-on-sidebar-open\">\r\n <div class=\"alert alert-danger\">\r\n <span>{{ _message }}</span><button class=\"close\" (click)=\"alertDismiss()\" type=\"button\">\r\n <span aria-hidden=\"true\">\u00D7</span><span class=\"sr-only\">{{ 'Close' }}</span>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"_messageVisible == true\" class=\"card-progress\" [style.backgroundColor]=\"\r\n _minimalHeader ? 'rgba(0,0,0, 0.6)' : 'rgba(255, 255, 255, 0.8)'\r\n \" style=\" display: block;\"></div>\r\n <div [@fadeAnimation]=\"_isLoading\" class=\"card-progress\" [style.backgroundColor]=\"\r\n _minimalHeader ? 'rgba(0,0,0, 0.6)' : 'rgba(255, 255, 255, 0.8)'\r\n \" style=\"display: block;pointer-events: none\">\r\n <mefdev-progress *ngIf=\"_minimalHeader == false\" type=\"{{ _progressType }}\" color=\"{{ _progressColor }}\"\r\n indeterminate=\"true\" class=\"\"></mefdev-progress>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: MefDevProgressComponent, selector: "mefdev-progress", inputs: ["type", "color", "thick", "indeterminate", "value"] }], animations: [
|
|
2529
|
-
trigger("collapseState", [
|
|
2530
|
-
state("inactive", style({
|
|
2531
|
-
opacity: "0",
|
|
2532
|
-
height: 0,
|
|
2533
|
-
paddingBottom: "0"
|
|
2534
|
-
})),
|
|
2535
|
-
state("active", style({
|
|
2536
|
-
opacity: "1",
|
|
2537
|
-
height: "*",
|
|
2538
|
-
paddingBottom: "*"
|
|
2539
|
-
})),
|
|
2540
|
-
transition("inactive => active", animate("125ms ease-in")),
|
|
2541
|
-
transition("active => inactive", animate("125ms ease-out"))
|
|
2542
|
-
]),
|
|
2543
|
-
trigger("fadeAnimation", [
|
|
2544
|
-
state("false", style({
|
|
2545
|
-
opacity: "0",
|
|
2546
|
-
visibility: "hidden"
|
|
2547
|
-
})),
|
|
2548
|
-
state("true", style({
|
|
2549
|
-
opacity: "1",
|
|
2550
|
-
visibility: "visible"
|
|
2551
|
-
})),
|
|
2552
|
-
transition("false => true", animate("500ms ease-in")),
|
|
2553
|
-
transition("true => false", animate("500ms ease-out"))
|
|
2554
|
-
])
|
|
2555
|
-
], encapsulation: i0.ViewEncapsulation.None });
|
|
2556
|
-
}
|
|
2557
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefdevInnerCard, decorators: [{
|
|
2558
|
-
type: Component,
|
|
2559
|
-
args: [{ selector: "mefdev-inner-card", encapsulation: ViewEncapsulation.None, animations: [
|
|
2560
|
-
trigger("collapseState", [
|
|
2561
|
-
state("inactive", style({
|
|
2562
|
-
opacity: "0",
|
|
2563
|
-
height: 0,
|
|
2564
|
-
paddingBottom: "0"
|
|
2565
|
-
})),
|
|
2566
|
-
state("active", style({
|
|
2567
|
-
opacity: "1",
|
|
2568
|
-
height: "*",
|
|
2569
|
-
paddingBottom: "*"
|
|
2570
|
-
})),
|
|
2571
|
-
transition("inactive => active", animate("125ms ease-in")),
|
|
2572
|
-
transition("active => inactive", animate("125ms ease-out"))
|
|
2573
|
-
]),
|
|
2574
|
-
trigger("fadeAnimation", [
|
|
2575
|
-
state("false", style({
|
|
2576
|
-
opacity: "0",
|
|
2577
|
-
visibility: "hidden"
|
|
2578
|
-
})),
|
|
2579
|
-
state("true", style({
|
|
2580
|
-
opacity: "1",
|
|
2581
|
-
visibility: "visible"
|
|
2582
|
-
})),
|
|
2583
|
-
transition("false => true", animate("500ms ease-in")),
|
|
2584
|
-
transition("true => false", animate("500ms ease-out"))
|
|
2585
|
-
])
|
|
2586
|
-
], standalone: false, template: "<div class=\"card card-{{ _type }} {{ _additionalClasses }}\" *ngIf=\"!_close_card\" [class.card-collapsed]=\"_isCollapsed\"\r\n [class.card-maximized]=\"_isMaximixed\" #hostContent class=\"col-sm-12 col-md-6 col-lg-4\"\r\n [ngStyle]=\"{'border': _card_border_style}\">\r\n <div class=\"card-header {{ _extraHeaderClass }}\">\r\n <div class=\"card-title\">\r\n <ng-template [ngTemplateOutlet]=\"CardTitle\"></ng-template>\r\n </div>\r\n <div class=\"card-controls\" *ngIf=\"_showTools == true\">\r\n <ng-template [ngTemplateOutlet]=\"CardExtraControls\"></ng-template>\r\n <ul *ngIf=\"_minimalHeader == false; else minimalBlock\">\r\n <li *ngIf=\"_toggle == true\">\r\n <a href=\"javascript:void(0);\" data-toggle class=\"card-collapse\" (click)=\"toggle()\"><i\r\n class=\"pg pg-arrow_maximize\" [class.pg-arrow_minimize]=\"_isCollapsed\"></i></a>\r\n </li>\r\n <li *ngIf=\"_refresh == true\">\r\n <a href=\"javascript:void(0);\" data-toggle class=\"card-refresh\" (click)=\"refresh()\"><i\r\n class=\"card-icon card-icon-refresh\"></i></a>\r\n </li>\r\n <li *ngIf=\"_maximize == true\">\r\n <a href=\"javascript:void(0);\" data-toggle class=\"card-maximize\" (click)=\"maximize()\"><i\r\n class=\"card-icon card-icon-maximize\"></i></a>\r\n </li>\r\n <li *ngIf=\"_close == true\">\r\n <a href=\"javascript:void(0);\" data-toggle class=\"card-close\" (click)=\"close()\"><i\r\n class=\"card-icon card-icon-close\"></i></a>\r\n </li>\r\n </ul>\r\n <!-- <ng-template #minimalBlock>\r\n <ul>\r\n <li>\r\n <a href=\"javascript:void(0);\" (click)=\"refresh()\" class=\"card-refresh minimal\"\r\n [class.refreshing]=\"_isLoading\">\r\n <i #minimalCircleLoadingTrigger class=\"card-icon card-icon-refresh-lg-{{\r\n _refreshColor == 'light' ? 'white' : 'master'\r\n }}\" [class.fade]=\"_isLoading\"></i>\r\n <i #minimalCircleLoading class=\"card-icon-refresh-lg-white-animated\"\r\n style=\"position: absolute;top:0;left:0\" [class.active]=\"_isLoading\"\r\n [class.hide]=\"_isLoading != true\"></i>\r\n </a>\r\n </li>\r\n </ul>\r\n </ng-template> -->\r\n </div>\r\n </div>\r\n <div class=\"card-body {{ _extraBodyClass }}\" [@collapseState]=\"_isCollapsed == true ? 'inactive' : 'active'\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div *ngIf=\"_messageVisible == true\" class=\"pgn-wrapper\" data-position=\"top\">\r\n <div class=\"pgn pgn-bar push-on-sidebar-open\">\r\n <div class=\"alert alert-danger\">\r\n <span>{{ _message }}</span><button class=\"close\" (click)=\"alertDismiss()\" type=\"button\">\r\n <span aria-hidden=\"true\">\u00D7</span><span class=\"sr-only\">{{ 'Close' }}</span>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"_messageVisible == true\" class=\"card-progress\" [style.backgroundColor]=\"\r\n _minimalHeader ? 'rgba(0,0,0, 0.6)' : 'rgba(255, 255, 255, 0.8)'\r\n \" style=\" display: block;\"></div>\r\n <div [@fadeAnimation]=\"_isLoading\" class=\"card-progress\" [style.backgroundColor]=\"\r\n _minimalHeader ? 'rgba(0,0,0, 0.6)' : 'rgba(255, 255, 255, 0.8)'\r\n \" style=\"display: block;pointer-events: none\">\r\n <mefdev-progress *ngIf=\"_minimalHeader == false\" type=\"{{ _progressType }}\" color=\"{{ _progressColor }}\"\r\n indeterminate=\"true\" class=\"\"></mefdev-progress>\r\n </div>\r\n</div>" }]
|
|
2587
|
-
}], propDecorators: { _hostContent: [{
|
|
2588
|
-
type: ViewChild,
|
|
2589
|
-
args: ["hostContent"]
|
|
2590
|
-
}], minimalCircleLoading: [{
|
|
2591
|
-
type: ViewChild,
|
|
2592
|
-
args: ["minimalCircleLoading"]
|
|
2593
|
-
}], minimalCircleLoadingTrigger: [{
|
|
2594
|
-
type: ViewChild,
|
|
2595
|
-
args: ["minimalCircleLoadingTrigger"]
|
|
2596
|
-
}], CardTitle: [{
|
|
2597
|
-
type: ContentChild,
|
|
2598
|
-
args: ["CardTitle"]
|
|
2599
|
-
}], CardExtraControls: [{
|
|
2600
|
-
type: ContentChild,
|
|
2601
|
-
args: ["CardExtraControls"]
|
|
2602
|
-
}], Title: [{
|
|
2603
|
-
type: Input
|
|
2604
|
-
}], Type: [{
|
|
2605
|
-
type: Input
|
|
2606
|
-
}], MinimalHeader: [{
|
|
2607
|
-
type: Input
|
|
2608
|
-
}], ProgressType: [{
|
|
2609
|
-
type: Input
|
|
2610
|
-
}], ProgressColor: [{
|
|
2611
|
-
type: Input
|
|
2612
|
-
}], Refresh: [{
|
|
2613
|
-
type: Input
|
|
2614
|
-
}], RefreshColor: [{
|
|
2615
|
-
type: Input
|
|
2616
|
-
}], Maximize: [{
|
|
2617
|
-
type: Input
|
|
2618
|
-
}], Close: [{
|
|
2619
|
-
type: Input
|
|
2620
|
-
}], Toggle: [{
|
|
2621
|
-
type: Input
|
|
2622
|
-
}], HeaderClass: [{
|
|
2623
|
-
type: Input
|
|
2624
|
-
}], BodyClass: [{
|
|
2625
|
-
type: Input
|
|
2626
|
-
}], AdditionalClasses: [{
|
|
2627
|
-
type: Input
|
|
2628
|
-
}], Controls: [{
|
|
2629
|
-
type: Input
|
|
2630
|
-
}], ShowMessage: [{
|
|
2631
|
-
type: Input
|
|
2632
|
-
}], Message: [{
|
|
2633
|
-
type: Input
|
|
2634
|
-
}], Loading: [{
|
|
2635
|
-
type: Input
|
|
2636
|
-
}], TimeOut: [{
|
|
2637
|
-
type: Input
|
|
2638
|
-
}], CardBorderStyle: [{
|
|
2639
|
-
type: Input
|
|
2640
|
-
}], onRefresh: [{
|
|
2641
|
-
type: Output
|
|
2642
|
-
}] } });
|
|
2643
|
-
|
|
2644
|
-
/**
|
|
2645
|
-
* Component for displaying a card with a title, image, and description.
|
|
2646
|
-
*
|
|
2647
|
-
* Example of usage:
|
|
2648
|
-
*
|
|
2649
|
-
* ```
|
|
2650
|
-
* <mefdev-card>
|
|
2651
|
-
* <ng-template #card_title>
|
|
2652
|
-
* <!-- Content for the card title -->
|
|
2653
|
-
* </ng-template>
|
|
2654
|
-
* <ng-template #card_footer>
|
|
2655
|
-
* <!-- Content for the card footer -->
|
|
2656
|
-
* </ng-template>
|
|
2657
|
-
* </mefdev-card>
|
|
2658
|
-
* ```
|
|
2659
|
-
*
|
|
2660
|
-
* <example-url>https://platform.mef.dev/ui_kit_demo/view/page_components/card/card</example-url>
|
|
2661
|
-
*/
|
|
2662
|
-
class CardComponent {
|
|
2663
|
-
router;
|
|
2664
|
-
/**
|
|
2665
|
-
* The template reference to the content of the card title.
|
|
2666
|
-
*
|
|
2667
|
-
* @usageNotes
|
|
2668
|
-
* ```
|
|
2669
|
-
* <mefdev-card>
|
|
2670
|
-
* <ng-template #card_title>
|
|
2671
|
-
* <!-- Content for the card title -->
|
|
2672
|
-
* </ng-template>
|
|
2673
|
-
* </mefdev-card>
|
|
2674
|
-
* ```
|
|
2675
|
-
*/
|
|
2676
|
-
card_title;
|
|
2677
|
-
/**
|
|
2678
|
-
* The template reference to the content of the card footer.
|
|
2679
|
-
* @usageNotes
|
|
2680
|
-
* ```
|
|
2681
|
-
* <mefdev-card>
|
|
2682
|
-
* <ng-template #card_footer>
|
|
2683
|
-
* <!-- Content for the card footer -->
|
|
2684
|
-
* </ng-template>
|
|
2685
|
-
* </mefdev-card>
|
|
2686
|
-
* ```
|
|
2687
|
-
*/
|
|
2688
|
-
card_footer;
|
|
2689
|
-
/**
|
|
2690
|
-
* The type of the card.
|
|
2691
|
-
* @usageNotes
|
|
2692
|
-
* ```
|
|
2693
|
-
* <mefdev-card [card_type] = "'type'"></mefdev-card>
|
|
2694
|
-
* ```
|
|
2695
|
-
*/
|
|
2696
|
-
card_type;
|
|
2697
|
-
/**
|
|
2698
|
-
* The path to the image.
|
|
2699
|
-
* @usageNotes
|
|
2700
|
-
* ```
|
|
2701
|
-
* <mefdev-card [img] = "'img/path/img.png'"></mefdev-card>
|
|
2702
|
-
* ```
|
|
2703
|
-
*/
|
|
2704
|
-
img;
|
|
2705
|
-
/**
|
|
2706
|
-
* The path, where user goes after click at the image.
|
|
2707
|
-
* @usageNotes
|
|
2708
|
-
* ```
|
|
2709
|
-
* <mefdev-card [imgUrl] = "'Img.url'"></mefdev-card>
|
|
2710
|
-
* ```
|
|
2711
|
-
*/
|
|
2712
|
-
imgUrl;
|
|
2713
|
-
/**
|
|
2714
|
-
* The description of the card.
|
|
2715
|
-
* @usageNotes
|
|
2716
|
-
* ```
|
|
2717
|
-
* <mefdev-card [description] = "'description'"></mefdev-card>
|
|
2718
|
-
* ```
|
|
2719
|
-
*/
|
|
2720
|
-
description;
|
|
2721
|
-
constructor(router) {
|
|
2722
|
-
this.router = router;
|
|
2723
|
-
}
|
|
2724
|
-
ngOnInit() {
|
|
2725
|
-
}
|
|
2726
|
-
/**
|
|
2727
|
-
* Event handler for image click.
|
|
2728
|
-
* Navigates to the specified URL.
|
|
2729
|
-
*/
|
|
2730
|
-
imgClick() {
|
|
2731
|
-
this.router.navigate(['/', this.imgUrl.toString()]);
|
|
2732
|
-
}
|
|
2733
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: CardComponent, deps: [{ token: i1$1.Router }], target: i0.ɵɵFactoryTarget.Component });
|
|
2734
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type: CardComponent, isStandalone: false, selector: "mefdev-card", inputs: { card_type: "card_type", img: "img", imgUrl: "imgUrl", description: "description" }, queries: [{ propertyName: "card_title", first: true, predicate: ["card_title"], descendants: true }, { propertyName: "card_footer", first: true, predicate: ["card_footer"], descendants: true }], ngImport: i0, template: "<mefdev-inner-card\r\n MinimalHeader=\"true\"\r\n TimeOut=\"2500\"\r\n [Refresh]=\"false\"\r\n [Close]=\"false\">\r\n\r\n <ng-template #CardTitle>\r\n <ng-template class=\"card-title body-1\" [ngTemplateOutlet]=\"card_title\"></ng-template>\r\n </ng-template>\r\n\r\n <div class=\"plugin-type\">\r\n {{ card_type }}\r\n </div>\r\n\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <div class=\"m-l-2 card-description\">\r\n <div *ngIf=\"!description || description == ''\" class=\"card-no-description\"> {{'No plugin description'}}</div>\r\n <p>\r\n {{description}}\r\n </p>\r\n </div>\r\n </div>\r\n <div class=\"col-12 mt-3 text-center card-img\"\r\n [ngStyle]=\"{'background-color': img ? 'transparent' : '#fff'}\">\r\n <div *ngIf=\"!img || img == ''\">\r\n <img src=\"assets/images/md_icon.png\"\r\n style=\"max-width: 110px; max-height: 110px;\"/>\r\n </div>\r\n <div *ngIf=\"img\">\r\n <img src=\"{{img}}\" alt=\"\" class=\"image-responsive-height img-middle\"\r\n style=\"max-width: 260px; max-height: 150px;\"\r\n onclick=\"imgClick()\"\r\n />\r\n </div>\r\n\r\n </div>\r\n </div>\r\n <div class=\"row mb-3 mt-3\">\r\n <div class=\"col-12\">\r\n <ng-template [ngTemplateOutlet]=\"card_footer\"></ng-template>\r\n </div>\r\n </div>\r\n</mefdev-inner-card>\r\n", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.h1,h1{font-family:Montserrat,Arial,sans-serif;font-size:32px;line-height:40px;font-weight:700;text-transform:none;color:#000;margin-bottom:16px}.h2,h2{font-family:Montserrat,Arial,sans-serif;font-size:24px;line-height:30px;font-weight:700;text-transform:none;color:#000;margin-bottom:12px}.h3,h3{font-family:Montserrat,Arial,sans-serif;font-size:18px;line-height:24px;font-weight:600;text-transform:none;color:#000;margin-bottom:10px}.h4,h4{font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:22px;font-weight:600;text-transform:none;letter-spacing:.5px;color:#000;margin-bottom:8px}.h5,h5{font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:20px;font-weight:500;text-transform:none;color:#000;margin-bottom:6px}.h6,.plugin-type,h6{font-family:Montserrat,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:500;text-transform:none;color:#000;margin-bottom:4px}.body-1,::ng-deep .card-title span,body-1{font-family:Open Sans,Arial,sans-serif;font-size:18px;line-height:27px;font-weight:700;color:#000}.body-2,body-2{font-family:Open Sans,Arial,sans-serif;font-size:16px;line-height:24px;font-weight:400;color:#000}.body-3,body-3{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:700;color:#000}.body-4,body-4{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:400;color:#000}.body-5,.card-description,.card-no-description,body-5{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:600;color:#000}.body-6,body-6{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:16px;font-weight:400;color:#000}::ng-deep .card-title{width:70%}.plugin-type{right:20px;top:25px;position:absolute;background-color:#cf0106;border-radius:5px 0 0 5px;margin-right:-20px;height:28px;padding:5px 15px;color:#fff}.card-description{height:40px;overflow-y:clip;color:#4d4d4d}.card-no-description{overflow-y:clip;height:60px;color:#929292}.card-img{padding:0;height:130px;display:flex;align-items:center;justify-content:center;width:-webkit-fill-available;margin-right:calc(var(--bs-gutter-x) * .5);margin-left:calc(var(--bs-gutter-x) * .5)}.card-default{background-color:#eaeaea;border-radius:5px}.card-header{height:72px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: MefdevInnerCard, selector: "mefdev-inner-card", inputs: ["Title", "Type", "MinimalHeader", "ProgressType", "ProgressColor", "Refresh", "RefreshColor", "Maximize", "Close", "Toggle", "HeaderClass", "BodyClass", "AdditionalClasses", "Controls", "ShowMessage", "Message", "Loading", "TimeOut", "CardBorderStyle"], outputs: ["onRefresh"] }] });
|
|
2735
|
-
}
|
|
2736
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: CardComponent, decorators: [{
|
|
2737
|
-
type: Component,
|
|
2738
|
-
args: [{ selector: 'mefdev-card', standalone: false, template: "<mefdev-inner-card\r\n MinimalHeader=\"true\"\r\n TimeOut=\"2500\"\r\n [Refresh]=\"false\"\r\n [Close]=\"false\">\r\n\r\n <ng-template #CardTitle>\r\n <ng-template class=\"card-title body-1\" [ngTemplateOutlet]=\"card_title\"></ng-template>\r\n </ng-template>\r\n\r\n <div class=\"plugin-type\">\r\n {{ card_type }}\r\n </div>\r\n\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <div class=\"m-l-2 card-description\">\r\n <div *ngIf=\"!description || description == ''\" class=\"card-no-description\"> {{'No plugin description'}}</div>\r\n <p>\r\n {{description}}\r\n </p>\r\n </div>\r\n </div>\r\n <div class=\"col-12 mt-3 text-center card-img\"\r\n [ngStyle]=\"{'background-color': img ? 'transparent' : '#fff'}\">\r\n <div *ngIf=\"!img || img == ''\">\r\n <img src=\"assets/images/md_icon.png\"\r\n style=\"max-width: 110px; max-height: 110px;\"/>\r\n </div>\r\n <div *ngIf=\"img\">\r\n <img src=\"{{img}}\" alt=\"\" class=\"image-responsive-height img-middle\"\r\n style=\"max-width: 260px; max-height: 150px;\"\r\n onclick=\"imgClick()\"\r\n />\r\n </div>\r\n\r\n </div>\r\n </div>\r\n <div class=\"row mb-3 mt-3\">\r\n <div class=\"col-12\">\r\n <ng-template [ngTemplateOutlet]=\"card_footer\"></ng-template>\r\n </div>\r\n </div>\r\n</mefdev-inner-card>\r\n", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.h1,h1{font-family:Montserrat,Arial,sans-serif;font-size:32px;line-height:40px;font-weight:700;text-transform:none;color:#000;margin-bottom:16px}.h2,h2{font-family:Montserrat,Arial,sans-serif;font-size:24px;line-height:30px;font-weight:700;text-transform:none;color:#000;margin-bottom:12px}.h3,h3{font-family:Montserrat,Arial,sans-serif;font-size:18px;line-height:24px;font-weight:600;text-transform:none;color:#000;margin-bottom:10px}.h4,h4{font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:22px;font-weight:600;text-transform:none;letter-spacing:.5px;color:#000;margin-bottom:8px}.h5,h5{font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:20px;font-weight:500;text-transform:none;color:#000;margin-bottom:6px}.h6,.plugin-type,h6{font-family:Montserrat,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:500;text-transform:none;color:#000;margin-bottom:4px}.body-1,::ng-deep .card-title span,body-1{font-family:Open Sans,Arial,sans-serif;font-size:18px;line-height:27px;font-weight:700;color:#000}.body-2,body-2{font-family:Open Sans,Arial,sans-serif;font-size:16px;line-height:24px;font-weight:400;color:#000}.body-3,body-3{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:700;color:#000}.body-4,body-4{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:400;color:#000}.body-5,.card-description,.card-no-description,body-5{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:600;color:#000}.body-6,body-6{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:16px;font-weight:400;color:#000}::ng-deep .card-title{width:70%}.plugin-type{right:20px;top:25px;position:absolute;background-color:#cf0106;border-radius:5px 0 0 5px;margin-right:-20px;height:28px;padding:5px 15px;color:#fff}.card-description{height:40px;overflow-y:clip;color:#4d4d4d}.card-no-description{overflow-y:clip;height:60px;color:#929292}.card-img{padding:0;height:130px;display:flex;align-items:center;justify-content:center;width:-webkit-fill-available;margin-right:calc(var(--bs-gutter-x) * .5);margin-left:calc(var(--bs-gutter-x) * .5)}.card-default{background-color:#eaeaea;border-radius:5px}.card-header{height:72px}\n"] }]
|
|
2739
|
-
}], ctorParameters: () => [{ type: i1$1.Router }], propDecorators: { card_title: [{
|
|
2740
|
-
type: ContentChild,
|
|
2741
|
-
args: ["card_title"]
|
|
2742
|
-
}], card_footer: [{
|
|
2743
|
-
type: ContentChild,
|
|
2744
|
-
args: ["card_footer"]
|
|
2745
|
-
}], card_type: [{
|
|
2746
|
-
type: Input
|
|
2747
|
-
}], img: [{
|
|
2748
|
-
type: Input
|
|
2749
|
-
}], imgUrl: [{
|
|
2750
|
-
type: Input
|
|
2751
|
-
}], description: [{
|
|
2752
|
-
type: Input
|
|
2753
|
-
}] } });
|
|
2754
|
-
|
|
2755
|
-
var CartTypeColors;
|
|
2756
|
-
(function (CartTypeColors) {
|
|
2757
|
-
CartTypeColors["UNSET"] = "UNSET";
|
|
2758
|
-
CartTypeColors["RED"] = "RED";
|
|
2759
|
-
CartTypeColors["GREEN"] = "GREEN";
|
|
2760
|
-
})(CartTypeColors || (CartTypeColors = {}));
|
|
2761
|
-
|
|
2762
|
-
/**
|
|
2763
|
-
* Component for displaying a long card with a title, parameters, and description.
|
|
2764
|
-
*
|
|
2765
|
-
* Example of usage:
|
|
2766
|
-
*
|
|
2767
|
-
* ```
|
|
2768
|
-
* <mefdev-card-long
|
|
2769
|
-
* [type_text]="'Type Text'"
|
|
2770
|
-
* [type_color]="CartTypeColors.RED"
|
|
2771
|
-
* [img]="'path/to/image.jpg'"
|
|
2772
|
-
* [imgUrl]="'path/to/image'"
|
|
2773
|
-
* [description]="'Card description'">
|
|
2774
|
-
*
|
|
2775
|
-
* <ng-template #title>
|
|
2776
|
-
* <!-- Content for the card title -->
|
|
2777
|
-
* </ng-template>
|
|
2778
|
-
|
|
2779
|
-
* <ng-template #params>
|
|
2780
|
-
* <!-- Content for the card parameters -->
|
|
2781
|
-
* </ng-template>
|
|
2782
|
-
|
|
2783
|
-
* <ng-template #second_col>
|
|
2784
|
-
* <!-- Content for the second column -->
|
|
2785
|
-
* </ng-template>
|
|
2786
|
-
|
|
2787
|
-
* <ng-template #third_col>
|
|
2788
|
-
* <!-- Content for the third column -->
|
|
2789
|
-
* </ng-template>
|
|
2790
|
-
* </mefdev-card-long>
|
|
2791
|
-
* ```
|
|
2792
|
-
*
|
|
2793
|
-
* <example-url>https://platform.mef.dev/ui_kit_demo/view/page_components/card/card_long</example-url>
|
|
2794
|
-
*/
|
|
2795
|
-
class CardLongComponent {
|
|
2796
|
-
router;
|
|
2797
|
-
/**
|
|
2798
|
-
* Template for displaying the title of the card.
|
|
2799
|
-
* ```
|
|
2800
|
-
* <mefdev-card-long>
|
|
2801
|
-
* <ng-template #title>
|
|
2802
|
-
* <!-- Content for the card title -->
|
|
2803
|
-
* </ng-template>
|
|
2804
|
-
* </mefdev-card-long>
|
|
2805
|
-
* ```
|
|
2806
|
-
*/
|
|
2807
|
-
title;
|
|
2808
|
-
/**
|
|
2809
|
-
* Template for displaying the parameters of the card.
|
|
2810
|
-
* ```
|
|
2811
|
-
* <mefdev-card-long>
|
|
2812
|
-
* <ng-template #params>
|
|
2813
|
-
* <!-- Content for the card params -->
|
|
2814
|
-
* </ng-template>
|
|
2815
|
-
* </mefdev-card-long>
|
|
2816
|
-
* ```
|
|
2817
|
-
*/
|
|
2818
|
-
params;
|
|
2819
|
-
/**
|
|
2820
|
-
* Template for displaying the content of the second column.
|
|
2821
|
-
* ```
|
|
2822
|
-
* <mefdev-card-long>
|
|
2823
|
-
* <ng-template #second_col>
|
|
2824
|
-
* <!-- Content for the card second column -->
|
|
2825
|
-
* </ng-template>
|
|
2826
|
-
* </mefdev-card-long>
|
|
2827
|
-
* ```
|
|
2828
|
-
*/
|
|
2829
|
-
second_col;
|
|
2830
|
-
/**
|
|
2831
|
-
* Template for displaying the content of the third column.
|
|
2832
|
-
* ```
|
|
2833
|
-
* <mefdev-card-long>
|
|
2834
|
-
* <ng-template #third_col>
|
|
2835
|
-
* <!-- Content for the card third column -->
|
|
2836
|
-
* </ng-template>
|
|
2837
|
-
* </mefdev-card-long>
|
|
2838
|
-
* ```
|
|
2839
|
-
*/
|
|
2840
|
-
third_col;
|
|
2841
|
-
/**
|
|
2842
|
-
* The text for the card type.
|
|
2843
|
-
* @usageNotes
|
|
2844
|
-
* ```
|
|
2845
|
-
* <mefdev-card-long type_text = "'Type'"></<mefdev-card-long>
|
|
2846
|
-
* ```
|
|
2847
|
-
*/
|
|
2848
|
-
type_text;
|
|
2849
|
-
/**
|
|
2850
|
-
* The color of the card type.
|
|
2851
|
-
* @usageNotes
|
|
2852
|
-
* ```
|
|
2853
|
-
* <mefdev-card-long type_color = "'RED'"></<mefdev-card-long>
|
|
2854
|
-
* ```
|
|
2855
|
-
* Colors: RED, UNSET, GREEN
|
|
2856
|
-
|
|
2857
|
-
*/
|
|
2858
|
-
type_color = CartTypeColors.UNSET;
|
|
2859
|
-
/**
|
|
2860
|
-
* The path to the image.
|
|
2861
|
-
* @usageNotes
|
|
2862
|
-
* ```
|
|
2863
|
-
* <mefdev-card-long [img] = "'img/path/img.png'"></mefdev-card-long>
|
|
2864
|
-
* ```
|
|
2865
|
-
*/
|
|
2866
|
-
img;
|
|
2867
|
-
/**
|
|
2868
|
-
* The path, where user goes after click at the image.
|
|
2869
|
-
* @usageNotes
|
|
2870
|
-
* ```
|
|
2871
|
-
* <mefdev-card-long [imgUrl] = "'Img.url'"></mefdev-card-long>
|
|
2872
|
-
* ```
|
|
2873
|
-
*/
|
|
2874
|
-
imgUrl;
|
|
2875
|
-
/**
|
|
2876
|
-
* The description of the card.
|
|
2877
|
-
* @usageNotes
|
|
2878
|
-
* ```
|
|
2879
|
-
* <mefdev-card-long [description] = "'description'"></mefdev-card-long>
|
|
2880
|
-
* ```
|
|
2881
|
-
*/
|
|
2882
|
-
description;
|
|
2883
|
-
constructor(router) {
|
|
2884
|
-
this.router = router;
|
|
2885
|
-
}
|
|
2886
|
-
ngOnInit() {
|
|
2887
|
-
}
|
|
2888
|
-
/**
|
|
2889
|
-
* Event handler for image click.
|
|
2890
|
-
* Navigates to the specified URL.
|
|
2891
|
-
*/
|
|
2892
|
-
imgClick() {
|
|
2893
|
-
this.router.navigate(['/', this.imgUrl.toString()]);
|
|
2894
|
-
}
|
|
2895
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: CardLongComponent, deps: [{ token: i1$1.Router }], target: i0.ɵɵFactoryTarget.Component });
|
|
2896
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type: CardLongComponent, isStandalone: false, selector: "mefdev-card-long", inputs: { type_text: "type_text", type_color: "type_color", img: "img", imgUrl: "imgUrl", description: "description" }, queries: [{ propertyName: "title", first: true, predicate: ["title"], descendants: true }, { propertyName: "params", first: true, predicate: ["params"], descendants: true }, { propertyName: "second_col", first: true, predicate: ["second_col"], descendants: true }, { propertyName: "third_col", first: true, predicate: ["third_col"], descendants: true }], ngImport: i0, template: "<mefdev-inner-card\r\n MinimalHeader=\"true\"\r\n TimeOut=\"2500\"\r\n [Refresh]=\"false\"\r\n [Close]=\"false\"\r\n>\r\n\r\n <ng-template #CardTitle>\r\n <ng-template class=\"card-title\" [ngTemplateOutlet]=\"title\"></ng-template>\r\n </ng-template>\r\n\r\n <ng-template #CardExtraControls>\r\n <div class=\"plugin-type\"\r\n [ngClass]=\"{\r\n 'b-color-Light-Gray-1': type_color === 'UNSET',\r\n 'b-color-Red': type_color === 'RED',\r\n 'b-color-Green': type_color === 'GREEN'}\">\r\n {{type_text}}\r\n </div>\r\n </ng-template>\r\n\r\n <div class=\"row h-100 m-b-10\">\r\n <div class=\"col-lg-3 col-12 card-col\">\r\n <div class=\"row\">\r\n <div class=\"col-12 card-img m-b-10\">\r\n <div *ngIf=\"!img || img == ''\">\r\n <img src=\"assets/images/md_icon.png\"\r\n style=\"max-width: 110px; max-height: 110px;\"/>\r\n </div>\r\n <div *ngIf=\"img\">\r\n <img src=\"{{img}}\" alt=\"\" class=\"image-responsive-height img-middle\"\r\n height=\"110px\"\r\n style=\"max-width: 110px; max-height: 110px;\"\r\n onclick=\"imgClick()\"\r\n />\r\n </div>\r\n </div>\r\n <div class=\"col-12 m-t-2 body-6 text-dark params-block\">\r\n <ng-template [ngTemplateOutlet]=\"params\"></ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-lg-5 col-12 card-col\">\r\n <ng-template [ngTemplateOutlet]=\"second_col\"></ng-template>\r\n </div>\r\n\r\n <div class=\"col-lg-4 col-12 card-col mt-lg-0 mt-5\">\r\n <ng-template [ngTemplateOutlet]=\"third_col\"></ng-template>\r\n </div>\r\n\r\n </div>\r\n</mefdev-inner-card>\r\n", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.h1,h1{font-family:Montserrat,Arial,sans-serif;font-size:32px;line-height:40px;font-weight:700;text-transform:none;color:#000;margin-bottom:16px}.h2,h2{font-family:Montserrat,Arial,sans-serif;font-size:24px;line-height:30px;font-weight:700;text-transform:none;color:#000;margin-bottom:12px}.h3,:host::ng-deep .card-title span,h3{font-family:Montserrat,Arial,sans-serif;font-size:18px;line-height:24px;font-weight:600;text-transform:none;color:#000;margin-bottom:10px}.h4,h4{font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:22px;font-weight:600;text-transform:none;letter-spacing:.5px;color:#000;margin-bottom:8px}.h5,h5{font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:20px;font-weight:500;text-transform:none;color:#000;margin-bottom:6px}.h6,:host::ng-deep .plugin-type,h6{font-family:Montserrat,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:500;text-transform:none;color:#000;margin-bottom:4px}.body-1,body-1{font-family:Open Sans,Arial,sans-serif;font-size:18px;line-height:27px;font-weight:700;color:#000}.body-2,body-2{font-family:Open Sans,Arial,sans-serif;font-size:16px;line-height:24px;font-weight:400;color:#000}.body-3,body-3{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:700;color:#000}.body-4,body-4{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:400;color:#000}.body-5,:host::ng-deep .card-description,:host::ng-deep .card-no-description,body-5{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:600;color:#000}.body-6,body-6{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:16px;font-weight:400;color:#000}:host::ng-deep .params-block .row{margin-top:.75em}:host::ng-deep .params-block .row:last-child{margin-bottom:.75em}:host::ng-deep .card-col{min-height:220px}:host::ng-deep .header-link{opacity:1}:host::ng-deep .card-default{background-color:#f3f3f3;border-radius:5px}:host::ng-deep .card-title{width:80%;color:#000}:host::ng-deep .plugin-type{border-radius:5px 0 0 5px;margin-right:-20px;height:28px;padding:5px 15px;color:#fff}:host::ng-deep .card-description{height:40px;overflow-y:clip;color:#4d4d4d}:host::ng-deep .card-no-description{overflow-y:clip;height:60px;color:#929292}:host::ng-deep .card-img{padding:0;height:130px;background-color:#fff;display:flex;align-items:center;justify-content:center;width:-webkit-fill-available;margin-right:calc(var(--bs-gutter-x) * .5);margin-left:calc(var(--bs-gutter-x) * .5)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: MefdevInnerCard, selector: "mefdev-inner-card", inputs: ["Title", "Type", "MinimalHeader", "ProgressType", "ProgressColor", "Refresh", "RefreshColor", "Maximize", "Close", "Toggle", "HeaderClass", "BodyClass", "AdditionalClasses", "Controls", "ShowMessage", "Message", "Loading", "TimeOut", "CardBorderStyle"], outputs: ["onRefresh"] }] });
|
|
2897
|
-
}
|
|
2898
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: CardLongComponent, decorators: [{
|
|
2899
|
-
type: Component,
|
|
2900
|
-
args: [{ selector: 'mefdev-card-long', standalone: false, template: "<mefdev-inner-card\r\n MinimalHeader=\"true\"\r\n TimeOut=\"2500\"\r\n [Refresh]=\"false\"\r\n [Close]=\"false\"\r\n>\r\n\r\n <ng-template #CardTitle>\r\n <ng-template class=\"card-title\" [ngTemplateOutlet]=\"title\"></ng-template>\r\n </ng-template>\r\n\r\n <ng-template #CardExtraControls>\r\n <div class=\"plugin-type\"\r\n [ngClass]=\"{\r\n 'b-color-Light-Gray-1': type_color === 'UNSET',\r\n 'b-color-Red': type_color === 'RED',\r\n 'b-color-Green': type_color === 'GREEN'}\">\r\n {{type_text}}\r\n </div>\r\n </ng-template>\r\n\r\n <div class=\"row h-100 m-b-10\">\r\n <div class=\"col-lg-3 col-12 card-col\">\r\n <div class=\"row\">\r\n <div class=\"col-12 card-img m-b-10\">\r\n <div *ngIf=\"!img || img == ''\">\r\n <img src=\"assets/images/md_icon.png\"\r\n style=\"max-width: 110px; max-height: 110px;\"/>\r\n </div>\r\n <div *ngIf=\"img\">\r\n <img src=\"{{img}}\" alt=\"\" class=\"image-responsive-height img-middle\"\r\n height=\"110px\"\r\n style=\"max-width: 110px; max-height: 110px;\"\r\n onclick=\"imgClick()\"\r\n />\r\n </div>\r\n </div>\r\n <div class=\"col-12 m-t-2 body-6 text-dark params-block\">\r\n <ng-template [ngTemplateOutlet]=\"params\"></ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-lg-5 col-12 card-col\">\r\n <ng-template [ngTemplateOutlet]=\"second_col\"></ng-template>\r\n </div>\r\n\r\n <div class=\"col-lg-4 col-12 card-col mt-lg-0 mt-5\">\r\n <ng-template [ngTemplateOutlet]=\"third_col\"></ng-template>\r\n </div>\r\n\r\n </div>\r\n</mefdev-inner-card>\r\n", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.h1,h1{font-family:Montserrat,Arial,sans-serif;font-size:32px;line-height:40px;font-weight:700;text-transform:none;color:#000;margin-bottom:16px}.h2,h2{font-family:Montserrat,Arial,sans-serif;font-size:24px;line-height:30px;font-weight:700;text-transform:none;color:#000;margin-bottom:12px}.h3,:host::ng-deep .card-title span,h3{font-family:Montserrat,Arial,sans-serif;font-size:18px;line-height:24px;font-weight:600;text-transform:none;color:#000;margin-bottom:10px}.h4,h4{font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:22px;font-weight:600;text-transform:none;letter-spacing:.5px;color:#000;margin-bottom:8px}.h5,h5{font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:20px;font-weight:500;text-transform:none;color:#000;margin-bottom:6px}.h6,:host::ng-deep .plugin-type,h6{font-family:Montserrat,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:500;text-transform:none;color:#000;margin-bottom:4px}.body-1,body-1{font-family:Open Sans,Arial,sans-serif;font-size:18px;line-height:27px;font-weight:700;color:#000}.body-2,body-2{font-family:Open Sans,Arial,sans-serif;font-size:16px;line-height:24px;font-weight:400;color:#000}.body-3,body-3{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:700;color:#000}.body-4,body-4{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:400;color:#000}.body-5,:host::ng-deep .card-description,:host::ng-deep .card-no-description,body-5{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:600;color:#000}.body-6,body-6{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:16px;font-weight:400;color:#000}:host::ng-deep .params-block .row{margin-top:.75em}:host::ng-deep .params-block .row:last-child{margin-bottom:.75em}:host::ng-deep .card-col{min-height:220px}:host::ng-deep .header-link{opacity:1}:host::ng-deep .card-default{background-color:#f3f3f3;border-radius:5px}:host::ng-deep .card-title{width:80%;color:#000}:host::ng-deep .plugin-type{border-radius:5px 0 0 5px;margin-right:-20px;height:28px;padding:5px 15px;color:#fff}:host::ng-deep .card-description{height:40px;overflow-y:clip;color:#4d4d4d}:host::ng-deep .card-no-description{overflow-y:clip;height:60px;color:#929292}:host::ng-deep .card-img{padding:0;height:130px;background-color:#fff;display:flex;align-items:center;justify-content:center;width:-webkit-fill-available;margin-right:calc(var(--bs-gutter-x) * .5);margin-left:calc(var(--bs-gutter-x) * .5)}\n"] }]
|
|
2901
|
-
}], ctorParameters: () => [{ type: i1$1.Router }], propDecorators: { title: [{
|
|
2902
|
-
type: ContentChild,
|
|
2903
|
-
args: ["title"]
|
|
2904
|
-
}], params: [{
|
|
2905
|
-
type: ContentChild,
|
|
2906
|
-
args: ["params"]
|
|
2907
|
-
}], second_col: [{
|
|
2908
|
-
type: ContentChild,
|
|
2909
|
-
args: ["second_col"]
|
|
2910
|
-
}], third_col: [{
|
|
2911
|
-
type: ContentChild,
|
|
2912
|
-
args: ["third_col"]
|
|
2913
|
-
}], type_text: [{
|
|
2914
|
-
type: Input
|
|
2915
|
-
}], type_color: [{
|
|
2916
|
-
type: Input
|
|
2917
|
-
}], img: [{
|
|
2918
|
-
type: Input
|
|
2919
|
-
}], imgUrl: [{
|
|
2920
|
-
type: Input
|
|
2921
|
-
}], description: [{
|
|
2922
|
-
type: Input
|
|
2923
|
-
}] } });
|
|
2924
|
-
|
|
2925
|
-
/**
|
|
2926
|
-
* Component for displaying a simple card with a title.
|
|
2927
|
-
*
|
|
2928
|
-
* Example of usage:
|
|
2929
|
-
*```
|
|
2930
|
-
* <mefdev-card-simple [disabled]="true">
|
|
2931
|
-
* <ng-template #card_title>
|
|
2932
|
-
* <!-- Content for the card title -->
|
|
2933
|
-
* </ng-template>
|
|
2934
|
-
* </mefdev-card-simple>
|
|
2935
|
-
*```
|
|
2936
|
-
*
|
|
2937
|
-
* <example-url>https://platform.mef.dev/ui_kit_demo/view/page_components/card/card_simple</example-url>
|
|
2938
|
-
*/
|
|
2939
|
-
class CardSimpleComponent {
|
|
2940
|
-
/**
|
|
2941
|
-
* Determines whether the card is disabled or not.
|
|
2942
|
-
*/
|
|
2943
|
-
isDisabled = false;
|
|
2944
|
-
/**
|
|
2945
|
-
* Template for displaying the title of the card.
|
|
2946
|
-
*```
|
|
2947
|
-
* <mefdev-card-simple>
|
|
2948
|
-
* <ng-template #card_title>
|
|
2949
|
-
* <h3>Card Title</h3>
|
|
2950
|
-
* </ng-template>
|
|
2951
|
-
* </mefdev-card-simple>
|
|
2952
|
-
*```
|
|
2953
|
-
*/
|
|
2954
|
-
card_title;
|
|
2955
|
-
constructor() { }
|
|
2956
|
-
ngOnInit() {
|
|
2957
|
-
}
|
|
2958
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: CardSimpleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2959
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type: CardSimpleComponent, isStandalone: false, selector: "mefdev-card-simple", inputs: { isDisabled: ["disabled", "isDisabled"] }, queries: [{ propertyName: "card_title", first: true, predicate: ["card_title"], descendants: true }], ngImport: i0, template: "<div class=\"card-simple\" [ngClass]=\"{ 'unused-block':isDisabled }\">\r\n <div class=\"row m-2 body-1\" *ngIf=\"card_title\">\r\n <div class=\"col-12\">\r\n <ng-template [ngTemplateOutlet]=\"card_title\"></ng-template>\r\n </div>\r\n </div>\r\n <div class=\"row m-2\">\r\n <div class=\"col-12\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.card-simple{background-color:#f3f3f3;padding:.5em;border-radius:5px}.unused-block{opacity:.6;pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
|
|
2960
|
-
}
|
|
2961
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: CardSimpleComponent, decorators: [{
|
|
2962
|
-
type: Component,
|
|
2963
|
-
args: [{ selector: 'mefdev-card-simple', standalone: false, template: "<div class=\"card-simple\" [ngClass]=\"{ 'unused-block':isDisabled }\">\r\n <div class=\"row m-2 body-1\" *ngIf=\"card_title\">\r\n <div class=\"col-12\">\r\n <ng-template [ngTemplateOutlet]=\"card_title\"></ng-template>\r\n </div>\r\n </div>\r\n <div class=\"row m-2\">\r\n <div class=\"col-12\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.card-simple{background-color:#f3f3f3;padding:.5em;border-radius:5px}.unused-block{opacity:.6;pointer-events:none}\n"] }]
|
|
2964
|
-
}], ctorParameters: () => [], propDecorators: { isDisabled: [{
|
|
2965
|
-
type: Input,
|
|
2966
|
-
args: ["disabled"]
|
|
2967
|
-
}], card_title: [{
|
|
2968
|
-
type: ContentChild,
|
|
2969
|
-
args: ["card_title"]
|
|
2970
|
-
}] } });
|
|
2971
|
-
|
|
2972
|
-
class ProgressConfig {
|
|
2973
|
-
color = "primary";
|
|
2974
|
-
thickness = 1;
|
|
2975
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: ProgressConfig, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2976
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: ProgressConfig });
|
|
2977
|
-
}
|
|
2978
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: ProgressConfig, decorators: [{
|
|
2979
|
-
type: Injectable
|
|
2980
|
-
}] });
|
|
2981
|
-
|
|
2982
|
-
class MefDevProgressModule {
|
|
2983
|
-
static forRoot() {
|
|
2984
|
-
return { ngModule: MefDevProgressModule, providers: [ProgressConfig] };
|
|
2985
|
-
}
|
|
2986
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevProgressModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2987
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type: MefDevProgressModule, declarations: [MefDevProgressComponent], imports: [CommonModule], exports: [MefDevProgressComponent] });
|
|
2988
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevProgressModule, imports: [CommonModule] });
|
|
2989
|
-
}
|
|
2990
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevProgressModule, decorators: [{
|
|
2991
|
-
type: NgModule,
|
|
2992
|
-
args: [{
|
|
2993
|
-
imports: [CommonModule],
|
|
2994
|
-
declarations: [MefDevProgressComponent],
|
|
2995
|
-
exports: [MefDevProgressComponent]
|
|
2996
|
-
}]
|
|
2997
|
-
}] });
|
|
2998
|
-
|
|
2999
|
-
class MefdevInnerCardModule {
|
|
3000
|
-
static forRoot() {
|
|
3001
|
-
return {
|
|
3002
|
-
ngModule: MefdevInnerCardModule
|
|
3003
|
-
};
|
|
3004
|
-
}
|
|
3005
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefdevInnerCardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
3006
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type: MefdevInnerCardModule, declarations: [MefdevInnerCard], imports: [CommonModule, MefDevProgressModule], exports: [MefdevInnerCard] });
|
|
3007
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefdevInnerCardModule, imports: [CommonModule, MefDevProgressModule] });
|
|
3008
|
-
}
|
|
3009
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefdevInnerCardModule, decorators: [{
|
|
3010
|
-
type: NgModule,
|
|
3011
|
-
args: [{
|
|
3012
|
-
declarations: [MefdevInnerCard],
|
|
3013
|
-
exports: [MefdevInnerCard],
|
|
3014
|
-
imports: [CommonModule, MefDevProgressModule]
|
|
3015
|
-
}]
|
|
3016
|
-
}] });
|
|
3017
|
-
|
|
3018
|
-
const mefDevCardComponents = [CardComponent, CardLongComponent, CardSimpleComponent];
|
|
3019
|
-
class MefDevCardModule {
|
|
3020
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevCardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
3021
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type: MefDevCardModule, declarations: [CardComponent, CardLongComponent, CardSimpleComponent], imports: [CommonModule,
|
|
3022
|
-
MefDevCollapseModule,
|
|
3023
|
-
MefDevSelectModule,
|
|
3024
|
-
MefdevInnerCardModule], exports: [CardComponent, CardLongComponent, CardSimpleComponent] });
|
|
3025
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevCardModule, imports: [CommonModule,
|
|
3026
|
-
MefDevCollapseModule,
|
|
3027
|
-
MefDevSelectModule,
|
|
3028
|
-
MefdevInnerCardModule] });
|
|
3029
|
-
}
|
|
3030
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevCardModule, decorators: [{
|
|
3031
|
-
type: NgModule,
|
|
3032
|
-
args: [{
|
|
3033
|
-
declarations: mefDevCardComponents,
|
|
3034
|
-
exports: mefDevCardComponents,
|
|
3035
|
-
imports: [
|
|
3036
|
-
CommonModule,
|
|
3037
|
-
MefDevCollapseModule,
|
|
3038
|
-
MefDevSelectModule,
|
|
3039
|
-
MefdevInnerCardModule,
|
|
3040
|
-
]
|
|
3041
|
-
}]
|
|
3042
|
-
}] });
|
|
3043
|
-
|
|
3044
|
-
/**
|
|
3045
|
-
* Fill Component for a modal window.
|
|
3046
|
-
*
|
|
3047
|
-
* Example of usage:
|
|
3048
|
-
* ```
|
|
3049
|
-
* <mefdev-fill-modal #pin_modal>
|
|
3050
|
-
* <!-- Modal header content -->
|
|
3051
|
-
* <ng-template #modal_header>
|
|
3052
|
-
* <!-- Header content goes here -->
|
|
3053
|
-
* </ng-template>
|
|
3054
|
-
*
|
|
3055
|
-
* <!-- Modal footer content -->
|
|
3056
|
-
* <ng-template #modal_footer>
|
|
3057
|
-
* <!-- Footer content goes here -->
|
|
3058
|
-
* </ng-template>
|
|
3059
|
-
* </mefdev-fill-modal>
|
|
3060
|
-
* ```
|
|
3061
|
-
*
|
|
3062
|
-
* <example-url>https://platform.mef.dev/ui_kit_demo/view/page_components/modals/fill</example-url>
|
|
3063
|
-
*/
|
|
3064
|
-
class FillComponent {
|
|
3065
|
-
visible = false;
|
|
3066
|
-
dialog;
|
|
3067
|
-
/**
|
|
3068
|
-
* The header template of the modal window.
|
|
3069
|
-
* ```
|
|
3070
|
-
* <mefdev-fill-modal #pin_modal>
|
|
3071
|
-
* <ng-template #modal_header>
|
|
3072
|
-
* <!-- Header content goes here -->
|
|
3073
|
-
* </ng-template>
|
|
3074
|
-
* </mefdev-fill-modal>
|
|
3075
|
-
* ```
|
|
3076
|
-
*/
|
|
3077
|
-
modal_header;
|
|
3078
|
-
/**
|
|
3079
|
-
* The footer template of the modal window.
|
|
3080
|
-
* ```
|
|
3081
|
-
* <mefdev-fill-modal #pin_modal>
|
|
3082
|
-
* <ng-template #modal_footer>
|
|
3083
|
-
* <!-- Footer content goes here -->
|
|
3084
|
-
* </ng-template>
|
|
3085
|
-
* </mefdev-fill-modal>
|
|
3086
|
-
* ```
|
|
3087
|
-
*/
|
|
3088
|
-
modal_footer;
|
|
3089
|
-
/**
|
|
3090
|
-
* Input parameter that determines whether to show the modal window.
|
|
3091
|
-
*/
|
|
3092
|
-
set show(val) {
|
|
3093
|
-
if (val) {
|
|
3094
|
-
this.showModal();
|
|
3095
|
-
}
|
|
3096
|
-
else {
|
|
3097
|
-
this.hideModal();
|
|
3098
|
-
}
|
|
3099
|
-
}
|
|
3100
|
-
;
|
|
3101
|
-
/**
|
|
3102
|
-
* Event emitted when the modal is change state.
|
|
3103
|
-
* Emits a boolean value indicating if the modal is closed(false), or open(true).
|
|
3104
|
-
* Example:
|
|
3105
|
-
* ```
|
|
3106
|
-
* <mefdev-fill-modal (visibleChange)="onModalClosed($event)"></mefdev-fill-modal>
|
|
3107
|
-
* ```
|
|
3108
|
-
*/
|
|
3109
|
-
visibleChange = new EventEmitter();
|
|
3110
|
-
constructor() { }
|
|
3111
|
-
ngOnInit() {
|
|
3112
|
-
}
|
|
3113
|
-
/**
|
|
3114
|
-
* Shows the modal state.
|
|
3115
|
-
* Return a boolean value indicating if the modal is closed(false), or open(true)
|
|
3116
|
-
*/
|
|
3117
|
-
getModalState() {
|
|
3118
|
-
return this.visible;
|
|
3119
|
-
}
|
|
3120
|
-
/**
|
|
3121
|
-
* Shows the modal.
|
|
3122
|
-
* Call this method to open the modal window.
|
|
3123
|
-
*/
|
|
3124
|
-
showModal() {
|
|
3125
|
-
this.visible = true;
|
|
3126
|
-
this.visibleChange.emit(this.visible);
|
|
3127
|
-
}
|
|
3128
|
-
/**
|
|
3129
|
-
* Hides the modal.
|
|
3130
|
-
* Call this method to close the modal window.
|
|
3131
|
-
*/
|
|
3132
|
-
hideModal() {
|
|
3133
|
-
this.visible = false;
|
|
3134
|
-
this.visibleChange.emit(this.visible);
|
|
1584
|
+
hideModal() {
|
|
1585
|
+
this.visible = false;
|
|
1586
|
+
this.visibleChange.emit(this.visible);
|
|
3135
1587
|
}
|
|
3136
1588
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: FillComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3137
1589
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type: FillComponent, isStandalone: false, selector: "mefdev-fill-modal", inputs: { show: "show" }, outputs: { visibleChange: "visibleChange" }, queries: [{ propertyName: "modal_header", first: true, predicate: ["modal_header"], descendants: true }, { propertyName: "modal_footer", first: true, predicate: ["modal_footer"], descendants: true }], viewQueries: [{ propertyName: "dialog", first: true, predicate: ["dialog"], descendants: true }], ngImport: i0, template: "<button *ngIf=\"visible\" (click)=\"hideModal()\" aria-label=\"Close\" class=\"dialog__close-btn\">X</button>\r\n<div [@dialog] *ngIf=\"visible\" class=\"dialog\" #dialog>\r\n\t<div class=\"modal-content\">\r\n <div class=\"modal-header clearfix text-left\">\r\n <ng-template [ngTemplateOutlet]=\"modal_header\"></ng-template>\r\n </div>\r\n <div class=\"modal-body\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\">\r\n <ng-template [ngTemplateOutlet]=\"modal_footer\"></ng-template>\r\n </div>\r\n </div>\r\n</div>\r\n<div *ngIf=\"visible\" class=\"overlay\" (click)=\"hideModal()\"></div>\r\n", styles: [".overlay{position:fixed;inset:0;background-color:#ffffffd9;z-index:999}.dialog{z-index:1000;position:fixed;right:0;left:0;top:0;margin-left:auto;margin-right:auto;height:100%;min-height:200px;min-width:520px;max-width:90%;width:fit-content;padding:12px;overflow-y:auto;display:flex;align-items:center}.dialog__close-btn{border:0;background:none;color:#2d2d2d;position:absolute;top:8px;right:8px;font-size:1.2em;z-index:1001}.modal-footer{padding-top:10px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [
|
|
@@ -3492,140 +1944,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
3492
1944
|
}]
|
|
3493
1945
|
}] });
|
|
3494
1946
|
|
|
3495
|
-
/**
|
|
3496
|
-
* A component representing a user profile.
|
|
3497
|
-
*
|
|
3498
|
-
* Example of usage:
|
|
3499
|
-
*
|
|
3500
|
-
* ```
|
|
3501
|
-
* <mefdev-profile
|
|
3502
|
-
* [name]="'John Doe'"
|
|
3503
|
-
* [img]="'assets/profile.png'"
|
|
3504
|
-
* [shortDescription]="'Lorem ipsum dolor sit amet, consectetur adipiscing elit.'"
|
|
3505
|
-
* [header]="'User Profile'"
|
|
3506
|
-
* [circleImg]="'true'">
|
|
3507
|
-
* <ng-template #first_colum>
|
|
3508
|
-
* <!-- Content for the first column -->
|
|
3509
|
-
* </ng-template>
|
|
3510
|
-
* <ng-template #second_colum>
|
|
3511
|
-
* <!-- Content for the second column -->
|
|
3512
|
-
* </ng-template>
|
|
3513
|
-
* <ng-template #footer>
|
|
3514
|
-
* <!-- Content for the footer -->
|
|
3515
|
-
* </ng-template>
|
|
3516
|
-
* </mefdev-profile>
|
|
3517
|
-
* ```
|
|
3518
|
-
*
|
|
3519
|
-
* <example-url>https://platform.mef.dev/ui_kit_demo/view/page_layouts/profile</example-url>
|
|
3520
|
-
*/
|
|
3521
|
-
class ProfileComponent {
|
|
3522
|
-
/**
|
|
3523
|
-
* The template reference to the content of the first column.
|
|
3524
|
-
*```
|
|
3525
|
-
* <ng-template #first_colum>
|
|
3526
|
-
* <!-- Content for the first column -->
|
|
3527
|
-
* </ng-template>
|
|
3528
|
-
*```
|
|
3529
|
-
*/
|
|
3530
|
-
first_colum;
|
|
3531
|
-
/**
|
|
3532
|
-
* The template reference to the content of the second column.
|
|
3533
|
-
*```
|
|
3534
|
-
* <ng-template #second_colum>
|
|
3535
|
-
* <!-- Content for the second column -->
|
|
3536
|
-
* </ng-template>
|
|
3537
|
-
*```
|
|
3538
|
-
*/
|
|
3539
|
-
second_colum;
|
|
3540
|
-
/**
|
|
3541
|
-
* The template reference to the content of the footer.
|
|
3542
|
-
*```
|
|
3543
|
-
* <ng-template #footer>
|
|
3544
|
-
* <!-- Content for the footer -->
|
|
3545
|
-
* </ng-template>
|
|
3546
|
-
*```
|
|
3547
|
-
*/
|
|
3548
|
-
footer;
|
|
3549
|
-
/**
|
|
3550
|
-
* The name of the user.
|
|
3551
|
-
* ```
|
|
3552
|
-
* <mefdev-profile [name]="'John Doe'"></mefdev-profile>
|
|
3553
|
-
* ```
|
|
3554
|
-
*/
|
|
3555
|
-
name;
|
|
3556
|
-
/**
|
|
3557
|
-
* The URL of the user's profile image.
|
|
3558
|
-
* ```
|
|
3559
|
-
* <mefdev-profile [img]="'assets/profile.png'"></mefdev-profile>
|
|
3560
|
-
* ```
|
|
3561
|
-
*/
|
|
3562
|
-
img = '';
|
|
3563
|
-
/**
|
|
3564
|
-
* A short description of the user.
|
|
3565
|
-
* ```
|
|
3566
|
-
* <mefdev-profile [shortDescription]="'Lorem ipsum dolor sit amet, consectetur adipiscing elit.'"></mefdev-profile>
|
|
3567
|
-
* ```
|
|
3568
|
-
*/
|
|
3569
|
-
shortDescription;
|
|
3570
|
-
/**
|
|
3571
|
-
* The header title of the profile component.
|
|
3572
|
-
* ```
|
|
3573
|
-
* <mefdev-profile [header]="'User Profile'"></mefdev-profile>
|
|
3574
|
-
* ```
|
|
3575
|
-
*/
|
|
3576
|
-
header;
|
|
3577
|
-
/**
|
|
3578
|
-
* A flag indicating whether to display the profile image as a circle. Default "false".
|
|
3579
|
-
* ```
|
|
3580
|
-
* <mefdev-profile [circleImg]="'true'"></mefdev-profile>
|
|
3581
|
-
* ```
|
|
3582
|
-
*/
|
|
3583
|
-
circleImg = false;
|
|
3584
|
-
constructor() { }
|
|
3585
|
-
ngOnInit() {
|
|
3586
|
-
}
|
|
3587
|
-
get sizeStyle() {
|
|
3588
|
-
// return { 'width.px': this.width, 'height.px': this.height };
|
|
3589
|
-
/**
|
|
3590
|
-
* Returns the CSS style for the profile image size and shape.
|
|
3591
|
-
*/
|
|
3592
|
-
if (!this.circleImg) {
|
|
3593
|
-
return {};
|
|
3594
|
-
}
|
|
3595
|
-
return {
|
|
3596
|
-
'border-top-left-radius': `50%`,
|
|
3597
|
-
'border-top-right-radius': `50%`,
|
|
3598
|
-
'border-bottom-right-radius': `50%`,
|
|
3599
|
-
'border-bottom-left-radius': `50%`,
|
|
3600
|
-
};
|
|
3601
|
-
}
|
|
3602
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: ProfileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3603
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type: ProfileComponent, isStandalone: false, selector: "mefdev-profile", inputs: { name: "name", img: "img", shortDescription: "shortDescription", header: "header", circleImg: "circleImg" }, queries: [{ propertyName: "first_colum", first: true, predicate: ["first_colum"], descendants: true }, { propertyName: "second_colum", first: true, predicate: ["second_colum"], descendants: true }, { propertyName: "footer", first: true, predicate: ["footer"], descendants: true }], ngImport: i0, template: "\r\n<div class=\"profile-page\">\r\n <div class=\"profile-header\">\r\n {{header}}\r\n </div>\r\n <div class=\"profile-content\">\r\n <div class=\"profile-img-wrapper\">\r\n <img *ngIf=\"!img || img == ''\" src=\"assets/images/md_icon.png\" class=\"profile-img\" />\r\n <img *ngIf=\"img\" [src]=\"img\" alt=\"\" class=\"profile-img custom-img\" [ngStyle]=\"sizeStyle\" />\r\n </div>\r\n <div class=\"profile-info\">\r\n <div class=\"profile-name\">\r\n {{name}}\r\n </div>\r\n <div class=\"profile-description\">\r\n {{shortDescription}}\r\n </div>\r\n </div>\r\n <div class=\"profile-column\">\r\n <ng-template [ngTemplateOutlet]=\"first_colum\"></ng-template>\r\n </div>\r\n <div class=\"profile-column\">\r\n <ng-template [ngTemplateOutlet]=\"second_colum\"></ng-template>\r\n </div>\r\n </div>\r\n</div>\r\n<div class=\"profile-footer-wrapper\">\r\n <div class=\"profile-page-tabs\">\r\n <ng-template [ngTemplateOutlet]=\"footer\"></ng-template>\r\n </div>\r\n</div>\r\n", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.h1,h1{font-family:Montserrat,Arial,sans-serif;font-size:32px;line-height:40px;font-weight:700;text-transform:none;color:#000;margin-bottom:16px}.h2,.profile-header,h2{font-family:Montserrat,Arial,sans-serif;font-size:24px;line-height:30px;font-weight:700;text-transform:none;color:#000;margin-bottom:12px}.h3,h3{font-family:Montserrat,Arial,sans-serif;font-size:18px;line-height:24px;font-weight:600;text-transform:none;color:#000;margin-bottom:10px}.h4,h4{font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:22px;font-weight:600;text-transform:none;letter-spacing:.5px;color:#000;margin-bottom:8px}.h5,h5{font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:20px;font-weight:500;text-transform:none;color:#000;margin-bottom:6px}.h6,h6{font-family:Montserrat,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:500;text-transform:none;color:#000;margin-bottom:4px}.body-1,body-1{font-family:Open Sans,Arial,sans-serif;font-size:18px;line-height:27px;font-weight:700;color:#000}.body-2,.profile-name,body-2{font-family:Open Sans,Arial,sans-serif;font-size:16px;line-height:24px;font-weight:400;color:#000}.body-3,.profile-description,.profile-data-item,body-3{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:700;color:#000}.body-4,body-4{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:400;color:#000}.body-5,body-5{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:600;color:#000}.body-6,body-6{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:16px;font-weight:400;color:#000}:host{display:block}.profile-page{background-color:#f5f5f5;color:#222;padding:24px 24px 0;border-radius:5px}.profile-content{display:flex;flex-wrap:wrap;gap:24px;align-items:flex-start;overflow-y:hidden;max-height:150px}.profile-img-wrapper{flex:0 0 224px;display:flex;align-items:center;justify-content:center;min-width:180px;height:-webkit-fill-available}.profile-img{width:100%}.profile-info{flex:1 1 220px;min-width:180px}.profile-name{overflow-y:clip}.profile-description{word-break:break-all;overflow-y:clip;margin-bottom:8px}.profile-column{flex:1 1 180px;min-width:160px;margin-bottom:8px}.profile-footer-wrapper{position:relative}.profile-data-item>.profile-data-item-value{display:inline;font-weight:700}.profile-page-tabs{background:linear-gradient(to bottom,#f5f5f5 53px,transparent 100%);padding-top:25px;border-radius:0 0 8px 8px}@media (max-width: 900px){.profile-content{flex-direction:column;gap:16px}.profile-img-wrapper,.profile-info,.profile-column{min-width:0;margin-right:0}}@media (max-width: 720px){.profile-page-tabs{background:linear-gradient(to bottom,#f5f5f5 63px,transparent 100%);padding-top:35px}}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
3604
|
-
}
|
|
3605
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: ProfileComponent, decorators: [{
|
|
3606
|
-
type: Component,
|
|
3607
|
-
args: [{ selector: 'mefdev-profile', standalone: false, template: "\r\n<div class=\"profile-page\">\r\n <div class=\"profile-header\">\r\n {{header}}\r\n </div>\r\n <div class=\"profile-content\">\r\n <div class=\"profile-img-wrapper\">\r\n <img *ngIf=\"!img || img == ''\" src=\"assets/images/md_icon.png\" class=\"profile-img\" />\r\n <img *ngIf=\"img\" [src]=\"img\" alt=\"\" class=\"profile-img custom-img\" [ngStyle]=\"sizeStyle\" />\r\n </div>\r\n <div class=\"profile-info\">\r\n <div class=\"profile-name\">\r\n {{name}}\r\n </div>\r\n <div class=\"profile-description\">\r\n {{shortDescription}}\r\n </div>\r\n </div>\r\n <div class=\"profile-column\">\r\n <ng-template [ngTemplateOutlet]=\"first_colum\"></ng-template>\r\n </div>\r\n <div class=\"profile-column\">\r\n <ng-template [ngTemplateOutlet]=\"second_colum\"></ng-template>\r\n </div>\r\n </div>\r\n</div>\r\n<div class=\"profile-footer-wrapper\">\r\n <div class=\"profile-page-tabs\">\r\n <ng-template [ngTemplateOutlet]=\"footer\"></ng-template>\r\n </div>\r\n</div>\r\n", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.h1,h1{font-family:Montserrat,Arial,sans-serif;font-size:32px;line-height:40px;font-weight:700;text-transform:none;color:#000;margin-bottom:16px}.h2,.profile-header,h2{font-family:Montserrat,Arial,sans-serif;font-size:24px;line-height:30px;font-weight:700;text-transform:none;color:#000;margin-bottom:12px}.h3,h3{font-family:Montserrat,Arial,sans-serif;font-size:18px;line-height:24px;font-weight:600;text-transform:none;color:#000;margin-bottom:10px}.h4,h4{font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:22px;font-weight:600;text-transform:none;letter-spacing:.5px;color:#000;margin-bottom:8px}.h5,h5{font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:20px;font-weight:500;text-transform:none;color:#000;margin-bottom:6px}.h6,h6{font-family:Montserrat,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:500;text-transform:none;color:#000;margin-bottom:4px}.body-1,body-1{font-family:Open Sans,Arial,sans-serif;font-size:18px;line-height:27px;font-weight:700;color:#000}.body-2,.profile-name,body-2{font-family:Open Sans,Arial,sans-serif;font-size:16px;line-height:24px;font-weight:400;color:#000}.body-3,.profile-description,.profile-data-item,body-3{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:700;color:#000}.body-4,body-4{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:400;color:#000}.body-5,body-5{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:600;color:#000}.body-6,body-6{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:16px;font-weight:400;color:#000}:host{display:block}.profile-page{background-color:#f5f5f5;color:#222;padding:24px 24px 0;border-radius:5px}.profile-content{display:flex;flex-wrap:wrap;gap:24px;align-items:flex-start;overflow-y:hidden;max-height:150px}.profile-img-wrapper{flex:0 0 224px;display:flex;align-items:center;justify-content:center;min-width:180px;height:-webkit-fill-available}.profile-img{width:100%}.profile-info{flex:1 1 220px;min-width:180px}.profile-name{overflow-y:clip}.profile-description{word-break:break-all;overflow-y:clip;margin-bottom:8px}.profile-column{flex:1 1 180px;min-width:160px;margin-bottom:8px}.profile-footer-wrapper{position:relative}.profile-data-item>.profile-data-item-value{display:inline;font-weight:700}.profile-page-tabs{background:linear-gradient(to bottom,#f5f5f5 53px,transparent 100%);padding-top:25px;border-radius:0 0 8px 8px}@media (max-width: 900px){.profile-content{flex-direction:column;gap:16px}.profile-img-wrapper,.profile-info,.profile-column{min-width:0;margin-right:0}}@media (max-width: 720px){.profile-page-tabs{background:linear-gradient(to bottom,#f5f5f5 63px,transparent 100%);padding-top:35px}}\n"] }]
|
|
3608
|
-
}], ctorParameters: () => [], propDecorators: { first_colum: [{
|
|
3609
|
-
type: ContentChild,
|
|
3610
|
-
args: ["first_colum"]
|
|
3611
|
-
}], second_colum: [{
|
|
3612
|
-
type: ContentChild,
|
|
3613
|
-
args: ["second_colum"]
|
|
3614
|
-
}], footer: [{
|
|
3615
|
-
type: ContentChild,
|
|
3616
|
-
args: ["footer"]
|
|
3617
|
-
}], name: [{
|
|
3618
|
-
type: Input
|
|
3619
|
-
}], img: [{
|
|
3620
|
-
type: Input
|
|
3621
|
-
}], shortDescription: [{
|
|
3622
|
-
type: Input
|
|
3623
|
-
}], header: [{
|
|
3624
|
-
type: Input
|
|
3625
|
-
}], circleImg: [{
|
|
3626
|
-
type: Input
|
|
3627
|
-
}] } });
|
|
3628
|
-
|
|
3629
1947
|
/**
|
|
3630
1948
|
* A component representing a central page layout.
|
|
3631
1949
|
*
|
|
@@ -3801,11 +2119,11 @@ class ManagePageComponent {
|
|
|
3801
2119
|
ngOnInit() {
|
|
3802
2120
|
}
|
|
3803
2121
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: ManagePageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3804
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type: ManagePageComponent, isStandalone: false, selector: "mefdev-manage-page", inputs: { startTabInd: "startTabInd" }, queries: [{ propertyName: "card_title", first: true, predicate: ["card_title"], descendants: true }, { propertyName: "tabs_block", first: true, predicate: ["tabs_block"], descendants: true }], ngImport: i0, template: "<div class=\"
|
|
2122
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type: ManagePageComponent, isStandalone: false, selector: "mefdev-manage-page", inputs: { startTabInd: "startTabInd" }, queries: [{ propertyName: "card_title", first: true, predicate: ["card_title"], descendants: true }, { propertyName: "tabs_block", first: true, predicate: ["tabs_block"], descendants: true }], ngImport: i0, template: "<div class=\"mp-tabs\">\r\n <div class=\"mp-tabs-header\" *ngIf=\"card_title\">\r\n <div class=\"mp-tabs-title\">\r\n <ng-template [ngTemplateOutlet]=\"card_title\"></ng-template>\r\n </div>\r\n </div>\r\n <div class=\"profile-page-tabs mp-tabs-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.h1,h1{font-family:Montserrat,Arial,sans-serif;font-size:32px;line-height:40px;font-weight:700;text-transform:none;color:#000;margin-bottom:16px}.h2,h2{font-family:Montserrat,Arial,sans-serif;font-size:24px;line-height:30px;font-weight:700;text-transform:none;color:#000;margin-bottom:12px}.h3,h3{font-family:Montserrat,Arial,sans-serif;font-size:18px;line-height:24px;font-weight:600;text-transform:none;color:#000;margin-bottom:10px}.h4,h4{font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:22px;font-weight:600;text-transform:none;letter-spacing:.5px;color:#000;margin-bottom:8px}.h5,h5{font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:20px;font-weight:500;text-transform:none;color:#000;margin-bottom:6px}.h6,h6{font-family:Montserrat,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:500;text-transform:none;color:#000;margin-bottom:4px}.body-1,body-1{font-family:Open Sans,Arial,sans-serif;font-size:18px;line-height:27px;font-weight:700;color:#000}.body-2,body-2{font-family:Open Sans,Arial,sans-serif;font-size:16px;line-height:24px;font-weight:400;color:#000}.body-3,body-3{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:700;color:#000}.body-4,body-4{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:400;color:#000}.body-5,body-5{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:600;color:#000}.body-6,body-6{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:16px;font-weight:400;color:#000}.mp-tabs{border-radius:0;background:#fff;overflow:hidden}.mp-tabs-header{background-color:#f3f3f3;padding:16px;margin-bottom:0;display:flex;align-items:center}.mp-tabs-title{margin:0;width:100%;padding:0}.mp-tabs-content{padding:0 16px;position:relative}.profile-page-tabs{background-image:linear-gradient(to bottom,#F3F3F3 28px,transparent 0%,transparent 100%);background-image:-webkit-linear-gradient(to bottom,#F3F3F3 28px,transparent 0%,transparent 100%)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
|
|
3805
2123
|
}
|
|
3806
2124
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: ManagePageComponent, decorators: [{
|
|
3807
2125
|
type: Component,
|
|
3808
|
-
args: [{ selector: 'mefdev-manage-page', standalone: false, template: "<div class=\"
|
|
2126
|
+
args: [{ selector: 'mefdev-manage-page', standalone: false, template: "<div class=\"mp-tabs\">\r\n <div class=\"mp-tabs-header\" *ngIf=\"card_title\">\r\n <div class=\"mp-tabs-title\">\r\n <ng-template [ngTemplateOutlet]=\"card_title\"></ng-template>\r\n </div>\r\n </div>\r\n <div class=\"profile-page-tabs mp-tabs-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.h1,h1{font-family:Montserrat,Arial,sans-serif;font-size:32px;line-height:40px;font-weight:700;text-transform:none;color:#000;margin-bottom:16px}.h2,h2{font-family:Montserrat,Arial,sans-serif;font-size:24px;line-height:30px;font-weight:700;text-transform:none;color:#000;margin-bottom:12px}.h3,h3{font-family:Montserrat,Arial,sans-serif;font-size:18px;line-height:24px;font-weight:600;text-transform:none;color:#000;margin-bottom:10px}.h4,h4{font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:22px;font-weight:600;text-transform:none;letter-spacing:.5px;color:#000;margin-bottom:8px}.h5,h5{font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:20px;font-weight:500;text-transform:none;color:#000;margin-bottom:6px}.h6,h6{font-family:Montserrat,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:500;text-transform:none;color:#000;margin-bottom:4px}.body-1,body-1{font-family:Open Sans,Arial,sans-serif;font-size:18px;line-height:27px;font-weight:700;color:#000}.body-2,body-2{font-family:Open Sans,Arial,sans-serif;font-size:16px;line-height:24px;font-weight:400;color:#000}.body-3,body-3{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:700;color:#000}.body-4,body-4{font-family:Open Sans,Arial,sans-serif;font-size:14px;line-height:22px;font-weight:400;color:#000}.body-5,body-5{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:18px;font-weight:600;color:#000}.body-6,body-6{font-family:Open Sans,Arial,sans-serif;font-size:13px;line-height:16px;font-weight:400;color:#000}.mp-tabs{border-radius:0;background:#fff;overflow:hidden}.mp-tabs-header{background-color:#f3f3f3;padding:16px;margin-bottom:0;display:flex;align-items:center}.mp-tabs-title{margin:0;width:100%;padding:0}.mp-tabs-content{padding:0 16px;position:relative}.profile-page-tabs{background-image:linear-gradient(to bottom,#F3F3F3 28px,transparent 0%,transparent 100%);background-image:-webkit-linear-gradient(to bottom,#F3F3F3 28px,transparent 0%,transparent 100%)}\n"] }]
|
|
3809
2127
|
}], ctorParameters: () => [], propDecorators: { card_title: [{
|
|
3810
2128
|
type: ContentChild,
|
|
3811
2129
|
args: ["card_title"]
|
|
@@ -3817,7 +2135,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
3817
2135
|
}] } });
|
|
3818
2136
|
|
|
3819
2137
|
let mefDevPageLayoutsModuleComponents = [
|
|
3820
|
-
ProfileComponent,
|
|
3821
2138
|
CentralPageComponent,
|
|
3822
2139
|
CentralPageRowComponent,
|
|
3823
2140
|
TablePageComponent,
|
|
@@ -3825,12 +2142,10 @@ let mefDevPageLayoutsModuleComponents = [
|
|
|
3825
2142
|
];
|
|
3826
2143
|
class MefDevPageLayoutsModule {
|
|
3827
2144
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevPageLayoutsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
3828
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type: MefDevPageLayoutsModule, declarations: [
|
|
3829
|
-
CentralPageComponent,
|
|
2145
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type: MefDevPageLayoutsModule, declarations: [CentralPageComponent,
|
|
3830
2146
|
CentralPageRowComponent,
|
|
3831
2147
|
TablePageComponent,
|
|
3832
|
-
ManagePageComponent], imports: [CommonModule], exports: [
|
|
3833
|
-
CentralPageComponent,
|
|
2148
|
+
ManagePageComponent], imports: [CommonModule], exports: [CentralPageComponent,
|
|
3834
2149
|
CentralPageRowComponent,
|
|
3835
2150
|
TablePageComponent,
|
|
3836
2151
|
ManagePageComponent] });
|
|
@@ -3843,7 +2158,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
3843
2158
|
exports: mefDevPageLayoutsModuleComponents,
|
|
3844
2159
|
imports: [
|
|
3845
2160
|
CommonModule,
|
|
3846
|
-
// pgTabsModule,
|
|
3847
2161
|
],
|
|
3848
2162
|
}]
|
|
3849
2163
|
}] });
|
|
@@ -4299,198 +2613,169 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
4299
2613
|
}]
|
|
4300
2614
|
}] });
|
|
4301
2615
|
|
|
4302
|
-
|
|
4303
|
-
|
|
4304
|
-
|
|
4305
|
-
|
|
4306
|
-
|
|
4307
|
-
|
|
4308
|
-
|
|
4309
|
-
|
|
4310
|
-
|
|
4311
|
-
|
|
4312
|
-
|
|
2616
|
+
/*
|
|
2617
|
+
example
|
|
2618
|
+
<mefdev-dropdown-menu>
|
|
2619
|
+
<ng-template #label>
|
|
2620
|
+
<i class="fa fa-ellipsis-v"></i>
|
|
2621
|
+
</ng-template>
|
|
2622
|
+
|
|
2623
|
+
<a class="dropdown-item" (click)="openModalAction('update', row)">
|
|
2624
|
+
<span> {{ 'Update' | translate }} </span>
|
|
2625
|
+
</a>
|
|
2626
|
+
|
|
2627
|
+
<a class="dropdown-item" (click)="openModalAction('delete', row)">
|
|
2628
|
+
<span> {{ 'Delete' | translate }} </span>
|
|
2629
|
+
</a>
|
|
2630
|
+
</mefdev-dropdown-menu>
|
|
4313
2631
|
*/
|
|
4314
|
-
class
|
|
4315
|
-
|
|
4316
|
-
|
|
4317
|
-
|
|
4318
|
-
|
|
4319
|
-
|
|
4320
|
-
* [id]= "'slider1'"
|
|
4321
|
-
* ></mefdev-slider>
|
|
4322
|
-
*/
|
|
4323
|
-
id;
|
|
4324
|
-
/**
|
|
4325
|
-
* Input Object {min, max} container of the slider
|
|
4326
|
-
* @example
|
|
4327
|
-
* @interval
|
|
4328
|
-
* <mefdev-slider
|
|
4329
|
-
* [range] = "{min: 1, max: 10000}"
|
|
4330
|
-
* ></mefdev-slider>
|
|
4331
|
-
*/
|
|
4332
|
-
set range(range) {
|
|
4333
|
-
this._range = range;
|
|
4334
|
-
this.minValue = range.min;
|
|
4335
|
-
this.maxValue = range.max;
|
|
4336
|
-
}
|
|
4337
|
-
get range() {
|
|
4338
|
-
return this._range;
|
|
4339
|
-
}
|
|
4340
|
-
/**
|
|
4341
|
-
* The minimum value of the slider.
|
|
4342
|
-
*/
|
|
4343
|
-
minValue = this.range.min;
|
|
4344
|
-
/**
|
|
4345
|
-
* The maximum value of the slider.
|
|
4346
|
-
*/
|
|
4347
|
-
maxValue = this.range.max;
|
|
4348
|
-
/**
|
|
4349
|
-
* Property indicating whether the component is disabled.
|
|
4350
|
-
* @example
|
|
4351
|
-
* <mefdev-slider
|
|
4352
|
-
* [disabled]="true"
|
|
4353
|
-
* ></mefdev-slider>
|
|
4354
|
-
*/
|
|
4355
|
-
disabled = false;
|
|
4356
|
-
/**
|
|
4357
|
-
* Event emitted when the values of the slider change.
|
|
4358
|
-
* It passes an object with `minValue` and `maxValue` properties.
|
|
4359
|
-
* @event MefDevSliderComponent#valueChange
|
|
4360
|
-
* @type {EventEmitter<{ minValue: number; maxValue: number }>}
|
|
4361
|
-
* @example
|
|
4362
|
-
* <mefdev-slider
|
|
4363
|
-
* (valueChange)="onChildValueChange($event)"
|
|
4364
|
-
* ></mefdev-slider>
|
|
4365
|
-
*/
|
|
4366
|
-
valueChange = new EventEmitter();
|
|
4367
|
-
/**
|
|
4368
|
-
* Method called when the values of the slider change.
|
|
4369
|
-
* Emits the `valueChange` event and calls methods to handle changes in the minimum and maximum values.
|
|
4370
|
-
* @fires MefDevSliderComponent#valueChange
|
|
4371
|
-
*/
|
|
4372
|
-
onValueChange() {
|
|
4373
|
-
this.valueChange.emit({ minValue: this.minValue, maxValue: this.maxValue });
|
|
4374
|
-
this.minValue = this.minValue;
|
|
4375
|
-
this.onMinValueChange();
|
|
4376
|
-
this.onMaxValueChange();
|
|
2632
|
+
class MefdevDropdownMenuComponent {
|
|
2633
|
+
_eref;
|
|
2634
|
+
label;
|
|
2635
|
+
isOpen = false;
|
|
2636
|
+
constructor(_eref) {
|
|
2637
|
+
this._eref = _eref;
|
|
4377
2638
|
}
|
|
4378
|
-
|
|
4379
|
-
|
|
4380
|
-
|
|
4381
|
-
|
|
4382
|
-
|
|
4383
|
-
*/
|
|
4384
|
-
onMinValueChange() {
|
|
4385
|
-
const numericValue = parseFloat(this.minValue.toString().replace(/[^\d.]/g, ''));
|
|
4386
|
-
this.minValue = isNaN(numericValue) ? 0 : numericValue;
|
|
4387
|
-
this.valueChange.emit({ minValue: this.minValue, maxValue: this.maxValue });
|
|
4388
|
-
const fromSlider = document.getElementById(`fromSlider-${this.id}`);
|
|
2639
|
+
onClick($event) {
|
|
2640
|
+
const isClickInDdl = this._eref.nativeElement.contains($event.target);
|
|
2641
|
+
if (isClickInDdl || (this.isOpen && !isClickInDdl)) {
|
|
2642
|
+
this.isOpen = !this.isOpen;
|
|
2643
|
+
}
|
|
4389
2644
|
}
|
|
4390
|
-
|
|
4391
|
-
|
|
4392
|
-
* Converts a string to a number and removes all non-numeric characters.
|
|
4393
|
-
* Then, emits the `valueChange` event and updates the value of the "toSlider" slider.
|
|
4394
|
-
* @fires MefDevSliderComponent#valueChange
|
|
4395
|
-
*/
|
|
4396
|
-
onMaxValueChange() {
|
|
4397
|
-
const numericValue = parseFloat(this.maxValue.toString().replace(/[^\d.]/g, ''));
|
|
4398
|
-
this.maxValue = isNaN(numericValue) ? 0 : numericValue; // Перевірка на NaN і присвоєння 0, якщо не вдалося конвертувати в число
|
|
4399
|
-
this.valueChange.emit({ minValue: this.minValue, maxValue: this.maxValue });
|
|
4400
|
-
const toSlider = document.getElementById(`toSlider-${this.id}`);
|
|
4401
|
-
}
|
|
4402
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevSliderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4403
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type: MefDevSliderComponent, isStandalone: false, selector: "mefdev-slider", inputs: { id: "id", range: "range", disabled: "disabled" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"range_container row\">\r\n <div class=\"inputs_control \">\r\n <input class=\"form_control_container__time__input h3\" [(ngModel)]=\"minValue\" [disabled]=\"disabled\" (ngModelChange)=\"onMinValueChange()\">\r\n <input class=\"form_control_container__time__input h3\" [(ngModel)]=\"maxValue\" [disabled]=\"disabled\" (ngModelChange)=\"onMaxValueChange()\">\r\n </div>\r\n <div class=\"sliders_control\">\r\n <input id=\"fromSlider\" type=\"range\" [(ngModel)]=\"minValue\" [min]=\"range.min\" [max]=\"range.max\" (ngModelChange)=\"onValueChange()\">\r\n <input id=\"toSlider\" type=\"range\" [(ngModel)]=\"maxValue\" [min]=\"range.min\" [max]=\"range.max\" (ngModelChange)=\"onValueChange()\" \r\n [style]=\"{'--minValue': minValue, '--maxValue': maxValue, '--minFromValue': range.min, '--maxToValue': range.max}\">\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.sliders_control{position:relative;min-height:50px}.inputs_control{position:relative;display:flex;justify-content:space-between;font-size:24px;color:#635a5a}.inputs_control .form_control_container__time__input{width:80px;height:28px;border-radius:5px;border:none;background:#fff;text-align:center;box-shadow:2px 2px 2px #0000001a}#fromSlider::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:all;width:16px;height:16px;background-color:#cf0106;border-radius:50%;cursor:pointer;margin-top:13px}#toSlider::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:all;width:16px;height:16px;background-color:#cf0106;border-radius:50%;cursor:pointer;margin-top:-7px}input[type=range]::-moz-range-thumb{pointer-events:all;width:16px;height:16px;background-color:#cf0106;border-radius:50%;cursor:pointer}input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right,#929292 0%,#929292 calc((var(--minValue) - var(--minFromValue)) / (var(--maxToValue) - var(--minFromValue)) * 100%),transparent calc((var(--minValue) - var(--minFromValue)) / (var(--maxToValue) - var(--minFromValue)) * 100%),transparent calc((var(--maxValue) - var(--minFromValue)) / (var(--maxToValue) - var(--minFromValue)) * 100%),#929292 calc((var(--maxValue) - var(--minFromValue)) / (var(--maxToValue) - var(--minFromValue)) * 100%),#929292 100%);height:3px}input[type=range]::-moz-range-track{background:linear-gradient(to right,#929292 0%,#929292 calc((var(--minValue) - var(--minFromValue)) / (var(--maxToValue) - var(--minFromValue)) * 100%),transparent calc((var(--minValue) - var(--minFromValue)) / (var(--maxToValue) - var(--minFromValue)) * 100%),transparent calc((var(--maxValue) - var(--minFromValue)) / (var(--maxToValue) - var(--minFromValue)) * 100%),#929292 calc((var(--maxValue) - var(--minFromValue)) / (var(--maxToValue) - var(--minFromValue)) * 100%),#929292 100%);height:3px}input[type=range]::-webkit-slider-thumb:active{box-shadow:inset 0 0 3px #cf0106,0 0 9px #cf0106;-webkit-box-shadow:inset 0 0 3px #CF0106,0 0 9px #CF0106}input[type=number]{color:red;width:50px;height:30px;font-size:20px;border:none}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{opacity:.2}input[type=range]{-webkit-appearance:none;appearance:none;height:3px;width:100%;position:relative;background-color:#cf0106;pointer-events:none}input[type=range]::-moz-range-progress{background-color:transparent;height:3px}#fromSlider{height:0;z-index:9999}\n"], dependencies: [{ kind: "directive", type: i2.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: i2.RangeValueAccessor, selector: "input[type=range][formControlName],input[type=range][formControl],input[type=range][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
|
|
2645
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefdevDropdownMenuComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
2646
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type: MefdevDropdownMenuComponent, isStandalone: false, selector: "mefdev-dropdown-menu", host: { listeners: { "document:click": "onClick($event)" } }, queries: [{ propertyName: "label", first: true, predicate: ["label"], descendants: true }], ngImport: i0, template: "<div class=\"label-container\">\r\n <ng-template [ngTemplateOutlet]=\"label\"></ng-template>\r\n</div>\r\n\r\n<div *ngIf=\"isOpen\" class=\"_dropdown\">\r\n <div class=\"_menu\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}:host{display:block;position:relative;width:fit-content}.label-container{cursor:pointer;margin:4px;padding:4px}._dropdown{position:relative;z-index:10001}._menu{right:7px;top:-20px;position:absolute;z-index:10001;background-color:#fff;border:solid rgba(0,0,0,.176) 1px;border-radius:4px;cursor:pointer}._dropdown ._menu{min-width:auto;top:-5px;padding:4px;box-shadow:0 1px 3px 1px #00000026}._dropdown ._menu a{height:26px;font-family:Open Sans,Arial,sans-serif;font-size:14px;font-weight:400;line-height:22px;color:#000!important;display:flex;align-items:center}._dropdown ._menu a:hover{background-color:#f3f3f3}._dropdown ._menu a:hover *{color:#000!important}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
|
|
4404
2647
|
}
|
|
4405
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type:
|
|
2648
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefdevDropdownMenuComponent, decorators: [{
|
|
4406
2649
|
type: Component,
|
|
4407
|
-
args: [{ selector: 'mefdev-
|
|
4408
|
-
|
|
4409
|
-
|
|
4410
|
-
|
|
4411
|
-
type:
|
|
4412
|
-
args: [
|
|
4413
|
-
}], disabled: [{
|
|
4414
|
-
type: Input
|
|
4415
|
-
}], valueChange: [{
|
|
4416
|
-
type: Output
|
|
2650
|
+
args: [{ selector: 'mefdev-dropdown-menu', host: {
|
|
2651
|
+
'(document:click)': 'onClick($event)',
|
|
2652
|
+
}, standalone: false, template: "<div class=\"label-container\">\r\n <ng-template [ngTemplateOutlet]=\"label\"></ng-template>\r\n</div>\r\n\r\n<div *ngIf=\"isOpen\" class=\"_dropdown\">\r\n <div class=\"_menu\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}:host{display:block;position:relative;width:fit-content}.label-container{cursor:pointer;margin:4px;padding:4px}._dropdown{position:relative;z-index:10001}._menu{right:7px;top:-20px;position:absolute;z-index:10001;background-color:#fff;border:solid rgba(0,0,0,.176) 1px;border-radius:4px;cursor:pointer}._dropdown ._menu{min-width:auto;top:-5px;padding:4px;box-shadow:0 1px 3px 1px #00000026}._dropdown ._menu a{height:26px;font-family:Open Sans,Arial,sans-serif;font-size:14px;font-weight:400;line-height:22px;color:#000!important;display:flex;align-items:center}._dropdown ._menu a:hover{background-color:#f3f3f3}._dropdown ._menu a:hover *{color:#000!important}\n"] }]
|
|
2653
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { label: [{
|
|
2654
|
+
type: ContentChild,
|
|
2655
|
+
args: ["label"]
|
|
4417
2656
|
}] } });
|
|
4418
2657
|
|
|
4419
|
-
class
|
|
4420
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type:
|
|
4421
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type:
|
|
4422
|
-
|
|
4423
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevSliderModule, imports: [CommonModule,
|
|
4424
|
-
FormsModule] });
|
|
2658
|
+
class MefDevDropDownMenuModule {
|
|
2659
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevDropDownMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2660
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type: MefDevDropDownMenuModule, declarations: [MefdevDropdownMenuComponent], imports: [CommonModule], exports: [MefdevDropdownMenuComponent] });
|
|
2661
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevDropDownMenuModule, imports: [CommonModule] });
|
|
4425
2662
|
}
|
|
4426
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type:
|
|
2663
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevDropDownMenuModule, decorators: [{
|
|
4427
2664
|
type: NgModule,
|
|
4428
2665
|
args: [{
|
|
4429
|
-
declarations: [
|
|
4430
|
-
MefDevSliderComponent
|
|
4431
|
-
],
|
|
4432
2666
|
exports: [
|
|
4433
|
-
|
|
2667
|
+
MefdevDropdownMenuComponent
|
|
2668
|
+
],
|
|
2669
|
+
declarations: [
|
|
2670
|
+
MefdevDropdownMenuComponent
|
|
4434
2671
|
],
|
|
4435
2672
|
imports: [
|
|
4436
|
-
CommonModule
|
|
4437
|
-
FormsModule,
|
|
2673
|
+
CommonModule
|
|
4438
2674
|
]
|
|
4439
2675
|
}]
|
|
4440
2676
|
}] });
|
|
4441
2677
|
|
|
4442
|
-
|
|
2678
|
+
/**
|
|
2679
|
+
* Component representing a progress bar.
|
|
2680
|
+
*
|
|
2681
|
+
* Example of usage:
|
|
2682
|
+
*
|
|
2683
|
+
* ```
|
|
2684
|
+
* <mefdev-progress type="linear" color="blue" [thick]="true"></mefdev-progress>
|
|
2685
|
+
* <mefdev-progress type="circle" color="red" [indeterminate]="true"></mefdev-progress>
|
|
2686
|
+
* ```
|
|
2687
|
+
*/
|
|
2688
|
+
class MefDevProgressComponent {
|
|
2689
|
+
_value;
|
|
2690
|
+
_value2;
|
|
2691
|
+
/**
|
|
2692
|
+
* The type of progress bar.
|
|
2693
|
+
* Possible values: "linear" | "circle".
|
|
2694
|
+
* Default value: "linear".
|
|
2695
|
+
*/
|
|
2696
|
+
type;
|
|
2697
|
+
/**
|
|
2698
|
+
* The color of the progress bar.
|
|
2699
|
+
* Possible values: any valid CSS color value.
|
|
2700
|
+
* Default value: none.
|
|
2701
|
+
*/
|
|
2702
|
+
color;
|
|
4443
2703
|
/**
|
|
4444
|
-
*
|
|
2704
|
+
* Determines whether the progress bar is thick.
|
|
2705
|
+
* Default value: false.
|
|
4445
2706
|
*/
|
|
4446
|
-
|
|
2707
|
+
thick;
|
|
4447
2708
|
/**
|
|
4448
|
-
*
|
|
2709
|
+
* Determines whether the progress bar is indeterminate.
|
|
2710
|
+
* Default value: false.
|
|
4449
2711
|
*/
|
|
4450
|
-
|
|
2712
|
+
indeterminate;
|
|
4451
2713
|
/**
|
|
4452
|
-
*
|
|
2714
|
+
* The value of the progress bar.
|
|
2715
|
+
* For the "circle" type, it should be a number between 0 and 100.
|
|
4453
2716
|
*/
|
|
4454
|
-
|
|
4455
|
-
|
|
4456
|
-
|
|
2717
|
+
set value(value) {
|
|
2718
|
+
if (this.type == "circle") {
|
|
2719
|
+
this._value = (value / 100) * 360;
|
|
2720
|
+
if (this.value >= 50) {
|
|
2721
|
+
this._value2 = true;
|
|
2722
|
+
}
|
|
2723
|
+
}
|
|
2724
|
+
else
|
|
2725
|
+
this._value = value;
|
|
4457
2726
|
}
|
|
4458
|
-
|
|
4459
|
-
this.
|
|
4460
|
-
this.ResponseError = 1;
|
|
4461
|
-
this.ReportError = error;
|
|
2727
|
+
get value() {
|
|
2728
|
+
return this._value;
|
|
4462
2729
|
}
|
|
4463
|
-
|
|
4464
|
-
|
|
4465
|
-
|
|
4466
|
-
|
|
2730
|
+
/**
|
|
2731
|
+
* Additional value property.
|
|
2732
|
+
*/
|
|
2733
|
+
get value2() {
|
|
2734
|
+
return this._value2;
|
|
4467
2735
|
}
|
|
4468
|
-
|
|
4469
|
-
static
|
|
2736
|
+
constructor() { }
|
|
2737
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2738
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type: MefDevProgressComponent, isStandalone: false, selector: "mefdev-progress", inputs: { type: "type", color: "color", thick: "thick", indeterminate: "indeterminate", value: "value" }, ngImport: i0, template: "<div *ngIf=\"type === 'bar'; else circleBlock\">\r\n <div *ngIf=\"indeterminate; else determineBarBlock\">\r\n <div class=\"progress\" [class.progress-small]=\"!thick\">\r\n <div class=\"progress-bar-{{ color }}\" [class.progress-bar-indeterminate]=\"indeterminate\"></div>\r\n </div>\r\n </div>\r\n <ng-template #determineBarBlock>\r\n <div class=\"progress\" [class.progress-small]=\"!thick\">\r\n <div class=\"progress-bar progress-bar-{{ color }}\" [ngStyle]=\"{ width: value + '%' }\"></div>\r\n </div>\r\n </ng-template>\r\n</div>\r\n<ng-template #circleBlock>\r\n <div class=\"progress-circle-{{ color }}\" [class.progress-circle-indeterminate]=\"indeterminate\"\r\n [class.progress-circle]=\"!indeterminate\" [class.progress-circle-thick]=\"thick\">\r\n <div *ngIf=\"indeterminate; else determineBlock\"></div>\r\n <ng-template #determineBlock>\r\n <div class=\"pie\" [ngStyle]=\"_value2 && { clip: 'rect(auto, auto, auto, auto)' }\">\r\n <div class=\"left-side half-circle\" [ngStyle]=\"_value2 && { transform: 'rotate(' + value + 'deg)' }\"></div>\r\n <div class=\"right-side half-circle\" [ngStyle]=\"{\r\n transform:\r\n _value2 === true ? 'rotate(180deg)' : 'rotate(' + value + 'deg)'\r\n }\"></div>\r\n </div>\r\n <div class=\"shadow\"></div>\r\n </ng-template>\r\n </div>\r\n</ng-template>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
4470
2739
|
}
|
|
4471
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type:
|
|
2740
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevProgressComponent, decorators: [{
|
|
4472
2741
|
type: Component,
|
|
4473
|
-
args: [{ selector:
|
|
4474
|
-
}], ctorParameters: () => []
|
|
2742
|
+
args: [{ selector: "mefdev-progress", standalone: false, template: "<div *ngIf=\"type === 'bar'; else circleBlock\">\r\n <div *ngIf=\"indeterminate; else determineBarBlock\">\r\n <div class=\"progress\" [class.progress-small]=\"!thick\">\r\n <div class=\"progress-bar-{{ color }}\" [class.progress-bar-indeterminate]=\"indeterminate\"></div>\r\n </div>\r\n </div>\r\n <ng-template #determineBarBlock>\r\n <div class=\"progress\" [class.progress-small]=\"!thick\">\r\n <div class=\"progress-bar progress-bar-{{ color }}\" [ngStyle]=\"{ width: value + '%' }\"></div>\r\n </div>\r\n </ng-template>\r\n</div>\r\n<ng-template #circleBlock>\r\n <div class=\"progress-circle-{{ color }}\" [class.progress-circle-indeterminate]=\"indeterminate\"\r\n [class.progress-circle]=\"!indeterminate\" [class.progress-circle-thick]=\"thick\">\r\n <div *ngIf=\"indeterminate; else determineBlock\"></div>\r\n <ng-template #determineBlock>\r\n <div class=\"pie\" [ngStyle]=\"_value2 && { clip: 'rect(auto, auto, auto, auto)' }\">\r\n <div class=\"left-side half-circle\" [ngStyle]=\"_value2 && { transform: 'rotate(' + value + 'deg)' }\"></div>\r\n <div class=\"right-side half-circle\" [ngStyle]=\"{\r\n transform:\r\n _value2 === true ? 'rotate(180deg)' : 'rotate(' + value + 'deg)'\r\n }\"></div>\r\n </div>\r\n <div class=\"shadow\"></div>\r\n </ng-template>\r\n </div>\r\n</ng-template>" }]
|
|
2743
|
+
}], ctorParameters: () => [], propDecorators: { type: [{
|
|
2744
|
+
type: Input
|
|
2745
|
+
}], color: [{
|
|
2746
|
+
type: Input
|
|
2747
|
+
}], thick: [{
|
|
2748
|
+
type: Input
|
|
2749
|
+
}], indeterminate: [{
|
|
2750
|
+
type: Input
|
|
2751
|
+
}], value: [{
|
|
2752
|
+
type: Input
|
|
2753
|
+
}] } });
|
|
2754
|
+
|
|
2755
|
+
class ProgressConfig {
|
|
2756
|
+
color = "primary";
|
|
2757
|
+
thickness = 1;
|
|
2758
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: ProgressConfig, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2759
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: ProgressConfig });
|
|
2760
|
+
}
|
|
2761
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: ProgressConfig, decorators: [{
|
|
2762
|
+
type: Injectable
|
|
2763
|
+
}] });
|
|
4475
2764
|
|
|
4476
|
-
class
|
|
2765
|
+
class MefDevProgressModule {
|
|
4477
2766
|
static forRoot() {
|
|
4478
|
-
return {
|
|
4479
|
-
ngModule: MefDevSpecFlowTestModule
|
|
4480
|
-
};
|
|
2767
|
+
return { ngModule: MefDevProgressModule, providers: [ProgressConfig] };
|
|
4481
2768
|
}
|
|
4482
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type:
|
|
4483
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type:
|
|
4484
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type:
|
|
2769
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevProgressModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2770
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type: MefDevProgressModule, declarations: [MefDevProgressComponent], imports: [CommonModule], exports: [MefDevProgressComponent] });
|
|
2771
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevProgressModule, imports: [CommonModule] });
|
|
4485
2772
|
}
|
|
4486
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type:
|
|
2773
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevProgressModule, decorators: [{
|
|
4487
2774
|
type: NgModule,
|
|
4488
2775
|
args: [{
|
|
4489
|
-
|
|
4490
|
-
|
|
4491
|
-
|
|
4492
|
-
CommonModule
|
|
4493
|
-
]
|
|
2776
|
+
imports: [CommonModule],
|
|
2777
|
+
declarations: [MefDevProgressComponent],
|
|
2778
|
+
exports: [MefDevProgressComponent]
|
|
4494
2779
|
}]
|
|
4495
2780
|
}] });
|
|
4496
2781
|
|
|
@@ -5186,13 +3471,13 @@ class MefDevTabsNavComponent {
|
|
|
5186
3471
|
}
|
|
5187
3472
|
}
|
|
5188
3473
|
}
|
|
5189
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevTabsNavComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i1$
|
|
3474
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevTabsNavComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i1$1.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
5190
3475
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type: MefDevTabsNavComponent, isStandalone: false, selector: "mefdev-tabs-nav", inputs: { Size: "Size", Animated: "Animated", Position: "Position", HideBar: "HideBar", Type: "Type", ShowPagination: "ShowPagination", PositionMode: "PositionMode", selectedIndex: "selectedIndex" }, queries: [{ propertyName: "_tabBarExtraContent", first: true, predicate: ["tabBarExtraContent"], descendants: true, static: true }, { propertyName: "_labelWrappers", predicate: MefDevTabLabelDirective }], viewQueries: [{ propertyName: "_inkBar", first: true, predicate: MefDevTabsInkBarDirective, descendants: true, static: true }, { propertyName: "_tabListContainer", first: true, predicate: ["tabListContainer"], descendants: true, static: true }, { propertyName: "_tabList", first: true, predicate: ["tabList"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"nav-tabs-wrapper\" [class.scrolling]=\"_showPaginationControls\" #tabListContainer>\r\n <div class=\"nav-wrap\">\r\n <ul\r\n class=\"nav nav-tabs nav-tabs-{{ _type }} nav-tabs-{{ _tabPosition }}\"\r\n [class.tabs-nav-animated]=\"Animated\"\r\n #tabList\r\n (cdkObserveContent)=\"_onContentChanges()\"\r\n >\r\n <div\r\n class=\"active-bar\"\r\n mefdev-tabs-ink-bar\r\n [hidden]=\"HideBar\"\r\n [Animated]=\"Animated\"\r\n [PositionMode]=\"PositionMode\"\r\n style=\"display: block;\"\r\n ></div>\r\n <ng-content></ng-content>\r\n </ul>\r\n </div>\r\n </div>", dependencies: [{ kind: "directive", type: MefDevTabsInkBarDirective, selector: "[mefdev-tabs-ink-bar]", inputs: ["Animated", "PositionMode"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
5191
3476
|
}
|
|
5192
3477
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MefDevTabsNavComponent, decorators: [{
|
|
5193
3478
|
type: Component,
|
|
5194
3479
|
args: [{ selector: 'mefdev-tabs-nav', encapsulation: ViewEncapsulation.None, standalone: false, template: "<div class=\"nav-tabs-wrapper\" [class.scrolling]=\"_showPaginationControls\" #tabListContainer>\r\n <div class=\"nav-wrap\">\r\n <ul\r\n class=\"nav nav-tabs nav-tabs-{{ _type }} nav-tabs-{{ _tabPosition }}\"\r\n [class.tabs-nav-animated]=\"Animated\"\r\n #tabList\r\n (cdkObserveContent)=\"_onContentChanges()\"\r\n >\r\n <div\r\n class=\"active-bar\"\r\n mefdev-tabs-ink-bar\r\n [hidden]=\"HideBar\"\r\n [Animated]=\"Animated\"\r\n [PositionMode]=\"PositionMode\"\r\n style=\"display: block;\"\r\n ></div>\r\n <ng-content></ng-content>\r\n </ul>\r\n </div>\r\n </div>" }]
|
|
5195
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i1$
|
|
3480
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i1$1.Directionality, decorators: [{
|
|
5196
3481
|
type: Optional
|
|
5197
3482
|
}] }], propDecorators: { Size: [{
|
|
5198
3483
|
type: Input
|
|
@@ -5757,12 +4042,12 @@ class MDExpansionPanel extends CdkAccordionItem {
|
|
|
5757
4042
|
});
|
|
5758
4043
|
}
|
|
5759
4044
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MDExpansionPanel, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5760
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "20.3.6", type: MDExpansionPanel, isStandalone: true, selector: "md-expansion-panel", inputs: { hideToggle: ["hideToggle", "hideToggle", booleanAttribute], togglePosition: "togglePosition" }, outputs: { afterExpand: "afterExpand", afterCollapse: "afterCollapse" }, host: { properties: { "class.expanded": "expanded"
|
|
4045
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "20.3.6", type: MDExpansionPanel, isStandalone: true, selector: "md-expansion-panel", inputs: { hideToggle: ["hideToggle", "hideToggle", booleanAttribute], togglePosition: "togglePosition" }, outputs: { afterExpand: "afterExpand", afterCollapse: "afterCollapse" }, host: { properties: { "class.expanded": "expanded" }, classAttribute: "expansion-panel" }, providers: [
|
|
5761
4046
|
// Provide a standalone accordion context when used outside a parent accordion.
|
|
5762
4047
|
{ provide: ACCORDION, useValue: undefined },
|
|
5763
4048
|
// Expose this concrete implementation under the base token.
|
|
5764
4049
|
{ provide: MD_EXPANSION_PANEL, useExisting: MDExpansionPanel },
|
|
5765
|
-
], queries: [{ propertyName: "_lazyContent", first: true, predicate: MDExpansionPanelContent, descendants: true }], viewQueries: [{ propertyName: "_body", first: true, predicate: ["body"], descendants: true }, { propertyName: "_bodyWrapper", first: true, predicate: ["bodyWrapper"], descendants: true }], exportAs: ["expansionPanel"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-content select=\"md-expansion-panel-header\"></ng-content>\r\n<div class=\"expansion-panel-content-wrapper\" [attr.inert]=\"expanded ? null : ''\" #bodyWrapper>\r\n <div class=\"expansion-panel-content\"\r\n role=\"region\"\r\n [attr.aria-labelledby]=\"_headerId\"\r\n [id]=\"id\"\r\n #body>\r\n <div class=\"expansion-panel-body\">\r\n <ng-content></ng-content>\r\n <ng-template [cdkPortalOutlet]=\"_portal\"></ng-template>\r\n </div>\r\n <ng-content select=\"action-row\"></ng-content>\r\n </div>\r\n</div>", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.expansion-panel{box-sizing:content-box;display:block;margin:0;overflow:hidden;position:relative;background:#f3f3f3;color:#000}.expansion-panel.expansion-panel-animations-enabled{transition:margin 225ms cubic-bezier(.4,0,.2,1)
|
|
4050
|
+
], queries: [{ propertyName: "_lazyContent", first: true, predicate: MDExpansionPanelContent, descendants: true }], viewQueries: [{ propertyName: "_body", first: true, predicate: ["body"], descendants: true }, { propertyName: "_bodyWrapper", first: true, predicate: ["bodyWrapper"], descendants: true }], exportAs: ["expansionPanel"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-content select=\"md-expansion-panel-header\"></ng-content>\r\n<div class=\"expansion-panel-content-wrapper\" [attr.inert]=\"expanded ? null : ''\" #bodyWrapper>\r\n <div class=\"expansion-panel-content\"\r\n role=\"region\"\r\n [attr.aria-labelledby]=\"_headerId\"\r\n [id]=\"id\"\r\n #body>\r\n <div class=\"expansion-panel-body\">\r\n <ng-content></ng-content>\r\n <ng-template [cdkPortalOutlet]=\"_portal\"></ng-template>\r\n </div>\r\n <ng-content select=\"action-row\"></ng-content>\r\n </div>\r\n</div>", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.expansion-panel{box-sizing:content-box;display:block;margin:0;overflow:hidden;position:relative;background:#f3f3f3;color:#000}.expansion-panel.expansion-panel-animations-enabled{transition:margin 225ms cubic-bezier(.4,0,.2,1)}.expansion-panel-content-wrapper{display:grid;grid-template-rows:0fr;grid-template-columns:100%}.expansion-panel-animations-enabled .expansion-panel-content-wrapper{transition:grid-template-rows 225ms cubic-bezier(.4,0,.2,1)}.expansion-panel.expanded>.expansion-panel-content-wrapper{grid-template-rows:1fr}@supports not (grid-template-rows: 0fr){.expansion-panel-content-wrapper{height:0}.expansion-panel.expanded>.expansion-panel-content-wrapper{height:auto}}.expansion-panel-content{display:flex;flex-direction:column;overflow:visible;min-height:0;visibility:hidden}.expansion-panel-animations-enabled .expansion-panel-content{transition:visibility .19s linear}.expansion-panel.expanded>.expansion-panel-content-wrapper>.expansion-panel-content{visibility:visible}.expansion-panel-body{padding:0 24px 16px}.accordion>.expansion-panel:not(:last-child){margin-bottom:8px}.action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:12px 16px;border-top-color:#eaeaea}.action-row .button-base,.action-row .mdc-button-base{margin-left:8px}[dir=rtl] .action-row .button-base,[dir=rtl] .action-row .mdc-button-base{margin-left:0;margin-right:8px}\n"], dependencies: [{ kind: "directive", type: CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
5766
4051
|
}
|
|
5767
4052
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MDExpansionPanel, decorators: [{
|
|
5768
4053
|
type: Component,
|
|
@@ -5773,9 +4058,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
5773
4058
|
{ provide: MD_EXPANSION_PANEL, useExisting: MDExpansionPanel },
|
|
5774
4059
|
], host: {
|
|
5775
4060
|
class: 'expansion-panel',
|
|
5776
|
-
'[class.expanded]': 'expanded'
|
|
5777
|
-
|
|
5778
|
-
}, imports: [CdkPortalOutlet], template: "<ng-content select=\"md-expansion-panel-header\"></ng-content>\r\n<div class=\"expansion-panel-content-wrapper\" [attr.inert]=\"expanded ? null : ''\" #bodyWrapper>\r\n <div class=\"expansion-panel-content\"\r\n role=\"region\"\r\n [attr.aria-labelledby]=\"_headerId\"\r\n [id]=\"id\"\r\n #body>\r\n <div class=\"expansion-panel-body\">\r\n <ng-content></ng-content>\r\n <ng-template [cdkPortalOutlet]=\"_portal\"></ng-template>\r\n </div>\r\n <ng-content select=\"action-row\"></ng-content>\r\n </div>\r\n</div>", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.expansion-panel{box-sizing:content-box;display:block;margin:0;overflow:hidden;position:relative;background:#f3f3f3;color:#000}.expansion-panel.expansion-panel-animations-enabled{transition:margin 225ms cubic-bezier(.4,0,.2,1),box-shadow .28s cubic-bezier(.4,0,.2,1)}.expansion-panel:not([class*=elevation-z]){box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.accordion .expansion-panel:not(.expanded),.accordion .expansion-panel:not(.expansion-panel-spacing){border-radius:0}.expansion-panel-content-wrapper{display:grid;grid-template-rows:0fr;grid-template-columns:100%}.expansion-panel-animations-enabled .expansion-panel-content-wrapper{transition:grid-template-rows 225ms cubic-bezier(.4,0,.2,1)}.expansion-panel.expanded>.expansion-panel-content-wrapper{grid-template-rows:1fr}@supports not (grid-template-rows: 0fr){.expansion-panel-content-wrapper{height:0}.expansion-panel.expanded>.expansion-panel-content-wrapper{height:auto}}.expansion-panel-content{display:flex;flex-direction:column;overflow:visible;min-height:0;visibility:hidden;font-family:Robot;font-size:1rem;font-weight:400;line-height:1.5rem;letter-spacing:.031rem}.expansion-panel-animations-enabled .expansion-panel-content{transition:visibility .19s linear}.expansion-panel.expanded>.expansion-panel-content-wrapper>.expansion-panel-content{visibility:visible}.expansion-panel-body{padding:0 24px 16px}.expansion-panel-spacing{margin:16px 0}.accordion>.expansion-panel-spacing:first-child,.accordion>*:first-child:not(.expansion-panel) .expansion-panel-spacing{margin-top:0}.accordion>.expansion-panel-spacing:last-child,.accordion>*:last-child:not(.expansion-panel) .expansion-panel-spacing{margin-bottom:0}.action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:12px 16px;border-top-color:#eaeaea}.action-row .button-base,.action-row .mdc-button-base{margin-left:8px}[dir=rtl] .action-row .button-base,[dir=rtl] .action-row .mdc-button-base{margin-left:0;margin-right:8px}\n"] }]
|
|
4061
|
+
'[class.expanded]': 'expanded'
|
|
4062
|
+
}, imports: [CdkPortalOutlet], template: "<ng-content select=\"md-expansion-panel-header\"></ng-content>\r\n<div class=\"expansion-panel-content-wrapper\" [attr.inert]=\"expanded ? null : ''\" #bodyWrapper>\r\n <div class=\"expansion-panel-content\"\r\n role=\"region\"\r\n [attr.aria-labelledby]=\"_headerId\"\r\n [id]=\"id\"\r\n #body>\r\n <div class=\"expansion-panel-body\">\r\n <ng-content></ng-content>\r\n <ng-template [cdkPortalOutlet]=\"_portal\"></ng-template>\r\n </div>\r\n <ng-content select=\"action-row\"></ng-content>\r\n </div>\r\n</div>", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.expansion-panel{box-sizing:content-box;display:block;margin:0;overflow:hidden;position:relative;background:#f3f3f3;color:#000}.expansion-panel.expansion-panel-animations-enabled{transition:margin 225ms cubic-bezier(.4,0,.2,1)}.expansion-panel-content-wrapper{display:grid;grid-template-rows:0fr;grid-template-columns:100%}.expansion-panel-animations-enabled .expansion-panel-content-wrapper{transition:grid-template-rows 225ms cubic-bezier(.4,0,.2,1)}.expansion-panel.expanded>.expansion-panel-content-wrapper{grid-template-rows:1fr}@supports not (grid-template-rows: 0fr){.expansion-panel-content-wrapper{height:0}.expansion-panel.expanded>.expansion-panel-content-wrapper{height:auto}}.expansion-panel-content{display:flex;flex-direction:column;overflow:visible;min-height:0;visibility:hidden}.expansion-panel-animations-enabled .expansion-panel-content{transition:visibility .19s linear}.expansion-panel.expanded>.expansion-panel-content-wrapper>.expansion-panel-content{visibility:visible}.expansion-panel-body{padding:0 24px 16px}.accordion>.expansion-panel:not(:last-child){margin-bottom:8px}.action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:12px 16px;border-top-color:#eaeaea}.action-row .button-base,.action-row .mdc-button-base{margin-left:8px}[dir=rtl] .action-row .button-base,[dir=rtl] .action-row .mdc-button-base{margin-left:0;margin-right:8px}\n"] }]
|
|
5779
4063
|
}], ctorParameters: () => [], propDecorators: { hideToggle: [{
|
|
5780
4064
|
type: Input,
|
|
5781
4065
|
args: [{ transform: booleanAttribute }]
|
|
@@ -5944,7 +4228,7 @@ class MDExpansionPanelHeader {
|
|
|
5944
4228
|
this._focusMonitor.stopMonitoring(this._element);
|
|
5945
4229
|
}
|
|
5946
4230
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MDExpansionPanelHeader, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5947
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.6", type: MDExpansionPanelHeader, isStandalone: true, selector: "md-expansion-panel-header", inputs: { expandedHeight: "expandedHeight", collapsedHeight: "collapsedHeight", tabIndex: ["tabIndex", "tabIndex", (value) => (value == null ? 0 : numberAttribute(value))] }, host: { attributes: { "role": "button" }, listeners: { "click": "_toggle()", "keydown": "_keydown($event)" }, properties: { "attr.id": "panel._headerId", "attr.tabindex": "disabled ? -1 : tabIndex", "attr.aria-controls": "_getPanelId()", "attr.aria-expanded": "_isExpanded()", "attr.aria-disabled": "panel.disabled", "class.expanded": "_isExpanded()", "class.expansion-toggle-indicator-after": "_getTogglePosition() === 'after'", "class.expansion-toggle-indicator-before": "_getTogglePosition() === 'before'", "style.height": "_getHeaderHeight()" }, classAttribute: "expansion-panel-header focus-indicator" }, ngImport: i0, template: "<span class=\"content\" [class.content-hide-toggle]=\"!_showToggle()\">\r\n <ng-content select=\"md-panel-title\"></ng-content>\r\n <ng-content select=\"md-panel-description\"></ng-content>\r\n <ng-content></ng-content>\r\n</span>\r\n\r\n@if (_showToggle()) {\r\n <span class=\"expansion-indicator\">\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 -960 960 960\"\r\n aria-hidden=\"true\"\r\n focusable=\"false\">\r\n <path d=\"M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z\"/>\r\n </svg>\r\n </span>\r\n}", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;height:
|
|
4231
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.6", type: MDExpansionPanelHeader, isStandalone: true, selector: "md-expansion-panel-header", inputs: { expandedHeight: "expandedHeight", collapsedHeight: "collapsedHeight", tabIndex: ["tabIndex", "tabIndex", (value) => (value == null ? 0 : numberAttribute(value))] }, host: { attributes: { "role": "button" }, listeners: { "click": "_toggle()", "keydown": "_keydown($event)" }, properties: { "attr.id": "panel._headerId", "attr.tabindex": "disabled ? -1 : tabIndex", "attr.aria-controls": "_getPanelId()", "attr.aria-expanded": "_isExpanded()", "attr.aria-disabled": "panel.disabled", "class.expanded": "_isExpanded()", "class.expansion-toggle-indicator-after": "_getTogglePosition() === 'after'", "class.expansion-toggle-indicator-before": "_getTogglePosition() === 'before'", "style.height": "_getHeaderHeight()" }, classAttribute: "expansion-panel-header focus-indicator" }, ngImport: i0, template: "<span class=\"content\" [class.content-hide-toggle]=\"!_showToggle()\">\r\n <ng-content select=\"md-panel-title\"></ng-content>\r\n <ng-content select=\"md-panel-description\"></ng-content>\r\n <ng-content></ng-content>\r\n</span>\r\n\r\n@if (_showToggle()) {\r\n <span class=\"expansion-indicator\">\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 -960 960 960\"\r\n aria-hidden=\"true\"\r\n focusable=\"false\">\r\n <path d=\"M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z\"/>\r\n </svg>\r\n </span>\r\n}", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;height:66px;font-family:Montserrat;font-size:1rem;font-weight:600;line-height:1.5rem;letter-spacing:.009rem}.expansion-panel-animations-enabled .expansion-panel-header{transition:height 225ms cubic-bezier(.4,0,.2,1)}.expansion-panel-header:before{border-radius:inherit}.expansion-panel-header.expanded{height:64px}.expansion-panel-header[aria-disabled=true]{color:color-mix(in srgb,var(--mat-sys-on-surface) 38%,transparent)}.expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.expansion-panel:not(.expanded) .expansion-panel-header:not([aria-disabled=true]):hover{background:color-mix(in srgb,var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%),transparent)}.expansion-panel .expansion-panel-header:not([aria-disabled=true]).cdk-keyboard-focused,.expansion-panel .expansion-panel-header:not([aria-disabled=true]).cdk-program-focused{background:color-mix(in srgb,var(--mat-sys-on-surface) calc(var(--mat-sys-focus-state-layer-opacity) * 100%),transparent)}.expansion-panel-header._animation-noopable{transition:none}.expansion-panel-header:focus,.expansion-panel-header:hover{outline:none}.expansion-panel-header.expanded:focus,.expansion-panel-header.expanded:hover{background:inherit}.expansion-panel-header.expansion-toggle-indicator-before{flex-direction:row-reverse}.expansion-panel-header.expansion-toggle-indicator-before .expansion-indicator{margin:0 16px 0 0}[dir=rtl] .expansion-panel-header.expansion-toggle-indicator-before .expansion-indicator{margin:0 0 0 16px}.content{display:flex;flex:1;flex-direction:row;overflow:hidden}.content.content-hide-toggle{margin-right:8px}[dir=rtl] .content.content-hide-toggle{margin-right:0;margin-left:8px}.expansion-toggle-indicator-before .content.content-hide-toggle{margin-left:24px;margin-right:0}[dir=rtl] .expansion-toggle-indicator-before .content.content-hide-toggle{margin-right:24px;margin-left:0}.expansion-panel-header-title{color:#373737;font-size:18px;line-height:24px;font-weight:600;text-transform:none}.expansion-panel-header-title,.expansion-panel-header-description{display:flex;flex-grow:1;flex-basis:0;margin-right:16px;align-items:center}[dir=rtl] .expansion-panel-header-title,[dir=rtl] .expansion-panel-header-description{margin-right:0;margin-left:16px}.expansion-panel-header[aria-disabled=true] .expansion-panel-header-title,.expansion-panel-header[aria-disabled=true] .expansion-panel-header-description{color:inherit}.expansion-panel-header-description{flex-grow:2;color:#373737}.expansion-panel-animations-enabled .expansion-indicator{transition:transform 225ms cubic-bezier(.4,0,.2,1)}.expansion-panel-header.expanded .expansion-indicator{transform:rotate(180deg)}.expansion-indicator svg{width:24px;height:24px;margin:0 -8px;vertical-align:middle;fill:#000;display:inline-block}@media (forced-colors: active){.expansion-panel-content{border-top:1px solid;border-top-left-radius:0;border-top-right-radius:0}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
5948
4232
|
}
|
|
5949
4233
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MDExpansionPanelHeader, decorators: [{
|
|
5950
4234
|
type: Component,
|
|
@@ -5965,7 +4249,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
5965
4249
|
// Interaction
|
|
5966
4250
|
'(click)': '_toggle()',
|
|
5967
4251
|
'(keydown)': '_keydown($event)',
|
|
5968
|
-
}, template: "<span class=\"content\" [class.content-hide-toggle]=\"!_showToggle()\">\r\n <ng-content select=\"md-panel-title\"></ng-content>\r\n <ng-content select=\"md-panel-description\"></ng-content>\r\n <ng-content></ng-content>\r\n</span>\r\n\r\n@if (_showToggle()) {\r\n <span class=\"expansion-indicator\">\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 -960 960 960\"\r\n aria-hidden=\"true\"\r\n focusable=\"false\">\r\n <path d=\"M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z\"/>\r\n </svg>\r\n </span>\r\n}", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;height:
|
|
4252
|
+
}, template: "<span class=\"content\" [class.content-hide-toggle]=\"!_showToggle()\">\r\n <ng-content select=\"md-panel-title\"></ng-content>\r\n <ng-content select=\"md-panel-description\"></ng-content>\r\n <ng-content></ng-content>\r\n</span>\r\n\r\n@if (_showToggle()) {\r\n <span class=\"expansion-indicator\">\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 -960 960 960\"\r\n aria-hidden=\"true\"\r\n focusable=\"false\">\r\n <path d=\"M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z\"/>\r\n </svg>\r\n </span>\r\n}", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;height:66px;font-family:Montserrat;font-size:1rem;font-weight:600;line-height:1.5rem;letter-spacing:.009rem}.expansion-panel-animations-enabled .expansion-panel-header{transition:height 225ms cubic-bezier(.4,0,.2,1)}.expansion-panel-header:before{border-radius:inherit}.expansion-panel-header.expanded{height:64px}.expansion-panel-header[aria-disabled=true]{color:color-mix(in srgb,var(--mat-sys-on-surface) 38%,transparent)}.expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.expansion-panel:not(.expanded) .expansion-panel-header:not([aria-disabled=true]):hover{background:color-mix(in srgb,var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%),transparent)}.expansion-panel .expansion-panel-header:not([aria-disabled=true]).cdk-keyboard-focused,.expansion-panel .expansion-panel-header:not([aria-disabled=true]).cdk-program-focused{background:color-mix(in srgb,var(--mat-sys-on-surface) calc(var(--mat-sys-focus-state-layer-opacity) * 100%),transparent)}.expansion-panel-header._animation-noopable{transition:none}.expansion-panel-header:focus,.expansion-panel-header:hover{outline:none}.expansion-panel-header.expanded:focus,.expansion-panel-header.expanded:hover{background:inherit}.expansion-panel-header.expansion-toggle-indicator-before{flex-direction:row-reverse}.expansion-panel-header.expansion-toggle-indicator-before .expansion-indicator{margin:0 16px 0 0}[dir=rtl] .expansion-panel-header.expansion-toggle-indicator-before .expansion-indicator{margin:0 0 0 16px}.content{display:flex;flex:1;flex-direction:row;overflow:hidden}.content.content-hide-toggle{margin-right:8px}[dir=rtl] .content.content-hide-toggle{margin-right:0;margin-left:8px}.expansion-toggle-indicator-before .content.content-hide-toggle{margin-left:24px;margin-right:0}[dir=rtl] .expansion-toggle-indicator-before .content.content-hide-toggle{margin-right:24px;margin-left:0}.expansion-panel-header-title{color:#373737;font-size:18px;line-height:24px;font-weight:600;text-transform:none}.expansion-panel-header-title,.expansion-panel-header-description{display:flex;flex-grow:1;flex-basis:0;margin-right:16px;align-items:center}[dir=rtl] .expansion-panel-header-title,[dir=rtl] .expansion-panel-header-description{margin-right:0;margin-left:16px}.expansion-panel-header[aria-disabled=true] .expansion-panel-header-title,.expansion-panel-header[aria-disabled=true] .expansion-panel-header-description{color:inherit}.expansion-panel-header-description{flex-grow:2;color:#373737}.expansion-panel-animations-enabled .expansion-indicator{transition:transform 225ms cubic-bezier(.4,0,.2,1)}.expansion-panel-header.expanded .expansion-indicator{transform:rotate(180deg)}.expansion-indicator svg{width:24px;height:24px;margin:0 -8px;vertical-align:middle;fill:#000;display:inline-block}@media (forced-colors: active){.expansion-panel-content{border-top:1px solid;border-top-left-radius:0;border-top-right-radius:0}}\n"] }]
|
|
5969
4253
|
}], ctorParameters: () => [], propDecorators: { expandedHeight: [{
|
|
5970
4254
|
type: Input
|
|
5971
4255
|
}], collapsedHeight: [{
|
|
@@ -7231,7 +5515,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
7231
5515
|
*/
|
|
7232
5516
|
class MDDialogContent {
|
|
7233
5517
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MDDialogContent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
7234
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.6", type: MDDialogContent, isStandalone: true, selector: "[md-dialog-content], md-dialog-content, [mdDialogContent]", host: { classAttribute: "mdc-dialog-content mdc-dialog__content" }, hostDirectives: [{ directive: i1$
|
|
5518
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.6", type: MDDialogContent, isStandalone: true, selector: "[md-dialog-content], md-dialog-content, [mdDialogContent]", host: { classAttribute: "mdc-dialog-content mdc-dialog__content" }, hostDirectives: [{ directive: i1$2.CdkScrollable }], ngImport: i0 });
|
|
7235
5519
|
}
|
|
7236
5520
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MDDialogContent, decorators: [{
|
|
7237
5521
|
type: Directive,
|
|
@@ -7582,6 +5866,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
7582
5866
|
}]
|
|
7583
5867
|
}] });
|
|
7584
5868
|
|
|
5869
|
+
const HEADER_SCROLL_DELAY$1 = 650;
|
|
5870
|
+
const HEADER_SCROLL_INTERVAL$1 = 100;
|
|
5871
|
+
const passiveEventListenerOptions$1 = {
|
|
5872
|
+
passive: true,
|
|
5873
|
+
};
|
|
7585
5874
|
/**
|
|
7586
5875
|
* ErrorStateMatcher that shows errors only once a control is dirty
|
|
7587
5876
|
* (or when the parent form was submitted). Useful for “show on edit”.
|
|
@@ -7633,9 +5922,9 @@ class MDStep extends CdkStep {
|
|
|
7633
5922
|
ngAfterContentInit() {
|
|
7634
5923
|
this._isSelected = this._stepper.steps.changes
|
|
7635
5924
|
.pipe(switchMap(() => {
|
|
7636
|
-
return this._stepper.selectionChange.pipe(map(event => event.selectedStep === this), startWith(this._stepper.selected === this));
|
|
5925
|
+
return this._stepper.selectionChange.pipe(map((event) => event.selectedStep === this), startWith(this._stepper.selected === this));
|
|
7637
5926
|
}))
|
|
7638
|
-
.subscribe(isSelected => {
|
|
5927
|
+
.subscribe((isSelected) => {
|
|
7639
5928
|
if (isSelected && this._lazyContent && !this._portal) {
|
|
7640
5929
|
this._portal = new TemplatePortal(this._lazyContent._template, this._viewContainerRef);
|
|
7641
5930
|
}
|
|
@@ -7670,7 +5959,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
7670
5959
|
{ provide: CdkStep, useExisting: MDStep },
|
|
7671
5960
|
], encapsulation: ViewEncapsulation.None, exportAs: 'mdStep', changeDetection: ChangeDetectionStrategy.OnPush, imports: [CdkPortalOutlet], host: {
|
|
7672
5961
|
// Keep steps hidden by default; container controls visibility.
|
|
7673
|
-
|
|
5962
|
+
hidden: '',
|
|
7674
5963
|
}, template: "<ng-template>\r\n <ng-content></ng-content>\r\n <ng-template [cdkPortalOutlet]=\"_portal\"></ng-template>\r\n</ng-template>" }]
|
|
7675
5964
|
}], propDecorators: { stepLabel: [{
|
|
7676
5965
|
type: ContentChild,
|
|
@@ -7726,12 +6015,17 @@ class MDStepper extends CdkStepper {
|
|
|
7726
6015
|
_animationDuration = '';
|
|
7727
6016
|
/** SSR guard (avoid DOM APIs when not in browser). */
|
|
7728
6017
|
_isServer = !inject(Platform).isBrowser;
|
|
6018
|
+
_sharedResizeObserver = inject(SharedResizeObserver);
|
|
6019
|
+
// Overload kept to match construction signature patterns.
|
|
7729
6020
|
constructor() {
|
|
7730
6021
|
super();
|
|
7731
6022
|
// Infer orientation from host element name when using alias tags.
|
|
7732
6023
|
const elementRef = inject(ElementRef);
|
|
7733
6024
|
const nodeName = elementRef.nativeElement.nodeName.toLowerCase();
|
|
7734
6025
|
this.orientation = nodeName === 'vertical-stepper' ? 'vertical' : 'horizontal';
|
|
6026
|
+
this._eventCleanups = this._ngZone.runOutsideAngular(() => [
|
|
6027
|
+
this._renderer.listen(this._elementRef.nativeElement, 'mouseleave', () => this._stopInterval()),
|
|
6028
|
+
]);
|
|
7735
6029
|
}
|
|
7736
6030
|
/**
|
|
7737
6031
|
* After content init:
|
|
@@ -7764,6 +6058,192 @@ class MDStepper extends CdkStepper {
|
|
|
7764
6058
|
}, 200);
|
|
7765
6059
|
}
|
|
7766
6060
|
});
|
|
6061
|
+
const resize = this._sharedResizeObserver
|
|
6062
|
+
.observe(this._elementRef.nativeElement)
|
|
6063
|
+
.pipe(debounceTime(32), takeUntil(this._destroyed));
|
|
6064
|
+
const realign = () => {
|
|
6065
|
+
this.updatePagination();
|
|
6066
|
+
};
|
|
6067
|
+
merge(resize, this._stepHeader.changes, this._itemsResized())
|
|
6068
|
+
.pipe(takeUntil(this._destroyed))
|
|
6069
|
+
.subscribe(() => {
|
|
6070
|
+
this._ngZone.run(() => {
|
|
6071
|
+
Promise.resolve().then(() => {
|
|
6072
|
+
this._scrollDistance = Math.max(0, Math.min(this._getMaxScrollDistance(), this._scrollDistance));
|
|
6073
|
+
realign();
|
|
6074
|
+
});
|
|
6075
|
+
});
|
|
6076
|
+
});
|
|
6077
|
+
}
|
|
6078
|
+
ngAfterViewChecked() {
|
|
6079
|
+
if (this._stepLabelCount != this._stepHeader.length) {
|
|
6080
|
+
this.updatePagination();
|
|
6081
|
+
this._stepLabelCount = this._stepHeader.length;
|
|
6082
|
+
this.changeDetectorRef.markForCheck();
|
|
6083
|
+
}
|
|
6084
|
+
if (this._selectedIndexChanged) {
|
|
6085
|
+
this._scrollToLabel(this.selectedIndex);
|
|
6086
|
+
this._checkScrollingControls();
|
|
6087
|
+
this._selectedIndexChanged = false;
|
|
6088
|
+
this.changeDetectorRef.markForCheck();
|
|
6089
|
+
}
|
|
6090
|
+
if (this._scrollDistanceChanged) {
|
|
6091
|
+
this._updateTabScrollPosition();
|
|
6092
|
+
this._scrollDistanceChanged = false;
|
|
6093
|
+
this.changeDetectorRef.markForCheck();
|
|
6094
|
+
}
|
|
6095
|
+
}
|
|
6096
|
+
_stopScrolling = new Subject();
|
|
6097
|
+
_eventCleanups;
|
|
6098
|
+
_selectedIndexChanged = false;
|
|
6099
|
+
_stepLabelCount;
|
|
6100
|
+
changeDetectorRef = inject(ChangeDetectorRef);
|
|
6101
|
+
_platform = inject(Platform);
|
|
6102
|
+
disablePagination = false;
|
|
6103
|
+
get selectedIndex() {
|
|
6104
|
+
return super.selectedIndex;
|
|
6105
|
+
}
|
|
6106
|
+
set selectedIndex(v) {
|
|
6107
|
+
const previous = super.selectedIndex;
|
|
6108
|
+
super.selectedIndex = v;
|
|
6109
|
+
const value = isNaN(v) ? 0 : v;
|
|
6110
|
+
if (previous != value) {
|
|
6111
|
+
this._selectedIndexChanged = true;
|
|
6112
|
+
}
|
|
6113
|
+
}
|
|
6114
|
+
_stepHeaderElRef;
|
|
6115
|
+
_stepListContainer;
|
|
6116
|
+
_stepList;
|
|
6117
|
+
_stepListInner;
|
|
6118
|
+
_nextPaginator;
|
|
6119
|
+
_previousPaginator;
|
|
6120
|
+
_scrollDistanceChanged;
|
|
6121
|
+
_scrollDistance = 0;
|
|
6122
|
+
_showPaginationControls = false;
|
|
6123
|
+
_disableScrollAfter = true;
|
|
6124
|
+
_disableScrollBefore = true;
|
|
6125
|
+
get scrollDistance() {
|
|
6126
|
+
return this._scrollDistance;
|
|
6127
|
+
}
|
|
6128
|
+
set scrollDistance(value) {
|
|
6129
|
+
this._scrollTo(value);
|
|
6130
|
+
}
|
|
6131
|
+
_handlePaginatorClick(direction) {
|
|
6132
|
+
this._stopInterval();
|
|
6133
|
+
this._scrollHeader(direction);
|
|
6134
|
+
}
|
|
6135
|
+
_handlePaginatorPress(direction, mouseEvent) {
|
|
6136
|
+
if (mouseEvent && mouseEvent.button != null && mouseEvent.button !== 0) {
|
|
6137
|
+
return;
|
|
6138
|
+
}
|
|
6139
|
+
this._stopInterval();
|
|
6140
|
+
timer(HEADER_SCROLL_DELAY$1, HEADER_SCROLL_INTERVAL$1)
|
|
6141
|
+
.pipe(takeUntil(merge(this._stopScrolling, this._destroyed)))
|
|
6142
|
+
.subscribe(() => {
|
|
6143
|
+
const { maxScrollDistance, distance } = this._scrollHeader(direction);
|
|
6144
|
+
if (distance === 0 || distance >= maxScrollDistance) {
|
|
6145
|
+
this._stopInterval();
|
|
6146
|
+
}
|
|
6147
|
+
});
|
|
6148
|
+
}
|
|
6149
|
+
_scrollHeader(direction) {
|
|
6150
|
+
const viewLength = this._stepListContainer.nativeElement.offsetWidth;
|
|
6151
|
+
const scrollAmount = ((direction == 'before' ? -1 : 1) * viewLength) / 3;
|
|
6152
|
+
return this._scrollTo(this._scrollDistance + scrollAmount);
|
|
6153
|
+
}
|
|
6154
|
+
_stopInterval() {
|
|
6155
|
+
this._stopScrolling.next();
|
|
6156
|
+
}
|
|
6157
|
+
_scrollToLabel(labelIndex) {
|
|
6158
|
+
if (this.disablePagination) {
|
|
6159
|
+
return;
|
|
6160
|
+
}
|
|
6161
|
+
const selectedLabel = this._stepHeader ? this._stepHeader.toArray()[labelIndex] : null;
|
|
6162
|
+
if (!selectedLabel) {
|
|
6163
|
+
return;
|
|
6164
|
+
}
|
|
6165
|
+
const viewLength = this._stepListContainer.nativeElement.offsetWidth;
|
|
6166
|
+
const { offsetLeft, offsetWidth } = selectedLabel._elementRef.nativeElement;
|
|
6167
|
+
let labelBeforePos, labelAfterPos;
|
|
6168
|
+
labelBeforePos = offsetLeft;
|
|
6169
|
+
labelAfterPos = labelBeforePos + offsetWidth;
|
|
6170
|
+
const beforeVisiblePos = this.scrollDistance;
|
|
6171
|
+
const afterVisiblePos = this.scrollDistance + viewLength;
|
|
6172
|
+
if (labelBeforePos < beforeVisiblePos) {
|
|
6173
|
+
this.scrollDistance -= beforeVisiblePos - labelBeforePos;
|
|
6174
|
+
}
|
|
6175
|
+
else if (labelAfterPos > afterVisiblePos) {
|
|
6176
|
+
this.scrollDistance += Math.min(labelAfterPos - afterVisiblePos, labelBeforePos - beforeVisiblePos);
|
|
6177
|
+
}
|
|
6178
|
+
}
|
|
6179
|
+
_itemsResized() {
|
|
6180
|
+
if (typeof ResizeObserver !== 'function') {
|
|
6181
|
+
return EMPTY;
|
|
6182
|
+
}
|
|
6183
|
+
return this._stepHeader.changes.pipe(startWith(this._stepHeader), switchMap((tabItems) => new Observable((observer) => this._ngZone.runOutsideAngular(() => {
|
|
6184
|
+
const resizeObserver = new ResizeObserver((entries) => observer.next(entries));
|
|
6185
|
+
tabItems.forEach((item) => resizeObserver.observe(item.elementRef.nativeElement));
|
|
6186
|
+
return () => {
|
|
6187
|
+
resizeObserver.disconnect();
|
|
6188
|
+
};
|
|
6189
|
+
}))), skip(1), filter((entries) => entries.some((e) => e.contentRect.width > 0 && e.contentRect.height > 0)));
|
|
6190
|
+
}
|
|
6191
|
+
_scrollTo(position) {
|
|
6192
|
+
if (this.disablePagination) {
|
|
6193
|
+
return { maxScrollDistance: 0, distance: 0 };
|
|
6194
|
+
}
|
|
6195
|
+
const maxScrollDistance = this._getMaxScrollDistance();
|
|
6196
|
+
this._scrollDistance = Math.max(0, Math.min(maxScrollDistance, position));
|
|
6197
|
+
this._scrollDistanceChanged = true;
|
|
6198
|
+
this._checkScrollingControls();
|
|
6199
|
+
return { maxScrollDistance, distance: this._scrollDistance };
|
|
6200
|
+
}
|
|
6201
|
+
_checkScrollingControls() {
|
|
6202
|
+
if (this.disablePagination) {
|
|
6203
|
+
this._disableScrollAfter = this._disableScrollBefore = true;
|
|
6204
|
+
}
|
|
6205
|
+
else {
|
|
6206
|
+
this._disableScrollBefore = this.scrollDistance == 0;
|
|
6207
|
+
this._disableScrollAfter = this.scrollDistance == this._getMaxScrollDistance();
|
|
6208
|
+
this.changeDetectorRef.markForCheck();
|
|
6209
|
+
}
|
|
6210
|
+
}
|
|
6211
|
+
_getMaxScrollDistance() {
|
|
6212
|
+
const lengthOfTabList = this._stepListInner.nativeElement.scrollWidth;
|
|
6213
|
+
const viewLength = this._stepListContainer.nativeElement.offsetWidth;
|
|
6214
|
+
return lengthOfTabList - viewLength || 0;
|
|
6215
|
+
}
|
|
6216
|
+
_updateTabScrollPosition() {
|
|
6217
|
+
if (this.disablePagination) {
|
|
6218
|
+
return;
|
|
6219
|
+
}
|
|
6220
|
+
const scrollDistance = this.scrollDistance;
|
|
6221
|
+
const translateX = -scrollDistance;
|
|
6222
|
+
this._stepList.nativeElement.style.transform = `translateX(${Math.round(translateX)}px)`;
|
|
6223
|
+
this._stepListContainer.nativeElement.scrollLeft = 0;
|
|
6224
|
+
}
|
|
6225
|
+
updatePagination() {
|
|
6226
|
+
this._checkPaginationEnabled();
|
|
6227
|
+
this._checkScrollingControls();
|
|
6228
|
+
this._updateTabScrollPosition();
|
|
6229
|
+
}
|
|
6230
|
+
_checkPaginationEnabled() {
|
|
6231
|
+
if (this.disablePagination) {
|
|
6232
|
+
this._showPaginationControls = false;
|
|
6233
|
+
this.changeDetectorRef.markForCheck();
|
|
6234
|
+
}
|
|
6235
|
+
else {
|
|
6236
|
+
const scrollWidth = this._stepListInner.nativeElement.scrollWidth;
|
|
6237
|
+
const containerWidth = this._elementRef.nativeElement.offsetWidth;
|
|
6238
|
+
const isEnabled = scrollWidth - containerWidth >= 5;
|
|
6239
|
+
if (!isEnabled) {
|
|
6240
|
+
this.scrollDistance = 0;
|
|
6241
|
+
}
|
|
6242
|
+
if (isEnabled !== this._showPaginationControls) {
|
|
6243
|
+
this._showPaginationControls = isEnabled;
|
|
6244
|
+
this.changeDetectorRef.markForCheck();
|
|
6245
|
+
}
|
|
6246
|
+
}
|
|
7767
6247
|
}
|
|
7768
6248
|
/**
|
|
7769
6249
|
* After view init:
|
|
@@ -7774,9 +6254,7 @@ class MDStepper extends CdkStepper {
|
|
|
7774
6254
|
super.ngAfterViewInit();
|
|
7775
6255
|
if (typeof queueMicrotask === 'function') {
|
|
7776
6256
|
let hasEmittedInitial = false;
|
|
7777
|
-
this._animatedContainers.changes
|
|
7778
|
-
.pipe(startWith(null), takeUntil(this._destroyed))
|
|
7779
|
-
.subscribe(() => queueMicrotask(() => {
|
|
6257
|
+
this._animatedContainers.changes.pipe(startWith(null), takeUntil(this._destroyed)).subscribe(() => queueMicrotask(() => {
|
|
7780
6258
|
// Fire once after the very first render so consumers can react.
|
|
7781
6259
|
if (!hasEmittedInitial) {
|
|
7782
6260
|
hasEmittedInitial = true;
|
|
@@ -7785,11 +6263,16 @@ class MDStepper extends CdkStepper {
|
|
|
7785
6263
|
this._stateChanged();
|
|
7786
6264
|
}));
|
|
7787
6265
|
}
|
|
6266
|
+
this._eventCleanups.push(this._renderer.listen(this._previousPaginator.nativeElement, 'touchstart', () => this._handlePaginatorPress('before'), passiveEventListenerOptions$1), this._renderer.listen(this._nextPaginator.nativeElement, 'touchstart', () => this._handlePaginatorPress('after'), passiveEventListenerOptions$1));
|
|
7788
6267
|
}
|
|
7789
6268
|
/** Tear down transition listener on destroy. */
|
|
7790
6269
|
ngOnDestroy() {
|
|
7791
6270
|
super.ngOnDestroy();
|
|
7792
6271
|
this._cleanupTransition?.();
|
|
6272
|
+
this._eventCleanups.forEach((cleanup) => cleanup());
|
|
6273
|
+
this._destroyed.next();
|
|
6274
|
+
this._destroyed.complete();
|
|
6275
|
+
this._stopScrolling.complete();
|
|
7793
6276
|
}
|
|
7794
6277
|
/** Resolve the effective animation duration string applied to CSS. */
|
|
7795
6278
|
_getAnimationDuration() {
|
|
@@ -7822,7 +6305,7 @@ class MDStepper extends CdkStepper {
|
|
|
7822
6305
|
target.classList.contains('vertical-content-container-active');
|
|
7823
6306
|
// Ensure the event target is one of our tracked containers.
|
|
7824
6307
|
const shouldEmit = (isHorizontalActiveElement || isVerticalActiveElement) &&
|
|
7825
|
-
this._animatedContainers.find(ref => ref.nativeElement === target);
|
|
6308
|
+
this._animatedContainers.find((ref) => ref.nativeElement === target);
|
|
7826
6309
|
if (shouldEmit) {
|
|
7827
6310
|
this._onAnimationDone();
|
|
7828
6311
|
}
|
|
@@ -7833,7 +6316,7 @@ class MDStepper extends CdkStepper {
|
|
|
7833
6316
|
this.animationDone.emit();
|
|
7834
6317
|
}
|
|
7835
6318
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MDStepper, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7836
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.6", type: MDStepper, isStandalone: true, selector: "md-stepper, md-vertical-stepper, md-horizontal-stepper, [mdStepper]", inputs: { labelPosition: "labelPosition", headerPosition: "headerPosition", animationDuration: "animationDuration" }, outputs: { animationDone: "animationDone" }, host: { attributes: { "role": "tablist" }, properties: { "class.stepper-horizontal": "orientation === \"horizontal\"", "class.stepper-vertical": "orientation === \"vertical\"", "class.stepper-label-position-end": "orientation === \"horizontal\" && labelPosition == \"end\"", "class.stepper-label-position-bottom": "orientation === \"horizontal\" && labelPosition == \"bottom\"", "class.stepper-header-position-bottom": "headerPosition === \"bottom\"", "class.stepper-animating": "_isAnimating()", "style.stepper-animation-duration": "_getAnimationDuration()", "attr.aria-orientation": "orientation" } }, providers: [{ provide: CdkStepper, useExisting: MDStepper }], queries: [{ propertyName: "footer", first: true, predicate: MDStepFooter, descendants: true, read: TemplateRef }, { propertyName: "_steps", predicate: MDStep, descendants: true }, { propertyName: "_icons", predicate: MDStepperIcon, descendants: true }], viewQueries: [{ propertyName: "_stepHeader", predicate: MDStepHeader, descendants: true }, { propertyName: "_animatedContainers", predicate: ["animatedContainer"], descendants: true }], exportAs: ["mdStepper", "mdVerticalStepper", "mdHorizontalStepper"], usesInheritance: true, ngImport: i0, template: "@if (_isServer) {\r\n <ng-content/>\r\n}\r\n\r\n@switch (orientation) {\r\n @case ('horizontal') {\r\n <div class=\"horizontal-stepper-wrapper\">\r\n <div class=\"horizontal-stepper-header-container\">\r\n @for (step of steps; track step) {\r\n <ng-container\r\n [ngTemplateOutlet]=\"stepTemplate\"\r\n [ngTemplateOutletContext]=\"{step}\"/>\r\n @if (!$last) {\r\n <div class=\"stepper-horizontal-line\"></div>\r\n }\r\n }\r\n </div>\r\n\r\n <div class=\"horizontal-content-container\">\r\n @for (step of steps; track step) {\r\n <div\r\n #animatedContainer\r\n class=\"horizontal-stepper-content\"\r\n role=\"tabpanel\"\r\n [id]=\"_getStepContentId($index)\"\r\n [attr.aria-labelledby]=\"_getStepLabelId($index)\"\r\n [class]=\"'horizontal-stepper-content-' + _getAnimationDirection($index)\"\r\n [attr.inert]=\"selectedIndex === $index ? null : ''\">\r\n <ng-container [ngTemplateOutlet]=\"step.content\"/>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n }\r\n\r\n @case ('vertical') {\r\n @for (step of steps; track step) {\r\n <div class=\"step\">\r\n <ng-container\r\n [ngTemplateOutlet]=\"stepTemplate\"\r\n [ngTemplateOutletContext]=\"{step}\"/>\r\n <div\r\n #animatedContainer\r\n class=\"vertical-content-container\"\r\n [class.stepper-vertical-line]=\"!$last\"\r\n [class.vertical-content-container-active]=\"selectedIndex === $index\"\r\n [attr.inert]=\"selectedIndex === $index ? null : ''\">\r\n <div class=\"vertical-stepper-content\"\r\n role=\"tabpanel\"\r\n [id]=\"_getStepContentId($index)\"\r\n [attr.aria-labelledby]=\"_getStepLabelId($index)\">\r\n <div class=\"vertical-content\">\r\n <ng-container [ngTemplateOutlet]=\"step.content\"/>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n }\r\n}\r\n\r\n<ng-template let-step=\"step\" #stepTemplate>\r\n <md-step-header\r\n [class.horizontal-stepper-header]=\"orientation === 'horizontal'\"\r\n [class.vertical-stepper-header]=\"orientation === 'vertical'\"\r\n (click)=\"step.select()\"\r\n (keydown)=\"_onKeydown($event)\"\r\n [tabIndex]=\"_getFocusIndex() === step.index() ? 0 : -1\"\r\n [id]=\"_getStepLabelId(step.index())\"\r\n [attr.aria-posinset]=\"step.index() + 1\"\r\n [attr.aria-setsize]=\"steps.length\"\r\n [attr.aria-controls]=\"_getStepContentId(step.index())\"\r\n [attr.aria-selected]=\"step.isSelected()\"\r\n [attr.aria-label]=\"step.ariaLabel || null\"\r\n [attr.aria-labelledby]=\"(!step.ariaLabel && step.ariaLabelledby) ? step.ariaLabelledby : null\"\r\n [attr.aria-disabled]=\"step.isNavigable() ? null : true\"\r\n [index]=\"step.index()\"\r\n [state]=\"step.indicatorType()\"\r\n [label]=\"step.stepLabel || step.label\"\r\n [selected]=\"step.isSelected()\"\r\n [active]=\"step.isNavigable()\"\r\n [optional]=\"step.optional\"\r\n [errorMessage]=\"step.errorMessage\"\r\n [iconOverrides]=\"_iconOverrides\"\r\n [disableRipple]=\"disableRipple || !step.isNavigable()\"\r\n [color]=\"step.color || color\"/>\r\n</ng-template>\r\n\r\n\r\n<ng-container [ngTemplateOutlet]=\"footer\"></ng-container>", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.stepper-vertical,.stepper-horizontal{display:block;font-family:Montserrat;font-size:14px;color:#000}.horizontal-stepper-header-container{white-space:nowrap;display:flex;align-items:center;padding-bottom:40px}.stepper-label-position-bottom .horizontal-stepper-header-container{align-items:flex-start}.stepper-header-position-bottom .horizontal-stepper-header-container{order:1}.stepper-horizontal-line{border-top-width:1px;border-top-style:solid;flex:auto;height:0;margin:0 2px;min-width:32px;border-top-color:#889392}.stepper-label-position-bottom .stepper-horizontal-line{margin:0;min-width:0;position:relative;top:36px}.stepper-label-position-bottom .horizontal-stepper-header:not(:first-child):before,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:not(:last-child):before,.stepper-label-position-bottom .horizontal-stepper-header:not(:last-child):after,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:not(:first-child):after{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 11px)}.horizontal-stepper-header{display:flex;overflow:hidden;align-items:center;padding:0 6px;height:48px}.horizontal-stepper-header .step-icon{position:relative;margin-right:8px;flex:none}[dir=rtl] .horizontal-stepper-header .step-icon{margin-right:0;margin-left:8px}.horizontal-stepper-header.step-header-empty-label .step-icon{margin:0}.stepper-label-position-bottom .horizontal-stepper-header{padding:24px 6px}.stepper-label-position-bottom .horizontal-stepper-header:before,.stepper-label-position-bottom .horizontal-stepper-header:after{top:36px}.stepper-label-position-bottom .horizontal-stepper-header{box-sizing:border-box;flex-direction:column;height:auto}.stepper-label-position-bottom .horizontal-stepper-header:not(:last-child):after,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:not(:first-child):after{right:0}.stepper-label-position-bottom .horizontal-stepper-header:not(:first-child):before,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:not(:last-child):before{left:0}[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:last-child:before,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:first-child:after{display:none}.stepper-label-position-bottom .horizontal-stepper-header .step-icon{margin-right:0;margin-left:0}.stepper-label-position-bottom .horizontal-stepper-header .step-label{padding:16px 0 0;text-align:center;width:100%}.vertical-stepper-header{display:flex;align-items:center;height:24px;padding:24px 6px}.vertical-stepper-header .step-icon{margin-right:30px}[dir=rtl] .vertical-stepper-header .step-icon{margin-right:0;margin-left:30px}.horizontal-stepper-wrapper{display:flex;flex-direction:column}.horizontal-stepper-content{visibility:hidden;overflow:hidden;outline:0;height:0}.stepper-animations-enabled .horizontal-stepper-content{transition:transform .5s cubic-bezier(.35,0,.25,1)}.horizontal-stepper-content.horizontal-stepper-content-previous{transform:translate3d(-100%,0,0)}.horizontal-stepper-content.horizontal-stepper-content-next{transform:translate3d(100%,0,0)}.horizontal-stepper-content.horizontal-stepper-content-current{visibility:visible;transform:none;height:auto}.stepper-horizontal:not(.stepper-animating) .horizontal-stepper-content.horizontal-stepper-content-current{overflow:visible}.horizontal-content-container{overflow:hidden;background:#f3f3f3;padding:46px 6px 6px}@media (forced-colors: active){.horizontal-content-container{outline:solid 1px}}.stepper-header-position-bottom .horizontal-content-container{padding:6px 6px 0}.vertical-content-container{display:grid;grid-template-rows:0fr;grid-template-columns:100%;margin-left:36px;border:0;position:relative}.stepper-animations-enabled .vertical-content-container{transition:grid-template-rows .5s cubic-bezier(.4,0,.2,1)}.vertical-content-container.vertical-content-container-active{grid-template-rows:1fr}.step:last-child .vertical-content-container{border:none}@media (forced-colors: active){.vertical-content-container{outline:solid 1px}}[dir=rtl] .vertical-content-container{margin-left:0;margin-right:36px}@supports not (grid-template-rows: 0fr){.vertical-content-container{height:0}.vertical-content-container.vertical-content-container-active{height:auto}}.stepper-vertical-line:before{content:\"\";position:absolute;left:0;border-left-width:1px;border-left-style:solid;border-left-color:#889392;top:-16px;bottom:-16px}[dir=rtl] .stepper-vertical-line:before{left:auto;right:0}.vertical-stepper-content{overflow:hidden;outline:0;visibility:hidden}.stepper-animations-enabled .vertical-stepper-content{transition:visibility .5s linear}.vertical-content-container-active>.vertical-stepper-content{visibility:visible}.vertical-content{padding:0 6px 6px}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: MDStepHeader, selector: "md-step-header", inputs: ["state", "label", "errorMessage", "iconOverrides", "index", "selected", "active", "optional", "disableRipple"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
6319
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.6", type: MDStepper, isStandalone: true, selector: "md-stepper, md-vertical-stepper, md-horizontal-stepper, [mdStepper]", inputs: { labelPosition: "labelPosition", headerPosition: "headerPosition", animationDuration: "animationDuration", disablePagination: "disablePagination" }, outputs: { animationDone: "animationDone" }, host: { attributes: { "role": "tablist" }, properties: { "class.stepper-horizontal": "orientation === \"horizontal\"", "class.stepper-vertical": "orientation === \"vertical\"", "class.stepper-label-position-end": "orientation === \"horizontal\" && labelPosition == \"end\"", "class.stepper-label-position-bottom": "orientation === \"horizontal\" && labelPosition == \"bottom\"", "class.stepper-header-position-bottom": "headerPosition === \"bottom\"", "class.mdc-step-header-pagination-controls-enabled": "_showPaginationControls", "class.stepper-animating": "_isAnimating()", "style.stepper-animation-duration": "_getAnimationDuration()", "attr.aria-orientation": "orientation" } }, providers: [{ provide: CdkStepper, useExisting: MDStepper }], queries: [{ propertyName: "footer", first: true, predicate: MDStepFooter, descendants: true, read: TemplateRef }, { propertyName: "_steps", predicate: MDStep, descendants: true }, { propertyName: "_icons", predicate: MDStepperIcon, descendants: true }], viewQueries: [{ propertyName: "_stepHeaderElRef", first: true, predicate: ["stepHeader"], descendants: true }, { propertyName: "_stepListContainer", first: true, predicate: ["stepListContainer"], descendants: true }, { propertyName: "_stepList", first: true, predicate: ["stepList"], descendants: true }, { propertyName: "_stepListInner", first: true, predicate: ["stepListInner"], descendants: true }, { propertyName: "_nextPaginator", first: true, predicate: ["nextPaginator"], descendants: true }, { propertyName: "_previousPaginator", first: true, predicate: ["previousPaginator"], descendants: true }, { propertyName: "_stepHeader", predicate: MDStepHeader, descendants: true }, { propertyName: "_animatedContainers", predicate: ["animatedContainer"], descendants: true }], exportAs: ["mdStepper", "mdVerticalStepper", "mdHorizontalStepper"], usesInheritance: true, ngImport: i0, template: "@if (_isServer) {\r\n <ng-content/>\r\n}\r\n\r\n@switch (orientation) {\r\n @case ('horizontal') {\r\n <div class=\"horizontal-stepper-wrapper\">\r\n \r\n <div class=\"mdc-step-header\" #stepHeader>\r\n <div class=\"mdc-step-header-pagination mdc-step-header-pagination-before\"\r\n #previousPaginator\r\n [class.mdc-step-header-pagination-disabled]=\"_disableScrollBefore\"\r\n (click)=\"_handlePaginatorClick('before')\"\r\n (mousedown)=\"_handlePaginatorPress('before', $event)\"\r\n (touchend)=\"_stopInterval()\">\r\n <div class=\"mdc-step-header-pagination-chevron\"></div>\r\n </div>\r\n\r\n <div class=\"mdc-step-label-container\" #stepListContainer>\r\n <div class=\"mdc-step-list\" #stepList>\r\n <div class=\"horizontal-stepper-header-container\" #stepListInner>\r\n @for (step of steps; track step) {\r\n <ng-container\r\n [ngTemplateOutlet]=\"stepTemplate\"\r\n [ngTemplateOutletContext]=\"{step}\"/>\r\n @if (!$last) {\r\n <div class=\"stepper-horizontal-line\"></div>\r\n }\r\n }\r\n </div> \r\n </div>\r\n </div>\r\n\r\n <div class=\"mdc-step-header-pagination mdc-step-header-pagination-after\"\r\n #nextPaginator\r\n [class.mdc-step-header-pagination-disabled]=\"_disableScrollAfter\"\r\n (mousedown)=\"_handlePaginatorPress('after', $event)\"\r\n (click)=\"_handlePaginatorClick('after')\"\r\n (touchend)=\"_stopInterval()\">\r\n <div class=\"mdc-step-header-pagination-chevron\"></div>\r\n </div> \r\n </div>\r\n \r\n\r\n <div class=\"horizontal-content-container\">\r\n @for (step of steps; track step) {\r\n <div\r\n #animatedContainer\r\n class=\"horizontal-stepper-content\"\r\n role=\"tabpanel\"\r\n [id]=\"_getStepContentId($index)\"\r\n [attr.aria-labelledby]=\"_getStepLabelId($index)\"\r\n [class]=\"'horizontal-stepper-content-' + _getAnimationDirection($index)\"\r\n [attr.inert]=\"selectedIndex === $index ? null : ''\">\r\n <ng-container [ngTemplateOutlet]=\"step.content\"/>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n \r\n }\r\n\r\n @case ('vertical') {\r\n @for (step of steps; track step) {\r\n <div class=\"step\">\r\n <ng-container\r\n [ngTemplateOutlet]=\"stepTemplate\"\r\n [ngTemplateOutletContext]=\"{step}\"/>\r\n <div\r\n #animatedContainer\r\n class=\"vertical-content-container\"\r\n [class.stepper-vertical-line]=\"!$last\"\r\n [class.vertical-content-container-active]=\"selectedIndex === $index\"\r\n [attr.inert]=\"selectedIndex === $index ? null : ''\">\r\n <div class=\"vertical-stepper-content\"\r\n role=\"tabpanel\"\r\n [id]=\"_getStepContentId($index)\"\r\n [attr.aria-labelledby]=\"_getStepLabelId($index)\">\r\n <div class=\"vertical-content\">\r\n <ng-container [ngTemplateOutlet]=\"step.content\"/>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n }\r\n}\r\n\r\n<ng-template let-step=\"step\" #stepTemplate>\r\n <md-step-header\r\n [class.horizontal-stepper-header]=\"orientation === 'horizontal'\"\r\n [class.vertical-stepper-header]=\"orientation === 'vertical'\"\r\n (click)=\"step.select()\"\r\n (keydown)=\"_onKeydown($event)\"\r\n [tabIndex]=\"_getFocusIndex() === step.index() ? 0 : -1\"\r\n [id]=\"_getStepLabelId(step.index())\"\r\n [attr.aria-posinset]=\"step.index() + 1\"\r\n [attr.aria-setsize]=\"steps.length\"\r\n [attr.aria-controls]=\"_getStepContentId(step.index())\"\r\n [attr.aria-selected]=\"step.isSelected()\"\r\n [attr.aria-label]=\"step.ariaLabel || null\"\r\n [attr.aria-labelledby]=\"(!step.ariaLabel && step.ariaLabelledby) ? step.ariaLabelledby : null\"\r\n [attr.aria-disabled]=\"step.isNavigable() ? null : true\"\r\n [index]=\"step.index()\"\r\n [state]=\"step.indicatorType()\"\r\n [label]=\"step.stepLabel || step.label\"\r\n [selected]=\"step.isSelected()\"\r\n [active]=\"step.isNavigable()\"\r\n [optional]=\"step.optional\"\r\n [errorMessage]=\"step.errorMessage\"\r\n [iconOverrides]=\"_iconOverrides\"\r\n [disableRipple]=\"disableRipple || !step.isNavigable()\"\r\n [color]=\"step.color || color\"/>\r\n</ng-template>\r\n\r\n\r\n<ng-container [ngTemplateOutlet]=\"footer\"></ng-container>", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.stepper-vertical,.stepper-horizontal{display:block;font-family:Montserrat;font-size:14px;color:#000}.horizontal-stepper-header-container{white-space:nowrap;display:flex;align-items:center}.stepper-label-position-bottom .horizontal-stepper-header-container{align-items:flex-start}.stepper-header-position-bottom .horizontal-stepper-header-container{order:1}.stepper-horizontal-line{border-top-width:1px;border-top-style:solid;flex:auto;height:0;margin:0 -16px;min-width:32px;border-top-color:#889392}.stepper-label-position-bottom .stepper-horizontal-line{margin:0;min-width:0;position:relative;top:36px}.stepper-label-position-bottom .horizontal-stepper-header:not(:first-child):before,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:not(:last-child):before,.stepper-label-position-bottom .horizontal-stepper-header:not(:last-child):after,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:not(:first-child):after{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px)}.horizontal-stepper-header{display:flex;overflow:hidden;align-items:center;padding:0 24px;height:48px}.horizontal-stepper-header .step-icon{position:relative;margin-right:8px;flex:none}[dir=rtl] .horizontal-stepper-header .step-icon{margin-right:0;margin-left:8px}.horizontal-stepper-header.step-header-empty-label .step-icon{margin:0}.stepper-label-position-bottom .horizontal-stepper-header{padding:24px}.stepper-label-position-bottom .horizontal-stepper-header:before,.stepper-label-position-bottom .horizontal-stepper-header:after{top:36px}.stepper-label-position-bottom .horizontal-stepper-header{box-sizing:border-box;flex-direction:column;height:auto}.stepper-label-position-bottom .horizontal-stepper-header:not(:last-child):after,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:not(:first-child):after{right:0}.stepper-label-position-bottom .horizontal-stepper-header:not(:first-child):before,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:not(:last-child):before{left:0}[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:last-child:before,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:first-child:after{display:none}.stepper-label-position-bottom .horizontal-stepper-header .step-icon{margin-right:0;margin-left:0}.stepper-label-position-bottom .horizontal-stepper-header .step-label{padding:16px 0 0;text-align:center;width:100%}.vertical-stepper-header{display:flex;align-items:center;height:24px;padding:24px}.vertical-stepper-header .step-icon{margin-right:12px}[dir=rtl] .vertical-stepper-header .step-icon{margin-right:0;margin-left:12px}.horizontal-stepper-wrapper{display:flex;flex-direction:column}.horizontal-stepper-content{visibility:hidden;overflow:hidden;outline:0;height:0}.stepper-animations-enabled .horizontal-stepper-content{transition:transform .5s cubic-bezier(.35,0,.25,1)}.horizontal-stepper-content.horizontal-stepper-content-previous{transform:translate3d(-100%,0,0)}.horizontal-stepper-content.horizontal-stepper-content-next{transform:translate3d(100%,0,0)}.horizontal-stepper-content.horizontal-stepper-content-current{visibility:visible;transform:none;height:auto}.stepper-horizontal:not(.stepper-animating) .horizontal-stepper-content.horizontal-stepper-content-current{overflow:visible}.horizontal-content-container{overflow:hidden;background:#f3f3f3;padding:24px}@media (forced-colors: active){.horizontal-content-container{outline:solid 1px}}.stepper-header-position-bottom .horizontal-content-container{padding:24px 24px 0}.vertical-content-container{display:grid;grid-template-rows:0fr;grid-template-columns:100%;margin-left:36px;border:0;position:relative}.stepper-animations-enabled .vertical-content-container{transition:grid-template-rows .5s cubic-bezier(.4,0,.2,1)}.vertical-content-container.vertical-content-container-active{grid-template-rows:1fr}.step:last-child .vertical-content-container{border:none}@media (forced-colors: active){.vertical-content-container{outline:solid 1px}}[dir=rtl] .vertical-content-container{margin-left:0;margin-right:36px}@supports not (grid-template-rows: 0fr){.vertical-content-container{height:0}.vertical-content-container.vertical-content-container-active{height:auto}}.stepper-vertical-line:before{content:\"\";position:absolute;left:0;border-left-width:1px;border-left-style:solid;border-left-color:#889392;top:-16px;bottom:-16px}[dir=rtl] .stepper-vertical-line:before{left:auto;right:0}.vertical-stepper-content{overflow:hidden;outline:0;visibility:hidden}.stepper-animations-enabled .vertical-stepper-content{transition:visibility .5s linear}.vertical-content-container-active>.vertical-stepper-content{visibility:visible}.vertical-content{padding:0 24px 24px}.mdc-step-header-pagination-before,.mdc-step-header-rtl .mdc-step-header-pagination-after{padding-left:4px}.mdc-step-header-pagination-before .mdc-step-header-pagination-chevron,.mdc-step-header-rtl .mdc-step-header-pagination-after .mdc-step-header-pagination-chevron{transform:rotate(-135deg)}.mdc-step-header-rtl .mdc-step-header-pagination-before,.mdc-step-header-pagination-after{padding-right:4px}.mdc-step-header-rtl .mdc-step-header-pagination-before .mdc-step-header-pagination-chevron,.mdc-step-header-pagination-after .mdc-step-header-pagination-chevron{transform:rotate(45deg)}.mdc-step-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px;border-color:#201a1b}.mdc-step-header-pagination-disabled{box-shadow:none;cursor:default;pointer-events:none}.mdc-step-header-pagination-disabled .mdc-step-header-pagination-chevron{opacity:.4}.mdc-step-label-container{display:flex;flex-grow:1;overflow:hidden;z-index:1}.mdc-step-list{flex-grow:1;position:relative;transition:transform .5s cubic-bezier(.35,0,.25,1)}.animation-noopable .mdc-step-list{transition:none}.mdc-step-header{display:flex;overflow:hidden;position:relative;flex-shrink:0;padding-bottom:24px}.mdc-step-header-pagination{position:relative;display:none;justify-content:center;align-items:center;min-width:32px;cursor:pointer;z-index:2;-webkit-tap-highlight-color:transparent;touch-action:none;box-sizing:content-box;outline:0}.mdc-step-header-pagination::-moz-focus-inner{border:0}.mdc-step-header-pagination-controls-enabled .mdc-step-header-pagination{display:flex}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: MDStepHeader, selector: "md-step-header", inputs: ["state", "label", "errorMessage", "iconOverrides", "index", "selected", "active", "optional", "disableRipple"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
7837
6320
|
}
|
|
7838
6321
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MDStepper, decorators: [{
|
|
7839
6322
|
type: Component,
|
|
@@ -7844,13 +6327,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
7844
6327
|
'[class.stepper-label-position-end]': 'orientation === "horizontal" && labelPosition == "end"',
|
|
7845
6328
|
'[class.stepper-label-position-bottom]': 'orientation === "horizontal" && labelPosition == "bottom"',
|
|
7846
6329
|
'[class.stepper-header-position-bottom]': 'headerPosition === "bottom"',
|
|
6330
|
+
'[class.mdc-step-header-pagination-controls-enabled]': '_showPaginationControls',
|
|
7847
6331
|
// Animation state + duration CSS variable.
|
|
7848
6332
|
'[class.stepper-animating]': '_isAnimating()',
|
|
7849
6333
|
'[style.stepper-animation-duration]': '_getAnimationDuration()',
|
|
7850
6334
|
// ARIA role for a list of tabs.
|
|
7851
6335
|
'[attr.aria-orientation]': 'orientation',
|
|
7852
|
-
|
|
7853
|
-
}, providers: [{ provide: CdkStepper, useExisting: MDStepper }], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgTemplateOutlet, MDStepHeader], template: "@if (_isServer) {\r\n <ng-content/>\r\n}\r\n\r\n@switch (orientation) {\r\n @case ('horizontal') {\r\n <div class=\"horizontal-stepper-wrapper\">\r\n <div class=\"horizontal-stepper-header-container\">\r\n @for (step of steps; track step) {\r\n <ng-container\r\n [ngTemplateOutlet]=\"stepTemplate\"\r\n [ngTemplateOutletContext]=\"{step}\"/>\r\n @if (!$last) {\r\n <div class=\"stepper-horizontal-line\"></div>\r\n }\r\n }\r\n </div>\r\n\r\n <div class=\"horizontal-content-container\">\r\n @for (step of steps; track step) {\r\n <div\r\n #animatedContainer\r\n class=\"horizontal-stepper-content\"\r\n role=\"tabpanel\"\r\n [id]=\"_getStepContentId($index)\"\r\n [attr.aria-labelledby]=\"_getStepLabelId($index)\"\r\n [class]=\"'horizontal-stepper-content-' + _getAnimationDirection($index)\"\r\n [attr.inert]=\"selectedIndex === $index ? null : ''\">\r\n <ng-container [ngTemplateOutlet]=\"step.content\"/>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n }\r\n\r\n @case ('vertical') {\r\n @for (step of steps; track step) {\r\n <div class=\"step\">\r\n <ng-container\r\n [ngTemplateOutlet]=\"stepTemplate\"\r\n [ngTemplateOutletContext]=\"{step}\"/>\r\n <div\r\n #animatedContainer\r\n class=\"vertical-content-container\"\r\n [class.stepper-vertical-line]=\"!$last\"\r\n [class.vertical-content-container-active]=\"selectedIndex === $index\"\r\n [attr.inert]=\"selectedIndex === $index ? null : ''\">\r\n <div class=\"vertical-stepper-content\"\r\n role=\"tabpanel\"\r\n [id]=\"_getStepContentId($index)\"\r\n [attr.aria-labelledby]=\"_getStepLabelId($index)\">\r\n <div class=\"vertical-content\">\r\n <ng-container [ngTemplateOutlet]=\"step.content\"/>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n }\r\n}\r\n\r\n<ng-template let-step=\"step\" #stepTemplate>\r\n <md-step-header\r\n [class.horizontal-stepper-header]=\"orientation === 'horizontal'\"\r\n [class.vertical-stepper-header]=\"orientation === 'vertical'\"\r\n (click)=\"step.select()\"\r\n (keydown)=\"_onKeydown($event)\"\r\n [tabIndex]=\"_getFocusIndex() === step.index() ? 0 : -1\"\r\n [id]=\"_getStepLabelId(step.index())\"\r\n [attr.aria-posinset]=\"step.index() + 1\"\r\n [attr.aria-setsize]=\"steps.length\"\r\n [attr.aria-controls]=\"_getStepContentId(step.index())\"\r\n [attr.aria-selected]=\"step.isSelected()\"\r\n [attr.aria-label]=\"step.ariaLabel || null\"\r\n [attr.aria-labelledby]=\"(!step.ariaLabel && step.ariaLabelledby) ? step.ariaLabelledby : null\"\r\n [attr.aria-disabled]=\"step.isNavigable() ? null : true\"\r\n [index]=\"step.index()\"\r\n [state]=\"step.indicatorType()\"\r\n [label]=\"step.stepLabel || step.label\"\r\n [selected]=\"step.isSelected()\"\r\n [active]=\"step.isNavigable()\"\r\n [optional]=\"step.optional\"\r\n [errorMessage]=\"step.errorMessage\"\r\n [iconOverrides]=\"_iconOverrides\"\r\n [disableRipple]=\"disableRipple || !step.isNavigable()\"\r\n [color]=\"step.color || color\"/>\r\n</ng-template>\r\n\r\n\r\n<ng-container [ngTemplateOutlet]=\"footer\"></ng-container>", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.stepper-vertical,.stepper-horizontal{display:block;font-family:Montserrat;font-size:14px;color:#000}.horizontal-stepper-header-container{white-space:nowrap;display:flex;align-items:center;padding-bottom:40px}.stepper-label-position-bottom .horizontal-stepper-header-container{align-items:flex-start}.stepper-header-position-bottom .horizontal-stepper-header-container{order:1}.stepper-horizontal-line{border-top-width:1px;border-top-style:solid;flex:auto;height:0;margin:0 2px;min-width:32px;border-top-color:#889392}.stepper-label-position-bottom .stepper-horizontal-line{margin:0;min-width:0;position:relative;top:36px}.stepper-label-position-bottom .horizontal-stepper-header:not(:first-child):before,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:not(:last-child):before,.stepper-label-position-bottom .horizontal-stepper-header:not(:last-child):after,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:not(:first-child):after{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 11px)}.horizontal-stepper-header{display:flex;overflow:hidden;align-items:center;padding:0 6px;height:48px}.horizontal-stepper-header .step-icon{position:relative;margin-right:8px;flex:none}[dir=rtl] .horizontal-stepper-header .step-icon{margin-right:0;margin-left:8px}.horizontal-stepper-header.step-header-empty-label .step-icon{margin:0}.stepper-label-position-bottom .horizontal-stepper-header{padding:24px 6px}.stepper-label-position-bottom .horizontal-stepper-header:before,.stepper-label-position-bottom .horizontal-stepper-header:after{top:36px}.stepper-label-position-bottom .horizontal-stepper-header{box-sizing:border-box;flex-direction:column;height:auto}.stepper-label-position-bottom .horizontal-stepper-header:not(:last-child):after,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:not(:first-child):after{right:0}.stepper-label-position-bottom .horizontal-stepper-header:not(:first-child):before,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:not(:last-child):before{left:0}[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:last-child:before,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:first-child:after{display:none}.stepper-label-position-bottom .horizontal-stepper-header .step-icon{margin-right:0;margin-left:0}.stepper-label-position-bottom .horizontal-stepper-header .step-label{padding:16px 0 0;text-align:center;width:100%}.vertical-stepper-header{display:flex;align-items:center;height:24px;padding:24px 6px}.vertical-stepper-header .step-icon{margin-right:30px}[dir=rtl] .vertical-stepper-header .step-icon{margin-right:0;margin-left:30px}.horizontal-stepper-wrapper{display:flex;flex-direction:column}.horizontal-stepper-content{visibility:hidden;overflow:hidden;outline:0;height:0}.stepper-animations-enabled .horizontal-stepper-content{transition:transform .5s cubic-bezier(.35,0,.25,1)}.horizontal-stepper-content.horizontal-stepper-content-previous{transform:translate3d(-100%,0,0)}.horizontal-stepper-content.horizontal-stepper-content-next{transform:translate3d(100%,0,0)}.horizontal-stepper-content.horizontal-stepper-content-current{visibility:visible;transform:none;height:auto}.stepper-horizontal:not(.stepper-animating) .horizontal-stepper-content.horizontal-stepper-content-current{overflow:visible}.horizontal-content-container{overflow:hidden;background:#f3f3f3;padding:46px 6px 6px}@media (forced-colors: active){.horizontal-content-container{outline:solid 1px}}.stepper-header-position-bottom .horizontal-content-container{padding:6px 6px 0}.vertical-content-container{display:grid;grid-template-rows:0fr;grid-template-columns:100%;margin-left:36px;border:0;position:relative}.stepper-animations-enabled .vertical-content-container{transition:grid-template-rows .5s cubic-bezier(.4,0,.2,1)}.vertical-content-container.vertical-content-container-active{grid-template-rows:1fr}.step:last-child .vertical-content-container{border:none}@media (forced-colors: active){.vertical-content-container{outline:solid 1px}}[dir=rtl] .vertical-content-container{margin-left:0;margin-right:36px}@supports not (grid-template-rows: 0fr){.vertical-content-container{height:0}.vertical-content-container.vertical-content-container-active{height:auto}}.stepper-vertical-line:before{content:\"\";position:absolute;left:0;border-left-width:1px;border-left-style:solid;border-left-color:#889392;top:-16px;bottom:-16px}[dir=rtl] .stepper-vertical-line:before{left:auto;right:0}.vertical-stepper-content{overflow:hidden;outline:0;visibility:hidden}.stepper-animations-enabled .vertical-stepper-content{transition:visibility .5s linear}.vertical-content-container-active>.vertical-stepper-content{visibility:visible}.vertical-content{padding:0 6px 6px}\n"] }]
|
|
6336
|
+
role: 'tablist',
|
|
6337
|
+
}, providers: [{ provide: CdkStepper, useExisting: MDStepper }], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgTemplateOutlet, MDStepHeader], template: "@if (_isServer) {\r\n <ng-content/>\r\n}\r\n\r\n@switch (orientation) {\r\n @case ('horizontal') {\r\n <div class=\"horizontal-stepper-wrapper\">\r\n \r\n <div class=\"mdc-step-header\" #stepHeader>\r\n <div class=\"mdc-step-header-pagination mdc-step-header-pagination-before\"\r\n #previousPaginator\r\n [class.mdc-step-header-pagination-disabled]=\"_disableScrollBefore\"\r\n (click)=\"_handlePaginatorClick('before')\"\r\n (mousedown)=\"_handlePaginatorPress('before', $event)\"\r\n (touchend)=\"_stopInterval()\">\r\n <div class=\"mdc-step-header-pagination-chevron\"></div>\r\n </div>\r\n\r\n <div class=\"mdc-step-label-container\" #stepListContainer>\r\n <div class=\"mdc-step-list\" #stepList>\r\n <div class=\"horizontal-stepper-header-container\" #stepListInner>\r\n @for (step of steps; track step) {\r\n <ng-container\r\n [ngTemplateOutlet]=\"stepTemplate\"\r\n [ngTemplateOutletContext]=\"{step}\"/>\r\n @if (!$last) {\r\n <div class=\"stepper-horizontal-line\"></div>\r\n }\r\n }\r\n </div> \r\n </div>\r\n </div>\r\n\r\n <div class=\"mdc-step-header-pagination mdc-step-header-pagination-after\"\r\n #nextPaginator\r\n [class.mdc-step-header-pagination-disabled]=\"_disableScrollAfter\"\r\n (mousedown)=\"_handlePaginatorPress('after', $event)\"\r\n (click)=\"_handlePaginatorClick('after')\"\r\n (touchend)=\"_stopInterval()\">\r\n <div class=\"mdc-step-header-pagination-chevron\"></div>\r\n </div> \r\n </div>\r\n \r\n\r\n <div class=\"horizontal-content-container\">\r\n @for (step of steps; track step) {\r\n <div\r\n #animatedContainer\r\n class=\"horizontal-stepper-content\"\r\n role=\"tabpanel\"\r\n [id]=\"_getStepContentId($index)\"\r\n [attr.aria-labelledby]=\"_getStepLabelId($index)\"\r\n [class]=\"'horizontal-stepper-content-' + _getAnimationDirection($index)\"\r\n [attr.inert]=\"selectedIndex === $index ? null : ''\">\r\n <ng-container [ngTemplateOutlet]=\"step.content\"/>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n \r\n }\r\n\r\n @case ('vertical') {\r\n @for (step of steps; track step) {\r\n <div class=\"step\">\r\n <ng-container\r\n [ngTemplateOutlet]=\"stepTemplate\"\r\n [ngTemplateOutletContext]=\"{step}\"/>\r\n <div\r\n #animatedContainer\r\n class=\"vertical-content-container\"\r\n [class.stepper-vertical-line]=\"!$last\"\r\n [class.vertical-content-container-active]=\"selectedIndex === $index\"\r\n [attr.inert]=\"selectedIndex === $index ? null : ''\">\r\n <div class=\"vertical-stepper-content\"\r\n role=\"tabpanel\"\r\n [id]=\"_getStepContentId($index)\"\r\n [attr.aria-labelledby]=\"_getStepLabelId($index)\">\r\n <div class=\"vertical-content\">\r\n <ng-container [ngTemplateOutlet]=\"step.content\"/>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n }\r\n}\r\n\r\n<ng-template let-step=\"step\" #stepTemplate>\r\n <md-step-header\r\n [class.horizontal-stepper-header]=\"orientation === 'horizontal'\"\r\n [class.vertical-stepper-header]=\"orientation === 'vertical'\"\r\n (click)=\"step.select()\"\r\n (keydown)=\"_onKeydown($event)\"\r\n [tabIndex]=\"_getFocusIndex() === step.index() ? 0 : -1\"\r\n [id]=\"_getStepLabelId(step.index())\"\r\n [attr.aria-posinset]=\"step.index() + 1\"\r\n [attr.aria-setsize]=\"steps.length\"\r\n [attr.aria-controls]=\"_getStepContentId(step.index())\"\r\n [attr.aria-selected]=\"step.isSelected()\"\r\n [attr.aria-label]=\"step.ariaLabel || null\"\r\n [attr.aria-labelledby]=\"(!step.ariaLabel && step.ariaLabelledby) ? step.ariaLabelledby : null\"\r\n [attr.aria-disabled]=\"step.isNavigable() ? null : true\"\r\n [index]=\"step.index()\"\r\n [state]=\"step.indicatorType()\"\r\n [label]=\"step.stepLabel || step.label\"\r\n [selected]=\"step.isSelected()\"\r\n [active]=\"step.isNavigable()\"\r\n [optional]=\"step.optional\"\r\n [errorMessage]=\"step.errorMessage\"\r\n [iconOverrides]=\"_iconOverrides\"\r\n [disableRipple]=\"disableRipple || !step.isNavigable()\"\r\n [color]=\"step.color || color\"/>\r\n</ng-template>\r\n\r\n\r\n<ng-container [ngTemplateOutlet]=\"footer\"></ng-container>", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.stepper-vertical,.stepper-horizontal{display:block;font-family:Montserrat;font-size:14px;color:#000}.horizontal-stepper-header-container{white-space:nowrap;display:flex;align-items:center}.stepper-label-position-bottom .horizontal-stepper-header-container{align-items:flex-start}.stepper-header-position-bottom .horizontal-stepper-header-container{order:1}.stepper-horizontal-line{border-top-width:1px;border-top-style:solid;flex:auto;height:0;margin:0 -16px;min-width:32px;border-top-color:#889392}.stepper-label-position-bottom .stepper-horizontal-line{margin:0;min-width:0;position:relative;top:36px}.stepper-label-position-bottom .horizontal-stepper-header:not(:first-child):before,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:not(:last-child):before,.stepper-label-position-bottom .horizontal-stepper-header:not(:last-child):after,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:not(:first-child):after{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px)}.horizontal-stepper-header{display:flex;overflow:hidden;align-items:center;padding:0 24px;height:48px}.horizontal-stepper-header .step-icon{position:relative;margin-right:8px;flex:none}[dir=rtl] .horizontal-stepper-header .step-icon{margin-right:0;margin-left:8px}.horizontal-stepper-header.step-header-empty-label .step-icon{margin:0}.stepper-label-position-bottom .horizontal-stepper-header{padding:24px}.stepper-label-position-bottom .horizontal-stepper-header:before,.stepper-label-position-bottom .horizontal-stepper-header:after{top:36px}.stepper-label-position-bottom .horizontal-stepper-header{box-sizing:border-box;flex-direction:column;height:auto}.stepper-label-position-bottom .horizontal-stepper-header:not(:last-child):after,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:not(:first-child):after{right:0}.stepper-label-position-bottom .horizontal-stepper-header:not(:first-child):before,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:not(:last-child):before{left:0}[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:last-child:before,[dir=rtl] .stepper-label-position-bottom .horizontal-stepper-header:first-child:after{display:none}.stepper-label-position-bottom .horizontal-stepper-header .step-icon{margin-right:0;margin-left:0}.stepper-label-position-bottom .horizontal-stepper-header .step-label{padding:16px 0 0;text-align:center;width:100%}.vertical-stepper-header{display:flex;align-items:center;height:24px;padding:24px}.vertical-stepper-header .step-icon{margin-right:12px}[dir=rtl] .vertical-stepper-header .step-icon{margin-right:0;margin-left:12px}.horizontal-stepper-wrapper{display:flex;flex-direction:column}.horizontal-stepper-content{visibility:hidden;overflow:hidden;outline:0;height:0}.stepper-animations-enabled .horizontal-stepper-content{transition:transform .5s cubic-bezier(.35,0,.25,1)}.horizontal-stepper-content.horizontal-stepper-content-previous{transform:translate3d(-100%,0,0)}.horizontal-stepper-content.horizontal-stepper-content-next{transform:translate3d(100%,0,0)}.horizontal-stepper-content.horizontal-stepper-content-current{visibility:visible;transform:none;height:auto}.stepper-horizontal:not(.stepper-animating) .horizontal-stepper-content.horizontal-stepper-content-current{overflow:visible}.horizontal-content-container{overflow:hidden;background:#f3f3f3;padding:24px}@media (forced-colors: active){.horizontal-content-container{outline:solid 1px}}.stepper-header-position-bottom .horizontal-content-container{padding:24px 24px 0}.vertical-content-container{display:grid;grid-template-rows:0fr;grid-template-columns:100%;margin-left:36px;border:0;position:relative}.stepper-animations-enabled .vertical-content-container{transition:grid-template-rows .5s cubic-bezier(.4,0,.2,1)}.vertical-content-container.vertical-content-container-active{grid-template-rows:1fr}.step:last-child .vertical-content-container{border:none}@media (forced-colors: active){.vertical-content-container{outline:solid 1px}}[dir=rtl] .vertical-content-container{margin-left:0;margin-right:36px}@supports not (grid-template-rows: 0fr){.vertical-content-container{height:0}.vertical-content-container.vertical-content-container-active{height:auto}}.stepper-vertical-line:before{content:\"\";position:absolute;left:0;border-left-width:1px;border-left-style:solid;border-left-color:#889392;top:-16px;bottom:-16px}[dir=rtl] .stepper-vertical-line:before{left:auto;right:0}.vertical-stepper-content{overflow:hidden;outline:0;visibility:hidden}.stepper-animations-enabled .vertical-stepper-content{transition:visibility .5s linear}.vertical-content-container-active>.vertical-stepper-content{visibility:visible}.vertical-content{padding:0 24px 24px}.mdc-step-header-pagination-before,.mdc-step-header-rtl .mdc-step-header-pagination-after{padding-left:4px}.mdc-step-header-pagination-before .mdc-step-header-pagination-chevron,.mdc-step-header-rtl .mdc-step-header-pagination-after .mdc-step-header-pagination-chevron{transform:rotate(-135deg)}.mdc-step-header-rtl .mdc-step-header-pagination-before,.mdc-step-header-pagination-after{padding-right:4px}.mdc-step-header-rtl .mdc-step-header-pagination-before .mdc-step-header-pagination-chevron,.mdc-step-header-pagination-after .mdc-step-header-pagination-chevron{transform:rotate(45deg)}.mdc-step-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px;border-color:#201a1b}.mdc-step-header-pagination-disabled{box-shadow:none;cursor:default;pointer-events:none}.mdc-step-header-pagination-disabled .mdc-step-header-pagination-chevron{opacity:.4}.mdc-step-label-container{display:flex;flex-grow:1;overflow:hidden;z-index:1}.mdc-step-list{flex-grow:1;position:relative;transition:transform .5s cubic-bezier(.35,0,.25,1)}.animation-noopable .mdc-step-list{transition:none}.mdc-step-header{display:flex;overflow:hidden;position:relative;flex-shrink:0;padding-bottom:24px}.mdc-step-header-pagination{position:relative;display:none;justify-content:center;align-items:center;min-width:32px;cursor:pointer;z-index:2;-webkit-tap-highlight-color:transparent;touch-action:none;box-sizing:content-box;outline:0}.mdc-step-header-pagination::-moz-focus-inner{border:0}.mdc-step-header-pagination-controls-enabled .mdc-step-header-pagination{display:flex}\n"] }]
|
|
7854
6338
|
}], ctorParameters: () => [], propDecorators: { _stepHeader: [{
|
|
7855
6339
|
type: ViewChildren,
|
|
7856
6340
|
args: [MDStepHeader]
|
|
@@ -7874,6 +6358,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
7874
6358
|
type: Input
|
|
7875
6359
|
}], animationDuration: [{
|
|
7876
6360
|
type: Input
|
|
6361
|
+
}], disablePagination: [{
|
|
6362
|
+
type: Input
|
|
6363
|
+
}], _stepHeaderElRef: [{
|
|
6364
|
+
type: ViewChild,
|
|
6365
|
+
args: ['stepHeader']
|
|
6366
|
+
}], _stepListContainer: [{
|
|
6367
|
+
type: ViewChild,
|
|
6368
|
+
args: ['stepListContainer']
|
|
6369
|
+
}], _stepList: [{
|
|
6370
|
+
type: ViewChild,
|
|
6371
|
+
args: ['stepList']
|
|
6372
|
+
}], _stepListInner: [{
|
|
6373
|
+
type: ViewChild,
|
|
6374
|
+
args: ['stepListInner']
|
|
6375
|
+
}], _nextPaginator: [{
|
|
6376
|
+
type: ViewChild,
|
|
6377
|
+
args: ['nextPaginator']
|
|
6378
|
+
}], _previousPaginator: [{
|
|
6379
|
+
type: ViewChild,
|
|
6380
|
+
args: ['previousPaginator']
|
|
7877
6381
|
}] } });
|
|
7878
6382
|
|
|
7879
6383
|
/**
|
|
@@ -9493,7 +7997,6 @@ class PaginatedTabHeader {
|
|
|
9493
7997
|
const resize = this._sharedResizeObserver
|
|
9494
7998
|
.observe(this._elementRef.nativeElement)
|
|
9495
7999
|
.pipe(debounceTime(32), takeUntil(this._destroyed));
|
|
9496
|
-
const viewportResize = this._viewportRuler.change(150).pipe(takeUntil(this._destroyed));
|
|
9497
8000
|
const realign = () => {
|
|
9498
8001
|
this.updatePagination();
|
|
9499
8002
|
this._alignInkBarToSelectedTab();
|
|
@@ -9505,7 +8008,7 @@ class PaginatedTabHeader {
|
|
|
9505
8008
|
.skipPredicate(() => false);
|
|
9506
8009
|
this._keyManager.updateActiveItem(Math.max(this._selectedIndex, 0));
|
|
9507
8010
|
afterNextRender(realign, { injector: this._injector });
|
|
9508
|
-
merge(dirChange,
|
|
8011
|
+
merge(dirChange, resize, this._items.changes, this._itemsResized())
|
|
9509
8012
|
.pipe(takeUntil(this._destroyed))
|
|
9510
8013
|
.subscribe(() => {
|
|
9511
8014
|
this._ngZone.run(() => {
|
|
@@ -10929,7 +9432,7 @@ class MDTabGroup {
|
|
|
10929
9432
|
provide: TAB_GROUP,
|
|
10930
9433
|
useExisting: MDTabGroup,
|
|
10931
9434
|
},
|
|
10932
|
-
], queries: [{ propertyName: "_allTabs", predicate: MDTab, descendants: true }], viewQueries: [{ propertyName: "_tabBodyWrapper", first: true, predicate: ["tabBodyWrapper"], descendants: true }, { propertyName: "_tabHeader", first: true, predicate: ["tabHeader"], descendants: true }, { propertyName: "_tabBodies", predicate: MDTabBody, descendants: true }], exportAs: ["mdTabGroup"], ngImport: i0, template: "<md-tab-header\r\n #tabHeader\r\n [ngClass]=\"{\r\n 'tabs-legacy': isLegacyMode\r\n }\"\r\n [hideInkBar]=\"hideInkBar\"\r\n [selectedIndex]=\"selectedIndex || 0\"\r\n [disablePagination]=\"disablePagination\"\r\n [aria-label]=\"ariaLabel\"\r\n [aria-labelledby]=\"ariaLabelledby\"\r\n (indexFocused)=\"_focusChanged($event)\"\r\n (selectFocusedIndex)=\"selectedIndex = $event\"\r\n>\r\n @for (tab of _tabs; track tab) {\r\n <div\r\n class=\"focus-indicator\"\r\n [ngClass]=\"{\r\n 'mdc-tab': !isLegacyMode,\r\n 'mdc-tab-legacy': isLegacyMode\r\n }\"\r\n #tabNode\r\n role=\"tab\"\r\n mdTabLabelWrapper\r\n cdkMonitorElementFocus\r\n [id]=\"_getTabLabelId(tab, $index)\"\r\n [attr.tabIndex]=\"_getTabIndex($index)\"\r\n [attr.aria-posinset]=\"$index + 1\"\r\n [attr.aria-setsize]=\"_tabs.length\"\r\n [attr.aria-controls]=\"_getTabContentId($index)\"\r\n [attr.aria-selected]=\"selectedIndex === $index\"\r\n [attr.aria-label]=\"tab.ariaLabel || null\"\r\n [attr.aria-labelledby]=\"(!tab.ariaLabel && tab.ariaLabelledby) ? tab.ariaLabelledby : null\"\r\n [class.mdc-tab--active]=\"selectedIndex === $index\"\r\n [class]=\"tab.labelClass\"\r\n [disabled]=\"tab.disabled\"\r\n [fitInkBarToContent]=\"fitInkBarToContent\"\r\n (click)=\"_handleClick(tab, tabHeader, $index)\"\r\n (cdkFocusChange)=\"_tabFocusChanged($event, $index)\"\r\n >\r\n <span class=\"mdc-tab__ripple\"></span>\r\n <span class=\"mdc-tab__content\">\r\n <span class=\"mdc-tab__text-label\">\r\n @if (tab.templateLabel) {\r\n <ng-template [cdkPortalOutlet]=\"tab.templateLabel\"></ng-template>\r\n } @else {{{tab.textLabel}}}\r\n </span>\r\n </span>\r\n </div>\r\n }\r\n</md-tab-header>\r\n\r\n@if (_isServer) {\r\n<ng-content />\r\n}\r\n\r\n<div class=\"mdc-tab-body-wrapper\" #tabBodyWrapper>\r\n @for (tab of _tabs; track tab;) {\r\n <md-tab-body\r\n role=\"tabpanel\"\r\n [id]=\"_getTabContentId($index)\"\r\n [attr.tabindex]=\"(contentTabIndex != null && selectedIndex === $index) ? contentTabIndex : null\"\r\n [attr.aria-labelledby]=\"_getTabLabelId(tab, $index)\"\r\n [attr.aria-hidden]=\"selectedIndex !== $index\"\r\n [class]=\"tab.bodyClass\"\r\n [content]=\"tab.content!\"\r\n [position]=\"tab.position!\"\r\n [animationDuration]=\"animationDuration\"\r\n [preserveContent]=\"preserveContent\"\r\n (_onCentered)=\"_removeTabBodyWrapperHeight()\"\r\n (_onCentering)=\"_setTabBodyWrapperHeight($event)\"\r\n (_beforeCentering)=\"_bodyCentered($event)\"\r\n />\r\n }\r\n</div>\r\n", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.mdc-tab{min-width:90px;padding:0 12px;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;border:none;outline:none;text-align:center;white-space:nowrap;cursor:pointer;z-index:1;touch-action:manipulation}.mdc-tab__content{display:flex;align-items:center;justify-content:center;height:inherit;pointer-events:none}.mdc-tab__text-label{transition:.15s color linear;display:inline-block;line-height:1;z-index:2}.mdc-tab--active .mdc-tab__text-label{transition-delay:.1s}._animation-noopable .mdc-tab__text-label{transition:none}.mdc-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.mdc-tab-indicator__content{transition:.25s transform cubic-bezier(.4,0,.2,1);transform-origin:left;opacity:0}.mdc-tab-indicator__content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.mdc-tab-indicator--active .mdc-tab-indicator__content{opacity:1}._animation-noopable .mdc-tab-indicator__content,.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mdc-tab{-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none;background:none;height:40px;font-family:Montserrat;font-size:1rem;letter-spacing:.006rem;line-height:1.25rem;font-weight:500}.mdc-tab-group.mdc-tab-group-stretch-tabs>.mdc-tab-header .mdc-tab{flex-grow:1}.mdc-tab.mdc-tab{flex-grow:0}.mdc-tab .mdc-tab-indicator__content--underline{border-color:#6d5cae;border-top-width:2px;border-radius:0}.mdc-tab:hover .mdc-tab__text-label{color:#201a1b}.mdc-tab:focus .mdc-tab__text-label{color:#201a1b}.mdc-tab.mdc-tab--active .mdc-tab__text-label{color:#201a1b}.mdc-tab.mdc-tab--active .mdc-tab__ripple:before{background-color:#201a1b}.mdc-tab.mdc-tab--active:hover .mdc-tab__text-label{color:#201a1b}.mdc-tab.mdc-tab--active:hover .mdc-tab-indicator__content--underline{border-color:#6d5cae}.mdc-tab.mdc-tab--active:focus .mdc-tab__text-label{color:#201a1b}.mdc-tab.mdc-tab--active:focus .mdc-tab-indicator__content--underline{border-color:#6d5cae}.mdc-tab.mdc-tab-disabled{opacity:.4;pointer-events:none}.mdc-tab.mdc-tab-disabled .mdc-tab__content{pointer-events:none}.mdc-tab .mdc-tab__ripple:before{content:\"\";display:block;position:absolute;inset:0;opacity:0;pointer-events:none;background-color:#201a1b}.mdc-tab .mdc-tab__text-label{color:#201a1b;display:inline-flex;align-items:center}.mdc-tab .mdc-tab__content{position:relative;pointer-events:auto}.mdc-tab:hover .mdc-tab__ripple:before{opacity:.04}.mdc-tab.cdk-program-focused .mdc-tab__ripple:before,.mdc-tab.cdk-keyboard-focused .mdc-tab__ripple:before{opacity:.12}.mdc-tab-group{display:flex;flex-direction:column;max-width:100%}.mdc-tab-group.tabs-with-background>.mdc-tab-header .mdc-tab-header-pagination-chevron,.mdc-tab-group.tabs-with-background>.mdc-tab-header .focus-indicator:before,.mdc-tab-group.tabs-with-background>.mdc-tab-header-pagination .mdc-tab-header-pagination-chevron,.mdc-tab-group.tabs-with-background>.mdc-tab-header-pagination .focus-indicator:before{border-color:#201a1b}.mdc-tab-group.tabs-with-background>.mdc-tab-header .mdc-tab-header-pagination-chevron,.mdc-tab-group.tabs-with-background>.mdc-tab-header-pagination .mdc-tab-header-pagination-chevron{color:transparent}.mdc-tab-group.mdc-tab-group-inverted-header{flex-direction:column-reverse}.mdc-tab-group.mdc-tab-group-inverted-header .mdc-tab-indicator__content--underline{align-self:flex-start}.mdc-tab-body-wrapper{position:relative;overflow:hidden;display:flex}.focus-indicator{position:relative}.tabs-legacy .mdc-tab-labels{gap:2px}.tabs-legacy .mdc-tab-label-container{border:0px}.mdc-tab-legacy{-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none;height:36px;padding:0 14px;font-family:Lato;font-size:14px;letter-spacing:0px;line-height:22px;font-weight:400;background-color:#4d4d4d;border-top-left-radius:5px;border-top-right-radius:5px;cursor:pointer;max-width:90px}.mdc-tab-group.mdc-tab-group-stretch-tabs>.mdc-tab-header .mdc-tab-legacy{flex-grow:1}.mdc-tab-legacy.mdc-tab{flex-grow:0}.mdc-tab-legacy .mdc-tab-indicator__content--underline{border-color:#6d5cae;border-top-width:2px;border-radius:0}.mdc-tab-legacy:hover:not(.mdc-tab--active){background-color:#373737}.mdc-tab-legacy:focus .mdc-tab__text-label{color:#fff}.mdc-tab-legacy.mdc-tab--active{background-color:#eaeaea}.mdc-tab-legacy.mdc-tab--active .mdc-tab__text-label{color:#000}.mdc-tab-legacy.mdc-tab--active .mdc-tab__ripple:before{background-color:#fff}.mdc-tab-legacy.mdc-tab-disabled{pointer-events:none}.mdc-tab-legacy.mdc-tab-disabled .mdc-tab__text-label{color:#
|
|
9435
|
+
], queries: [{ propertyName: "_allTabs", predicate: MDTab, descendants: true }], viewQueries: [{ propertyName: "_tabBodyWrapper", first: true, predicate: ["tabBodyWrapper"], descendants: true }, { propertyName: "_tabHeader", first: true, predicate: ["tabHeader"], descendants: true }, { propertyName: "_tabBodies", predicate: MDTabBody, descendants: true }], exportAs: ["mdTabGroup"], ngImport: i0, template: "<md-tab-header\r\n #tabHeader\r\n [ngClass]=\"{\r\n 'tabs-legacy': isLegacyMode\r\n }\"\r\n [hideInkBar]=\"hideInkBar\"\r\n [selectedIndex]=\"selectedIndex || 0\"\r\n [disablePagination]=\"disablePagination\"\r\n [aria-label]=\"ariaLabel\"\r\n [aria-labelledby]=\"ariaLabelledby\"\r\n (indexFocused)=\"_focusChanged($event)\"\r\n (selectFocusedIndex)=\"selectedIndex = $event\"\r\n>\r\n @for (tab of _tabs; track tab) {\r\n <div\r\n class=\"focus-indicator\"\r\n [ngClass]=\"{\r\n 'mdc-tab': !isLegacyMode,\r\n 'mdc-tab-legacy': isLegacyMode\r\n }\"\r\n #tabNode\r\n role=\"tab\"\r\n mdTabLabelWrapper\r\n cdkMonitorElementFocus\r\n [id]=\"_getTabLabelId(tab, $index)\"\r\n [attr.tabIndex]=\"_getTabIndex($index)\"\r\n [attr.aria-posinset]=\"$index + 1\"\r\n [attr.aria-setsize]=\"_tabs.length\"\r\n [attr.aria-controls]=\"_getTabContentId($index)\"\r\n [attr.aria-selected]=\"selectedIndex === $index\"\r\n [attr.aria-label]=\"tab.ariaLabel || null\"\r\n [attr.aria-labelledby]=\"(!tab.ariaLabel && tab.ariaLabelledby) ? tab.ariaLabelledby : null\"\r\n [class.mdc-tab--active]=\"selectedIndex === $index\"\r\n [class]=\"tab.labelClass\"\r\n [disabled]=\"tab.disabled\"\r\n [fitInkBarToContent]=\"fitInkBarToContent\"\r\n (click)=\"_handleClick(tab, tabHeader, $index)\"\r\n (cdkFocusChange)=\"_tabFocusChanged($event, $index)\"\r\n >\r\n <span class=\"mdc-tab__ripple\"></span>\r\n <span class=\"mdc-tab__content\">\r\n <span class=\"mdc-tab__text-label\">\r\n @if (tab.templateLabel) {\r\n <ng-template [cdkPortalOutlet]=\"tab.templateLabel\"></ng-template>\r\n } @else {{{tab.textLabel}}}\r\n </span>\r\n </span>\r\n </div>\r\n }\r\n</md-tab-header>\r\n\r\n@if (_isServer) {\r\n<ng-content />\r\n}\r\n\r\n<div class=\"mdc-tab-body-wrapper\" #tabBodyWrapper>\r\n @for (tab of _tabs; track tab;) {\r\n <md-tab-body\r\n role=\"tabpanel\"\r\n [id]=\"_getTabContentId($index)\"\r\n [attr.tabindex]=\"(contentTabIndex != null && selectedIndex === $index) ? contentTabIndex : null\"\r\n [attr.aria-labelledby]=\"_getTabLabelId(tab, $index)\"\r\n [attr.aria-hidden]=\"selectedIndex !== $index\"\r\n [class]=\"tab.bodyClass\"\r\n [content]=\"tab.content!\"\r\n [position]=\"tab.position!\"\r\n [animationDuration]=\"animationDuration\"\r\n [preserveContent]=\"preserveContent\"\r\n (_onCentered)=\"_removeTabBodyWrapperHeight()\"\r\n (_onCentering)=\"_setTabBodyWrapperHeight($event)\"\r\n (_beforeCentering)=\"_bodyCentered($event)\"\r\n />\r\n }\r\n</div>\r\n", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.mdc-tab{min-width:90px;padding:0 12px;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;border:none;outline:none;text-align:center;white-space:nowrap;cursor:pointer;z-index:1;touch-action:manipulation}.mdc-tab__content{display:flex;align-items:center;justify-content:center;height:inherit;pointer-events:none}.mdc-tab__text-label{transition:.15s color linear;display:inline-block;line-height:1;z-index:2}.mdc-tab--active .mdc-tab__text-label{transition-delay:.1s}._animation-noopable .mdc-tab__text-label{transition:none}.mdc-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.mdc-tab-indicator__content{transition:.25s transform cubic-bezier(.4,0,.2,1);transform-origin:left;opacity:0}.mdc-tab-indicator__content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.mdc-tab-indicator--active .mdc-tab-indicator__content{opacity:1}._animation-noopable .mdc-tab-indicator__content,.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mdc-tab{-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none;background:none;height:40px;font-family:Montserrat;font-size:1rem;letter-spacing:.006rem;line-height:1.25rem;font-weight:500}.mdc-tab-group.mdc-tab-group-stretch-tabs>.mdc-tab-header .mdc-tab{flex-grow:1}.mdc-tab.mdc-tab{flex-grow:0}.mdc-tab .mdc-tab-indicator__content--underline{border-color:#6d5cae;border-top-width:2px;border-radius:0}.mdc-tab:hover .mdc-tab__text-label{color:#201a1b}.mdc-tab:focus .mdc-tab__text-label{color:#201a1b}.mdc-tab.mdc-tab--active .mdc-tab__text-label{color:#201a1b}.mdc-tab.mdc-tab--active .mdc-tab__ripple:before{background-color:#201a1b}.mdc-tab.mdc-tab--active:hover .mdc-tab__text-label{color:#201a1b}.mdc-tab.mdc-tab--active:hover .mdc-tab-indicator__content--underline{border-color:#6d5cae}.mdc-tab.mdc-tab--active:focus .mdc-tab__text-label{color:#201a1b}.mdc-tab.mdc-tab--active:focus .mdc-tab-indicator__content--underline{border-color:#6d5cae}.mdc-tab.mdc-tab-disabled{opacity:.4;pointer-events:none}.mdc-tab.mdc-tab-disabled .mdc-tab__content{pointer-events:none}.mdc-tab .mdc-tab__ripple:before{content:\"\";display:block;position:absolute;inset:0;opacity:0;pointer-events:none;background-color:#201a1b}.mdc-tab .mdc-tab__text-label{color:#201a1b;display:inline-flex;align-items:center}.mdc-tab .mdc-tab__content{position:relative;pointer-events:auto}.mdc-tab:hover .mdc-tab__ripple:before{opacity:.04}.mdc-tab.cdk-program-focused .mdc-tab__ripple:before,.mdc-tab.cdk-keyboard-focused .mdc-tab__ripple:before{opacity:.12}.mdc-tab-group{display:flex;flex-direction:column;max-width:100%}.mdc-tab-group.tabs-with-background>.mdc-tab-header .mdc-tab-header-pagination-chevron,.mdc-tab-group.tabs-with-background>.mdc-tab-header .focus-indicator:before,.mdc-tab-group.tabs-with-background>.mdc-tab-header-pagination .mdc-tab-header-pagination-chevron,.mdc-tab-group.tabs-with-background>.mdc-tab-header-pagination .focus-indicator:before{border-color:#201a1b}.mdc-tab-group.tabs-with-background>.mdc-tab-header .mdc-tab-header-pagination-chevron,.mdc-tab-group.tabs-with-background>.mdc-tab-header-pagination .mdc-tab-header-pagination-chevron{color:transparent}.mdc-tab-group.mdc-tab-group-inverted-header{flex-direction:column-reverse}.mdc-tab-group.mdc-tab-group-inverted-header .mdc-tab-indicator__content--underline{align-self:flex-start}.mdc-tab-body-wrapper{position:relative;overflow:hidden;display:flex}.focus-indicator{position:relative}.tabs-legacy .mdc-tab-labels{gap:2px}.tabs-legacy .mdc-tab-label-container{border:0px}.mdc-tab-legacy{-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none;height:36px;padding:0 14px;font-family:Lato;font-size:14px;letter-spacing:0px;line-height:22px;font-weight:400;background-color:#4d4d4d;border-top-left-radius:5px;border-top-right-radius:5px;cursor:pointer;max-width:90px}.mdc-tab-group.mdc-tab-group-stretch-tabs>.mdc-tab-header .mdc-tab-legacy{flex-grow:1}.mdc-tab-legacy.mdc-tab{flex-grow:0}.mdc-tab-legacy .mdc-tab-indicator__content--underline{border-color:#6d5cae;border-top-width:2px;border-radius:0}.mdc-tab-legacy:hover:not(.mdc-tab--active){background-color:#373737}.mdc-tab-legacy:focus .mdc-tab__text-label{color:#fff}.mdc-tab-legacy.mdc-tab--active{background-color:#eaeaea}.mdc-tab-legacy.mdc-tab--active .mdc-tab__text-label{color:#000}.mdc-tab-legacy.mdc-tab--active .mdc-tab__ripple:before{background-color:#fff}.mdc-tab-legacy.mdc-tab-disabled{pointer-events:none}.mdc-tab-legacy.mdc-tab-disabled .mdc-tab__text-label{color:#bdbdbd}.mdc-tab-legacy.mdc-tab-disabled .mdc-tab__content{pointer-events:none}.mdc-tab-legacy .mdc-tab__ripple:before{content:\"\";display:block;position:absolute;inset:0;opacity:0;pointer-events:none;background-color:#fff}.mdc-tab-legacy .mdc-tab__text-label{color:#fff;display:inline-flex;align-items:center;transition:none}.mdc-tab-legacy .mdc-tab__content{position:relative;pointer-events:auto}.mdc-tab-legacy:hover .mdc-tab__ripple:before{opacity:.04}.mdc-tab-legacy.cdk-program-focused .mdc-tab__ripple:before,.mdc-tab-legacy.cdk-keyboard-focused .mdc-tab__ripple:before{opacity:.12}\n"], dependencies: [{ kind: "component", type: MDTabHeader, selector: "md-tab-header", inputs: ["aria-label", "aria-labelledby"] }, { kind: "directive", type: MDTabLabelWrapper, selector: "[mdTabLabelWrapper]", inputs: ["disabled"] }, { kind: "directive", type: CdkMonitorFocus, selector: "[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]", outputs: ["cdkFocusChange"], exportAs: ["cdkMonitorFocus"] }, { kind: "directive", type: CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: MDTabBody, selector: "md-tab-body", inputs: ["content", "animationDuration", "preserveContent", "position"], outputs: ["_onCentering", "_beforeCentering", "_onCentered"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
|
|
10933
9436
|
}
|
|
10934
9437
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: MDTabGroup, decorators: [{
|
|
10935
9438
|
type: Component,
|
|
@@ -10946,7 +9449,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
10946
9449
|
'[class.mdc-tab-group-stretch-tabs]': 'stretchTabs',
|
|
10947
9450
|
'[attr.align-tabs]': 'alignTabs',
|
|
10948
9451
|
'[style.--tab-animation-duration]': 'animationDuration',
|
|
10949
|
-
}, imports: [MDTabHeader, MDTabLabelWrapper, CdkMonitorFocus, CdkPortalOutlet, MDTabBody, CommonModule], template: "<md-tab-header\r\n #tabHeader\r\n [ngClass]=\"{\r\n 'tabs-legacy': isLegacyMode\r\n }\"\r\n [hideInkBar]=\"hideInkBar\"\r\n [selectedIndex]=\"selectedIndex || 0\"\r\n [disablePagination]=\"disablePagination\"\r\n [aria-label]=\"ariaLabel\"\r\n [aria-labelledby]=\"ariaLabelledby\"\r\n (indexFocused)=\"_focusChanged($event)\"\r\n (selectFocusedIndex)=\"selectedIndex = $event\"\r\n>\r\n @for (tab of _tabs; track tab) {\r\n <div\r\n class=\"focus-indicator\"\r\n [ngClass]=\"{\r\n 'mdc-tab': !isLegacyMode,\r\n 'mdc-tab-legacy': isLegacyMode\r\n }\"\r\n #tabNode\r\n role=\"tab\"\r\n mdTabLabelWrapper\r\n cdkMonitorElementFocus\r\n [id]=\"_getTabLabelId(tab, $index)\"\r\n [attr.tabIndex]=\"_getTabIndex($index)\"\r\n [attr.aria-posinset]=\"$index + 1\"\r\n [attr.aria-setsize]=\"_tabs.length\"\r\n [attr.aria-controls]=\"_getTabContentId($index)\"\r\n [attr.aria-selected]=\"selectedIndex === $index\"\r\n [attr.aria-label]=\"tab.ariaLabel || null\"\r\n [attr.aria-labelledby]=\"(!tab.ariaLabel && tab.ariaLabelledby) ? tab.ariaLabelledby : null\"\r\n [class.mdc-tab--active]=\"selectedIndex === $index\"\r\n [class]=\"tab.labelClass\"\r\n [disabled]=\"tab.disabled\"\r\n [fitInkBarToContent]=\"fitInkBarToContent\"\r\n (click)=\"_handleClick(tab, tabHeader, $index)\"\r\n (cdkFocusChange)=\"_tabFocusChanged($event, $index)\"\r\n >\r\n <span class=\"mdc-tab__ripple\"></span>\r\n <span class=\"mdc-tab__content\">\r\n <span class=\"mdc-tab__text-label\">\r\n @if (tab.templateLabel) {\r\n <ng-template [cdkPortalOutlet]=\"tab.templateLabel\"></ng-template>\r\n } @else {{{tab.textLabel}}}\r\n </span>\r\n </span>\r\n </div>\r\n }\r\n</md-tab-header>\r\n\r\n@if (_isServer) {\r\n<ng-content />\r\n}\r\n\r\n<div class=\"mdc-tab-body-wrapper\" #tabBodyWrapper>\r\n @for (tab of _tabs; track tab;) {\r\n <md-tab-body\r\n role=\"tabpanel\"\r\n [id]=\"_getTabContentId($index)\"\r\n [attr.tabindex]=\"(contentTabIndex != null && selectedIndex === $index) ? contentTabIndex : null\"\r\n [attr.aria-labelledby]=\"_getTabLabelId(tab, $index)\"\r\n [attr.aria-hidden]=\"selectedIndex !== $index\"\r\n [class]=\"tab.bodyClass\"\r\n [content]=\"tab.content!\"\r\n [position]=\"tab.position!\"\r\n [animationDuration]=\"animationDuration\"\r\n [preserveContent]=\"preserveContent\"\r\n (_onCentered)=\"_removeTabBodyWrapperHeight()\"\r\n (_onCentering)=\"_setTabBodyWrapperHeight($event)\"\r\n (_beforeCentering)=\"_bodyCentered($event)\"\r\n />\r\n }\r\n</div>\r\n", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.mdc-tab{min-width:90px;padding:0 12px;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;border:none;outline:none;text-align:center;white-space:nowrap;cursor:pointer;z-index:1;touch-action:manipulation}.mdc-tab__content{display:flex;align-items:center;justify-content:center;height:inherit;pointer-events:none}.mdc-tab__text-label{transition:.15s color linear;display:inline-block;line-height:1;z-index:2}.mdc-tab--active .mdc-tab__text-label{transition-delay:.1s}._animation-noopable .mdc-tab__text-label{transition:none}.mdc-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.mdc-tab-indicator__content{transition:.25s transform cubic-bezier(.4,0,.2,1);transform-origin:left;opacity:0}.mdc-tab-indicator__content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.mdc-tab-indicator--active .mdc-tab-indicator__content{opacity:1}._animation-noopable .mdc-tab-indicator__content,.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mdc-tab{-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none;background:none;height:40px;font-family:Montserrat;font-size:1rem;letter-spacing:.006rem;line-height:1.25rem;font-weight:500}.mdc-tab-group.mdc-tab-group-stretch-tabs>.mdc-tab-header .mdc-tab{flex-grow:1}.mdc-tab.mdc-tab{flex-grow:0}.mdc-tab .mdc-tab-indicator__content--underline{border-color:#6d5cae;border-top-width:2px;border-radius:0}.mdc-tab:hover .mdc-tab__text-label{color:#201a1b}.mdc-tab:focus .mdc-tab__text-label{color:#201a1b}.mdc-tab.mdc-tab--active .mdc-tab__text-label{color:#201a1b}.mdc-tab.mdc-tab--active .mdc-tab__ripple:before{background-color:#201a1b}.mdc-tab.mdc-tab--active:hover .mdc-tab__text-label{color:#201a1b}.mdc-tab.mdc-tab--active:hover .mdc-tab-indicator__content--underline{border-color:#6d5cae}.mdc-tab.mdc-tab--active:focus .mdc-tab__text-label{color:#201a1b}.mdc-tab.mdc-tab--active:focus .mdc-tab-indicator__content--underline{border-color:#6d5cae}.mdc-tab.mdc-tab-disabled{opacity:.4;pointer-events:none}.mdc-tab.mdc-tab-disabled .mdc-tab__content{pointer-events:none}.mdc-tab .mdc-tab__ripple:before{content:\"\";display:block;position:absolute;inset:0;opacity:0;pointer-events:none;background-color:#201a1b}.mdc-tab .mdc-tab__text-label{color:#201a1b;display:inline-flex;align-items:center}.mdc-tab .mdc-tab__content{position:relative;pointer-events:auto}.mdc-tab:hover .mdc-tab__ripple:before{opacity:.04}.mdc-tab.cdk-program-focused .mdc-tab__ripple:before,.mdc-tab.cdk-keyboard-focused .mdc-tab__ripple:before{opacity:.12}.mdc-tab-group{display:flex;flex-direction:column;max-width:100%}.mdc-tab-group.tabs-with-background>.mdc-tab-header .mdc-tab-header-pagination-chevron,.mdc-tab-group.tabs-with-background>.mdc-tab-header .focus-indicator:before,.mdc-tab-group.tabs-with-background>.mdc-tab-header-pagination .mdc-tab-header-pagination-chevron,.mdc-tab-group.tabs-with-background>.mdc-tab-header-pagination .focus-indicator:before{border-color:#201a1b}.mdc-tab-group.tabs-with-background>.mdc-tab-header .mdc-tab-header-pagination-chevron,.mdc-tab-group.tabs-with-background>.mdc-tab-header-pagination .mdc-tab-header-pagination-chevron{color:transparent}.mdc-tab-group.mdc-tab-group-inverted-header{flex-direction:column-reverse}.mdc-tab-group.mdc-tab-group-inverted-header .mdc-tab-indicator__content--underline{align-self:flex-start}.mdc-tab-body-wrapper{position:relative;overflow:hidden;display:flex}.focus-indicator{position:relative}.tabs-legacy .mdc-tab-labels{gap:2px}.tabs-legacy .mdc-tab-label-container{border:0px}.mdc-tab-legacy{-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none;height:36px;padding:0 14px;font-family:Lato;font-size:14px;letter-spacing:0px;line-height:22px;font-weight:400;background-color:#4d4d4d;border-top-left-radius:5px;border-top-right-radius:5px;cursor:pointer;max-width:90px}.mdc-tab-group.mdc-tab-group-stretch-tabs>.mdc-tab-header .mdc-tab-legacy{flex-grow:1}.mdc-tab-legacy.mdc-tab{flex-grow:0}.mdc-tab-legacy .mdc-tab-indicator__content--underline{border-color:#6d5cae;border-top-width:2px;border-radius:0}.mdc-tab-legacy:hover:not(.mdc-tab--active){background-color:#373737}.mdc-tab-legacy:focus .mdc-tab__text-label{color:#fff}.mdc-tab-legacy.mdc-tab--active{background-color:#eaeaea}.mdc-tab-legacy.mdc-tab--active .mdc-tab__text-label{color:#000}.mdc-tab-legacy.mdc-tab--active .mdc-tab__ripple:before{background-color:#fff}.mdc-tab-legacy.mdc-tab-disabled{pointer-events:none}.mdc-tab-legacy.mdc-tab-disabled .mdc-tab__text-label{color:#
|
|
9452
|
+
}, imports: [MDTabHeader, MDTabLabelWrapper, CdkMonitorFocus, CdkPortalOutlet, MDTabBody, CommonModule], template: "<md-tab-header\r\n #tabHeader\r\n [ngClass]=\"{\r\n 'tabs-legacy': isLegacyMode\r\n }\"\r\n [hideInkBar]=\"hideInkBar\"\r\n [selectedIndex]=\"selectedIndex || 0\"\r\n [disablePagination]=\"disablePagination\"\r\n [aria-label]=\"ariaLabel\"\r\n [aria-labelledby]=\"ariaLabelledby\"\r\n (indexFocused)=\"_focusChanged($event)\"\r\n (selectFocusedIndex)=\"selectedIndex = $event\"\r\n>\r\n @for (tab of _tabs; track tab) {\r\n <div\r\n class=\"focus-indicator\"\r\n [ngClass]=\"{\r\n 'mdc-tab': !isLegacyMode,\r\n 'mdc-tab-legacy': isLegacyMode\r\n }\"\r\n #tabNode\r\n role=\"tab\"\r\n mdTabLabelWrapper\r\n cdkMonitorElementFocus\r\n [id]=\"_getTabLabelId(tab, $index)\"\r\n [attr.tabIndex]=\"_getTabIndex($index)\"\r\n [attr.aria-posinset]=\"$index + 1\"\r\n [attr.aria-setsize]=\"_tabs.length\"\r\n [attr.aria-controls]=\"_getTabContentId($index)\"\r\n [attr.aria-selected]=\"selectedIndex === $index\"\r\n [attr.aria-label]=\"tab.ariaLabel || null\"\r\n [attr.aria-labelledby]=\"(!tab.ariaLabel && tab.ariaLabelledby) ? tab.ariaLabelledby : null\"\r\n [class.mdc-tab--active]=\"selectedIndex === $index\"\r\n [class]=\"tab.labelClass\"\r\n [disabled]=\"tab.disabled\"\r\n [fitInkBarToContent]=\"fitInkBarToContent\"\r\n (click)=\"_handleClick(tab, tabHeader, $index)\"\r\n (cdkFocusChange)=\"_tabFocusChanged($event, $index)\"\r\n >\r\n <span class=\"mdc-tab__ripple\"></span>\r\n <span class=\"mdc-tab__content\">\r\n <span class=\"mdc-tab__text-label\">\r\n @if (tab.templateLabel) {\r\n <ng-template [cdkPortalOutlet]=\"tab.templateLabel\"></ng-template>\r\n } @else {{{tab.textLabel}}}\r\n </span>\r\n </span>\r\n </div>\r\n }\r\n</md-tab-header>\r\n\r\n@if (_isServer) {\r\n<ng-content />\r\n}\r\n\r\n<div class=\"mdc-tab-body-wrapper\" #tabBodyWrapper>\r\n @for (tab of _tabs; track tab;) {\r\n <md-tab-body\r\n role=\"tabpanel\"\r\n [id]=\"_getTabContentId($index)\"\r\n [attr.tabindex]=\"(contentTabIndex != null && selectedIndex === $index) ? contentTabIndex : null\"\r\n [attr.aria-labelledby]=\"_getTabLabelId(tab, $index)\"\r\n [attr.aria-hidden]=\"selectedIndex !== $index\"\r\n [class]=\"tab.bodyClass\"\r\n [content]=\"tab.content!\"\r\n [position]=\"tab.position!\"\r\n [animationDuration]=\"animationDuration\"\r\n [preserveContent]=\"preserveContent\"\r\n (_onCentered)=\"_removeTabBodyWrapperHeight()\"\r\n (_onCentering)=\"_setTabBodyWrapperHeight($event)\"\r\n (_beforeCentering)=\"_bodyCentered($event)\"\r\n />\r\n }\r\n</div>\r\n", styles: ["div.jqxInGridLink{cursor:pointer;color:#00f;margin:2px;text-decoration:underline}div.jqxInGridLink :hover{color:#8a2be2}.pink-text{color:pink!important}.red-text{color:red!important}.turquoise-text{color:#03a796!important}.blue-text{color:#00f!important}.mdc-tab{min-width:90px;padding:0 12px;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;border:none;outline:none;text-align:center;white-space:nowrap;cursor:pointer;z-index:1;touch-action:manipulation}.mdc-tab__content{display:flex;align-items:center;justify-content:center;height:inherit;pointer-events:none}.mdc-tab__text-label{transition:.15s color linear;display:inline-block;line-height:1;z-index:2}.mdc-tab--active .mdc-tab__text-label{transition-delay:.1s}._animation-noopable .mdc-tab__text-label{transition:none}.mdc-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.mdc-tab-indicator__content{transition:.25s transform cubic-bezier(.4,0,.2,1);transform-origin:left;opacity:0}.mdc-tab-indicator__content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.mdc-tab-indicator--active .mdc-tab-indicator__content{opacity:1}._animation-noopable .mdc-tab-indicator__content,.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mdc-tab{-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none;background:none;height:40px;font-family:Montserrat;font-size:1rem;letter-spacing:.006rem;line-height:1.25rem;font-weight:500}.mdc-tab-group.mdc-tab-group-stretch-tabs>.mdc-tab-header .mdc-tab{flex-grow:1}.mdc-tab.mdc-tab{flex-grow:0}.mdc-tab .mdc-tab-indicator__content--underline{border-color:#6d5cae;border-top-width:2px;border-radius:0}.mdc-tab:hover .mdc-tab__text-label{color:#201a1b}.mdc-tab:focus .mdc-tab__text-label{color:#201a1b}.mdc-tab.mdc-tab--active .mdc-tab__text-label{color:#201a1b}.mdc-tab.mdc-tab--active .mdc-tab__ripple:before{background-color:#201a1b}.mdc-tab.mdc-tab--active:hover .mdc-tab__text-label{color:#201a1b}.mdc-tab.mdc-tab--active:hover .mdc-tab-indicator__content--underline{border-color:#6d5cae}.mdc-tab.mdc-tab--active:focus .mdc-tab__text-label{color:#201a1b}.mdc-tab.mdc-tab--active:focus .mdc-tab-indicator__content--underline{border-color:#6d5cae}.mdc-tab.mdc-tab-disabled{opacity:.4;pointer-events:none}.mdc-tab.mdc-tab-disabled .mdc-tab__content{pointer-events:none}.mdc-tab .mdc-tab__ripple:before{content:\"\";display:block;position:absolute;inset:0;opacity:0;pointer-events:none;background-color:#201a1b}.mdc-tab .mdc-tab__text-label{color:#201a1b;display:inline-flex;align-items:center}.mdc-tab .mdc-tab__content{position:relative;pointer-events:auto}.mdc-tab:hover .mdc-tab__ripple:before{opacity:.04}.mdc-tab.cdk-program-focused .mdc-tab__ripple:before,.mdc-tab.cdk-keyboard-focused .mdc-tab__ripple:before{opacity:.12}.mdc-tab-group{display:flex;flex-direction:column;max-width:100%}.mdc-tab-group.tabs-with-background>.mdc-tab-header .mdc-tab-header-pagination-chevron,.mdc-tab-group.tabs-with-background>.mdc-tab-header .focus-indicator:before,.mdc-tab-group.tabs-with-background>.mdc-tab-header-pagination .mdc-tab-header-pagination-chevron,.mdc-tab-group.tabs-with-background>.mdc-tab-header-pagination .focus-indicator:before{border-color:#201a1b}.mdc-tab-group.tabs-with-background>.mdc-tab-header .mdc-tab-header-pagination-chevron,.mdc-tab-group.tabs-with-background>.mdc-tab-header-pagination .mdc-tab-header-pagination-chevron{color:transparent}.mdc-tab-group.mdc-tab-group-inverted-header{flex-direction:column-reverse}.mdc-tab-group.mdc-tab-group-inverted-header .mdc-tab-indicator__content--underline{align-self:flex-start}.mdc-tab-body-wrapper{position:relative;overflow:hidden;display:flex}.focus-indicator{position:relative}.tabs-legacy .mdc-tab-labels{gap:2px}.tabs-legacy .mdc-tab-label-container{border:0px}.mdc-tab-legacy{-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none;height:36px;padding:0 14px;font-family:Lato;font-size:14px;letter-spacing:0px;line-height:22px;font-weight:400;background-color:#4d4d4d;border-top-left-radius:5px;border-top-right-radius:5px;cursor:pointer;max-width:90px}.mdc-tab-group.mdc-tab-group-stretch-tabs>.mdc-tab-header .mdc-tab-legacy{flex-grow:1}.mdc-tab-legacy.mdc-tab{flex-grow:0}.mdc-tab-legacy .mdc-tab-indicator__content--underline{border-color:#6d5cae;border-top-width:2px;border-radius:0}.mdc-tab-legacy:hover:not(.mdc-tab--active){background-color:#373737}.mdc-tab-legacy:focus .mdc-tab__text-label{color:#fff}.mdc-tab-legacy.mdc-tab--active{background-color:#eaeaea}.mdc-tab-legacy.mdc-tab--active .mdc-tab__text-label{color:#000}.mdc-tab-legacy.mdc-tab--active .mdc-tab__ripple:before{background-color:#fff}.mdc-tab-legacy.mdc-tab-disabled{pointer-events:none}.mdc-tab-legacy.mdc-tab-disabled .mdc-tab__text-label{color:#bdbdbd}.mdc-tab-legacy.mdc-tab-disabled .mdc-tab__content{pointer-events:none}.mdc-tab-legacy .mdc-tab__ripple:before{content:\"\";display:block;position:absolute;inset:0;opacity:0;pointer-events:none;background-color:#fff}.mdc-tab-legacy .mdc-tab__text-label{color:#fff;display:inline-flex;align-items:center;transition:none}.mdc-tab-legacy .mdc-tab__content{position:relative;pointer-events:auto}.mdc-tab-legacy:hover .mdc-tab__ripple:before{opacity:.04}.mdc-tab-legacy.cdk-program-focused .mdc-tab__ripple:before,.mdc-tab-legacy.cdk-keyboard-focused .mdc-tab__ripple:before{opacity:.12}\n"] }]
|
|
10950
9453
|
}], ctorParameters: () => [], propDecorators: { _allTabs: [{
|
|
10951
9454
|
type: ContentChildren,
|
|
10952
9455
|
args: [MDTab, { descendants: true }]
|
|
@@ -11034,5 +9537,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
11034
9537
|
* Generated bundle index. Do not edit.
|
|
11035
9538
|
*/
|
|
11036
9539
|
|
|
11037
|
-
export { ACCORDION, Accordion, CARD_CONFIG,
|
|
9540
|
+
export { ACCORDION, Accordion, CARD_CONFIG, CardSimpleComponent, CentralPageComponent, CentralPageRowComponent, CollapseComponent, CollapseSetComponent, DIALOG_DATA, DIALOG_DEFAULT_OPTIONS, DIALOG_SCROLL_STRATEGY, DialogState, EXPANSION_PANEL_DEFAULT_OPTIONS, ErrorStateMatcher, ExpansionPanelActionRow, ExpansionPanelDescription, ExpansionPanelTitle, FillComponent, FilteredFieldContainerComponent, FilteredFieldItemComponent, FilteredFieldService, FiltredItemModel, INK_BAR_POSITIONER, INK_BAR_POSITIONER_FACTORY, InkBar, MDCard, MDCardActions, MDCardAvatar, MDCardContent, MDCardFooter, MDCardHeader, MDCardImage, MDCardLgImage, MDCardMdImage, MDCardModule, MDCardSmImage, MDCardSubtitle, MDCardTitle, MDCardTitleGroup, MDCardXlImage, MDCollapseModule, MDDialog, MDDialogActions, MDDialogClose, MDDialogContainer, MDDialogContent, MDDialogTitle, MDExpansionPanel, MDExpansionPanelContent, MDExpansionPanelHeader, MDModalModule, MDOption, MDOptionGroup, MDOptionSelectionChange, MDSelect, MDSelectModule, MDSelectTrigger, MDStep, MDStepContent, MDStepExecutorModule, MDStepFooter, MDStepHeader, MDStepLabel, MDStepper, MDStepperIcon, MDStepperNext, MDStepperPrevious, MDSwitch, MDSwitchModule, MDTab, MDTabBody, MDTabChangeEvent, MDTabContent, MDTabGroup, MDTabHeader, MDTabLabel, MDTabLabelWrapper, MDTabsModule, MD_EXPANSION_PANEL, MD_SELECT_TRIGGER, MD_TAB, MD_TAB_LABEL, ManagePageComponent, MefDevCardModule, MefDevCollapseModule, MefDevDialogConfig, MefDevDialogRef, MefDevDropDownMenuModule, MefDevFilteredFieldModule, MefDevModalModule, MefDevOptionComponent, MefDevPageLayoutsModule, MefDevProgressComponent, MefDevProgressModule, MefDevSelectComponent, MefDevSelectModule, MefDevStepExecutorModule, MefDevSwitchComponent, MefDevSwitchModule, MefDevTabBodyComponent, MefDevTabComponent, MefDevTabLabelDirective, MefDevTabSetComponent, MefDevTabsInkBarDirective, MefDevTabsModule, MefDevTabsNavComponent, MefdevDropdownMenuComponent, MefdevExecutorPageComponent, OptionPipe, PaginatedTabHeader, ProgressConfig, PseudoCheckbox, RightFilterComponent, STEPPER_INTL_PROVIDER, STEPPER_INTL_PROVIDER_FACTORY, SelectChange, ShowOnDirtyErrorStateMatcher, SlideRightComponent, SlideUpComponent, StageComponent, StepExecutorComponent, StepperIntl, TABS_CONFIG, TAB_CONTENT, TAB_GROUP, TabBodyPortal, TabChangeEvent, TablePageComponent, _closeDialogVia, _countGroupLabelsBeforeOption, _getOptionScrollPosition, components, mefDevCardComponents, mefDevCollapseModuleComponents };
|
|
11038
9541
|
//# sourceMappingURL=natec-mef-dev-ui-kit.mjs.map
|