ng-select2-component 18.0.0 → 19.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,7 +1,24 @@
1
1
  # Changelog of ng-select2
2
2
 
3
+ ## V19.0.1 (2026-06-24)
4
+
5
+ ### Change
6
+
7
+ - fix: when you hit spacebar on autocreate mode (thanks @shoboske)
8
+ - fix: create only when input (trimmed) is not empty
9
+
10
+ ## V19.0.0 (2026-06-17)
11
+
12
+ ### Change
13
+
14
+ - **zoneless**: remove `zone.js` dependency, fully compatible with `provideZonelessChangeDetection()`
15
+ - feat: add `<ng-option>` and `<ng-group>` template mode directives
16
+ - feat: add checkbox mode with `showOptionCheckbox` input
17
+
3
18
  ## V18.0.0 (2026-06-12)
4
19
 
20
+ ### Change
21
+
5
22
  - update to **Angular 22**
6
23
  - use `inject()` and remove unnecessary params
7
24
  - move `@HostBinding` & `@HostListener` to `host`
@@ -11,11 +28,15 @@
11
28
 
12
29
  ## V17.3.2 (2026-05-24)
13
30
 
31
+ ### Change
32
+
14
33
  - feat: add Cyrillic, Greek Arabic and Hebrew for searches and highlight.
15
34
  - feat: add `direction` (`rtl` & `ltr`) for options & groups
16
35
 
17
36
  ## V17.3.1 (2026-05-21)
18
37
 
38
+ ### Change
39
+
19
40
  - feat: searches done in Japanese (e.g. はハばバぱパ are considered the same character)
20
41
  - feat: highlight ongoing searches done in Japaneseks
21
42
 
package/README.md CHANGED
@@ -20,6 +20,7 @@ npm i ng-select2-component --save
20
20
 
21
21
  | Version | For **Angular** | Notes |
22
22
  | --------- | ---------------- | ----------------------------------------------------------- |
23
+ | `19.0.0` | 22 | Zoneless |
23
24
  | `18.0.0` | 22 | Ivy / Stand-alone, native scroll (no `ngx-infinite-scroll`) |
24
25
  | `17.3.2` | 18.1, 19, 20, 21 | Ivy / Stand-alone |
25
26
  | `17.1.0` | 19 | Ivy / Stand-alone |
@@ -40,23 +41,50 @@ npm i ng-select2-component --save
40
41
 
41
42
  ## Features
42
43
 
43
- - select one
44
- - options or groups (list or grid)
45
- - scroll
46
- - local search
47
- - select by keyboard
48
- - disabled option
49
- - disabled component
50
- - hide search box
51
- - placeholder
52
- - multiple selection
53
- - add items not found in multiple
54
- - material style
55
- - form binding
56
- - templating
57
- - drag'n drop
58
- - WAI (accessibility)
59
- - etc.
44
+ - **Selection**
45
+ - Single and multiple selection
46
+ - Limit the number of selections (multiple)
47
+ - Hide already selected items from the dropdown (multiple)
48
+ - Select all / Remove all button (multiple)
49
+ - Checkbox next to each option
50
+ - Drag & drop reordering of selected items (multiple)
51
+ - Resettable with configurable reset value
52
+ - Auto-create items not present in the list
53
+ - **Data representation**
54
+ - Options and option groups
55
+ - Declarative with `<ng-option>` and `<ng-group>` tags
56
+ - Infinite scroll
57
+ - Maximum results limit
58
+ - Grid layout (fixed column count or auto cell size)
59
+ - **Selection representation**
60
+ - Selection override: replace the selection area with custom text or a function
61
+ - Selection no-wrap: keep selected tags on a single line
62
+ - **Search**
63
+ - Local filtering with configurable minimum character threshold
64
+ - External / async search (`customSearchEnabled`)
65
+ - Highlight matched text in options (ignore the diacritics for: Latin, Japanese, Cyrillic, Greek, Arabic & Hebrew)
66
+ - **Keyboard**
67
+ - Standard keyboard navigation
68
+ - Native HTML `<select>` navigation mode (`nativeKeyboard`)
69
+ - **Templates**
70
+ - Custom rendering for options, groups and the selection area
71
+ - Per-item template ids (`templateId`, `templateSelectionId`)
72
+ - **Style**
73
+ - Four modes: default, material, borderless, no-style
74
+ - Fully themeable via CSS custom properties
75
+ - **Dropdown**
76
+ - Dropdown position: below, above, or auto
77
+ - Angular CDK Overlay mode
78
+ - **Forms**
79
+ - `ngModel` and `FormControl` binding
80
+ - `required`, `disabled`, `readonly`, `tabIndex`, `placeholder`
81
+ - **Accessibility**
82
+ - WAI-ARIA roles, live regions, `ariaLabelledby`, `ariaDescribedby`, hint slot
83
+ - **Angular**
84
+ - signals-based API (`input()` / `output()`)
85
+ - standalone component
86
+ - zoneless compatible (no `zone.js` dependency)
87
+ - Web Component compatible naming (`<ng-select2>`)
60
88
 
61
89
  ## Usage
62
90
 
@@ -99,6 +127,18 @@ or
99
127
  </ng-select2>
100
128
  ```
101
129
 
130
+ or with declarative `<ng-option>` / `<ng-group>` (no `[data]` binding needed):
131
+
132
+ ```html
133
+ <ng-select2 [value]="value" (update)="update($event)">
134
+ <ng-group label="Fruits">
135
+ <ng-option value="apple">Apple</ng-option>
136
+ <ng-option value="banana">Banana</ng-option>
137
+ </ng-group>
138
+ <ng-option value="other">Other</ng-option>
139
+ </ng-select2>
140
+ ```
141
+
102
142
  ### properties and events of the component
103
143
 
104
144
  | name | type | default | description | required |
@@ -134,6 +174,7 @@ or
134
174
  | `selectionOverride` | [`Select2SelectionOverride`](#select2-data-structure) | | Replace selection by a text<br>`string`: `%size%` = total selected options<br>`function`: juste show the string | |
135
175
  | `selectionNoWrap` | `boolean` | `false` | force selection on one line | |
136
176
  | `showSelectAll` | `boolean` | `false` | Add an option to select all options | with `multiple` |
177
+ | `showOptionCheckbox` | `boolean` | `false` | Show a checkbox next to each option in the dropdown | |
137
178
  | `selectAllText` | `string` | `'Select all'` | Text when all options as not selected | with `multiple` |
138
179
  | `removeAllText` | `string` | `'Remove all'` | text when all options as selected | with `multiple` |
139
180
  | `editPattern` | `(str: string) => string` | | use it for change the pattern of the filter search | |