@firestitch/chip 18.0.55 → 18.0.56

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.
@@ -0,0 +1,10 @@
1
+ import { ElementRef, EventEmitter } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class FsChipSelectOptionComponent {
4
+ value: any;
5
+ select: EventEmitter<any>;
6
+ el: ElementRef<any>;
7
+ optionClick(): void;
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<FsChipSelectOptionComponent, never>;
9
+ static ɵcmp: i0.ɵɵComponentDeclaration<FsChipSelectOptionComponent, "fs-chip-select-option", never, { "value": { "alias": "value"; "required": false; }; }, { "select": "select"; }, never, ["*"], true, never>;
10
+ }
@@ -0,0 +1,7 @@
1
+ import { TemplateRef } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class FsChipSelectTriggerDirective {
4
+ templateRef: TemplateRef<void>;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<FsChipSelectTriggerDirective, never>;
6
+ static ɵcmp: i0.ɵɵComponentDeclaration<FsChipSelectTriggerDirective, "fs-chip-select-trigger", never, {}, {}, never, ["*"], true, never>;
7
+ }
@@ -0,0 +1,32 @@
1
+ import { AfterContentInit, EventEmitter, OnDestroy, QueryList } from '@angular/core';
2
+ import { CdkOverlayOrigin, ConnectedPosition } from '@angular/cdk/overlay';
3
+ import { FsChipComponent } from '../chip/chip.component';
4
+ import { FsChipSelectOptionComponent } from './chip-select-option.component';
5
+ import { FsChipSelectTriggerDirective } from './chip-select-trigger.directive';
6
+ import * as i0 from "@angular/core";
7
+ export declare class FsChipSelectComponent implements OnDestroy, AfterContentInit {
8
+ chip: FsChipComponent;
9
+ overlayOrigin: CdkOverlayOrigin;
10
+ trigger: FsChipSelectTriggerDirective;
11
+ options: QueryList<FsChipSelectOptionComponent>;
12
+ size: 'small' | 'tiny' | 'micro' | 'large' | 'medium';
13
+ backgroundColor: string;
14
+ borderColor: string;
15
+ color: string;
16
+ shape: 'round' | 'square';
17
+ outlined: boolean;
18
+ outlineDash: boolean;
19
+ select: EventEmitter<any>;
20
+ isOpen: boolean;
21
+ positions: ConnectedPosition[];
22
+ private _destroy$;
23
+ private _cdRef;
24
+ ngAfterContentInit(): void;
25
+ toggleDropdown(): void;
26
+ closeDropdown(): void;
27
+ onOptionSelect(value: any): void;
28
+ ngOnDestroy(): void;
29
+ private _subscribeToOptions;
30
+ static ɵfac: i0.ɵɵFactoryDeclaration<FsChipSelectComponent, never>;
31
+ static ɵcmp: i0.ɵɵComponentDeclaration<FsChipSelectComponent, "fs-chip-select", never, { "size": { "alias": "size"; "required": false; }; "backgroundColor": { "alias": "backgroundColor"; "required": false; }; "borderColor": { "alias": "borderColor"; "required": false; }; "color": { "alias": "color"; "required": false; }; "shape": { "alias": "shape"; "required": false; }; "outlined": { "alias": "outlined"; "required": false; }; "outlineDash": { "alias": "outlineDash"; "required": false; }; }, { "select": "select"; }, ["trigger", "options"], ["*"], true, never>;
32
+ }
@@ -12,9 +12,10 @@ import * as i9 from "./components/chip-prefix/chip-prefix.component";
12
12
  import * as i10 from "./directives/chip-prefix.directive";
13
13
  import * as i11 from "./directives/chip-suffix.directive";
14
14
  import * as i12 from "./directives/chip-subcontent.directive";
15
+ import * as i13 from "./components/chip-select/chip-select.component";
15
16
  export declare class FsChipModule {
16
17
  static forRoot(): ModuleWithProviders<FsChipModule>;
17
18
  static ɵfac: i0.ɵɵFactoryDeclaration<FsChipModule, never>;
18
- static ɵmod: i0.ɵɵNgModuleDeclaration<FsChipModule, never, [typeof i1.CommonModule, typeof i2.DragDropModule, typeof i3.MatIconModule, typeof i4.MatTooltipModule, typeof i5.FsLabelModule, typeof i6.FsChipsComponent, typeof i7.FsChipComponent, typeof i8.FsChipSuffixComponent, typeof i9.FsChipPrefixComponent, typeof i10.FsChipPrefixDirective, typeof i11.FsChipSuffixDirective, typeof i12.FsChipSubcontentDirective], [typeof i6.FsChipsComponent, typeof i7.FsChipComponent, typeof i11.FsChipSuffixDirective, typeof i10.FsChipPrefixDirective, typeof i12.FsChipSubcontentDirective]>;
19
+ static ɵmod: i0.ɵɵNgModuleDeclaration<FsChipModule, never, [typeof i1.CommonModule, typeof i2.DragDropModule, typeof i3.MatIconModule, typeof i4.MatTooltipModule, typeof i5.FsLabelModule, typeof i6.FsChipsComponent, typeof i7.FsChipComponent, typeof i8.FsChipSuffixComponent, typeof i9.FsChipPrefixComponent, typeof i10.FsChipPrefixDirective, typeof i11.FsChipSuffixDirective, typeof i12.FsChipSubcontentDirective, typeof i13.FsChipSelectComponent], [typeof i6.FsChipsComponent, typeof i7.FsChipComponent, typeof i11.FsChipSuffixDirective, typeof i10.FsChipPrefixDirective, typeof i12.FsChipSubcontentDirective, typeof i13.FsChipSelectComponent]>;
19
20
  static ɵinj: i0.ɵɵInjectorDeclaration<FsChipModule>;
20
21
  }
@@ -0,0 +1,29 @@
1
+ import { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, inject, Input, Output, } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class FsChipSelectOptionComponent {
4
+ value;
5
+ select = new EventEmitter();
6
+ el = inject(ElementRef);
7
+ optionClick() {
8
+ this.select.emit(this.value);
9
+ }
10
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipSelectOptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
11
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: FsChipSelectOptionComponent, isStandalone: true, selector: "fs-chip-select-option", inputs: { value: "value" }, outputs: { select: "select" }, ngImport: i0, template: `
12
+ <div class="fs-chip-select-option" (click)="optionClick()">
13
+ <ng-content></ng-content>
14
+ </div>
15
+ `, isInline: true, styles: [".fs-chip-select-option{padding:10px 16px;cursor:pointer;white-space:nowrap}.fs-chip-select-option:hover{background-color:#0000000a}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
16
+ }
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipSelectOptionComponent, decorators: [{
18
+ type: Component,
19
+ args: [{ selector: 'fs-chip-select-option', template: `
20
+ <div class="fs-chip-select-option" (click)="optionClick()">
21
+ <ng-content></ng-content>
22
+ </div>
23
+ `, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, styles: [".fs-chip-select-option{padding:10px 16px;cursor:pointer;white-space:nowrap}.fs-chip-select-option:hover{background-color:#0000000a}\n"] }]
24
+ }], propDecorators: { value: [{
25
+ type: Input
26
+ }], select: [{
27
+ type: Output
28
+ }] } });
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hpcC1zZWxlY3Qtb3B0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9jaGlwLXNlbGVjdC9jaGlwLXNlbGVjdC1vcHRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7O0FBd0J2QixNQUFNLE9BQU8sMkJBQTJCO0lBRXRCLEtBQUssQ0FBTTtJQUVWLE1BQU0sR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0lBRTNDLEVBQUUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFeEIsV0FBVztRQUNoQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQzt1R0FWVSwyQkFBMkI7MkZBQTNCLDJCQUEyQiw0SUFuQjVCOzs7O0dBSVQ7OzJGQWVVLDJCQUEyQjtrQkFyQnZDLFNBQVM7K0JBQ0UsdUJBQXVCLFlBQ3ZCOzs7O0dBSVQsbUJBWWdCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSTs4QkFJQSxLQUFLO3NCQUFwQixLQUFLO2dCQUVXLE1BQU07c0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIGluamVjdCxcbiAgSW5wdXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnMtY2hpcC1zZWxlY3Qtb3B0aW9uJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiZnMtY2hpcC1zZWxlY3Qtb3B0aW9uXCIgKGNsaWNrKT1cIm9wdGlvbkNsaWNrKClcIj5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVzOiBbYFxuICAgIC5mcy1jaGlwLXNlbGVjdC1vcHRpb24ge1xuICAgICAgcGFkZGluZzogMTBweCAxNnB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNCk7XG4gICAgICB9XG4gICAgfVxuICBgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEZzQ2hpcFNlbGVjdE9wdGlvbkNvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgcHVibGljIHZhbHVlOiBhbnk7XG5cbiAgQE91dHB1dCgpIHB1YmxpYyBzZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBwdWJsaWMgZWwgPSBpbmplY3QoRWxlbWVudFJlZik7XG5cbiAgcHVibGljIG9wdGlvbkNsaWNrKCkge1xuICAgIHRoaXMuc2VsZWN0LmVtaXQodGhpcy52YWx1ZSk7XG4gIH1cbn1cblxuIl19
@@ -0,0 +1,20 @@
1
+ import { Component, ChangeDetectionStrategy, ViewChild, TemplateRef, } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class FsChipSelectTriggerDirective {
4
+ templateRef;
5
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipSelectTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: FsChipSelectTriggerDirective, isStandalone: true, selector: "fs-chip-select-trigger", viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["templateRef"], descendants: true, static: true }], ngImport: i0, template: `<ng-template #templateRef><ng-content></ng-content></ng-template>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
7
+ }
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipSelectTriggerDirective, decorators: [{
9
+ type: Component,
10
+ args: [{
11
+ selector: 'fs-chip-select-trigger',
12
+ template: `<ng-template #templateRef><ng-content></ng-content></ng-template>`,
13
+ changeDetection: ChangeDetectionStrategy.OnPush,
14
+ standalone: true,
15
+ }]
16
+ }], propDecorators: { templateRef: [{
17
+ type: ViewChild,
18
+ args: ['templateRef', { static: true }]
19
+ }] } });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hpcC1zZWxlY3QtdHJpZ2dlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvY2hpcC1zZWxlY3QvY2hpcC1zZWxlY3QtdHJpZ2dlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFdBQVcsR0FDWixNQUFNLGVBQWUsQ0FBQzs7QUFTdkIsTUFBTSxPQUFPLDRCQUE0QjtJQUdoQyxXQUFXLENBQW9CO3VHQUgzQiw0QkFBNEI7MkZBQTVCLDRCQUE0Qiw0TUFKN0IsbUVBQW1FOzsyRkFJbEUsNEJBQTRCO2tCQU54QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFFBQVEsRUFBRSxtRUFBbUU7b0JBQzdFLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxVQUFVLEVBQUUsSUFBSTtpQkFDakI7OEJBSVEsV0FBVztzQkFEakIsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgVmlld0NoaWxkLFxuICBUZW1wbGF0ZVJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnMtY2hpcC1zZWxlY3QtdHJpZ2dlcicsXG4gIHRlbXBsYXRlOiBgPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZVJlZj48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9uZy10ZW1wbGF0ZT5gLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgRnNDaGlwU2VsZWN0VHJpZ2dlckRpcmVjdGl2ZSB7XG5cbiAgQFZpZXdDaGlsZCgndGVtcGxhdGVSZWYnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwdWJsaWMgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPHZvaWQ+O1xufVxuIl19
@@ -0,0 +1,128 @@
1
+ import { NgTemplateOutlet } from '@angular/common';
2
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, ContentChildren, EventEmitter, Input, Output, QueryList, ViewChild, inject, } from '@angular/core';
3
+ import { CdkConnectedOverlay, CdkOverlayOrigin, } from '@angular/cdk/overlay';
4
+ import { MatIcon } from '@angular/material/icon';
5
+ import { Subject, merge } from 'rxjs';
6
+ import { takeUntil } from 'rxjs/operators';
7
+ import { FsChipComponent } from '../chip/chip.component';
8
+ import { FsChipSelectOptionComponent } from './chip-select-option.component';
9
+ import { FsChipSelectTriggerDirective } from './chip-select-trigger.directive';
10
+ import * as i0 from "@angular/core";
11
+ export class FsChipSelectComponent {
12
+ chip;
13
+ overlayOrigin;
14
+ trigger;
15
+ options;
16
+ size = 'medium';
17
+ backgroundColor;
18
+ borderColor;
19
+ color;
20
+ shape = 'round';
21
+ outlined;
22
+ outlineDash;
23
+ select = new EventEmitter();
24
+ isOpen = false;
25
+ positions = [
26
+ {
27
+ originX: 'start',
28
+ originY: 'bottom',
29
+ overlayX: 'start',
30
+ overlayY: 'top',
31
+ offsetY: 2,
32
+ },
33
+ {
34
+ originX: 'start',
35
+ originY: 'top',
36
+ overlayX: 'start',
37
+ overlayY: 'bottom',
38
+ offsetY: -2,
39
+ },
40
+ {
41
+ originX: 'end',
42
+ originY: 'bottom',
43
+ overlayX: 'end',
44
+ overlayY: 'top',
45
+ offsetY: 2,
46
+ },
47
+ {
48
+ originX: 'end',
49
+ originY: 'top',
50
+ overlayX: 'end',
51
+ overlayY: 'bottom',
52
+ offsetY: -2,
53
+ },
54
+ ];
55
+ _destroy$ = new Subject();
56
+ _cdRef = inject(ChangeDetectorRef);
57
+ ngAfterContentInit() {
58
+ this._subscribeToOptions();
59
+ this.options.changes
60
+ .pipe(takeUntil(this._destroy$))
61
+ .subscribe(() => this._subscribeToOptions());
62
+ }
63
+ toggleDropdown() {
64
+ this.isOpen = !this.isOpen;
65
+ this._cdRef.markForCheck();
66
+ }
67
+ closeDropdown() {
68
+ this.isOpen = false;
69
+ this._cdRef.markForCheck();
70
+ }
71
+ onOptionSelect(value) {
72
+ this.select.emit(value);
73
+ this.closeDropdown();
74
+ }
75
+ ngOnDestroy() {
76
+ this._destroy$.next();
77
+ this._destroy$.complete();
78
+ }
79
+ _subscribeToOptions() {
80
+ if (this.options.length === 0) {
81
+ return;
82
+ }
83
+ merge(...this.options.map((opt) => opt.select))
84
+ .pipe(takeUntil(this._destroy$))
85
+ .subscribe((value) => this.onOptionSelect(value));
86
+ }
87
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
88
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsChipSelectComponent, isStandalone: true, selector: "fs-chip-select", inputs: { size: "size", backgroundColor: "backgroundColor", borderColor: "borderColor", color: "color", shape: "shape", outlined: "outlined", outlineDash: "outlineDash" }, outputs: { select: "select" }, queries: [{ propertyName: "trigger", first: true, predicate: FsChipSelectTriggerDirective, descendants: true }, { propertyName: "options", predicate: FsChipSelectOptionComponent }], viewQueries: [{ propertyName: "chip", first: true, predicate: ["chip"], descendants: true, static: true }, { propertyName: "overlayOrigin", first: true, predicate: ["overlayOrigin"], descendants: true, static: true }], ngImport: i0, template: "<fs-chip\n #chip\n cdkOverlayOrigin\n #overlayOrigin=\"cdkOverlayOrigin\"\n [size]=\"size\"\n [backgroundColor]=\"backgroundColor\"\n [borderColor]=\"borderColor\"\n [color]=\"color\"\n [shape]=\"shape\"\n [outlined]=\"outlined\"\n [outlineDash]=\"outlineDash\"\n (click)=\"toggleDropdown()\">\n <div class=\"fs-chip-select-trigger\">\n @if (trigger) {\n <ng-container *ngTemplateOutlet=\"trigger.templateRef\"></ng-container>\n }\n <span\n class=\"fs-chip-select-caret\"\n [class.open]=\"isOpen\">\n <mat-icon>\n arrow_drop_down\n </mat-icon>\n </span>\n </div>\n</fs-chip>\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"overlayOrigin\"\n [cdkConnectedOverlayOpen]=\"isOpen\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayHasBackdrop]=\"true\"\n [cdkConnectedOverlayBackdropClass]=\"'cdk-overlay-transparent-backdrop'\"\n (backdropClick)=\"closeDropdown()\">\n <div class=\"fs-chip-select-panel\">\n <ng-content></ng-content>\n </div>\n</ng-template>", styles: [":host{display:inline-flex}fs-chip{cursor:pointer}.fs-chip-select-caret{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;margin-left:2px;margin-right:-4px;transition:transform .2s ease}.fs-chip-select-caret mat-icon{display:flex;align-items:center;justify-content:center;line-height:1}.fs-chip-select-caret.open{transform:rotate(180deg)}.fs-chip-select-panel{background:#fff;border-radius:4px;box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f;min-width:120px;max-height:256px;overflow-y:auto;padding:8px 0}.fs-chip-select-trigger{display:flex;align-items:center}:host-context(.size-large) .fs-chip-select-caret mat-icon,:host fs-chip.size-large .fs-chip-select-caret mat-icon{width:22px;height:22px;font-size:22px}:host-context(.size-medium) .fs-chip-select-caret mat-icon,:host fs-chip.size-medium .fs-chip-select-caret mat-icon{width:20px;height:20px;font-size:20px}:host-context(.size-small) .fs-chip-select-caret mat-icon,:host fs-chip.size-small .fs-chip-select-caret mat-icon{width:18px;height:18px;font-size:18px}:host-context(.size-tiny) .fs-chip-select-caret mat-icon,:host fs-chip.size-tiny .fs-chip-select-caret mat-icon{width:14px;height:14px;font-size:14px}:host-context(.size-micro) .fs-chip-select-caret mat-icon,:host fs-chip.size-micro .fs-chip-select-caret mat-icon{width:12px;height:12px;font-size:12px}\n"], dependencies: [{ kind: "directive", type: CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "component", type: FsChipComponent, selector: "fs-chip", inputs: ["selectable", "removable", "value", "maxWidth", "width", "backgroundColor", "borderColor", "color", "shape", "outlined", "outlineDash", "icon", "image", "selected", "padding", "contrastColor", "size"], outputs: ["selectedToggled", "removed", "click"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
89
+ }
90
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipSelectComponent, decorators: [{
91
+ type: Component,
92
+ args: [{ selector: 'fs-chip-select', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
93
+ CdkConnectedOverlay,
94
+ CdkOverlayOrigin,
95
+ FsChipComponent,
96
+ MatIcon,
97
+ NgTemplateOutlet,
98
+ ], template: "<fs-chip\n #chip\n cdkOverlayOrigin\n #overlayOrigin=\"cdkOverlayOrigin\"\n [size]=\"size\"\n [backgroundColor]=\"backgroundColor\"\n [borderColor]=\"borderColor\"\n [color]=\"color\"\n [shape]=\"shape\"\n [outlined]=\"outlined\"\n [outlineDash]=\"outlineDash\"\n (click)=\"toggleDropdown()\">\n <div class=\"fs-chip-select-trigger\">\n @if (trigger) {\n <ng-container *ngTemplateOutlet=\"trigger.templateRef\"></ng-container>\n }\n <span\n class=\"fs-chip-select-caret\"\n [class.open]=\"isOpen\">\n <mat-icon>\n arrow_drop_down\n </mat-icon>\n </span>\n </div>\n</fs-chip>\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"overlayOrigin\"\n [cdkConnectedOverlayOpen]=\"isOpen\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayHasBackdrop]=\"true\"\n [cdkConnectedOverlayBackdropClass]=\"'cdk-overlay-transparent-backdrop'\"\n (backdropClick)=\"closeDropdown()\">\n <div class=\"fs-chip-select-panel\">\n <ng-content></ng-content>\n </div>\n</ng-template>", styles: [":host{display:inline-flex}fs-chip{cursor:pointer}.fs-chip-select-caret{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;margin-left:2px;margin-right:-4px;transition:transform .2s ease}.fs-chip-select-caret mat-icon{display:flex;align-items:center;justify-content:center;line-height:1}.fs-chip-select-caret.open{transform:rotate(180deg)}.fs-chip-select-panel{background:#fff;border-radius:4px;box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f;min-width:120px;max-height:256px;overflow-y:auto;padding:8px 0}.fs-chip-select-trigger{display:flex;align-items:center}:host-context(.size-large) .fs-chip-select-caret mat-icon,:host fs-chip.size-large .fs-chip-select-caret mat-icon{width:22px;height:22px;font-size:22px}:host-context(.size-medium) .fs-chip-select-caret mat-icon,:host fs-chip.size-medium .fs-chip-select-caret mat-icon{width:20px;height:20px;font-size:20px}:host-context(.size-small) .fs-chip-select-caret mat-icon,:host fs-chip.size-small .fs-chip-select-caret mat-icon{width:18px;height:18px;font-size:18px}:host-context(.size-tiny) .fs-chip-select-caret mat-icon,:host fs-chip.size-tiny .fs-chip-select-caret mat-icon{width:14px;height:14px;font-size:14px}:host-context(.size-micro) .fs-chip-select-caret mat-icon,:host fs-chip.size-micro .fs-chip-select-caret mat-icon{width:12px;height:12px;font-size:12px}\n"] }]
99
+ }], propDecorators: { chip: [{
100
+ type: ViewChild,
101
+ args: ['chip', { static: true }]
102
+ }], overlayOrigin: [{
103
+ type: ViewChild,
104
+ args: ['overlayOrigin', { static: true }]
105
+ }], trigger: [{
106
+ type: ContentChild,
107
+ args: [FsChipSelectTriggerDirective]
108
+ }], options: [{
109
+ type: ContentChildren,
110
+ args: [FsChipSelectOptionComponent]
111
+ }], size: [{
112
+ type: Input
113
+ }], backgroundColor: [{
114
+ type: Input
115
+ }], borderColor: [{
116
+ type: Input
117
+ }], color: [{
118
+ type: Input
119
+ }], shape: [{
120
+ type: Input
121
+ }], outlined: [{
122
+ type: Input
123
+ }], outlineDash: [{
124
+ type: Input
125
+ }], select: [{
126
+ type: Output
127
+ }] } });
128
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hpcC1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2NoaXAtc2VsZWN0L2NoaXAtc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9jaGlwLXNlbGVjdC9jaGlwLXNlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLGVBQWUsRUFDZixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsU0FBUyxFQUNULE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLGdCQUFnQixHQUVqQixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVqRCxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXpELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOztBQWlCL0UsTUFBTSxPQUFPLHFCQUFxQjtJQUd6QixJQUFJLENBQWtCO0lBR3RCLGFBQWEsQ0FBbUI7SUFHaEMsT0FBTyxDQUErQjtJQUd0QyxPQUFPLENBQXlDO0lBRXZDLElBQUksR0FBb0QsUUFBUSxDQUFDO0lBQ2pFLGVBQWUsQ0FB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TywySUFDUCxnQkFBZ0I7OzJGQUdQLHFCQUFxQjtrQkFkakMsU0FBUzsrQkFDRSxnQkFBZ0IsbUJBR1QsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsbUJBQW1CO3dCQUNuQixnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsT0FBTzt3QkFDUCxnQkFBZ0I7cUJBQ2pCOzhCQUtNLElBQUk7c0JBRFYsU0FBUzt1QkFBQyxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUk1QixhQUFhO3NCQURuQixTQUFTO3VCQUFDLGVBQWUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSXJDLE9BQU87c0JBRGIsWUFBWTt1QkFBQyw0QkFBNEI7Z0JBSW5DLE9BQU87c0JBRGIsZUFBZTt1QkFBQywyQkFBMkI7Z0JBRzVCLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1UsZUFBZTtzQkFBOUIsS0FBSztnQkFDVSxXQUFXO3NCQUExQixLQUFLO2dCQUNVLEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ1UsS0FBSztzQkFBcEIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLFdBQVc7c0JBQTFCLEtBQUs7Z0JBRVcsTUFBTTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBWaWV3Q2hpbGQsXG4gIGluamVjdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIENka0Nvbm5lY3RlZE92ZXJsYXksXG4gIENka092ZXJsYXlPcmlnaW4sXG4gIENvbm5lY3RlZFBvc2l0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5cbmltcG9ydCB7IFN1YmplY3QsIG1lcmdlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEZzQ2hpcENvbXBvbmVudCB9IGZyb20gJy4uL2NoaXAvY2hpcC5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBGc0NoaXBTZWxlY3RPcHRpb25Db21wb25lbnQgfSBmcm9tICcuL2NoaXAtc2VsZWN0LW9wdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNDaGlwU2VsZWN0VHJpZ2dlckRpcmVjdGl2ZSB9IGZyb20gJy4vY2hpcC1zZWxlY3QtdHJpZ2dlci5kaXJlY3RpdmUnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZzLWNoaXAtc2VsZWN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NoaXAtc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2hpcC1zZWxlY3QuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDZGtDb25uZWN0ZWRPdmVybGF5LFxuICAgIENka092ZXJsYXlPcmlnaW4sXG4gICAgRnNDaGlwQ29tcG9uZW50LFxuICAgIE1hdEljb24sXG4gICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNDaGlwU2VsZWN0Q29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBBZnRlckNvbnRlbnRJbml0IHtcblxuICBAVmlld0NoaWxkKCdjaGlwJywgeyBzdGF0aWM6IHRydWUgfSlcbiAgcHVibGljIGNoaXA6IEZzQ2hpcENvbXBvbmVudDtcblxuICBAVmlld0NoaWxkKCdvdmVybGF5T3JpZ2luJywgeyBzdGF0aWM6IHRydWUgfSlcbiAgcHVibGljIG92ZXJsYXlPcmlnaW46IENka092ZXJsYXlPcmlnaW47XG5cbiAgQENvbnRlbnRDaGlsZChGc0NoaXBTZWxlY3RUcmlnZ2VyRGlyZWN0aXZlKVxuICBwdWJsaWMgdHJpZ2dlcjogRnNDaGlwU2VsZWN0VHJpZ2dlckRpcmVjdGl2ZTtcblxuICBAQ29udGVudENoaWxkcmVuKEZzQ2hpcFNlbGVjdE9wdGlvbkNvbXBvbmVudClcbiAgcHVibGljIG9wdGlvbnM6IFF1ZXJ5TGlzdDxGc0NoaXBTZWxlY3RPcHRpb25Db21wb25lbnQ+O1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBzaXplOiAnc21hbGwnIHwgJ3RpbnknIHwgJ21pY3JvJyB8ICdsYXJnZScgfCAnbWVkaXVtJyA9ICdtZWRpdW0nO1xuICBASW5wdXQoKSBwdWJsaWMgYmFja2dyb3VuZENvbG9yOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyBib3JkZXJDb2xvcjogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgY29sb3I6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHNoYXBlOiAncm91bmQnIHwgJ3NxdWFyZScgPSAncm91bmQnO1xuICBASW5wdXQoKSBwdWJsaWMgb3V0bGluZWQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHB1YmxpYyBvdXRsaW5lRGFzaDogYm9vbGVhbjtcblxuICBAT3V0cHV0KCkgcHVibGljIHNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIHB1YmxpYyBpc09wZW4gPSBmYWxzZTtcblxuICBwdWJsaWMgcG9zaXRpb25zOiBDb25uZWN0ZWRQb3NpdGlvbltdID0gW1xuICAgIHtcbiAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgb3ZlcmxheVk6ICd0b3AnLFxuICAgICAgb2Zmc2V0WTogMixcbiAgICB9LFxuICAgIHtcbiAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgb3ZlcmxheVk6ICdib3R0b20nLFxuICAgICAgb2Zmc2V0WTogLTIsXG4gICAgfSxcbiAgICB7XG4gICAgICBvcmlnaW5YOiAnZW5kJyxcbiAgICAgIG9yaWdpblk6ICdib3R0b20nLFxuICAgICAgb3ZlcmxheVg6ICdlbmQnLFxuICAgICAgb3ZlcmxheVk6ICd0b3AnLFxuICAgICAgb2Zmc2V0WTogMixcbiAgICB9LFxuICAgIHtcbiAgICAgIG9yaWdpblg6ICdlbmQnLFxuICAgICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgICBvdmVybGF5WDogJ2VuZCcsXG4gICAgICBvdmVybGF5WTogJ2JvdHRvbScsXG4gICAgICBvZmZzZXRZOiAtMixcbiAgICB9LFxuICBdO1xuXG4gIHByaXZhdGUgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcHJpdmF0ZSBfY2RSZWYgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuXG4gIHB1YmxpYyBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgdGhpcy5fc3Vic2NyaWJlVG9PcHRpb25zKCk7XG4gICAgdGhpcy5vcHRpb25zLmNoYW5nZXNcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuX3N1YnNjcmliZVRvT3B0aW9ucygpKTtcbiAgfVxuXG4gIHB1YmxpYyB0b2dnbGVEcm9wZG93bigpIHtcbiAgICB0aGlzLmlzT3BlbiA9ICF0aGlzLmlzT3BlbjtcbiAgICB0aGlzLl9jZFJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBjbG9zZURyb3Bkb3duKCkge1xuICAgIHRoaXMuaXNPcGVuID0gZmFsc2U7XG4gICAgdGhpcy5fY2RSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwdWJsaWMgb25PcHRpb25TZWxlY3QodmFsdWU6IGFueSkge1xuICAgIHRoaXMuc2VsZWN0LmVtaXQodmFsdWUpO1xuICAgIHRoaXMuY2xvc2VEcm9wZG93bigpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX2Rlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLl9kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfc3Vic2NyaWJlVG9PcHRpb25zKCkge1xuICAgIGlmICh0aGlzLm9wdGlvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbWVyZ2UoLi4udGhpcy5vcHRpb25zLm1hcCgob3B0KSA9PiBvcHQuc2VsZWN0KSlcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKCh2YWx1ZSkgPT4gdGhpcy5vbk9wdGlvblNlbGVjdCh2YWx1ZSkpO1xuICB9XG59XG5cbiIsIjxmcy1jaGlwXG4gICAgI2NoaXBcbiAgICBjZGtPdmVybGF5T3JpZ2luXG4gICAgI292ZXJsYXlPcmlnaW49XCJjZGtPdmVybGF5T3JpZ2luXCJcbiAgICBbc2l6ZV09XCJzaXplXCJcbiAgICBbYmFja2dyb3VuZENvbG9yXT1cImJhY2tncm91bmRDb2xvclwiXG4gICAgW2JvcmRlckNvbG9yXT1cImJvcmRlckNvbG9yXCJcbiAgICBbY29sb3JdPVwiY29sb3JcIlxuICAgIFtzaGFwZV09XCJzaGFwZVwiXG4gICAgW291dGxpbmVkXT1cIm91dGxpbmVkXCJcbiAgICBbb3V0bGluZURhc2hdPVwib3V0bGluZURhc2hcIlxuICAgIChjbGljayk9XCJ0b2dnbGVEcm9wZG93bigpXCI+XG4gIDxkaXYgY2xhc3M9XCJmcy1jaGlwLXNlbGVjdC10cmlnZ2VyXCI+XG4gICAgQGlmICh0cmlnZ2VyKSB7XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidHJpZ2dlci50ZW1wbGF0ZVJlZlwiPjwvbmctY29udGFpbmVyPlxuICAgIH1cbiAgICA8c3BhblxuICAgICAgICBjbGFzcz1cImZzLWNoaXAtc2VsZWN0LWNhcmV0XCJcbiAgICAgICAgW2NsYXNzLm9wZW5dPVwiaXNPcGVuXCI+XG4gICAgICA8bWF0LWljb24+XG4gICAgICAgIGFycm93X2Ryb3BfZG93blxuICAgICAgPC9tYXQtaWNvbj5cbiAgICA8L3NwYW4+XG4gIDwvZGl2PlxuPC9mcy1jaGlwPlxuPG5nLXRlbXBsYXRlXG4gICAgY2RrQ29ubmVjdGVkT3ZlcmxheVxuICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5T3JpZ2luXT1cIm92ZXJsYXlPcmlnaW5cIlxuICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5T3Blbl09XCJpc09wZW5cIlxuICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5UG9zaXRpb25zXT1cInBvc2l0aW9uc1wiXG4gICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlIYXNCYWNrZHJvcF09XCJ0cnVlXCJcbiAgICBbY2RrQ29ubmVjdGVkT3ZlcmxheUJhY2tkcm9wQ2xhc3NdPVwiJ2Nkay1vdmVybGF5LXRyYW5zcGFyZW50LWJhY2tkcm9wJ1wiXG4gICAgKGJhY2tkcm9wQ2xpY2spPVwiY2xvc2VEcm9wZG93bigpXCI+XG4gIDxkaXYgY2xhc3M9XCJmcy1jaGlwLXNlbGVjdC1wYW5lbFwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPiJdfQ==
@@ -5,6 +5,7 @@ import { MatIconModule } from '@angular/material/icon';
5
5
  import { MatTooltipModule } from '@angular/material/tooltip';
6
6
  import { FsLabelModule } from '@firestitch/label';
7
7
  import { FsChipPrefixComponent } from './components/chip-prefix/chip-prefix.component';
8
+ import { FsChipSelectComponent } from './components/chip-select/chip-select.component';
8
9
  import { FsChipSuffixComponent } from './components/chip-suffix/chip-suffix.component';
9
10
  import { FsChipComponent } from './components/chip/chip.component';
10
11
  import { FsChipsComponent } from './components/chips/chips.component';
@@ -30,11 +31,13 @@ export class FsChipModule {
30
31
  FsChipPrefixComponent,
31
32
  FsChipPrefixDirective,
32
33
  FsChipSuffixDirective,
33
- FsChipSubcontentDirective], exports: [FsChipsComponent,
34
+ FsChipSubcontentDirective,
35
+ FsChipSelectComponent], exports: [FsChipsComponent,
34
36
  FsChipComponent,
35
37
  FsChipSuffixDirective,
36
38
  FsChipPrefixDirective,
37
- FsChipSubcontentDirective] });
39
+ FsChipSubcontentDirective,
40
+ FsChipSelectComponent] });
38
41
  static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipModule, imports: [CommonModule,
39
42
  DragDropModule,
40
43
  MatIconModule,
@@ -43,7 +46,8 @@ export class FsChipModule {
43
46
  FsChipsComponent,
44
47
  FsChipComponent,
45
48
  FsChipSuffixComponent,
46
- FsChipPrefixComponent] });
49
+ FsChipPrefixComponent,
50
+ FsChipSelectComponent] });
47
51
  }
48
52
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipModule, decorators: [{
49
53
  type: NgModule,
@@ -61,6 +65,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
61
65
  FsChipPrefixDirective,
62
66
  FsChipSuffixDirective,
63
67
  FsChipSubcontentDirective,
68
+ FsChipSelectComponent,
64
69
  ],
65
70
  exports: [
66
71
  FsChipsComponent,
@@ -68,7 +73,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
68
73
  FsChipSuffixDirective,
69
74
  FsChipPrefixDirective,
70
75
  FsChipSubcontentDirective,
76
+ FsChipSelectComponent,
71
77
  ],
72
78
  }]
73
79
  }] });
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMtY2hpcC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBwL2ZzLWNoaXAubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVsRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUN2RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUN2RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDdEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDM0UsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDbkYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7O0FBeUIzRSxNQUFNLE9BQU8sWUFBWTtJQUNoQixNQUFNLENBQUMsT0FBTztRQUNuQixPQUFPO1lBQ0wsUUFBUSxFQUFFLFlBQVk7U0FDdkIsQ0FBQztJQUNKLENBQUM7dUdBTFUsWUFBWTt3R0FBWixZQUFZLFlBckJqQixZQUFZO1lBQ1osY0FBYztZQUNkLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsYUFBYTtZQUNiLGdCQUFnQjtZQUNoQixlQUFlO1lBQ2YscUJBQXFCO1lBQ3JCLHFCQUFxQjtZQUNyQixxQkFBcUI7WUFDckIscUJBQXFCO1lBQ3JCLHlCQUF5QixhQUd6QixnQkFBZ0I7WUFDaEIsZUFBZTtZQUNmLHFCQUFxQjtZQUNyQixxQkFBcUI7WUFDckIseUJBQXlCO3dHQUdwQixZQUFZLFlBckJqQixZQUFZO1lBQ1osY0FBYztZQUNkLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsYUFBYTtZQUNiLGdCQUFnQjtZQUNoQixlQUFlO1lBQ2YscUJBQXFCO1lBQ3JCLHFCQUFxQjs7MkZBYWhCLFlBQVk7a0JBdkJ4QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIseUJBQXlCO3FCQUM1QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQix5QkFBeUI7cUJBQzVCO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IERyYWdEcm9wTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XG5cbmltcG9ydCB7IEZzTGFiZWxNb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9sYWJlbCc7XG5cbmltcG9ydCB7IEZzQ2hpcFByZWZpeENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jaGlwLXByZWZpeC9jaGlwLXByZWZpeC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNDaGlwU3VmZml4Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NoaXAtc3VmZml4L2NoaXAtc3VmZml4LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0NoaXBDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY2hpcC9jaGlwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0NoaXBzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NoaXBzL2NoaXBzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0NoaXBQcmVmaXhEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvY2hpcC1wcmVmaXguZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzQ2hpcFN1YmNvbnRlbnREaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvY2hpcC1zdWJjb250ZW50LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0NoaXBTdWZmaXhEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvY2hpcC1zdWZmaXguZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgRHJhZ0Ryb3BNb2R1bGUsXG4gICAgICAgIE1hdEljb25Nb2R1bGUsXG4gICAgICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgICAgIEZzTGFiZWxNb2R1bGUsXG4gICAgICAgIEZzQ2hpcHNDb21wb25lbnQsXG4gICAgICAgIEZzQ2hpcENvbXBvbmVudCxcbiAgICAgICAgRnNDaGlwU3VmZml4Q29tcG9uZW50LFxuICAgICAgICBGc0NoaXBQcmVmaXhDb21wb25lbnQsXG4gICAgICAgIEZzQ2hpcFByZWZpeERpcmVjdGl2ZSxcbiAgICAgICAgRnNDaGlwU3VmZml4RGlyZWN0aXZlLFxuICAgICAgICBGc0NoaXBTdWJjb250ZW50RGlyZWN0aXZlLFxuICAgIF0sXG4gICAgZXhwb3J0czogW1xuICAgICAgICBGc0NoaXBzQ29tcG9uZW50LFxuICAgICAgICBGc0NoaXBDb21wb25lbnQsXG4gICAgICAgIEZzQ2hpcFN1ZmZpeERpcmVjdGl2ZSxcbiAgICAgICAgRnNDaGlwUHJlZml4RGlyZWN0aXZlLFxuICAgICAgICBGc0NoaXBTdWJjb250ZW50RGlyZWN0aXZlLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZzQ2hpcE1vZHVsZSB7XG4gIHB1YmxpYyBzdGF0aWMgZm9yUm9vdCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEZzQ2hpcE1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogRnNDaGlwTW9kdWxlLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMtY2hpcC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBwL2ZzLWNoaXAubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVsRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUN2RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUN2RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUN2RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDdEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDM0UsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDbkYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7O0FBMkIzRSxNQUFNLE9BQU8sWUFBWTtJQUNoQixNQUFNLENBQUMsT0FBTztRQUNuQixPQUFPO1lBQ0wsUUFBUSxFQUFFLFlBQVk7U0FDdkIsQ0FBQztJQUNKLENBQUM7dUdBTFUsWUFBWTt3R0FBWixZQUFZLFlBdkJyQixZQUFZO1lBQ1osY0FBYztZQUNkLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsYUFBYTtZQUNiLGdCQUFnQjtZQUNoQixlQUFlO1lBQ2YscUJBQXFCO1lBQ3JCLHFCQUFxQjtZQUNyQixxQkFBcUI7WUFDckIscUJBQXFCO1lBQ3JCLHlCQUF5QjtZQUN6QixxQkFBcUIsYUFHckIsZ0JBQWdCO1lBQ2hCLGVBQWU7WUFDZixxQkFBcUI7WUFDckIscUJBQXFCO1lBQ3JCLHlCQUF5QjtZQUN6QixxQkFBcUI7d0dBR1osWUFBWSxZQXZCckIsWUFBWTtZQUNaLGNBQWM7WUFDZCxhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2hCLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsZUFBZTtZQUNmLHFCQUFxQjtZQUNyQixxQkFBcUI7WUFJckIscUJBQXFCOzsyRkFXWixZQUFZO2tCQXpCeEIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixhQUFhO3dCQUNiLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLHlCQUF5Qjt3QkFDekIscUJBQXFCO3FCQUN0QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQix5QkFBeUI7d0JBQ3pCLHFCQUFxQjtxQkFDdEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRHJhZ0Ryb3BNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcblxuaW1wb3J0IHsgRnNMYWJlbE1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2xhYmVsJztcblxuaW1wb3J0IHsgRnNDaGlwUHJlZml4Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NoaXAtcHJlZml4L2NoaXAtcHJlZml4LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0NoaXBTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY2hpcC1zZWxlY3QvY2hpcC1zZWxlY3QuY29tcG9uZW50JztcbmltcG9ydCB7IEZzQ2hpcFN1ZmZpeENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jaGlwLXN1ZmZpeC9jaGlwLXN1ZmZpeC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNDaGlwQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NoaXAvY2hpcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNDaGlwc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jaGlwcy9jaGlwcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNDaGlwUHJlZml4RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2NoaXAtcHJlZml4LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0NoaXBTdWJjb250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2NoaXAtc3ViY29udGVudC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNDaGlwU3VmZml4RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2NoaXAtc3VmZml4LmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRHJhZ0Ryb3BNb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxuICAgIEZzTGFiZWxNb2R1bGUsXG4gICAgRnNDaGlwc0NvbXBvbmVudCxcbiAgICBGc0NoaXBDb21wb25lbnQsXG4gICAgRnNDaGlwU3VmZml4Q29tcG9uZW50LFxuICAgIEZzQ2hpcFByZWZpeENvbXBvbmVudCxcbiAgICBGc0NoaXBQcmVmaXhEaXJlY3RpdmUsXG4gICAgRnNDaGlwU3VmZml4RGlyZWN0aXZlLFxuICAgIEZzQ2hpcFN1YmNvbnRlbnREaXJlY3RpdmUsXG4gICAgRnNDaGlwU2VsZWN0Q29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRnNDaGlwc0NvbXBvbmVudCxcbiAgICBGc0NoaXBDb21wb25lbnQsXG4gICAgRnNDaGlwU3VmZml4RGlyZWN0aXZlLFxuICAgIEZzQ2hpcFByZWZpeERpcmVjdGl2ZSxcbiAgICBGc0NoaXBTdWJjb250ZW50RGlyZWN0aXZlLFxuICAgIEZzQ2hpcFNlbGVjdENvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNDaGlwTW9kdWxlIHtcbiAgcHVibGljIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8RnNDaGlwTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBGc0NoaXBNb2R1bGUsXG4gICAgfTtcbiAgfVxufVxuIl19
@@ -4,4 +4,5 @@ export { FsChipsComponent } from './app/components/chips/chips.component';
4
4
  export { FsChipPrefixDirective } from './app/directives/chip-prefix.directive';
5
5
  export { FsChipSubcontentDirective } from './app/directives/chip-subcontent.directive';
6
6
  export { FsChipSuffixDirective } from './app/directives/chip-suffix.directive';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFFMUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDdkYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBGc0NoaXBNb2R1bGUgfSBmcm9tICcuL2FwcC9mcy1jaGlwLm1vZHVsZSc7XG5cbmV4cG9ydCB7IEZzQ2hpcENvbXBvbmVudCB9IGZyb20gJy4vYXBwL2NvbXBvbmVudHMvY2hpcC9jaGlwLmNvbXBvbmVudCc7XG5leHBvcnQgeyBGc0NoaXBzQ29tcG9uZW50IH0gZnJvbSAnLi9hcHAvY29tcG9uZW50cy9jaGlwcy9jaGlwcy5jb21wb25lbnQnO1xuXG5leHBvcnQgeyBGc0NoaXBQcmVmaXhEaXJlY3RpdmUgfSBmcm9tICcuL2FwcC9kaXJlY3RpdmVzL2NoaXAtcHJlZml4LmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBGc0NoaXBTdWJjb250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi9hcHAvZGlyZWN0aXZlcy9jaGlwLXN1YmNvbnRlbnQuZGlyZWN0aXZlJztcbmV4cG9ydCB7IEZzQ2hpcFN1ZmZpeERpcmVjdGl2ZSB9IGZyb20gJy4vYXBwL2RpcmVjdGl2ZXMvY2hpcC1zdWZmaXguZGlyZWN0aXZlJztcblxuIl19
7
+ export { FsChipSelectComponent } from './app/components/chip-select/chip-select.component';
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFFMUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDdkYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFFL0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0RBQW9ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBGc0NoaXBNb2R1bGUgfSBmcm9tICcuL2FwcC9mcy1jaGlwLm1vZHVsZSc7XG5cbmV4cG9ydCB7IEZzQ2hpcENvbXBvbmVudCB9IGZyb20gJy4vYXBwL2NvbXBvbmVudHMvY2hpcC9jaGlwLmNvbXBvbmVudCc7XG5leHBvcnQgeyBGc0NoaXBzQ29tcG9uZW50IH0gZnJvbSAnLi9hcHAvY29tcG9uZW50cy9jaGlwcy9jaGlwcy5jb21wb25lbnQnO1xuXG5leHBvcnQgeyBGc0NoaXBQcmVmaXhEaXJlY3RpdmUgfSBmcm9tICcuL2FwcC9kaXJlY3RpdmVzL2NoaXAtcHJlZml4LmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBGc0NoaXBTdWJjb250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi9hcHAvZGlyZWN0aXZlcy9jaGlwLXN1YmNvbnRlbnQuZGlyZWN0aXZlJztcbmV4cG9ydCB7IEZzQ2hpcFN1ZmZpeERpcmVjdGl2ZSB9IGZyb20gJy4vYXBwL2RpcmVjdGl2ZXMvY2hpcC1zdWZmaXguZGlyZWN0aXZlJztcblxuZXhwb3J0IHsgRnNDaGlwU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9hcHAvY29tcG9uZW50cy9jaGlwLXNlbGVjdC9jaGlwLXNlbGVjdC5jb21wb25lbnQnO1xuIl19
@@ -1,13 +1,14 @@
1
1
  import { NgTemplateOutlet, NgStyle, NgClass, CommonModule } from '@angular/common';
2
2
  import * as i0 from '@angular/core';
3
- import { EventEmitter, Component, ChangeDetectionStrategy, Input, Output, inject, TemplateRef, Directive, ChangeDetectorRef, ViewChild, ContentChildren, ContentChild, IterableDiffers, forwardRef, NgModule } from '@angular/core';
3
+ import { EventEmitter, Component, ChangeDetectionStrategy, Input, Output, inject, TemplateRef, Directive, ChangeDetectorRef, ViewChild, ContentChildren, ContentChild, ElementRef, IterableDiffers, forwardRef, NgModule } from '@angular/core';
4
4
  import { moveItemInArray, CdkDropList, CdkDrag, CdkDragHandle, DragDropModule } from '@angular/cdk/drag-drop';
5
5
  import { MatIcon, MatIconModule } from '@angular/material/icon';
6
6
  import { MatTooltip, MatTooltipModule } from '@angular/material/tooltip';
7
7
  import { FsLabelModule } from '@firestitch/label';
8
- import { Subject } from 'rxjs';
9
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
8
+ import { CdkConnectedOverlay, CdkOverlayOrigin } from '@angular/cdk/overlay';
9
+ import { Subject, merge } from 'rxjs';
10
10
  import { takeUntil } from 'rxjs/operators';
11
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
11
12
 
12
13
  class FsChipPrefixComponent {
13
14
  icon;
@@ -37,40 +38,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
37
38
  type: Output
38
39
  }] } });
39
40
 
40
- class FsChipSuffixComponent {
41
- icon;
42
- link;
43
- linkTarget;
44
- color;
45
- show = true;
46
- tooltip;
47
- click = new EventEmitter();
48
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipSuffixComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
49
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsChipSuffixComponent, isStandalone: true, selector: "fs-chip-suffix", inputs: { icon: "icon", link: "link", linkTarget: "linkTarget", color: "color", show: "show", tooltip: "tooltip" }, outputs: { click: "click" }, ngImport: i0, template: "@if (show) {\n @if (link) {\n <a\n [href]=\"link\"\n [target]=\"linkTarget || '_self'\">\n <ng-container *ngTemplateOutlet=\"actionTemplate\"></ng-container>\n </a>\n } @else {\n <ng-container *ngTemplateOutlet=\"actionTemplate\"></ng-container>\n }\n <ng-template #actionTemplate>\n <ng-content></ng-content>\n @if (icon) {\n <mat-icon\n cdkHighlight\n [style.color]=\"color\"\n [matTooltip]=\"tooltip\"\n class=\"action\"\n (click)=\"click.emit($event)\">\n {{ icon }}\n </mat-icon>\n }\n </ng-template>\n}", styles: [":host{display:flex}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
50
- }
51
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipSuffixComponent, decorators: [{
52
- type: Component,
53
- args: [{ selector: 'fs-chip-suffix', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
54
- NgTemplateOutlet,
55
- MatIcon,
56
- MatTooltip,
57
- ], template: "@if (show) {\n @if (link) {\n <a\n [href]=\"link\"\n [target]=\"linkTarget || '_self'\">\n <ng-container *ngTemplateOutlet=\"actionTemplate\"></ng-container>\n </a>\n } @else {\n <ng-container *ngTemplateOutlet=\"actionTemplate\"></ng-container>\n }\n <ng-template #actionTemplate>\n <ng-content></ng-content>\n @if (icon) {\n <mat-icon\n cdkHighlight\n [style.color]=\"color\"\n [matTooltip]=\"tooltip\"\n class=\"action\"\n (click)=\"click.emit($event)\">\n {{ icon }}\n </mat-icon>\n }\n </ng-template>\n}", styles: [":host{display:flex}\n"] }]
58
- }], propDecorators: { icon: [{
59
- type: Input
60
- }], link: [{
61
- type: Input
62
- }], linkTarget: [{
63
- type: Input
64
- }], color: [{
65
- type: Input
66
- }], show: [{
67
- type: Input
68
- }], tooltip: [{
69
- type: Input
70
- }], click: [{
71
- type: Output
72
- }] } });
73
-
74
41
  class FsChipPrefixDirective {
75
42
  icon;
76
43
  color;
@@ -144,6 +111,40 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
144
111
  type: Output
145
112
  }] } });
146
113
 
114
+ class FsChipSuffixComponent {
115
+ icon;
116
+ link;
117
+ linkTarget;
118
+ color;
119
+ show = true;
120
+ tooltip;
121
+ click = new EventEmitter();
122
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipSuffixComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
123
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsChipSuffixComponent, isStandalone: true, selector: "fs-chip-suffix", inputs: { icon: "icon", link: "link", linkTarget: "linkTarget", color: "color", show: "show", tooltip: "tooltip" }, outputs: { click: "click" }, ngImport: i0, template: "@if (show) {\n @if (link) {\n <a\n [href]=\"link\"\n [target]=\"linkTarget || '_self'\">\n <ng-container *ngTemplateOutlet=\"actionTemplate\"></ng-container>\n </a>\n } @else {\n <ng-container *ngTemplateOutlet=\"actionTemplate\"></ng-container>\n }\n <ng-template #actionTemplate>\n <ng-content></ng-content>\n @if (icon) {\n <mat-icon\n cdkHighlight\n [style.color]=\"color\"\n [matTooltip]=\"tooltip\"\n class=\"action\"\n (click)=\"click.emit($event)\">\n {{ icon }}\n </mat-icon>\n }\n </ng-template>\n}", styles: [":host{display:flex}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
124
+ }
125
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipSuffixComponent, decorators: [{
126
+ type: Component,
127
+ args: [{ selector: 'fs-chip-suffix', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
128
+ NgTemplateOutlet,
129
+ MatIcon,
130
+ MatTooltip,
131
+ ], template: "@if (show) {\n @if (link) {\n <a\n [href]=\"link\"\n [target]=\"linkTarget || '_self'\">\n <ng-container *ngTemplateOutlet=\"actionTemplate\"></ng-container>\n </a>\n } @else {\n <ng-container *ngTemplateOutlet=\"actionTemplate\"></ng-container>\n }\n <ng-template #actionTemplate>\n <ng-content></ng-content>\n @if (icon) {\n <mat-icon\n cdkHighlight\n [style.color]=\"color\"\n [matTooltip]=\"tooltip\"\n class=\"action\"\n (click)=\"click.emit($event)\">\n {{ icon }}\n </mat-icon>\n }\n </ng-template>\n}", styles: [":host{display:flex}\n"] }]
132
+ }], propDecorators: { icon: [{
133
+ type: Input
134
+ }], link: [{
135
+ type: Input
136
+ }], linkTarget: [{
137
+ type: Input
138
+ }], color: [{
139
+ type: Input
140
+ }], show: [{
141
+ type: Input
142
+ }], tooltip: [{
143
+ type: Input
144
+ }], click: [{
145
+ type: Output
146
+ }] } });
147
+
147
148
  class FsChipComponent {
148
149
  templateRef;
149
150
  chipSuffixes;
@@ -306,6 +307,169 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
306
307
  type: Output
307
308
  }] } });
308
309
 
310
+ class FsChipSelectOptionComponent {
311
+ value;
312
+ select = new EventEmitter();
313
+ el = inject(ElementRef);
314
+ optionClick() {
315
+ this.select.emit(this.value);
316
+ }
317
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipSelectOptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
318
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: FsChipSelectOptionComponent, isStandalone: true, selector: "fs-chip-select-option", inputs: { value: "value" }, outputs: { select: "select" }, ngImport: i0, template: `
319
+ <div class="fs-chip-select-option" (click)="optionClick()">
320
+ <ng-content></ng-content>
321
+ </div>
322
+ `, isInline: true, styles: [".fs-chip-select-option{padding:10px 16px;cursor:pointer;white-space:nowrap}.fs-chip-select-option:hover{background-color:#0000000a}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
323
+ }
324
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipSelectOptionComponent, decorators: [{
325
+ type: Component,
326
+ args: [{ selector: 'fs-chip-select-option', template: `
327
+ <div class="fs-chip-select-option" (click)="optionClick()">
328
+ <ng-content></ng-content>
329
+ </div>
330
+ `, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, styles: [".fs-chip-select-option{padding:10px 16px;cursor:pointer;white-space:nowrap}.fs-chip-select-option:hover{background-color:#0000000a}\n"] }]
331
+ }], propDecorators: { value: [{
332
+ type: Input
333
+ }], select: [{
334
+ type: Output
335
+ }] } });
336
+
337
+ class FsChipSelectTriggerDirective {
338
+ templateRef;
339
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipSelectTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Component });
340
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: FsChipSelectTriggerDirective, isStandalone: true, selector: "fs-chip-select-trigger", viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["templateRef"], descendants: true, static: true }], ngImport: i0, template: `<ng-template #templateRef><ng-content></ng-content></ng-template>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
341
+ }
342
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipSelectTriggerDirective, decorators: [{
343
+ type: Component,
344
+ args: [{
345
+ selector: 'fs-chip-select-trigger',
346
+ template: `<ng-template #templateRef><ng-content></ng-content></ng-template>`,
347
+ changeDetection: ChangeDetectionStrategy.OnPush,
348
+ standalone: true,
349
+ }]
350
+ }], propDecorators: { templateRef: [{
351
+ type: ViewChild,
352
+ args: ['templateRef', { static: true }]
353
+ }] } });
354
+
355
+ class FsChipSelectComponent {
356
+ chip;
357
+ overlayOrigin;
358
+ trigger;
359
+ options;
360
+ size = 'medium';
361
+ backgroundColor;
362
+ borderColor;
363
+ color;
364
+ shape = 'round';
365
+ outlined;
366
+ outlineDash;
367
+ select = new EventEmitter();
368
+ isOpen = false;
369
+ positions = [
370
+ {
371
+ originX: 'start',
372
+ originY: 'bottom',
373
+ overlayX: 'start',
374
+ overlayY: 'top',
375
+ offsetY: 2,
376
+ },
377
+ {
378
+ originX: 'start',
379
+ originY: 'top',
380
+ overlayX: 'start',
381
+ overlayY: 'bottom',
382
+ offsetY: -2,
383
+ },
384
+ {
385
+ originX: 'end',
386
+ originY: 'bottom',
387
+ overlayX: 'end',
388
+ overlayY: 'top',
389
+ offsetY: 2,
390
+ },
391
+ {
392
+ originX: 'end',
393
+ originY: 'top',
394
+ overlayX: 'end',
395
+ overlayY: 'bottom',
396
+ offsetY: -2,
397
+ },
398
+ ];
399
+ _destroy$ = new Subject();
400
+ _cdRef = inject(ChangeDetectorRef);
401
+ ngAfterContentInit() {
402
+ this._subscribeToOptions();
403
+ this.options.changes
404
+ .pipe(takeUntil(this._destroy$))
405
+ .subscribe(() => this._subscribeToOptions());
406
+ }
407
+ toggleDropdown() {
408
+ this.isOpen = !this.isOpen;
409
+ this._cdRef.markForCheck();
410
+ }
411
+ closeDropdown() {
412
+ this.isOpen = false;
413
+ this._cdRef.markForCheck();
414
+ }
415
+ onOptionSelect(value) {
416
+ this.select.emit(value);
417
+ this.closeDropdown();
418
+ }
419
+ ngOnDestroy() {
420
+ this._destroy$.next();
421
+ this._destroy$.complete();
422
+ }
423
+ _subscribeToOptions() {
424
+ if (this.options.length === 0) {
425
+ return;
426
+ }
427
+ merge(...this.options.map((opt) => opt.select))
428
+ .pipe(takeUntil(this._destroy$))
429
+ .subscribe((value) => this.onOptionSelect(value));
430
+ }
431
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
432
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsChipSelectComponent, isStandalone: true, selector: "fs-chip-select", inputs: { size: "size", backgroundColor: "backgroundColor", borderColor: "borderColor", color: "color", shape: "shape", outlined: "outlined", outlineDash: "outlineDash" }, outputs: { select: "select" }, queries: [{ propertyName: "trigger", first: true, predicate: FsChipSelectTriggerDirective, descendants: true }, { propertyName: "options", predicate: FsChipSelectOptionComponent }], viewQueries: [{ propertyName: "chip", first: true, predicate: ["chip"], descendants: true, static: true }, { propertyName: "overlayOrigin", first: true, predicate: ["overlayOrigin"], descendants: true, static: true }], ngImport: i0, template: "<fs-chip\n #chip\n cdkOverlayOrigin\n #overlayOrigin=\"cdkOverlayOrigin\"\n [size]=\"size\"\n [backgroundColor]=\"backgroundColor\"\n [borderColor]=\"borderColor\"\n [color]=\"color\"\n [shape]=\"shape\"\n [outlined]=\"outlined\"\n [outlineDash]=\"outlineDash\"\n (click)=\"toggleDropdown()\">\n <div class=\"fs-chip-select-trigger\">\n @if (trigger) {\n <ng-container *ngTemplateOutlet=\"trigger.templateRef\"></ng-container>\n }\n <span\n class=\"fs-chip-select-caret\"\n [class.open]=\"isOpen\">\n <mat-icon>\n arrow_drop_down\n </mat-icon>\n </span>\n </div>\n</fs-chip>\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"overlayOrigin\"\n [cdkConnectedOverlayOpen]=\"isOpen\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayHasBackdrop]=\"true\"\n [cdkConnectedOverlayBackdropClass]=\"'cdk-overlay-transparent-backdrop'\"\n (backdropClick)=\"closeDropdown()\">\n <div class=\"fs-chip-select-panel\">\n <ng-content></ng-content>\n </div>\n</ng-template>", styles: [":host{display:inline-flex}fs-chip{cursor:pointer}.fs-chip-select-caret{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;margin-left:2px;margin-right:-4px;transition:transform .2s ease}.fs-chip-select-caret mat-icon{display:flex;align-items:center;justify-content:center;line-height:1}.fs-chip-select-caret.open{transform:rotate(180deg)}.fs-chip-select-panel{background:#fff;border-radius:4px;box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f;min-width:120px;max-height:256px;overflow-y:auto;padding:8px 0}.fs-chip-select-trigger{display:flex;align-items:center}:host-context(.size-large) .fs-chip-select-caret mat-icon,:host fs-chip.size-large .fs-chip-select-caret mat-icon{width:22px;height:22px;font-size:22px}:host-context(.size-medium) .fs-chip-select-caret mat-icon,:host fs-chip.size-medium .fs-chip-select-caret mat-icon{width:20px;height:20px;font-size:20px}:host-context(.size-small) .fs-chip-select-caret mat-icon,:host fs-chip.size-small .fs-chip-select-caret mat-icon{width:18px;height:18px;font-size:18px}:host-context(.size-tiny) .fs-chip-select-caret mat-icon,:host fs-chip.size-tiny .fs-chip-select-caret mat-icon{width:14px;height:14px;font-size:14px}:host-context(.size-micro) .fs-chip-select-caret mat-icon,:host fs-chip.size-micro .fs-chip-select-caret mat-icon{width:12px;height:12px;font-size:12px}\n"], dependencies: [{ kind: "directive", type: CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "component", type: FsChipComponent, selector: "fs-chip", inputs: ["selectable", "removable", "value", "maxWidth", "width", "backgroundColor", "borderColor", "color", "shape", "outlined", "outlineDash", "icon", "image", "selected", "padding", "contrastColor", "size"], outputs: ["selectedToggled", "removed", "click"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
433
+ }
434
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipSelectComponent, decorators: [{
435
+ type: Component,
436
+ args: [{ selector: 'fs-chip-select', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
437
+ CdkConnectedOverlay,
438
+ CdkOverlayOrigin,
439
+ FsChipComponent,
440
+ MatIcon,
441
+ NgTemplateOutlet,
442
+ ], template: "<fs-chip\n #chip\n cdkOverlayOrigin\n #overlayOrigin=\"cdkOverlayOrigin\"\n [size]=\"size\"\n [backgroundColor]=\"backgroundColor\"\n [borderColor]=\"borderColor\"\n [color]=\"color\"\n [shape]=\"shape\"\n [outlined]=\"outlined\"\n [outlineDash]=\"outlineDash\"\n (click)=\"toggleDropdown()\">\n <div class=\"fs-chip-select-trigger\">\n @if (trigger) {\n <ng-container *ngTemplateOutlet=\"trigger.templateRef\"></ng-container>\n }\n <span\n class=\"fs-chip-select-caret\"\n [class.open]=\"isOpen\">\n <mat-icon>\n arrow_drop_down\n </mat-icon>\n </span>\n </div>\n</fs-chip>\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"overlayOrigin\"\n [cdkConnectedOverlayOpen]=\"isOpen\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayHasBackdrop]=\"true\"\n [cdkConnectedOverlayBackdropClass]=\"'cdk-overlay-transparent-backdrop'\"\n (backdropClick)=\"closeDropdown()\">\n <div class=\"fs-chip-select-panel\">\n <ng-content></ng-content>\n </div>\n</ng-template>", styles: [":host{display:inline-flex}fs-chip{cursor:pointer}.fs-chip-select-caret{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;margin-left:2px;margin-right:-4px;transition:transform .2s ease}.fs-chip-select-caret mat-icon{display:flex;align-items:center;justify-content:center;line-height:1}.fs-chip-select-caret.open{transform:rotate(180deg)}.fs-chip-select-panel{background:#fff;border-radius:4px;box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f;min-width:120px;max-height:256px;overflow-y:auto;padding:8px 0}.fs-chip-select-trigger{display:flex;align-items:center}:host-context(.size-large) .fs-chip-select-caret mat-icon,:host fs-chip.size-large .fs-chip-select-caret mat-icon{width:22px;height:22px;font-size:22px}:host-context(.size-medium) .fs-chip-select-caret mat-icon,:host fs-chip.size-medium .fs-chip-select-caret mat-icon{width:20px;height:20px;font-size:20px}:host-context(.size-small) .fs-chip-select-caret mat-icon,:host fs-chip.size-small .fs-chip-select-caret mat-icon{width:18px;height:18px;font-size:18px}:host-context(.size-tiny) .fs-chip-select-caret mat-icon,:host fs-chip.size-tiny .fs-chip-select-caret mat-icon{width:14px;height:14px;font-size:14px}:host-context(.size-micro) .fs-chip-select-caret mat-icon,:host fs-chip.size-micro .fs-chip-select-caret mat-icon{width:12px;height:12px;font-size:12px}\n"] }]
443
+ }], propDecorators: { chip: [{
444
+ type: ViewChild,
445
+ args: ['chip', { static: true }]
446
+ }], overlayOrigin: [{
447
+ type: ViewChild,
448
+ args: ['overlayOrigin', { static: true }]
449
+ }], trigger: [{
450
+ type: ContentChild,
451
+ args: [FsChipSelectTriggerDirective]
452
+ }], options: [{
453
+ type: ContentChildren,
454
+ args: [FsChipSelectOptionComponent]
455
+ }], size: [{
456
+ type: Input
457
+ }], backgroundColor: [{
458
+ type: Input
459
+ }], borderColor: [{
460
+ type: Input
461
+ }], color: [{
462
+ type: Input
463
+ }], shape: [{
464
+ type: Input
465
+ }], outlined: [{
466
+ type: Input
467
+ }], outlineDash: [{
468
+ type: Input
469
+ }], select: [{
470
+ type: Output
471
+ }] } });
472
+
309
473
  class FsChipsComponent {
310
474
  dropList;
311
475
  chips;
@@ -529,11 +693,13 @@ class FsChipModule {
529
693
  FsChipPrefixComponent,
530
694
  FsChipPrefixDirective,
531
695
  FsChipSuffixDirective,
532
- FsChipSubcontentDirective], exports: [FsChipsComponent,
696
+ FsChipSubcontentDirective,
697
+ FsChipSelectComponent], exports: [FsChipsComponent,
533
698
  FsChipComponent,
534
699
  FsChipSuffixDirective,
535
700
  FsChipPrefixDirective,
536
- FsChipSubcontentDirective] });
701
+ FsChipSubcontentDirective,
702
+ FsChipSelectComponent] });
537
703
  static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipModule, imports: [CommonModule,
538
704
  DragDropModule,
539
705
  MatIconModule,
@@ -542,7 +708,8 @@ class FsChipModule {
542
708
  FsChipsComponent,
543
709
  FsChipComponent,
544
710
  FsChipSuffixComponent,
545
- FsChipPrefixComponent] });
711
+ FsChipPrefixComponent,
712
+ FsChipSelectComponent] });
546
713
  }
547
714
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsChipModule, decorators: [{
548
715
  type: NgModule,
@@ -560,6 +727,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
560
727
  FsChipPrefixDirective,
561
728
  FsChipSuffixDirective,
562
729
  FsChipSubcontentDirective,
730
+ FsChipSelectComponent,
563
731
  ],
564
732
  exports: [
565
733
  FsChipsComponent,
@@ -567,6 +735,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
567
735
  FsChipSuffixDirective,
568
736
  FsChipPrefixDirective,
569
737
  FsChipSubcontentDirective,
738
+ FsChipSelectComponent,
570
739
  ],
571
740
  }]
572
741
  }] });
@@ -575,5 +744,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
575
744
  * Generated bundle index. Do not edit.
576
745
  */
577
746
 
578
- export { FsChipComponent, FsChipModule, FsChipPrefixDirective, FsChipSubcontentDirective, FsChipSuffixDirective, FsChipsComponent };
747
+ export { FsChipComponent, FsChipModule, FsChipPrefixDirective, FsChipSelectComponent, FsChipSubcontentDirective, FsChipSuffixDirective, FsChipsComponent };
579
748
  //# sourceMappingURL=firestitch-chip.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"firestitch-chip.mjs","sources":["../../src/app/components/chip-prefix/chip-prefix.component.ts","../../src/app/components/chip-prefix/chip-prefix.component.html","../../src/app/components/chip-suffix/chip-suffix.component.ts","../../src/app/components/chip-suffix/chip-suffix.component.html","../../src/app/directives/chip-prefix.directive.ts","../../src/app/directives/chip-subcontent.directive.ts","../../src/app/directives/chip-suffix.directive.ts","../../src/app/components/chip/chip.component.ts","../../src/app/components/chip/chip.component.html","../../src/app/components/chips/chips.component.ts","../../src/app/components/chips/chips.component.html","../../src/app/fs-chip.module.ts","../../src/firestitch-chip.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\nimport { MatIcon } from '@angular/material/icon';\nimport { MatTooltip } from '@angular/material/tooltip';\n\n\n@Component({\n selector: 'fs-chip-prefix',\n templateUrl: './chip-prefix.component.html',\n styleUrls: ['./chip-prefix.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [MatIcon, MatTooltip],\n})\nexport class FsChipPrefixComponent {\n\n @Input() public icon: string;\n\n @Input() public color: string;\n\n @Input() public show: boolean = true;\n\n @Input() public tooltip: string;\n \n // eslint-disable-next-line @angular-eslint/no-output-native\n @Output() public click = new EventEmitter<MouseEvent>(); \n \n public get clickable() {\n return this.click.observers.length !== 0;\n }\n\n}\n","<ng-content></ng-content>\n@if (icon) {\n <mat-icon\n [class.clickable]=\"clickable\"\n cdkHighlight\n [style.color]=\"color\"\n [matTooltip]=\"tooltip\"\n class=\"action\"\n (click)=\"click.emit($event)\">\n {{ icon }}\n </mat-icon>\n}","import { NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\n\nimport { MatIcon } from '@angular/material/icon';\nimport { MatTooltip } from '@angular/material/tooltip';\n\n\n@Component({\n selector: 'fs-chip-suffix',\n templateUrl: './chip-suffix.component.html',\n styleUrls: ['./chip-suffix.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n NgTemplateOutlet,\n MatIcon,\n MatTooltip,\n ],\n})\nexport class FsChipSuffixComponent {\n\n @Input() public icon: string;\n\n @Input() public link: string;\n\n @Input() public linkTarget: string;\n\n @Input() public color: string;\n\n @Input() public show: boolean = true;\n\n @Input() public tooltip: string;\n \n @Output() public click = new EventEmitter<MouseEvent>(); \n\n}\n","@if (show) {\n @if (link) {\n <a\n [href]=\"link\"\n [target]=\"linkTarget || '_self'\">\n <ng-container *ngTemplateOutlet=\"actionTemplate\"></ng-container>\n </a>\n } @else {\n <ng-container *ngTemplateOutlet=\"actionTemplate\"></ng-container>\n }\n <ng-template #actionTemplate>\n <ng-content></ng-content>\n @if (icon) {\n <mat-icon\n cdkHighlight\n [style.color]=\"color\"\n [matTooltip]=\"tooltip\"\n class=\"action\"\n (click)=\"click.emit($event)\">\n {{ icon }}\n </mat-icon>\n }\n </ng-template>\n}","import {\n Directive,\n EventEmitter,\n inject,\n Input,\n Output,\n TemplateRef,\n} from '@angular/core';\n\n\n@Directive({\n selector: '[fsChipPrefix]',\n standalone: true,\n})\nexport class FsChipPrefixDirective {\n\n @Input() public icon: string;\n\n @Input() public color: string;\n\n @Input() public data: any;\n\n // eslint-disable-next-line @angular-eslint/no-output-native\n @Output() public click = new EventEmitter<{ event: MouseEvent, data: any }>();\n\n public templateRef = inject(TemplateRef);\n}\n","import {\n Directive,\n} from '@angular/core';\n\n\n@Directive({\n selector: '[fsChipSubcontent]',\n standalone: true,\n})\nexport class FsChipSubcontentDirective {\n\n}\n","import {\n Directive,\n EventEmitter,\n inject,\n Input,\n Output,\n TemplateRef,\n} from '@angular/core';\n\n\n@Directive({\n selector: '[fsChipSuffix]',\n standalone: true,\n})\nexport class FsChipSuffixDirective {\n\n @Input() public icon: string;\n\n @Input() public link: string;\n\n @Input() public linkTarget: string;\n\n @Input() public color: string;\n\n @Input() public data: any;\n\n @Input() public tooltip: string;\n\n // eslint-disable-next-line @angular-eslint/no-output-native\n @Output() public click = new EventEmitter<{ event: MouseEvent, data: any }>();\n\n public templateRef = inject(TemplateRef);\n}\n","import { NgClass, NgStyle, NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, ContentChildren, EventEmitter, Input, OnChanges, OnDestroy, Output, QueryList, SimpleChanges, TemplateRef, ViewChild, inject } from '@angular/core';\n\nimport { MatIcon } from '@angular/material/icon';\n\nimport { Observable, Subject } from 'rxjs';\n\nimport { FsChipPrefixDirective } from '../../directives/chip-prefix.directive';\nimport { FsChipSubcontentDirective } from '../../directives/chip-subcontent.directive';\nimport { FsChipSuffixDirective } from '../../directives/chip-suffix.directive';\nimport { FsChipPrefixComponent } from '../chip-prefix/chip-prefix.component';\nimport { FsChipSuffixComponent } from '../chip-suffix/chip-suffix.component';\n\n\n@Component({\n selector: 'fs-chip',\n templateUrl: './chip.component.html',\n styleUrls: ['./chip.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n FsChipPrefixComponent,\n NgTemplateOutlet,\n MatIcon,\n NgStyle,\n FsChipSuffixComponent,\n NgClass,\n ],\n})\nexport class FsChipComponent implements OnDestroy, OnChanges {\n\n @ViewChild(TemplateRef, { static: true }) \n public templateRef: TemplateRef<void>;\n\n @ContentChildren(FsChipSuffixDirective) \n public chipSuffixes: QueryList<FsChipSuffixDirective>;\n\n @ContentChildren(FsChipPrefixDirective)\n public chipPrefixes: QueryList<FsChipPrefixDirective>;\n\n @ContentChild(FsChipSubcontentDirective, { read: TemplateRef })\n public chipSubcontentTemplateRef: TemplateRef<void>;\n\n @Input() \n public selectable = false;\n\n @Input()\n public removable = true;\n\n @Input() \n public value: any;\n\n @Input() \n public maxWidth: string;\n\n @Input() \n public width: string;\n\n @Input() public backgroundColor;\n\n @Input() public borderColor;\n\n @Input() public color;\n\n @Input() public shape: 'round' | 'square' = 'round';\n\n @Input() public outlined: boolean;\n\n @Input() public outlineDash: boolean;\n\n @Input() public icon: string;\n \n @Input() public image: string;\n \n @Input() public selected: boolean;\n \n @Input() public padding: string;\n\n @Input() public contrastColor: string;\n\n @Input() public size: 'small' | 'tiny' | 'micro' | 'large' | 'medium' = 'medium';\n\n @Output() public selectedToggled = new EventEmitter();\n @Output() public removed = new EventEmitter();\n @Output() public click = new EventEmitter();\n\n public hasChips: boolean;\n public defaultColor = '#474747';\n public defaultBackgroundColor = '#e7e7e7';\n\n private _destroy$ = new Subject(); \n private _cdRef = inject(ChangeDetectorRef);\n\n public clicked() {\n if (this.selectable) {\n this.selected = !this.selected;\n this.selectedToggled.emit({ value: this.value, selected: this.selected });\n }\n }\n\n public select() {\n this.selected = true;\n this._cdRef.markForCheck();\n }\n\n public unselect() {\n this.selected = false;\n this._cdRef.markForCheck();\n }\n\n public get destroy$(): Observable<any> {\n return this._destroy$.asObservable();\n }\n\n public ngOnChanges(changes: SimpleChanges) {\n if (changes.backgroundColor) {\n this.contrastColor = this.defaultColor;\n\n if(this.backgroundColor && this.backgroundColor !== 'transparent') {\n this.contrastColor = this._isContrastYIQBlack(this.backgroundColor) ?\n this.defaultColor : '#fff';\n }\n }\n }\n\n public actionClick(action, event: MouseEvent) {\n if(action.click) {\n action.click(event);\n }\n }\n\n public chipSuffixClick(chipSuffix: FsChipSuffixDirective, event: MouseEvent, value: any) {\n if(chipSuffix.click.observed) {\n event.stopImmediatePropagation();\n event.stopPropagation();\n chipSuffix.click.emit({ event, data: value ?? chipSuffix.data });\n }\n }\n\n public chipPrefixClick(chipPrefix: FsChipPrefixDirective, event: MouseEvent, value: any) {\n if(chipPrefix.click.observed) {\n event.stopImmediatePropagation();\n event.stopPropagation();\n chipPrefix.click.emit({ event, data: value ?? chipPrefix.data });\n }\n }\n\n public ngOnDestroy() {\n this._destroy$.next(null);\n this._destroy$.complete();\n }\n\n public remove(event: MouseEvent) {\n event.stopImmediatePropagation();\n event.stopPropagation();\n this.removed.next(event);\n }\n\n private _isContrastYIQBlack(hexcolor) {\n if (!hexcolor) {\n return true;\n }\n\n hexcolor = hexcolor.replace('#', '');\n const r = parseInt(hexcolor.substr(0, 2), 16);\n const g = parseInt(hexcolor.substr(2, 2), 16);\n const b = parseInt(hexcolor.substr(4, 2), 16);\n const yiq = ((r * 299) + (g * 587) + (b * 114)) / 1000;\n\n return yiq >= 200;\n }\n}\n","<ng-template>\n <div\n class=\"fs-chip\"\n (click)=\"clicked()\"\n [style.backgroundColor]=\"backgroundColor ? backgroundColor : (outlined ? undefined : defaultBackgroundColor)\"\n [style.padding]=\"padding\"\n [style.borderColor]=\"borderColor || (outlined && color ? color : null)\"\n [style.width]=\"width\"\n [style.color]=\"color || contrastColor || defaultColor\"\n [class.suffixable]=\"chipSuffixes.length !== 0 || (removed.observed && removable)\"\n [class.prefixable]=\"chipPrefixes.length !== 0\"\n [class.shape-round]=\"shape === 'round'\"\n [class.shape-square]=\"shape === 'square'\"\n [class.size-small]=\"size === 'small'\"\n [class.size-tiny]=\"size === 'tiny'\"\n [class.size-micro]=\"size === 'micro'\"\n [class.size-large]=\"size === 'large'\"\n [class.size-medium]=\"size === 'medium'\"\n [class.selectable]=\"selectable\"\n [class.removable]=\"removable\"\n [class.iconed]=\"!!icon\"\n [class.imaged]=\"!!image\"\n [class.outlined]=\"outlined\"\n [class.outline-dash]=\"outlineDash\"\n [class.selected]=\"selected\"\n [class.clickable]=\"click.observed\"\n [class.sub-content]=\"!!chipSubcontentTemplateRef\">\n @if (image) {\n <img\n [src]=\"image\"\n class=\"image\"\n alt=\"\">\n }\n @if (chipPrefixes.length !== 0) {\n <div class=\"prefixes\">\n @for (chipPrefix of chipPrefixes; track chipPrefix) {\n <fs-chip-prefix\n [ngClass]=\"{ 'clickable': chipPrefix.click.observed }\"\n [icon]=\"chipPrefix.icon\"\n [color]=\"chipPrefix.color || color || contrastColor || defaultColor\"\n (click)=\"chipPrefixClick(chipPrefix, $event, value)\">\n <ng-container *ngTemplateOutlet=\"chipPrefix.templateRef\"></ng-container>\n </fs-chip-prefix>\n }\n </div>\n }\n @if (icon) {\n <mat-icon class=\"icon\">\n {{ icon }}\n </mat-icon>\n }\n <div\n class=\"fs-chip-content\"\n [ngStyle]=\"{ 'max-width': maxWidth }\">\n <ng-content></ng-content>\n @if (chipSubcontentTemplateRef) {\n <div class=\"fs-chip-subcontent\">\n <ng-container *ngTemplateOutlet=\"chipSubcontentTemplateRef\"></ng-container>\n </div>\n }\n </div>\n @if (selected) {\n <div class=\"selected-check\">\n <mat-icon [style.color]=\"color || contrastColor || defaultColor\">\n check\n </mat-icon>\n </div>\n }\n @if (chipSuffixes.length !== 0 || (removed.observed && removable)) {\n <div class=\"suffixes\">\n @for (chipSuffix of chipSuffixes; track chipSuffix) {\n <fs-chip-suffix\n [ngClass]=\"{ 'clickable': chipSuffix.click.observed }\"\n [icon]=\"chipSuffix.icon\"\n [link]=\"chipSuffix.link\"\n [linkTarget]=\"chipSuffix.linkTarget\"\n [color]=\"chipSuffix.color || color || contrastColor || defaultColor\"\n [tooltip]=\"chipSuffix.tooltip\"\n (click)=\"chipSuffixClick(chipSuffix, $event, value)\">\n <ng-container *ngTemplateOutlet=\"chipSuffix.templateRef\"></ng-container>\n </fs-chip-suffix>\n }\n @if (removed.observed && removable) {\n <fs-chip-suffix\n [ngClass]=\"{ 'clickable': true }\"\n [icon]=\"'cancel'\"\n [color]=\"color || contrastColor || defaultColor\"\n (click)=\"remove($event)\">\n </fs-chip-suffix>\n }\n </div>\n }\n </div>\n</ng-template>\n@if (!hasChips) {\n <ng-container [ngTemplateOutlet]=\"templateRef\"></ng-container>\n}","import { NgClass, NgTemplateOutlet } from '@angular/common';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy, ChangeDetectorRef,\n Component,\n ContentChildren,\n Input,\n IterableDiffer,\n IterableDiffers,\n OnDestroy,\n QueryList,\n ViewChild,\n forwardRef,\n inject,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { CdkDrag, CdkDragDrop, CdkDragHandle, CdkDropList, moveItemInArray } from '@angular/cdk/drag-drop';\nimport { MatIcon } from '@angular/material/icon';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\n\nimport { FsChipComponent } from '../chip/chip.component';\n\n\n@Component({\n selector: 'fs-chips',\n templateUrl: './chips.component.html',\n styleUrls: ['./chips.component.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => FsChipsComponent),\n multi: true,\n },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n CdkDropList,\n NgClass,\n CdkDrag,\n CdkDragHandle,\n MatIcon,\n NgTemplateOutlet,\n ],\n})\nexport class FsChipsComponent implements OnDestroy, ControlValueAccessor, AfterContentInit {\n\n @ViewChild(CdkDropList, { static: true })\n public dropList: CdkDropList;\n\n @ContentChildren(FsChipComponent)\n public chips: QueryList<FsChipComponent>;\n\n @Input() public compare: (item: any, value: any) => boolean;\n\n @Input() public multiple = true;\n\n @Input() public sortable = false;\n\n @Input() public selectable = false;\n\n @Input() public orientation: 'horizontal' | 'vertical' = 'horizontal';\n\n @Input() public width;\n\n public onChange: (value) => void;\n public onTouch: (value) => void;\n\n private _value = [];\n private _destroy$ = new Subject();\n private _chipDiffer: IterableDiffer<FsChipComponent>;\n private _cdRef = inject(ChangeDetectorRef);\n private _iterable = inject(IterableDiffers);\n\n constructor() {\n this._chipDiffer = this._iterable.find([]).create();\n }\n\n public drop(event: CdkDragDrop<string[]>) {\n const chipArray = this.chips.toArray();\n moveItemInArray(chipArray, event.previousIndex, event.currentIndex);\n this.chips.reset(chipArray);\n\n this._value = this.chips\n .map((chip) => {\n return this._value.find((item) => this._compareFn(item, chip.value));\n })\n .filter((item) => !!item);\n\n this.change();\n }\n\n public change() {\n this.onChange([...this._value]);\n }\n\n public ngAfterContentInit(): void {\n this._subscribeToSelectionChange();\n this._subscribeChanges();\n }\n\n public sortPredicate = (index: number) => {\n return !this._value || index <= this._value.length - 1;\n };\n \n public set value(value) {\n if (this._value !== value) {\n this._value = value;\n\n this.change();\n this.onTouch(this._value);\n }\n }\n\n public get value() {\n return this._value;\n }\n\n public ngOnDestroy() {\n this._destroy$.next(null);\n this._destroy$.complete();\n }\n\n public select(chip: FsChipComponent) {\n this._value = [\n ...this._value, \n chip.value,\n ];\n \n chip.select();\n this.change();\n }\n \n public unselect(chip: FsChipComponent) {\n chip.unselect();\n this._value = this._value\n .filter((item) => !this._compareFn(item, chip.value));\n\n this.change();\n }\n\n public writeValue(value: any) {\n this._value = [...(value || [])];\n this._updateChips();\n }\n\n public registerOnChange(fn) {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn) {\n this.onTouch = fn;\n }\n\n public get orientationVertical(): boolean {\n return this.orientation === 'vertical' || this.sortable;\n }\n\n private _subscribeToSelectionChange() {\n const changed = this._chipDiffer.diff(this.chips);\n changed?.forEachAddedItem((change) => {\n change.item.hasChips = true;\n change.item.selectedToggled\n .pipe(\n takeUntil(change.item.destroy$),\n takeUntil(this._destroy$),\n )\n .subscribe(({ selected, value }) => {\n if(this.multiple) {\n if (selected) {\n this.value.push(value);\n } else {\n const valueIndex = this.value.findIndex((item) => {\n return this._compareFn(item, value);\n });\n\n if (valueIndex > -1) {\n this.value.splice(valueIndex, 1);\n }\n }\n }\n\n this.change();\n this.onTouch(this._value);\n });\n });\n }\n\n /**\n * Update selection if item was added or removed\n */\n private _subscribeChanges() {\n this.chips.changes\n .pipe(\n takeUntil(this._destroy$),\n )\n .subscribe(() => {\n this._subscribeToSelectionChange();\n this._cdRef.markForCheck();\n this._updateChips();\n });\n\n this._cdRef.markForCheck();\n }\n\n private _compareFn(item, chipValue) {\n if (this.compare) {\n return this.compare(item, chipValue);\n }\n\n return item === chipValue;\n }\n\n private _updateChips() {\n if (this.multiple && this.chips) {\n if(this.orientationVertical) {\n const chips = this.chips.toArray()\n .sort((c1, c2) => {\n const aIndex = this._value.findIndex((item) => this._compareFn(item, c1.value));\n const bIndex = this._value.findIndex((item) => this._compareFn(item, c2.value));\n \n // If both are in _value, sort by their position in _value\n if (aIndex !== -1 && bIndex !== -1) {\n return aIndex - bIndex;\n }\n \n // If only one is in _value, it comes first\n if (aIndex !== -1) return -1;\n if (bIndex !== -1) return 1;\n \n // If neither is in _value, maintain original order\n return 0;\n });\n\n this.chips.reset(chips);\n }\n\n this.chips.forEach((chip) => {\n const selected = this.value\n .some((item) => {\n return this._compareFn(item, chip.value);\n });\n\n if(selected) {\n chip.select();\n } else {\n chip.unselect();\n }\n });\n }\n }\n}\n","@if (sortable) {\n <div\n [ngClass]=\"['fs-chips']\"\n [style.width]=\"width\"\n [class.orientation-vertical]=\"orientationVertical\"\n cdkDropList\n [cdkDropListLockAxis]=\"'y'\"\n [cdkDropListSortPredicate]=\"sortPredicate\"\n (cdkDropListDropped)=\"drop($event)\">\n @for (chip of chips; track chip) {\n <div\n cdkDrag\n class=\"fs-chip-drag-container\"\n [class.chips-selectable]=\"!!selectable\"\n [cdkDragPreviewClass]=\"'fs-chip-drag-preview'\">\n <div\n class=\"fs-chip-container\"\n [class.orientation-vertical]=\"orientationVertical\">\n <a\n class=\"chip-handle\"\n mat-icon-button\n [ngClass]=\"{ 'visible': (selectable && chip.selected) || (!selectable && sortable) }\"\n cdkDragHandle>\n <mat-icon>\n drag_indicator\n </mat-icon>\n </a>\n @if (selectable) {\n @if (chip.selected) {\n <a\n class=\"select-button select-button-selected\"\n (click)=\"unselect(chip)\"\n mat-icon-button>\n <mat-icon>\n check_box\n </mat-icon>\n </a>\n } @else {\n <a\n class=\"select-button select-button-unselected\"\n (click)=\"select(chip)\"\n mat-icon-button>\n <mat-icon>\n check_box_outline_blank\n </mat-icon>\n </a>\n }\n }\n <ng-component [ngTemplateOutlet]=\"chip.templateRef\"></ng-component>\n </div>\n </div>\n }\n </div>\n} @else {\n <div\n class=\"fs-chips\"\n [class.orientation-vertical]=\"orientationVertical\"\n [style.width]=\"width\">\n @for (chip of chips; track chip) {\n <div\n class=\"fs-chip-container\"\n [class.orientation-vertical]=\"orientationVertical\">\n <ng-component [ngTemplateOutlet]=\"chip.templateRef\"></ng-component>\n </div>\n }\n </div>\n}","import { CommonModule } from '@angular/common';\nimport { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { DragDropModule } from '@angular/cdk/drag-drop';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTooltipModule } from '@angular/material/tooltip';\n\nimport { FsLabelModule } from '@firestitch/label';\n\nimport { FsChipPrefixComponent } from './components/chip-prefix/chip-prefix.component';\nimport { FsChipSuffixComponent } from './components/chip-suffix/chip-suffix.component';\nimport { FsChipComponent } from './components/chip/chip.component';\nimport { FsChipsComponent } from './components/chips/chips.component';\nimport { FsChipPrefixDirective } from './directives/chip-prefix.directive';\nimport { FsChipSubcontentDirective } from './directives/chip-subcontent.directive';\nimport { FsChipSuffixDirective } from './directives/chip-suffix.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n DragDropModule,\n MatIconModule,\n MatTooltipModule,\n FsLabelModule,\n FsChipsComponent,\n FsChipComponent,\n FsChipSuffixComponent,\n FsChipPrefixComponent,\n FsChipPrefixDirective,\n FsChipSuffixDirective,\n FsChipSubcontentDirective,\n ],\n exports: [\n FsChipsComponent,\n FsChipComponent,\n FsChipSuffixDirective,\n FsChipPrefixDirective,\n FsChipSubcontentDirective,\n ],\n})\nexport class FsChipModule {\n public static forRoot(): ModuleWithProviders<FsChipModule> {\n return {\n ngModule: FsChipModule,\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"firestitch-chip.mjs","sources":["../../src/app/components/chip-prefix/chip-prefix.component.ts","../../src/app/components/chip-prefix/chip-prefix.component.html","../../src/app/directives/chip-prefix.directive.ts","../../src/app/directives/chip-subcontent.directive.ts","../../src/app/directives/chip-suffix.directive.ts","../../src/app/components/chip-suffix/chip-suffix.component.ts","../../src/app/components/chip-suffix/chip-suffix.component.html","../../src/app/components/chip/chip.component.ts","../../src/app/components/chip/chip.component.html","../../src/app/components/chip-select/chip-select-option.component.ts","../../src/app/components/chip-select/chip-select-trigger.directive.ts","../../src/app/components/chip-select/chip-select.component.ts","../../src/app/components/chip-select/chip-select.component.html","../../src/app/components/chips/chips.component.ts","../../src/app/components/chips/chips.component.html","../../src/app/fs-chip.module.ts","../../src/firestitch-chip.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\nimport { MatIcon } from '@angular/material/icon';\nimport { MatTooltip } from '@angular/material/tooltip';\n\n\n@Component({\n selector: 'fs-chip-prefix',\n templateUrl: './chip-prefix.component.html',\n styleUrls: ['./chip-prefix.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [MatIcon, MatTooltip],\n})\nexport class FsChipPrefixComponent {\n\n @Input() public icon: string;\n\n @Input() public color: string;\n\n @Input() public show: boolean = true;\n\n @Input() public tooltip: string;\n \n // eslint-disable-next-line @angular-eslint/no-output-native\n @Output() public click = new EventEmitter<MouseEvent>(); \n \n public get clickable() {\n return this.click.observers.length !== 0;\n }\n\n}\n","<ng-content></ng-content>\n@if (icon) {\n <mat-icon\n [class.clickable]=\"clickable\"\n cdkHighlight\n [style.color]=\"color\"\n [matTooltip]=\"tooltip\"\n class=\"action\"\n (click)=\"click.emit($event)\">\n {{ icon }}\n </mat-icon>\n}","import {\n Directive,\n EventEmitter,\n inject,\n Input,\n Output,\n TemplateRef,\n} from '@angular/core';\n\n\n@Directive({\n selector: '[fsChipPrefix]',\n standalone: true,\n})\nexport class FsChipPrefixDirective {\n\n @Input() public icon: string;\n\n @Input() public color: string;\n\n @Input() public data: any;\n\n // eslint-disable-next-line @angular-eslint/no-output-native\n @Output() public click = new EventEmitter<{ event: MouseEvent, data: any }>();\n\n public templateRef = inject(TemplateRef);\n}\n","import {\n Directive,\n} from '@angular/core';\n\n\n@Directive({\n selector: '[fsChipSubcontent]',\n standalone: true,\n})\nexport class FsChipSubcontentDirective {\n\n}\n","import {\n Directive,\n EventEmitter,\n inject,\n Input,\n Output,\n TemplateRef,\n} from '@angular/core';\n\n\n@Directive({\n selector: '[fsChipSuffix]',\n standalone: true,\n})\nexport class FsChipSuffixDirective {\n\n @Input() public icon: string;\n\n @Input() public link: string;\n\n @Input() public linkTarget: string;\n\n @Input() public color: string;\n\n @Input() public data: any;\n\n @Input() public tooltip: string;\n\n // eslint-disable-next-line @angular-eslint/no-output-native\n @Output() public click = new EventEmitter<{ event: MouseEvent, data: any }>();\n\n public templateRef = inject(TemplateRef);\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\n\nimport { MatIcon } from '@angular/material/icon';\nimport { MatTooltip } from '@angular/material/tooltip';\n\n\n@Component({\n selector: 'fs-chip-suffix',\n templateUrl: './chip-suffix.component.html',\n styleUrls: ['./chip-suffix.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n NgTemplateOutlet,\n MatIcon,\n MatTooltip,\n ],\n})\nexport class FsChipSuffixComponent {\n\n @Input() public icon: string;\n\n @Input() public link: string;\n\n @Input() public linkTarget: string;\n\n @Input() public color: string;\n\n @Input() public show: boolean = true;\n\n @Input() public tooltip: string;\n \n @Output() public click = new EventEmitter<MouseEvent>(); \n\n}\n","@if (show) {\n @if (link) {\n <a\n [href]=\"link\"\n [target]=\"linkTarget || '_self'\">\n <ng-container *ngTemplateOutlet=\"actionTemplate\"></ng-container>\n </a>\n } @else {\n <ng-container *ngTemplateOutlet=\"actionTemplate\"></ng-container>\n }\n <ng-template #actionTemplate>\n <ng-content></ng-content>\n @if (icon) {\n <mat-icon\n cdkHighlight\n [style.color]=\"color\"\n [matTooltip]=\"tooltip\"\n class=\"action\"\n (click)=\"click.emit($event)\">\n {{ icon }}\n </mat-icon>\n }\n </ng-template>\n}","import { NgClass, NgStyle, NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, ContentChildren, EventEmitter, Input, OnChanges, OnDestroy, Output, QueryList, SimpleChanges, TemplateRef, ViewChild, inject } from '@angular/core';\n\nimport { MatIcon } from '@angular/material/icon';\n\nimport { Observable, Subject } from 'rxjs';\n\nimport { FsChipPrefixDirective } from '../../directives/chip-prefix.directive';\nimport { FsChipSubcontentDirective } from '../../directives/chip-subcontent.directive';\nimport { FsChipSuffixDirective } from '../../directives/chip-suffix.directive';\nimport { FsChipPrefixComponent } from '../chip-prefix/chip-prefix.component';\nimport { FsChipSuffixComponent } from '../chip-suffix/chip-suffix.component';\n\n\n@Component({\n selector: 'fs-chip',\n templateUrl: './chip.component.html',\n styleUrls: ['./chip.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n FsChipPrefixComponent,\n NgTemplateOutlet,\n MatIcon,\n NgStyle,\n FsChipSuffixComponent,\n NgClass,\n ],\n})\nexport class FsChipComponent implements OnDestroy, OnChanges {\n\n @ViewChild(TemplateRef, { static: true }) \n public templateRef: TemplateRef<void>;\n\n @ContentChildren(FsChipSuffixDirective) \n public chipSuffixes: QueryList<FsChipSuffixDirective>;\n\n @ContentChildren(FsChipPrefixDirective)\n public chipPrefixes: QueryList<FsChipPrefixDirective>;\n\n @ContentChild(FsChipSubcontentDirective, { read: TemplateRef })\n public chipSubcontentTemplateRef: TemplateRef<void>;\n\n @Input() \n public selectable = false;\n\n @Input()\n public removable = true;\n\n @Input() \n public value: any;\n\n @Input() \n public maxWidth: string;\n\n @Input() \n public width: string;\n\n @Input() public backgroundColor;\n\n @Input() public borderColor;\n\n @Input() public color;\n\n @Input() public shape: 'round' | 'square' = 'round';\n\n @Input() public outlined: boolean;\n\n @Input() public outlineDash: boolean;\n\n @Input() public icon: string;\n \n @Input() public image: string;\n \n @Input() public selected: boolean;\n \n @Input() public padding: string;\n\n @Input() public contrastColor: string;\n\n @Input() public size: 'small' | 'tiny' | 'micro' | 'large' | 'medium' = 'medium';\n\n @Output() public selectedToggled = new EventEmitter();\n @Output() public removed = new EventEmitter();\n @Output() public click = new EventEmitter();\n\n public hasChips: boolean;\n public defaultColor = '#474747';\n public defaultBackgroundColor = '#e7e7e7';\n\n private _destroy$ = new Subject(); \n private _cdRef = inject(ChangeDetectorRef);\n\n public clicked() {\n if (this.selectable) {\n this.selected = !this.selected;\n this.selectedToggled.emit({ value: this.value, selected: this.selected });\n }\n }\n\n public select() {\n this.selected = true;\n this._cdRef.markForCheck();\n }\n\n public unselect() {\n this.selected = false;\n this._cdRef.markForCheck();\n }\n\n public get destroy$(): Observable<any> {\n return this._destroy$.asObservable();\n }\n\n public ngOnChanges(changes: SimpleChanges) {\n if (changes.backgroundColor) {\n this.contrastColor = this.defaultColor;\n\n if(this.backgroundColor && this.backgroundColor !== 'transparent') {\n this.contrastColor = this._isContrastYIQBlack(this.backgroundColor) ?\n this.defaultColor : '#fff';\n }\n }\n }\n\n public actionClick(action, event: MouseEvent) {\n if(action.click) {\n action.click(event);\n }\n }\n\n public chipSuffixClick(chipSuffix: FsChipSuffixDirective, event: MouseEvent, value: any) {\n if(chipSuffix.click.observed) {\n event.stopImmediatePropagation();\n event.stopPropagation();\n chipSuffix.click.emit({ event, data: value ?? chipSuffix.data });\n }\n }\n\n public chipPrefixClick(chipPrefix: FsChipPrefixDirective, event: MouseEvent, value: any) {\n if(chipPrefix.click.observed) {\n event.stopImmediatePropagation();\n event.stopPropagation();\n chipPrefix.click.emit({ event, data: value ?? chipPrefix.data });\n }\n }\n\n public ngOnDestroy() {\n this._destroy$.next(null);\n this._destroy$.complete();\n }\n\n public remove(event: MouseEvent) {\n event.stopImmediatePropagation();\n event.stopPropagation();\n this.removed.next(event);\n }\n\n private _isContrastYIQBlack(hexcolor) {\n if (!hexcolor) {\n return true;\n }\n\n hexcolor = hexcolor.replace('#', '');\n const r = parseInt(hexcolor.substr(0, 2), 16);\n const g = parseInt(hexcolor.substr(2, 2), 16);\n const b = parseInt(hexcolor.substr(4, 2), 16);\n const yiq = ((r * 299) + (g * 587) + (b * 114)) / 1000;\n\n return yiq >= 200;\n }\n}\n","<ng-template>\n <div\n class=\"fs-chip\"\n (click)=\"clicked()\"\n [style.backgroundColor]=\"backgroundColor ? backgroundColor : (outlined ? undefined : defaultBackgroundColor)\"\n [style.padding]=\"padding\"\n [style.borderColor]=\"borderColor || (outlined && color ? color : null)\"\n [style.width]=\"width\"\n [style.color]=\"color || contrastColor || defaultColor\"\n [class.suffixable]=\"chipSuffixes.length !== 0 || (removed.observed && removable)\"\n [class.prefixable]=\"chipPrefixes.length !== 0\"\n [class.shape-round]=\"shape === 'round'\"\n [class.shape-square]=\"shape === 'square'\"\n [class.size-small]=\"size === 'small'\"\n [class.size-tiny]=\"size === 'tiny'\"\n [class.size-micro]=\"size === 'micro'\"\n [class.size-large]=\"size === 'large'\"\n [class.size-medium]=\"size === 'medium'\"\n [class.selectable]=\"selectable\"\n [class.removable]=\"removable\"\n [class.iconed]=\"!!icon\"\n [class.imaged]=\"!!image\"\n [class.outlined]=\"outlined\"\n [class.outline-dash]=\"outlineDash\"\n [class.selected]=\"selected\"\n [class.clickable]=\"click.observed\"\n [class.sub-content]=\"!!chipSubcontentTemplateRef\">\n @if (image) {\n <img\n [src]=\"image\"\n class=\"image\"\n alt=\"\">\n }\n @if (chipPrefixes.length !== 0) {\n <div class=\"prefixes\">\n @for (chipPrefix of chipPrefixes; track chipPrefix) {\n <fs-chip-prefix\n [ngClass]=\"{ 'clickable': chipPrefix.click.observed }\"\n [icon]=\"chipPrefix.icon\"\n [color]=\"chipPrefix.color || color || contrastColor || defaultColor\"\n (click)=\"chipPrefixClick(chipPrefix, $event, value)\">\n <ng-container *ngTemplateOutlet=\"chipPrefix.templateRef\"></ng-container>\n </fs-chip-prefix>\n }\n </div>\n }\n @if (icon) {\n <mat-icon class=\"icon\">\n {{ icon }}\n </mat-icon>\n }\n <div\n class=\"fs-chip-content\"\n [ngStyle]=\"{ 'max-width': maxWidth }\">\n <ng-content></ng-content>\n @if (chipSubcontentTemplateRef) {\n <div class=\"fs-chip-subcontent\">\n <ng-container *ngTemplateOutlet=\"chipSubcontentTemplateRef\"></ng-container>\n </div>\n }\n </div>\n @if (selected) {\n <div class=\"selected-check\">\n <mat-icon [style.color]=\"color || contrastColor || defaultColor\">\n check\n </mat-icon>\n </div>\n }\n @if (chipSuffixes.length !== 0 || (removed.observed && removable)) {\n <div class=\"suffixes\">\n @for (chipSuffix of chipSuffixes; track chipSuffix) {\n <fs-chip-suffix\n [ngClass]=\"{ 'clickable': chipSuffix.click.observed }\"\n [icon]=\"chipSuffix.icon\"\n [link]=\"chipSuffix.link\"\n [linkTarget]=\"chipSuffix.linkTarget\"\n [color]=\"chipSuffix.color || color || contrastColor || defaultColor\"\n [tooltip]=\"chipSuffix.tooltip\"\n (click)=\"chipSuffixClick(chipSuffix, $event, value)\">\n <ng-container *ngTemplateOutlet=\"chipSuffix.templateRef\"></ng-container>\n </fs-chip-suffix>\n }\n @if (removed.observed && removable) {\n <fs-chip-suffix\n [ngClass]=\"{ 'clickable': true }\"\n [icon]=\"'cancel'\"\n [color]=\"color || contrastColor || defaultColor\"\n (click)=\"remove($event)\">\n </fs-chip-suffix>\n }\n </div>\n }\n </div>\n</ng-template>\n@if (!hasChips) {\n <ng-container [ngTemplateOutlet]=\"templateRef\"></ng-container>\n}","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n inject,\n Input,\n Output,\n} from '@angular/core';\n\n\n@Component({\n selector: 'fs-chip-select-option',\n template: `\n <div class=\"fs-chip-select-option\" (click)=\"optionClick()\">\n <ng-content></ng-content>\n </div>\n `,\n styles: [`\n .fs-chip-select-option {\n padding: 10px 16px;\n cursor: pointer;\n white-space: nowrap;\n\n &:hover {\n background-color: rgba(0, 0, 0, 0.04);\n }\n }\n `],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n})\nexport class FsChipSelectOptionComponent {\n\n @Input() public value: any;\n\n @Output() public select = new EventEmitter<any>();\n\n public el = inject(ElementRef);\n\n public optionClick() {\n this.select.emit(this.value);\n }\n}\n\n","import {\n Component,\n ChangeDetectionStrategy,\n ViewChild,\n TemplateRef,\n} from '@angular/core';\n\n\n@Component({\n selector: 'fs-chip-select-trigger',\n template: `<ng-template #templateRef><ng-content></ng-content></ng-template>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n})\nexport class FsChipSelectTriggerDirective {\n\n @ViewChild('templateRef', { static: true })\n public templateRef: TemplateRef<void>;\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n QueryList,\n ViewChild,\n inject,\n} from '@angular/core';\n\nimport {\n CdkConnectedOverlay,\n CdkOverlayOrigin,\n ConnectedPosition,\n} from '@angular/cdk/overlay';\nimport { MatIcon } from '@angular/material/icon';\n\nimport { Subject, merge } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { FsChipComponent } from '../chip/chip.component';\n\nimport { FsChipSelectOptionComponent } from './chip-select-option.component';\nimport { FsChipSelectTriggerDirective } from './chip-select-trigger.directive';\n\n\n@Component({\n selector: 'fs-chip-select',\n templateUrl: './chip-select.component.html',\n styleUrls: ['./chip-select.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n CdkConnectedOverlay,\n CdkOverlayOrigin,\n FsChipComponent,\n MatIcon,\n NgTemplateOutlet,\n ],\n})\nexport class FsChipSelectComponent implements OnDestroy, AfterContentInit {\n\n @ViewChild('chip', { static: true })\n public chip: FsChipComponent;\n\n @ViewChild('overlayOrigin', { static: true })\n public overlayOrigin: CdkOverlayOrigin;\n\n @ContentChild(FsChipSelectTriggerDirective)\n public trigger: FsChipSelectTriggerDirective;\n\n @ContentChildren(FsChipSelectOptionComponent)\n public options: QueryList<FsChipSelectOptionComponent>;\n\n @Input() public size: 'small' | 'tiny' | 'micro' | 'large' | 'medium' = 'medium';\n @Input() public backgroundColor: string;\n @Input() public borderColor: string;\n @Input() public color: string;\n @Input() public shape: 'round' | 'square' = 'round';\n @Input() public outlined: boolean;\n @Input() public outlineDash: boolean;\n\n @Output() public select = new EventEmitter<any>();\n\n public isOpen = false;\n\n public positions: ConnectedPosition[] = [\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n offsetY: 2,\n },\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n offsetY: -2,\n },\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'top',\n offsetY: 2,\n },\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n offsetY: -2,\n },\n ];\n\n private _destroy$ = new Subject<void>();\n private _cdRef = inject(ChangeDetectorRef);\n\n public ngAfterContentInit() {\n this._subscribeToOptions();\n this.options.changes\n .pipe(takeUntil(this._destroy$))\n .subscribe(() => this._subscribeToOptions());\n }\n\n public toggleDropdown() {\n this.isOpen = !this.isOpen;\n this._cdRef.markForCheck();\n }\n\n public closeDropdown() {\n this.isOpen = false;\n this._cdRef.markForCheck();\n }\n\n public onOptionSelect(value: any) {\n this.select.emit(value);\n this.closeDropdown();\n }\n\n public ngOnDestroy() {\n this._destroy$.next();\n this._destroy$.complete();\n }\n\n private _subscribeToOptions() {\n if (this.options.length === 0) {\n return;\n }\n\n merge(...this.options.map((opt) => opt.select))\n .pipe(takeUntil(this._destroy$))\n .subscribe((value) => this.onOptionSelect(value));\n }\n}\n\n","<fs-chip\n #chip\n cdkOverlayOrigin\n #overlayOrigin=\"cdkOverlayOrigin\"\n [size]=\"size\"\n [backgroundColor]=\"backgroundColor\"\n [borderColor]=\"borderColor\"\n [color]=\"color\"\n [shape]=\"shape\"\n [outlined]=\"outlined\"\n [outlineDash]=\"outlineDash\"\n (click)=\"toggleDropdown()\">\n <div class=\"fs-chip-select-trigger\">\n @if (trigger) {\n <ng-container *ngTemplateOutlet=\"trigger.templateRef\"></ng-container>\n }\n <span\n class=\"fs-chip-select-caret\"\n [class.open]=\"isOpen\">\n <mat-icon>\n arrow_drop_down\n </mat-icon>\n </span>\n </div>\n</fs-chip>\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"overlayOrigin\"\n [cdkConnectedOverlayOpen]=\"isOpen\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayHasBackdrop]=\"true\"\n [cdkConnectedOverlayBackdropClass]=\"'cdk-overlay-transparent-backdrop'\"\n (backdropClick)=\"closeDropdown()\">\n <div class=\"fs-chip-select-panel\">\n <ng-content></ng-content>\n </div>\n</ng-template>","import { NgClass, NgTemplateOutlet } from '@angular/common';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy, ChangeDetectorRef,\n Component,\n ContentChildren,\n Input,\n IterableDiffer,\n IterableDiffers,\n OnDestroy,\n QueryList,\n ViewChild,\n forwardRef,\n inject,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { CdkDrag, CdkDragDrop, CdkDragHandle, CdkDropList, moveItemInArray } from '@angular/cdk/drag-drop';\nimport { MatIcon } from '@angular/material/icon';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\n\nimport { FsChipComponent } from '../chip/chip.component';\n\n\n@Component({\n selector: 'fs-chips',\n templateUrl: './chips.component.html',\n styleUrls: ['./chips.component.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => FsChipsComponent),\n multi: true,\n },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n CdkDropList,\n NgClass,\n CdkDrag,\n CdkDragHandle,\n MatIcon,\n NgTemplateOutlet,\n ],\n})\nexport class FsChipsComponent implements OnDestroy, ControlValueAccessor, AfterContentInit {\n\n @ViewChild(CdkDropList, { static: true })\n public dropList: CdkDropList;\n\n @ContentChildren(FsChipComponent)\n public chips: QueryList<FsChipComponent>;\n\n @Input() public compare: (item: any, value: any) => boolean;\n\n @Input() public multiple = true;\n\n @Input() public sortable = false;\n\n @Input() public selectable = false;\n\n @Input() public orientation: 'horizontal' | 'vertical' = 'horizontal';\n\n @Input() public width;\n\n public onChange: (value) => void;\n public onTouch: (value) => void;\n\n private _value = [];\n private _destroy$ = new Subject();\n private _chipDiffer: IterableDiffer<FsChipComponent>;\n private _cdRef = inject(ChangeDetectorRef);\n private _iterable = inject(IterableDiffers);\n\n constructor() {\n this._chipDiffer = this._iterable.find([]).create();\n }\n\n public drop(event: CdkDragDrop<string[]>) {\n const chipArray = this.chips.toArray();\n moveItemInArray(chipArray, event.previousIndex, event.currentIndex);\n this.chips.reset(chipArray);\n\n this._value = this.chips\n .map((chip) => {\n return this._value.find((item) => this._compareFn(item, chip.value));\n })\n .filter((item) => !!item);\n\n this.change();\n }\n\n public change() {\n this.onChange([...this._value]);\n }\n\n public ngAfterContentInit(): void {\n this._subscribeToSelectionChange();\n this._subscribeChanges();\n }\n\n public sortPredicate = (index: number) => {\n return !this._value || index <= this._value.length - 1;\n };\n \n public set value(value) {\n if (this._value !== value) {\n this._value = value;\n\n this.change();\n this.onTouch(this._value);\n }\n }\n\n public get value() {\n return this._value;\n }\n\n public ngOnDestroy() {\n this._destroy$.next(null);\n this._destroy$.complete();\n }\n\n public select(chip: FsChipComponent) {\n this._value = [\n ...this._value, \n chip.value,\n ];\n \n chip.select();\n this.change();\n }\n \n public unselect(chip: FsChipComponent) {\n chip.unselect();\n this._value = this._value\n .filter((item) => !this._compareFn(item, chip.value));\n\n this.change();\n }\n\n public writeValue(value: any) {\n this._value = [...(value || [])];\n this._updateChips();\n }\n\n public registerOnChange(fn) {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn) {\n this.onTouch = fn;\n }\n\n public get orientationVertical(): boolean {\n return this.orientation === 'vertical' || this.sortable;\n }\n\n private _subscribeToSelectionChange() {\n const changed = this._chipDiffer.diff(this.chips);\n changed?.forEachAddedItem((change) => {\n change.item.hasChips = true;\n change.item.selectedToggled\n .pipe(\n takeUntil(change.item.destroy$),\n takeUntil(this._destroy$),\n )\n .subscribe(({ selected, value }) => {\n if(this.multiple) {\n if (selected) {\n this.value.push(value);\n } else {\n const valueIndex = this.value.findIndex((item) => {\n return this._compareFn(item, value);\n });\n\n if (valueIndex > -1) {\n this.value.splice(valueIndex, 1);\n }\n }\n }\n\n this.change();\n this.onTouch(this._value);\n });\n });\n }\n\n /**\n * Update selection if item was added or removed\n */\n private _subscribeChanges() {\n this.chips.changes\n .pipe(\n takeUntil(this._destroy$),\n )\n .subscribe(() => {\n this._subscribeToSelectionChange();\n this._cdRef.markForCheck();\n this._updateChips();\n });\n\n this._cdRef.markForCheck();\n }\n\n private _compareFn(item, chipValue) {\n if (this.compare) {\n return this.compare(item, chipValue);\n }\n\n return item === chipValue;\n }\n\n private _updateChips() {\n if (this.multiple && this.chips) {\n if(this.orientationVertical) {\n const chips = this.chips.toArray()\n .sort((c1, c2) => {\n const aIndex = this._value.findIndex((item) => this._compareFn(item, c1.value));\n const bIndex = this._value.findIndex((item) => this._compareFn(item, c2.value));\n \n // If both are in _value, sort by their position in _value\n if (aIndex !== -1 && bIndex !== -1) {\n return aIndex - bIndex;\n }\n \n // If only one is in _value, it comes first\n if (aIndex !== -1) return -1;\n if (bIndex !== -1) return 1;\n \n // If neither is in _value, maintain original order\n return 0;\n });\n\n this.chips.reset(chips);\n }\n\n this.chips.forEach((chip) => {\n const selected = this.value\n .some((item) => {\n return this._compareFn(item, chip.value);\n });\n\n if(selected) {\n chip.select();\n } else {\n chip.unselect();\n }\n });\n }\n }\n}\n","@if (sortable) {\n <div\n [ngClass]=\"['fs-chips']\"\n [style.width]=\"width\"\n [class.orientation-vertical]=\"orientationVertical\"\n cdkDropList\n [cdkDropListLockAxis]=\"'y'\"\n [cdkDropListSortPredicate]=\"sortPredicate\"\n (cdkDropListDropped)=\"drop($event)\">\n @for (chip of chips; track chip) {\n <div\n cdkDrag\n class=\"fs-chip-drag-container\"\n [class.chips-selectable]=\"!!selectable\"\n [cdkDragPreviewClass]=\"'fs-chip-drag-preview'\">\n <div\n class=\"fs-chip-container\"\n [class.orientation-vertical]=\"orientationVertical\">\n <a\n class=\"chip-handle\"\n mat-icon-button\n [ngClass]=\"{ 'visible': (selectable && chip.selected) || (!selectable && sortable) }\"\n cdkDragHandle>\n <mat-icon>\n drag_indicator\n </mat-icon>\n </a>\n @if (selectable) {\n @if (chip.selected) {\n <a\n class=\"select-button select-button-selected\"\n (click)=\"unselect(chip)\"\n mat-icon-button>\n <mat-icon>\n check_box\n </mat-icon>\n </a>\n } @else {\n <a\n class=\"select-button select-button-unselected\"\n (click)=\"select(chip)\"\n mat-icon-button>\n <mat-icon>\n check_box_outline_blank\n </mat-icon>\n </a>\n }\n }\n <ng-component [ngTemplateOutlet]=\"chip.templateRef\"></ng-component>\n </div>\n </div>\n }\n </div>\n} @else {\n <div\n class=\"fs-chips\"\n [class.orientation-vertical]=\"orientationVertical\"\n [style.width]=\"width\">\n @for (chip of chips; track chip) {\n <div\n class=\"fs-chip-container\"\n [class.orientation-vertical]=\"orientationVertical\">\n <ng-component [ngTemplateOutlet]=\"chip.templateRef\"></ng-component>\n </div>\n }\n </div>\n}","import { CommonModule } from '@angular/common';\nimport { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { DragDropModule } from '@angular/cdk/drag-drop';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTooltipModule } from '@angular/material/tooltip';\n\nimport { FsLabelModule } from '@firestitch/label';\n\nimport { FsChipPrefixComponent } from './components/chip-prefix/chip-prefix.component';\nimport { FsChipSelectComponent } from './components/chip-select/chip-select.component';\nimport { FsChipSuffixComponent } from './components/chip-suffix/chip-suffix.component';\nimport { FsChipComponent } from './components/chip/chip.component';\nimport { FsChipsComponent } from './components/chips/chips.component';\nimport { FsChipPrefixDirective } from './directives/chip-prefix.directive';\nimport { FsChipSubcontentDirective } from './directives/chip-subcontent.directive';\nimport { FsChipSuffixDirective } from './directives/chip-suffix.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n DragDropModule,\n MatIconModule,\n MatTooltipModule,\n FsLabelModule,\n FsChipsComponent,\n FsChipComponent,\n FsChipSuffixComponent,\n FsChipPrefixComponent,\n FsChipPrefixDirective,\n FsChipSuffixDirective,\n FsChipSubcontentDirective,\n FsChipSelectComponent,\n ],\n exports: [\n FsChipsComponent,\n FsChipComponent,\n FsChipSuffixDirective,\n FsChipPrefixDirective,\n FsChipSubcontentDirective,\n FsChipSelectComponent,\n ],\n})\nexport class FsChipModule {\n public static forRoot(): ModuleWithProviders<FsChipModule> {\n return {\n ngModule: FsChipModule,\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@firestitch/chip",
3
- "version": "18.0.55",
3
+ "version": "18.0.56",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/Firestitch/ngx-chip"
package/public_api.d.ts CHANGED
@@ -4,3 +4,4 @@ export { FsChipsComponent } from './app/components/chips/chips.component';
4
4
  export { FsChipPrefixDirective } from './app/directives/chip-prefix.directive';
5
5
  export { FsChipSubcontentDirective } from './app/directives/chip-subcontent.directive';
6
6
  export { FsChipSuffixDirective } from './app/directives/chip-suffix.directive';
7
+ export { FsChipSelectComponent } from './app/components/chip-select/chip-select.component';