@clr/angular 13.9.0 → 13.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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 +57 -46
- 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 +12 -4
- 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 +26 -13
- 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-header.mjs +7 -7
- 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 +9 -11
- 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/i18n/common-strings.default.mjs +3 -3
- 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 +436 -564
- package/fesm2015/clr-angular.mjs.map +1 -1
- package/fesm2020/clr-angular.mjs +441 -562
- 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 +5 -5
- 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/fesm2015/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';
|
|
@@ -188,14 +188,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
188
188
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
189
189
|
*/
|
|
190
190
|
let NB_INSTANCES = 0;
|
|
191
|
-
const UNIQUE_ID = new InjectionToken('UNIQUE_ID');
|
|
192
191
|
function uniqueIdFactory() {
|
|
193
192
|
return 'clr-id-' + NB_INSTANCES++;
|
|
194
193
|
}
|
|
195
|
-
const UNIQUE_ID_PROVIDER = {
|
|
196
|
-
provide: UNIQUE_ID,
|
|
197
|
-
useFactory: uniqueIdFactory,
|
|
198
|
-
};
|
|
199
194
|
|
|
200
195
|
/*
|
|
201
196
|
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
@@ -311,8 +306,8 @@ const commonStringsDefault = {
|
|
|
311
306
|
singleSelectionAriaLabel: 'Single selection header',
|
|
312
307
|
singleActionableAriaLabel: 'Single actionable header',
|
|
313
308
|
detailExpandableAriaLabel: 'Toggle more row content',
|
|
314
|
-
datagridFilterAriaLabel: '
|
|
315
|
-
datagridFilterDialogAriaLabel: '
|
|
309
|
+
datagridFilterAriaLabel: 'Toggle {COLUMN} filter',
|
|
310
|
+
datagridFilterDialogAriaLabel: 'Filter dialog',
|
|
316
311
|
columnSeparatorAriaLabel: 'Column resize handle',
|
|
317
312
|
columnSeparatorDescription: 'Use left or right key to resize the column',
|
|
318
313
|
// Alert
|
|
@@ -535,16 +530,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
535
530
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
536
531
|
*/
|
|
537
532
|
class ClrAccordionPanel {
|
|
538
|
-
constructor(commonStrings, accordionService, ifExpandService
|
|
533
|
+
constructor(commonStrings, accordionService, ifExpandService) {
|
|
539
534
|
this.commonStrings = commonStrings;
|
|
540
535
|
this.accordionService = accordionService;
|
|
541
536
|
this.ifExpandService = ifExpandService;
|
|
542
|
-
this._id = _id;
|
|
543
537
|
this.disabled = false;
|
|
544
538
|
this.panelOpen = false;
|
|
545
539
|
this.panelOpenChange = new EventEmitter();
|
|
546
540
|
this.AccordionStatus = AccordionStatus;
|
|
547
541
|
this.isAccordion = true;
|
|
542
|
+
this._id = uniqueIdFactory();
|
|
548
543
|
}
|
|
549
544
|
get id() {
|
|
550
545
|
return this._id;
|
|
@@ -602,17 +597,12 @@ class ClrAccordionPanel {
|
|
|
602
597
|
}
|
|
603
598
|
}
|
|
604
599
|
}
|
|
605
|
-
ClrAccordionPanel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrAccordionPanel, deps: [{ token: ClrCommonStringsService }, { token: AccordionService }, { token: IfExpandService }
|
|
606
|
-
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
|
|
600
|
+
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 });
|
|
601
|
+
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 });
|
|
607
602
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrAccordionPanel, decorators: [{
|
|
608
603
|
type: Component,
|
|
609
|
-
args: [{ selector: 'clr-accordion-panel', host: { '[class.clr-accordion-panel]': 'true' }, changeDetection: ChangeDetectionStrategy.OnPush, animations: panelAnimation, providers: [IfExpandService
|
|
610
|
-
}], ctorParameters: function () {
|
|
611
|
-
return [{ type: ClrCommonStringsService }, { type: AccordionService }, { type: IfExpandService }, { type: undefined, decorators: [{
|
|
612
|
-
type: Inject,
|
|
613
|
-
args: [UNIQUE_ID]
|
|
614
|
-
}] }];
|
|
615
|
-
}, propDecorators: { disabled: [{
|
|
604
|
+
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" }]
|
|
605
|
+
}], ctorParameters: function () { return [{ type: ClrCommonStringsService }, { type: AccordionService }, { type: IfExpandService }]; }, propDecorators: { disabled: [{
|
|
616
606
|
type: Input,
|
|
617
607
|
args: ['clrAccordionPanelDisabled']
|
|
618
608
|
}], panelOpen: [{
|
|
@@ -1057,8 +1047,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
1057
1047
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
1058
1048
|
*/
|
|
1059
1049
|
class ClrStepperPanel extends ClrAccordionPanel {
|
|
1060
|
-
constructor(platformId, commonStrings, formGroupName, ngModelGroup, stepperService, ifExpandService
|
|
1061
|
-
super(commonStrings, stepperService, ifExpandService
|
|
1050
|
+
constructor(platformId, commonStrings, formGroupName, ngModelGroup, stepperService, ifExpandService) {
|
|
1051
|
+
super(commonStrings, stepperService, ifExpandService);
|
|
1062
1052
|
this.platformId = platformId;
|
|
1063
1053
|
this.commonStrings = commonStrings;
|
|
1064
1054
|
this.formGroupName = formGroupName;
|
|
@@ -1104,11 +1094,11 @@ class ClrStepperPanel extends ClrAccordionPanel {
|
|
|
1104
1094
|
}
|
|
1105
1095
|
}
|
|
1106
1096
|
}
|
|
1107
|
-
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 }
|
|
1108
|
-
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
|
|
1097
|
+
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 });
|
|
1098
|
+
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 });
|
|
1109
1099
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStepperPanel, decorators: [{
|
|
1110
1100
|
type: Component,
|
|
1111
|
-
args: [{ selector: 'clr-stepper-panel', host: { '[class.clr-accordion-panel]': 'true' }, changeDetection: ChangeDetectionStrategy.OnPush, animations: stepAnimation, providers: [IfExpandService
|
|
1101
|
+
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" }]
|
|
1112
1102
|
}], ctorParameters: function () {
|
|
1113
1103
|
return [{ type: undefined, decorators: [{
|
|
1114
1104
|
type: Inject,
|
|
@@ -1117,10 +1107,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
1117
1107
|
type: Optional
|
|
1118
1108
|
}] }, { type: i1.NgModelGroup, decorators: [{
|
|
1119
1109
|
type: Optional
|
|
1120
|
-
}] }, { type: StepperService }, { type: IfExpandService }
|
|
1121
|
-
type: Inject,
|
|
1122
|
-
args: [UNIQUE_ID]
|
|
1123
|
-
}] }];
|
|
1110
|
+
}] }, { type: StepperService }, { type: IfExpandService }];
|
|
1124
1111
|
}, propDecorators: { headerButton: [{
|
|
1125
1112
|
type: ViewChild,
|
|
1126
1113
|
args: ['headerButton']
|
|
@@ -2630,12 +2617,12 @@ ClrPopoverPositions['left-bottom'] = {
|
|
|
2630
2617
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
2631
2618
|
*/
|
|
2632
2619
|
class ClrButtonGroup {
|
|
2633
|
-
constructor(buttonGroupNewService, toggleService,
|
|
2620
|
+
constructor(buttonGroupNewService, toggleService, commonStrings, destroy$) {
|
|
2634
2621
|
this.buttonGroupNewService = buttonGroupNewService;
|
|
2635
2622
|
this.toggleService = toggleService;
|
|
2636
|
-
this.popoverId = popoverId;
|
|
2637
2623
|
this.commonStrings = commonStrings;
|
|
2638
2624
|
this.destroy$ = destroy$;
|
|
2625
|
+
this.popoverId = uniqueIdFactory();
|
|
2639
2626
|
this.popoverPosition = ClrPopoverPositions['bottom-left'];
|
|
2640
2627
|
this.inlineButtons = [];
|
|
2641
2628
|
this.menuButtons = [];
|
|
@@ -2720,10 +2707,9 @@ class ClrButtonGroup {
|
|
|
2720
2707
|
this.popoverPosition = ClrPopoverPositions[this._menuPosition];
|
|
2721
2708
|
}
|
|
2722
2709
|
}
|
|
2723
|
-
ClrButtonGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrButtonGroup, deps: [{ token: ButtonInGroupService }, { token: ClrPopoverToggleService }, { token:
|
|
2710
|
+
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 });
|
|
2724
2711
|
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: [
|
|
2725
2712
|
ButtonInGroupService,
|
|
2726
|
-
UNIQUE_ID_PROVIDER,
|
|
2727
2713
|
ClrPopoverToggleService,
|
|
2728
2714
|
ClrPopoverEventsService,
|
|
2729
2715
|
ClrPopoverPositionService,
|
|
@@ -2733,18 +2719,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
2733
2719
|
type: Component,
|
|
2734
2720
|
args: [{ selector: 'clr-button-group', providers: [
|
|
2735
2721
|
ButtonInGroupService,
|
|
2736
|
-
UNIQUE_ID_PROVIDER,
|
|
2737
2722
|
ClrPopoverToggleService,
|
|
2738
2723
|
ClrPopoverEventsService,
|
|
2739
2724
|
ClrPopoverPositionService,
|
|
2740
2725
|
ClrDestroyService,
|
|
2741
2726
|
], 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" }]
|
|
2742
|
-
}], ctorParameters: function () {
|
|
2743
|
-
return [{ type: ButtonInGroupService }, { type: ClrPopoverToggleService }, { type: undefined, decorators: [{
|
|
2744
|
-
type: Inject,
|
|
2745
|
-
args: [UNIQUE_ID]
|
|
2746
|
-
}] }, { type: ClrCommonStringsService }, { type: ClrDestroyService }];
|
|
2747
|
-
}, propDecorators: { buttons: [{
|
|
2727
|
+
}], ctorParameters: function () { return [{ type: ButtonInGroupService }, { type: ClrPopoverToggleService }, { type: ClrCommonStringsService }, { type: ClrDestroyService }]; }, propDecorators: { buttons: [{
|
|
2748
2728
|
type: ContentChildren,
|
|
2749
2729
|
args: [ClrButton]
|
|
2750
2730
|
}], menuPosition: [{
|
|
@@ -3755,13 +3735,6 @@ class WrappedFormControl {
|
|
|
3755
3735
|
}
|
|
3756
3736
|
triggerValidation() {
|
|
3757
3737
|
if (this.ifControlStateService) {
|
|
3758
|
-
/**
|
|
3759
|
-
* For some reason the <input type="number" /> on blur ngControl doesn't set the control to 'touched'
|
|
3760
|
-
* This one is a workaround to provide the control to be 'touched' on blur and fix #4480.
|
|
3761
|
-
*/
|
|
3762
|
-
if (this.ngControl && !this.ngControl.touched) {
|
|
3763
|
-
this.markAsTouched();
|
|
3764
|
-
}
|
|
3765
3738
|
this.ifControlStateService.triggerStatusChange();
|
|
3766
3739
|
}
|
|
3767
3740
|
}
|
|
@@ -5257,20 +5230,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
5257
5230
|
*/
|
|
5258
5231
|
const POPOVER_HOST_ANCHOR = new InjectionToken('POPOVER_HOST_ANCHOR');
|
|
5259
5232
|
|
|
5260
|
-
/*
|
|
5261
|
-
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
5262
|
-
* This software is released under MIT license.
|
|
5263
|
-
* The full license information can be found in LICENSE in the root directory of this project.
|
|
5264
|
-
*/
|
|
5265
|
-
// TODO: if we find more components that could use this, consider moving this to utils
|
|
5266
|
-
class AriaService {
|
|
5267
|
-
}
|
|
5268
|
-
AriaService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AriaService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
5269
|
-
AriaService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AriaService });
|
|
5270
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AriaService, decorators: [{
|
|
5271
|
-
type: Injectable
|
|
5272
|
-
}] });
|
|
5273
|
-
|
|
5274
5233
|
/*
|
|
5275
5234
|
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
5276
5235
|
* This software is released under MIT license.
|
|
@@ -5656,7 +5615,6 @@ class FocusableItem {
|
|
|
5656
5615
|
*/
|
|
5657
5616
|
function customFocusableItemProvider(implementation) {
|
|
5658
5617
|
return [
|
|
5659
|
-
UNIQUE_ID_PROVIDER,
|
|
5660
5618
|
implementation,
|
|
5661
5619
|
{
|
|
5662
5620
|
provide: FocusableItem,
|
|
@@ -5769,8 +5727,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
5769
5727
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
5770
5728
|
*/
|
|
5771
5729
|
class ComboboxFocusHandler {
|
|
5772
|
-
constructor(
|
|
5773
|
-
this.id = id;
|
|
5730
|
+
constructor(rendererFactory, toggleService, selectionService, platformId) {
|
|
5774
5731
|
this.toggleService = toggleService;
|
|
5775
5732
|
this.selectionService = selectionService;
|
|
5776
5733
|
this.platformId = platformId;
|
|
@@ -5948,15 +5905,12 @@ class ComboboxFocusHandler {
|
|
|
5948
5905
|
this.optionData = options;
|
|
5949
5906
|
}
|
|
5950
5907
|
}
|
|
5951
|
-
ComboboxFocusHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ComboboxFocusHandler, deps: [{ token:
|
|
5908
|
+
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 });
|
|
5952
5909
|
ComboboxFocusHandler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ComboboxFocusHandler });
|
|
5953
5910
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ComboboxFocusHandler, decorators: [{
|
|
5954
5911
|
type: Injectable
|
|
5955
5912
|
}], ctorParameters: function () {
|
|
5956
|
-
return [{ type: undefined, decorators: [{
|
|
5957
|
-
type: Inject,
|
|
5958
|
-
args: [UNIQUE_ID]
|
|
5959
|
-
}] }, { type: i0.RendererFactory2 }, { type: ClrPopoverToggleService }, { type: OptionSelectionService }, { type: undefined, decorators: [{
|
|
5913
|
+
return [{ type: i0.RendererFactory2 }, { type: ClrPopoverToggleService }, { type: OptionSelectionService }, { type: undefined, decorators: [{
|
|
5960
5914
|
type: Inject,
|
|
5961
5915
|
args: [PLATFORM_ID]
|
|
5962
5916
|
}] }];
|
|
@@ -5975,13 +5929,240 @@ class OptionData {
|
|
|
5975
5929
|
}
|
|
5976
5930
|
}
|
|
5977
5931
|
|
|
5932
|
+
/*
|
|
5933
|
+
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
5934
|
+
* This software is released under MIT license.
|
|
5935
|
+
* The full license information can be found in LICENSE in the root directory of this project.
|
|
5936
|
+
*/
|
|
5937
|
+
class ClrOption {
|
|
5938
|
+
constructor(elRef, commonStrings, focusHandler, optionSelectionService) {
|
|
5939
|
+
this.elRef = elRef;
|
|
5940
|
+
this.commonStrings = commonStrings;
|
|
5941
|
+
this.focusHandler = focusHandler;
|
|
5942
|
+
this.optionSelectionService = optionSelectionService;
|
|
5943
|
+
// A proxy with only the necessary data to be used for a11y and the focus handler service.
|
|
5944
|
+
this.optionProxy = new OptionData(null, null);
|
|
5945
|
+
this.optionProxy.el = this.elRef.nativeElement;
|
|
5946
|
+
}
|
|
5947
|
+
set optionId(id) {
|
|
5948
|
+
this._id = id;
|
|
5949
|
+
this.optionProxy.id = this._id;
|
|
5950
|
+
}
|
|
5951
|
+
get optionId() {
|
|
5952
|
+
return this._id;
|
|
5953
|
+
}
|
|
5954
|
+
set value(value) {
|
|
5955
|
+
this._value = value;
|
|
5956
|
+
this.optionProxy.value = value;
|
|
5957
|
+
}
|
|
5958
|
+
get value() {
|
|
5959
|
+
return this._value;
|
|
5960
|
+
}
|
|
5961
|
+
get selected() {
|
|
5962
|
+
return (this.optionSelectionService.selectionModel && this.optionSelectionService.selectionModel.containsItem(this.value));
|
|
5963
|
+
}
|
|
5964
|
+
ngOnInit() {
|
|
5965
|
+
if (!this._id) {
|
|
5966
|
+
this._id = 'clr-option-' + uniqueIdFactory();
|
|
5967
|
+
this.optionProxy.id = this._id;
|
|
5968
|
+
}
|
|
5969
|
+
}
|
|
5970
|
+
onClick() {
|
|
5971
|
+
if (this.optionSelectionService.multiselectable) {
|
|
5972
|
+
this.optionSelectionService.toggle(this.value);
|
|
5973
|
+
}
|
|
5974
|
+
else {
|
|
5975
|
+
this.optionSelectionService.select(this.value);
|
|
5976
|
+
}
|
|
5977
|
+
// As the popover stays open in multi-select mode now, we have to take focus back to the input
|
|
5978
|
+
// This way we achieve two things:
|
|
5979
|
+
// - do not lose focus
|
|
5980
|
+
// - we're still able to use onBlur for "outside-click" handling
|
|
5981
|
+
this.focusHandler.focusInput();
|
|
5982
|
+
}
|
|
5983
|
+
get focusClass() {
|
|
5984
|
+
return this.focusHandler.pseudoFocus.containsItem(this.optionProxy);
|
|
5985
|
+
}
|
|
5986
|
+
}
|
|
5987
|
+
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 });
|
|
5988
|
+
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: `
|
|
5989
|
+
<ng-content></ng-content>
|
|
5990
|
+
<span *ngIf="selected" class="clr-sr-only">{{ commonStrings.keys.comboboxSelected }}</span>
|
|
5991
|
+
`, isInline: true, directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
5992
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrOption, decorators: [{
|
|
5993
|
+
type: Component,
|
|
5994
|
+
args: [{
|
|
5995
|
+
selector: 'clr-option',
|
|
5996
|
+
template: `
|
|
5997
|
+
<ng-content></ng-content>
|
|
5998
|
+
<span *ngIf="selected" class="clr-sr-only">{{ commonStrings.keys.comboboxSelected }}</span>
|
|
5999
|
+
`,
|
|
6000
|
+
host: {
|
|
6001
|
+
'[class.clr-combobox-option]': 'true',
|
|
6002
|
+
'[attr.role]': '"option"',
|
|
6003
|
+
// Do not remove. Or click-selection will not work.
|
|
6004
|
+
'[attr.tabindex]': '-1',
|
|
6005
|
+
'[attr.id]': 'optionId',
|
|
6006
|
+
},
|
|
6007
|
+
}]
|
|
6008
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: ClrCommonStringsService }, { type: ComboboxFocusHandler }, { type: OptionSelectionService }]; }, propDecorators: { optionId: [{
|
|
6009
|
+
type: Input,
|
|
6010
|
+
args: ['id']
|
|
6011
|
+
}], value: [{
|
|
6012
|
+
type: Input,
|
|
6013
|
+
args: ['clrValue']
|
|
6014
|
+
}], selected: [{
|
|
6015
|
+
type: HostBinding,
|
|
6016
|
+
args: ['class.active']
|
|
6017
|
+
}], onClick: [{
|
|
6018
|
+
type: HostListener,
|
|
6019
|
+
args: ['click']
|
|
6020
|
+
}], focusClass: [{
|
|
6021
|
+
type: HostBinding,
|
|
6022
|
+
args: ['class.clr-focus']
|
|
6023
|
+
}] } });
|
|
6024
|
+
|
|
6025
|
+
/*
|
|
6026
|
+
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
6027
|
+
* This software is released under MIT license.
|
|
6028
|
+
* The full license information can be found in LICENSE in the root directory of this project.
|
|
6029
|
+
*/
|
|
6030
|
+
let nbOptionsComponents = 0;
|
|
6031
|
+
class ClrOptions {
|
|
6032
|
+
constructor(optionSelectionService, id, el, commonStrings, focusHandler, toggleService, parentHost, document) {
|
|
6033
|
+
this.optionSelectionService = optionSelectionService;
|
|
6034
|
+
this.id = id;
|
|
6035
|
+
this.el = el;
|
|
6036
|
+
this.commonStrings = commonStrings;
|
|
6037
|
+
this.focusHandler = focusHandler;
|
|
6038
|
+
this.toggleService = toggleService;
|
|
6039
|
+
this.document = document;
|
|
6040
|
+
this.loading = false;
|
|
6041
|
+
this.subscriptions = [];
|
|
6042
|
+
if (!parentHost) {
|
|
6043
|
+
throw new Error('clr-options should only be used inside of a clr-combobox');
|
|
6044
|
+
}
|
|
6045
|
+
if (!this.optionsId) {
|
|
6046
|
+
this.optionsId = 'clr-options-' + nbOptionsComponents++;
|
|
6047
|
+
}
|
|
6048
|
+
}
|
|
6049
|
+
searchText(input) {
|
|
6050
|
+
return this.commonStrings.parse(this.commonStrings.keys.comboboxSearching, { INPUT: input });
|
|
6051
|
+
}
|
|
6052
|
+
/**
|
|
6053
|
+
* Tests if the list of options is empty, meaning it doesn't contain any items
|
|
6054
|
+
*/
|
|
6055
|
+
get emptyOptions() {
|
|
6056
|
+
return !this.optionSelectionService.loading && this.items.length === 0;
|
|
6057
|
+
}
|
|
6058
|
+
set items(items) {
|
|
6059
|
+
this._items = items;
|
|
6060
|
+
this.focusHandler.addOptionValues(this._items.map(option => option.optionProxy));
|
|
6061
|
+
}
|
|
6062
|
+
get items() {
|
|
6063
|
+
return this._items;
|
|
6064
|
+
}
|
|
6065
|
+
loadingStateChange(state) {
|
|
6066
|
+
this.loading = state === ClrLoadingState.LOADING;
|
|
6067
|
+
}
|
|
6068
|
+
ngAfterViewInit() {
|
|
6069
|
+
this.focusHandler.listbox = this.el.nativeElement;
|
|
6070
|
+
this.subscriptions.push(fromEvent(this.document, 'scroll', { capture: true }).subscribe(event => {
|
|
6071
|
+
if (this.toggleService.open &&
|
|
6072
|
+
event.target !== this.el.nativeElement &&
|
|
6073
|
+
event.target !== this.focusHandler.textInput) {
|
|
6074
|
+
this.toggleService.open = false;
|
|
6075
|
+
}
|
|
6076
|
+
}), this.items.changes.subscribe(() => {
|
|
6077
|
+
setTimeout(() => {
|
|
6078
|
+
this.focusHandler.focusFirstActive();
|
|
6079
|
+
});
|
|
6080
|
+
}));
|
|
6081
|
+
}
|
|
6082
|
+
ngOnDestroy() {
|
|
6083
|
+
this.subscriptions.forEach(sub => sub.unsubscribe());
|
|
6084
|
+
}
|
|
6085
|
+
}
|
|
6086
|
+
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 });
|
|
6087
|
+
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: `
|
|
6088
|
+
<div *ngIf="optionSelectionService.loading" class="clr-combobox-options-loading">
|
|
6089
|
+
<clr-spinner clrInline>
|
|
6090
|
+
{{ commonStrings.keys.loading }}
|
|
6091
|
+
</clr-spinner>
|
|
6092
|
+
<span class="clr-combobox-options-text">
|
|
6093
|
+
{{ searchText(optionSelectionService.currentInput) }}
|
|
6094
|
+
</span>
|
|
6095
|
+
</div>
|
|
6096
|
+
|
|
6097
|
+
<!-- Rendered if data set is empty -->
|
|
6098
|
+
<div *ngIf="emptyOptions">
|
|
6099
|
+
<span class="clr-combobox-options-empty-text">
|
|
6100
|
+
{{ commonStrings.keys.comboboxNoResults }}
|
|
6101
|
+
</span>
|
|
6102
|
+
</div>
|
|
6103
|
+
|
|
6104
|
+
<!--Option Groups and Options will be projected here-->
|
|
6105
|
+
<ng-content></ng-content>
|
|
6106
|
+
`, isInline: true, components: [{ type: ClrSpinner, selector: "clr-spinner", inputs: ["clrInline", "clrInverse", "clrSmall", "clrMedium"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
6107
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrOptions, decorators: [{
|
|
6108
|
+
type: Component,
|
|
6109
|
+
args: [{
|
|
6110
|
+
selector: 'clr-options',
|
|
6111
|
+
template: `
|
|
6112
|
+
<div *ngIf="optionSelectionService.loading" class="clr-combobox-options-loading">
|
|
6113
|
+
<clr-spinner clrInline>
|
|
6114
|
+
{{ commonStrings.keys.loading }}
|
|
6115
|
+
</clr-spinner>
|
|
6116
|
+
<span class="clr-combobox-options-text">
|
|
6117
|
+
{{ searchText(optionSelectionService.currentInput) }}
|
|
6118
|
+
</span>
|
|
6119
|
+
</div>
|
|
6120
|
+
|
|
6121
|
+
<!-- Rendered if data set is empty -->
|
|
6122
|
+
<div *ngIf="emptyOptions">
|
|
6123
|
+
<span class="clr-combobox-options-empty-text">
|
|
6124
|
+
{{ commonStrings.keys.comboboxNoResults }}
|
|
6125
|
+
</span>
|
|
6126
|
+
</div>
|
|
6127
|
+
|
|
6128
|
+
<!--Option Groups and Options will be projected here-->
|
|
6129
|
+
<ng-content></ng-content>
|
|
6130
|
+
`,
|
|
6131
|
+
providers: [{ provide: LoadingListener, useExisting: ClrOptions }],
|
|
6132
|
+
host: {
|
|
6133
|
+
'[class.clr-combobox-options]': 'true',
|
|
6134
|
+
'[attr.role]': '"listbox"',
|
|
6135
|
+
'[id]': 'optionsId',
|
|
6136
|
+
},
|
|
6137
|
+
}]
|
|
6138
|
+
}], ctorParameters: function () {
|
|
6139
|
+
return [{ type: OptionSelectionService }, { type: undefined, decorators: [{
|
|
6140
|
+
type: Inject,
|
|
6141
|
+
args: [IF_ACTIVE_ID]
|
|
6142
|
+
}] }, { type: i0.ElementRef }, { type: ClrCommonStringsService }, { type: ComboboxFocusHandler }, { type: ClrPopoverToggleService }, { type: i0.ElementRef, decorators: [{
|
|
6143
|
+
type: Optional
|
|
6144
|
+
}, {
|
|
6145
|
+
type: Inject,
|
|
6146
|
+
args: [POPOVER_HOST_ANCHOR]
|
|
6147
|
+
}] }, { type: undefined, decorators: [{
|
|
6148
|
+
type: Inject,
|
|
6149
|
+
args: [DOCUMENT]
|
|
6150
|
+
}] }];
|
|
6151
|
+
}, propDecorators: { optionsId: [{
|
|
6152
|
+
type: Input,
|
|
6153
|
+
args: ['id']
|
|
6154
|
+
}], items: [{
|
|
6155
|
+
type: ContentChildren,
|
|
6156
|
+
args: [ClrOption]
|
|
6157
|
+
}] } });
|
|
6158
|
+
|
|
5978
6159
|
/*
|
|
5979
6160
|
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
5980
6161
|
* This software is released under MIT license.
|
|
5981
6162
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
5982
6163
|
*/
|
|
5983
6164
|
class ClrCombobox extends WrappedFormControl {
|
|
5984
|
-
constructor(vcr, injector, control, renderer, el, optionSelectionService, commonStrings, toggleService, positionService, controlStateService, containerService, platformId,
|
|
6165
|
+
constructor(vcr, injector, control, renderer, el, optionSelectionService, commonStrings, toggleService, positionService, controlStateService, containerService, platformId, focusHandler, cdr) {
|
|
5985
6166
|
super(vcr, ClrComboboxContainer, injector, control, renderer, el);
|
|
5986
6167
|
this.control = control;
|
|
5987
6168
|
this.renderer = renderer;
|
|
@@ -5993,7 +6174,6 @@ class ClrCombobox extends WrappedFormControl {
|
|
|
5993
6174
|
this.controlStateService = controlStateService;
|
|
5994
6175
|
this.containerService = containerService;
|
|
5995
6176
|
this.platformId = platformId;
|
|
5996
|
-
this.ariaService = ariaService;
|
|
5997
6177
|
this.focusHandler = focusHandler;
|
|
5998
6178
|
this.cdr = cdr;
|
|
5999
6179
|
this.index = 1;
|
|
@@ -6081,10 +6261,12 @@ class ClrCombobox extends WrappedFormControl {
|
|
|
6081
6261
|
return this.optionSelectionService.multiselectable;
|
|
6082
6262
|
}
|
|
6083
6263
|
get ariaControls() {
|
|
6084
|
-
|
|
6264
|
+
var _a;
|
|
6265
|
+
return (_a = this.options) === null || _a === void 0 ? void 0 : _a.optionsId;
|
|
6085
6266
|
}
|
|
6086
6267
|
get ariaOwns() {
|
|
6087
|
-
|
|
6268
|
+
var _a;
|
|
6269
|
+
return (_a = this.options) === null || _a === void 0 ? void 0 : _a.optionsId;
|
|
6088
6270
|
}
|
|
6089
6271
|
get ariaDescribedBySelection() {
|
|
6090
6272
|
return 'selection-' + this.id;
|
|
@@ -6222,20 +6404,19 @@ class ClrCombobox extends WrappedFormControl {
|
|
|
6222
6404
|
this.el = this.textbox;
|
|
6223
6405
|
}
|
|
6224
6406
|
}
|
|
6225
|
-
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:
|
|
6407
|
+
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 });
|
|
6226
6408
|
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: [
|
|
6227
6409
|
ClrPopoverToggleService,
|
|
6228
6410
|
{ provide: POPOVER_HOST_ANCHOR, useExisting: ElementRef },
|
|
6229
6411
|
OptionSelectionService,
|
|
6230
6412
|
{ provide: LoadingListener, useExisting: ClrCombobox },
|
|
6231
6413
|
IF_ACTIVE_ID_PROVIDER,
|
|
6232
|
-
AriaService,
|
|
6233
6414
|
FOCUS_SERVICE_PROVIDER,
|
|
6234
6415
|
COMBOBOX_FOCUS_HANDLER_PROVIDER,
|
|
6235
6416
|
ClrPopoverToggleService,
|
|
6236
6417
|
ClrPopoverEventsService,
|
|
6237
6418
|
ClrPopoverPositionService,
|
|
6238
|
-
], 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"] }] });
|
|
6419
|
+
], 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"] }] });
|
|
6239
6420
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrCombobox, decorators: [{
|
|
6240
6421
|
type: Component,
|
|
6241
6422
|
args: [{ selector: 'clr-combobox', providers: [
|
|
@@ -6244,7 +6425,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
6244
6425
|
OptionSelectionService,
|
|
6245
6426
|
{ provide: LoadingListener, useExisting: ClrCombobox },
|
|
6246
6427
|
IF_ACTIVE_ID_PROVIDER,
|
|
6247
|
-
AriaService,
|
|
6248
6428
|
FOCUS_SERVICE_PROVIDER,
|
|
6249
6429
|
COMBOBOX_FOCUS_HANDLER_PROVIDER,
|
|
6250
6430
|
ClrPopoverToggleService,
|
|
@@ -6267,7 +6447,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
6267
6447
|
}] }, { type: undefined, decorators: [{
|
|
6268
6448
|
type: Inject,
|
|
6269
6449
|
args: [PLATFORM_ID]
|
|
6270
|
-
}] }, { type:
|
|
6450
|
+
}] }, { type: ComboboxFocusHandler }, { type: i0.ChangeDetectorRef }];
|
|
6271
6451
|
}, propDecorators: { textbox: [{
|
|
6272
6452
|
type: ViewChild,
|
|
6273
6453
|
args: ['textboxInput']
|
|
@@ -6277,124 +6457,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
6277
6457
|
}], optionSelected: [{
|
|
6278
6458
|
type: ContentChild,
|
|
6279
6459
|
args: [ClrOptionSelected]
|
|
6460
|
+
}], options: [{
|
|
6461
|
+
type: ContentChild,
|
|
6462
|
+
args: [ClrOptions]
|
|
6280
6463
|
}], placeholder: [{
|
|
6281
6464
|
type: Input,
|
|
6282
|
-
args: ['placeholder']
|
|
6283
|
-
}], multiSelect: [{
|
|
6284
|
-
type: Input,
|
|
6285
|
-
args: ['clrMulti']
|
|
6286
|
-
}], onKeyUp: [{
|
|
6287
|
-
type: HostListener,
|
|
6288
|
-
args: ['keydown', ['$event']]
|
|
6289
|
-
}], clrInputChange: [{
|
|
6290
|
-
type: Output,
|
|
6291
|
-
args: ['clrInputChange']
|
|
6292
|
-
}], clrOpenChange: [{
|
|
6293
|
-
type: Output,
|
|
6294
|
-
args: ['clrOpenChange']
|
|
6295
|
-
}], clrSelectionChange: [{
|
|
6296
|
-
type: Output,
|
|
6297
|
-
args: ['clrSelectionChange']
|
|
6298
|
-
}] } });
|
|
6299
|
-
|
|
6300
|
-
/*
|
|
6301
|
-
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
6302
|
-
* This software is released under MIT license.
|
|
6303
|
-
* The full license information can be found in LICENSE in the root directory of this project.
|
|
6304
|
-
*/
|
|
6305
|
-
class ClrOption {
|
|
6306
|
-
constructor(elRef, commonStrings, focusHandler, optionSelectionService, autoId) {
|
|
6307
|
-
this.elRef = elRef;
|
|
6308
|
-
this.commonStrings = commonStrings;
|
|
6309
|
-
this.focusHandler = focusHandler;
|
|
6310
|
-
this.optionSelectionService = optionSelectionService;
|
|
6311
|
-
this.autoId = autoId;
|
|
6312
|
-
// A proxy with only the necessary data to be used for a11y and the focus handler service.
|
|
6313
|
-
this.optionProxy = new OptionData(null, null);
|
|
6314
|
-
this.optionProxy.el = this.elRef.nativeElement;
|
|
6315
|
-
}
|
|
6316
|
-
set optionId(id) {
|
|
6317
|
-
this._id = id;
|
|
6318
|
-
this.optionProxy.id = this._id;
|
|
6319
|
-
}
|
|
6320
|
-
get optionId() {
|
|
6321
|
-
return this._id;
|
|
6322
|
-
}
|
|
6323
|
-
set value(value) {
|
|
6324
|
-
this._value = value;
|
|
6325
|
-
this.optionProxy.value = value;
|
|
6326
|
-
}
|
|
6327
|
-
get value() {
|
|
6328
|
-
return this._value;
|
|
6329
|
-
}
|
|
6330
|
-
get selected() {
|
|
6331
|
-
return (this.optionSelectionService.selectionModel && this.optionSelectionService.selectionModel.containsItem(this.value));
|
|
6332
|
-
}
|
|
6333
|
-
ngOnInit() {
|
|
6334
|
-
if (!this._id) {
|
|
6335
|
-
this._id = 'clr-option-' + this.autoId;
|
|
6336
|
-
this.optionProxy.id = this._id;
|
|
6337
|
-
}
|
|
6338
|
-
}
|
|
6339
|
-
onClick() {
|
|
6340
|
-
if (this.optionSelectionService.multiselectable) {
|
|
6341
|
-
this.optionSelectionService.toggle(this.value);
|
|
6342
|
-
}
|
|
6343
|
-
else {
|
|
6344
|
-
this.optionSelectionService.select(this.value);
|
|
6345
|
-
}
|
|
6346
|
-
// As the popover stays open in multi-select mode now, we have to take focus back to the input
|
|
6347
|
-
// This way we achieve two things:
|
|
6348
|
-
// - do not lose focus
|
|
6349
|
-
// - we're still able to use onBlur for "outside-click" handling
|
|
6350
|
-
this.focusHandler.focusInput();
|
|
6351
|
-
}
|
|
6352
|
-
get focusClass() {
|
|
6353
|
-
return this.focusHandler.pseudoFocus.containsItem(this.optionProxy);
|
|
6354
|
-
}
|
|
6355
|
-
}
|
|
6356
|
-
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 });
|
|
6357
|
-
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: `
|
|
6358
|
-
<ng-content></ng-content>
|
|
6359
|
-
<span *ngIf="selected" class="clr-sr-only">{{ commonStrings.keys.comboboxSelected }}</span>
|
|
6360
|
-
`, isInline: true, directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
6361
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrOption, decorators: [{
|
|
6362
|
-
type: Component,
|
|
6363
|
-
args: [{
|
|
6364
|
-
selector: 'clr-option',
|
|
6365
|
-
template: `
|
|
6366
|
-
<ng-content></ng-content>
|
|
6367
|
-
<span *ngIf="selected" class="clr-sr-only">{{ commonStrings.keys.comboboxSelected }}</span>
|
|
6368
|
-
`,
|
|
6369
|
-
providers: [UNIQUE_ID_PROVIDER],
|
|
6370
|
-
host: {
|
|
6371
|
-
'[class.clr-combobox-option]': 'true',
|
|
6372
|
-
'[attr.role]': '"option"',
|
|
6373
|
-
// Do not remove. Or click-selection will not work.
|
|
6374
|
-
'[attr.tabindex]': '-1',
|
|
6375
|
-
'[attr.id]': 'optionId',
|
|
6376
|
-
},
|
|
6377
|
-
}]
|
|
6378
|
-
}], ctorParameters: function () {
|
|
6379
|
-
return [{ type: i0.ElementRef }, { type: ClrCommonStringsService }, { type: ComboboxFocusHandler }, { type: OptionSelectionService }, { type: undefined, decorators: [{
|
|
6380
|
-
type: Inject,
|
|
6381
|
-
args: [UNIQUE_ID]
|
|
6382
|
-
}] }];
|
|
6383
|
-
}, propDecorators: { optionId: [{
|
|
6384
|
-
type: Input,
|
|
6385
|
-
args: ['id']
|
|
6386
|
-
}], value: [{
|
|
6465
|
+
args: ['placeholder']
|
|
6466
|
+
}], multiSelect: [{
|
|
6387
6467
|
type: Input,
|
|
6388
|
-
args: ['
|
|
6389
|
-
}],
|
|
6390
|
-
type: HostBinding,
|
|
6391
|
-
args: ['class.active']
|
|
6392
|
-
}], onClick: [{
|
|
6468
|
+
args: ['clrMulti']
|
|
6469
|
+
}], onKeyUp: [{
|
|
6393
6470
|
type: HostListener,
|
|
6394
|
-
args: ['
|
|
6395
|
-
}],
|
|
6396
|
-
type:
|
|
6397
|
-
args: ['
|
|
6471
|
+
args: ['keydown', ['$event']]
|
|
6472
|
+
}], clrInputChange: [{
|
|
6473
|
+
type: Output,
|
|
6474
|
+
args: ['clrInputChange']
|
|
6475
|
+
}], clrOpenChange: [{
|
|
6476
|
+
type: Output,
|
|
6477
|
+
args: ['clrOpenChange']
|
|
6478
|
+
}], clrSelectionChange: [{
|
|
6479
|
+
type: Output,
|
|
6480
|
+
args: ['clrSelectionChange']
|
|
6398
6481
|
}] } });
|
|
6399
6482
|
|
|
6400
6483
|
/*
|
|
@@ -6489,148 +6572,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
6489
6572
|
args: ['clrOptionItemsField']
|
|
6490
6573
|
}] } });
|
|
6491
6574
|
|
|
6492
|
-
/*
|
|
6493
|
-
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
6494
|
-
* This software is released under MIT license.
|
|
6495
|
-
* The full license information can be found in LICENSE in the root directory of this project.
|
|
6496
|
-
*/
|
|
6497
|
-
let nbOptionsComponents = 0;
|
|
6498
|
-
class ClrOptions {
|
|
6499
|
-
constructor(optionSelectionService, id, ariaService, el, commonStrings, focusHandler, toggleService, parentHost, document) {
|
|
6500
|
-
this.optionSelectionService = optionSelectionService;
|
|
6501
|
-
this.id = id;
|
|
6502
|
-
this.ariaService = ariaService;
|
|
6503
|
-
this.el = el;
|
|
6504
|
-
this.commonStrings = commonStrings;
|
|
6505
|
-
this.focusHandler = focusHandler;
|
|
6506
|
-
this.toggleService = toggleService;
|
|
6507
|
-
this.document = document;
|
|
6508
|
-
this.loading = false;
|
|
6509
|
-
this.subscriptions = [];
|
|
6510
|
-
if (!parentHost) {
|
|
6511
|
-
throw new Error('clr-options should only be used inside of a clr-combobox');
|
|
6512
|
-
}
|
|
6513
|
-
if (!this.optionsId) {
|
|
6514
|
-
this.optionsId = 'clr-options-' + nbOptionsComponents++;
|
|
6515
|
-
}
|
|
6516
|
-
}
|
|
6517
|
-
searchText(input) {
|
|
6518
|
-
return this.commonStrings.parse(this.commonStrings.keys.comboboxSearching, { INPUT: input });
|
|
6519
|
-
}
|
|
6520
|
-
/**
|
|
6521
|
-
* Tests if the list of options is empty, meaning it doesn't contain any items
|
|
6522
|
-
*/
|
|
6523
|
-
get emptyOptions() {
|
|
6524
|
-
return !this.optionSelectionService.loading && this.items.length === 0;
|
|
6525
|
-
}
|
|
6526
|
-
set optionsId(id) {
|
|
6527
|
-
this.ariaService.ariaControls = id;
|
|
6528
|
-
this.ariaService.ariaOwns = id;
|
|
6529
|
-
}
|
|
6530
|
-
get optionsId() {
|
|
6531
|
-
return this.ariaService.ariaControls;
|
|
6532
|
-
}
|
|
6533
|
-
set items(items) {
|
|
6534
|
-
this._items = items;
|
|
6535
|
-
this.focusHandler.addOptionValues(this._items.map(option => option.optionProxy));
|
|
6536
|
-
}
|
|
6537
|
-
get items() {
|
|
6538
|
-
return this._items;
|
|
6539
|
-
}
|
|
6540
|
-
loadingStateChange(state) {
|
|
6541
|
-
this.loading = state === ClrLoadingState.LOADING;
|
|
6542
|
-
}
|
|
6543
|
-
ngAfterViewInit() {
|
|
6544
|
-
this.focusHandler.listbox = this.el.nativeElement;
|
|
6545
|
-
this.subscriptions.push(fromEvent(this.document, 'scroll', { capture: true }).subscribe(event => {
|
|
6546
|
-
if (this.toggleService.open &&
|
|
6547
|
-
event.target !== this.el.nativeElement &&
|
|
6548
|
-
event.target !== this.focusHandler.textInput) {
|
|
6549
|
-
this.toggleService.open = false;
|
|
6550
|
-
}
|
|
6551
|
-
}), this.items.changes.subscribe(() => {
|
|
6552
|
-
setTimeout(() => {
|
|
6553
|
-
this.focusHandler.focusFirstActive();
|
|
6554
|
-
});
|
|
6555
|
-
}));
|
|
6556
|
-
}
|
|
6557
|
-
ngOnDestroy() {
|
|
6558
|
-
this.subscriptions.forEach(sub => sub.unsubscribe());
|
|
6559
|
-
}
|
|
6560
|
-
}
|
|
6561
|
-
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 });
|
|
6562
|
-
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: `
|
|
6563
|
-
<div *ngIf="optionSelectionService.loading" class="clr-combobox-options-loading">
|
|
6564
|
-
<clr-spinner clrInline>
|
|
6565
|
-
{{ commonStrings.keys.loading }}
|
|
6566
|
-
</clr-spinner>
|
|
6567
|
-
<span class="clr-combobox-options-text">
|
|
6568
|
-
{{ searchText(optionSelectionService.currentInput) }}
|
|
6569
|
-
</span>
|
|
6570
|
-
</div>
|
|
6571
|
-
|
|
6572
|
-
<!-- Rendered if data set is empty -->
|
|
6573
|
-
<div *ngIf="emptyOptions">
|
|
6574
|
-
<span class="clr-combobox-options-empty-text">
|
|
6575
|
-
{{ commonStrings.keys.comboboxNoResults }}
|
|
6576
|
-
</span>
|
|
6577
|
-
</div>
|
|
6578
|
-
|
|
6579
|
-
<!--Option Groups and Options will be projected here-->
|
|
6580
|
-
<ng-content></ng-content>
|
|
6581
|
-
`, isInline: true, components: [{ type: ClrSpinner, selector: "clr-spinner", inputs: ["clrInline", "clrInverse", "clrSmall", "clrMedium"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
6582
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrOptions, decorators: [{
|
|
6583
|
-
type: Component,
|
|
6584
|
-
args: [{
|
|
6585
|
-
selector: 'clr-options',
|
|
6586
|
-
template: `
|
|
6587
|
-
<div *ngIf="optionSelectionService.loading" class="clr-combobox-options-loading">
|
|
6588
|
-
<clr-spinner clrInline>
|
|
6589
|
-
{{ commonStrings.keys.loading }}
|
|
6590
|
-
</clr-spinner>
|
|
6591
|
-
<span class="clr-combobox-options-text">
|
|
6592
|
-
{{ searchText(optionSelectionService.currentInput) }}
|
|
6593
|
-
</span>
|
|
6594
|
-
</div>
|
|
6595
|
-
|
|
6596
|
-
<!-- Rendered if data set is empty -->
|
|
6597
|
-
<div *ngIf="emptyOptions">
|
|
6598
|
-
<span class="clr-combobox-options-empty-text">
|
|
6599
|
-
{{ commonStrings.keys.comboboxNoResults }}
|
|
6600
|
-
</span>
|
|
6601
|
-
</div>
|
|
6602
|
-
|
|
6603
|
-
<!--Option Groups and Options will be projected here-->
|
|
6604
|
-
<ng-content></ng-content>
|
|
6605
|
-
`,
|
|
6606
|
-
providers: [{ provide: LoadingListener, useExisting: ClrOptions }],
|
|
6607
|
-
host: {
|
|
6608
|
-
'[class.clr-combobox-options]': 'true',
|
|
6609
|
-
'[attr.role]': '"listbox"',
|
|
6610
|
-
'[id]': 'optionsId',
|
|
6611
|
-
},
|
|
6612
|
-
}]
|
|
6613
|
-
}], ctorParameters: function () {
|
|
6614
|
-
return [{ type: OptionSelectionService }, { type: undefined, decorators: [{
|
|
6615
|
-
type: Inject,
|
|
6616
|
-
args: [IF_ACTIVE_ID]
|
|
6617
|
-
}] }, { type: AriaService }, { type: i0.ElementRef }, { type: ClrCommonStringsService }, { type: ComboboxFocusHandler }, { type: ClrPopoverToggleService }, { type: i0.ElementRef, decorators: [{
|
|
6618
|
-
type: Optional
|
|
6619
|
-
}, {
|
|
6620
|
-
type: Inject,
|
|
6621
|
-
args: [POPOVER_HOST_ANCHOR]
|
|
6622
|
-
}] }, { type: undefined, decorators: [{
|
|
6623
|
-
type: Inject,
|
|
6624
|
-
args: [DOCUMENT]
|
|
6625
|
-
}] }];
|
|
6626
|
-
}, propDecorators: { optionsId: [{
|
|
6627
|
-
type: Input,
|
|
6628
|
-
args: ['id']
|
|
6629
|
-
}], items: [{
|
|
6630
|
-
type: ContentChildren,
|
|
6631
|
-
args: [ClrOption]
|
|
6632
|
-
}] } });
|
|
6633
|
-
|
|
6634
6575
|
/*
|
|
6635
6576
|
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
6636
6577
|
* This software is released under MIT license.
|
|
@@ -8647,7 +8588,6 @@ class ClrYearpicker {
|
|
|
8647
8588
|
this.commonStrings = commonStrings;
|
|
8648
8589
|
this.yearRangeModel = new YearRangeModel(this.calendarYear);
|
|
8649
8590
|
this._focusedYear = this.calendarYear;
|
|
8650
|
-
this.updateRange(this.yearRangeModel);
|
|
8651
8591
|
}
|
|
8652
8592
|
/**
|
|
8653
8593
|
* Gets the year which the user is currently on.
|
|
@@ -8684,7 +8624,6 @@ class ClrYearpicker {
|
|
|
8684
8624
|
*/
|
|
8685
8625
|
previousDecade() {
|
|
8686
8626
|
this.yearRangeModel = this.yearRangeModel.previousDecade();
|
|
8687
|
-
this.updateRange(this.yearRangeModel);
|
|
8688
8627
|
// Year in the yearpicker is not focused because while navigating to a different decade,
|
|
8689
8628
|
// you want the focus to remain on the decade switcher arrows.
|
|
8690
8629
|
}
|
|
@@ -8696,14 +8635,12 @@ class ClrYearpicker {
|
|
|
8696
8635
|
this.yearRangeModel = this.yearRangeModel.currentDecade();
|
|
8697
8636
|
}
|
|
8698
8637
|
this._datepickerFocusService.focusCell(this._elRef);
|
|
8699
|
-
this.updateRange(this.yearRangeModel);
|
|
8700
8638
|
}
|
|
8701
8639
|
/**
|
|
8702
8640
|
* Updates the YearRangeModel to the next decade.
|
|
8703
8641
|
*/
|
|
8704
8642
|
nextDecade() {
|
|
8705
8643
|
this.yearRangeModel = this.yearRangeModel.nextDecade();
|
|
8706
|
-
this.updateRange(this.yearRangeModel);
|
|
8707
8644
|
// Year in the yearpicker is not focused because while navigating to a different decade,
|
|
8708
8645
|
// you want the focus to remain on the decade switcher arrows.
|
|
8709
8646
|
}
|
|
@@ -8748,11 +8685,6 @@ class ClrYearpicker {
|
|
|
8748
8685
|
}
|
|
8749
8686
|
}
|
|
8750
8687
|
}
|
|
8751
|
-
updateRange(yrm) {
|
|
8752
|
-
const floor = yrm.yearRange[0];
|
|
8753
|
-
const ceil = yrm.yearRange[yrm.yearRange.length - 1];
|
|
8754
|
-
this.decadeRange = `${floor} to ${ceil}`;
|
|
8755
|
-
}
|
|
8756
8688
|
/**
|
|
8757
8689
|
* Focuses on the current calendar year when the View is initialized.
|
|
8758
8690
|
*/
|
|
@@ -9475,6 +9407,44 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
9475
9407
|
args: ['disabled']
|
|
9476
9408
|
}] } });
|
|
9477
9409
|
|
|
9410
|
+
/*
|
|
9411
|
+
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
9412
|
+
* This software is released under MIT license.
|
|
9413
|
+
* The full license information can be found in LICENSE in the root directory of this project.
|
|
9414
|
+
*/
|
|
9415
|
+
class ClrDateInputValidator {
|
|
9416
|
+
constructor(dateIOService) {
|
|
9417
|
+
this.dateIOService = dateIOService;
|
|
9418
|
+
}
|
|
9419
|
+
validate(control) {
|
|
9420
|
+
if (this.dateIOService) {
|
|
9421
|
+
const value = this.dateIOService.getDateValueFromDateString(control.value);
|
|
9422
|
+
const minDate = this.dateIOService.disabledDates.minDate.toDate();
|
|
9423
|
+
const maxDate = this.dateIOService.disabledDates.maxDate.toDate();
|
|
9424
|
+
if (value && value < this.dateIOService.disabledDates.minDate.toDate()) {
|
|
9425
|
+
return { min: { min: minDate.toLocaleDateString(), actual: value.toLocaleDateString() } };
|
|
9426
|
+
}
|
|
9427
|
+
else if (value && value > this.dateIOService.disabledDates.maxDate.toDate()) {
|
|
9428
|
+
return { max: { max: maxDate.toLocaleDateString(), actual: value.toLocaleDateString() } };
|
|
9429
|
+
}
|
|
9430
|
+
}
|
|
9431
|
+
return null;
|
|
9432
|
+
}
|
|
9433
|
+
}
|
|
9434
|
+
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 });
|
|
9435
|
+
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 });
|
|
9436
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrDateInputValidator, decorators: [{
|
|
9437
|
+
type: Directive,
|
|
9438
|
+
args: [{
|
|
9439
|
+
selector: '[clrDate]',
|
|
9440
|
+
providers: [{ provide: NG_VALIDATORS, useExisting: ClrDateInputValidator, multi: true }],
|
|
9441
|
+
}]
|
|
9442
|
+
}], ctorParameters: function () {
|
|
9443
|
+
return [{ type: DateIOService, decorators: [{
|
|
9444
|
+
type: Optional
|
|
9445
|
+
}] }];
|
|
9446
|
+
} });
|
|
9447
|
+
|
|
9478
9448
|
/*
|
|
9479
9449
|
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
9480
9450
|
* This software is released under MIT license.
|
|
@@ -9484,6 +9454,7 @@ const CLR_DATEPICKER_DIRECTIVES = [
|
|
|
9484
9454
|
ClrDay,
|
|
9485
9455
|
ClrDateContainer,
|
|
9486
9456
|
ClrDateInput,
|
|
9457
|
+
ClrDateInputValidator,
|
|
9487
9458
|
ClrDatepickerViewManager,
|
|
9488
9459
|
ClrMonthpicker,
|
|
9489
9460
|
ClrYearpicker,
|
|
@@ -9499,6 +9470,7 @@ ClrDatepickerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", vers
|
|
|
9499
9470
|
ClrDatepickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrDatepickerModule, declarations: [ClrDay,
|
|
9500
9471
|
ClrDateContainer,
|
|
9501
9472
|
ClrDateInput,
|
|
9473
|
+
ClrDateInputValidator,
|
|
9502
9474
|
ClrDatepickerViewManager,
|
|
9503
9475
|
ClrMonthpicker,
|
|
9504
9476
|
ClrYearpicker,
|
|
@@ -9512,6 +9484,7 @@ ClrDatepickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", ver
|
|
|
9512
9484
|
ClrCommonFormsModule], exports: [ClrDay,
|
|
9513
9485
|
ClrDateContainer,
|
|
9514
9486
|
ClrDateInput,
|
|
9487
|
+
ClrDateInputValidator,
|
|
9515
9488
|
ClrDatepickerViewManager,
|
|
9516
9489
|
ClrMonthpicker,
|
|
9517
9490
|
ClrYearpicker,
|
|
@@ -12105,14 +12078,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
12105
12078
|
* since it can be anything (not just a text input).
|
|
12106
12079
|
*/
|
|
12107
12080
|
class ClrDatagridFilter extends DatagridFilterRegistrar {
|
|
12108
|
-
constructor(_filters, commonStrings, smartToggleService, platformId,
|
|
12081
|
+
constructor(_filters, commonStrings, smartToggleService, platformId, elementRef) {
|
|
12109
12082
|
super(_filters);
|
|
12110
12083
|
this.commonStrings = commonStrings;
|
|
12111
12084
|
this.smartToggleService = smartToggleService;
|
|
12112
12085
|
this.platformId = platformId;
|
|
12113
|
-
this.
|
|
12086
|
+
this.elementRef = elementRef;
|
|
12114
12087
|
this.subs = [];
|
|
12115
12088
|
this.ariaExpanded = false;
|
|
12089
|
+
this.popoverId = uniqueIdFactory();
|
|
12116
12090
|
// Smart Popover
|
|
12117
12091
|
this.smartPosition = {
|
|
12118
12092
|
axis: ClrAxis.VERTICAL,
|
|
@@ -12151,18 +12125,34 @@ class ClrDatagridFilter extends DatagridFilterRegistrar {
|
|
|
12151
12125
|
get active() {
|
|
12152
12126
|
return !!this.filter && this.filter.isActive();
|
|
12153
12127
|
}
|
|
12128
|
+
ngOnChanges() {
|
|
12129
|
+
this.setToggleButtonAriaLabel();
|
|
12130
|
+
}
|
|
12154
12131
|
ngOnDestroy() {
|
|
12155
12132
|
super.ngOnDestroy();
|
|
12156
12133
|
this.subs.forEach(sub => sub.unsubscribe());
|
|
12157
12134
|
}
|
|
12135
|
+
/**
|
|
12136
|
+
* This is not in a getter to prevent "expression has changed after it was checked" errors.
|
|
12137
|
+
* And it's more performant this way since it only runs on change.
|
|
12138
|
+
*/
|
|
12139
|
+
setToggleButtonAriaLabel() {
|
|
12140
|
+
var _a;
|
|
12141
|
+
const columnElement = (_a = this.elementRef.nativeElement) === null || _a === void 0 ? void 0 : _a.closest('clr-dg-column');
|
|
12142
|
+
const columnTitleElement = columnElement === null || columnElement === void 0 ? void 0 : columnElement.querySelector('.datagrid-column-title');
|
|
12143
|
+
const columnTitle = columnTitleElement === null || columnTitleElement === void 0 ? void 0 : columnTitleElement.textContent.trim().toLocaleLowerCase();
|
|
12144
|
+
this.toggleButtonAriaLabel = this.commonStrings.parse(this.commonStrings.keys.datagridFilterAriaLabel, {
|
|
12145
|
+
COLUMN: columnTitle || '',
|
|
12146
|
+
});
|
|
12147
|
+
}
|
|
12158
12148
|
}
|
|
12159
|
-
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 }, { token:
|
|
12160
|
-
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 }
|
|
12149
|
+
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 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
12150
|
+
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, usesOnChanges: true, ngImport: i0, template: `
|
|
12161
12151
|
<button
|
|
12162
12152
|
class="datagrid-filter-toggle"
|
|
12163
12153
|
type="button"
|
|
12164
12154
|
#anchor
|
|
12165
|
-
[attr.aria-label]="
|
|
12155
|
+
[attr.aria-label]="toggleButtonAriaLabel"
|
|
12166
12156
|
[attr.aria-expanded]="ariaExpanded"
|
|
12167
12157
|
[attr.aria-controls]="popoverId"
|
|
12168
12158
|
clrPopoverAnchor
|
|
@@ -12199,13 +12189,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
12199
12189
|
args: [{
|
|
12200
12190
|
selector: 'clr-dg-filter',
|
|
12201
12191
|
// We register this component as a CustomFilter, for the parent column to detect it.
|
|
12202
|
-
providers: [{ provide: CustomFilter, useExisting: ClrDatagridFilter }
|
|
12192
|
+
providers: [{ provide: CustomFilter, useExisting: ClrDatagridFilter }],
|
|
12203
12193
|
template: `
|
|
12204
12194
|
<button
|
|
12205
12195
|
class="datagrid-filter-toggle"
|
|
12206
12196
|
type="button"
|
|
12207
12197
|
#anchor
|
|
12208
|
-
[attr.aria-label]="
|
|
12198
|
+
[attr.aria-label]="toggleButtonAriaLabel"
|
|
12209
12199
|
[attr.aria-expanded]="ariaExpanded"
|
|
12210
12200
|
[attr.aria-controls]="popoverId"
|
|
12211
12201
|
clrPopoverAnchor
|
|
@@ -12242,10 +12232,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
12242
12232
|
return [{ type: FiltersProvider }, { type: ClrCommonStringsService }, { type: ClrPopoverToggleService }, { type: undefined, decorators: [{
|
|
12243
12233
|
type: Inject,
|
|
12244
12234
|
args: [PLATFORM_ID]
|
|
12245
|
-
}] }, { type:
|
|
12246
|
-
type: Inject,
|
|
12247
|
-
args: [UNIQUE_ID]
|
|
12248
|
-
}] }];
|
|
12235
|
+
}] }, { type: i0.ElementRef }];
|
|
12249
12236
|
}, propDecorators: { anchor: [{
|
|
12250
12237
|
type: ViewChild,
|
|
12251
12238
|
args: ['anchor', { read: ElementRef }]
|
|
@@ -13391,14 +13378,14 @@ const KEYBOARD_RESIZE_LENGTH = 12;
|
|
|
13391
13378
|
class ClrDatagridColumnSeparator {
|
|
13392
13379
|
// Every column draggable separator should have its own unique ID
|
|
13393
13380
|
// in order to not conflict with other draggables/droppables.
|
|
13394
|
-
constructor(columnResizerService, renderer, ngZone, tableSizeService, commonString, document
|
|
13381
|
+
constructor(columnResizerService, renderer, ngZone, tableSizeService, commonString, document) {
|
|
13395
13382
|
this.columnResizerService = columnResizerService;
|
|
13396
13383
|
this.renderer = renderer;
|
|
13397
13384
|
this.ngZone = ngZone;
|
|
13398
13385
|
this.tableSizeService = tableSizeService;
|
|
13399
13386
|
this.commonString = commonString;
|
|
13400
13387
|
this.document = document;
|
|
13401
|
-
this.columnSeparatorId =
|
|
13388
|
+
this.columnSeparatorId = uniqueIdFactory();
|
|
13402
13389
|
this.resizeStartedOnKeyDown = false;
|
|
13403
13390
|
this.unlisteners = [];
|
|
13404
13391
|
}
|
|
@@ -13484,8 +13471,8 @@ class ClrDatagridColumnSeparator {
|
|
|
13484
13471
|
this.unlisteners.forEach(unlistener => unlistener());
|
|
13485
13472
|
}
|
|
13486
13473
|
}
|
|
13487
|
-
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 }
|
|
13488
|
-
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" } },
|
|
13474
|
+
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 });
|
|
13475
|
+
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: `
|
|
13489
13476
|
<button
|
|
13490
13477
|
type="button"
|
|
13491
13478
|
class="datagrid-column-handle"
|
|
@@ -13528,15 +13515,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
13528
13515
|
host: {
|
|
13529
13516
|
'[class.datagrid-column-separator]': 'true',
|
|
13530
13517
|
},
|
|
13531
|
-
providers: [UNIQUE_ID_PROVIDER],
|
|
13532
13518
|
}]
|
|
13533
13519
|
}], ctorParameters: function () {
|
|
13534
13520
|
return [{ type: ColumnResizerService }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: TableSizeService }, { type: ClrCommonStringsService }, { type: undefined, decorators: [{
|
|
13535
13521
|
type: Inject,
|
|
13536
13522
|
args: [DOCUMENT]
|
|
13537
|
-
}] }, { type: undefined, decorators: [{
|
|
13538
|
-
type: Inject,
|
|
13539
|
-
args: [UNIQUE_ID]
|
|
13540
13523
|
}] }];
|
|
13541
13524
|
}, propDecorators: { resizeTrackerRef: [{
|
|
13542
13525
|
type: ViewChild,
|
|
@@ -14640,10 +14623,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
14640
14623
|
*/
|
|
14641
14624
|
let nbSelection = 0;
|
|
14642
14625
|
class Selection {
|
|
14643
|
-
constructor(_items, _filters
|
|
14626
|
+
constructor(_items, _filters) {
|
|
14644
14627
|
this._items = _items;
|
|
14645
14628
|
this._filters = _filters;
|
|
14646
|
-
this._zone = _zone;
|
|
14647
14629
|
this.preserveSelection = false;
|
|
14648
14630
|
this.prevSelectionRefs = []; // Refs of selected items
|
|
14649
14631
|
this.lockedRefs = []; // Ref of locked items
|
|
@@ -14998,11 +14980,11 @@ class Selection {
|
|
|
14998
14980
|
}
|
|
14999
14981
|
}
|
|
15000
14982
|
}
|
|
15001
|
-
Selection.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: Selection, deps: [{ token: Items }, { token: FiltersProvider }
|
|
14983
|
+
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 });
|
|
15002
14984
|
Selection.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: Selection });
|
|
15003
14985
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: Selection, decorators: [{
|
|
15004
14986
|
type: Injectable
|
|
15005
|
-
}], ctorParameters: function () { return [{ type: Items }, { type: FiltersProvider }
|
|
14987
|
+
}], ctorParameters: function () { return [{ type: Items }, { type: FiltersProvider }]; } });
|
|
15006
14988
|
|
|
15007
14989
|
/*
|
|
15008
14990
|
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
@@ -15620,7 +15602,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
15620
15602
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
15621
15603
|
*/
|
|
15622
15604
|
class ClrDatagrid {
|
|
15623
|
-
constructor(organizer, items, expandableRows, selection, rowActionService, stateProvider, displayMode, renderer, detailService,
|
|
15605
|
+
constructor(organizer, items, expandableRows, selection, rowActionService, stateProvider, displayMode, renderer, detailService, document, el, page, commonStrings, columnsService, keyNavigation, zone) {
|
|
15624
15606
|
this.organizer = organizer;
|
|
15625
15607
|
this.items = items;
|
|
15626
15608
|
this.expandableRows = expandableRows;
|
|
@@ -15654,6 +15636,7 @@ class ClrDatagrid {
|
|
|
15654
15636
|
* Subscriptions to all the services and queries changes
|
|
15655
15637
|
*/
|
|
15656
15638
|
this._subscriptions = [];
|
|
15639
|
+
const datagridId = uniqueIdFactory();
|
|
15657
15640
|
this.selectAllId = 'clr-dg-select-all-' + datagridId;
|
|
15658
15641
|
this.detailService.id = datagridId;
|
|
15659
15642
|
}
|
|
@@ -15842,7 +15825,7 @@ class ClrDatagrid {
|
|
|
15842
15825
|
this.organizer.resize();
|
|
15843
15826
|
}
|
|
15844
15827
|
}
|
|
15845
|
-
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:
|
|
15828
|
+
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 });
|
|
15846
15829
|
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: [
|
|
15847
15830
|
Selection,
|
|
15848
15831
|
Sort,
|
|
@@ -15854,7 +15837,6 @@ ClrDatagrid.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "
|
|
|
15854
15837
|
ExpandableRowsCount,
|
|
15855
15838
|
StateDebouncer,
|
|
15856
15839
|
DetailService,
|
|
15857
|
-
UNIQUE_ID_PROVIDER,
|
|
15858
15840
|
StateProvider,
|
|
15859
15841
|
TableSizeService,
|
|
15860
15842
|
ColumnsService,
|
|
@@ -15874,7 +15856,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
15874
15856
|
ExpandableRowsCount,
|
|
15875
15857
|
StateDebouncer,
|
|
15876
15858
|
DetailService,
|
|
15877
|
-
UNIQUE_ID_PROVIDER,
|
|
15878
15859
|
StateProvider,
|
|
15879
15860
|
TableSizeService,
|
|
15880
15861
|
ColumnsService,
|
|
@@ -15886,9 +15867,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
15886
15867
|
}, 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" }]
|
|
15887
15868
|
}], ctorParameters: function () {
|
|
15888
15869
|
return [{ type: DatagridRenderOrganizer }, { type: Items }, { type: ExpandableRowsCount }, { type: Selection }, { type: RowActionService }, { type: StateProvider }, { type: DisplayModeService }, { type: i0.Renderer2 }, { type: DetailService }, { type: undefined, decorators: [{
|
|
15889
|
-
type: Inject,
|
|
15890
|
-
args: [UNIQUE_ID]
|
|
15891
|
-
}] }, { type: undefined, decorators: [{
|
|
15892
15870
|
type: Inject,
|
|
15893
15871
|
args: [DOCUMENT]
|
|
15894
15872
|
}] }, { type: i0.ElementRef }, { type: Page }, { type: ClrCommonStringsService }, { type: ColumnsService }, { type: KeyNavigationGridController }, { type: i0.NgZone }];
|
|
@@ -15986,13 +15964,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
15986
15964
|
*/
|
|
15987
15965
|
let clrDgActionId = 0;
|
|
15988
15966
|
class ClrDatagridActionOverflow {
|
|
15989
|
-
constructor(rowActionService, commonStrings, platformId, zone, smartToggleService
|
|
15967
|
+
constructor(rowActionService, commonStrings, platformId, zone, smartToggleService) {
|
|
15990
15968
|
this.rowActionService = rowActionService;
|
|
15991
15969
|
this.commonStrings = commonStrings;
|
|
15992
15970
|
this.platformId = platformId;
|
|
15993
15971
|
this.zone = zone;
|
|
15994
15972
|
this.smartToggleService = smartToggleService;
|
|
15995
|
-
this.popoverId = popoverId;
|
|
15996
15973
|
this.subscriptions = [];
|
|
15997
15974
|
this.smartPosition = {
|
|
15998
15975
|
axis: ClrAxis.HORIZONTAL,
|
|
@@ -16000,6 +15977,7 @@ class ClrDatagridActionOverflow {
|
|
|
16000
15977
|
anchor: ClrAlignment.CENTER,
|
|
16001
15978
|
content: ClrAlignment.CENTER,
|
|
16002
15979
|
};
|
|
15980
|
+
this.popoverId = uniqueIdFactory();
|
|
16003
15981
|
this._open = false;
|
|
16004
15982
|
this.openChange = new EventEmitter(false);
|
|
16005
15983
|
this.rowActionService.register();
|
|
@@ -16045,8 +16023,8 @@ class ClrDatagridActionOverflow {
|
|
|
16045
16023
|
}
|
|
16046
16024
|
}
|
|
16047
16025
|
}
|
|
16048
|
-
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 }
|
|
16049
|
-
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: [
|
|
16026
|
+
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 });
|
|
16027
|
+
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: `
|
|
16050
16028
|
<button
|
|
16051
16029
|
class="datagrid-action-toggle"
|
|
16052
16030
|
type="button"
|
|
@@ -16079,7 +16057,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
16079
16057
|
type: Component,
|
|
16080
16058
|
args: [{
|
|
16081
16059
|
selector: 'clr-dg-action-overflow',
|
|
16082
|
-
providers: [
|
|
16060
|
+
providers: [ClrPopoverToggleService, ClrPopoverEventsService, ClrPopoverPositionService],
|
|
16083
16061
|
template: `
|
|
16084
16062
|
<button
|
|
16085
16063
|
class="datagrid-action-toggle"
|
|
@@ -16114,10 +16092,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
16114
16092
|
return [{ type: RowActionService }, { type: ClrCommonStringsService }, { type: undefined, decorators: [{
|
|
16115
16093
|
type: Inject,
|
|
16116
16094
|
args: [PLATFORM_ID]
|
|
16117
|
-
}] }, { type: i0.NgZone }, { type: ClrPopoverToggleService }
|
|
16118
|
-
type: Inject,
|
|
16119
|
-
args: [UNIQUE_ID]
|
|
16120
|
-
}] }];
|
|
16095
|
+
}] }, { type: i0.NgZone }, { type: ClrPopoverToggleService }];
|
|
16121
16096
|
}, propDecorators: { keyFocus: [{
|
|
16122
16097
|
type: ViewChild,
|
|
16123
16098
|
args: [ClrKeyFocus]
|
|
@@ -16244,14 +16219,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
16244
16219
|
*/
|
|
16245
16220
|
/** @deprecated since 2.0, remove in 3.0 */
|
|
16246
16221
|
class ClrDatagridColumnToggle {
|
|
16247
|
-
constructor(commonStrings, columnsService,
|
|
16222
|
+
constructor(commonStrings, columnsService, popoverToggleService) {
|
|
16248
16223
|
this.commonStrings = commonStrings;
|
|
16249
16224
|
this.columnsService = columnsService;
|
|
16250
|
-
this.
|
|
16251
|
-
this.platformId = platformId;
|
|
16252
|
-
this.zone = zone;
|
|
16253
|
-
this.popoverId = popoverId;
|
|
16254
|
-
this.popoverToggleService = popoverToggleService;
|
|
16225
|
+
this.popoverId = uniqueIdFactory();
|
|
16255
16226
|
// Smart Popover
|
|
16256
16227
|
this.smartPosition = {
|
|
16257
16228
|
axis: ClrAxis.VERTICAL,
|
|
@@ -16298,8 +16269,8 @@ class ClrDatagridColumnToggle {
|
|
|
16298
16269
|
return index;
|
|
16299
16270
|
}
|
|
16300
16271
|
}
|
|
16301
|
-
ClrDatagridColumnToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrDatagridColumnToggle, deps: [{ token: ClrCommonStringsService }, { token: ColumnsService }, { token:
|
|
16302
|
-
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: [
|
|
16272
|
+
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 });
|
|
16273
|
+
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: `
|
|
16303
16274
|
<button
|
|
16304
16275
|
role="button"
|
|
16305
16276
|
type="button"
|
|
@@ -16428,20 +16399,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
16428
16399
|
</div>
|
|
16429
16400
|
`,
|
|
16430
16401
|
host: { '[class.column-switch-wrapper]': 'true', '[class.active]': 'openState' },
|
|
16431
|
-
providers: [
|
|
16402
|
+
providers: [ClrPopoverEventsService, ClrPopoverPositionService, ClrPopoverToggleService],
|
|
16432
16403
|
}]
|
|
16433
|
-
}], ctorParameters: function () {
|
|
16434
|
-
return [{ type: ClrCommonStringsService }, { type: ColumnsService }, { type: undefined, decorators: [{
|
|
16435
|
-
type: Inject,
|
|
16436
|
-
args: [UNIQUE_ID]
|
|
16437
|
-
}] }, { type: undefined, decorators: [{
|
|
16438
|
-
type: Inject,
|
|
16439
|
-
args: [PLATFORM_ID]
|
|
16440
|
-
}] }, { type: i0.NgZone }, { type: undefined, decorators: [{
|
|
16441
|
-
type: Inject,
|
|
16442
|
-
args: [UNIQUE_ID]
|
|
16443
|
-
}] }, { type: ClrPopoverToggleService }];
|
|
16444
|
-
}, propDecorators: { customToggleTitle: [{
|
|
16404
|
+
}], ctorParameters: function () { return [{ type: ClrCommonStringsService }, { type: ColumnsService }, { type: ClrPopoverToggleService }]; }, propDecorators: { customToggleTitle: [{
|
|
16445
16405
|
type: ContentChild,
|
|
16446
16406
|
args: [ClrDatagridColumnToggleTitle]
|
|
16447
16407
|
}], customToggleButton: [{
|
|
@@ -18527,8 +18487,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
18527
18487
|
}]
|
|
18528
18488
|
}] });
|
|
18529
18489
|
class ClrStackViewLabel {
|
|
18530
|
-
constructor(
|
|
18531
|
-
this.uniqueId = uniqueId;
|
|
18490
|
+
constructor() {
|
|
18532
18491
|
this._generatedId = null;
|
|
18533
18492
|
this._id = null;
|
|
18534
18493
|
}
|
|
@@ -18544,30 +18503,24 @@ class ClrStackViewLabel {
|
|
|
18544
18503
|
return this._id;
|
|
18545
18504
|
}
|
|
18546
18505
|
ngOnInit() {
|
|
18547
|
-
this._generatedId = 'clr-stack-label-' +
|
|
18506
|
+
this._generatedId = 'clr-stack-label-' + uniqueIdFactory();
|
|
18548
18507
|
if (!this.id) {
|
|
18549
18508
|
this._id = this._generatedId + '';
|
|
18550
18509
|
}
|
|
18551
18510
|
}
|
|
18552
18511
|
}
|
|
18553
|
-
ClrStackViewLabel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStackViewLabel, deps: [
|
|
18554
|
-
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" } },
|
|
18512
|
+
ClrStackViewLabel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStackViewLabel, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
18513
|
+
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 });
|
|
18555
18514
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStackViewLabel, decorators: [{
|
|
18556
18515
|
type: Component,
|
|
18557
18516
|
args: [{
|
|
18558
18517
|
selector: 'clr-stack-label',
|
|
18559
18518
|
template: '<ng-content></ng-content>',
|
|
18560
|
-
providers: [UNIQUE_ID_PROVIDER],
|
|
18561
18519
|
host: {
|
|
18562
18520
|
'[attr.id]': 'id',
|
|
18563
18521
|
},
|
|
18564
18522
|
}]
|
|
18565
|
-
}],
|
|
18566
|
-
return [{ type: undefined, decorators: [{
|
|
18567
|
-
type: Inject,
|
|
18568
|
-
args: [UNIQUE_ID]
|
|
18569
|
-
}] }];
|
|
18570
|
-
}, propDecorators: { id: [{
|
|
18523
|
+
}], propDecorators: { id: [{
|
|
18571
18524
|
type: Input
|
|
18572
18525
|
}] } });
|
|
18573
18526
|
|
|
@@ -18582,9 +18535,8 @@ class ClrStackBlock {
|
|
|
18582
18535
|
* querying for children StackBlocks, but this feature is not available when downgrading
|
|
18583
18536
|
* the component for Angular 1.
|
|
18584
18537
|
*/
|
|
18585
|
-
constructor(parent,
|
|
18538
|
+
constructor(parent, commonStrings) {
|
|
18586
18539
|
this.parent = parent;
|
|
18587
|
-
this.uniqueId = uniqueId;
|
|
18588
18540
|
this.commonStrings = commonStrings;
|
|
18589
18541
|
this.expanded = false;
|
|
18590
18542
|
this.expandedChange = new EventEmitter(false);
|
|
@@ -18593,6 +18545,7 @@ class ClrStackBlock {
|
|
|
18593
18545
|
this._changedChildren = 0;
|
|
18594
18546
|
this._fullyInitialized = false;
|
|
18595
18547
|
this._changed = false;
|
|
18548
|
+
this.uniqueId = uniqueIdFactory();
|
|
18596
18549
|
if (parent) {
|
|
18597
18550
|
parent.addChild();
|
|
18598
18551
|
}
|
|
@@ -18658,8 +18611,8 @@ class ClrStackBlock {
|
|
|
18658
18611
|
return this.expanded ? `clr-stack-children-${this.uniqueId}` : null;
|
|
18659
18612
|
}
|
|
18660
18613
|
}
|
|
18661
|
-
ClrStackBlock.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStackBlock, deps: [{ token: ClrStackBlock, optional: true, skipSelf: true }, { token:
|
|
18662
|
-
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" } },
|
|
18614
|
+
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 });
|
|
18615
|
+
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: `
|
|
18663
18616
|
<!-- The 'preventDefault' for the space keydown event prevents the page
|
|
18664
18617
|
from scrolling when a stack block is toggled via the space key. -->
|
|
18665
18618
|
<div
|
|
@@ -18759,16 +18712,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
18759
18712
|
'[attr.role]': '"heading"',
|
|
18760
18713
|
'[attr.aria-level]': 'headingLevel',
|
|
18761
18714
|
},
|
|
18762
|
-
providers: [UNIQUE_ID_PROVIDER],
|
|
18763
18715
|
}]
|
|
18764
18716
|
}], ctorParameters: function () {
|
|
18765
18717
|
return [{ type: ClrStackBlock, decorators: [{
|
|
18766
18718
|
type: SkipSelf
|
|
18767
18719
|
}, {
|
|
18768
18720
|
type: Optional
|
|
18769
|
-
}] }, { type: undefined, decorators: [{
|
|
18770
|
-
type: Inject,
|
|
18771
|
-
args: [UNIQUE_ID]
|
|
18772
18721
|
}] }, { type: ClrCommonStringsService }];
|
|
18773
18722
|
}, propDecorators: { expanded: [{
|
|
18774
18723
|
type: HostBinding,
|
|
@@ -18814,11 +18763,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
18814
18763
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
18815
18764
|
*/
|
|
18816
18765
|
class ClrStackContentInput {
|
|
18817
|
-
constructor(
|
|
18818
|
-
this.uniqueId =
|
|
18766
|
+
constructor() {
|
|
18767
|
+
this.uniqueId = uniqueIdFactory();
|
|
18819
18768
|
}
|
|
18820
18769
|
}
|
|
18821
|
-
ClrStackContentInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStackContentInput, deps: [
|
|
18770
|
+
ClrStackContentInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStackContentInput, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
18822
18771
|
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 });
|
|
18823
18772
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStackContentInput, decorators: [{
|
|
18824
18773
|
type: Directive,
|
|
@@ -18829,12 +18778,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
18829
18778
|
'[attr.aria-labelledby]': 'uniqueId',
|
|
18830
18779
|
},
|
|
18831
18780
|
}]
|
|
18832
|
-
}]
|
|
18833
|
-
return [{ type: undefined, decorators: [{
|
|
18834
|
-
type: Inject,
|
|
18835
|
-
args: [UNIQUE_ID]
|
|
18836
|
-
}] }];
|
|
18837
|
-
} });
|
|
18781
|
+
}] });
|
|
18838
18782
|
|
|
18839
18783
|
/*
|
|
18840
18784
|
* Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
|
|
@@ -18903,8 +18847,8 @@ class ClrStackHeader {
|
|
|
18903
18847
|
}
|
|
18904
18848
|
ClrStackHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStackHeader, deps: [{ token: ClrStackView }], target: i0.ɵɵFactoryTarget.Component });
|
|
18905
18849
|
ClrStackHeader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrStackHeader, selector: "clr-stack-header", ngImport: i0, template: `
|
|
18906
|
-
<
|
|
18907
|
-
<
|
|
18850
|
+
<div class="stack-header">
|
|
18851
|
+
<h4 class="stack-title"><ng-content></ng-content></h4>
|
|
18908
18852
|
|
|
18909
18853
|
<span class="stack-actions">
|
|
18910
18854
|
<ng-content select=".stack-action"></ng-content>
|
|
@@ -18919,15 +18863,15 @@ ClrStackHeader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version
|
|
|
18919
18863
|
</button>
|
|
18920
18864
|
<!-- End of undocumented experimental feature. -->
|
|
18921
18865
|
</span>
|
|
18922
|
-
</
|
|
18866
|
+
</div>
|
|
18923
18867
|
`, isInline: true, styles: [":host{display:block}\n"], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
18924
18868
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrStackHeader, decorators: [{
|
|
18925
18869
|
type: Component,
|
|
18926
18870
|
args: [{
|
|
18927
18871
|
selector: 'clr-stack-header',
|
|
18928
18872
|
template: `
|
|
18929
|
-
<
|
|
18930
|
-
<
|
|
18873
|
+
<div class="stack-header">
|
|
18874
|
+
<h4 class="stack-title"><ng-content></ng-content></h4>
|
|
18931
18875
|
|
|
18932
18876
|
<span class="stack-actions">
|
|
18933
18877
|
<ng-content select=".stack-action"></ng-content>
|
|
@@ -18942,7 +18886,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
18942
18886
|
</button>
|
|
18943
18887
|
<!-- End of undocumented experimental feature. -->
|
|
18944
18888
|
</span>
|
|
18945
|
-
</
|
|
18889
|
+
</div>
|
|
18946
18890
|
`,
|
|
18947
18891
|
// Custom elements are inline by default
|
|
18948
18892
|
styles: [
|
|
@@ -19721,8 +19665,7 @@ const LVIEW_CONTEXT_INDEX = 8;
|
|
|
19721
19665
|
// then those keys are sent together in one request.
|
|
19722
19666
|
const TREE_TYPE_AHEAD_TIMEOUT = 200;
|
|
19723
19667
|
class ClrTreeNode {
|
|
19724
|
-
constructor(
|
|
19725
|
-
this.nodeId = nodeId;
|
|
19668
|
+
constructor(platformId, parent, forTypeAheadProvider, featuresService, expandService, commonStrings, focusManager, injector) {
|
|
19726
19669
|
this.platformId = platformId;
|
|
19727
19670
|
this.forTypeAheadProvider = forTypeAheadProvider;
|
|
19728
19671
|
this.featuresService = featuresService;
|
|
@@ -19732,6 +19675,7 @@ class ClrTreeNode {
|
|
|
19732
19675
|
this.STATES = ClrSelectedState;
|
|
19733
19676
|
this.skipEmitChange = false;
|
|
19734
19677
|
this.isModelLoading = false;
|
|
19678
|
+
this.nodeId = uniqueIdFactory();
|
|
19735
19679
|
this.typeAheadKeyEvent = new Subject();
|
|
19736
19680
|
this.typeAheadKeyBuffer = '';
|
|
19737
19681
|
this.selectedChange = new EventEmitter(false);
|
|
@@ -19946,13 +19890,8 @@ class ClrTreeNode {
|
|
|
19946
19890
|
}
|
|
19947
19891
|
}
|
|
19948
19892
|
}
|
|
19949
|
-
ClrTreeNode.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTreeNode, deps: [{ token:
|
|
19950
|
-
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: [
|
|
19951
|
-
UNIQUE_ID_PROVIDER,
|
|
19952
|
-
TREE_FEATURES_PROVIDER,
|
|
19953
|
-
IfExpandService,
|
|
19954
|
-
{ provide: LoadingListener, useExisting: IfExpandService },
|
|
19955
|
-
], 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: [
|
|
19893
|
+
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 });
|
|
19894
|
+
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: [
|
|
19956
19895
|
trigger('toggleChildrenAnim', [
|
|
19957
19896
|
transition('collapsed => expanded', [style({ height: 0 }), animate(200, style({ height: '*' }))]),
|
|
19958
19897
|
transition('expanded => collapsed', [style({ height: '*' }), animate(200, style({ height: 0 }))]),
|
|
@@ -19962,12 +19901,7 @@ ClrTreeNode.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "
|
|
|
19962
19901
|
] });
|
|
19963
19902
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTreeNode, decorators: [{
|
|
19964
19903
|
type: Component,
|
|
19965
|
-
args: [{ selector: 'clr-tree-node', providers: [
|
|
19966
|
-
UNIQUE_ID_PROVIDER,
|
|
19967
|
-
TREE_FEATURES_PROVIDER,
|
|
19968
|
-
IfExpandService,
|
|
19969
|
-
{ provide: LoadingListener, useExisting: IfExpandService },
|
|
19970
|
-
], animations: [
|
|
19904
|
+
args: [{ selector: 'clr-tree-node', providers: [TREE_FEATURES_PROVIDER, IfExpandService, { provide: LoadingListener, useExisting: IfExpandService }], animations: [
|
|
19971
19905
|
trigger('toggleChildrenAnim', [
|
|
19972
19906
|
transition('collapsed => expanded', [style({ height: 0 }), animate(200, style({ height: '*' }))]),
|
|
19973
19907
|
transition('expanded => collapsed', [style({ height: '*' }), animate(200, style({ height: 0 }))]),
|
|
@@ -19979,9 +19913,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
19979
19913
|
}, 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" }]
|
|
19980
19914
|
}], ctorParameters: function () {
|
|
19981
19915
|
return [{ type: undefined, decorators: [{
|
|
19982
|
-
type: Inject,
|
|
19983
|
-
args: [UNIQUE_ID]
|
|
19984
|
-
}] }, { type: undefined, decorators: [{
|
|
19985
19916
|
type: Inject,
|
|
19986
19917
|
args: [PLATFORM_ID]
|
|
19987
19918
|
}] }, { type: ClrTreeNode, decorators: [{
|
|
@@ -20192,13 +20123,13 @@ function wrapObservable(observable, onSubscribe, onUnsubscribe) {
|
|
|
20192
20123
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
20193
20124
|
*/
|
|
20194
20125
|
class DropdownFocusHandler {
|
|
20195
|
-
constructor(
|
|
20196
|
-
this.id = id;
|
|
20126
|
+
constructor(renderer, parent, toggleService, focusService, platformId) {
|
|
20197
20127
|
this.renderer = renderer;
|
|
20198
20128
|
this.parent = parent;
|
|
20199
20129
|
this.toggleService = toggleService;
|
|
20200
20130
|
this.focusService = focusService;
|
|
20201
20131
|
this.platformId = platformId;
|
|
20132
|
+
this.id = uniqueIdFactory();
|
|
20202
20133
|
this._unlistenFuncs = [];
|
|
20203
20134
|
this.focusBackOnTrigger = false;
|
|
20204
20135
|
this.resetChildren();
|
|
@@ -20345,15 +20276,12 @@ class DropdownFocusHandler {
|
|
|
20345
20276
|
this.focusService.detachListeners();
|
|
20346
20277
|
}
|
|
20347
20278
|
}
|
|
20348
|
-
DropdownFocusHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropdownFocusHandler, deps: [{ token:
|
|
20279
|
+
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 });
|
|
20349
20280
|
DropdownFocusHandler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropdownFocusHandler });
|
|
20350
20281
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropdownFocusHandler, decorators: [{
|
|
20351
20282
|
type: Injectable
|
|
20352
20283
|
}], ctorParameters: function () {
|
|
20353
|
-
return [{ type:
|
|
20354
|
-
type: Inject,
|
|
20355
|
-
args: [UNIQUE_ID]
|
|
20356
|
-
}] }, { type: i0.Renderer2 }, { type: DropdownFocusHandler, decorators: [{
|
|
20284
|
+
return [{ type: i0.Renderer2 }, { type: DropdownFocusHandler, decorators: [{
|
|
20357
20285
|
type: SkipSelf
|
|
20358
20286
|
}, {
|
|
20359
20287
|
type: Optional
|
|
@@ -20455,13 +20383,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
20455
20383
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
20456
20384
|
*/
|
|
20457
20385
|
class BasicFocusableItem {
|
|
20458
|
-
constructor(
|
|
20459
|
-
this.id = id;
|
|
20386
|
+
constructor(el, renderer, platformId) {
|
|
20460
20387
|
this.el = el;
|
|
20461
20388
|
this.renderer = renderer;
|
|
20462
20389
|
this.platformId = platformId;
|
|
20390
|
+
this.id = uniqueIdFactory();
|
|
20463
20391
|
this.disabled = false;
|
|
20464
|
-
renderer.setAttribute(el.nativeElement, 'id', id);
|
|
20392
|
+
renderer.setAttribute(el.nativeElement, 'id', this.id);
|
|
20465
20393
|
renderer.setAttribute(el.nativeElement, 'tabindex', '-1');
|
|
20466
20394
|
}
|
|
20467
20395
|
focus() {
|
|
@@ -20483,21 +20411,17 @@ class BasicFocusableItem {
|
|
|
20483
20411
|
}
|
|
20484
20412
|
}
|
|
20485
20413
|
}
|
|
20486
|
-
BasicFocusableItem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: BasicFocusableItem, deps: [{ token:
|
|
20414
|
+
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 });
|
|
20487
20415
|
BasicFocusableItem.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: BasicFocusableItem });
|
|
20488
20416
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: BasicFocusableItem, decorators: [{
|
|
20489
20417
|
type: Injectable
|
|
20490
20418
|
}], ctorParameters: function () {
|
|
20491
|
-
return [{ type: undefined, decorators: [{
|
|
20492
|
-
type: Inject,
|
|
20493
|
-
args: [UNIQUE_ID]
|
|
20494
|
-
}] }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
|
|
20419
|
+
return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
|
|
20495
20420
|
type: Inject,
|
|
20496
20421
|
args: [PLATFORM_ID]
|
|
20497
20422
|
}] }];
|
|
20498
20423
|
} });
|
|
20499
20424
|
const BASIC_FOCUSABLE_ITEM_PROVIDER = [
|
|
20500
|
-
UNIQUE_ID_PROVIDER,
|
|
20501
20425
|
{
|
|
20502
20426
|
provide: FocusableItem,
|
|
20503
20427
|
useClass: BasicFocusableItem,
|
|
@@ -22599,10 +22523,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
22599
22523
|
*/
|
|
22600
22524
|
let nbTabContentComponents = 0;
|
|
22601
22525
|
class ClrTabContent {
|
|
22602
|
-
constructor(ifActiveService, id,
|
|
22526
|
+
constructor(ifActiveService, id, tabsService) {
|
|
22603
22527
|
this.ifActiveService = ifActiveService;
|
|
22604
22528
|
this.id = id;
|
|
22605
|
-
this.ariaService = ariaService;
|
|
22606
22529
|
this.tabsService = tabsService;
|
|
22607
22530
|
if (!this.tabContentId) {
|
|
22608
22531
|
this.tabContentId = 'clr-tab-content-' + nbTabContentComponents++;
|
|
@@ -22615,13 +22538,8 @@ class ClrTabContent {
|
|
|
22615
22538
|
this.viewRef = this.tabsService.tabContentViewContainer.createEmbeddedView(value);
|
|
22616
22539
|
}
|
|
22617
22540
|
get ariaLabelledBy() {
|
|
22618
|
-
|
|
22619
|
-
|
|
22620
|
-
get tabContentId() {
|
|
22621
|
-
return this.ariaService.ariaControls;
|
|
22622
|
-
}
|
|
22623
|
-
set tabContentId(id) {
|
|
22624
|
-
this.ariaService.ariaControls = id;
|
|
22541
|
+
var _a, _b;
|
|
22542
|
+
return (_b = (_a = this.tabsService.children.find(tab => tab.tabContent === this)) === null || _a === void 0 ? void 0 : _a.tabLink) === null || _b === void 0 ? void 0 : _b.tabLinkId;
|
|
22625
22543
|
}
|
|
22626
22544
|
get active() {
|
|
22627
22545
|
return this.ifActiveService.current === this.id;
|
|
@@ -22633,7 +22551,7 @@ class ClrTabContent {
|
|
|
22633
22551
|
}
|
|
22634
22552
|
}
|
|
22635
22553
|
}
|
|
22636
|
-
ClrTabContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTabContent, deps: [{ token: IfActiveService }, { token: IF_ACTIVE_ID }, { token:
|
|
22554
|
+
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 });
|
|
22637
22555
|
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: `
|
|
22638
22556
|
<ng-template #tabContentProjectedRef>
|
|
22639
22557
|
<section
|
|
@@ -22673,7 +22591,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
22673
22591
|
return [{ type: IfActiveService }, { type: undefined, decorators: [{
|
|
22674
22592
|
type: Inject,
|
|
22675
22593
|
args: [IF_ACTIVE_ID]
|
|
22676
|
-
}] }, { type:
|
|
22594
|
+
}] }, { type: TabsService }];
|
|
22677
22595
|
}, propDecorators: { templateRef: [{
|
|
22678
22596
|
type: ViewChild,
|
|
22679
22597
|
args: ['tabContentProjectedRef', { static: true }]
|
|
@@ -22704,10 +22622,9 @@ const TABS_ID_PROVIDER = {
|
|
|
22704
22622
|
*/
|
|
22705
22623
|
let nbTabLinkComponents = 0;
|
|
22706
22624
|
class ClrTabLink {
|
|
22707
|
-
constructor(ifActiveService, id,
|
|
22625
|
+
constructor(ifActiveService, id, el, cfr, viewContainerRef, tabsService, tabsId) {
|
|
22708
22626
|
this.ifActiveService = ifActiveService;
|
|
22709
22627
|
this.id = id;
|
|
22710
|
-
this.ariaService = ariaService;
|
|
22711
22628
|
this.el = el;
|
|
22712
22629
|
this.cfr = cfr;
|
|
22713
22630
|
this.viewContainerRef = viewContainerRef;
|
|
@@ -22734,13 +22651,8 @@ class ClrTabLink {
|
|
|
22734
22651
|
return !this.inOverflow;
|
|
22735
22652
|
}
|
|
22736
22653
|
get ariaControls() {
|
|
22737
|
-
|
|
22738
|
-
|
|
22739
|
-
get tabLinkId() {
|
|
22740
|
-
return this.ariaService.ariaLabelledBy;
|
|
22741
|
-
}
|
|
22742
|
-
set tabLinkId(id) {
|
|
22743
|
-
this.ariaService.ariaLabelledBy = id;
|
|
22654
|
+
var _a, _b;
|
|
22655
|
+
return (_b = (_a = this.tabsService.children.find(tab => tab.tabLink === this)) === null || _a === void 0 ? void 0 : _a.tabContent) === null || _b === void 0 ? void 0 : _b.tabContentId;
|
|
22744
22656
|
}
|
|
22745
22657
|
activate() {
|
|
22746
22658
|
this.ifActiveService.current = this.id;
|
|
@@ -22752,7 +22664,7 @@ class ClrTabLink {
|
|
|
22752
22664
|
return this.active ? 0 : -1;
|
|
22753
22665
|
}
|
|
22754
22666
|
}
|
|
22755
|
-
ClrTabLink.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTabLink, deps: [{ token: IfActiveService }, { token: IF_ACTIVE_ID }, { token:
|
|
22667
|
+
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 });
|
|
22756
22668
|
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 });
|
|
22757
22669
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTabLink, decorators: [{
|
|
22758
22670
|
type: Directive,
|
|
@@ -22768,7 +22680,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
22768
22680
|
return [{ type: IfActiveService }, { type: undefined, decorators: [{
|
|
22769
22681
|
type: Inject,
|
|
22770
22682
|
args: [IF_ACTIVE_ID]
|
|
22771
|
-
}] }, { type:
|
|
22683
|
+
}] }, { type: i0.ElementRef }, { type: i0.ComponentFactoryResolver }, { type: i0.ViewContainerRef }, { type: TabsService }, { type: undefined, decorators: [{
|
|
22772
22684
|
type: Inject,
|
|
22773
22685
|
args: [TABS_ID]
|
|
22774
22686
|
}] }];
|
|
@@ -22824,13 +22736,13 @@ class ClrTab {
|
|
|
22824
22736
|
}
|
|
22825
22737
|
}
|
|
22826
22738
|
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 });
|
|
22827
|
-
ClrTab.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrTab, selector: "clr-tab", providers: [IF_ACTIVE_ID_PROVIDER
|
|
22739
|
+
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 });
|
|
22828
22740
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTab, decorators: [{
|
|
22829
22741
|
type: Component,
|
|
22830
22742
|
args: [{
|
|
22831
22743
|
selector: 'clr-tab',
|
|
22832
22744
|
template: `<ng-content></ng-content>`,
|
|
22833
|
-
providers: [IF_ACTIVE_ID_PROVIDER
|
|
22745
|
+
providers: [IF_ACTIVE_ID_PROVIDER],
|
|
22834
22746
|
}]
|
|
22835
22747
|
}], ctorParameters: function () {
|
|
22836
22748
|
return [{ type: IfActiveService }, { type: undefined, decorators: [{
|
|
@@ -23724,10 +23636,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
23724
23636
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
23725
23637
|
*/
|
|
23726
23638
|
class ClrModal {
|
|
23727
|
-
constructor(_scrollingService, commonStrings
|
|
23639
|
+
constructor(_scrollingService, commonStrings) {
|
|
23728
23640
|
this._scrollingService = _scrollingService;
|
|
23729
23641
|
this.commonStrings = commonStrings;
|
|
23730
|
-
this.modalId =
|
|
23642
|
+
this.modalId = uniqueIdFactory();
|
|
23731
23643
|
this._open = false;
|
|
23732
23644
|
this._openChanged = new EventEmitter(false);
|
|
23733
23645
|
this.closable = true;
|
|
@@ -23780,8 +23692,8 @@ class ClrModal {
|
|
|
23780
23692
|
}
|
|
23781
23693
|
}
|
|
23782
23694
|
}
|
|
23783
|
-
ClrModal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrModal, deps: [{ token: ScrollingService }, { token: ClrCommonStringsService }
|
|
23784
|
-
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" } },
|
|
23695
|
+
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 });
|
|
23696
|
+
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: [
|
|
23785
23697
|
trigger('fadeDown', [
|
|
23786
23698
|
transition('* => false', [style({ opacity: 0, transform: 'translate(0, -25%)' }), animate('0.2s ease-in-out')]),
|
|
23787
23699
|
transition('false => *', [animate('0.2s ease-in-out', style({ opacity: 0, transform: 'translate(0, -25%)' }))]),
|
|
@@ -23811,13 +23723,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
23811
23723
|
transition('void => *', [style({ opacity: 0 }), animate('0.2s ease-in-out', style({ opacity: 0.85 }))]),
|
|
23812
23724
|
transition('* => void', [animate('0.2s ease-in-out', style({ opacity: 0 }))]),
|
|
23813
23725
|
]),
|
|
23814
|
-
],
|
|
23815
|
-
}], ctorParameters: function () {
|
|
23816
|
-
return [{ type: ScrollingService }, { type: ClrCommonStringsService }, { type: undefined, decorators: [{
|
|
23817
|
-
type: Inject,
|
|
23818
|
-
args: [UNIQUE_ID]
|
|
23819
|
-
}] }];
|
|
23820
|
-
}, propDecorators: { focusTrap: [{
|
|
23726
|
+
], 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" }]
|
|
23727
|
+
}], ctorParameters: function () { return [{ type: ScrollingService }, { type: ClrCommonStringsService }]; }, propDecorators: { focusTrap: [{
|
|
23821
23728
|
type: ViewChild,
|
|
23822
23729
|
args: [FocusTrapDirective]
|
|
23823
23730
|
}], _open: [{
|
|
@@ -23988,20 +23895,20 @@ const POSITIONS$1 = [
|
|
|
23988
23895
|
'left-top',
|
|
23989
23896
|
];
|
|
23990
23897
|
class ClrSignpostContent extends AbstractPopover {
|
|
23991
|
-
constructor(injector, parentHost, commonStrings,
|
|
23898
|
+
constructor(injector, parentHost, commonStrings, signpostIdService, signpostFocusManager, platformId, document) {
|
|
23992
23899
|
super(injector, parentHost);
|
|
23993
23900
|
this.commonStrings = commonStrings;
|
|
23994
|
-
this.signpostContentId = signpostContentId;
|
|
23995
23901
|
this.signpostIdService = signpostIdService;
|
|
23996
23902
|
this.signpostFocusManager = signpostFocusManager;
|
|
23997
23903
|
this.platformId = platformId;
|
|
23904
|
+
this.signpostContentId = uniqueIdFactory();
|
|
23998
23905
|
if (!parentHost) {
|
|
23999
23906
|
throw new Error('clr-signpost-content should only be used inside of a clr-signpost');
|
|
24000
23907
|
}
|
|
24001
23908
|
// Defaults
|
|
24002
23909
|
this.position = 'right-middle';
|
|
24003
23910
|
this.closeOnOutsideClick = true;
|
|
24004
|
-
this.signpostIdService.setId(signpostContentId);
|
|
23911
|
+
this.signpostIdService.setId(this.signpostContentId);
|
|
24005
23912
|
this.document = document;
|
|
24006
23913
|
}
|
|
24007
23914
|
/**********
|
|
@@ -24069,8 +23976,8 @@ class ClrSignpostContent extends AbstractPopover {
|
|
|
24069
23976
|
}
|
|
24070
23977
|
}
|
|
24071
23978
|
}
|
|
24072
|
-
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:
|
|
24073
|
-
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" } },
|
|
23979
|
+
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 });
|
|
23980
|
+
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: `
|
|
24074
23981
|
<div class="signpost-wrap">
|
|
24075
23982
|
<div class="popover-pointer"></div>
|
|
24076
23983
|
<div class="signpost-content-header">
|
|
@@ -24113,7 +24020,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
24113
24020
|
</div>
|
|
24114
24021
|
`,
|
|
24115
24022
|
host: { '[class.signpost-content]': 'true', '[id]': 'signpostContentId' },
|
|
24116
|
-
providers: [UNIQUE_ID_PROVIDER],
|
|
24117
24023
|
}]
|
|
24118
24024
|
}], ctorParameters: function () {
|
|
24119
24025
|
return [{ type: i0.Injector }, { type: i0.ElementRef, decorators: [{
|
|
@@ -24121,10 +24027,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
24121
24027
|
}, {
|
|
24122
24028
|
type: Inject,
|
|
24123
24029
|
args: [POPOVER_HOST_ANCHOR]
|
|
24124
|
-
}] }, { type: ClrCommonStringsService }, { type: undefined, decorators: [{
|
|
24125
|
-
type: Inject,
|
|
24126
|
-
args: [UNIQUE_ID]
|
|
24127
|
-
}] }, { type: SignpostIdService }, { type: SignpostFocusManager }, { type: undefined, decorators: [{
|
|
24030
|
+
}] }, { type: ClrCommonStringsService }, { type: SignpostIdService }, { type: SignpostFocusManager }, { type: undefined, decorators: [{
|
|
24128
24031
|
type: Inject,
|
|
24129
24032
|
args: [PLATFORM_ID]
|
|
24130
24033
|
}] }, { type: undefined, decorators: [{
|
|
@@ -24189,14 +24092,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
24189
24092
|
class ClrTooltip {
|
|
24190
24093
|
}
|
|
24191
24094
|
ClrTooltip.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTooltip, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
24192
|
-
ClrTooltip.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ClrTooltip, selector: "clr-tooltip", host: { properties: { "class.tooltip": "true" } }, providers: [
|
|
24193
|
-
ClrPopoverToggleService,
|
|
24194
|
-
{ provide: POPOVER_HOST_ANCHOR, useExisting: ElementRef },
|
|
24195
|
-
// TODO: consider centralizing the unique id string on a service that provides ariaAttributes that need it
|
|
24196
|
-
// AriaService in layout/tabs/providers might be a good starting point.
|
|
24197
|
-
UNIQUE_ID_PROVIDER,
|
|
24198
|
-
TooltipIdService,
|
|
24199
|
-
], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true });
|
|
24095
|
+
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 });
|
|
24200
24096
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTooltip, decorators: [{
|
|
24201
24097
|
type: Component,
|
|
24202
24098
|
args: [{
|
|
@@ -24205,14 +24101,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
24205
24101
|
host: {
|
|
24206
24102
|
'[class.tooltip]': 'true',
|
|
24207
24103
|
},
|
|
24208
|
-
providers: [
|
|
24209
|
-
ClrPopoverToggleService,
|
|
24210
|
-
{ provide: POPOVER_HOST_ANCHOR, useExisting: ElementRef },
|
|
24211
|
-
// TODO: consider centralizing the unique id string on a service that provides ariaAttributes that need it
|
|
24212
|
-
// AriaService in layout/tabs/providers might be a good starting point.
|
|
24213
|
-
UNIQUE_ID_PROVIDER,
|
|
24214
|
-
TooltipIdService,
|
|
24215
|
-
],
|
|
24104
|
+
providers: [ClrPopoverToggleService, { provide: POPOVER_HOST_ANCHOR, useExisting: ElementRef }, TooltipIdService],
|
|
24216
24105
|
}]
|
|
24217
24106
|
}] });
|
|
24218
24107
|
|
|
@@ -24235,17 +24124,14 @@ const SIZES = ['xs', 'sm', 'md', 'lg'];
|
|
|
24235
24124
|
const defaultPosition = 'right';
|
|
24236
24125
|
const defaultSize = 'sm';
|
|
24237
24126
|
class ClrTooltipContent extends AbstractPopover {
|
|
24238
|
-
constructor(injector, parentHost,
|
|
24127
|
+
constructor(injector, parentHost, tooltipIdService) {
|
|
24239
24128
|
super(injector, parentHost);
|
|
24240
|
-
this.uniqueId = uniqueId;
|
|
24241
24129
|
this.tooltipIdService = tooltipIdService;
|
|
24242
|
-
this._position = defaultPosition;
|
|
24243
|
-
this._size = defaultSize;
|
|
24244
24130
|
if (!parentHost) {
|
|
24245
24131
|
throw new Error('clr-tooltip-content should only be used inside of a clr-tooltip');
|
|
24246
24132
|
}
|
|
24247
24133
|
// Set the default id in case consumer does not supply a custom id.
|
|
24248
|
-
this.id =
|
|
24134
|
+
this.id = uniqueIdFactory();
|
|
24249
24135
|
}
|
|
24250
24136
|
get id() {
|
|
24251
24137
|
return this._id;
|
|
@@ -24302,12 +24188,16 @@ class ClrTooltipContent extends AbstractPopover {
|
|
|
24302
24188
|
this._size = newSize;
|
|
24303
24189
|
this.updateCssClass({ oldClass: `tooltip-${oldSize}`, newClass: `tooltip-${newSize}` });
|
|
24304
24190
|
}
|
|
24191
|
+
ngOnInit() {
|
|
24192
|
+
this.size = this.size || defaultSize;
|
|
24193
|
+
this.position = this.position || defaultPosition;
|
|
24194
|
+
}
|
|
24305
24195
|
updateCssClass({ oldClass, newClass }) {
|
|
24306
24196
|
this.renderer.removeClass(this.el.nativeElement, oldClass);
|
|
24307
24197
|
this.renderer.addClass(this.el.nativeElement, newClass);
|
|
24308
24198
|
}
|
|
24309
24199
|
}
|
|
24310
|
-
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:
|
|
24200
|
+
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 });
|
|
24311
24201
|
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 });
|
|
24312
24202
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrTooltipContent, decorators: [{
|
|
24313
24203
|
type: Component,
|
|
@@ -24327,9 +24217,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
24327
24217
|
}, {
|
|
24328
24218
|
type: Inject,
|
|
24329
24219
|
args: [POPOVER_HOST_ANCHOR]
|
|
24330
|
-
}] }, { type: undefined, decorators: [{
|
|
24331
|
-
type: Inject,
|
|
24332
|
-
args: [UNIQUE_ID]
|
|
24333
24220
|
}] }, { type: TooltipIdService }];
|
|
24334
24221
|
}, propDecorators: { id: [{
|
|
24335
24222
|
type: Input
|
|
@@ -26930,14 +26817,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
26930
26817
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
26931
26818
|
*/
|
|
26932
26819
|
class ClrWizard {
|
|
26933
|
-
constructor(platformId, navService, pageCollection, buttonService, headerActionService, elementRef, differs
|
|
26820
|
+
constructor(platformId, navService, pageCollection, buttonService, headerActionService, elementRef, differs) {
|
|
26934
26821
|
this.platformId = platformId;
|
|
26935
26822
|
this.navService = navService;
|
|
26936
26823
|
this.pageCollection = pageCollection;
|
|
26937
26824
|
this.buttonService = buttonService;
|
|
26938
26825
|
this.headerActionService = headerActionService;
|
|
26939
26826
|
this.elementRef = elementRef;
|
|
26940
|
-
this.wizardId = wizardId;
|
|
26941
26827
|
/**
|
|
26942
26828
|
* Set the modal size of the wizard. Set using `[clrWizardSize]` input.
|
|
26943
26829
|
*/
|
|
@@ -26997,6 +26883,7 @@ class ClrWizard {
|
|
|
26997
26883
|
* Listen via `(clrWizardOnPrevious)` event.
|
|
26998
26884
|
*/
|
|
26999
26885
|
this.onMovePrevious = new EventEmitter(false);
|
|
26886
|
+
this.wizardId = uniqueIdFactory();
|
|
27000
26887
|
this.subscriptions = [];
|
|
27001
26888
|
this.subscriptions.push(this.listenForNextPageChanges(), this.listenForPreviousPageChanges(), this.listenForCancelChanges(), this.listenForFinishedChanges(), this.listenForPageChanges());
|
|
27002
26889
|
this.differ = differs.find([]).create(null);
|
|
@@ -27318,23 +27205,11 @@ class ClrWizard {
|
|
|
27318
27205
|
this.wizardFinished.emit();
|
|
27319
27206
|
}
|
|
27320
27207
|
}
|
|
27321
|
-
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 }
|
|
27322
|
-
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: [
|
|
27323
|
-
WizardNavigationService,
|
|
27324
|
-
PageCollectionService,
|
|
27325
|
-
ButtonHubService,
|
|
27326
|
-
HeaderActionService,
|
|
27327
|
-
UNIQUE_ID_PROVIDER,
|
|
27328
|
-
], 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" }] });
|
|
27208
|
+
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 });
|
|
27209
|
+
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" }] });
|
|
27329
27210
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrWizard, decorators: [{
|
|
27330
27211
|
type: Component,
|
|
27331
|
-
args: [{ selector: 'clr-wizard', providers: [
|
|
27332
|
-
WizardNavigationService,
|
|
27333
|
-
PageCollectionService,
|
|
27334
|
-
ButtonHubService,
|
|
27335
|
-
HeaderActionService,
|
|
27336
|
-
UNIQUE_ID_PROVIDER,
|
|
27337
|
-
], host: {
|
|
27212
|
+
args: [{ selector: 'clr-wizard', providers: [WizardNavigationService, PageCollectionService, ButtonHubService, HeaderActionService], host: {
|
|
27338
27213
|
'[class.clr-wizard]': 'true',
|
|
27339
27214
|
'[class.wizard-md]': "size == 'md'",
|
|
27340
27215
|
'[class.wizard-lg]': "size == 'lg'",
|
|
@@ -27345,10 +27220,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
27345
27220
|
return [{ type: undefined, decorators: [{
|
|
27346
27221
|
type: Inject,
|
|
27347
27222
|
args: [PLATFORM_ID]
|
|
27348
|
-
}] }, { type: WizardNavigationService }, { type: PageCollectionService }, { type: ButtonHubService }, { type: HeaderActionService }, { type: i0.ElementRef }, { type: i0.IterableDiffers }
|
|
27349
|
-
type: Inject,
|
|
27350
|
-
args: [UNIQUE_ID]
|
|
27351
|
-
}] }];
|
|
27223
|
+
}] }, { type: WizardNavigationService }, { type: PageCollectionService }, { type: ButtonHubService }, { type: HeaderActionService }, { type: i0.ElementRef }, { type: i0.IterableDiffers }];
|
|
27352
27224
|
}, propDecorators: { size: [{
|
|
27353
27225
|
type: Input,
|
|
27354
27226
|
args: ['clrWizardSize']
|
|
@@ -28004,5 +27876,5 @@ const CLR_MENU_POSITIONS = [
|
|
|
28004
27876
|
* Generated bundle index. Do not edit.
|
|
28005
27877
|
*/
|
|
28006
27878
|
|
|
28007
|
-
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 };
|
|
27879
|
+
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 };
|
|
28008
27880
|
//# sourceMappingURL=clr-angular.mjs.map
|