Skip to content

Commit 01d18ec

Browse files
Add filter select component (#1061)
* Implement filter-select component * Update examples page * Update docs * Fix initial state * Update changelog * Fix lint issue * Fix lint issue * Fix border radius * Update version
1 parent 57037ae commit 01d18ec

18 files changed

+1491
-2
lines changed

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
"deploy": "angular-cli-ghpages --dir ./dist/ngx-ui --name=Swimlane --email=developer@swimlane.com",
3535
"prepublish:lib": "npm run package",
3636
"publish:lib": "npm publish ./dist/swimlane/ngx-ui --ignore-scripts",
37+
"publish:lib:beta": "npm publish ./dist/swimlane/ngx-ui --ignore-scripts --tag beta",
3738
"prepack": "npm run package",
3839
"pack": "npm pack ./dist/swimlane/ngx-ui",
3940
"prepare": "husky install"

projects/swimlane/ngx-ui/CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22

33
## HEAD (unreleased)
44

5+
## 48.2.0 (2024-12-17)
6+
7+
- Feature (`ngx-filter-select`): Added a new filter select component
8+
59
## 48.1.0 (2024-12-03)
610

711
- Feature (`ngx-tooltip`): Added new ShowTypes 'click' which can open/close the popover when clicking the component

projects/swimlane/ngx-ui/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@swimlane/ngx-ui",
3-
"version": "48.1.0",
3+
"version": "48.2.0",
44
"engines": {
55
"node": ">=18.0.0"
66
},
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
<div class="ngx-select-wrap">
2+
<div class="ngx-select-flex-wrap" [style.min-width]="autosize ? autosizeMinWidth : undefined">
3+
<div class="ngx-select-flex-wrap-inner">
4+
<div class="ngx-chip" (click)="onToggle()" [class.has-controls]="hasControls">
5+
<div class="ngx-chip__contents">
6+
<span *ngIf="label" class="ngx-chip-label"> {{ label }}: </span>
7+
8+
<span class="ngx-chip-value">
9+
<span *ngIf="!value?.length">{{ placeholder }} </span>
10+
<span *ngIf="value?.length > 1">{{ value.length }} Selected</span>
11+
<span *ngIf="value?.length === 1" [innerHTML]="selection"></span>
12+
</span>
13+
</div>
14+
15+
<div class="ngx-chip__controls" *ngIf="hasControls">
16+
<button
17+
type="button"
18+
*ngIf="clearVisible"
19+
title="Clear Selections"
20+
aria-label="Clear Selections"
21+
class="ngx-chip-clear"
22+
(click)="onClear()"
23+
>
24+
<i class="ngx-icon ngx-x"></i>
25+
</button>
26+
<button type="button" *ngIf="caretVisible" aria-label="Toggle Dropdown" class="ngx-chip-caret">
27+
<i class="ngx-icon ngx-chevron-bold-down"></i>
28+
</button>
29+
</div>
30+
</div>
31+
</div>
32+
</div>
33+
34+
<ngx-select-dropdown
35+
*ngIf="dropdownVisible"
36+
[focusIndex]="focusIndex"
37+
[filterQuery]="filterQuery"
38+
[filterPlaceholder]="filterPlaceholder"
39+
[filterCaseSensitive]="filterCaseSensitive"
40+
[allowAdditions]="false"
41+
[showSelectAll]="multiple && showSelectAll"
42+
[selected]="value"
43+
[groupBy]="groupBy"
44+
[groupByTemplate]="groupByTemplate"
45+
[emptyPlaceholder]="emptyPlaceholder"
46+
[tagging]="false"
47+
[filterEmptyPlaceholder]="filterEmptyPlaceholder"
48+
[filterable]="filterable"
49+
[identifier]="identifier"
50+
[options]="options"
51+
(keyup)="keyup.emit($event)"
52+
(close)="onClose()"
53+
(clearQueryFilter)="clearQueryFilter.emit()"
54+
(selection)="onDropdownSelection($event)"
55+
(selectAll)="onSelectAll()"
56+
(deselection)="onDropdownDeselection($event)"
57+
(keyboardSelection)="onDropdownSelection($event, false)"
58+
(keyboardDeselection)="onDropdownDeselection($event, false)"
59+
>
60+
</ngx-select-dropdown>
61+
</div>

0 commit comments

Comments
 (0)