@clr/angular 13.9.0 → 13.9.1
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/accordion/accordion-panel.d.ts +2 -2
- package/accordion/stepper/stepper-panel.d.ts +2 -2
- package/button/button-group/button-group.d.ts +2 -2
- package/clarity.api.md +49 -44
- package/data/datagrid/datagrid-action-overflow.d.ts +2 -2
- package/data/datagrid/datagrid-column-separator.d.ts +1 -1
- package/data/datagrid/datagrid-column-toggle.d.ts +2 -6
- package/data/datagrid/datagrid-filter.d.ts +2 -2
- package/data/datagrid/datagrid.d.ts +1 -1
- package/data/datagrid/providers/selection.d.ts +1 -3
- package/data/stack-view/stack-block.d.ts +3 -3
- package/data/stack-view/stack-content-input.d.ts +0 -1
- package/data/stack-view/stack-view-custom-tags.d.ts +0 -2
- package/data/tree-view/tree-node.d.ts +3 -3
- package/esm2020/accordion/accordion-panel.mjs +9 -12
- package/esm2020/accordion/stepper/stepper-panel.mjs +7 -11
- package/esm2020/button/button-group/button-group.mjs +7 -12
- package/esm2020/button/button-group/button.mjs +1 -1
- package/esm2020/button/button-loading/loading-button.mjs +1 -1
- package/esm2020/data/datagrid/built-in/comparators/datagrid-property-comparator.mjs +1 -1
- package/esm2020/data/datagrid/built-in/filters/datagrid-numeric-filter-impl.mjs +1 -1
- package/esm2020/data/datagrid/built-in/filters/datagrid-numeric-filter.mjs +1 -1
- package/esm2020/data/datagrid/built-in/filters/datagrid-string-filter-impl.mjs +1 -1
- package/esm2020/data/datagrid/built-in/filters/datagrid-string-filter.mjs +1 -1
- package/esm2020/data/datagrid/built-in/nested-property.mjs +1 -1
- package/esm2020/data/datagrid/datagrid-action-overflow.mjs +8 -11
- package/esm2020/data/datagrid/datagrid-cell.mjs +1 -1
- package/esm2020/data/datagrid/datagrid-column-separator.mjs +6 -10
- package/esm2020/data/datagrid/datagrid-column-toggle.mjs +9 -22
- package/esm2020/data/datagrid/datagrid-column.mjs +1 -1
- package/esm2020/data/datagrid/datagrid-detail.mjs +1 -1
- package/esm2020/data/datagrid/datagrid-filter.mjs +7 -10
- package/esm2020/data/datagrid/datagrid-footer.mjs +1 -1
- package/esm2020/data/datagrid/datagrid-hideable-column.mjs +1 -1
- package/esm2020/data/datagrid/datagrid-if-detail.mjs +1 -1
- package/esm2020/data/datagrid/datagrid-items.mjs +1 -1
- package/esm2020/data/datagrid/datagrid-pagination.mjs +1 -1
- package/esm2020/data/datagrid/datagrid-placeholder.mjs +1 -1
- package/esm2020/data/datagrid/datagrid-row-detail.mjs +1 -1
- package/esm2020/data/datagrid/datagrid-row.mjs +1 -1
- package/esm2020/data/datagrid/datagrid.mjs +5 -9
- package/esm2020/data/datagrid/providers/column-resizer.service.mjs +1 -1
- package/esm2020/data/datagrid/providers/detail.service.mjs +1 -1
- package/esm2020/data/datagrid/providers/display-mode.service.mjs +1 -1
- package/esm2020/data/datagrid/providers/filters.mjs +1 -1
- package/esm2020/data/datagrid/providers/global-expandable-rows.mjs +1 -1
- package/esm2020/data/datagrid/providers/items.mjs +1 -1
- package/esm2020/data/datagrid/providers/page.mjs +1 -1
- package/esm2020/data/datagrid/providers/row-action-service.mjs +1 -1
- package/esm2020/data/datagrid/providers/selection.mjs +4 -5
- package/esm2020/data/datagrid/providers/sort.mjs +1 -1
- package/esm2020/data/datagrid/providers/state-debouncer.provider.mjs +1 -1
- package/esm2020/data/datagrid/providers/table-size.service.mjs +1 -1
- package/esm2020/data/datagrid/render/header-renderer.mjs +1 -1
- package/esm2020/data/datagrid/render/main-renderer.mjs +1 -1
- package/esm2020/data/datagrid/render/render-organizer.mjs +1 -1
- package/esm2020/data/datagrid/render/row-renderer.mjs +1 -1
- package/esm2020/data/datagrid/utils/datagrid-filter-registrar.mjs +1 -1
- package/esm2020/data/stack-view/stack-block.mjs +7 -11
- package/esm2020/data/stack-view/stack-content-input.mjs +7 -10
- package/esm2020/data/stack-view/stack-view-custom-tags.mjs +8 -13
- package/esm2020/data/tree-view/tree-focus-manager.service.mjs +1 -1
- package/esm2020/data/tree-view/tree-node.mjs +7 -20
- package/esm2020/emphasis/alert/alerts.mjs +1 -1
- package/esm2020/emphasis/alert/providers/icon-and-types.service.mjs +1 -1
- package/esm2020/emphasis/alert/providers/multi-alert.service.mjs +1 -1
- package/esm2020/forms/checkbox/checkbox-container.mjs +1 -1
- package/esm2020/forms/combobox/combobox.mjs +19 -20
- package/esm2020/forms/combobox/option-items.directive.mjs +1 -1
- package/esm2020/forms/combobox/option.mjs +8 -13
- package/esm2020/forms/combobox/options.mjs +10 -19
- package/esm2020/forms/combobox/providers/combobox-focus-handler.service.mjs +4 -9
- package/esm2020/forms/combobox/providers/option-selection.service.mjs +1 -1
- package/esm2020/forms/common/abstract-control.mjs +1 -1
- package/esm2020/forms/common/providers/container-id.service.mjs +1 -1
- package/esm2020/forms/common/providers/control-id.service.mjs +1 -1
- package/esm2020/forms/common/wrapped-control.mjs +1 -8
- package/esm2020/forms/datalist/providers/datalist-id.service.mjs +1 -1
- package/esm2020/forms/datepicker/date-container.mjs +1 -1
- package/esm2020/forms/datepicker/date-input.mjs +1 -1
- package/esm2020/forms/datepicker/date-input.validator.mjs +40 -0
- package/esm2020/forms/datepicker/datepicker.module.mjs +5 -1
- package/esm2020/forms/datepicker/day.mjs +1 -1
- package/esm2020/forms/datepicker/index.mjs +2 -1
- package/esm2020/forms/datepicker/model/calendar.model.mjs +1 -1
- package/esm2020/forms/datepicker/model/day.model.mjs +1 -1
- package/esm2020/forms/datepicker/providers/date-form-control.service.mjs +1 -1
- package/esm2020/forms/datepicker/providers/date-io.service.mjs +1 -1
- package/esm2020/forms/datepicker/providers/date-navigation.service.mjs +1 -1
- package/esm2020/forms/datepicker/yearpicker.mjs +1 -10
- package/esm2020/forms/radio/radio-container.mjs +1 -1
- package/esm2020/layout/nav/aria-current-link.mjs +1 -1
- package/esm2020/layout/nav/providers/responsive-navigation.service.mjs +1 -1
- package/esm2020/layout/nav/responsive-nav-codes.mjs +1 -1
- package/esm2020/layout/tabs/tab-content.mjs +6 -14
- package/esm2020/layout/tabs/tab-link.directive.mjs +6 -14
- package/esm2020/layout/tabs/tab.mjs +3 -4
- package/esm2020/layout/vertical-nav/providers/vertical-nav-group-registration.service.mjs +1 -1
- package/esm2020/modal/modal.mjs +9 -12
- package/esm2020/popover/common/abstract-popover.mjs +1 -1
- package/esm2020/popover/common/popover.mjs +1 -1
- package/esm2020/popover/dropdown/dropdown-item.mjs +1 -1
- package/esm2020/popover/dropdown/dropdown-trigger.mjs +1 -1
- package/esm2020/popover/dropdown/providers/dropdown-focus-handler.service.mjs +6 -9
- package/esm2020/popover/signpost/signpost-content.mjs +8 -12
- package/esm2020/popover/signpost/signpost-trigger.mjs +1 -1
- package/esm2020/popover/signpost/signpost.mjs +1 -1
- package/esm2020/popover/tooltip/tooltip-content.mjs +5 -9
- package/esm2020/popover/tooltip/tooltip-trigger.mjs +1 -1
- package/esm2020/popover/tooltip/tooltip.mjs +3 -18
- package/esm2020/timeline/providers/timeline-icon-attribute.service.mjs +1 -1
- package/esm2020/timeline/timeline-step.mjs +1 -1
- package/esm2020/utils/a11y/aria-live.service.mjs +1 -1
- package/esm2020/utils/chocolate/willy-wonka.mjs +1 -1
- package/esm2020/utils/conditional/if-active.directive.mjs +1 -1
- package/esm2020/utils/conditional/if-active.service.mjs +1 -1
- package/esm2020/utils/conditional/if-expanded.service.mjs +1 -1
- package/esm2020/utils/conditional/if-open.directive.mjs +1 -1
- package/esm2020/utils/drag-and-drop/drag-event.mjs +1 -1
- package/esm2020/utils/drag-and-drop/draggable/draggable.mjs +1 -1
- package/esm2020/utils/drag-and-drop/providers/drag-event-listener.service.mjs +1 -1
- package/esm2020/utils/drag-and-drop/providers/drag-handle-registrar.service.mjs +1 -1
- package/esm2020/utils/drag-and-drop/providers/draggable-snapshot.service.mjs +1 -1
- package/esm2020/utils/focus/focus.service.mjs +1 -1
- package/esm2020/utils/focus/focusable-item/basic-focusable-item.service.mjs +7 -11
- package/esm2020/utils/focus/focusable-item/custom-focusable-item-provider.mjs +1 -3
- package/esm2020/utils/focus-trap/focus-trap.directive.mjs +1 -1
- package/esm2020/utils/id-generator/id-generator.service.mjs +1 -7
- package/esm2020/utils/loading/loading.mjs +1 -1
- package/esm2020/utils/popover/popover-content.mjs +1 -1
- package/esm2020/utils/popover/providers/popover-events.service.mjs +1 -1
- package/esm2020/utils/popover/providers/popover-position.service.mjs +1 -1
- package/esm2020/utils/popover/providers/popover-toggle.service.mjs +1 -1
- package/esm2020/wizard/providers/button-hub.service.mjs +1 -1
- package/esm2020/wizard/providers/header-actions.service.mjs +1 -1
- package/esm2020/wizard/providers/page-collection.service.mjs +1 -1
- package/esm2020/wizard/providers/wizard-navigation.service.mjs +1 -1
- package/esm2020/wizard/wizard-button.mjs +1 -1
- package/esm2020/wizard/wizard-header-action.mjs +1 -1
- package/esm2020/wizard/wizard-page.mjs +1 -1
- package/esm2020/wizard/wizard-stepnav-item.mjs +1 -1
- package/esm2020/wizard/wizard.mjs +8 -23
- package/fesm2015/clr-angular.mjs +414 -561
- package/fesm2015/clr-angular.mjs.map +1 -1
- package/fesm2020/clr-angular.mjs +421 -560
- package/fesm2020/clr-angular.mjs.map +1 -1
- package/forms/combobox/combobox.d.ts +4 -5
- package/forms/combobox/option.d.ts +1 -2
- package/forms/combobox/options.d.ts +3 -6
- package/forms/combobox/providers/combobox-focus-handler.service.d.ts +2 -6
- package/forms/datepicker/date-input.validator.d.ts +10 -0
- package/forms/datepicker/datepicker.module.d.ts +14 -13
- package/forms/datepicker/index.d.ts +1 -0
- package/forms/datepicker/yearpicker.d.ts +0 -2
- package/layout/tabs/tab-content.d.ts +2 -5
- package/layout/tabs/tab-link.directive.d.ts +2 -5
- package/modal/modal.d.ts +1 -1
- package/package.json +1 -1
- package/popover/dropdown/providers/dropdown-focus-handler.service.d.ts +4 -7
- package/popover/signpost/signpost-content.d.ts +3 -3
- package/popover/tooltip/tooltip-content.d.ts +2 -3
- package/utils/focus/focusable-item/basic-focusable-item.service.d.ts +4 -7
- package/utils/focus/focusable-item/custom-focusable-item-provider.d.ts +1 -4
- package/utils/id-generator/id-generator.service.d.ts +0 -6
- package/wizard/wizard.d.ts +2 -2
- package/esm2020/utils/aria/aria.service.mjs +0 -16
- package/utils/aria/aria.service.d.ts +0 -8
package/fesm2020/clr-angular.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Directive, NgModule, Optional, Input, Injectable,
|
|
2
|
+
import { Directive, NgModule, Optional, Input, Injectable, Component, ChangeDetectionStrategy, EventEmitter, Output, ContentChildren, PLATFORM_ID, Inject, ViewChild, HostBinding, HostListener, SkipSelf, ContentChild, ComponentFactoryResolver, ElementRef, Self, InjectionToken, Attribute, Renderer2, LOCALE_ID, ViewContainerRef, NgZone, ChangeDetectorRef, TemplateRef } from '@angular/core';
|
|
3
3
|
import * as i5 from '@angular/common';
|
|
4
4
|
import { CommonModule, isPlatformBrowser, DOCUMENT, NgForOf, getLocaleDayNames, FormStyle, TranslationWidth, getLocaleMonthNames, getLocaleFirstDayOfWeek, getLocaleDateFormat, FormatWidth } from '@angular/common';
|
|
5
5
|
import { ClarityIcons, angleIcon, exclamationCircleIcon, checkCircleIcon, ellipsisHorizontalIcon, windowCloseIcon, eventIcon, calendarIcon, eyeHideIcon, eyeIcon, ellipsisVerticalIcon, viewColumnsIcon, arrowIcon, timesIcon, stepForward2Icon, angleDoubleIcon, filterGridCircleIcon, filterGridIcon, infoCircleIcon, exclamationTriangleIcon, circleIcon, dotCircleIcon, errorStandardIcon, successStandardIcon } from '@cds/core/icon';
|
|
@@ -8,7 +8,7 @@ import * as i3 from 'rxjs';
|
|
|
8
8
|
import { Subject, BehaviorSubject, Observable, fromEvent, isObservable, of, ReplaySubject, combineLatest } from 'rxjs';
|
|
9
9
|
import { trigger, transition, style, animate, keyframes, state } from '@angular/animations';
|
|
10
10
|
import * as i1 from '@angular/forms';
|
|
11
|
-
import { FormControl, FormGroup, FormsModule, SelectMultipleControlValueAccessor } from '@angular/forms';
|
|
11
|
+
import { FormControl, FormGroup, FormsModule, NG_VALIDATORS, SelectMultipleControlValueAccessor } from '@angular/forms';
|
|
12
12
|
import * as i1$1 from '@angular/router';
|
|
13
13
|
import { FocusTrapTrackerService, createId, isFocusable, isHTMLElement } from '@cds/core/internal';
|
|
14
14
|
import '@cds/core/internal-components/close-button/register.js';
|
|
@@ -186,14 +186,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
186
186
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
187
187
|
*/
|
|
188
188
|
let NB_INSTANCES = 0;
|
|
189
|
-
const UNIQUE_ID = new InjectionToken('UNIQUE_ID');
|
|
190
189
|
function uniqueIdFactory() {
|
|
191
190
|
return 'clr-id-' + NB_INSTANCES++;
|
|
192
191
|
}
|
|
193
|
-
const UNIQUE_ID_PROVIDER = {
|
|
194
|
-
provide: UNIQUE_ID,
|
|
195
|
-
useFactory: uniqueIdFactory,
|
|
196
|
-
};
|
|
197
192
|
|
|
198
193
|
/*
|
|
199
194
|
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
@@ -533,16 +528,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
533
528
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
534
529
|
*/
|
|
535
530
|
class ClrAccordionPanel {
|
|
536
|
-
constructor(commonStrings, accordionService, ifExpandService
|
|
531
|
+
constructor(commonStrings, accordionService, ifExpandService) {
|
|
537
532
|
this.commonStrings = commonStrings;
|
|
538
533
|
this.accordionService = accordionService;
|
|
539
534
|
this.ifExpandService = ifExpandService;
|
|
540
|
-
this._id = _id;
|
|
541
535
|
this.disabled = false;
|
|
542
536
|
this.panelOpen = false;
|
|
543
537
|
this.panelOpenChange = new EventEmitter();
|
|
544
538
|
this.AccordionStatus = AccordionStatus;
|
|
545
539
|
this.isAccordion = true;
|
|
540
|
+
this._id = uniqueIdFactory();
|
|
546
541
|
}
|
|
547
542
|
get id() {
|
|
548
543
|
return this._id;
|
|
@@ -600,15 +595,12 @@ class ClrAccordionPanel {
|
|
|
600
595
|
}
|
|
601
596
|
}
|
|
602
597
|
}
|
|
603
|
-
ClrAccordionPanel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrAccordionPanel, deps: [{ token: ClrCommonStringsService }, { token: AccordionService }, { token: IfExpandService }
|
|
604
|
-
ClrAccordionPanel.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrAccordionPanel, selector: "clr-accordion-panel", inputs: { disabled: ["clrAccordionPanelDisabled", "disabled"], panelOpen: ["clrAccordionPanelOpen", "panelOpen"] }, outputs: { panelOpenChange: "clrAccordionPanelOpenChange" }, host: { properties: { "class.clr-accordion-panel": "true" } }, providers: [IfExpandService
|
|
598
|
+
ClrAccordionPanel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrAccordionPanel, deps: [{ token: ClrCommonStringsService }, { token: AccordionService }, { token: IfExpandService }], target: i0.ɵɵFactoryTarget.Component });
|
|
599
|
+
ClrAccordionPanel.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrAccordionPanel, selector: "clr-accordion-panel", inputs: { disabled: ["clrAccordionPanelDisabled", "disabled"], panelOpen: ["clrAccordionPanelOpen", "panelOpen"] }, outputs: { panelOpenChange: "clrAccordionPanelOpenChange" }, host: { properties: { "class.clr-accordion-panel": "true" } }, providers: [IfExpandService], queries: [{ propertyName: "accordionDescription", predicate: ClrAccordionDescription }], usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"panel | async; let panel\">\n <div *ngIf=\"panel.status !== AccordionStatus.Inactive\" aria-live=\"assertive\" class=\"clr-sr-only\">\n <ng-container *ngIf=\"panel.status === AccordionStatus.Error\">{{commonStrings.keys.danger}}</ng-container>\n </div>\n\n <div [ngClass]=\"getPanelStateClasses(panel)\">\n <div class=\"clr-accordion-header\">\n <button\n type=\"button\"\n class=\"clr-accordion-header-button\"\n (click)=\"togglePanel()\"\n [id]=\"getAccordionHeaderId(panel.templateId)\"\n [disabled]=\"isAccordion && panel.disabled\"\n [attr.aria-disabled]=\"!isAccordion && panel.disabled\"\n [attr.aria-controls]=\"getAccordionContentId(panel.templateId)\"\n [attr.aria-expanded]=\"panel.open\"\n [class.clr-accordion-header-has-description]=\"(accordionDescription.changes | async)?.length || accordionDescription.length\"\n #headerButton\n >\n <span class=\"clr-sr-only\">\n <ng-container *ngIf=\"panel.status === AccordionStatus.Error\">{{commonStrings.keys.danger}}</ng-container>\n <ng-container *ngIf=\"panel.status === AccordionStatus.Complete\">{{commonStrings.keys.success}}</ng-container>\n </span>\n <span class=\"clr-accordion-status\">\n <cds-icon shape=\"angle\" direction=\"right\" class=\"clr-accordion-angle\"></cds-icon>\n <span class=\"clr-accordion-number\"></span>\n <cds-icon status=\"danger\" shape=\"exclamation-circle\" class=\"clr-accordion-error-icon\"></cds-icon>\n <cds-icon status=\"success\" shape=\"check-circle\" class=\"clr-accordion-complete-icon\"></cds-icon>\n </span>\n <ng-content select=\"clr-accordion-title, clr-step-title\"></ng-content>\n <ng-content select=\"clr-accordion-description, clr-step-description\"></ng-content>\n </button>\n </div>\n <div\n @skipInitialRender\n role=\"region\"\n [id]=\"getAccordionContentId(panel.templateId)\"\n [attr.aria-hidden]=\"!panel.open\"\n [attr.aria-labelledby]=\"getAccordionHeaderId(panel.templateId)\"\n >\n <div\n *ngIf=\"panel.open\"\n @toggle\n (@toggle.done)=\"collapsePanelOnAnimationDone(panel)\"\n class=\"clr-accordion-content\"\n >\n <div class=\"clr-accordion-inner-content\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n </div>\n</ng-container>\n", directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: CdsIconCustomTag, selector: "cds-icon" }], pipes: { "async": i5.AsyncPipe }, animations: panelAnimation, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
605
600
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrAccordionPanel, decorators: [{
|
|
606
601
|
type: Component,
|
|
607
|
-
args: [{ selector: 'clr-accordion-panel', host: { '[class.clr-accordion-panel]': 'true' }, changeDetection: ChangeDetectionStrategy.OnPush, animations: panelAnimation, providers: [IfExpandService
|
|
608
|
-
}], ctorParameters: function () { return [{ type: ClrCommonStringsService }, { type: AccordionService }, { type: IfExpandService },
|
|
609
|
-
type: Inject,
|
|
610
|
-
args: [UNIQUE_ID]
|
|
611
|
-
}] }]; }, propDecorators: { disabled: [{
|
|
602
|
+
args: [{ selector: 'clr-accordion-panel', host: { '[class.clr-accordion-panel]': 'true' }, changeDetection: ChangeDetectionStrategy.OnPush, animations: panelAnimation, providers: [IfExpandService], template: "<ng-container *ngIf=\"panel | async; let panel\">\n <div *ngIf=\"panel.status !== AccordionStatus.Inactive\" aria-live=\"assertive\" class=\"clr-sr-only\">\n <ng-container *ngIf=\"panel.status === AccordionStatus.Error\">{{commonStrings.keys.danger}}</ng-container>\n </div>\n\n <div [ngClass]=\"getPanelStateClasses(panel)\">\n <div class=\"clr-accordion-header\">\n <button\n type=\"button\"\n class=\"clr-accordion-header-button\"\n (click)=\"togglePanel()\"\n [id]=\"getAccordionHeaderId(panel.templateId)\"\n [disabled]=\"isAccordion && panel.disabled\"\n [attr.aria-disabled]=\"!isAccordion && panel.disabled\"\n [attr.aria-controls]=\"getAccordionContentId(panel.templateId)\"\n [attr.aria-expanded]=\"panel.open\"\n [class.clr-accordion-header-has-description]=\"(accordionDescription.changes | async)?.length || accordionDescription.length\"\n #headerButton\n >\n <span class=\"clr-sr-only\">\n <ng-container *ngIf=\"panel.status === AccordionStatus.Error\">{{commonStrings.keys.danger}}</ng-container>\n <ng-container *ngIf=\"panel.status === AccordionStatus.Complete\">{{commonStrings.keys.success}}</ng-container>\n </span>\n <span class=\"clr-accordion-status\">\n <cds-icon shape=\"angle\" direction=\"right\" class=\"clr-accordion-angle\"></cds-icon>\n <span class=\"clr-accordion-number\"></span>\n <cds-icon status=\"danger\" shape=\"exclamation-circle\" class=\"clr-accordion-error-icon\"></cds-icon>\n <cds-icon status=\"success\" shape=\"check-circle\" class=\"clr-accordion-complete-icon\"></cds-icon>\n </span>\n <ng-content select=\"clr-accordion-title, clr-step-title\"></ng-content>\n <ng-content select=\"clr-accordion-description, clr-step-description\"></ng-content>\n </button>\n </div>\n <div\n @skipInitialRender\n role=\"region\"\n [id]=\"getAccordionContentId(panel.templateId)\"\n [attr.aria-hidden]=\"!panel.open\"\n [attr.aria-labelledby]=\"getAccordionHeaderId(panel.templateId)\"\n >\n <div\n *ngIf=\"panel.open\"\n @toggle\n (@toggle.done)=\"collapsePanelOnAnimationDone(panel)\"\n class=\"clr-accordion-content\"\n >\n <div class=\"clr-accordion-inner-content\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n </div>\n</ng-container>\n" }]
|
|
603
|
+
}], ctorParameters: function () { return [{ type: ClrCommonStringsService }, { type: AccordionService }, { type: IfExpandService }]; }, propDecorators: { disabled: [{
|
|
612
604
|
type: Input,
|
|
613
605
|
args: ['clrAccordionPanelDisabled']
|
|
614
606
|
}], panelOpen: [{
|
|
@@ -1051,8 +1043,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
1051
1043
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
1052
1044
|
*/
|
|
1053
1045
|
class ClrStepperPanel extends ClrAccordionPanel {
|
|
1054
|
-
constructor(platformId, commonStrings, formGroupName, ngModelGroup, stepperService, ifExpandService
|
|
1055
|
-
super(commonStrings, stepperService, ifExpandService
|
|
1046
|
+
constructor(platformId, commonStrings, formGroupName, ngModelGroup, stepperService, ifExpandService) {
|
|
1047
|
+
super(commonStrings, stepperService, ifExpandService);
|
|
1056
1048
|
this.platformId = platformId;
|
|
1057
1049
|
this.commonStrings = commonStrings;
|
|
1058
1050
|
this.formGroupName = formGroupName;
|
|
@@ -1098,11 +1090,11 @@ class ClrStepperPanel extends ClrAccordionPanel {
|
|
|
1098
1090
|
}
|
|
1099
1091
|
}
|
|
1100
1092
|
}
|
|
1101
|
-
ClrStepperPanel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStepperPanel, deps: [{ token: PLATFORM_ID }, { token: ClrCommonStringsService }, { token: i1.FormGroupName, optional: true }, { token: i1.NgModelGroup, optional: true }, { token: StepperService }, { token: IfExpandService }
|
|
1102
|
-
ClrStepperPanel.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrStepperPanel, selector: "clr-stepper-panel", host: { properties: { "class.clr-accordion-panel": "true" } }, providers: [IfExpandService
|
|
1093
|
+
ClrStepperPanel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStepperPanel, deps: [{ token: PLATFORM_ID }, { token: ClrCommonStringsService }, { token: i1.FormGroupName, optional: true }, { token: i1.NgModelGroup, optional: true }, { token: StepperService }, { token: IfExpandService }], target: i0.ɵɵFactoryTarget.Component });
|
|
1094
|
+
ClrStepperPanel.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrStepperPanel, selector: "clr-stepper-panel", host: { properties: { "class.clr-accordion-panel": "true" } }, providers: [IfExpandService], viewQueries: [{ propertyName: "headerButton", first: true, predicate: ["headerButton"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"panel | async; let panel\">\n <div *ngIf=\"panel.status !== AccordionStatus.Inactive\" aria-live=\"assertive\" class=\"clr-sr-only\">\n <ng-container *ngIf=\"panel.status === AccordionStatus.Error\">{{commonStrings.keys.danger}}</ng-container>\n </div>\n\n <div [ngClass]=\"getPanelStateClasses(panel)\">\n <div class=\"clr-accordion-header\">\n <button\n type=\"button\"\n class=\"clr-accordion-header-button\"\n (click)=\"togglePanel()\"\n [id]=\"getAccordionHeaderId(panel.templateId)\"\n [disabled]=\"isAccordion && panel.disabled\"\n [attr.aria-disabled]=\"!isAccordion && panel.disabled\"\n [attr.aria-controls]=\"getAccordionContentId(panel.templateId)\"\n [attr.aria-expanded]=\"panel.open\"\n [class.clr-accordion-header-has-description]=\"(accordionDescription.changes | async)?.length || accordionDescription.length\"\n #headerButton\n >\n <span class=\"clr-sr-only\">\n <ng-container *ngIf=\"panel.status === AccordionStatus.Error\">{{commonStrings.keys.danger}}</ng-container>\n <ng-container *ngIf=\"panel.status === AccordionStatus.Complete\">{{commonStrings.keys.success}}</ng-container>\n </span>\n <span class=\"clr-accordion-status\">\n <cds-icon shape=\"angle\" direction=\"right\" class=\"clr-accordion-angle\"></cds-icon>\n <span class=\"clr-accordion-number\"></span>\n <cds-icon status=\"danger\" shape=\"exclamation-circle\" class=\"clr-accordion-error-icon\"></cds-icon>\n <cds-icon status=\"success\" shape=\"check-circle\" class=\"clr-accordion-complete-icon\"></cds-icon>\n </span>\n <ng-content select=\"clr-accordion-title, clr-step-title\"></ng-content>\n <ng-content select=\"clr-accordion-description, clr-step-description\"></ng-content>\n </button>\n </div>\n <div\n @skipInitialRender\n role=\"region\"\n [id]=\"getAccordionContentId(panel.templateId)\"\n [attr.aria-hidden]=\"!panel.open\"\n [attr.aria-labelledby]=\"getAccordionHeaderId(panel.templateId)\"\n >\n <div\n *ngIf=\"panel.open\"\n @toggle\n (@toggle.done)=\"collapsePanelOnAnimationDone(panel)\"\n class=\"clr-accordion-content\"\n >\n <div class=\"clr-accordion-inner-content\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n </div>\n</ng-container>\n", directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: CdsIconCustomTag, selector: "cds-icon" }], pipes: { "async": i5.AsyncPipe }, animations: stepAnimation, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1103
1095
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStepperPanel, decorators: [{
|
|
1104
1096
|
type: Component,
|
|
1105
|
-
args: [{ selector: 'clr-stepper-panel', host: { '[class.clr-accordion-panel]': 'true' }, changeDetection: ChangeDetectionStrategy.OnPush, animations: stepAnimation, providers: [IfExpandService
|
|
1097
|
+
args: [{ selector: 'clr-stepper-panel', host: { '[class.clr-accordion-panel]': 'true' }, changeDetection: ChangeDetectionStrategy.OnPush, animations: stepAnimation, providers: [IfExpandService], template: "<ng-container *ngIf=\"panel | async; let panel\">\n <div *ngIf=\"panel.status !== AccordionStatus.Inactive\" aria-live=\"assertive\" class=\"clr-sr-only\">\n <ng-container *ngIf=\"panel.status === AccordionStatus.Error\">{{commonStrings.keys.danger}}</ng-container>\n </div>\n\n <div [ngClass]=\"getPanelStateClasses(panel)\">\n <div class=\"clr-accordion-header\">\n <button\n type=\"button\"\n class=\"clr-accordion-header-button\"\n (click)=\"togglePanel()\"\n [id]=\"getAccordionHeaderId(panel.templateId)\"\n [disabled]=\"isAccordion && panel.disabled\"\n [attr.aria-disabled]=\"!isAccordion && panel.disabled\"\n [attr.aria-controls]=\"getAccordionContentId(panel.templateId)\"\n [attr.aria-expanded]=\"panel.open\"\n [class.clr-accordion-header-has-description]=\"(accordionDescription.changes | async)?.length || accordionDescription.length\"\n #headerButton\n >\n <span class=\"clr-sr-only\">\n <ng-container *ngIf=\"panel.status === AccordionStatus.Error\">{{commonStrings.keys.danger}}</ng-container>\n <ng-container *ngIf=\"panel.status === AccordionStatus.Complete\">{{commonStrings.keys.success}}</ng-container>\n </span>\n <span class=\"clr-accordion-status\">\n <cds-icon shape=\"angle\" direction=\"right\" class=\"clr-accordion-angle\"></cds-icon>\n <span class=\"clr-accordion-number\"></span>\n <cds-icon status=\"danger\" shape=\"exclamation-circle\" class=\"clr-accordion-error-icon\"></cds-icon>\n <cds-icon status=\"success\" shape=\"check-circle\" class=\"clr-accordion-complete-icon\"></cds-icon>\n </span>\n <ng-content select=\"clr-accordion-title, clr-step-title\"></ng-content>\n <ng-content select=\"clr-accordion-description, clr-step-description\"></ng-content>\n </button>\n </div>\n <div\n @skipInitialRender\n role=\"region\"\n [id]=\"getAccordionContentId(panel.templateId)\"\n [attr.aria-hidden]=\"!panel.open\"\n [attr.aria-labelledby]=\"getAccordionHeaderId(panel.templateId)\"\n >\n <div\n *ngIf=\"panel.open\"\n @toggle\n (@toggle.done)=\"collapsePanelOnAnimationDone(panel)\"\n class=\"clr-accordion-content\"\n >\n <div class=\"clr-accordion-inner-content\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n </div>\n</ng-container>\n" }]
|
|
1106
1098
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
1107
1099
|
type: Inject,
|
|
1108
1100
|
args: [PLATFORM_ID]
|
|
@@ -1110,10 +1102,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
1110
1102
|
type: Optional
|
|
1111
1103
|
}] }, { type: i1.NgModelGroup, decorators: [{
|
|
1112
1104
|
type: Optional
|
|
1113
|
-
}] }, { type: StepperService }, { type: IfExpandService },
|
|
1114
|
-
type: Inject,
|
|
1115
|
-
args: [UNIQUE_ID]
|
|
1116
|
-
}] }]; }, propDecorators: { headerButton: [{
|
|
1105
|
+
}] }, { type: StepperService }, { type: IfExpandService }]; }, propDecorators: { headerButton: [{
|
|
1117
1106
|
type: ViewChild,
|
|
1118
1107
|
args: ['headerButton']
|
|
1119
1108
|
}] } });
|
|
@@ -2619,12 +2608,12 @@ ClrPopoverPositions['left-bottom'] = {
|
|
|
2619
2608
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
2620
2609
|
*/
|
|
2621
2610
|
class ClrButtonGroup {
|
|
2622
|
-
constructor(buttonGroupNewService, toggleService,
|
|
2611
|
+
constructor(buttonGroupNewService, toggleService, commonStrings, destroy$) {
|
|
2623
2612
|
this.buttonGroupNewService = buttonGroupNewService;
|
|
2624
2613
|
this.toggleService = toggleService;
|
|
2625
|
-
this.popoverId = popoverId;
|
|
2626
2614
|
this.commonStrings = commonStrings;
|
|
2627
2615
|
this.destroy$ = destroy$;
|
|
2616
|
+
this.popoverId = uniqueIdFactory();
|
|
2628
2617
|
this.popoverPosition = ClrPopoverPositions['bottom-left'];
|
|
2629
2618
|
this.inlineButtons = [];
|
|
2630
2619
|
this.menuButtons = [];
|
|
@@ -2709,10 +2698,9 @@ class ClrButtonGroup {
|
|
|
2709
2698
|
this.popoverPosition = ClrPopoverPositions[this._menuPosition];
|
|
2710
2699
|
}
|
|
2711
2700
|
}
|
|
2712
|
-
ClrButtonGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrButtonGroup, deps: [{ token: ButtonInGroupService }, { token: ClrPopoverToggleService }, { token:
|
|
2701
|
+
ClrButtonGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrButtonGroup, deps: [{ token: ButtonInGroupService }, { token: ClrPopoverToggleService }, { token: ClrCommonStringsService }, { token: ClrDestroyService }], target: i0.ɵɵFactoryTarget.Component });
|
|
2713
2702
|
ClrButtonGroup.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrButtonGroup, selector: "clr-button-group", inputs: { menuPosition: ["clrMenuPosition", "menuPosition"] }, host: { properties: { "class.btn-group": "true" } }, providers: [
|
|
2714
2703
|
ButtonInGroupService,
|
|
2715
|
-
UNIQUE_ID_PROVIDER,
|
|
2716
2704
|
ClrPopoverToggleService,
|
|
2717
2705
|
ClrPopoverEventsService,
|
|
2718
2706
|
ClrPopoverPositionService,
|
|
@@ -2722,16 +2710,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
2722
2710
|
type: Component,
|
|
2723
2711
|
args: [{ selector: 'clr-button-group', providers: [
|
|
2724
2712
|
ButtonInGroupService,
|
|
2725
|
-
UNIQUE_ID_PROVIDER,
|
|
2726
2713
|
ClrPopoverToggleService,
|
|
2727
2714
|
ClrPopoverEventsService,
|
|
2728
2715
|
ClrPopoverPositionService,
|
|
2729
2716
|
ClrDestroyService,
|
|
2730
2717
|
], host: { '[class.btn-group]': 'true' }, template: "<!--\n ~ Copyright (c) 2016-2021 VMware, Inc. All Rights Reserved.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n\n<ng-container *ngFor=\"let inlineButton of inlineButtons\">\n <ng-template [ngTemplateOutlet]=\"inlineButton.templateRef\"></ng-template>\n</ng-container>\n<ng-container *ngIf=\"menuButtons.length > 0\">\n <div class=\"btn-group-overflow open\" [ngClass]=\"menuPosition\" #anchor>\n <button\n class=\"btn dropdown-toggle\"\n clrPopoverAnchor\n clrPopoverOpenCloseButton\n [attr.aria-controls]=\"popoverId\"\n [attr.aria-expanded]=\"open\"\n [attr.aria-label]=\"commonStrings.keys.rowActions\"\n >\n <cds-icon shape=\"ellipsis-horizontal\" [attr.title]=\"commonStrings.keys.more\"></cds-icon>\n </button>\n <div\n role=\"menu\"\n class=\"dropdown-menu clr-button-group-menu\"\n [id]=\"popoverId\"\n [attr.id]=\"popoverId\"\n [attr.aria-hidden]=\"!open\"\n *clrPopoverContent=\"open at popoverPosition; outsideClickToClose: true; scrollToClose: true\"\n >\n <ng-template [ngTemplateOutlet]=\"ref\"></ng-template>\n </div>\n </div>\n</ng-container>\n<ng-template #ref>\n <ng-container *ngFor=\"let menuButton of menuButtons\">\n <ng-template [ngTemplateOutlet]=\"menuButton.templateRef\"></ng-template>\n </ng-container>\n</ng-template>\n" }]
|
|
2731
|
-
}], ctorParameters: function () { return [{ type: ButtonInGroupService }, { type: ClrPopoverToggleService }, { type:
|
|
2732
|
-
type: Inject,
|
|
2733
|
-
args: [UNIQUE_ID]
|
|
2734
|
-
}] }, { type: ClrCommonStringsService }, { type: ClrDestroyService }]; }, propDecorators: { buttons: [{
|
|
2718
|
+
}], ctorParameters: function () { return [{ type: ButtonInGroupService }, { type: ClrPopoverToggleService }, { type: ClrCommonStringsService }, { type: ClrDestroyService }]; }, propDecorators: { buttons: [{
|
|
2735
2719
|
type: ContentChildren,
|
|
2736
2720
|
args: [ClrButton]
|
|
2737
2721
|
}], menuPosition: [{
|
|
@@ -3728,13 +3712,6 @@ class WrappedFormControl {
|
|
|
3728
3712
|
}
|
|
3729
3713
|
triggerValidation() {
|
|
3730
3714
|
if (this.ifControlStateService) {
|
|
3731
|
-
/**
|
|
3732
|
-
* For some reason the <input type="number" /> on blur ngControl doesn't set the control to 'touched'
|
|
3733
|
-
* This one is a workaround to provide the control to be 'touched' on blur and fix #4480.
|
|
3734
|
-
*/
|
|
3735
|
-
if (this.ngControl && !this.ngControl.touched) {
|
|
3736
|
-
this.markAsTouched();
|
|
3737
|
-
}
|
|
3738
3715
|
this.ifControlStateService.triggerStatusChange();
|
|
3739
3716
|
}
|
|
3740
3717
|
}
|
|
@@ -5210,20 +5187,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
5210
5187
|
*/
|
|
5211
5188
|
const POPOVER_HOST_ANCHOR = new InjectionToken('POPOVER_HOST_ANCHOR');
|
|
5212
5189
|
|
|
5213
|
-
/*
|
|
5214
|
-
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
5215
|
-
* This software is released under MIT license.
|
|
5216
|
-
* The full license information can be found in LICENSE in the root directory of this project.
|
|
5217
|
-
*/
|
|
5218
|
-
// TODO: if we find more components that could use this, consider moving this to utils
|
|
5219
|
-
class AriaService {
|
|
5220
|
-
}
|
|
5221
|
-
AriaService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AriaService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
5222
|
-
AriaService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AriaService });
|
|
5223
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AriaService, decorators: [{
|
|
5224
|
-
type: Injectable
|
|
5225
|
-
}] });
|
|
5226
|
-
|
|
5227
5190
|
/*
|
|
5228
5191
|
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
5229
5192
|
* This software is released under MIT license.
|
|
@@ -5607,7 +5570,6 @@ class FocusableItem {
|
|
|
5607
5570
|
*/
|
|
5608
5571
|
function customFocusableItemProvider(implementation) {
|
|
5609
5572
|
return [
|
|
5610
|
-
UNIQUE_ID_PROVIDER,
|
|
5611
5573
|
implementation,
|
|
5612
5574
|
{
|
|
5613
5575
|
provide: FocusableItem,
|
|
@@ -5720,8 +5682,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
5720
5682
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
5721
5683
|
*/
|
|
5722
5684
|
class ComboboxFocusHandler {
|
|
5723
|
-
constructor(
|
|
5724
|
-
this.id = id;
|
|
5685
|
+
constructor(rendererFactory, toggleService, selectionService, platformId) {
|
|
5725
5686
|
this.toggleService = toggleService;
|
|
5726
5687
|
this.selectionService = selectionService;
|
|
5727
5688
|
this.platformId = platformId;
|
|
@@ -5899,14 +5860,11 @@ class ComboboxFocusHandler {
|
|
|
5899
5860
|
this.optionData = options;
|
|
5900
5861
|
}
|
|
5901
5862
|
}
|
|
5902
|
-
ComboboxFocusHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ComboboxFocusHandler, deps: [{ token:
|
|
5863
|
+
ComboboxFocusHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ComboboxFocusHandler, deps: [{ token: i0.RendererFactory2 }, { token: ClrPopoverToggleService }, { token: OptionSelectionService }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
5903
5864
|
ComboboxFocusHandler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ComboboxFocusHandler });
|
|
5904
5865
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ComboboxFocusHandler, decorators: [{
|
|
5905
5866
|
type: Injectable
|
|
5906
|
-
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
5907
|
-
type: Inject,
|
|
5908
|
-
args: [UNIQUE_ID]
|
|
5909
|
-
}] }, { type: i0.RendererFactory2 }, { type: ClrPopoverToggleService }, { type: OptionSelectionService }, { type: undefined, decorators: [{
|
|
5867
|
+
}], ctorParameters: function () { return [{ type: i0.RendererFactory2 }, { type: ClrPopoverToggleService }, { type: OptionSelectionService }, { type: undefined, decorators: [{
|
|
5910
5868
|
type: Inject,
|
|
5911
5869
|
args: [PLATFORM_ID]
|
|
5912
5870
|
}] }]; } });
|
|
@@ -5924,13 +5882,238 @@ class OptionData {
|
|
|
5924
5882
|
}
|
|
5925
5883
|
}
|
|
5926
5884
|
|
|
5885
|
+
/*
|
|
5886
|
+
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
5887
|
+
* This software is released under MIT license.
|
|
5888
|
+
* The full license information can be found in LICENSE in the root directory of this project.
|
|
5889
|
+
*/
|
|
5890
|
+
class ClrOption {
|
|
5891
|
+
constructor(elRef, commonStrings, focusHandler, optionSelectionService) {
|
|
5892
|
+
this.elRef = elRef;
|
|
5893
|
+
this.commonStrings = commonStrings;
|
|
5894
|
+
this.focusHandler = focusHandler;
|
|
5895
|
+
this.optionSelectionService = optionSelectionService;
|
|
5896
|
+
// A proxy with only the necessary data to be used for a11y and the focus handler service.
|
|
5897
|
+
this.optionProxy = new OptionData(null, null);
|
|
5898
|
+
this.optionProxy.el = this.elRef.nativeElement;
|
|
5899
|
+
}
|
|
5900
|
+
set optionId(id) {
|
|
5901
|
+
this._id = id;
|
|
5902
|
+
this.optionProxy.id = this._id;
|
|
5903
|
+
}
|
|
5904
|
+
get optionId() {
|
|
5905
|
+
return this._id;
|
|
5906
|
+
}
|
|
5907
|
+
set value(value) {
|
|
5908
|
+
this._value = value;
|
|
5909
|
+
this.optionProxy.value = value;
|
|
5910
|
+
}
|
|
5911
|
+
get value() {
|
|
5912
|
+
return this._value;
|
|
5913
|
+
}
|
|
5914
|
+
get selected() {
|
|
5915
|
+
return (this.optionSelectionService.selectionModel && this.optionSelectionService.selectionModel.containsItem(this.value));
|
|
5916
|
+
}
|
|
5917
|
+
ngOnInit() {
|
|
5918
|
+
if (!this._id) {
|
|
5919
|
+
this._id = 'clr-option-' + uniqueIdFactory();
|
|
5920
|
+
this.optionProxy.id = this._id;
|
|
5921
|
+
}
|
|
5922
|
+
}
|
|
5923
|
+
onClick() {
|
|
5924
|
+
if (this.optionSelectionService.multiselectable) {
|
|
5925
|
+
this.optionSelectionService.toggle(this.value);
|
|
5926
|
+
}
|
|
5927
|
+
else {
|
|
5928
|
+
this.optionSelectionService.select(this.value);
|
|
5929
|
+
}
|
|
5930
|
+
// As the popover stays open in multi-select mode now, we have to take focus back to the input
|
|
5931
|
+
// This way we achieve two things:
|
|
5932
|
+
// - do not lose focus
|
|
5933
|
+
// - we're still able to use onBlur for "outside-click" handling
|
|
5934
|
+
this.focusHandler.focusInput();
|
|
5935
|
+
}
|
|
5936
|
+
get focusClass() {
|
|
5937
|
+
return this.focusHandler.pseudoFocus.containsItem(this.optionProxy);
|
|
5938
|
+
}
|
|
5939
|
+
}
|
|
5940
|
+
ClrOption.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrOption, deps: [{ token: i0.ElementRef }, { token: ClrCommonStringsService }, { token: ComboboxFocusHandler }, { token: OptionSelectionService }], target: i0.ɵɵFactoryTarget.Component });
|
|
5941
|
+
ClrOption.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrOption, selector: "clr-option", inputs: { optionId: ["id", "optionId"], value: ["clrValue", "value"] }, host: { listeners: { "click": "onClick()" }, properties: { "class.clr-combobox-option": "true", "attr.role": "\"option\"", "attr.tabindex": "-1", "attr.id": "optionId", "class.active": "this.selected", "class.clr-focus": "this.focusClass" } }, ngImport: i0, template: `
|
|
5942
|
+
<ng-content></ng-content>
|
|
5943
|
+
<span *ngIf="selected" class="clr-sr-only">{{ commonStrings.keys.comboboxSelected }}</span>
|
|
5944
|
+
`, isInline: true, directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
5945
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrOption, decorators: [{
|
|
5946
|
+
type: Component,
|
|
5947
|
+
args: [{
|
|
5948
|
+
selector: 'clr-option',
|
|
5949
|
+
template: `
|
|
5950
|
+
<ng-content></ng-content>
|
|
5951
|
+
<span *ngIf="selected" class="clr-sr-only">{{ commonStrings.keys.comboboxSelected }}</span>
|
|
5952
|
+
`,
|
|
5953
|
+
host: {
|
|
5954
|
+
'[class.clr-combobox-option]': 'true',
|
|
5955
|
+
'[attr.role]': '"option"',
|
|
5956
|
+
// Do not remove. Or click-selection will not work.
|
|
5957
|
+
'[attr.tabindex]': '-1',
|
|
5958
|
+
'[attr.id]': 'optionId',
|
|
5959
|
+
},
|
|
5960
|
+
}]
|
|
5961
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: ClrCommonStringsService }, { type: ComboboxFocusHandler }, { type: OptionSelectionService }]; }, propDecorators: { optionId: [{
|
|
5962
|
+
type: Input,
|
|
5963
|
+
args: ['id']
|
|
5964
|
+
}], value: [{
|
|
5965
|
+
type: Input,
|
|
5966
|
+
args: ['clrValue']
|
|
5967
|
+
}], selected: [{
|
|
5968
|
+
type: HostBinding,
|
|
5969
|
+
args: ['class.active']
|
|
5970
|
+
}], onClick: [{
|
|
5971
|
+
type: HostListener,
|
|
5972
|
+
args: ['click']
|
|
5973
|
+
}], focusClass: [{
|
|
5974
|
+
type: HostBinding,
|
|
5975
|
+
args: ['class.clr-focus']
|
|
5976
|
+
}] } });
|
|
5977
|
+
|
|
5978
|
+
/*
|
|
5979
|
+
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
5980
|
+
* This software is released under MIT license.
|
|
5981
|
+
* The full license information can be found in LICENSE in the root directory of this project.
|
|
5982
|
+
*/
|
|
5983
|
+
let nbOptionsComponents = 0;
|
|
5984
|
+
class ClrOptions {
|
|
5985
|
+
constructor(optionSelectionService, id, el, commonStrings, focusHandler, toggleService, parentHost, document) {
|
|
5986
|
+
this.optionSelectionService = optionSelectionService;
|
|
5987
|
+
this.id = id;
|
|
5988
|
+
this.el = el;
|
|
5989
|
+
this.commonStrings = commonStrings;
|
|
5990
|
+
this.focusHandler = focusHandler;
|
|
5991
|
+
this.toggleService = toggleService;
|
|
5992
|
+
this.document = document;
|
|
5993
|
+
this.loading = false;
|
|
5994
|
+
this.subscriptions = [];
|
|
5995
|
+
if (!parentHost) {
|
|
5996
|
+
throw new Error('clr-options should only be used inside of a clr-combobox');
|
|
5997
|
+
}
|
|
5998
|
+
if (!this.optionsId) {
|
|
5999
|
+
this.optionsId = 'clr-options-' + nbOptionsComponents++;
|
|
6000
|
+
}
|
|
6001
|
+
}
|
|
6002
|
+
searchText(input) {
|
|
6003
|
+
return this.commonStrings.parse(this.commonStrings.keys.comboboxSearching, { INPUT: input });
|
|
6004
|
+
}
|
|
6005
|
+
/**
|
|
6006
|
+
* Tests if the list of options is empty, meaning it doesn't contain any items
|
|
6007
|
+
*/
|
|
6008
|
+
get emptyOptions() {
|
|
6009
|
+
return !this.optionSelectionService.loading && this.items.length === 0;
|
|
6010
|
+
}
|
|
6011
|
+
set items(items) {
|
|
6012
|
+
this._items = items;
|
|
6013
|
+
this.focusHandler.addOptionValues(this._items.map(option => option.optionProxy));
|
|
6014
|
+
}
|
|
6015
|
+
get items() {
|
|
6016
|
+
return this._items;
|
|
6017
|
+
}
|
|
6018
|
+
loadingStateChange(state) {
|
|
6019
|
+
this.loading = state === ClrLoadingState.LOADING;
|
|
6020
|
+
}
|
|
6021
|
+
ngAfterViewInit() {
|
|
6022
|
+
this.focusHandler.listbox = this.el.nativeElement;
|
|
6023
|
+
this.subscriptions.push(fromEvent(this.document, 'scroll', { capture: true }).subscribe(event => {
|
|
6024
|
+
if (this.toggleService.open &&
|
|
6025
|
+
event.target !== this.el.nativeElement &&
|
|
6026
|
+
event.target !== this.focusHandler.textInput) {
|
|
6027
|
+
this.toggleService.open = false;
|
|
6028
|
+
}
|
|
6029
|
+
}), this.items.changes.subscribe(() => {
|
|
6030
|
+
setTimeout(() => {
|
|
6031
|
+
this.focusHandler.focusFirstActive();
|
|
6032
|
+
});
|
|
6033
|
+
}));
|
|
6034
|
+
}
|
|
6035
|
+
ngOnDestroy() {
|
|
6036
|
+
this.subscriptions.forEach(sub => sub.unsubscribe());
|
|
6037
|
+
}
|
|
6038
|
+
}
|
|
6039
|
+
ClrOptions.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrOptions, deps: [{ token: OptionSelectionService }, { token: IF_ACTIVE_ID }, { token: i0.ElementRef }, { token: ClrCommonStringsService }, { token: ComboboxFocusHandler }, { token: ClrPopoverToggleService }, { token: POPOVER_HOST_ANCHOR, optional: true }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
|
|
6040
|
+
ClrOptions.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrOptions, selector: "clr-options", inputs: { optionsId: ["id", "optionsId"] }, host: { properties: { "class.clr-combobox-options": "true", "attr.role": "\"listbox\"", "id": "optionsId" } }, providers: [{ provide: LoadingListener, useExisting: ClrOptions }], queries: [{ propertyName: "items", predicate: ClrOption }], ngImport: i0, template: `
|
|
6041
|
+
<div *ngIf="optionSelectionService.loading" class="clr-combobox-options-loading">
|
|
6042
|
+
<clr-spinner clrInline>
|
|
6043
|
+
{{ commonStrings.keys.loading }}
|
|
6044
|
+
</clr-spinner>
|
|
6045
|
+
<span class="clr-combobox-options-text">
|
|
6046
|
+
{{ searchText(optionSelectionService.currentInput) }}
|
|
6047
|
+
</span>
|
|
6048
|
+
</div>
|
|
6049
|
+
|
|
6050
|
+
<!-- Rendered if data set is empty -->
|
|
6051
|
+
<div *ngIf="emptyOptions">
|
|
6052
|
+
<span class="clr-combobox-options-empty-text">
|
|
6053
|
+
{{ commonStrings.keys.comboboxNoResults }}
|
|
6054
|
+
</span>
|
|
6055
|
+
</div>
|
|
6056
|
+
|
|
6057
|
+
<!--Option Groups and Options will be projected here-->
|
|
6058
|
+
<ng-content></ng-content>
|
|
6059
|
+
`, isInline: true, components: [{ type: ClrSpinner, selector: "clr-spinner", inputs: ["clrInline", "clrInverse", "clrSmall", "clrMedium"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
6060
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrOptions, decorators: [{
|
|
6061
|
+
type: Component,
|
|
6062
|
+
args: [{
|
|
6063
|
+
selector: 'clr-options',
|
|
6064
|
+
template: `
|
|
6065
|
+
<div *ngIf="optionSelectionService.loading" class="clr-combobox-options-loading">
|
|
6066
|
+
<clr-spinner clrInline>
|
|
6067
|
+
{{ commonStrings.keys.loading }}
|
|
6068
|
+
</clr-spinner>
|
|
6069
|
+
<span class="clr-combobox-options-text">
|
|
6070
|
+
{{ searchText(optionSelectionService.currentInput) }}
|
|
6071
|
+
</span>
|
|
6072
|
+
</div>
|
|
6073
|
+
|
|
6074
|
+
<!-- Rendered if data set is empty -->
|
|
6075
|
+
<div *ngIf="emptyOptions">
|
|
6076
|
+
<span class="clr-combobox-options-empty-text">
|
|
6077
|
+
{{ commonStrings.keys.comboboxNoResults }}
|
|
6078
|
+
</span>
|
|
6079
|
+
</div>
|
|
6080
|
+
|
|
6081
|
+
<!--Option Groups and Options will be projected here-->
|
|
6082
|
+
<ng-content></ng-content>
|
|
6083
|
+
`,
|
|
6084
|
+
providers: [{ provide: LoadingListener, useExisting: ClrOptions }],
|
|
6085
|
+
host: {
|
|
6086
|
+
'[class.clr-combobox-options]': 'true',
|
|
6087
|
+
'[attr.role]': '"listbox"',
|
|
6088
|
+
'[id]': 'optionsId',
|
|
6089
|
+
},
|
|
6090
|
+
}]
|
|
6091
|
+
}], ctorParameters: function () { return [{ type: OptionSelectionService }, { type: undefined, decorators: [{
|
|
6092
|
+
type: Inject,
|
|
6093
|
+
args: [IF_ACTIVE_ID]
|
|
6094
|
+
}] }, { type: i0.ElementRef }, { type: ClrCommonStringsService }, { type: ComboboxFocusHandler }, { type: ClrPopoverToggleService }, { type: i0.ElementRef, decorators: [{
|
|
6095
|
+
type: Optional
|
|
6096
|
+
}, {
|
|
6097
|
+
type: Inject,
|
|
6098
|
+
args: [POPOVER_HOST_ANCHOR]
|
|
6099
|
+
}] }, { type: undefined, decorators: [{
|
|
6100
|
+
type: Inject,
|
|
6101
|
+
args: [DOCUMENT]
|
|
6102
|
+
}] }]; }, propDecorators: { optionsId: [{
|
|
6103
|
+
type: Input,
|
|
6104
|
+
args: ['id']
|
|
6105
|
+
}], items: [{
|
|
6106
|
+
type: ContentChildren,
|
|
6107
|
+
args: [ClrOption]
|
|
6108
|
+
}] } });
|
|
6109
|
+
|
|
5927
6110
|
/*
|
|
5928
6111
|
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
5929
6112
|
* This software is released under MIT license.
|
|
5930
6113
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
5931
6114
|
*/
|
|
5932
6115
|
class ClrCombobox extends WrappedFormControl {
|
|
5933
|
-
constructor(vcr, injector, control, renderer, el, optionSelectionService, commonStrings, toggleService, positionService, controlStateService, containerService, platformId,
|
|
6116
|
+
constructor(vcr, injector, control, renderer, el, optionSelectionService, commonStrings, toggleService, positionService, controlStateService, containerService, platformId, focusHandler, cdr) {
|
|
5934
6117
|
super(vcr, ClrComboboxContainer, injector, control, renderer, el);
|
|
5935
6118
|
this.control = control;
|
|
5936
6119
|
this.renderer = renderer;
|
|
@@ -5942,7 +6125,6 @@ class ClrCombobox extends WrappedFormControl {
|
|
|
5942
6125
|
this.controlStateService = controlStateService;
|
|
5943
6126
|
this.containerService = containerService;
|
|
5944
6127
|
this.platformId = platformId;
|
|
5945
|
-
this.ariaService = ariaService;
|
|
5946
6128
|
this.focusHandler = focusHandler;
|
|
5947
6129
|
this.cdr = cdr;
|
|
5948
6130
|
this.index = 1;
|
|
@@ -6030,10 +6212,10 @@ class ClrCombobox extends WrappedFormControl {
|
|
|
6030
6212
|
return this.optionSelectionService.multiselectable;
|
|
6031
6213
|
}
|
|
6032
6214
|
get ariaControls() {
|
|
6033
|
-
return this.
|
|
6215
|
+
return this.options?.optionsId;
|
|
6034
6216
|
}
|
|
6035
6217
|
get ariaOwns() {
|
|
6036
|
-
return this.
|
|
6218
|
+
return this.options?.optionsId;
|
|
6037
6219
|
}
|
|
6038
6220
|
get ariaDescribedBySelection() {
|
|
6039
6221
|
return 'selection-' + this.id;
|
|
@@ -6171,20 +6353,19 @@ class ClrCombobox extends WrappedFormControl {
|
|
|
6171
6353
|
this.el = this.textbox;
|
|
6172
6354
|
}
|
|
6173
6355
|
}
|
|
6174
|
-
ClrCombobox.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrCombobox, deps: [{ token: i0.ViewContainerRef }, { token: i0.Injector }, { token: i1.NgControl, optional: true, self: true }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: OptionSelectionService }, { token: ClrCommonStringsService }, { token: ClrPopoverToggleService }, { token: ClrPopoverPositionService }, { token: IfControlStateService, optional: true }, { token: ComboboxContainerService, optional: true }, { token: PLATFORM_ID }, { token:
|
|
6356
|
+
ClrCombobox.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrCombobox, deps: [{ token: i0.ViewContainerRef }, { token: i0.Injector }, { token: i1.NgControl, optional: true, self: true }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: OptionSelectionService }, { token: ClrCommonStringsService }, { token: ClrPopoverToggleService }, { token: ClrPopoverPositionService }, { token: IfControlStateService, optional: true }, { token: ComboboxContainerService, optional: true }, { token: PLATFORM_ID }, { token: ComboboxFocusHandler }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
6175
6357
|
ClrCombobox.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrCombobox, selector: "clr-combobox", inputs: { placeholder: "placeholder", multiSelect: ["clrMulti", "multiSelect"] }, outputs: { clrInputChange: "clrInputChange", clrOpenChange: "clrOpenChange", clrSelectionChange: "clrSelectionChange" }, host: { listeners: { "keydown": "onKeyUp($event)" }, properties: { "class.aria-required": "true", "class.clr-combobox": "true", "class.clr-combobox-disabled": "control?.disabled" } }, providers: [
|
|
6176
6358
|
ClrPopoverToggleService,
|
|
6177
6359
|
{ provide: POPOVER_HOST_ANCHOR, useExisting: ElementRef },
|
|
6178
6360
|
OptionSelectionService,
|
|
6179
6361
|
{ provide: LoadingListener, useExisting: ClrCombobox },
|
|
6180
6362
|
IF_ACTIVE_ID_PROVIDER,
|
|
6181
|
-
AriaService,
|
|
6182
6363
|
FOCUS_SERVICE_PROVIDER,
|
|
6183
6364
|
COMBOBOX_FOCUS_HANDLER_PROVIDER,
|
|
6184
6365
|
ClrPopoverToggleService,
|
|
6185
6366
|
ClrPopoverEventsService,
|
|
6186
6367
|
ClrPopoverPositionService,
|
|
6187
|
-
], queries: [{ propertyName: "optionSelected", first: true, predicate: ClrOptionSelected, descendants: true }], viewQueries: [{ propertyName: "textbox", first: true, predicate: ["textboxInput"], descendants: true }, { propertyName: "trigger", first: true, predicate: ["trigger"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<!--\n* Copyright (c) 2016-2021 VMware, Inc. All Rights Reserved.\n* This software is released under MIT license.\n* The full license information can be found in LICENSE in the root directory of this project.\n-->\n\n<!-- The (click) handler is needed to auto-focus on input field which can not currently occupy the whole\n width of the component, after being wrapped to a new line -->\n<div\n class=\"clr-combobox-wrapper\"\n clrPopoverAnchor\n (click)=\"focusInput()\"\n [class.multi]=\"multiSelect\"\n [class.invalid]=\"invalid\"\n>\n <span\n *ngIf=\"multiSelect && optionSelectionService.selectionModel.model\"\n role=\"grid\"\n clrRovingTabindex\n [clrRovingTabindexDisabled]=\"control?.disabled\"\n clrDirection=\"both\"\n [attr.aria-label]=\"getSelectionAriaLabel()\"\n [attr.aria-disabled]=\"control?.disabled? true: null\"\n >\n <span *ngFor=\"let item of multiSelectModel; let i = index\" class=\"label label-combobox-pill\" role=\"row\">\n <span role=\"gridcell\">\n <span class=\"clr-combobox-pill-content\" clrKeyFocusItem>\n <ng-container\n *ngIf=\"optionSelected\"\n [ngTemplateOutlet]=\"optionSelected.template\"\n [ngTemplateOutletContext]=\"{$implicit: optionSelectionService.selectionModel.model[i]}\"\n ></ng-container>\n </span>\n </span>\n <span role=\"gridcell\">\n <button\n clrKeyFocusItem\n type=\"button\"\n class=\"clr-combobox-remove-btn\"\n [disabled]=\"control?.disabled? true: null\"\n [attr.aria-label]=\"commonStrings.keys.comboboxDelete + ' ' + optionSelectionService.selectionModel.toString(displayField, i)\"\n (click)=\"unselect(item)\"\n >\n <cds-icon shape=\"window-close\" size=\"12\"></cds-icon>\n </button>\n </span>\n </span>\n </span>\n\n <span class=\"clr-combobox-input-wrapper\" role=\"combobox\">\n <input\n #textboxInput\n type=\"text\"\n [id]=\"inputId()\"\n class=\"clr-input clr-combobox-input\"\n [(ngModel)]=\"searchText\"\n (blur)=\"onBlur()\"\n (focus)=\"onFocus()\"\n [attr.aria-expanded]=\"openState\"\n [attr.aria-owns]=\"ariaOwns\"\n aria-haspopup=\"listbox\"\n aria-autocomplete=\"list\"\n autocomplete=\"off\"\n [attr.aria-invalid]=\"control?.invalid? true: null\"\n [disabled]=\"control?.disabled? true: null\"\n [attr.aria-activedescendant]=\"getActiveDescendant()\"\n [attr.placeholder]=\"placeholder\"\n />\n </span>\n\n <!-- No click handler, as it uses the handler on the .clr-combobox-wrapper -->\n <button\n clrPopoverOpenCloseButton\n #trigger\n type=\"button\"\n class=\"clr-combobox-trigger\"\n tabindex=\"-1\"\n [disabled]=\"control?.disabled || null\"\n [attr.aria-label]=\"commonStrings.keys.comboboxOpen\"\n >\n <cds-icon shape=\"angle\" direction=\"down\" size=\"12\"></cds-icon>\n </button>\n\n <div class=\"clr-focus-indicator\" [class.clr-focus]=\"focused\"></div>\n</div>\n\n<!-- Both close handlers are handled manually due to issues in Edge browser.\n Additionally 'outsideClickToClose' has complex handling that's necessary\n to be manual due to the component architecture -->\n<div role=\"dialog\" *clrPopoverContent=\"openState at smartPosition; outsideClickToClose: false; scrollToClose: false\">\n <ng-content></ng-content>\n</div>\n", components: [{ type: ClrRovingTabindex, selector: "[clrRovingTabindex]", inputs: ["clrRovingTabindex", "clrRovingTabindexDisabled"] }], directives: [{ type: ClrPopoverAnchor, selector: "[clrPopoverAnchor]" }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: ClrKeyFocusItem, selector: "[clrKeyFocusItem]" }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: CdsIconCustomTag, selector: "cds-icon" }, { type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: ClrPopoverOpenCloseButton, selector: "[clrPopoverOpenCloseButton]", outputs: ["clrPopoverOpenCloseChange"] }, { type: ClrPopoverContent, selector: "[clrPopoverContent]", inputs: ["clrPopoverContent", "clrPopoverContentAt", "clrPopoverContentOutsideClickToClose", "clrPopoverContentScrollToClose"] }] });
|
|
6368
|
+
], queries: [{ propertyName: "optionSelected", first: true, predicate: ClrOptionSelected, descendants: true }, { propertyName: "options", first: true, predicate: ClrOptions, descendants: true }], viewQueries: [{ propertyName: "textbox", first: true, predicate: ["textboxInput"], descendants: true }, { propertyName: "trigger", first: true, predicate: ["trigger"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<!--\n* Copyright (c) 2016-2021 VMware, Inc. All Rights Reserved.\n* This software is released under MIT license.\n* The full license information can be found in LICENSE in the root directory of this project.\n-->\n\n<!-- The (click) handler is needed to auto-focus on input field which can not currently occupy the whole\n width of the component, after being wrapped to a new line -->\n<div\n class=\"clr-combobox-wrapper\"\n clrPopoverAnchor\n (click)=\"focusInput()\"\n [class.multi]=\"multiSelect\"\n [class.invalid]=\"invalid\"\n>\n <span\n *ngIf=\"multiSelect && optionSelectionService.selectionModel.model\"\n role=\"grid\"\n clrRovingTabindex\n [clrRovingTabindexDisabled]=\"control?.disabled\"\n clrDirection=\"both\"\n [attr.aria-label]=\"getSelectionAriaLabel()\"\n [attr.aria-disabled]=\"control?.disabled? true: null\"\n >\n <span *ngFor=\"let item of multiSelectModel; let i = index\" class=\"label label-combobox-pill\" role=\"row\">\n <span role=\"gridcell\">\n <span class=\"clr-combobox-pill-content\" clrKeyFocusItem>\n <ng-container\n *ngIf=\"optionSelected\"\n [ngTemplateOutlet]=\"optionSelected.template\"\n [ngTemplateOutletContext]=\"{$implicit: optionSelectionService.selectionModel.model[i]}\"\n ></ng-container>\n </span>\n </span>\n <span role=\"gridcell\">\n <button\n clrKeyFocusItem\n type=\"button\"\n class=\"clr-combobox-remove-btn\"\n [disabled]=\"control?.disabled? true: null\"\n [attr.aria-label]=\"commonStrings.keys.comboboxDelete + ' ' + optionSelectionService.selectionModel.toString(displayField, i)\"\n (click)=\"unselect(item)\"\n >\n <cds-icon shape=\"window-close\" size=\"12\"></cds-icon>\n </button>\n </span>\n </span>\n </span>\n\n <span class=\"clr-combobox-input-wrapper\" role=\"combobox\">\n <input\n #textboxInput\n type=\"text\"\n [id]=\"inputId()\"\n class=\"clr-input clr-combobox-input\"\n [(ngModel)]=\"searchText\"\n (blur)=\"onBlur()\"\n (focus)=\"onFocus()\"\n [attr.aria-expanded]=\"openState\"\n [attr.aria-owns]=\"ariaOwns\"\n aria-haspopup=\"listbox\"\n aria-autocomplete=\"list\"\n autocomplete=\"off\"\n [attr.aria-invalid]=\"control?.invalid? true: null\"\n [disabled]=\"control?.disabled? true: null\"\n [attr.aria-activedescendant]=\"getActiveDescendant()\"\n [attr.placeholder]=\"placeholder\"\n />\n </span>\n\n <!-- No click handler, as it uses the handler on the .clr-combobox-wrapper -->\n <button\n clrPopoverOpenCloseButton\n #trigger\n type=\"button\"\n class=\"clr-combobox-trigger\"\n tabindex=\"-1\"\n [disabled]=\"control?.disabled || null\"\n [attr.aria-label]=\"commonStrings.keys.comboboxOpen\"\n >\n <cds-icon shape=\"angle\" direction=\"down\" size=\"12\"></cds-icon>\n </button>\n\n <div class=\"clr-focus-indicator\" [class.clr-focus]=\"focused\"></div>\n</div>\n\n<!-- Both close handlers are handled manually due to issues in Edge browser.\n Additionally 'outsideClickToClose' has complex handling that's necessary\n to be manual due to the component architecture -->\n<div role=\"dialog\" *clrPopoverContent=\"openState at smartPosition; outsideClickToClose: false; scrollToClose: false\">\n <ng-content></ng-content>\n</div>\n", components: [{ type: ClrRovingTabindex, selector: "[clrRovingTabindex]", inputs: ["clrRovingTabindex", "clrRovingTabindexDisabled"] }], directives: [{ type: ClrPopoverAnchor, selector: "[clrPopoverAnchor]" }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: ClrKeyFocusItem, selector: "[clrKeyFocusItem]" }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: CdsIconCustomTag, selector: "cds-icon" }, { type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: ClrPopoverOpenCloseButton, selector: "[clrPopoverOpenCloseButton]", outputs: ["clrPopoverOpenCloseChange"] }, { type: ClrPopoverContent, selector: "[clrPopoverContent]", inputs: ["clrPopoverContent", "clrPopoverContentAt", "clrPopoverContentOutsideClickToClose", "clrPopoverContentScrollToClose"] }] });
|
|
6188
6369
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrCombobox, decorators: [{
|
|
6189
6370
|
type: Component,
|
|
6190
6371
|
args: [{ selector: 'clr-combobox', providers: [
|
|
@@ -6193,153 +6374,57 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
6193
6374
|
OptionSelectionService,
|
|
6194
6375
|
{ provide: LoadingListener, useExisting: ClrCombobox },
|
|
6195
6376
|
IF_ACTIVE_ID_PROVIDER,
|
|
6196
|
-
AriaService,
|
|
6197
6377
|
FOCUS_SERVICE_PROVIDER,
|
|
6198
6378
|
COMBOBOX_FOCUS_HANDLER_PROVIDER,
|
|
6199
6379
|
ClrPopoverToggleService,
|
|
6200
6380
|
ClrPopoverEventsService,
|
|
6201
|
-
ClrPopoverPositionService,
|
|
6202
|
-
], host: {
|
|
6203
|
-
'[class.aria-required]': 'true',
|
|
6204
|
-
'[class.clr-combobox]': 'true',
|
|
6205
|
-
'[class.clr-combobox-disabled]': 'control?.disabled',
|
|
6206
|
-
}, template: "<!--\n* Copyright (c) 2016-2021 VMware, Inc. All Rights Reserved.\n* This software is released under MIT license.\n* The full license information can be found in LICENSE in the root directory of this project.\n-->\n\n<!-- The (click) handler is needed to auto-focus on input field which can not currently occupy the whole\n width of the component, after being wrapped to a new line -->\n<div\n class=\"clr-combobox-wrapper\"\n clrPopoverAnchor\n (click)=\"focusInput()\"\n [class.multi]=\"multiSelect\"\n [class.invalid]=\"invalid\"\n>\n <span\n *ngIf=\"multiSelect && optionSelectionService.selectionModel.model\"\n role=\"grid\"\n clrRovingTabindex\n [clrRovingTabindexDisabled]=\"control?.disabled\"\n clrDirection=\"both\"\n [attr.aria-label]=\"getSelectionAriaLabel()\"\n [attr.aria-disabled]=\"control?.disabled? true: null\"\n >\n <span *ngFor=\"let item of multiSelectModel; let i = index\" class=\"label label-combobox-pill\" role=\"row\">\n <span role=\"gridcell\">\n <span class=\"clr-combobox-pill-content\" clrKeyFocusItem>\n <ng-container\n *ngIf=\"optionSelected\"\n [ngTemplateOutlet]=\"optionSelected.template\"\n [ngTemplateOutletContext]=\"{$implicit: optionSelectionService.selectionModel.model[i]}\"\n ></ng-container>\n </span>\n </span>\n <span role=\"gridcell\">\n <button\n clrKeyFocusItem\n type=\"button\"\n class=\"clr-combobox-remove-btn\"\n [disabled]=\"control?.disabled? true: null\"\n [attr.aria-label]=\"commonStrings.keys.comboboxDelete + ' ' + optionSelectionService.selectionModel.toString(displayField, i)\"\n (click)=\"unselect(item)\"\n >\n <cds-icon shape=\"window-close\" size=\"12\"></cds-icon>\n </button>\n </span>\n </span>\n </span>\n\n <span class=\"clr-combobox-input-wrapper\" role=\"combobox\">\n <input\n #textboxInput\n type=\"text\"\n [id]=\"inputId()\"\n class=\"clr-input clr-combobox-input\"\n [(ngModel)]=\"searchText\"\n (blur)=\"onBlur()\"\n (focus)=\"onFocus()\"\n [attr.aria-expanded]=\"openState\"\n [attr.aria-owns]=\"ariaOwns\"\n aria-haspopup=\"listbox\"\n aria-autocomplete=\"list\"\n autocomplete=\"off\"\n [attr.aria-invalid]=\"control?.invalid? true: null\"\n [disabled]=\"control?.disabled? true: null\"\n [attr.aria-activedescendant]=\"getActiveDescendant()\"\n [attr.placeholder]=\"placeholder\"\n />\n </span>\n\n <!-- No click handler, as it uses the handler on the .clr-combobox-wrapper -->\n <button\n clrPopoverOpenCloseButton\n #trigger\n type=\"button\"\n class=\"clr-combobox-trigger\"\n tabindex=\"-1\"\n [disabled]=\"control?.disabled || null\"\n [attr.aria-label]=\"commonStrings.keys.comboboxOpen\"\n >\n <cds-icon shape=\"angle\" direction=\"down\" size=\"12\"></cds-icon>\n </button>\n\n <div class=\"clr-focus-indicator\" [class.clr-focus]=\"focused\"></div>\n</div>\n\n<!-- Both close handlers are handled manually due to issues in Edge browser.\n Additionally 'outsideClickToClose' has complex handling that's necessary\n to be manual due to the component architecture -->\n<div role=\"dialog\" *clrPopoverContent=\"openState at smartPosition; outsideClickToClose: false; scrollToClose: false\">\n <ng-content></ng-content>\n</div>\n" }]
|
|
6207
|
-
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.Injector }, { type: i1.NgControl, decorators: [{
|
|
6208
|
-
type: Self
|
|
6209
|
-
}, {
|
|
6210
|
-
type: Optional
|
|
6211
|
-
}] }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: OptionSelectionService }, { type: ClrCommonStringsService }, { type: ClrPopoverToggleService }, { type: ClrPopoverPositionService }, { type: IfControlStateService, decorators: [{
|
|
6212
|
-
type: Optional
|
|
6213
|
-
}] }, { type: ComboboxContainerService, decorators: [{
|
|
6214
|
-
type: Optional
|
|
6215
|
-
}] }, { type: undefined, decorators: [{
|
|
6216
|
-
type: Inject,
|
|
6217
|
-
args: [PLATFORM_ID]
|
|
6218
|
-
}] }, { type: AriaService }, { type: ComboboxFocusHandler }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { textbox: [{
|
|
6219
|
-
type: ViewChild,
|
|
6220
|
-
args: ['textboxInput']
|
|
6221
|
-
}], trigger: [{
|
|
6222
|
-
type: ViewChild,
|
|
6223
|
-
args: ['trigger']
|
|
6224
|
-
}], optionSelected: [{
|
|
6225
|
-
type: ContentChild,
|
|
6226
|
-
args: [ClrOptionSelected]
|
|
6227
|
-
}], placeholder: [{
|
|
6228
|
-
type: Input,
|
|
6229
|
-
args: ['placeholder']
|
|
6230
|
-
}], multiSelect: [{
|
|
6231
|
-
type: Input,
|
|
6232
|
-
args: ['clrMulti']
|
|
6233
|
-
}], onKeyUp: [{
|
|
6234
|
-
type: HostListener,
|
|
6235
|
-
args: ['keydown', ['$event']]
|
|
6236
|
-
}], clrInputChange: [{
|
|
6237
|
-
type: Output,
|
|
6238
|
-
args: ['clrInputChange']
|
|
6239
|
-
}], clrOpenChange: [{
|
|
6240
|
-
type: Output,
|
|
6241
|
-
args: ['clrOpenChange']
|
|
6242
|
-
}], clrSelectionChange: [{
|
|
6243
|
-
type: Output,
|
|
6244
|
-
args: ['clrSelectionChange']
|
|
6245
|
-
}] } });
|
|
6246
|
-
|
|
6247
|
-
/*
|
|
6248
|
-
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
6249
|
-
* This software is released under MIT license.
|
|
6250
|
-
* The full license information can be found in LICENSE in the root directory of this project.
|
|
6251
|
-
*/
|
|
6252
|
-
class ClrOption {
|
|
6253
|
-
constructor(elRef, commonStrings, focusHandler, optionSelectionService, autoId) {
|
|
6254
|
-
this.elRef = elRef;
|
|
6255
|
-
this.commonStrings = commonStrings;
|
|
6256
|
-
this.focusHandler = focusHandler;
|
|
6257
|
-
this.optionSelectionService = optionSelectionService;
|
|
6258
|
-
this.autoId = autoId;
|
|
6259
|
-
// A proxy with only the necessary data to be used for a11y and the focus handler service.
|
|
6260
|
-
this.optionProxy = new OptionData(null, null);
|
|
6261
|
-
this.optionProxy.el = this.elRef.nativeElement;
|
|
6262
|
-
}
|
|
6263
|
-
set optionId(id) {
|
|
6264
|
-
this._id = id;
|
|
6265
|
-
this.optionProxy.id = this._id;
|
|
6266
|
-
}
|
|
6267
|
-
get optionId() {
|
|
6268
|
-
return this._id;
|
|
6269
|
-
}
|
|
6270
|
-
set value(value) {
|
|
6271
|
-
this._value = value;
|
|
6272
|
-
this.optionProxy.value = value;
|
|
6273
|
-
}
|
|
6274
|
-
get value() {
|
|
6275
|
-
return this._value;
|
|
6276
|
-
}
|
|
6277
|
-
get selected() {
|
|
6278
|
-
return (this.optionSelectionService.selectionModel && this.optionSelectionService.selectionModel.containsItem(this.value));
|
|
6279
|
-
}
|
|
6280
|
-
ngOnInit() {
|
|
6281
|
-
if (!this._id) {
|
|
6282
|
-
this._id = 'clr-option-' + this.autoId;
|
|
6283
|
-
this.optionProxy.id = this._id;
|
|
6284
|
-
}
|
|
6285
|
-
}
|
|
6286
|
-
onClick() {
|
|
6287
|
-
if (this.optionSelectionService.multiselectable) {
|
|
6288
|
-
this.optionSelectionService.toggle(this.value);
|
|
6289
|
-
}
|
|
6290
|
-
else {
|
|
6291
|
-
this.optionSelectionService.select(this.value);
|
|
6292
|
-
}
|
|
6293
|
-
// As the popover stays open in multi-select mode now, we have to take focus back to the input
|
|
6294
|
-
// This way we achieve two things:
|
|
6295
|
-
// - do not lose focus
|
|
6296
|
-
// - we're still able to use onBlur for "outside-click" handling
|
|
6297
|
-
this.focusHandler.focusInput();
|
|
6298
|
-
}
|
|
6299
|
-
get focusClass() {
|
|
6300
|
-
return this.focusHandler.pseudoFocus.containsItem(this.optionProxy);
|
|
6301
|
-
}
|
|
6302
|
-
}
|
|
6303
|
-
ClrOption.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrOption, deps: [{ token: i0.ElementRef }, { token: ClrCommonStringsService }, { token: ComboboxFocusHandler }, { token: OptionSelectionService }, { token: UNIQUE_ID }], target: i0.ɵɵFactoryTarget.Component });
|
|
6304
|
-
ClrOption.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrOption, selector: "clr-option", inputs: { optionId: ["id", "optionId"], value: ["clrValue", "value"] }, host: { listeners: { "click": "onClick()" }, properties: { "class.clr-combobox-option": "true", "attr.role": "\"option\"", "attr.tabindex": "-1", "attr.id": "optionId", "class.active": "this.selected", "class.clr-focus": "this.focusClass" } }, providers: [UNIQUE_ID_PROVIDER], ngImport: i0, template: `
|
|
6305
|
-
<ng-content></ng-content>
|
|
6306
|
-
<span *ngIf="selected" class="clr-sr-only">{{ commonStrings.keys.comboboxSelected }}</span>
|
|
6307
|
-
`, isInline: true, directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
6308
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrOption, decorators: [{
|
|
6309
|
-
type: Component,
|
|
6310
|
-
args: [{
|
|
6311
|
-
selector: 'clr-option',
|
|
6312
|
-
template: `
|
|
6313
|
-
<ng-content></ng-content>
|
|
6314
|
-
<span *ngIf="selected" class="clr-sr-only">{{ commonStrings.keys.comboboxSelected }}</span>
|
|
6315
|
-
`,
|
|
6316
|
-
providers: [UNIQUE_ID_PROVIDER],
|
|
6317
|
-
host: {
|
|
6318
|
-
'[class.clr-combobox-option]': 'true',
|
|
6319
|
-
'[attr.role]': '"option"',
|
|
6320
|
-
// Do not remove. Or click-selection will not work.
|
|
6321
|
-
'[attr.tabindex]': '-1',
|
|
6322
|
-
'[attr.id]': 'optionId',
|
|
6323
|
-
},
|
|
6324
|
-
}]
|
|
6325
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: ClrCommonStringsService }, { type: ComboboxFocusHandler }, { type: OptionSelectionService }, { type: undefined, decorators: [{
|
|
6381
|
+
ClrPopoverPositionService,
|
|
6382
|
+
], host: {
|
|
6383
|
+
'[class.aria-required]': 'true',
|
|
6384
|
+
'[class.clr-combobox]': 'true',
|
|
6385
|
+
'[class.clr-combobox-disabled]': 'control?.disabled',
|
|
6386
|
+
}, template: "<!--\n* Copyright (c) 2016-2021 VMware, Inc. All Rights Reserved.\n* This software is released under MIT license.\n* The full license information can be found in LICENSE in the root directory of this project.\n-->\n\n<!-- The (click) handler is needed to auto-focus on input field which can not currently occupy the whole\n width of the component, after being wrapped to a new line -->\n<div\n class=\"clr-combobox-wrapper\"\n clrPopoverAnchor\n (click)=\"focusInput()\"\n [class.multi]=\"multiSelect\"\n [class.invalid]=\"invalid\"\n>\n <span\n *ngIf=\"multiSelect && optionSelectionService.selectionModel.model\"\n role=\"grid\"\n clrRovingTabindex\n [clrRovingTabindexDisabled]=\"control?.disabled\"\n clrDirection=\"both\"\n [attr.aria-label]=\"getSelectionAriaLabel()\"\n [attr.aria-disabled]=\"control?.disabled? true: null\"\n >\n <span *ngFor=\"let item of multiSelectModel; let i = index\" class=\"label label-combobox-pill\" role=\"row\">\n <span role=\"gridcell\">\n <span class=\"clr-combobox-pill-content\" clrKeyFocusItem>\n <ng-container\n *ngIf=\"optionSelected\"\n [ngTemplateOutlet]=\"optionSelected.template\"\n [ngTemplateOutletContext]=\"{$implicit: optionSelectionService.selectionModel.model[i]}\"\n ></ng-container>\n </span>\n </span>\n <span role=\"gridcell\">\n <button\n clrKeyFocusItem\n type=\"button\"\n class=\"clr-combobox-remove-btn\"\n [disabled]=\"control?.disabled? true: null\"\n [attr.aria-label]=\"commonStrings.keys.comboboxDelete + ' ' + optionSelectionService.selectionModel.toString(displayField, i)\"\n (click)=\"unselect(item)\"\n >\n <cds-icon shape=\"window-close\" size=\"12\"></cds-icon>\n </button>\n </span>\n </span>\n </span>\n\n <span class=\"clr-combobox-input-wrapper\" role=\"combobox\">\n <input\n #textboxInput\n type=\"text\"\n [id]=\"inputId()\"\n class=\"clr-input clr-combobox-input\"\n [(ngModel)]=\"searchText\"\n (blur)=\"onBlur()\"\n (focus)=\"onFocus()\"\n [attr.aria-expanded]=\"openState\"\n [attr.aria-owns]=\"ariaOwns\"\n aria-haspopup=\"listbox\"\n aria-autocomplete=\"list\"\n autocomplete=\"off\"\n [attr.aria-invalid]=\"control?.invalid? true: null\"\n [disabled]=\"control?.disabled? true: null\"\n [attr.aria-activedescendant]=\"getActiveDescendant()\"\n [attr.placeholder]=\"placeholder\"\n />\n </span>\n\n <!-- No click handler, as it uses the handler on the .clr-combobox-wrapper -->\n <button\n clrPopoverOpenCloseButton\n #trigger\n type=\"button\"\n class=\"clr-combobox-trigger\"\n tabindex=\"-1\"\n [disabled]=\"control?.disabled || null\"\n [attr.aria-label]=\"commonStrings.keys.comboboxOpen\"\n >\n <cds-icon shape=\"angle\" direction=\"down\" size=\"12\"></cds-icon>\n </button>\n\n <div class=\"clr-focus-indicator\" [class.clr-focus]=\"focused\"></div>\n</div>\n\n<!-- Both close handlers are handled manually due to issues in Edge browser.\n Additionally 'outsideClickToClose' has complex handling that's necessary\n to be manual due to the component architecture -->\n<div role=\"dialog\" *clrPopoverContent=\"openState at smartPosition; outsideClickToClose: false; scrollToClose: false\">\n <ng-content></ng-content>\n</div>\n" }]
|
|
6387
|
+
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.Injector }, { type: i1.NgControl, decorators: [{
|
|
6388
|
+
type: Self
|
|
6389
|
+
}, {
|
|
6390
|
+
type: Optional
|
|
6391
|
+
}] }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: OptionSelectionService }, { type: ClrCommonStringsService }, { type: ClrPopoverToggleService }, { type: ClrPopoverPositionService }, { type: IfControlStateService, decorators: [{
|
|
6392
|
+
type: Optional
|
|
6393
|
+
}] }, { type: ComboboxContainerService, decorators: [{
|
|
6394
|
+
type: Optional
|
|
6395
|
+
}] }, { type: undefined, decorators: [{
|
|
6326
6396
|
type: Inject,
|
|
6327
|
-
args: [
|
|
6328
|
-
}] }]; }, propDecorators: {
|
|
6397
|
+
args: [PLATFORM_ID]
|
|
6398
|
+
}] }, { type: ComboboxFocusHandler }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { textbox: [{
|
|
6399
|
+
type: ViewChild,
|
|
6400
|
+
args: ['textboxInput']
|
|
6401
|
+
}], trigger: [{
|
|
6402
|
+
type: ViewChild,
|
|
6403
|
+
args: ['trigger']
|
|
6404
|
+
}], optionSelected: [{
|
|
6405
|
+
type: ContentChild,
|
|
6406
|
+
args: [ClrOptionSelected]
|
|
6407
|
+
}], options: [{
|
|
6408
|
+
type: ContentChild,
|
|
6409
|
+
args: [ClrOptions]
|
|
6410
|
+
}], placeholder: [{
|
|
6329
6411
|
type: Input,
|
|
6330
|
-
args: ['
|
|
6331
|
-
}],
|
|
6412
|
+
args: ['placeholder']
|
|
6413
|
+
}], multiSelect: [{
|
|
6332
6414
|
type: Input,
|
|
6333
|
-
args: ['
|
|
6334
|
-
}],
|
|
6335
|
-
type: HostBinding,
|
|
6336
|
-
args: ['class.active']
|
|
6337
|
-
}], onClick: [{
|
|
6415
|
+
args: ['clrMulti']
|
|
6416
|
+
}], onKeyUp: [{
|
|
6338
6417
|
type: HostListener,
|
|
6339
|
-
args: ['
|
|
6340
|
-
}],
|
|
6341
|
-
type:
|
|
6342
|
-
args: ['
|
|
6418
|
+
args: ['keydown', ['$event']]
|
|
6419
|
+
}], clrInputChange: [{
|
|
6420
|
+
type: Output,
|
|
6421
|
+
args: ['clrInputChange']
|
|
6422
|
+
}], clrOpenChange: [{
|
|
6423
|
+
type: Output,
|
|
6424
|
+
args: ['clrOpenChange']
|
|
6425
|
+
}], clrSelectionChange: [{
|
|
6426
|
+
type: Output,
|
|
6427
|
+
args: ['clrSelectionChange']
|
|
6343
6428
|
}] } });
|
|
6344
6429
|
|
|
6345
6430
|
/*
|
|
@@ -6434,146 +6519,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
6434
6519
|
args: ['clrOptionItemsField']
|
|
6435
6520
|
}] } });
|
|
6436
6521
|
|
|
6437
|
-
/*
|
|
6438
|
-
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
6439
|
-
* This software is released under MIT license.
|
|
6440
|
-
* The full license information can be found in LICENSE in the root directory of this project.
|
|
6441
|
-
*/
|
|
6442
|
-
let nbOptionsComponents = 0;
|
|
6443
|
-
class ClrOptions {
|
|
6444
|
-
constructor(optionSelectionService, id, ariaService, el, commonStrings, focusHandler, toggleService, parentHost, document) {
|
|
6445
|
-
this.optionSelectionService = optionSelectionService;
|
|
6446
|
-
this.id = id;
|
|
6447
|
-
this.ariaService = ariaService;
|
|
6448
|
-
this.el = el;
|
|
6449
|
-
this.commonStrings = commonStrings;
|
|
6450
|
-
this.focusHandler = focusHandler;
|
|
6451
|
-
this.toggleService = toggleService;
|
|
6452
|
-
this.document = document;
|
|
6453
|
-
this.loading = false;
|
|
6454
|
-
this.subscriptions = [];
|
|
6455
|
-
if (!parentHost) {
|
|
6456
|
-
throw new Error('clr-options should only be used inside of a clr-combobox');
|
|
6457
|
-
}
|
|
6458
|
-
if (!this.optionsId) {
|
|
6459
|
-
this.optionsId = 'clr-options-' + nbOptionsComponents++;
|
|
6460
|
-
}
|
|
6461
|
-
}
|
|
6462
|
-
searchText(input) {
|
|
6463
|
-
return this.commonStrings.parse(this.commonStrings.keys.comboboxSearching, { INPUT: input });
|
|
6464
|
-
}
|
|
6465
|
-
/**
|
|
6466
|
-
* Tests if the list of options is empty, meaning it doesn't contain any items
|
|
6467
|
-
*/
|
|
6468
|
-
get emptyOptions() {
|
|
6469
|
-
return !this.optionSelectionService.loading && this.items.length === 0;
|
|
6470
|
-
}
|
|
6471
|
-
set optionsId(id) {
|
|
6472
|
-
this.ariaService.ariaControls = id;
|
|
6473
|
-
this.ariaService.ariaOwns = id;
|
|
6474
|
-
}
|
|
6475
|
-
get optionsId() {
|
|
6476
|
-
return this.ariaService.ariaControls;
|
|
6477
|
-
}
|
|
6478
|
-
set items(items) {
|
|
6479
|
-
this._items = items;
|
|
6480
|
-
this.focusHandler.addOptionValues(this._items.map(option => option.optionProxy));
|
|
6481
|
-
}
|
|
6482
|
-
get items() {
|
|
6483
|
-
return this._items;
|
|
6484
|
-
}
|
|
6485
|
-
loadingStateChange(state) {
|
|
6486
|
-
this.loading = state === ClrLoadingState.LOADING;
|
|
6487
|
-
}
|
|
6488
|
-
ngAfterViewInit() {
|
|
6489
|
-
this.focusHandler.listbox = this.el.nativeElement;
|
|
6490
|
-
this.subscriptions.push(fromEvent(this.document, 'scroll', { capture: true }).subscribe(event => {
|
|
6491
|
-
if (this.toggleService.open &&
|
|
6492
|
-
event.target !== this.el.nativeElement &&
|
|
6493
|
-
event.target !== this.focusHandler.textInput) {
|
|
6494
|
-
this.toggleService.open = false;
|
|
6495
|
-
}
|
|
6496
|
-
}), this.items.changes.subscribe(() => {
|
|
6497
|
-
setTimeout(() => {
|
|
6498
|
-
this.focusHandler.focusFirstActive();
|
|
6499
|
-
});
|
|
6500
|
-
}));
|
|
6501
|
-
}
|
|
6502
|
-
ngOnDestroy() {
|
|
6503
|
-
this.subscriptions.forEach(sub => sub.unsubscribe());
|
|
6504
|
-
}
|
|
6505
|
-
}
|
|
6506
|
-
ClrOptions.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrOptions, deps: [{ token: OptionSelectionService }, { token: IF_ACTIVE_ID }, { token: AriaService }, { token: i0.ElementRef }, { token: ClrCommonStringsService }, { token: ComboboxFocusHandler }, { token: ClrPopoverToggleService }, { token: POPOVER_HOST_ANCHOR, optional: true }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
|
|
6507
|
-
ClrOptions.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrOptions, selector: "clr-options", inputs: { optionsId: ["id", "optionsId"] }, host: { properties: { "class.clr-combobox-options": "true", "attr.role": "\"listbox\"", "id": "optionsId" } }, providers: [{ provide: LoadingListener, useExisting: ClrOptions }], queries: [{ propertyName: "items", predicate: ClrOption }], ngImport: i0, template: `
|
|
6508
|
-
<div *ngIf="optionSelectionService.loading" class="clr-combobox-options-loading">
|
|
6509
|
-
<clr-spinner clrInline>
|
|
6510
|
-
{{ commonStrings.keys.loading }}
|
|
6511
|
-
</clr-spinner>
|
|
6512
|
-
<span class="clr-combobox-options-text">
|
|
6513
|
-
{{ searchText(optionSelectionService.currentInput) }}
|
|
6514
|
-
</span>
|
|
6515
|
-
</div>
|
|
6516
|
-
|
|
6517
|
-
<!-- Rendered if data set is empty -->
|
|
6518
|
-
<div *ngIf="emptyOptions">
|
|
6519
|
-
<span class="clr-combobox-options-empty-text">
|
|
6520
|
-
{{ commonStrings.keys.comboboxNoResults }}
|
|
6521
|
-
</span>
|
|
6522
|
-
</div>
|
|
6523
|
-
|
|
6524
|
-
<!--Option Groups and Options will be projected here-->
|
|
6525
|
-
<ng-content></ng-content>
|
|
6526
|
-
`, isInline: true, components: [{ type: ClrSpinner, selector: "clr-spinner", inputs: ["clrInline", "clrInverse", "clrSmall", "clrMedium"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
6527
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrOptions, decorators: [{
|
|
6528
|
-
type: Component,
|
|
6529
|
-
args: [{
|
|
6530
|
-
selector: 'clr-options',
|
|
6531
|
-
template: `
|
|
6532
|
-
<div *ngIf="optionSelectionService.loading" class="clr-combobox-options-loading">
|
|
6533
|
-
<clr-spinner clrInline>
|
|
6534
|
-
{{ commonStrings.keys.loading }}
|
|
6535
|
-
</clr-spinner>
|
|
6536
|
-
<span class="clr-combobox-options-text">
|
|
6537
|
-
{{ searchText(optionSelectionService.currentInput) }}
|
|
6538
|
-
</span>
|
|
6539
|
-
</div>
|
|
6540
|
-
|
|
6541
|
-
<!-- Rendered if data set is empty -->
|
|
6542
|
-
<div *ngIf="emptyOptions">
|
|
6543
|
-
<span class="clr-combobox-options-empty-text">
|
|
6544
|
-
{{ commonStrings.keys.comboboxNoResults }}
|
|
6545
|
-
</span>
|
|
6546
|
-
</div>
|
|
6547
|
-
|
|
6548
|
-
<!--Option Groups and Options will be projected here-->
|
|
6549
|
-
<ng-content></ng-content>
|
|
6550
|
-
`,
|
|
6551
|
-
providers: [{ provide: LoadingListener, useExisting: ClrOptions }],
|
|
6552
|
-
host: {
|
|
6553
|
-
'[class.clr-combobox-options]': 'true',
|
|
6554
|
-
'[attr.role]': '"listbox"',
|
|
6555
|
-
'[id]': 'optionsId',
|
|
6556
|
-
},
|
|
6557
|
-
}]
|
|
6558
|
-
}], ctorParameters: function () { return [{ type: OptionSelectionService }, { type: undefined, decorators: [{
|
|
6559
|
-
type: Inject,
|
|
6560
|
-
args: [IF_ACTIVE_ID]
|
|
6561
|
-
}] }, { type: AriaService }, { type: i0.ElementRef }, { type: ClrCommonStringsService }, { type: ComboboxFocusHandler }, { type: ClrPopoverToggleService }, { type: i0.ElementRef, decorators: [{
|
|
6562
|
-
type: Optional
|
|
6563
|
-
}, {
|
|
6564
|
-
type: Inject,
|
|
6565
|
-
args: [POPOVER_HOST_ANCHOR]
|
|
6566
|
-
}] }, { type: undefined, decorators: [{
|
|
6567
|
-
type: Inject,
|
|
6568
|
-
args: [DOCUMENT]
|
|
6569
|
-
}] }]; }, propDecorators: { optionsId: [{
|
|
6570
|
-
type: Input,
|
|
6571
|
-
args: ['id']
|
|
6572
|
-
}], items: [{
|
|
6573
|
-
type: ContentChildren,
|
|
6574
|
-
args: [ClrOption]
|
|
6575
|
-
}] } });
|
|
6576
|
-
|
|
6577
6522
|
/*
|
|
6578
6523
|
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
6579
6524
|
* This software is released under MIT license.
|
|
@@ -8574,7 +8519,6 @@ class ClrYearpicker {
|
|
|
8574
8519
|
this.commonStrings = commonStrings;
|
|
8575
8520
|
this.yearRangeModel = new YearRangeModel(this.calendarYear);
|
|
8576
8521
|
this._focusedYear = this.calendarYear;
|
|
8577
|
-
this.updateRange(this.yearRangeModel);
|
|
8578
8522
|
}
|
|
8579
8523
|
/**
|
|
8580
8524
|
* Gets the year which the user is currently on.
|
|
@@ -8611,7 +8555,6 @@ class ClrYearpicker {
|
|
|
8611
8555
|
*/
|
|
8612
8556
|
previousDecade() {
|
|
8613
8557
|
this.yearRangeModel = this.yearRangeModel.previousDecade();
|
|
8614
|
-
this.updateRange(this.yearRangeModel);
|
|
8615
8558
|
// Year in the yearpicker is not focused because while navigating to a different decade,
|
|
8616
8559
|
// you want the focus to remain on the decade switcher arrows.
|
|
8617
8560
|
}
|
|
@@ -8623,14 +8566,12 @@ class ClrYearpicker {
|
|
|
8623
8566
|
this.yearRangeModel = this.yearRangeModel.currentDecade();
|
|
8624
8567
|
}
|
|
8625
8568
|
this._datepickerFocusService.focusCell(this._elRef);
|
|
8626
|
-
this.updateRange(this.yearRangeModel);
|
|
8627
8569
|
}
|
|
8628
8570
|
/**
|
|
8629
8571
|
* Updates the YearRangeModel to the next decade.
|
|
8630
8572
|
*/
|
|
8631
8573
|
nextDecade() {
|
|
8632
8574
|
this.yearRangeModel = this.yearRangeModel.nextDecade();
|
|
8633
|
-
this.updateRange(this.yearRangeModel);
|
|
8634
8575
|
// Year in the yearpicker is not focused because while navigating to a different decade,
|
|
8635
8576
|
// you want the focus to remain on the decade switcher arrows.
|
|
8636
8577
|
}
|
|
@@ -8675,11 +8616,6 @@ class ClrYearpicker {
|
|
|
8675
8616
|
}
|
|
8676
8617
|
}
|
|
8677
8618
|
}
|
|
8678
|
-
updateRange(yrm) {
|
|
8679
|
-
const floor = yrm.yearRange[0];
|
|
8680
|
-
const ceil = yrm.yearRange[yrm.yearRange.length - 1];
|
|
8681
|
-
this.decadeRange = `${floor} to ${ceil}`;
|
|
8682
|
-
}
|
|
8683
8619
|
/**
|
|
8684
8620
|
* Focuses on the current calendar year when the View is initialized.
|
|
8685
8621
|
*/
|
|
@@ -9398,6 +9334,42 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
9398
9334
|
args: ['disabled']
|
|
9399
9335
|
}] } });
|
|
9400
9336
|
|
|
9337
|
+
/*
|
|
9338
|
+
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
9339
|
+
* This software is released under MIT license.
|
|
9340
|
+
* The full license information can be found in LICENSE in the root directory of this project.
|
|
9341
|
+
*/
|
|
9342
|
+
class ClrDateInputValidator {
|
|
9343
|
+
constructor(dateIOService) {
|
|
9344
|
+
this.dateIOService = dateIOService;
|
|
9345
|
+
}
|
|
9346
|
+
validate(control) {
|
|
9347
|
+
if (this.dateIOService) {
|
|
9348
|
+
const value = this.dateIOService.getDateValueFromDateString(control.value);
|
|
9349
|
+
const minDate = this.dateIOService.disabledDates.minDate.toDate();
|
|
9350
|
+
const maxDate = this.dateIOService.disabledDates.maxDate.toDate();
|
|
9351
|
+
if (value && value < this.dateIOService.disabledDates.minDate.toDate()) {
|
|
9352
|
+
return { min: { min: minDate.toLocaleDateString(), actual: value.toLocaleDateString() } };
|
|
9353
|
+
}
|
|
9354
|
+
else if (value && value > this.dateIOService.disabledDates.maxDate.toDate()) {
|
|
9355
|
+
return { max: { max: maxDate.toLocaleDateString(), actual: value.toLocaleDateString() } };
|
|
9356
|
+
}
|
|
9357
|
+
}
|
|
9358
|
+
return null;
|
|
9359
|
+
}
|
|
9360
|
+
}
|
|
9361
|
+
ClrDateInputValidator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrDateInputValidator, deps: [{ token: DateIOService, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
9362
|
+
ClrDateInputValidator.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: ClrDateInputValidator, selector: "[clrDate]", providers: [{ provide: NG_VALIDATORS, useExisting: ClrDateInputValidator, multi: true }], ngImport: i0 });
|
|
9363
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrDateInputValidator, decorators: [{
|
|
9364
|
+
type: Directive,
|
|
9365
|
+
args: [{
|
|
9366
|
+
selector: '[clrDate]',
|
|
9367
|
+
providers: [{ provide: NG_VALIDATORS, useExisting: ClrDateInputValidator, multi: true }],
|
|
9368
|
+
}]
|
|
9369
|
+
}], ctorParameters: function () { return [{ type: DateIOService, decorators: [{
|
|
9370
|
+
type: Optional
|
|
9371
|
+
}] }]; } });
|
|
9372
|
+
|
|
9401
9373
|
/*
|
|
9402
9374
|
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
9403
9375
|
* This software is released under MIT license.
|
|
@@ -9407,6 +9379,7 @@ const CLR_DATEPICKER_DIRECTIVES = [
|
|
|
9407
9379
|
ClrDay,
|
|
9408
9380
|
ClrDateContainer,
|
|
9409
9381
|
ClrDateInput,
|
|
9382
|
+
ClrDateInputValidator,
|
|
9410
9383
|
ClrDatepickerViewManager,
|
|
9411
9384
|
ClrMonthpicker,
|
|
9412
9385
|
ClrYearpicker,
|
|
@@ -9422,6 +9395,7 @@ ClrDatepickerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", vers
|
|
|
9422
9395
|
ClrDatepickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrDatepickerModule, declarations: [ClrDay,
|
|
9423
9396
|
ClrDateContainer,
|
|
9424
9397
|
ClrDateInput,
|
|
9398
|
+
ClrDateInputValidator,
|
|
9425
9399
|
ClrDatepickerViewManager,
|
|
9426
9400
|
ClrMonthpicker,
|
|
9427
9401
|
ClrYearpicker,
|
|
@@ -9435,6 +9409,7 @@ ClrDatepickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", ver
|
|
|
9435
9409
|
ClrCommonFormsModule], exports: [ClrDay,
|
|
9436
9410
|
ClrDateContainer,
|
|
9437
9411
|
ClrDateInput,
|
|
9412
|
+
ClrDateInputValidator,
|
|
9438
9413
|
ClrDatepickerViewManager,
|
|
9439
9414
|
ClrMonthpicker,
|
|
9440
9415
|
ClrYearpicker,
|
|
@@ -12002,14 +11977,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
12002
11977
|
* since it can be anything (not just a text input).
|
|
12003
11978
|
*/
|
|
12004
11979
|
class ClrDatagridFilter extends DatagridFilterRegistrar {
|
|
12005
|
-
constructor(_filters, commonStrings, smartToggleService, platformId
|
|
11980
|
+
constructor(_filters, commonStrings, smartToggleService, platformId) {
|
|
12006
11981
|
super(_filters);
|
|
12007
11982
|
this.commonStrings = commonStrings;
|
|
12008
11983
|
this.smartToggleService = smartToggleService;
|
|
12009
11984
|
this.platformId = platformId;
|
|
12010
|
-
this.popoverId = popoverId;
|
|
12011
11985
|
this.subs = [];
|
|
12012
11986
|
this.ariaExpanded = false;
|
|
11987
|
+
this.popoverId = uniqueIdFactory();
|
|
12013
11988
|
// Smart Popover
|
|
12014
11989
|
this.smartPosition = {
|
|
12015
11990
|
axis: ClrAxis.VERTICAL,
|
|
@@ -12053,8 +12028,8 @@ class ClrDatagridFilter extends DatagridFilterRegistrar {
|
|
|
12053
12028
|
this.subs.forEach(sub => sub.unsubscribe());
|
|
12054
12029
|
}
|
|
12055
12030
|
}
|
|
12056
|
-
ClrDatagridFilter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrDatagridFilter, deps: [{ token: FiltersProvider }, { token: ClrCommonStringsService }, { token: ClrPopoverToggleService }, { token: PLATFORM_ID }
|
|
12057
|
-
ClrDatagridFilter.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrDatagridFilter, selector: "clr-dg-filter", inputs: { open: ["clrDgFilterOpen", "open"], customFilter: ["clrDgFilter", "customFilter"] }, outputs: { openChange: "clrDgFilterOpenChange" }, providers: [{ provide: CustomFilter, useExisting: ClrDatagridFilter }
|
|
12031
|
+
ClrDatagridFilter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrDatagridFilter, deps: [{ token: FiltersProvider }, { token: ClrCommonStringsService }, { token: ClrPopoverToggleService }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Component });
|
|
12032
|
+
ClrDatagridFilter.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrDatagridFilter, selector: "clr-dg-filter", inputs: { open: ["clrDgFilterOpen", "open"], customFilter: ["clrDgFilter", "customFilter"] }, outputs: { openChange: "clrDgFilterOpenChange" }, providers: [{ provide: CustomFilter, useExisting: ClrDatagridFilter }], viewQueries: [{ propertyName: "anchor", first: true, predicate: ["anchor"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: `
|
|
12058
12033
|
<button
|
|
12059
12034
|
class="datagrid-filter-toggle"
|
|
12060
12035
|
type="button"
|
|
@@ -12096,7 +12071,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
12096
12071
|
args: [{
|
|
12097
12072
|
selector: 'clr-dg-filter',
|
|
12098
12073
|
// We register this component as a CustomFilter, for the parent column to detect it.
|
|
12099
|
-
providers: [{ provide: CustomFilter, useExisting: ClrDatagridFilter }
|
|
12074
|
+
providers: [{ provide: CustomFilter, useExisting: ClrDatagridFilter }],
|
|
12100
12075
|
template: `
|
|
12101
12076
|
<button
|
|
12102
12077
|
class="datagrid-filter-toggle"
|
|
@@ -12138,9 +12113,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
12138
12113
|
}], ctorParameters: function () { return [{ type: FiltersProvider }, { type: ClrCommonStringsService }, { type: ClrPopoverToggleService }, { type: undefined, decorators: [{
|
|
12139
12114
|
type: Inject,
|
|
12140
12115
|
args: [PLATFORM_ID]
|
|
12141
|
-
}] }, { type: undefined, decorators: [{
|
|
12142
|
-
type: Inject,
|
|
12143
|
-
args: [UNIQUE_ID]
|
|
12144
12116
|
}] }]; }, propDecorators: { anchor: [{
|
|
12145
12117
|
type: ViewChild,
|
|
12146
12118
|
args: ['anchor', { read: ElementRef }]
|
|
@@ -13280,14 +13252,14 @@ const KEYBOARD_RESIZE_LENGTH = 12;
|
|
|
13280
13252
|
class ClrDatagridColumnSeparator {
|
|
13281
13253
|
// Every column draggable separator should have its own unique ID
|
|
13282
13254
|
// in order to not conflict with other draggables/droppables.
|
|
13283
|
-
constructor(columnResizerService, renderer, ngZone, tableSizeService, commonString, document
|
|
13255
|
+
constructor(columnResizerService, renderer, ngZone, tableSizeService, commonString, document) {
|
|
13284
13256
|
this.columnResizerService = columnResizerService;
|
|
13285
13257
|
this.renderer = renderer;
|
|
13286
13258
|
this.ngZone = ngZone;
|
|
13287
13259
|
this.tableSizeService = tableSizeService;
|
|
13288
13260
|
this.commonString = commonString;
|
|
13289
13261
|
this.document = document;
|
|
13290
|
-
this.columnSeparatorId =
|
|
13262
|
+
this.columnSeparatorId = uniqueIdFactory();
|
|
13291
13263
|
this.resizeStartedOnKeyDown = false;
|
|
13292
13264
|
this.unlisteners = [];
|
|
13293
13265
|
}
|
|
@@ -13373,8 +13345,8 @@ class ClrDatagridColumnSeparator {
|
|
|
13373
13345
|
this.unlisteners.forEach(unlistener => unlistener());
|
|
13374
13346
|
}
|
|
13375
13347
|
}
|
|
13376
|
-
ClrDatagridColumnSeparator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrDatagridColumnSeparator, deps: [{ token: ColumnResizerService }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: TableSizeService }, { token: ClrCommonStringsService }, { token: DOCUMENT }
|
|
13377
|
-
ClrDatagridColumnSeparator.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrDatagridColumnSeparator, selector: "clr-dg-column-separator", host: { properties: { "class.datagrid-column-separator": "true" } },
|
|
13348
|
+
ClrDatagridColumnSeparator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrDatagridColumnSeparator, deps: [{ token: ColumnResizerService }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: TableSizeService }, { token: ClrCommonStringsService }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
|
|
13349
|
+
ClrDatagridColumnSeparator.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrDatagridColumnSeparator, selector: "clr-dg-column-separator", host: { properties: { "class.datagrid-column-separator": "true" } }, viewQueries: [{ propertyName: "resizeTrackerRef", first: true, predicate: ["resizeTracker"], descendants: true }, { propertyName: "columnHandleRef", first: true, predicate: ["columnHandle"], descendants: true }], ngImport: i0, template: `
|
|
13378
13350
|
<button
|
|
13379
13351
|
type="button"
|
|
13380
13352
|
class="datagrid-column-handle"
|
|
@@ -13417,14 +13389,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
13417
13389
|
host: {
|
|
13418
13390
|
'[class.datagrid-column-separator]': 'true',
|
|
13419
13391
|
},
|
|
13420
|
-
providers: [UNIQUE_ID_PROVIDER],
|
|
13421
13392
|
}]
|
|
13422
13393
|
}], ctorParameters: function () { return [{ type: ColumnResizerService }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: TableSizeService }, { type: ClrCommonStringsService }, { type: undefined, decorators: [{
|
|
13423
13394
|
type: Inject,
|
|
13424
13395
|
args: [DOCUMENT]
|
|
13425
|
-
}] }, { type: undefined, decorators: [{
|
|
13426
|
-
type: Inject,
|
|
13427
|
-
args: [UNIQUE_ID]
|
|
13428
13396
|
}] }]; }, propDecorators: { resizeTrackerRef: [{
|
|
13429
13397
|
type: ViewChild,
|
|
13430
13398
|
args: ['resizeTracker']
|
|
@@ -14525,10 +14493,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
14525
14493
|
*/
|
|
14526
14494
|
let nbSelection = 0;
|
|
14527
14495
|
class Selection {
|
|
14528
|
-
constructor(_items, _filters
|
|
14496
|
+
constructor(_items, _filters) {
|
|
14529
14497
|
this._items = _items;
|
|
14530
14498
|
this._filters = _filters;
|
|
14531
|
-
this._zone = _zone;
|
|
14532
14499
|
this.preserveSelection = false;
|
|
14533
14500
|
this.prevSelectionRefs = []; // Refs of selected items
|
|
14534
14501
|
this.lockedRefs = []; // Ref of locked items
|
|
@@ -14883,11 +14850,11 @@ class Selection {
|
|
|
14883
14850
|
}
|
|
14884
14851
|
}
|
|
14885
14852
|
}
|
|
14886
|
-
Selection.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: Selection, deps: [{ token: Items }, { token: FiltersProvider }
|
|
14853
|
+
Selection.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: Selection, deps: [{ token: Items }, { token: FiltersProvider }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
14887
14854
|
Selection.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: Selection });
|
|
14888
14855
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: Selection, decorators: [{
|
|
14889
14856
|
type: Injectable
|
|
14890
|
-
}], ctorParameters: function () { return [{ type: Items }, { type: FiltersProvider }
|
|
14857
|
+
}], ctorParameters: function () { return [{ type: Items }, { type: FiltersProvider }]; } });
|
|
14891
14858
|
|
|
14892
14859
|
/*
|
|
14893
14860
|
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
@@ -15498,7 +15465,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
15498
15465
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
15499
15466
|
*/
|
|
15500
15467
|
class ClrDatagrid {
|
|
15501
|
-
constructor(organizer, items, expandableRows, selection, rowActionService, stateProvider, displayMode, renderer, detailService,
|
|
15468
|
+
constructor(organizer, items, expandableRows, selection, rowActionService, stateProvider, displayMode, renderer, detailService, document, el, page, commonStrings, columnsService, keyNavigation, zone) {
|
|
15502
15469
|
this.organizer = organizer;
|
|
15503
15470
|
this.items = items;
|
|
15504
15471
|
this.expandableRows = expandableRows;
|
|
@@ -15532,6 +15499,7 @@ class ClrDatagrid {
|
|
|
15532
15499
|
* Subscriptions to all the services and queries changes
|
|
15533
15500
|
*/
|
|
15534
15501
|
this._subscriptions = [];
|
|
15502
|
+
const datagridId = uniqueIdFactory();
|
|
15535
15503
|
this.selectAllId = 'clr-dg-select-all-' + datagridId;
|
|
15536
15504
|
this.detailService.id = datagridId;
|
|
15537
15505
|
}
|
|
@@ -15720,7 +15688,7 @@ class ClrDatagrid {
|
|
|
15720
15688
|
this.organizer.resize();
|
|
15721
15689
|
}
|
|
15722
15690
|
}
|
|
15723
|
-
ClrDatagrid.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrDatagrid, deps: [{ token: DatagridRenderOrganizer }, { token: Items }, { token: ExpandableRowsCount }, { token: Selection }, { token: RowActionService }, { token: StateProvider }, { token: DisplayModeService }, { token: i0.Renderer2 }, { token: DetailService }, { token:
|
|
15691
|
+
ClrDatagrid.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrDatagrid, deps: [{ token: DatagridRenderOrganizer }, { token: Items }, { token: ExpandableRowsCount }, { token: Selection }, { token: RowActionService }, { token: StateProvider }, { token: DisplayModeService }, { token: i0.Renderer2 }, { token: DetailService }, { token: DOCUMENT }, { token: i0.ElementRef }, { token: Page }, { token: ClrCommonStringsService }, { token: ColumnsService }, { token: KeyNavigationGridController }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
15724
15692
|
ClrDatagrid.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrDatagrid, selector: "clr-datagrid", inputs: { loading: ["clrDgLoading", "loading"], selected: ["clrDgSelected", "selected"], singleSelected: ["clrDgSingleSelected", "singleSelected"], clrDgSingleSelectionAriaLabel: "clrDgSingleSelectionAriaLabel", clrDgSingleActionableAriaLabel: "clrDgSingleActionableAriaLabel", clrDetailExpandableAriaLabel: "clrDetailExpandableAriaLabel", clrDgDisablePageFocus: "clrDgDisablePageFocus", clrDgPreserveSelection: "clrDgPreserveSelection", rowSelectionMode: ["clrDgRowSelection", "rowSelectionMode"] }, outputs: { refresh: "clrDgRefresh", selectedChanged: "clrDgSelectedChange", singleSelectedChanged: "clrDgSingleSelectedChange" }, host: { properties: { "class.datagrid-host": "true", "class.datagrid-detail-open": "detailService.isOpen" } }, providers: [
|
|
15725
15693
|
Selection,
|
|
15726
15694
|
Sort,
|
|
@@ -15732,7 +15700,6 @@ ClrDatagrid.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "
|
|
|
15732
15700
|
ExpandableRowsCount,
|
|
15733
15701
|
StateDebouncer,
|
|
15734
15702
|
DetailService,
|
|
15735
|
-
UNIQUE_ID_PROVIDER,
|
|
15736
15703
|
StateProvider,
|
|
15737
15704
|
TableSizeService,
|
|
15738
15705
|
ColumnsService,
|
|
@@ -15752,7 +15719,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
15752
15719
|
ExpandableRowsCount,
|
|
15753
15720
|
StateDebouncer,
|
|
15754
15721
|
DetailService,
|
|
15755
|
-
UNIQUE_ID_PROVIDER,
|
|
15756
15722
|
StateProvider,
|
|
15757
15723
|
TableSizeService,
|
|
15758
15724
|
ColumnsService,
|
|
@@ -15763,9 +15729,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
15763
15729
|
'[class.datagrid-detail-open]': 'detailService.isOpen',
|
|
15764
15730
|
}, template: "<!--\n ~ Copyright (c) 2016-2021 VMware, Inc. All Rights Reserved.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n\n<ng-content select=\"clr-dg-action-bar\"></ng-content>\n<div class=\"datagrid-outer-wrapper\">\n <div class=\"datagrid-inner-wrapper\">\n <div class=\"datagrid\" #datagrid [attr.aria-hidden]=\"detailService.isOpen ? true : null\">\n <div class=\"datagrid-table-wrapper\">\n <div role=\"grid\" class=\"datagrid-table\" tabindex=\"-1\" #datagridTable>\n <div role=\"rowgroup\" class=\"datagrid-header\">\n <div role=\"row\" class=\"datagrid-row\">\n <div class=\"datagrid-row-master datagrid-row-flex\">\n <div class=\"datagrid-row-sticky\">\n <!--header for datagrid where you can select multiple rows -->\n <div\n role=\"columnheader\"\n class=\"datagrid-column datagrid-select datagrid-fixed-column\"\n *ngIf=\"selection.selectionType === SELECTION_TYPE.Multi\"\n (keydown.space)=\"allSelected = !allSelected; $event.preventDefault()\"\n >\n <div class=\"clr-checkbox-wrapper\">\n <!-- We need to move focus and space-key handling to the parent because of keyboard arrow key navigation,\n which is not able to transfer focus directly on the input when focused with the tab key -->\n <input\n type=\"checkbox\"\n [id]=\"selectAllId\"\n [(ngModel)]=\"allSelected\"\n [attr.aria-label]=\"commonStrings.keys.selectAll\"\n tabindex=\"-1\"\n />\n <!-- Usage of class clr-col-null here prevents clr-col-* classes from being added when a datagrid is wrapped inside clrForm -->\n <label [for]=\"selectAllId\" class=\"clr-control-label clr-col-null\">\n <span class=\"clr-sr-only\">{{commonStrings.keys.selectAll}}</span>\n </label>\n </div>\n\n <div class=\"datagrid-column-separator\"></div>\n </div>\n <!-- header for datagrid where you can select one row only -->\n <div\n role=\"columnheader\"\n class=\"datagrid-column datagrid-select datagrid-fixed-column\"\n *ngIf=\"selection.selectionType === SELECTION_TYPE.Single\"\n [attr.aria-label]=\"clrDgSingleSelectionAriaLabel\"\n >\n <div class=\"datagrid-column-separator\"></div>\n </div>\n <!-- header for single row action; only displayType if we have at least one actionable row in datagrid -->\n <div\n role=\"columnheader\"\n class=\"datagrid-column datagrid-row-actions datagrid-fixed-column\"\n *ngIf=\"rowActionService.hasActionableRow\"\n [attr.aria-label]=\"clrDgSingleActionableAriaLabel\"\n >\n <div class=\"datagrid-column-separator\"></div>\n </div>\n <!-- header for carets; only displayType if we have at least one expandable row in datagrid -->\n <div\n role=\"columnheader\"\n class=\"datagrid-column datagrid-expandable-caret datagrid-fixed-column\"\n *ngIf=\"expandableRows.hasExpandableRow || detailService.enabled\"\n [attr.aria-label]=\"clrDetailExpandableAriaLabel\"\n >\n <div class=\"datagrid-column-separator\"></div>\n </div>\n </div>\n <div class=\"datagrid-row-scrollable\">\n <ng-container #projectedDisplayColumns></ng-container>\n </div>\n </div>\n </div>\n </div>\n <ng-container #displayedRows></ng-container>\n <!-- Custom placeholder overrides the default empty one -->\n <ng-content select=\"clr-dg-placeholder\"></ng-content>\n <clr-dg-placeholder *ngIf=\"!placeholder\"></clr-dg-placeholder>\n </div>\n </div>\n </div>\n <ng-content select=\"clr-dg-footer\"></ng-content>\n <div class=\"datagrid-spinner\" *ngIf=\"loading\">\n <clr-spinner clrMedium>Loading</clr-spinner>\n </div>\n </div>\n <ng-content select=\"[clrIfDetail],clr-dg-detail\"></ng-content>\n</div>\n\n<div class=\"datagrid-calculation-table\">\n <div class=\"datagrid-calculation-header\">\n <ng-container #projectedCalculationColumns></ng-container>\n </div>\n <ng-container #calculationRows></ng-container>\n</div>\n" }]
|
|
15765
15731
|
}], ctorParameters: function () { return [{ type: DatagridRenderOrganizer }, { type: Items }, { type: ExpandableRowsCount }, { type: Selection }, { type: RowActionService }, { type: StateProvider }, { type: DisplayModeService }, { type: i0.Renderer2 }, { type: DetailService }, { type: undefined, decorators: [{
|
|
15766
|
-
type: Inject,
|
|
15767
|
-
args: [UNIQUE_ID]
|
|
15768
|
-
}] }, { type: undefined, decorators: [{
|
|
15769
15732
|
type: Inject,
|
|
15770
15733
|
args: [DOCUMENT]
|
|
15771
15734
|
}] }, { type: i0.ElementRef }, { type: Page }, { type: ClrCommonStringsService }, { type: ColumnsService }, { type: KeyNavigationGridController }, { type: i0.NgZone }]; }, propDecorators: { loading: [{
|
|
@@ -15862,13 +15825,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
15862
15825
|
*/
|
|
15863
15826
|
let clrDgActionId = 0;
|
|
15864
15827
|
class ClrDatagridActionOverflow {
|
|
15865
|
-
constructor(rowActionService, commonStrings, platformId, zone, smartToggleService
|
|
15828
|
+
constructor(rowActionService, commonStrings, platformId, zone, smartToggleService) {
|
|
15866
15829
|
this.rowActionService = rowActionService;
|
|
15867
15830
|
this.commonStrings = commonStrings;
|
|
15868
15831
|
this.platformId = platformId;
|
|
15869
15832
|
this.zone = zone;
|
|
15870
15833
|
this.smartToggleService = smartToggleService;
|
|
15871
|
-
this.popoverId = popoverId;
|
|
15872
15834
|
this.subscriptions = [];
|
|
15873
15835
|
this.smartPosition = {
|
|
15874
15836
|
axis: ClrAxis.HORIZONTAL,
|
|
@@ -15876,6 +15838,7 @@ class ClrDatagridActionOverflow {
|
|
|
15876
15838
|
anchor: ClrAlignment.CENTER,
|
|
15877
15839
|
content: ClrAlignment.CENTER,
|
|
15878
15840
|
};
|
|
15841
|
+
this.popoverId = uniqueIdFactory();
|
|
15879
15842
|
this._open = false;
|
|
15880
15843
|
this.openChange = new EventEmitter(false);
|
|
15881
15844
|
this.rowActionService.register();
|
|
@@ -15921,8 +15884,8 @@ class ClrDatagridActionOverflow {
|
|
|
15921
15884
|
}
|
|
15922
15885
|
}
|
|
15923
15886
|
}
|
|
15924
|
-
ClrDatagridActionOverflow.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrDatagridActionOverflow, deps: [{ token: RowActionService }, { token: ClrCommonStringsService }, { token: PLATFORM_ID }, { token: i0.NgZone }, { token: ClrPopoverToggleService }
|
|
15925
|
-
ClrDatagridActionOverflow.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrDatagridActionOverflow, selector: "clr-dg-action-overflow", inputs: { open: ["clrDgActionOverflowOpen", "open"] }, outputs: { openChange: "clrDgActionOverflowOpenChange" }, providers: [
|
|
15887
|
+
ClrDatagridActionOverflow.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrDatagridActionOverflow, deps: [{ token: RowActionService }, { token: ClrCommonStringsService }, { token: PLATFORM_ID }, { token: i0.NgZone }, { token: ClrPopoverToggleService }], target: i0.ɵɵFactoryTarget.Component });
|
|
15888
|
+
ClrDatagridActionOverflow.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrDatagridActionOverflow, selector: "clr-dg-action-overflow", inputs: { open: ["clrDgActionOverflowOpen", "open"] }, outputs: { openChange: "clrDgActionOverflowOpenChange" }, providers: [ClrPopoverToggleService, ClrPopoverEventsService, ClrPopoverPositionService], viewQueries: [{ propertyName: "keyFocus", first: true, predicate: ClrKeyFocus, descendants: true }], ngImport: i0, template: `
|
|
15926
15889
|
<button
|
|
15927
15890
|
class="datagrid-action-toggle"
|
|
15928
15891
|
type="button"
|
|
@@ -15955,7 +15918,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
15955
15918
|
type: Component,
|
|
15956
15919
|
args: [{
|
|
15957
15920
|
selector: 'clr-dg-action-overflow',
|
|
15958
|
-
providers: [
|
|
15921
|
+
providers: [ClrPopoverToggleService, ClrPopoverEventsService, ClrPopoverPositionService],
|
|
15959
15922
|
template: `
|
|
15960
15923
|
<button
|
|
15961
15924
|
class="datagrid-action-toggle"
|
|
@@ -15989,10 +15952,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
15989
15952
|
}], ctorParameters: function () { return [{ type: RowActionService }, { type: ClrCommonStringsService }, { type: undefined, decorators: [{
|
|
15990
15953
|
type: Inject,
|
|
15991
15954
|
args: [PLATFORM_ID]
|
|
15992
|
-
}] }, { type: i0.NgZone }, { type: ClrPopoverToggleService },
|
|
15993
|
-
type: Inject,
|
|
15994
|
-
args: [UNIQUE_ID]
|
|
15995
|
-
}] }]; }, propDecorators: { keyFocus: [{
|
|
15955
|
+
}] }, { type: i0.NgZone }, { type: ClrPopoverToggleService }]; }, propDecorators: { keyFocus: [{
|
|
15996
15956
|
type: ViewChild,
|
|
15997
15957
|
args: [ClrKeyFocus]
|
|
15998
15958
|
}], open: [{
|
|
@@ -16116,14 +16076,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
16116
16076
|
*/
|
|
16117
16077
|
/** @deprecated since 2.0, remove in 3.0 */
|
|
16118
16078
|
class ClrDatagridColumnToggle {
|
|
16119
|
-
constructor(commonStrings, columnsService,
|
|
16079
|
+
constructor(commonStrings, columnsService, popoverToggleService) {
|
|
16120
16080
|
this.commonStrings = commonStrings;
|
|
16121
16081
|
this.columnsService = columnsService;
|
|
16122
|
-
this.
|
|
16123
|
-
this.platformId = platformId;
|
|
16124
|
-
this.zone = zone;
|
|
16125
|
-
this.popoverId = popoverId;
|
|
16126
|
-
this.popoverToggleService = popoverToggleService;
|
|
16082
|
+
this.popoverId = uniqueIdFactory();
|
|
16127
16083
|
// Smart Popover
|
|
16128
16084
|
this.smartPosition = {
|
|
16129
16085
|
axis: ClrAxis.VERTICAL,
|
|
@@ -16170,8 +16126,8 @@ class ClrDatagridColumnToggle {
|
|
|
16170
16126
|
return index;
|
|
16171
16127
|
}
|
|
16172
16128
|
}
|
|
16173
|
-
ClrDatagridColumnToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrDatagridColumnToggle, deps: [{ token: ClrCommonStringsService }, { token: ColumnsService }, { token:
|
|
16174
|
-
ClrDatagridColumnToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrDatagridColumnToggle, selector: "clr-dg-column-toggle", host: { properties: { "class.column-switch-wrapper": "true", "class.active": "openState" } }, providers: [
|
|
16129
|
+
ClrDatagridColumnToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrDatagridColumnToggle, deps: [{ token: ClrCommonStringsService }, { token: ColumnsService }, { token: ClrPopoverToggleService }], target: i0.ɵɵFactoryTarget.Component });
|
|
16130
|
+
ClrDatagridColumnToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrDatagridColumnToggle, selector: "clr-dg-column-toggle", host: { properties: { "class.column-switch-wrapper": "true", "class.active": "openState" } }, providers: [ClrPopoverEventsService, ClrPopoverPositionService, ClrPopoverToggleService], queries: [{ propertyName: "customToggleTitle", first: true, predicate: ClrDatagridColumnToggleTitle, descendants: true }, { propertyName: "customToggleButton", first: true, predicate: ClrDatagridColumnToggleButton, descendants: true }], viewQueries: [{ propertyName: "allSelectedElement", first: true, predicate: ["allSelected"], descendants: true, read: ElementRef }], ngImport: i0, template: `
|
|
16175
16131
|
<button
|
|
16176
16132
|
role="button"
|
|
16177
16133
|
type="button"
|
|
@@ -16300,18 +16256,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
16300
16256
|
</div>
|
|
16301
16257
|
`,
|
|
16302
16258
|
host: { '[class.column-switch-wrapper]': 'true', '[class.active]': 'openState' },
|
|
16303
|
-
providers: [
|
|
16259
|
+
providers: [ClrPopoverEventsService, ClrPopoverPositionService, ClrPopoverToggleService],
|
|
16304
16260
|
}]
|
|
16305
|
-
}], ctorParameters: function () { return [{ type: ClrCommonStringsService }, { type: ColumnsService }, { type:
|
|
16306
|
-
type: Inject,
|
|
16307
|
-
args: [UNIQUE_ID]
|
|
16308
|
-
}] }, { type: undefined, decorators: [{
|
|
16309
|
-
type: Inject,
|
|
16310
|
-
args: [PLATFORM_ID]
|
|
16311
|
-
}] }, { type: i0.NgZone }, { type: undefined, decorators: [{
|
|
16312
|
-
type: Inject,
|
|
16313
|
-
args: [UNIQUE_ID]
|
|
16314
|
-
}] }, { type: ClrPopoverToggleService }]; }, propDecorators: { customToggleTitle: [{
|
|
16261
|
+
}], ctorParameters: function () { return [{ type: ClrCommonStringsService }, { type: ColumnsService }, { type: ClrPopoverToggleService }]; }, propDecorators: { customToggleTitle: [{
|
|
16315
16262
|
type: ContentChild,
|
|
16316
16263
|
args: [ClrDatagridColumnToggleTitle]
|
|
16317
16264
|
}], customToggleButton: [{
|
|
@@ -18408,8 +18355,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
18408
18355
|
}]
|
|
18409
18356
|
}] });
|
|
18410
18357
|
class ClrStackViewLabel {
|
|
18411
|
-
constructor(
|
|
18412
|
-
this.uniqueId = uniqueId;
|
|
18358
|
+
constructor() {
|
|
18413
18359
|
this._generatedId = null;
|
|
18414
18360
|
this._id = null;
|
|
18415
18361
|
}
|
|
@@ -18425,28 +18371,24 @@ class ClrStackViewLabel {
|
|
|
18425
18371
|
return this._id;
|
|
18426
18372
|
}
|
|
18427
18373
|
ngOnInit() {
|
|
18428
|
-
this._generatedId = 'clr-stack-label-' +
|
|
18374
|
+
this._generatedId = 'clr-stack-label-' + uniqueIdFactory();
|
|
18429
18375
|
if (!this.id) {
|
|
18430
18376
|
this._id = this._generatedId + '';
|
|
18431
18377
|
}
|
|
18432
18378
|
}
|
|
18433
18379
|
}
|
|
18434
|
-
ClrStackViewLabel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStackViewLabel, deps: [
|
|
18435
|
-
ClrStackViewLabel.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrStackViewLabel, selector: "clr-stack-label", inputs: { id: "id" }, host: { properties: { "attr.id": "id" } },
|
|
18380
|
+
ClrStackViewLabel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStackViewLabel, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
18381
|
+
ClrStackViewLabel.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrStackViewLabel, selector: "clr-stack-label", inputs: { id: "id" }, host: { properties: { "attr.id": "id" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true });
|
|
18436
18382
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStackViewLabel, decorators: [{
|
|
18437
18383
|
type: Component,
|
|
18438
18384
|
args: [{
|
|
18439
18385
|
selector: 'clr-stack-label',
|
|
18440
18386
|
template: '<ng-content></ng-content>',
|
|
18441
|
-
providers: [UNIQUE_ID_PROVIDER],
|
|
18442
18387
|
host: {
|
|
18443
18388
|
'[attr.id]': 'id',
|
|
18444
18389
|
},
|
|
18445
18390
|
}]
|
|
18446
|
-
}],
|
|
18447
|
-
type: Inject,
|
|
18448
|
-
args: [UNIQUE_ID]
|
|
18449
|
-
}] }]; }, propDecorators: { id: [{
|
|
18391
|
+
}], propDecorators: { id: [{
|
|
18450
18392
|
type: Input
|
|
18451
18393
|
}] } });
|
|
18452
18394
|
|
|
@@ -18461,9 +18403,8 @@ class ClrStackBlock {
|
|
|
18461
18403
|
* querying for children StackBlocks, but this feature is not available when downgrading
|
|
18462
18404
|
* the component for Angular 1.
|
|
18463
18405
|
*/
|
|
18464
|
-
constructor(parent,
|
|
18406
|
+
constructor(parent, commonStrings) {
|
|
18465
18407
|
this.parent = parent;
|
|
18466
|
-
this.uniqueId = uniqueId;
|
|
18467
18408
|
this.commonStrings = commonStrings;
|
|
18468
18409
|
this.expanded = false;
|
|
18469
18410
|
this.expandedChange = new EventEmitter(false);
|
|
@@ -18472,6 +18413,7 @@ class ClrStackBlock {
|
|
|
18472
18413
|
this._changedChildren = 0;
|
|
18473
18414
|
this._fullyInitialized = false;
|
|
18474
18415
|
this._changed = false;
|
|
18416
|
+
this.uniqueId = uniqueIdFactory();
|
|
18475
18417
|
if (parent) {
|
|
18476
18418
|
parent.addChild();
|
|
18477
18419
|
}
|
|
@@ -18537,8 +18479,8 @@ class ClrStackBlock {
|
|
|
18537
18479
|
return this.expanded ? `clr-stack-children-${this.uniqueId}` : null;
|
|
18538
18480
|
}
|
|
18539
18481
|
}
|
|
18540
|
-
ClrStackBlock.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStackBlock, deps: [{ token: ClrStackBlock, optional: true, skipSelf: true }, { token:
|
|
18541
|
-
ClrStackBlock.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrStackBlock, selector: "clr-stack-block", inputs: { expanded: ["clrSbExpanded", "expanded"], expandable: ["clrSbExpandable", "expandable"], setChangedValue: ["clrSbNotifyChange", "setChangedValue"], ariaLevel: ["clrStackViewLevel", "ariaLevel"], ariaSetsize: ["clrStackViewSetsize", "ariaSetsize"], ariaPosinset: ["clrStackViewPosinset", "ariaPosinset"] }, outputs: { expandedChange: "clrSbExpandedChange" }, host: { properties: { "class.stack-block": "true", "attr.role": "\"heading\"", "attr.aria-level": "headingLevel", "class.stack-block-expanded": "this.expanded", "class.stack-block-expandable": "this.expandable", "class.stack-block-changed": "this.getChangedValue", "class.on-focus": "this.onStackLabelFocus" } },
|
|
18482
|
+
ClrStackBlock.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStackBlock, deps: [{ token: ClrStackBlock, optional: true, skipSelf: true }, { token: ClrCommonStringsService }], target: i0.ɵɵFactoryTarget.Component });
|
|
18483
|
+
ClrStackBlock.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrStackBlock, selector: "clr-stack-block", inputs: { expanded: ["clrSbExpanded", "expanded"], expandable: ["clrSbExpandable", "expandable"], setChangedValue: ["clrSbNotifyChange", "setChangedValue"], ariaLevel: ["clrStackViewLevel", "ariaLevel"], ariaSetsize: ["clrStackViewSetsize", "ariaSetsize"], ariaPosinset: ["clrStackViewPosinset", "ariaPosinset"] }, outputs: { expandedChange: "clrSbExpandedChange" }, host: { properties: { "class.stack-block": "true", "attr.role": "\"heading\"", "attr.aria-level": "headingLevel", "class.stack-block-expanded": "this.expanded", "class.stack-block-expandable": "this.expandable", "class.stack-block-changed": "this.getChangedValue", "class.on-focus": "this.onStackLabelFocus" } }, queries: [{ propertyName: "stackBlockTitle", first: true, predicate: ClrStackViewLabel, descendants: true }], ngImport: i0, template: `
|
|
18542
18484
|
<!-- The 'preventDefault' for the space keydown event prevents the page
|
|
18543
18485
|
from scrolling when a stack block is toggled via the space key. -->
|
|
18544
18486
|
<div
|
|
@@ -18638,15 +18580,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
18638
18580
|
'[attr.role]': '"heading"',
|
|
18639
18581
|
'[attr.aria-level]': 'headingLevel',
|
|
18640
18582
|
},
|
|
18641
|
-
providers: [UNIQUE_ID_PROVIDER],
|
|
18642
18583
|
}]
|
|
18643
18584
|
}], ctorParameters: function () { return [{ type: ClrStackBlock, decorators: [{
|
|
18644
18585
|
type: SkipSelf
|
|
18645
18586
|
}, {
|
|
18646
18587
|
type: Optional
|
|
18647
|
-
}] }, { type: undefined, decorators: [{
|
|
18648
|
-
type: Inject,
|
|
18649
|
-
args: [UNIQUE_ID]
|
|
18650
18588
|
}] }, { type: ClrCommonStringsService }]; }, propDecorators: { expanded: [{
|
|
18651
18589
|
type: HostBinding,
|
|
18652
18590
|
args: ['class.stack-block-expanded']
|
|
@@ -18691,11 +18629,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
18691
18629
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
18692
18630
|
*/
|
|
18693
18631
|
class ClrStackContentInput {
|
|
18694
|
-
constructor(
|
|
18695
|
-
this.uniqueId =
|
|
18632
|
+
constructor() {
|
|
18633
|
+
this.uniqueId = uniqueIdFactory();
|
|
18696
18634
|
}
|
|
18697
18635
|
}
|
|
18698
|
-
ClrStackContentInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStackContentInput, deps: [
|
|
18636
|
+
ClrStackContentInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStackContentInput, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
18699
18637
|
ClrStackContentInput.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: ClrStackContentInput, selector: "[clrStackInput]", host: { properties: { "class.clr-input": "true", "attr.aria-labelledby": "uniqueId" } }, ngImport: i0 });
|
|
18700
18638
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStackContentInput, decorators: [{
|
|
18701
18639
|
type: Directive,
|
|
@@ -18706,10 +18644,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
18706
18644
|
'[attr.aria-labelledby]': 'uniqueId',
|
|
18707
18645
|
},
|
|
18708
18646
|
}]
|
|
18709
|
-
}]
|
|
18710
|
-
type: Inject,
|
|
18711
|
-
args: [UNIQUE_ID]
|
|
18712
|
-
}] }]; } });
|
|
18647
|
+
}] });
|
|
18713
18648
|
|
|
18714
18649
|
/*
|
|
18715
18650
|
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
@@ -19594,8 +19529,7 @@ const LVIEW_CONTEXT_INDEX = 8;
|
|
|
19594
19529
|
// then those keys are sent together in one request.
|
|
19595
19530
|
const TREE_TYPE_AHEAD_TIMEOUT = 200;
|
|
19596
19531
|
class ClrTreeNode {
|
|
19597
|
-
constructor(
|
|
19598
|
-
this.nodeId = nodeId;
|
|
19532
|
+
constructor(platformId, parent, forTypeAheadProvider, featuresService, expandService, commonStrings, focusManager, injector) {
|
|
19599
19533
|
this.platformId = platformId;
|
|
19600
19534
|
this.forTypeAheadProvider = forTypeAheadProvider;
|
|
19601
19535
|
this.featuresService = featuresService;
|
|
@@ -19605,6 +19539,7 @@ class ClrTreeNode {
|
|
|
19605
19539
|
this.STATES = ClrSelectedState;
|
|
19606
19540
|
this.skipEmitChange = false;
|
|
19607
19541
|
this.isModelLoading = false;
|
|
19542
|
+
this.nodeId = uniqueIdFactory();
|
|
19608
19543
|
this.typeAheadKeyEvent = new Subject();
|
|
19609
19544
|
this.typeAheadKeyBuffer = '';
|
|
19610
19545
|
this.selectedChange = new EventEmitter(false);
|
|
@@ -19819,13 +19754,8 @@ class ClrTreeNode {
|
|
|
19819
19754
|
}
|
|
19820
19755
|
}
|
|
19821
19756
|
}
|
|
19822
|
-
ClrTreeNode.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTreeNode, deps: [{ token:
|
|
19823
|
-
ClrTreeNode.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrTreeNode, selector: "clr-tree-node", inputs: { selected: ["clrSelected", "selected"], expandable: ["clrExpandable", "expandable"], expanded: ["clrExpanded", "expanded"] }, outputs: { selectedChange: "clrSelectedChange", expandedChange: "clrExpandedChange" }, host: { properties: { "class.clr-tree-node": "true" } }, providers: [
|
|
19824
|
-
UNIQUE_ID_PROVIDER,
|
|
19825
|
-
TREE_FEATURES_PROVIDER,
|
|
19826
|
-
IfExpandService,
|
|
19827
|
-
{ provide: LoadingListener, useExisting: IfExpandService },
|
|
19828
|
-
], queries: [{ propertyName: "treeNodeLinkList", predicate: ClrTreeNodeLink }], viewQueries: [{ propertyName: "contentContainer", first: true, predicate: ["contentContainer"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<!--\n ~ Copyright (c) 2016-2021 VMware, Inc. All Rights Reserved.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n\n<div\n #contentContainer\n role=\"treeitem\"\n class=\"clr-tree-node-content-container\"\n tabindex=\"-1\"\n [attr.aria-expanded]=\"isExpandable() ? expanded : null\"\n [attr.aria-selected]=\"ariaSelected\"\n (keydown)=\"onKeyDown($event)\"\n (focus)=\"broadcastFocusOnContainer()\"\n>\n <button\n *ngIf=\"isExpandable() && !isModelLoading && !expandService.loading\"\n aria-hidden=\"true\"\n type=\"button\"\n tabindex=\"-1\"\n class=\"clr-treenode-caret\"\n (click)=\"expandService.toggle();\"\n (focus)=\"focusTreeNode()\"\n >\n <cds-icon\n class=\"clr-treenode-caret-icon\"\n shape=\"angle\"\n [attr.direction]=\"expandService.expanded ? 'down' : 'right'\"\n ></cds-icon>\n </button>\n <div class=\"clr-treenode-spinner-container\" *ngIf=\"expandService.loading || isModelLoading\">\n <span class=\"clr-treenode-spinner spinner\"></span>\n </div>\n <div class=\"clr-checkbox-wrapper clr-treenode-checkbox\" *ngIf=\"featuresService.selectable\">\n <input\n aria-hidden=\"true\"\n type=\"checkbox\"\n id=\"{{nodeId}}-check\"\n class=\"clr-checkbox\"\n [checked]=\"_model.selected.value === STATES.SELECTED\"\n [indeterminate]=\"_model.selected.value === STATES.INDETERMINATE\"\n (change)=\"_model.toggleSelection(featuresService.eager)\"\n (focus)=\"focusTreeNode()\"\n tabindex=\"-1\"\n />\n <label for=\"{{nodeId}}-check\" class=\"clr-control-label\"></label>\n </div>\n <div class=\"clr-treenode-content\" (mousedown)=\"focusTreeNode()\">\n <ng-content></ng-content>\n <div class=\"clr-sr-only\" *ngIf=\"featuresService.selectable\">\n <span *ngIf=\"ariaSelected\">selected</span>\n <span *ngIf=\"!ariaSelected\">unselected</span>\n </div>\n </div>\n</div>\n<div\n class=\"clr-treenode-children\"\n [@toggleChildrenAnim]=\"expandService.expanded ? 'expanded' : 'collapsed'\"\n [attr.role]=\"isExpandable() && !featuresService.recursion ? 'group' : null\"\n>\n <ng-content select=\"clr-tree-node\"></ng-content>\n <ng-content select=\"[clrIfExpanded]\"></ng-content>\n <clr-recursive-children [parent]=\"_model\"></clr-recursive-children>\n</div>\n", components: [{ type: RecursiveChildren, selector: "clr-recursive-children", inputs: ["parent", "children"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: CdsIconCustomTag, selector: "cds-icon" }], animations: [
|
|
19757
|
+
ClrTreeNode.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTreeNode, deps: [{ token: PLATFORM_ID }, { token: ClrTreeNode, optional: true, skipSelf: true }, { token: ForTypeAheadProvider, optional: true, self: true }, { token: TreeFeaturesService }, { token: IfExpandService }, { token: ClrCommonStringsService }, { token: TreeFocusManagerService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
19758
|
+
ClrTreeNode.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrTreeNode, selector: "clr-tree-node", inputs: { selected: ["clrSelected", "selected"], expandable: ["clrExpandable", "expandable"], expanded: ["clrExpanded", "expanded"] }, outputs: { selectedChange: "clrSelectedChange", expandedChange: "clrExpandedChange" }, host: { properties: { "class.clr-tree-node": "true" } }, providers: [TREE_FEATURES_PROVIDER, IfExpandService, { provide: LoadingListener, useExisting: IfExpandService }], queries: [{ propertyName: "treeNodeLinkList", predicate: ClrTreeNodeLink }], viewQueries: [{ propertyName: "contentContainer", first: true, predicate: ["contentContainer"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<!--\n ~ Copyright (c) 2016-2021 VMware, Inc. All Rights Reserved.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n\n<div\n #contentContainer\n role=\"treeitem\"\n class=\"clr-tree-node-content-container\"\n tabindex=\"-1\"\n [attr.aria-expanded]=\"isExpandable() ? expanded : null\"\n [attr.aria-selected]=\"ariaSelected\"\n (keydown)=\"onKeyDown($event)\"\n (focus)=\"broadcastFocusOnContainer()\"\n>\n <button\n *ngIf=\"isExpandable() && !isModelLoading && !expandService.loading\"\n aria-hidden=\"true\"\n type=\"button\"\n tabindex=\"-1\"\n class=\"clr-treenode-caret\"\n (click)=\"expandService.toggle();\"\n (focus)=\"focusTreeNode()\"\n >\n <cds-icon\n class=\"clr-treenode-caret-icon\"\n shape=\"angle\"\n [attr.direction]=\"expandService.expanded ? 'down' : 'right'\"\n ></cds-icon>\n </button>\n <div class=\"clr-treenode-spinner-container\" *ngIf=\"expandService.loading || isModelLoading\">\n <span class=\"clr-treenode-spinner spinner\"></span>\n </div>\n <div class=\"clr-checkbox-wrapper clr-treenode-checkbox\" *ngIf=\"featuresService.selectable\">\n <input\n aria-hidden=\"true\"\n type=\"checkbox\"\n id=\"{{nodeId}}-check\"\n class=\"clr-checkbox\"\n [checked]=\"_model.selected.value === STATES.SELECTED\"\n [indeterminate]=\"_model.selected.value === STATES.INDETERMINATE\"\n (change)=\"_model.toggleSelection(featuresService.eager)\"\n (focus)=\"focusTreeNode()\"\n tabindex=\"-1\"\n />\n <label for=\"{{nodeId}}-check\" class=\"clr-control-label\"></label>\n </div>\n <div class=\"clr-treenode-content\" (mousedown)=\"focusTreeNode()\">\n <ng-content></ng-content>\n <div class=\"clr-sr-only\" *ngIf=\"featuresService.selectable\">\n <span *ngIf=\"ariaSelected\">selected</span>\n <span *ngIf=\"!ariaSelected\">unselected</span>\n </div>\n </div>\n</div>\n<div\n class=\"clr-treenode-children\"\n [@toggleChildrenAnim]=\"expandService.expanded ? 'expanded' : 'collapsed'\"\n [attr.role]=\"isExpandable() && !featuresService.recursion ? 'group' : null\"\n>\n <ng-content select=\"clr-tree-node\"></ng-content>\n <ng-content select=\"[clrIfExpanded]\"></ng-content>\n <clr-recursive-children [parent]=\"_model\"></clr-recursive-children>\n</div>\n", components: [{ type: RecursiveChildren, selector: "clr-recursive-children", inputs: ["parent", "children"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: CdsIconCustomTag, selector: "cds-icon" }], animations: [
|
|
19829
19759
|
trigger('toggleChildrenAnim', [
|
|
19830
19760
|
transition('collapsed => expanded', [style({ height: 0 }), animate(200, style({ height: '*' }))]),
|
|
19831
19761
|
transition('expanded => collapsed', [style({ height: '*' }), animate(200, style({ height: 0 }))]),
|
|
@@ -19835,12 +19765,7 @@ ClrTreeNode.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "
|
|
|
19835
19765
|
] });
|
|
19836
19766
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTreeNode, decorators: [{
|
|
19837
19767
|
type: Component,
|
|
19838
|
-
args: [{ selector: 'clr-tree-node', providers: [
|
|
19839
|
-
UNIQUE_ID_PROVIDER,
|
|
19840
|
-
TREE_FEATURES_PROVIDER,
|
|
19841
|
-
IfExpandService,
|
|
19842
|
-
{ provide: LoadingListener, useExisting: IfExpandService },
|
|
19843
|
-
], animations: [
|
|
19768
|
+
args: [{ selector: 'clr-tree-node', providers: [TREE_FEATURES_PROVIDER, IfExpandService, { provide: LoadingListener, useExisting: IfExpandService }], animations: [
|
|
19844
19769
|
trigger('toggleChildrenAnim', [
|
|
19845
19770
|
transition('collapsed => expanded', [style({ height: 0 }), animate(200, style({ height: '*' }))]),
|
|
19846
19771
|
transition('expanded => collapsed', [style({ height: '*' }), animate(200, style({ height: 0 }))]),
|
|
@@ -19851,9 +19776,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
19851
19776
|
'[class.clr-tree-node]': 'true',
|
|
19852
19777
|
}, template: "<!--\n ~ Copyright (c) 2016-2021 VMware, Inc. All Rights Reserved.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n\n<div\n #contentContainer\n role=\"treeitem\"\n class=\"clr-tree-node-content-container\"\n tabindex=\"-1\"\n [attr.aria-expanded]=\"isExpandable() ? expanded : null\"\n [attr.aria-selected]=\"ariaSelected\"\n (keydown)=\"onKeyDown($event)\"\n (focus)=\"broadcastFocusOnContainer()\"\n>\n <button\n *ngIf=\"isExpandable() && !isModelLoading && !expandService.loading\"\n aria-hidden=\"true\"\n type=\"button\"\n tabindex=\"-1\"\n class=\"clr-treenode-caret\"\n (click)=\"expandService.toggle();\"\n (focus)=\"focusTreeNode()\"\n >\n <cds-icon\n class=\"clr-treenode-caret-icon\"\n shape=\"angle\"\n [attr.direction]=\"expandService.expanded ? 'down' : 'right'\"\n ></cds-icon>\n </button>\n <div class=\"clr-treenode-spinner-container\" *ngIf=\"expandService.loading || isModelLoading\">\n <span class=\"clr-treenode-spinner spinner\"></span>\n </div>\n <div class=\"clr-checkbox-wrapper clr-treenode-checkbox\" *ngIf=\"featuresService.selectable\">\n <input\n aria-hidden=\"true\"\n type=\"checkbox\"\n id=\"{{nodeId}}-check\"\n class=\"clr-checkbox\"\n [checked]=\"_model.selected.value === STATES.SELECTED\"\n [indeterminate]=\"_model.selected.value === STATES.INDETERMINATE\"\n (change)=\"_model.toggleSelection(featuresService.eager)\"\n (focus)=\"focusTreeNode()\"\n tabindex=\"-1\"\n />\n <label for=\"{{nodeId}}-check\" class=\"clr-control-label\"></label>\n </div>\n <div class=\"clr-treenode-content\" (mousedown)=\"focusTreeNode()\">\n <ng-content></ng-content>\n <div class=\"clr-sr-only\" *ngIf=\"featuresService.selectable\">\n <span *ngIf=\"ariaSelected\">selected</span>\n <span *ngIf=\"!ariaSelected\">unselected</span>\n </div>\n </div>\n</div>\n<div\n class=\"clr-treenode-children\"\n [@toggleChildrenAnim]=\"expandService.expanded ? 'expanded' : 'collapsed'\"\n [attr.role]=\"isExpandable() && !featuresService.recursion ? 'group' : null\"\n>\n <ng-content select=\"clr-tree-node\"></ng-content>\n <ng-content select=\"[clrIfExpanded]\"></ng-content>\n <clr-recursive-children [parent]=\"_model\"></clr-recursive-children>\n</div>\n" }]
|
|
19853
19778
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
19854
|
-
type: Inject,
|
|
19855
|
-
args: [UNIQUE_ID]
|
|
19856
|
-
}] }, { type: undefined, decorators: [{
|
|
19857
19779
|
type: Inject,
|
|
19858
19780
|
args: [PLATFORM_ID]
|
|
19859
19781
|
}] }, { type: ClrTreeNode, decorators: [{
|
|
@@ -20063,13 +19985,13 @@ function wrapObservable(observable, onSubscribe, onUnsubscribe) {
|
|
|
20063
19985
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
20064
19986
|
*/
|
|
20065
19987
|
class DropdownFocusHandler {
|
|
20066
|
-
constructor(
|
|
20067
|
-
this.id = id;
|
|
19988
|
+
constructor(renderer, parent, toggleService, focusService, platformId) {
|
|
20068
19989
|
this.renderer = renderer;
|
|
20069
19990
|
this.parent = parent;
|
|
20070
19991
|
this.toggleService = toggleService;
|
|
20071
19992
|
this.focusService = focusService;
|
|
20072
19993
|
this.platformId = platformId;
|
|
19994
|
+
this.id = uniqueIdFactory();
|
|
20073
19995
|
this._unlistenFuncs = [];
|
|
20074
19996
|
this.focusBackOnTrigger = false;
|
|
20075
19997
|
this.resetChildren();
|
|
@@ -20216,14 +20138,11 @@ class DropdownFocusHandler {
|
|
|
20216
20138
|
this.focusService.detachListeners();
|
|
20217
20139
|
}
|
|
20218
20140
|
}
|
|
20219
|
-
DropdownFocusHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropdownFocusHandler, deps: [{ token:
|
|
20141
|
+
DropdownFocusHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropdownFocusHandler, deps: [{ token: i0.Renderer2 }, { token: DropdownFocusHandler, optional: true, skipSelf: true }, { token: ClrPopoverToggleService }, { token: FocusService$1 }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
20220
20142
|
DropdownFocusHandler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropdownFocusHandler });
|
|
20221
20143
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropdownFocusHandler, decorators: [{
|
|
20222
20144
|
type: Injectable
|
|
20223
|
-
}], ctorParameters: function () { return [{ type:
|
|
20224
|
-
type: Inject,
|
|
20225
|
-
args: [UNIQUE_ID]
|
|
20226
|
-
}] }, { type: i0.Renderer2 }, { type: DropdownFocusHandler, decorators: [{
|
|
20145
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: DropdownFocusHandler, decorators: [{
|
|
20227
20146
|
type: SkipSelf
|
|
20228
20147
|
}, {
|
|
20229
20148
|
type: Optional
|
|
@@ -20322,13 +20241,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
20322
20241
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
20323
20242
|
*/
|
|
20324
20243
|
class BasicFocusableItem {
|
|
20325
|
-
constructor(
|
|
20326
|
-
this.id = id;
|
|
20244
|
+
constructor(el, renderer, platformId) {
|
|
20327
20245
|
this.el = el;
|
|
20328
20246
|
this.renderer = renderer;
|
|
20329
20247
|
this.platformId = platformId;
|
|
20248
|
+
this.id = uniqueIdFactory();
|
|
20330
20249
|
this.disabled = false;
|
|
20331
|
-
renderer.setAttribute(el.nativeElement, 'id', id);
|
|
20250
|
+
renderer.setAttribute(el.nativeElement, 'id', this.id);
|
|
20332
20251
|
renderer.setAttribute(el.nativeElement, 'tabindex', '-1');
|
|
20333
20252
|
}
|
|
20334
20253
|
focus() {
|
|
@@ -20350,19 +20269,15 @@ class BasicFocusableItem {
|
|
|
20350
20269
|
}
|
|
20351
20270
|
}
|
|
20352
20271
|
}
|
|
20353
|
-
BasicFocusableItem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: BasicFocusableItem, deps: [{ token:
|
|
20272
|
+
BasicFocusableItem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: BasicFocusableItem, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
20354
20273
|
BasicFocusableItem.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: BasicFocusableItem });
|
|
20355
20274
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: BasicFocusableItem, decorators: [{
|
|
20356
20275
|
type: Injectable
|
|
20357
|
-
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
20358
|
-
type: Inject,
|
|
20359
|
-
args: [UNIQUE_ID]
|
|
20360
|
-
}] }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
|
|
20276
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
|
|
20361
20277
|
type: Inject,
|
|
20362
20278
|
args: [PLATFORM_ID]
|
|
20363
20279
|
}] }]; } });
|
|
20364
20280
|
const BASIC_FOCUSABLE_ITEM_PROVIDER = [
|
|
20365
|
-
UNIQUE_ID_PROVIDER,
|
|
20366
20281
|
{
|
|
20367
20282
|
provide: FocusableItem,
|
|
20368
20283
|
useClass: BasicFocusableItem,
|
|
@@ -22451,10 +22366,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
22451
22366
|
*/
|
|
22452
22367
|
let nbTabContentComponents = 0;
|
|
22453
22368
|
class ClrTabContent {
|
|
22454
|
-
constructor(ifActiveService, id,
|
|
22369
|
+
constructor(ifActiveService, id, tabsService) {
|
|
22455
22370
|
this.ifActiveService = ifActiveService;
|
|
22456
22371
|
this.id = id;
|
|
22457
|
-
this.ariaService = ariaService;
|
|
22458
22372
|
this.tabsService = tabsService;
|
|
22459
22373
|
if (!this.tabContentId) {
|
|
22460
22374
|
this.tabContentId = 'clr-tab-content-' + nbTabContentComponents++;
|
|
@@ -22467,13 +22381,7 @@ class ClrTabContent {
|
|
|
22467
22381
|
this.viewRef = this.tabsService.tabContentViewContainer.createEmbeddedView(value);
|
|
22468
22382
|
}
|
|
22469
22383
|
get ariaLabelledBy() {
|
|
22470
|
-
return this.
|
|
22471
|
-
}
|
|
22472
|
-
get tabContentId() {
|
|
22473
|
-
return this.ariaService.ariaControls;
|
|
22474
|
-
}
|
|
22475
|
-
set tabContentId(id) {
|
|
22476
|
-
this.ariaService.ariaControls = id;
|
|
22384
|
+
return this.tabsService.children.find(tab => tab.tabContent === this)?.tabLink?.tabLinkId;
|
|
22477
22385
|
}
|
|
22478
22386
|
get active() {
|
|
22479
22387
|
return this.ifActiveService.current === this.id;
|
|
@@ -22485,7 +22393,7 @@ class ClrTabContent {
|
|
|
22485
22393
|
}
|
|
22486
22394
|
}
|
|
22487
22395
|
}
|
|
22488
|
-
ClrTabContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTabContent, deps: [{ token: IfActiveService }, { token: IF_ACTIVE_ID }, { token:
|
|
22396
|
+
ClrTabContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTabContent, deps: [{ token: IfActiveService }, { token: IF_ACTIVE_ID }, { token: TabsService }], target: i0.ɵɵFactoryTarget.Component });
|
|
22489
22397
|
ClrTabContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrTabContent, selector: "clr-tab-content", inputs: { tabContentId: ["id", "tabContentId"] }, viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["tabContentProjectedRef"], descendants: true, static: true }], ngImport: i0, template: `
|
|
22490
22398
|
<ng-template #tabContentProjectedRef>
|
|
22491
22399
|
<section
|
|
@@ -22524,7 +22432,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
22524
22432
|
}], ctorParameters: function () { return [{ type: IfActiveService }, { type: undefined, decorators: [{
|
|
22525
22433
|
type: Inject,
|
|
22526
22434
|
args: [IF_ACTIVE_ID]
|
|
22527
|
-
}] }, { type:
|
|
22435
|
+
}] }, { type: TabsService }]; }, propDecorators: { templateRef: [{
|
|
22528
22436
|
type: ViewChild,
|
|
22529
22437
|
args: ['tabContentProjectedRef', { static: true }]
|
|
22530
22438
|
}], tabContentId: [{
|
|
@@ -22554,10 +22462,9 @@ const TABS_ID_PROVIDER = {
|
|
|
22554
22462
|
*/
|
|
22555
22463
|
let nbTabLinkComponents = 0;
|
|
22556
22464
|
class ClrTabLink {
|
|
22557
|
-
constructor(ifActiveService, id,
|
|
22465
|
+
constructor(ifActiveService, id, el, cfr, viewContainerRef, tabsService, tabsId) {
|
|
22558
22466
|
this.ifActiveService = ifActiveService;
|
|
22559
22467
|
this.id = id;
|
|
22560
|
-
this.ariaService = ariaService;
|
|
22561
22468
|
this.el = el;
|
|
22562
22469
|
this.cfr = cfr;
|
|
22563
22470
|
this.viewContainerRef = viewContainerRef;
|
|
@@ -22584,13 +22491,7 @@ class ClrTabLink {
|
|
|
22584
22491
|
return !this.inOverflow;
|
|
22585
22492
|
}
|
|
22586
22493
|
get ariaControls() {
|
|
22587
|
-
return this.
|
|
22588
|
-
}
|
|
22589
|
-
get tabLinkId() {
|
|
22590
|
-
return this.ariaService.ariaLabelledBy;
|
|
22591
|
-
}
|
|
22592
|
-
set tabLinkId(id) {
|
|
22593
|
-
this.ariaService.ariaLabelledBy = id;
|
|
22494
|
+
return this.tabsService.children.find(tab => tab.tabLink === this)?.tabContent?.tabContentId;
|
|
22594
22495
|
}
|
|
22595
22496
|
activate() {
|
|
22596
22497
|
this.ifActiveService.current = this.id;
|
|
@@ -22602,7 +22503,7 @@ class ClrTabLink {
|
|
|
22602
22503
|
return this.active ? 0 : -1;
|
|
22603
22504
|
}
|
|
22604
22505
|
}
|
|
22605
|
-
ClrTabLink.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTabLink, deps: [{ token: IfActiveService }, { token: IF_ACTIVE_ID }, { token:
|
|
22506
|
+
ClrTabLink.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTabLink, deps: [{ token: IfActiveService }, { token: IF_ACTIVE_ID }, { token: i0.ElementRef }, { token: i0.ComponentFactoryResolver }, { token: i0.ViewContainerRef }, { token: TabsService }, { token: TABS_ID }], target: i0.ɵɵFactoryTarget.Directive });
|
|
22606
22507
|
ClrTabLink.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: ClrTabLink, selector: "[clrTabLink]", inputs: { inOverflow: ["clrTabLinkInOverflow", "inOverflow"], tabLinkId: ["id", "tabLinkId"] }, host: { attributes: { "role": "tab", "type": "button" }, listeners: { "click": "activate()" }, properties: { "class.btn": "true", "class.btn-link": "this.addLinkClasses", "class.nav-link": "this.addLinkClasses", "attr.aria-controls": "this.ariaControls", "id": "this.tabLinkId", "class.active": "this.active", "attr.aria-selected": "this.active", "attr.tabindex": "this.tabindex" } }, ngImport: i0 });
|
|
22607
22508
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTabLink, decorators: [{
|
|
22608
22509
|
type: Directive,
|
|
@@ -22617,7 +22518,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
22617
22518
|
}], ctorParameters: function () { return [{ type: IfActiveService }, { type: undefined, decorators: [{
|
|
22618
22519
|
type: Inject,
|
|
22619
22520
|
args: [IF_ACTIVE_ID]
|
|
22620
|
-
}] }, { type:
|
|
22521
|
+
}] }, { type: i0.ElementRef }, { type: i0.ComponentFactoryResolver }, { type: i0.ViewContainerRef }, { type: TabsService }, { type: undefined, decorators: [{
|
|
22621
22522
|
type: Inject,
|
|
22622
22523
|
args: [TABS_ID]
|
|
22623
22524
|
}] }]; }, propDecorators: { inOverflow: [{
|
|
@@ -22672,13 +22573,13 @@ class ClrTab {
|
|
|
22672
22573
|
}
|
|
22673
22574
|
}
|
|
22674
22575
|
ClrTab.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTab, deps: [{ token: IfActiveService }, { token: IF_ACTIVE_ID }, { token: TabsService }], target: i0.ɵɵFactoryTarget.Component });
|
|
22675
|
-
ClrTab.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrTab, selector: "clr-tab", providers: [IF_ACTIVE_ID_PROVIDER
|
|
22576
|
+
ClrTab.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrTab, selector: "clr-tab", providers: [IF_ACTIVE_ID_PROVIDER], queries: [{ propertyName: "tabLink", first: true, predicate: ClrTabLink, descendants: true, static: true }, { propertyName: "tabContent", first: true, predicate: ClrTabContent, descendants: true, static: true }], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true });
|
|
22676
22577
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTab, decorators: [{
|
|
22677
22578
|
type: Component,
|
|
22678
22579
|
args: [{
|
|
22679
22580
|
selector: 'clr-tab',
|
|
22680
22581
|
template: `<ng-content></ng-content>`,
|
|
22681
|
-
providers: [IF_ACTIVE_ID_PROVIDER
|
|
22582
|
+
providers: [IF_ACTIVE_ID_PROVIDER],
|
|
22682
22583
|
}]
|
|
22683
22584
|
}], ctorParameters: function () { return [{ type: IfActiveService }, { type: undefined, decorators: [{
|
|
22684
22585
|
type: Inject,
|
|
@@ -23564,10 +23465,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
23564
23465
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
23565
23466
|
*/
|
|
23566
23467
|
class ClrModal {
|
|
23567
|
-
constructor(_scrollingService, commonStrings
|
|
23468
|
+
constructor(_scrollingService, commonStrings) {
|
|
23568
23469
|
this._scrollingService = _scrollingService;
|
|
23569
23470
|
this.commonStrings = commonStrings;
|
|
23570
|
-
this.modalId =
|
|
23471
|
+
this.modalId = uniqueIdFactory();
|
|
23571
23472
|
this._open = false;
|
|
23572
23473
|
this._openChanged = new EventEmitter(false);
|
|
23573
23474
|
this.closable = true;
|
|
@@ -23620,8 +23521,8 @@ class ClrModal {
|
|
|
23620
23521
|
}
|
|
23621
23522
|
}
|
|
23622
23523
|
}
|
|
23623
|
-
ClrModal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrModal, deps: [{ token: ScrollingService }, { token: ClrCommonStringsService }
|
|
23624
|
-
ClrModal.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrModal, selector: "clr-modal", inputs: { _open: ["clrModalOpen", "_open"], closable: ["clrModalClosable", "closable"], closeButtonAriaLabel: ["clrModalCloseButtonAriaLabel", "closeButtonAriaLabel"], size: ["clrModalSize", "size"], staticBackdrop: ["clrModalStaticBackdrop", "staticBackdrop"], skipAnimation: ["clrModalSkipAnimation", "skipAnimation"], bypassScrollService: ["clrModalOverrideScrollService", "bypassScrollService"], stopClose: ["clrModalPreventClose", "stopClose"], labelledBy: ["clrModalLabelledById", "labelledBy"] }, outputs: { _openChanged: "clrModalOpenChange", altClose: "clrModalAlternateClose" }, host: { listeners: { "body:keyup.escape": "close()" }, properties: { "class.open": "this._open" } },
|
|
23524
|
+
ClrModal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrModal, deps: [{ token: ScrollingService }, { token: ClrCommonStringsService }], target: i0.ɵɵFactoryTarget.Component });
|
|
23525
|
+
ClrModal.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrModal, selector: "clr-modal", inputs: { _open: ["clrModalOpen", "_open"], closable: ["clrModalClosable", "closable"], closeButtonAriaLabel: ["clrModalCloseButtonAriaLabel", "closeButtonAriaLabel"], size: ["clrModalSize", "size"], staticBackdrop: ["clrModalStaticBackdrop", "staticBackdrop"], skipAnimation: ["clrModalSkipAnimation", "skipAnimation"], bypassScrollService: ["clrModalOverrideScrollService", "bypassScrollService"], stopClose: ["clrModalPreventClose", "stopClose"], labelledBy: ["clrModalLabelledById", "labelledBy"] }, outputs: { _openChanged: "clrModalOpenChange", altClose: "clrModalAlternateClose" }, host: { listeners: { "body:keyup.escape": "close()" }, properties: { "class.open": "this._open" } }, viewQueries: [{ propertyName: "focusTrap", first: true, predicate: FocusTrapDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<!--\n ~ Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n\n<div clrFocusTrap class=\"modal\" *ngIf=\"_open\">\n <!--fixme: revisit when ngClass works with exit animation-->\n <div\n [@fadeDown]=\"skipAnimation\"\n (@fadeDown.done)=\"fadeDone($event)\"\n class=\"modal-dialog\"\n [class.modal-sm]=\"size == 'sm'\"\n [class.modal-lg]=\"size == 'lg'\"\n [class.modal-xl]=\"size == 'xl'\"\n role=\"dialog\"\n aria-modal=\"true\"\n [attr.aria-hidden]=\"!_open\"\n [attr.aria-labelledby]=\"labelledBy\"\n >\n <div class=\"clr-sr-only\">{{commonStrings.keys.modalContentStart}}</div>\n <div class=\"modal-content-wrapper\">\n <!-- only used in wizards -->\n <ng-content select=\".modal-nav\"></ng-content>\n\n <div class=\"modal-content\">\n <div class=\"modal-header--accessible\">\n <div class=\"modal-title-wrapper\" id=\"{{modalId}}\" clrFocusOnViewInit>\n <ng-content select=\".modal-title\"></ng-content>\n </div>\n <button\n type=\"button\"\n [attr.aria-label]=\"closeButtonAriaLabel || commonStrings.keys.close\"\n class=\"close\"\n *ngIf=\"closable\"\n (click)=\"close()\"\n >\n <cds-icon shape=\"window-close\"></cds-icon>\n </button>\n </div>\n <div class=\"modal-body-wrapper\">\n <ng-content select=\".modal-body\"></ng-content>\n </div>\n <ng-content select=\".modal-footer\"></ng-content>\n </div>\n </div>\n <div class=\"clr-sr-only\">{{commonStrings.keys.modalContentEnd}}</div>\n </div>\n\n <div [@fade] class=\"modal-backdrop\" aria-hidden=\"true\" (click)=\"staticBackdrop || close()\"></div>\n</div>\n", styles: [":host{display:none}:host.open{display:inline}\n"], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: FocusTrapDirective, selector: "[clrFocusTrap]", inputs: ["clrFocusTrap"] }, { type: ClrFocusOnViewInit, selector: "[clrFocusOnViewInit]", inputs: ["clrFocusOnViewInit"] }, { type: CdsIconCustomTag, selector: "cds-icon" }], viewProviders: [ScrollingService], animations: [
|
|
23625
23526
|
trigger('fadeDown', [
|
|
23626
23527
|
transition('* => false', [style({ opacity: 0, transform: 'translate(0, -25%)' }), animate('0.2s ease-in-out')]),
|
|
23627
23528
|
transition('false => *', [animate('0.2s ease-in-out', style({ opacity: 0, transform: 'translate(0, -25%)' }))]),
|
|
@@ -23651,11 +23552,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
23651
23552
|
transition('void => *', [style({ opacity: 0 }), animate('0.2s ease-in-out', style({ opacity: 0.85 }))]),
|
|
23652
23553
|
transition('* => void', [animate('0.2s ease-in-out', style({ opacity: 0 }))]),
|
|
23653
23554
|
]),
|
|
23654
|
-
],
|
|
23655
|
-
}], ctorParameters: function () { return [{ type: ScrollingService }, { type: ClrCommonStringsService },
|
|
23656
|
-
type: Inject,
|
|
23657
|
-
args: [UNIQUE_ID]
|
|
23658
|
-
}] }]; }, propDecorators: { focusTrap: [{
|
|
23555
|
+
], template: "<!--\n ~ Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n\n<div clrFocusTrap class=\"modal\" *ngIf=\"_open\">\n <!--fixme: revisit when ngClass works with exit animation-->\n <div\n [@fadeDown]=\"skipAnimation\"\n (@fadeDown.done)=\"fadeDone($event)\"\n class=\"modal-dialog\"\n [class.modal-sm]=\"size == 'sm'\"\n [class.modal-lg]=\"size == 'lg'\"\n [class.modal-xl]=\"size == 'xl'\"\n role=\"dialog\"\n aria-modal=\"true\"\n [attr.aria-hidden]=\"!_open\"\n [attr.aria-labelledby]=\"labelledBy\"\n >\n <div class=\"clr-sr-only\">{{commonStrings.keys.modalContentStart}}</div>\n <div class=\"modal-content-wrapper\">\n <!-- only used in wizards -->\n <ng-content select=\".modal-nav\"></ng-content>\n\n <div class=\"modal-content\">\n <div class=\"modal-header--accessible\">\n <div class=\"modal-title-wrapper\" id=\"{{modalId}}\" clrFocusOnViewInit>\n <ng-content select=\".modal-title\"></ng-content>\n </div>\n <button\n type=\"button\"\n [attr.aria-label]=\"closeButtonAriaLabel || commonStrings.keys.close\"\n class=\"close\"\n *ngIf=\"closable\"\n (click)=\"close()\"\n >\n <cds-icon shape=\"window-close\"></cds-icon>\n </button>\n </div>\n <div class=\"modal-body-wrapper\">\n <ng-content select=\".modal-body\"></ng-content>\n </div>\n <ng-content select=\".modal-footer\"></ng-content>\n </div>\n </div>\n <div class=\"clr-sr-only\">{{commonStrings.keys.modalContentEnd}}</div>\n </div>\n\n <div [@fade] class=\"modal-backdrop\" aria-hidden=\"true\" (click)=\"staticBackdrop || close()\"></div>\n</div>\n" }]
|
|
23556
|
+
}], ctorParameters: function () { return [{ type: ScrollingService }, { type: ClrCommonStringsService }]; }, propDecorators: { focusTrap: [{
|
|
23659
23557
|
type: ViewChild,
|
|
23660
23558
|
args: [FocusTrapDirective]
|
|
23661
23559
|
}], _open: [{
|
|
@@ -23826,20 +23724,20 @@ const POSITIONS$1 = [
|
|
|
23826
23724
|
'left-top',
|
|
23827
23725
|
];
|
|
23828
23726
|
class ClrSignpostContent extends AbstractPopover {
|
|
23829
|
-
constructor(injector, parentHost, commonStrings,
|
|
23727
|
+
constructor(injector, parentHost, commonStrings, signpostIdService, signpostFocusManager, platformId, document) {
|
|
23830
23728
|
super(injector, parentHost);
|
|
23831
23729
|
this.commonStrings = commonStrings;
|
|
23832
|
-
this.signpostContentId = signpostContentId;
|
|
23833
23730
|
this.signpostIdService = signpostIdService;
|
|
23834
23731
|
this.signpostFocusManager = signpostFocusManager;
|
|
23835
23732
|
this.platformId = platformId;
|
|
23733
|
+
this.signpostContentId = uniqueIdFactory();
|
|
23836
23734
|
if (!parentHost) {
|
|
23837
23735
|
throw new Error('clr-signpost-content should only be used inside of a clr-signpost');
|
|
23838
23736
|
}
|
|
23839
23737
|
// Defaults
|
|
23840
23738
|
this.position = 'right-middle';
|
|
23841
23739
|
this.closeOnOutsideClick = true;
|
|
23842
|
-
this.signpostIdService.setId(signpostContentId);
|
|
23740
|
+
this.signpostIdService.setId(this.signpostContentId);
|
|
23843
23741
|
this.document = document;
|
|
23844
23742
|
}
|
|
23845
23743
|
/**********
|
|
@@ -23907,8 +23805,8 @@ class ClrSignpostContent extends AbstractPopover {
|
|
|
23907
23805
|
}
|
|
23908
23806
|
}
|
|
23909
23807
|
}
|
|
23910
|
-
ClrSignpostContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrSignpostContent, deps: [{ token: i0.Injector }, { token: POPOVER_HOST_ANCHOR, optional: true }, { token: ClrCommonStringsService }, { token:
|
|
23911
|
-
ClrSignpostContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrSignpostContent, selector: "clr-signpost-content", inputs: { position: ["clrPosition", "position"] }, host: { properties: { "class.signpost-content": "true", "id": "signpostContentId" } },
|
|
23808
|
+
ClrSignpostContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrSignpostContent, deps: [{ token: i0.Injector }, { token: POPOVER_HOST_ANCHOR, optional: true }, { token: ClrCommonStringsService }, { token: SignpostIdService }, { token: SignpostFocusManager }, { token: PLATFORM_ID }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
|
|
23809
|
+
ClrSignpostContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrSignpostContent, selector: "clr-signpost-content", inputs: { position: ["clrPosition", "position"] }, host: { properties: { "class.signpost-content": "true", "id": "signpostContentId" } }, usesInheritance: true, ngImport: i0, template: `
|
|
23912
23810
|
<div class="signpost-wrap">
|
|
23913
23811
|
<div class="popover-pointer"></div>
|
|
23914
23812
|
<div class="signpost-content-header">
|
|
@@ -23951,17 +23849,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
23951
23849
|
</div>
|
|
23952
23850
|
`,
|
|
23953
23851
|
host: { '[class.signpost-content]': 'true', '[id]': 'signpostContentId' },
|
|
23954
|
-
providers: [UNIQUE_ID_PROVIDER],
|
|
23955
23852
|
}]
|
|
23956
23853
|
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.ElementRef, decorators: [{
|
|
23957
23854
|
type: Optional
|
|
23958
23855
|
}, {
|
|
23959
23856
|
type: Inject,
|
|
23960
23857
|
args: [POPOVER_HOST_ANCHOR]
|
|
23961
|
-
}] }, { type: ClrCommonStringsService }, { type: undefined, decorators: [{
|
|
23962
|
-
type: Inject,
|
|
23963
|
-
args: [UNIQUE_ID]
|
|
23964
|
-
}] }, { type: SignpostIdService }, { type: SignpostFocusManager }, { type: undefined, decorators: [{
|
|
23858
|
+
}] }, { type: ClrCommonStringsService }, { type: SignpostIdService }, { type: SignpostFocusManager }, { type: undefined, decorators: [{
|
|
23965
23859
|
type: Inject,
|
|
23966
23860
|
args: [PLATFORM_ID]
|
|
23967
23861
|
}] }, { type: undefined, decorators: [{
|
|
@@ -24025,14 +23919,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
24025
23919
|
class ClrTooltip {
|
|
24026
23920
|
}
|
|
24027
23921
|
ClrTooltip.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTooltip, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
24028
|
-
ClrTooltip.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrTooltip, selector: "clr-tooltip", host: { properties: { "class.tooltip": "true" } }, providers: [
|
|
24029
|
-
ClrPopoverToggleService,
|
|
24030
|
-
{ provide: POPOVER_HOST_ANCHOR, useExisting: ElementRef },
|
|
24031
|
-
// TODO: consider centralizing the unique id string on a service that provides ariaAttributes that need it
|
|
24032
|
-
// AriaService in layout/tabs/providers might be a good starting point.
|
|
24033
|
-
UNIQUE_ID_PROVIDER,
|
|
24034
|
-
TooltipIdService,
|
|
24035
|
-
], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true });
|
|
23922
|
+
ClrTooltip.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrTooltip, selector: "clr-tooltip", host: { properties: { "class.tooltip": "true" } }, providers: [ClrPopoverToggleService, { provide: POPOVER_HOST_ANCHOR, useExisting: ElementRef }, TooltipIdService], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true });
|
|
24036
23923
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTooltip, decorators: [{
|
|
24037
23924
|
type: Component,
|
|
24038
23925
|
args: [{
|
|
@@ -24041,14 +23928,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
24041
23928
|
host: {
|
|
24042
23929
|
'[class.tooltip]': 'true',
|
|
24043
23930
|
},
|
|
24044
|
-
providers: [
|
|
24045
|
-
ClrPopoverToggleService,
|
|
24046
|
-
{ provide: POPOVER_HOST_ANCHOR, useExisting: ElementRef },
|
|
24047
|
-
// TODO: consider centralizing the unique id string on a service that provides ariaAttributes that need it
|
|
24048
|
-
// AriaService in layout/tabs/providers might be a good starting point.
|
|
24049
|
-
UNIQUE_ID_PROVIDER,
|
|
24050
|
-
TooltipIdService,
|
|
24051
|
-
],
|
|
23931
|
+
providers: [ClrPopoverToggleService, { provide: POPOVER_HOST_ANCHOR, useExisting: ElementRef }, TooltipIdService],
|
|
24052
23932
|
}]
|
|
24053
23933
|
}] });
|
|
24054
23934
|
|
|
@@ -24071,9 +23951,8 @@ const SIZES = ['xs', 'sm', 'md', 'lg'];
|
|
|
24071
23951
|
const defaultPosition = 'right';
|
|
24072
23952
|
const defaultSize = 'sm';
|
|
24073
23953
|
class ClrTooltipContent extends AbstractPopover {
|
|
24074
|
-
constructor(injector, parentHost,
|
|
23954
|
+
constructor(injector, parentHost, tooltipIdService) {
|
|
24075
23955
|
super(injector, parentHost);
|
|
24076
|
-
this.uniqueId = uniqueId;
|
|
24077
23956
|
this.tooltipIdService = tooltipIdService;
|
|
24078
23957
|
this._position = defaultPosition;
|
|
24079
23958
|
this._size = defaultSize;
|
|
@@ -24081,7 +23960,7 @@ class ClrTooltipContent extends AbstractPopover {
|
|
|
24081
23960
|
throw new Error('clr-tooltip-content should only be used inside of a clr-tooltip');
|
|
24082
23961
|
}
|
|
24083
23962
|
// Set the default id in case consumer does not supply a custom id.
|
|
24084
|
-
this.id =
|
|
23963
|
+
this.id = uniqueIdFactory();
|
|
24085
23964
|
}
|
|
24086
23965
|
get id() {
|
|
24087
23966
|
return this._id;
|
|
@@ -24143,7 +24022,7 @@ class ClrTooltipContent extends AbstractPopover {
|
|
|
24143
24022
|
this.renderer.addClass(this.el.nativeElement, newClass);
|
|
24144
24023
|
}
|
|
24145
24024
|
}
|
|
24146
|
-
ClrTooltipContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTooltipContent, deps: [{ token: i0.Injector }, { token: POPOVER_HOST_ANCHOR, optional: true }, { token:
|
|
24025
|
+
ClrTooltipContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTooltipContent, deps: [{ token: i0.Injector }, { token: POPOVER_HOST_ANCHOR, optional: true }, { token: TooltipIdService }], target: i0.ɵɵFactoryTarget.Component });
|
|
24147
24026
|
ClrTooltipContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrTooltipContent, selector: "clr-tooltip-content", inputs: { id: "id", position: ["clrPosition", "position"], size: ["clrSize", "size"] }, host: { properties: { "class.tooltip-content": "true", "style.opacity": "1", "attr.role": "\"tooltip\"", "id": "id" } }, usesInheritance: true, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true });
|
|
24148
24027
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTooltipContent, decorators: [{
|
|
24149
24028
|
type: Component,
|
|
@@ -24162,9 +24041,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
24162
24041
|
}, {
|
|
24163
24042
|
type: Inject,
|
|
24164
24043
|
args: [POPOVER_HOST_ANCHOR]
|
|
24165
|
-
}] }, { type: undefined, decorators: [{
|
|
24166
|
-
type: Inject,
|
|
24167
|
-
args: [UNIQUE_ID]
|
|
24168
24044
|
}] }, { type: TooltipIdService }]; }, propDecorators: { id: [{
|
|
24169
24045
|
type: Input
|
|
24170
24046
|
}], position: [{
|
|
@@ -26762,14 +26638,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
26762
26638
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
26763
26639
|
*/
|
|
26764
26640
|
class ClrWizard {
|
|
26765
|
-
constructor(platformId, navService, pageCollection, buttonService, headerActionService, elementRef, differs
|
|
26641
|
+
constructor(platformId, navService, pageCollection, buttonService, headerActionService, elementRef, differs) {
|
|
26766
26642
|
this.platformId = platformId;
|
|
26767
26643
|
this.navService = navService;
|
|
26768
26644
|
this.pageCollection = pageCollection;
|
|
26769
26645
|
this.buttonService = buttonService;
|
|
26770
26646
|
this.headerActionService = headerActionService;
|
|
26771
26647
|
this.elementRef = elementRef;
|
|
26772
|
-
this.wizardId = wizardId;
|
|
26773
26648
|
/**
|
|
26774
26649
|
* Set the modal size of the wizard. Set using `[clrWizardSize]` input.
|
|
26775
26650
|
*/
|
|
@@ -26829,6 +26704,7 @@ class ClrWizard {
|
|
|
26829
26704
|
* Listen via `(clrWizardOnPrevious)` event.
|
|
26830
26705
|
*/
|
|
26831
26706
|
this.onMovePrevious = new EventEmitter(false);
|
|
26707
|
+
this.wizardId = uniqueIdFactory();
|
|
26832
26708
|
this.subscriptions = [];
|
|
26833
26709
|
this.subscriptions.push(this.listenForNextPageChanges(), this.listenForPreviousPageChanges(), this.listenForCancelChanges(), this.listenForFinishedChanges(), this.listenForPageChanges());
|
|
26834
26710
|
this.differ = differs.find([]).create(null);
|
|
@@ -27147,23 +27023,11 @@ class ClrWizard {
|
|
|
27147
27023
|
this.wizardFinished.emit();
|
|
27148
27024
|
}
|
|
27149
27025
|
}
|
|
27150
|
-
ClrWizard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrWizard, deps: [{ token: PLATFORM_ID }, { token: WizardNavigationService }, { token: PageCollectionService }, { token: ButtonHubService }, { token: HeaderActionService }, { token: i0.ElementRef }, { token: i0.IterableDiffers }
|
|
27151
|
-
ClrWizard.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrWizard, selector: "clr-wizard", inputs: { size: ["clrWizardSize", "size"], closable: ["clrWizardClosable", "closable"], forceForward: ["clrWizardForceForwardNavigation", "forceForward"], clrWizardOpen: "clrWizardOpen", stopNext: ["clrWizardPreventDefaultNext", "stopNext"], stopCancel: ["clrWizardPreventDefaultCancel", "stopCancel"], stopNavigation: ["clrWizardPreventNavigation", "stopNavigation"], disableStepnav: ["clrWizardDisableStepnav", "disableStepnav"], _stopModalAnimations: ["clrWizardPreventModalAnimation", "_stopModalAnimations"] }, outputs: { _openChanged: "clrWizardOpenChange", onCancel: "clrWizardOnCancel", wizardFinished: "clrWizardOnFinish", onReset: "clrWizardOnReset", currentPageChanged: "clrWizardCurrentPageChanged", onMoveNext: "clrWizardOnNext", onMovePrevious: "clrWizardOnPrevious" }, host: { properties: { "class.clr-wizard": "true", "class.wizard-md": "size == 'md'", "class.wizard-lg": "size == 'lg'", "class.wizard-xl": "size == 'xl'", "class.lastPage": "navService.currentPageIsLast" } }, providers: [
|
|
27152
|
-
WizardNavigationService,
|
|
27153
|
-
PageCollectionService,
|
|
27154
|
-
ButtonHubService,
|
|
27155
|
-
HeaderActionService,
|
|
27156
|
-
UNIQUE_ID_PROVIDER,
|
|
27157
|
-
], queries: [{ propertyName: "pages", predicate: ClrWizardPage, descendants: true }, { propertyName: "headerActions", predicate: ClrWizardHeaderAction }], viewQueries: [{ propertyName: "wizardTitle", first: true, predicate: ["wizardTitle"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n\n<clr-modal\n [clrModalOpen]=\"_open\"\n [clrModalSize]=\"size\"\n [clrModalClosable]=\"closable\"\n [clrModalStaticBackdrop]=\"true\"\n [clrModalSkipAnimation]=\"stopModalAnimations\"\n [clrModalOverrideScrollService]=\"isStatic\"\n [clrModalPreventClose]=\"true\"\n (clrModalAlternateClose)=\"modalCancel()\"\n [clrModalLabelledById]=\"wizardId\"\n>\n <nav class=\"modal-nav clr-wizard-stepnav-wrapper\">\n <h1 class=\"clr-wizard-title\" id=\"{{wizardId}}\"><ng-content select=\"clr-wizard-title\"></ng-content></h1>\n <clr-wizard-stepnav></clr-wizard-stepnav>\n </nav>\n\n <h2 class=\"modal-title\">\n <span tabindex=\"-1\" #wizardTitle class=\"modal-title-text\">\n <ng-template [ngTemplateOutlet]=\"navService.currentPageTitle\"></ng-template>\n </span>\n\n <div class=\"modal-header-actions-wrapper\" *ngIf=\"headerActionService.displayHeaderActionsWrapper\">\n <div *ngIf=\"headerActionService.showWizardHeaderActions\">\n <ng-content select=\"clr-wizard-header-action\"></ng-content>\n </div>\n <div *ngIf=\"headerActionService.currentPageHasHeaderActions\">\n <ng-template [ngTemplateOutlet]=\"navService.currentPage.headerActions\"></ng-template>\n </div>\n </div>\n </h2>\n\n <div class=\"modal-body\">\n <main clr-wizard-pages-wrapper class=\"clr-wizard-content\">\n <ng-content></ng-content>\n </main>\n </div>\n <div class=\"modal-footer clr-wizard-footer\">\n <div class=\"clr-wizard-footer-buttons\">\n <div\n *ngIf=\"navService.currentPage && !navService.currentPage.hasButtons\"\n class=\"clr-wizard-footer-buttons-wrapper\"\n >\n <ng-content select=\"clr-wizard-button\"></ng-content>\n </div>\n <div\n *ngIf=\"navService.currentPage && navService.currentPage.hasButtons\"\n class=\"clr-wizard-footer-buttons-wrapper\"\n >\n <ng-template [ngTemplateOutlet]=\"navService.currentPage.buttons\"></ng-template>\n </div>\n </div>\n </div>\n</clr-modal>\n", components: [{ type: ClrModal, selector: "clr-modal", inputs: ["clrModalOpen", "clrModalClosable", "clrModalCloseButtonAriaLabel", "clrModalSize", "clrModalStaticBackdrop", "clrModalSkipAnimation", "clrModalOverrideScrollService", "clrModalPreventClose", "clrModalLabelledById"], outputs: ["clrModalOpenChange", "clrModalAlternateClose"] }, { type: ClrWizardStepnav, selector: "clr-wizard-stepnav" }], directives: [{ type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: ClrModalBody, selector: ".modal-body" }] });
|
|
27026
|
+
ClrWizard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrWizard, deps: [{ token: PLATFORM_ID }, { token: WizardNavigationService }, { token: PageCollectionService }, { token: ButtonHubService }, { token: HeaderActionService }, { token: i0.ElementRef }, { token: i0.IterableDiffers }], target: i0.ɵɵFactoryTarget.Component });
|
|
27027
|
+
ClrWizard.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrWizard, selector: "clr-wizard", inputs: { size: ["clrWizardSize", "size"], closable: ["clrWizardClosable", "closable"], forceForward: ["clrWizardForceForwardNavigation", "forceForward"], clrWizardOpen: "clrWizardOpen", stopNext: ["clrWizardPreventDefaultNext", "stopNext"], stopCancel: ["clrWizardPreventDefaultCancel", "stopCancel"], stopNavigation: ["clrWizardPreventNavigation", "stopNavigation"], disableStepnav: ["clrWizardDisableStepnav", "disableStepnav"], _stopModalAnimations: ["clrWizardPreventModalAnimation", "_stopModalAnimations"] }, outputs: { _openChanged: "clrWizardOpenChange", onCancel: "clrWizardOnCancel", wizardFinished: "clrWizardOnFinish", onReset: "clrWizardOnReset", currentPageChanged: "clrWizardCurrentPageChanged", onMoveNext: "clrWizardOnNext", onMovePrevious: "clrWizardOnPrevious" }, host: { properties: { "class.clr-wizard": "true", "class.wizard-md": "size == 'md'", "class.wizard-lg": "size == 'lg'", "class.wizard-xl": "size == 'xl'", "class.lastPage": "navService.currentPageIsLast" } }, providers: [WizardNavigationService, PageCollectionService, ButtonHubService, HeaderActionService], queries: [{ propertyName: "pages", predicate: ClrWizardPage, descendants: true }, { propertyName: "headerActions", predicate: ClrWizardHeaderAction }], viewQueries: [{ propertyName: "wizardTitle", first: true, predicate: ["wizardTitle"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n\n<clr-modal\n [clrModalOpen]=\"_open\"\n [clrModalSize]=\"size\"\n [clrModalClosable]=\"closable\"\n [clrModalStaticBackdrop]=\"true\"\n [clrModalSkipAnimation]=\"stopModalAnimations\"\n [clrModalOverrideScrollService]=\"isStatic\"\n [clrModalPreventClose]=\"true\"\n (clrModalAlternateClose)=\"modalCancel()\"\n [clrModalLabelledById]=\"wizardId\"\n>\n <nav class=\"modal-nav clr-wizard-stepnav-wrapper\">\n <h1 class=\"clr-wizard-title\" id=\"{{wizardId}}\"><ng-content select=\"clr-wizard-title\"></ng-content></h1>\n <clr-wizard-stepnav></clr-wizard-stepnav>\n </nav>\n\n <h2 class=\"modal-title\">\n <span tabindex=\"-1\" #wizardTitle class=\"modal-title-text\">\n <ng-template [ngTemplateOutlet]=\"navService.currentPageTitle\"></ng-template>\n </span>\n\n <div class=\"modal-header-actions-wrapper\" *ngIf=\"headerActionService.displayHeaderActionsWrapper\">\n <div *ngIf=\"headerActionService.showWizardHeaderActions\">\n <ng-content select=\"clr-wizard-header-action\"></ng-content>\n </div>\n <div *ngIf=\"headerActionService.currentPageHasHeaderActions\">\n <ng-template [ngTemplateOutlet]=\"navService.currentPage.headerActions\"></ng-template>\n </div>\n </div>\n </h2>\n\n <div class=\"modal-body\">\n <main clr-wizard-pages-wrapper class=\"clr-wizard-content\">\n <ng-content></ng-content>\n </main>\n </div>\n <div class=\"modal-footer clr-wizard-footer\">\n <div class=\"clr-wizard-footer-buttons\">\n <div\n *ngIf=\"navService.currentPage && !navService.currentPage.hasButtons\"\n class=\"clr-wizard-footer-buttons-wrapper\"\n >\n <ng-content select=\"clr-wizard-button\"></ng-content>\n </div>\n <div\n *ngIf=\"navService.currentPage && navService.currentPage.hasButtons\"\n class=\"clr-wizard-footer-buttons-wrapper\"\n >\n <ng-template [ngTemplateOutlet]=\"navService.currentPage.buttons\"></ng-template>\n </div>\n </div>\n </div>\n</clr-modal>\n", components: [{ type: ClrModal, selector: "clr-modal", inputs: ["clrModalOpen", "clrModalClosable", "clrModalCloseButtonAriaLabel", "clrModalSize", "clrModalStaticBackdrop", "clrModalSkipAnimation", "clrModalOverrideScrollService", "clrModalPreventClose", "clrModalLabelledById"], outputs: ["clrModalOpenChange", "clrModalAlternateClose"] }, { type: ClrWizardStepnav, selector: "clr-wizard-stepnav" }], directives: [{ type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: ClrModalBody, selector: ".modal-body" }] });
|
|
27158
27028
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrWizard, decorators: [{
|
|
27159
27029
|
type: Component,
|
|
27160
|
-
args: [{ selector: 'clr-wizard', providers: [
|
|
27161
|
-
WizardNavigationService,
|
|
27162
|
-
PageCollectionService,
|
|
27163
|
-
ButtonHubService,
|
|
27164
|
-
HeaderActionService,
|
|
27165
|
-
UNIQUE_ID_PROVIDER,
|
|
27166
|
-
], host: {
|
|
27030
|
+
args: [{ selector: 'clr-wizard', providers: [WizardNavigationService, PageCollectionService, ButtonHubService, HeaderActionService], host: {
|
|
27167
27031
|
'[class.clr-wizard]': 'true',
|
|
27168
27032
|
'[class.wizard-md]': "size == 'md'",
|
|
27169
27033
|
'[class.wizard-lg]': "size == 'lg'",
|
|
@@ -27173,10 +27037,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
27173
27037
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
27174
27038
|
type: Inject,
|
|
27175
27039
|
args: [PLATFORM_ID]
|
|
27176
|
-
}] }, { type: WizardNavigationService }, { type: PageCollectionService }, { type: ButtonHubService }, { type: HeaderActionService }, { type: i0.ElementRef }, { type: i0.IterableDiffers },
|
|
27177
|
-
type: Inject,
|
|
27178
|
-
args: [UNIQUE_ID]
|
|
27179
|
-
}] }]; }, propDecorators: { size: [{
|
|
27040
|
+
}] }, { type: WizardNavigationService }, { type: PageCollectionService }, { type: ButtonHubService }, { type: HeaderActionService }, { type: i0.ElementRef }, { type: i0.IterableDiffers }]; }, propDecorators: { size: [{
|
|
27180
27041
|
type: Input,
|
|
27181
27042
|
args: ['clrWizardSize']
|
|
27182
27043
|
}], closable: [{
|
|
@@ -27861,5 +27722,5 @@ const CLR_MENU_POSITIONS = [
|
|
|
27861
27722
|
* Generated bundle index. Do not edit.
|
|
27862
27723
|
*/
|
|
27863
27724
|
|
|
27864
|
-
export { CLR_ALERT_DIRECTIVES, CLR_BUTTON_GROUP_DIRECTIVES, CLR_DATAGRID_DIRECTIVES, CLR_DATEPICKER_DIRECTIVES, CLR_DRAG_AND_DROP_DIRECTIVES, CLR_DROPDOWN_DIRECTIVES, CLR_ICON_DIRECTIVES, CLR_LAYOUT_DIRECTIVES, CLR_LOADING_BUTTON_DIRECTIVES, CLR_LOADING_DIRECTIVES, CLR_MENU_POSITIONS, CLR_MODAL_DIRECTIVES, CLR_NAVIGATION_DIRECTIVES, CLR_PROGRESS_BAR_DIRECTIVES, CLR_SIGNPOST_DIRECTIVES, CLR_SPINNER_DIRECTIVES, CLR_STACK_VIEW_DIRECTIVES, CLR_TABS_DIRECTIVES, CLR_TOOLTIP_DIRECTIVES, CLR_TREE_VIEW_DIRECTIVES, CLR_VERTICAL_NAV_DIRECTIVES, CLR_WIZARD_DIRECTIVES, CONDITIONAL_DIRECTIVES, CUSTOM_BUTTON_TYPES, CdsIconCustomTag, ClarityModule, ClrAbstractContainer, ClrAccordion, ClrAccordionContent, ClrAccordionDescription, ClrAccordionModule, ClrAccordionPanel, ClrAccordionTitle, ClrAlert, ClrAlertItem, ClrAlertModule, ClrAlertText, ClrAlerts, ClrAlertsPager, ClrAlignment, ClrAriaCurrentLink, ClrAriaLivePoliteness, ClrAriaLiveService, ClrAxis, ClrButton, ClrButtonGroup, ClrButtonGroupModule, ClrButtonModule, ClrCalendar, ClrCheckbox, ClrCheckboxContainer, ClrCheckboxModule, ClrCheckboxWrapper, ClrCombobox, ClrComboboxContainer, ClrComboboxModule, ClrCommonFormsModule, ClrCommonStringsService, ClrConditionalModule, ClrControl, ClrControlContainer, ClrControlError, ClrControlHelper, ClrControlSuccess, ClrDataModule, ClrDatagrid, ClrDatagridActionBar, ClrDatagridActionOverflow, ClrDatagridCell, ClrDatagridColumn, ClrDatagridColumnSeparator, ClrDatagridColumnToggle, ClrDatagridColumnToggleButton, ClrDatagridColumnToggleTitle, ClrDatagridDetail, ClrDatagridDetailBody, ClrDatagridDetailHeader, ClrDatagridFilter, ClrDatagridFooter, ClrDatagridHideableColumn, ClrDatagridItems, ClrDatagridItemsTrackBy, ClrDatagridModule, ClrDatagridPageSize, ClrDatagridPagination, ClrDatagridPlaceholder, ClrDatagridRow, ClrDatagridRowDetail, ClrDatagridSortOrder, ClrDatalist, ClrDatalistContainer, ClrDatalistInput, ClrDatalistModule, ClrDateContainer, ClrDateInput, ClrDatepickerModule, ClrDatepickerViewManager, ClrDay, ClrDaypicker, ClrDestroyService, ClrDragAndDropModule, ClrDragEvent, ClrDragHandle, ClrDraggable, ClrDraggableGhost, ClrDropdown, ClrDropdownItem, ClrDropdownMenu, ClrDropdownModule, ClrDropdownTrigger, ClrDroppable, ClrEmphasisModule, ClrExpandableAnimation, ClrFocusOnViewInit, ClrFocusOnViewInitModule, ClrForTypeAhead, ClrForTypeAheadModule, ClrForm, ClrFormLayout, ClrFormsModule, ClrHeader, ClrIconCustomTag, ClrIconModule, ClrIfActive, ClrIfDetail, ClrIfDragged, ClrIfError, ClrIfExpanded, ClrIfOpen, ClrIfSuccess, ClrInput, ClrInputContainer, ClrInputModule, ClrLabel, ClrLayout, ClrLayoutModule, ClrLoading, ClrLoadingButton, ClrLoadingButtonModule, ClrLoadingModule, ClrLoadingState, ClrMainContainer, ClrMainContainerModule, ClrModal, ClrModalBody, ClrModalModule, ClrMonthpicker, ClrNavLevel, ClrNavigationModule, ClrOption, ClrOptionItems, ClrOptionSelected, ClrOptions, ClrPassword, ClrPasswordContainer, ClrPasswordModule, ClrPopoverAnchor, ClrPopoverContent, ClrPopoverEventsService, ClrPopoverModule, ClrPopoverPositionService, ClrPopoverToggleService, ClrProgressBar, ClrProgressBarModule, ClrRadio, ClrRadioContainer, ClrRadioModule, ClrRadioWrapper, ClrRange, ClrRangeContainer, ClrRangeModule, ClrRecursiveForOf, ClrSelect, ClrSelectContainer, ClrSelectModule, ClrSelectedState, ClrSide, ClrSignpost, ClrSignpostContent, ClrSignpostModule, ClrSignpostTrigger, ClrSpinner, ClrSpinnerModule, ClrStackBlock, ClrStackContentInput, ClrStackHeader, ClrStackInput, ClrStackSelect, ClrStackView, ClrStackViewCustomTags, ClrStackViewLabel, ClrStackViewModule, ClrStepButton, ClrStepButtonType, ClrStepper, ClrStepperModule, ClrStepperPanel, ClrTab, ClrTabContent, ClrTabLink, ClrTabOverflowContent, ClrTabs, ClrTabsModule, ClrTextarea, ClrTextareaContainer, ClrTextareaModule, ClrTimeline, ClrTimelineLayout, ClrTimelineModule, ClrTimelineStep, ClrTimelineStepDescription, ClrTimelineStepHeader, ClrTimelineStepState, ClrTimelineStepTitle, ClrTooltip, ClrTooltipContent, ClrTooltipModule, ClrTooltipTrigger, ClrTree, ClrTreeNode, ClrTreeNodeLink, ClrTreeViewModule, ClrVerticalNav, ClrVerticalNavGroup, ClrVerticalNavGroupChildren, ClrVerticalNavIcon, ClrVerticalNavLink, ClrVerticalNavModule, ClrWizard, ClrWizardButton, ClrWizardCustomTags, ClrWizardHeaderAction, ClrWizardModule, ClrWizardPage, ClrWizardPageButtons, ClrWizardPageHeaderActions, ClrWizardPageNavTitle, ClrWizardPageTitle, ClrWizardStepnav, ClrWizardStepnavItem, ClrYearpicker, DEFAULT_BUTTON_TYPES, DatagridNumericFilter, DatagridPropertyComparator, DatagridPropertyNumericFilter, DatagridPropertyStringFilter, DatagridStringFilter, EXPANDABLE_ANIMATION_DIRECTIVES, FOCUS_ON_VIEW_INIT, FOCUS_ON_VIEW_INIT_DIRECTIVES, IS_TOGGLE, IS_TOGGLE_PROVIDER, LoadingListener, MainContainerWillyWonka, NavDetectionOompaLoompa, TOGGLE_SERVICE, TOGGLE_SERVICE_PROVIDER, ToggleServiceFactory, WrappedFormControl, collapse, commonStringsDefault, fade, fadeSlide, isToggleFactory, slide, AccordionOompaLoompa as ÇlrAccordionOompaLoompa, AccordionWillyWonka as ÇlrAccordionWillyWonka, ActionableOompaLoompa as ÇlrActionableOompaLoompa, ActiveOompaLoompa as ÇlrActiveOompaLoompa, ClrFocusTrapModule as ÇlrClrFocusTrapModule, ClrPopoverCloseButton as ÇlrClrPopoverCloseButton, ClrPopoverModuleNext as ÇlrClrPopoverModuleNext, ClrPopoverOpenCloseButton as ÇlrClrPopoverOpenCloseButton, DatagridCellRenderer as ÇlrDatagridCellRenderer, DatagridDetailRegisterer as ÇlrDatagridDetailRegisterer, DatagridHeaderRenderer as ÇlrDatagridHeaderRenderer, DatagridMainRenderer as ÇlrDatagridMainRenderer, DatagridRowRenderer as ÇlrDatagridRowRenderer, DatagridWillyWonka as ÇlrDatagridWillyWonka, ExpandableOompaLoompa as ÇlrExpandableOompaLoompa, FocusTrapDirective as ÇlrFocusTrapDirective, FocusTrapTracker as ÇlrFocusTrapTracker, StepperOompaLoompa as ÇlrStepperOompaLoompa, StepperWillyWonka as ÇlrStepperWillyWonka, TabsWillyWonka as ÇlrTabsWillyWonka, WrappedCell as ÇlrWrappedCell, WrappedColumn as ÇlrWrappedColumn, WrappedRow as ÇlrWrappedRow };
|
|
27725
|
+
export { CLR_ALERT_DIRECTIVES, CLR_BUTTON_GROUP_DIRECTIVES, CLR_DATAGRID_DIRECTIVES, CLR_DATEPICKER_DIRECTIVES, CLR_DRAG_AND_DROP_DIRECTIVES, CLR_DROPDOWN_DIRECTIVES, CLR_ICON_DIRECTIVES, CLR_LAYOUT_DIRECTIVES, CLR_LOADING_BUTTON_DIRECTIVES, CLR_LOADING_DIRECTIVES, CLR_MENU_POSITIONS, CLR_MODAL_DIRECTIVES, CLR_NAVIGATION_DIRECTIVES, CLR_PROGRESS_BAR_DIRECTIVES, CLR_SIGNPOST_DIRECTIVES, CLR_SPINNER_DIRECTIVES, CLR_STACK_VIEW_DIRECTIVES, CLR_TABS_DIRECTIVES, CLR_TOOLTIP_DIRECTIVES, CLR_TREE_VIEW_DIRECTIVES, CLR_VERTICAL_NAV_DIRECTIVES, CLR_WIZARD_DIRECTIVES, CONDITIONAL_DIRECTIVES, CUSTOM_BUTTON_TYPES, CdsIconCustomTag, ClarityModule, ClrAbstractContainer, ClrAccordion, ClrAccordionContent, ClrAccordionDescription, ClrAccordionModule, ClrAccordionPanel, ClrAccordionTitle, ClrAlert, ClrAlertItem, ClrAlertModule, ClrAlertText, ClrAlerts, ClrAlertsPager, ClrAlignment, ClrAriaCurrentLink, ClrAriaLivePoliteness, ClrAriaLiveService, ClrAxis, ClrButton, ClrButtonGroup, ClrButtonGroupModule, ClrButtonModule, ClrCalendar, ClrCheckbox, ClrCheckboxContainer, ClrCheckboxModule, ClrCheckboxWrapper, ClrCombobox, ClrComboboxContainer, ClrComboboxModule, ClrCommonFormsModule, ClrCommonStringsService, ClrConditionalModule, ClrControl, ClrControlContainer, ClrControlError, ClrControlHelper, ClrControlSuccess, ClrDataModule, ClrDatagrid, ClrDatagridActionBar, ClrDatagridActionOverflow, ClrDatagridCell, ClrDatagridColumn, ClrDatagridColumnSeparator, ClrDatagridColumnToggle, ClrDatagridColumnToggleButton, ClrDatagridColumnToggleTitle, ClrDatagridDetail, ClrDatagridDetailBody, ClrDatagridDetailHeader, ClrDatagridFilter, ClrDatagridFooter, ClrDatagridHideableColumn, ClrDatagridItems, ClrDatagridItemsTrackBy, ClrDatagridModule, ClrDatagridPageSize, ClrDatagridPagination, ClrDatagridPlaceholder, ClrDatagridRow, ClrDatagridRowDetail, ClrDatagridSortOrder, ClrDatalist, ClrDatalistContainer, ClrDatalistInput, ClrDatalistModule, ClrDateContainer, ClrDateInput, ClrDateInputValidator, ClrDatepickerModule, ClrDatepickerViewManager, ClrDay, ClrDaypicker, ClrDestroyService, ClrDragAndDropModule, ClrDragEvent, ClrDragHandle, ClrDraggable, ClrDraggableGhost, ClrDropdown, ClrDropdownItem, ClrDropdownMenu, ClrDropdownModule, ClrDropdownTrigger, ClrDroppable, ClrEmphasisModule, ClrExpandableAnimation, ClrFocusOnViewInit, ClrFocusOnViewInitModule, ClrForTypeAhead, ClrForTypeAheadModule, ClrForm, ClrFormLayout, ClrFormsModule, ClrHeader, ClrIconCustomTag, ClrIconModule, ClrIfActive, ClrIfDetail, ClrIfDragged, ClrIfError, ClrIfExpanded, ClrIfOpen, ClrIfSuccess, ClrInput, ClrInputContainer, ClrInputModule, ClrLabel, ClrLayout, ClrLayoutModule, ClrLoading, ClrLoadingButton, ClrLoadingButtonModule, ClrLoadingModule, ClrLoadingState, ClrMainContainer, ClrMainContainerModule, ClrModal, ClrModalBody, ClrModalModule, ClrMonthpicker, ClrNavLevel, ClrNavigationModule, ClrOption, ClrOptionItems, ClrOptionSelected, ClrOptions, ClrPassword, ClrPasswordContainer, ClrPasswordModule, ClrPopoverAnchor, ClrPopoverContent, ClrPopoverEventsService, ClrPopoverModule, ClrPopoverPositionService, ClrPopoverToggleService, ClrProgressBar, ClrProgressBarModule, ClrRadio, ClrRadioContainer, ClrRadioModule, ClrRadioWrapper, ClrRange, ClrRangeContainer, ClrRangeModule, ClrRecursiveForOf, ClrSelect, ClrSelectContainer, ClrSelectModule, ClrSelectedState, ClrSide, ClrSignpost, ClrSignpostContent, ClrSignpostModule, ClrSignpostTrigger, ClrSpinner, ClrSpinnerModule, ClrStackBlock, ClrStackContentInput, ClrStackHeader, ClrStackInput, ClrStackSelect, ClrStackView, ClrStackViewCustomTags, ClrStackViewLabel, ClrStackViewModule, ClrStepButton, ClrStepButtonType, ClrStepper, ClrStepperModule, ClrStepperPanel, ClrTab, ClrTabContent, ClrTabLink, ClrTabOverflowContent, ClrTabs, ClrTabsModule, ClrTextarea, ClrTextareaContainer, ClrTextareaModule, ClrTimeline, ClrTimelineLayout, ClrTimelineModule, ClrTimelineStep, ClrTimelineStepDescription, ClrTimelineStepHeader, ClrTimelineStepState, ClrTimelineStepTitle, ClrTooltip, ClrTooltipContent, ClrTooltipModule, ClrTooltipTrigger, ClrTree, ClrTreeNode, ClrTreeNodeLink, ClrTreeViewModule, ClrVerticalNav, ClrVerticalNavGroup, ClrVerticalNavGroupChildren, ClrVerticalNavIcon, ClrVerticalNavLink, ClrVerticalNavModule, ClrWizard, ClrWizardButton, ClrWizardCustomTags, ClrWizardHeaderAction, ClrWizardModule, ClrWizardPage, ClrWizardPageButtons, ClrWizardPageHeaderActions, ClrWizardPageNavTitle, ClrWizardPageTitle, ClrWizardStepnav, ClrWizardStepnavItem, ClrYearpicker, DEFAULT_BUTTON_TYPES, DatagridNumericFilter, DatagridPropertyComparator, DatagridPropertyNumericFilter, DatagridPropertyStringFilter, DatagridStringFilter, EXPANDABLE_ANIMATION_DIRECTIVES, FOCUS_ON_VIEW_INIT, FOCUS_ON_VIEW_INIT_DIRECTIVES, IS_TOGGLE, IS_TOGGLE_PROVIDER, LoadingListener, MainContainerWillyWonka, NavDetectionOompaLoompa, TOGGLE_SERVICE, TOGGLE_SERVICE_PROVIDER, ToggleServiceFactory, WrappedFormControl, collapse, commonStringsDefault, fade, fadeSlide, isToggleFactory, slide, AccordionOompaLoompa as ÇlrAccordionOompaLoompa, AccordionWillyWonka as ÇlrAccordionWillyWonka, ActionableOompaLoompa as ÇlrActionableOompaLoompa, ActiveOompaLoompa as ÇlrActiveOompaLoompa, ClrFocusTrapModule as ÇlrClrFocusTrapModule, ClrPopoverCloseButton as ÇlrClrPopoverCloseButton, ClrPopoverModuleNext as ÇlrClrPopoverModuleNext, ClrPopoverOpenCloseButton as ÇlrClrPopoverOpenCloseButton, DatagridCellRenderer as ÇlrDatagridCellRenderer, DatagridDetailRegisterer as ÇlrDatagridDetailRegisterer, DatagridHeaderRenderer as ÇlrDatagridHeaderRenderer, DatagridMainRenderer as ÇlrDatagridMainRenderer, DatagridRowRenderer as ÇlrDatagridRowRenderer, DatagridWillyWonka as ÇlrDatagridWillyWonka, ExpandableOompaLoompa as ÇlrExpandableOompaLoompa, FocusTrapDirective as ÇlrFocusTrapDirective, FocusTrapTracker as ÇlrFocusTrapTracker, StepperOompaLoompa as ÇlrStepperOompaLoompa, StepperWillyWonka as ÇlrStepperWillyWonka, TabsWillyWonka as ÇlrTabsWillyWonka, WrappedCell as ÇlrWrappedCell, WrappedColumn as ÇlrWrappedColumn, WrappedRow as ÇlrWrappedRow };
|
|
27865
27726
|
//# sourceMappingURL=clr-angular.mjs.map
|