@gravitee/ui-particles-angular 9.0.3 → 9.2.0-apim-3442-menu-search-ecbb5ef

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.
@@ -15,9 +15,9 @@ import { ComponentHarness, HarnessPredicate, parallel, TestKey } from '@angular/
15
15
  import { coerceBooleanProperty } from '@angular/cdk/coercion';
16
16
  import * as i6$1 from '@angular/material/form-field';
17
17
  import { MatFormFieldControl, MatFormFieldModule, MAT_FORM_FIELD_DEFAULT_OPTIONS } from '@angular/material/form-field';
18
- import { isEmpty, isString, isObject, toLower, dropRight, isNil, isArray, remove, cloneDeep, uniqueId, set, range } from 'lodash';
18
+ import { isEmpty, isString, isObject, toLower, dropRight, isNil, isArray, remove, cloneDeep, uniqueId, set, range, some, isEqual, filter as filter$1, intersection } from 'lodash';
19
19
  import * as i1$1 from '@angular/forms';
20
- import { FormsModule, UntypedFormArray, UntypedFormGroup, UntypedFormControl, Validators, NG_VALUE_ACCESSOR, NG_VALIDATORS, ReactiveFormsModule, NgControl } from '@angular/forms';
20
+ import { FormsModule, UntypedFormArray, UntypedFormGroup, UntypedFormControl, Validators, NG_VALUE_ACCESSOR, NG_VALIDATORS, ReactiveFormsModule, NgControl, FormControl } from '@angular/forms';
21
21
  import * as i1$2 from '@angular/cdk/a11y';
22
22
  import { A11yModule } from '@angular/cdk/a11y';
23
23
  import * as i4$1 from '@angular/material/chips';
@@ -3286,10 +3286,10 @@ class GioMonacoEditorComponent {
3286
3286
  }
3287
3287
  }
3288
3288
  GioMonacoEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GioMonacoEditorComponent, deps: [{ token: i0.ElementRef }, { token: GIO_MONACO_EDITOR_CONFIG }, { token: GioMonacoEditorService }, { token: GioLanguageJsonService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i1$1.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
3289
- GioMonacoEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: GioMonacoEditorComponent, selector: "gio-monaco-editor", inputs: { languageConfig: "languageConfig", options: "options", disableMiniMap: "disableMiniMap" }, ngImport: i0, template: ` <div *ngIf="loaded$ | async">Loading...</div>`, isInline: true, styles: [":host{display:block;height:100%;min-height:150px;transition:opacity .2s ease-out}:host-context(.hidden){opacity:0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
3289
+ GioMonacoEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: GioMonacoEditorComponent, selector: "gio-monaco-editor", inputs: { languageConfig: "languageConfig", options: "options", disableMiniMap: "disableMiniMap" }, ngImport: i0, template: ` <div *ngIf="loaded$ | async">Loading...</div>`, isInline: true, styles: [":host{display:block;height:100%;min-height:150px;pointer-events:auto;transition:opacity .2s ease-out}:host-context(.hidden){opacity:0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
3290
3290
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GioMonacoEditorComponent, decorators: [{
3291
3291
  type: Component,
3292
- args: [{ selector: 'gio-monaco-editor', template: ` <div *ngIf="loaded$ | async">Loading...</div>`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block;height:100%;min-height:150px;transition:opacity .2s ease-out}:host-context(.hidden){opacity:0}\n"] }]
3292
+ args: [{ selector: 'gio-monaco-editor', template: ` <div *ngIf="loaded$ | async">Loading...</div>`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block;height:100%;min-height:150px;pointer-events:auto;transition:opacity .2s ease-out}:host-context(.hidden){opacity:0}\n"] }]
3293
3293
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: undefined, decorators: [{
3294
3294
  type: Inject,
3295
3295
  args: [GIO_MONACO_EDITOR_CONFIG]
@@ -6175,7 +6175,7 @@ class GioMenuSelectorComponent {
6175
6175
  }
6176
6176
  }
6177
6177
  GioMenuSelectorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GioMenuSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6178
- GioMenuSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: GioMenuSelectorComponent, selector: "gio-menu-selector", inputs: { selectorTitle: "selectorTitle", selectorItems: "selectorItems", selectedItemValue: "selectedItemValue", tabIndex: "tabIndex" }, outputs: { selectChange: "selectChange" }, ngImport: i0, template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"gio-menu-selector\">\n <span class=\"gio-menu-selector__label mat-caption\">{{ selectorTitle }}</span>\n <mat-select\n class=\"gio-menu-selector__select\"\n [tabIndex]=\"tabIndex\"\n panelClass=\"gio-menu-selector-custom-width\"\n [value]=\"selectedItemValue\"\n (selectionChange)=\"onSelectionChange($event)\"\n >\n <mat-option class=\"gio-menu-selector__select__mat-option\" *ngFor=\"let item of selectorItems\" [value]=\"item.value\">\n {{ item.displayValue }}\n </mat-option>\n </mat-select>\n</div>\n", styles: [".gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}.gio-menu-selector{width:192px;padding:4px 14px 10px;border-style:solid;border-color:color-mix(in srgb,var(--gio-oem-palette--background, #1c1e39) 75%,var(--gio-oem-palette--background-contrast, #fff));border-radius:4px;margin-bottom:8px;color:var(--gio-oem-palette--background-contrast, #fff)}.gio-menu-selector__label{margin-bottom:2px}::ng-deep gio-menu-selector .gio-menu-selector>*{display:block}::ng-deep gio-menu-selector .mat-mdc-select-value{color:var(--gio-oem-palette--background-contrast, #fff)}::ng-deep gio-menu-selector .mat-mdc-select-arrow{color:var(--gio-oem-palette--background-contrast, #fff)}::ng-deep .mdc-menu-surface.mat-mdc-select-panel.gio-menu-selector-custom-width{width:192px;margin:10px -16px 0}::ng-deep .mdc-menu-surface.mat-mdc-select-panel.gio-menu-selector-custom-width mat-option[aria-selected=true]>span{color:var(--gio-oem-palette--active, #099)}::ng-deep .mdc-menu-surface.mat-mdc-select-panel.gio-menu-selector-custom-width mat-option[aria-selected=true] .mat-pseudo-checkbox-checked.mat-pseudo-checkbox-minimal:after{color:var(--gio-oem-palette--active, #099)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i6$2.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i3$2.MatOption, selector: "mat-option", exportAs: ["matOption"] }] });
6178
+ GioMenuSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: GioMenuSelectorComponent, selector: "gio-menu-selector", inputs: { selectorTitle: "selectorTitle", selectorItems: "selectorItems", selectedItemValue: "selectedItemValue", tabIndex: "tabIndex" }, outputs: { selectChange: "selectChange" }, ngImport: i0, template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"gio-menu-selector\">\n <span class=\"gio-menu-selector__label mat-caption\">{{ selectorTitle }}</span>\n <mat-select\n class=\"gio-menu-selector__select\"\n [tabIndex]=\"tabIndex\"\n panelClass=\"gio-menu-selector-custom-width\"\n [value]=\"selectedItemValue\"\n (selectionChange)=\"onSelectionChange($event)\"\n >\n <mat-option class=\"gio-menu-selector__select__mat-option\" *ngFor=\"let item of selectorItems\" [value]=\"item.value\">\n {{ item.displayValue }}\n </mat-option>\n </mat-select>\n</div>\n", styles: [".gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}.gio-menu-selector{width:192px;padding:4px 14px 10px;border-style:solid;border-color:color-mix(in srgb,var(--gio-oem-palette--background, #1c1e39) 75%,var(--gio-oem-palette--background-contrast, #fff));border-radius:4px;margin-bottom:8px;color:var(--gio-oem-palette--background-contrast, #fff)}.gio-menu-selector__label{margin-bottom:2px}::ng-deep gio-menu-selector .gio-menu-selector>*{display:block}::ng-deep gio-menu-selector .mat-mdc-select-value{color:var(--gio-oem-palette--background-contrast, #fff)}::ng-deep gio-menu-selector .mat-mdc-select-arrow{color:var(--gio-oem-palette--background-contrast, #fff)}::ng-deep .mdc-menu-surface.mat-mdc-select-panel.gio-menu-selector-custom-width{width:192px;margin:10px -16px 0}::ng-deep .mdc-menu-surface.mat-mdc-select-panel.gio-menu-selector-custom-width mat-option[aria-selected=true]>span{color:var(--gio-oem-palette--active, #099)}::ng-deep .mdc-menu-surface.mat-mdc-select-panel.gio-menu-selector-custom-width mat-option[aria-selected=true] .mat-pseudo-checkbox-checked.mat-pseudo-checkbox-minimal:after{color:var(--gio-oem-palette--active, #099)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i3$2.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i6$2.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }] });
6179
6179
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GioMenuSelectorComponent, decorators: [{
6180
6180
  type: Component,
6181
6181
  args: [{ selector: 'gio-menu-selector', template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"gio-menu-selector\">\n <span class=\"gio-menu-selector__label mat-caption\">{{ selectorTitle }}</span>\n <mat-select\n class=\"gio-menu-selector__select\"\n [tabIndex]=\"tabIndex\"\n panelClass=\"gio-menu-selector-custom-width\"\n [value]=\"selectedItemValue\"\n (selectionChange)=\"onSelectionChange($event)\"\n >\n <mat-option class=\"gio-menu-selector__select__mat-option\" *ngFor=\"let item of selectorItems\" [value]=\"item.value\">\n {{ item.displayValue }}\n </mat-option>\n </mat-select>\n</div>\n", styles: [".gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}.gio-menu-selector{width:192px;padding:4px 14px 10px;border-style:solid;border-color:color-mix(in srgb,var(--gio-oem-palette--background, #1c1e39) 75%,var(--gio-oem-palette--background-contrast, #fff));border-radius:4px;margin-bottom:8px;color:var(--gio-oem-palette--background-contrast, #fff)}.gio-menu-selector__label{margin-bottom:2px}::ng-deep gio-menu-selector .gio-menu-selector>*{display:block}::ng-deep gio-menu-selector .mat-mdc-select-value{color:var(--gio-oem-palette--background-contrast, #fff)}::ng-deep gio-menu-selector .mat-mdc-select-arrow{color:var(--gio-oem-palette--background-contrast, #fff)}::ng-deep .mdc-menu-surface.mat-mdc-select-panel.gio-menu-selector-custom-width{width:192px;margin:10px -16px 0}::ng-deep .mdc-menu-surface.mat-mdc-select-panel.gio-menu-selector-custom-width mat-option[aria-selected=true]>span{color:var(--gio-oem-palette--active, #099)}::ng-deep .mdc-menu-surface.mat-mdc-select-panel.gio-menu-selector-custom-width mat-option[aria-selected=true] .mat-pseudo-checkbox-checked.mat-pseudo-checkbox-minimal:after{color:var(--gio-oem-palette--active, #099)}\n"] }]
@@ -6239,6 +6239,96 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
6239
6239
  args: [{ selector: 'gio-menu-license-expiration-notification', template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n \n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n \n http://www.apache.org/licenses/LICENSE-2.0\n \n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"gio-menu-license-expiration-notification\">\n <ng-content></ng-content>\n</div>\n", styles: [".gio-menu-license-expiration-notification{padding:16px}\n"] }]
6240
6240
  }] });
6241
6241
 
6242
+ /*
6243
+ * Copyright (C) 2015 The Gravitee team (http://gravitee.io)
6244
+ *
6245
+ * Licensed under the Apache License, Version 2.0 (the "License");
6246
+ * you may not use this file except in compliance with the License.
6247
+ * You may obtain a copy of the License at
6248
+ *
6249
+ * http://www.apache.org/licenses/LICENSE-2.0
6250
+ *
6251
+ * Unless required by applicable law or agreed to in writing, software
6252
+ * distributed under the License is distributed on an "AS IS" BASIS,
6253
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
6254
+ * See the License for the specific language governing permissions and
6255
+ * limitations under the License.
6256
+ */
6257
+ class GioMenuSearchService {
6258
+ constructor() {
6259
+ this.menuSearchItems = [];
6260
+ }
6261
+ addMenuSearchItems(items) {
6262
+ items.forEach(item => {
6263
+ const isDuplicate = some(this.menuSearchItems, existingItem => isEqual(existingItem, item));
6264
+ if (!isDuplicate) {
6265
+ this.menuSearchItems.push(item);
6266
+ }
6267
+ });
6268
+ }
6269
+ removeMenuSearchItems(groupIds) {
6270
+ this.menuSearchItems = filter$1(this.menuSearchItems, item => isNil(item.groupIds) || !intersection(groupIds, item.groupIds).length);
6271
+ }
6272
+ }
6273
+ GioMenuSearchService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GioMenuSearchService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
6274
+ GioMenuSearchService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GioMenuSearchService, providedIn: 'root' });
6275
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GioMenuSearchService, decorators: [{
6276
+ type: Injectable,
6277
+ args: [{ providedIn: 'root' }]
6278
+ }] });
6279
+
6280
+ /*
6281
+ * Copyright (C) 2015 The Gravitee team (http://gravitee.io)
6282
+ *
6283
+ * Licensed under the Apache License, Version 2.0 (the "License");
6284
+ * you may not use this file except in compliance with the License.
6285
+ * You may obtain a copy of the License at
6286
+ *
6287
+ * http://www.apache.org/licenses/LICENSE-2.0
6288
+ *
6289
+ * Unless required by applicable law or agreed to in writing, software
6290
+ * distributed under the License is distributed on an "AS IS" BASIS,
6291
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
6292
+ * See the License for the specific language governing permissions and
6293
+ * limitations under the License.
6294
+ */
6295
+ class GioMenuSearchComponent {
6296
+ constructor(gioMenuSearchService) {
6297
+ this.gioMenuSearchService = gioMenuSearchService;
6298
+ this.control = new FormControl('');
6299
+ this.filteredItems$ = this.control.valueChanges.pipe(startWith(''), map(value => {
6300
+ const name = typeof value === 'string' ? value : value?.name;
6301
+ return this._filter(name);
6302
+ }));
6303
+ this.valueChanges = new EventEmitter();
6304
+ }
6305
+ displayFn(item) {
6306
+ return item?.name ?? '';
6307
+ }
6308
+ onSelectionChange(event) {
6309
+ this.control.reset();
6310
+ this.valueChanges.emit(event.option.value);
6311
+ }
6312
+ _filter(value) {
6313
+ if (!value) {
6314
+ return [];
6315
+ }
6316
+ const filterValue = this._normalizeValue(value);
6317
+ return this.gioMenuSearchService.menuSearchItems.filter(item => this._normalizeValue(item?.name).includes(filterValue));
6318
+ }
6319
+ _normalizeValue(value) {
6320
+ return value.toLowerCase().replace(/\s/g, '');
6321
+ }
6322
+ }
6323
+ GioMenuSearchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GioMenuSearchComponent, deps: [{ token: GioMenuSearchService }], target: i0.ɵɵFactoryTarget.Component });
6324
+ GioMenuSearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: GioMenuSearchComponent, selector: "gio-menu-search", outputs: { valueChanges: "valueChanges" }, ngImport: i0, template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<form>\n <div class=\"gio-menu-search\">\n <div class=\"gio-menu-search__input-container\">\n <input\n matInput\n class=\"gio-menu-search__input\"\n type=\"text\"\n placeholder=\"Search...\"\n [formControl]=\"control\"\n [matAutocomplete]=\"auto\"\n (keydown.enter)=\"$event.preventDefault()\"\n />\n </div>\n <div class=\"gio-menu-search__icon-container\">\n <mat-icon svgIcon=\"gio:search\" class=\"gio-menu-search__icon\"></mat-icon>\n </div>\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n [panelWidth]=\"192\"\n [hideSingleSelectionIndicator]=\"true\"\n [displayWith]=\"displayFn\"\n (optionSelected)=\"onSelectionChange($event)\"\n >\n <mat-option *ngFor=\"let item of filteredItems$ | async\" [value]=\"item\">\n <div class=\"gio-menu-search__item\">\n <div class=\"gio-menu-search__item__name\">{{ item.name }}</div>\n <div class=\"gio-menu-search__item__category\">{{ item.category }}</div>\n </div>\n </mat-option>\n </mat-autocomplete>\n </div>\n</form>\n", styles: [".gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}.gio-menu-search{display:flex;flex-direction:row;border:3px solid color-mix(in srgb,var(--gio-oem-palette--background, #1c1e39) 75%,var(--gio-oem-palette--background-contrast, #fff));border-radius:4px;margin-bottom:16px}.gio-menu-search__input-container,.gio-menu-search__icon-container{display:flex;height:44px;align-items:center}.gio-menu-search__input-container{width:160px}.gio-menu-search__icon-container{width:32px}.gio-menu-search__input{width:100%;flex:1;padding:14px 10px;border:none;background-color:transparent;color:var(--gio-oem-palette--background-contrast, #fff);outline:none;font-size:14px;font-weight:400;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.gio-menu-search__input::placeholder{color:var(--gio-oem-palette--background-contrast, #fff)}.gio-menu-search__icon{color:#98999f}.gio-menu-search__item{display:flex;height:55px;flex-direction:column;justify-content:center}.gio-menu-search__item__name{font-size:14px;font-weight:400;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.gio-menu-search__item__category{color:#9f8cf0;font-size:12px;font-weight:400;line-height:16px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i6.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple", "hideSingleSelectionIndicator"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i3$2.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i6.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i2$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
6325
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GioMenuSearchComponent, decorators: [{
6326
+ type: Component,
6327
+ args: [{ selector: 'gio-menu-search', template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<form>\n <div class=\"gio-menu-search\">\n <div class=\"gio-menu-search__input-container\">\n <input\n matInput\n class=\"gio-menu-search__input\"\n type=\"text\"\n placeholder=\"Search...\"\n [formControl]=\"control\"\n [matAutocomplete]=\"auto\"\n (keydown.enter)=\"$event.preventDefault()\"\n />\n </div>\n <div class=\"gio-menu-search__icon-container\">\n <mat-icon svgIcon=\"gio:search\" class=\"gio-menu-search__icon\"></mat-icon>\n </div>\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n [panelWidth]=\"192\"\n [hideSingleSelectionIndicator]=\"true\"\n [displayWith]=\"displayFn\"\n (optionSelected)=\"onSelectionChange($event)\"\n >\n <mat-option *ngFor=\"let item of filteredItems$ | async\" [value]=\"item\">\n <div class=\"gio-menu-search__item\">\n <div class=\"gio-menu-search__item__name\">{{ item.name }}</div>\n <div class=\"gio-menu-search__item__category\">{{ item.category }}</div>\n </div>\n </mat-option>\n </mat-autocomplete>\n </div>\n</form>\n", styles: [".gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}.gio-menu-search{display:flex;flex-direction:row;border:3px solid color-mix(in srgb,var(--gio-oem-palette--background, #1c1e39) 75%,var(--gio-oem-palette--background-contrast, #fff));border-radius:4px;margin-bottom:16px}.gio-menu-search__input-container,.gio-menu-search__icon-container{display:flex;height:44px;align-items:center}.gio-menu-search__input-container{width:160px}.gio-menu-search__icon-container{width:32px}.gio-menu-search__input{width:100%;flex:1;padding:14px 10px;border:none;background-color:transparent;color:var(--gio-oem-palette--background-contrast, #fff);outline:none;font-size:14px;font-weight:400;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.gio-menu-search__input::placeholder{color:var(--gio-oem-palette--background-contrast, #fff)}.gio-menu-search__icon{color:#98999f}.gio-menu-search__item{display:flex;height:55px;flex-direction:column;justify-content:center}.gio-menu-search__item__name{font-size:14px;font-weight:400;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.gio-menu-search__item__category{color:#9f8cf0;font-size:12px;font-weight:400;line-height:16px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}\n"] }]
6328
+ }], ctorParameters: function () { return [{ type: GioMenuSearchService }]; }, propDecorators: { valueChanges: [{
6329
+ type: Output
6330
+ }] } });
6331
+
6242
6332
  /*
6243
6333
  * Copyright (C) 2015 The Gravitee team (http://gravitee.io)
6244
6334
  *
@@ -6262,15 +6352,17 @@ GioMenuModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version:
6262
6352
  GioMenuFooterComponent,
6263
6353
  GioMenuListComponent,
6264
6354
  GioMenuHeaderComponent,
6355
+ GioMenuSearchComponent,
6265
6356
  GioMenuSelectorComponent,
6266
- GioMenuLicenseExpirationNotificationComponent], imports: [CommonModule, MatIconModule, GioIconsModule, MatSelectModule], exports: [GioMenuComponent,
6357
+ GioMenuLicenseExpirationNotificationComponent], imports: [CommonModule, MatAutocompleteModule, MatIconModule, MatInputModule, GioIconsModule, MatSelectModule, ReactiveFormsModule], exports: [GioMenuComponent,
6267
6358
  GioMenuItemComponent,
6268
6359
  GioMenuFooterComponent,
6269
6360
  GioMenuListComponent,
6270
6361
  GioMenuHeaderComponent,
6362
+ GioMenuSearchComponent,
6271
6363
  GioMenuSelectorComponent,
6272
6364
  GioMenuLicenseExpirationNotificationComponent] });
6273
- GioMenuModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GioMenuModule, imports: [CommonModule, MatIconModule, GioIconsModule, MatSelectModule] });
6365
+ GioMenuModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GioMenuModule, imports: [CommonModule, MatAutocompleteModule, MatIconModule, MatInputModule, GioIconsModule, MatSelectModule, ReactiveFormsModule] });
6274
6366
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GioMenuModule, decorators: [{
6275
6367
  type: NgModule,
6276
6368
  args: [{
@@ -6280,6 +6372,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
6280
6372
  GioMenuFooterComponent,
6281
6373
  GioMenuListComponent,
6282
6374
  GioMenuHeaderComponent,
6375
+ GioMenuSearchComponent,
6283
6376
  GioMenuSelectorComponent,
6284
6377
  GioMenuLicenseExpirationNotificationComponent,
6285
6378
  ],
@@ -6289,10 +6382,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
6289
6382
  GioMenuFooterComponent,
6290
6383
  GioMenuListComponent,
6291
6384
  GioMenuHeaderComponent,
6385
+ GioMenuSearchComponent,
6292
6386
  GioMenuSelectorComponent,
6293
6387
  GioMenuLicenseExpirationNotificationComponent,
6294
6388
  ],
6295
- imports: [CommonModule, MatIconModule, GioIconsModule, MatSelectModule],
6389
+ imports: [CommonModule, MatAutocompleteModule, MatIconModule, MatInputModule, GioIconsModule, MatSelectModule, ReactiveFormsModule],
6296
6390
  }]
6297
6391
  }] });
6298
6392
 
@@ -6335,6 +6429,44 @@ class GioMenuSelectorHarness extends ComponentHarness {
6335
6429
  }
6336
6430
  GioMenuSelectorHarness.hostSelector = 'gio-menu-selector';
6337
6431
 
6432
+ /*
6433
+ * Copyright (C) 2022 The Gravitee team (http://gravitee.io)
6434
+ *
6435
+ * Licensed under the Apache License, Version 2.0 (the "License");
6436
+ * you may not use this file except in compliance with the License.
6437
+ * You may obtain a copy of the License at
6438
+ *
6439
+ * http://www.apache.org/licenses/LICENSE-2.0
6440
+ *
6441
+ * Unless required by applicable law or agreed to in writing, software
6442
+ * distributed under the License is distributed on an "AS IS" BASIS,
6443
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
6444
+ * See the License for the specific language governing permissions and
6445
+ * limitations under the License.
6446
+ */
6447
+ class GioMenuSearchHarness extends ComponentHarness {
6448
+ constructor() {
6449
+ super(...arguments);
6450
+ this.getSearchInput = this.locatorFor(MatInputHarness);
6451
+ this.getSearchAutoComplete = this.locatorFor(MatAutocompleteHarness);
6452
+ }
6453
+ async setSearchValue(value) {
6454
+ return this.getSearchInput().then(input => input.setValue(value));
6455
+ }
6456
+ async getSearchValue() {
6457
+ return this.getSearchInput().then(input => input.getValue());
6458
+ }
6459
+ async isAutoCompletePanelVisible() {
6460
+ return this.getSearchAutoComplete().then(autocomplete => autocomplete.isOpen());
6461
+ }
6462
+ async getFilteredOptions() {
6463
+ return this.getSearchAutoComplete()
6464
+ .then(autocomplete => autocomplete.getOptions())
6465
+ .then(async (options) => Promise.all(options.map(option => option.getText())));
6466
+ }
6467
+ }
6468
+ GioMenuSearchHarness.hostSelector = 'gio-menu-search';
6469
+
6338
6470
  /*
6339
6471
  * Copyright (C) 2015 The Gravitee team (http://gravitee.io)
6340
6472
  *
@@ -6936,5 +7068,5 @@ const computeStyleAndContrastByPrefix = (prefix, color) => {
6936
7068
  * Generated bundle index. Do not edit.
6937
7069
  */
6938
7070
 
6939
- export { ConfigureTestingGioMonacoEditor, GIO_DIALOG_WIDTH, GIO_FORM_FOCUS_INVALID_IGNORE_SELECTOR, GioAsciidoctorComponent, GioAsciidoctorModule, GioAsciidoctorService, GioAvatarComponent, GioAvatarModule, GioBannerActionDirective, GioBannerBodyDirective, GioBannerComponent, GioBannerErrorComponent, GioBannerInfoComponent, GioBannerModule, GioBannerSuccessComponent, GioBannerWarningComponent, GioBaseFormFocusInvalidDirective, GioBreadcrumbComponent, GioBreadcrumbItemDirective, GioBreadcrumbModule, GioButtonFocusInvalidButtonDirective, GioClipboardCopyIconComponent, GioClipboardCopyWrapperComponent, GioClipboardModule, GioConfirmAndValidateDialogComponent, GioConfirmAndValidateDialogHarness, GioConfirmAndValidateDialogModule, GioConfirmDialogComponent, GioConfirmDialogHarness, GioConfirmDialogModule, GioFormCronComponent, GioFormCronHarness, GioFormCronHintComponent, GioFormCronLabelComponent, GioFormCronModule, GioFormFilePickerAddButtonComponent, GioFormFilePickerComponent, GioFormFilePickerEmptyComponent, GioFormFilePickerInputHarness, GioFormFilePickerLabelComponent, GioFormFilePickerModule, GioFormFocusInvalidFormDirective, GioFormFocusInvalidIgnoreDirective, GioFormFocusInvalidModule, GioFormHeadersComponent, GioFormHeadersHarness, GioFormHeadersLabelComponent, GioFormHeadersModule, GioFormJsonSchemaComponent, GioFormJsonSchemaModule, GioFormLabelComponent, GioFormPrefixDirective, GioFormSlideToggleComponent, GioFormSlideToggleDirective, GioFormSlideToggleModule, GioFormTagsInputComponent, GioFormTagsInputHarness, GioFormTagsInputModule, GioIconsModule, GioLicenseDialogComponent, GioLicenseDialogModule, GioLicenseDirective, GioLicenseExpirationNotificationComponent, GioLicenseExpirationNotificationHarness, GioLicenseExpirationNotificationModule, GioLicenseModule, GioLicenseService, GioLicenseTestingModule, GioLoaderComponent, GioLoaderModule, GioMatConfigModule, GioMenuComponent, GioMenuFooterComponent, GioMenuHeaderComponent, GioMenuItemComponent, GioMenuLicenseExpirationNotificationComponent, GioMenuListComponent, GioMenuModule, GioMenuSelectorComponent, GioMenuSelectorHarness, GioMenuService, GioMonacoEditorComponent, GioMonacoEditorFormFieldDirective, GioMonacoEditorHarness, GioMonacoEditorModule, GioPrismJsService, GioRadioButtonContentComponent, GioRadioButtonModule, GioRadioButtonSubitleComponent, GioRadioButtonTitleComponent, GioSafePipeModule, GioSaveBarComponent, GioSaveBarHarness, GioSaveBarModule, GioSubmenuComponent, GioSubmenuGroupComponent, GioSubmenuItemComponent, GioSubmenuModule, GioSubmenuTitleDirective, GioTopBarComponent, GioTopBarContentComponent, GioTopBarLinkComponent, GioTopBarLinkModule, GioTopBarMenuComponent, GioTopBarMenuModule, GioTopBarModule, LICENSE_CONFIGURATION_TESTING, NewFile, OEM_DEFAULT_LOGO, OEM_LICENSE_CONFIGURATION_TESTING, OEM_THEME_ARG_TYPES, SafePipe, computeAndInjectStylesForStory, computeStyles, computeStylesForStory, resetStoryStyleInjection };
7071
+ export { ConfigureTestingGioMonacoEditor, GIO_DIALOG_WIDTH, GIO_FORM_FOCUS_INVALID_IGNORE_SELECTOR, GioAsciidoctorComponent, GioAsciidoctorModule, GioAsciidoctorService, GioAvatarComponent, GioAvatarModule, GioBannerActionDirective, GioBannerBodyDirective, GioBannerComponent, GioBannerErrorComponent, GioBannerInfoComponent, GioBannerModule, GioBannerSuccessComponent, GioBannerWarningComponent, GioBaseFormFocusInvalidDirective, GioBreadcrumbComponent, GioBreadcrumbItemDirective, GioBreadcrumbModule, GioButtonFocusInvalidButtonDirective, GioClipboardCopyIconComponent, GioClipboardCopyWrapperComponent, GioClipboardModule, GioConfirmAndValidateDialogComponent, GioConfirmAndValidateDialogHarness, GioConfirmAndValidateDialogModule, GioConfirmDialogComponent, GioConfirmDialogHarness, GioConfirmDialogModule, GioFormCronComponent, GioFormCronHarness, GioFormCronHintComponent, GioFormCronLabelComponent, GioFormCronModule, GioFormFilePickerAddButtonComponent, GioFormFilePickerComponent, GioFormFilePickerEmptyComponent, GioFormFilePickerInputHarness, GioFormFilePickerLabelComponent, GioFormFilePickerModule, GioFormFocusInvalidFormDirective, GioFormFocusInvalidIgnoreDirective, GioFormFocusInvalidModule, GioFormHeadersComponent, GioFormHeadersHarness, GioFormHeadersLabelComponent, GioFormHeadersModule, GioFormJsonSchemaComponent, GioFormJsonSchemaModule, GioFormLabelComponent, GioFormPrefixDirective, GioFormSlideToggleComponent, GioFormSlideToggleDirective, GioFormSlideToggleModule, GioFormTagsInputComponent, GioFormTagsInputHarness, GioFormTagsInputModule, GioIconsModule, GioLicenseDialogComponent, GioLicenseDialogModule, GioLicenseDirective, GioLicenseExpirationNotificationComponent, GioLicenseExpirationNotificationHarness, GioLicenseExpirationNotificationModule, GioLicenseModule, GioLicenseService, GioLicenseTestingModule, GioLoaderComponent, GioLoaderModule, GioMatConfigModule, GioMenuComponent, GioMenuFooterComponent, GioMenuHeaderComponent, GioMenuItemComponent, GioMenuLicenseExpirationNotificationComponent, GioMenuListComponent, GioMenuModule, GioMenuSearchComponent, GioMenuSearchHarness, GioMenuSearchService, GioMenuSelectorComponent, GioMenuSelectorHarness, GioMenuService, GioMonacoEditorComponent, GioMonacoEditorFormFieldDirective, GioMonacoEditorHarness, GioMonacoEditorModule, GioPrismJsService, GioRadioButtonContentComponent, GioRadioButtonModule, GioRadioButtonSubitleComponent, GioRadioButtonTitleComponent, GioSafePipeModule, GioSaveBarComponent, GioSaveBarHarness, GioSaveBarModule, GioSubmenuComponent, GioSubmenuGroupComponent, GioSubmenuItemComponent, GioSubmenuModule, GioSubmenuTitleDirective, GioTopBarComponent, GioTopBarContentComponent, GioTopBarLinkComponent, GioTopBarLinkModule, GioTopBarMenuComponent, GioTopBarMenuModule, GioTopBarModule, LICENSE_CONFIGURATION_TESTING, NewFile, OEM_DEFAULT_LOGO, OEM_LICENSE_CONFIGURATION_TESTING, OEM_THEME_ARG_TYPES, SafePipe, computeAndInjectStylesForStory, computeStyles, computeStylesForStory, resetStoryStyleInjection };
6940
7072
  //# sourceMappingURL=gravitee-ui-particles-angular.mjs.map