@stackline/angular-multiselect-dropdown 21.2.1 → 22.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +16 -15
- package/fesm2022/stackline-angular-multiselect-dropdown.mjs +207 -304
- package/package.json +9 -7
package/README.md
CHANGED
|
@@ -5,17 +5,17 @@
|
|
|
5
5
|
[](https://www.npmjs.com/package/@stackline/angular-multiselect-dropdown)
|
|
6
6
|
[](https://www.npmjs.com/package/@stackline/angular-multiselect-dropdown)
|
|
7
7
|
[](https://github.com/alexandroit/angular-multiselect-dropdown/blob/master/LICENSE)
|
|
8
|
-
[](https://alexandro.net/docs/angular/multiselect/angular-22/)
|
|
9
|
+
[](https://www.typescriptlang.org)
|
|
10
10
|
[](https://www.reddit.com/r/Stackline/)
|
|
11
11
|
|
|
12
|
-
**[Documentation & Live Demos](https://alexandro.net/docs/angular/multiselect/)** | **[Angular
|
|
12
|
+
**[Documentation & Live Demos](https://alexandro.net/docs/angular/multiselect/)** | **[Angular 22 Demo](https://alexandro.net/docs/angular/multiselect/angular-22/)** | **[Angular 21 StackBlitz](https://stackblitz.com/github/alexandroit/stackline-angular-multiselect-angular-21?startScript=start&initialpath=%2Fbasic)** | **[npm](https://www.npmjs.com/package/@stackline/angular-multiselect-dropdown)** | **[Issues](https://github.com/alexandroit/angular-multiselect-dropdown/issues)** | **[Repository](https://github.com/alexandroit/angular-multiselect-dropdown)** | **[Community Discussions](https://www.reddit.com/r/Stackline/)**
|
|
13
13
|
|
|
14
14
|
<p align="center">
|
|
15
15
|
<img src="https://alexandro.net/images/public/2026/06/dropdownlist.gif" alt="@stackline/angular-multiselect-dropdown live dropdown preview" width="420">
|
|
16
16
|
</p>
|
|
17
17
|
|
|
18
|
-
**Latest tested package release:** `
|
|
18
|
+
**Latest tested package release:** `22.0.0` for Angular `22.x`
|
|
19
19
|
|
|
20
20
|
---
|
|
21
21
|
|
|
@@ -27,15 +27,15 @@
|
|
|
27
27
|
|
|
28
28
|
The original `angular2-multiselect-dropdown` package became difficult to keep current across multiple Angular generations. This maintained package keeps the classic API and template structure intact, introduces the new primary selector `<angular-multiselect>`, preserves the legacy alias `<angular2-multiselect>`, and publishes the project line by line so older applications can keep a predictable upgrade path.
|
|
29
29
|
|
|
30
|
-
The repository contains the full documentation matrix from Angular 2 through Angular
|
|
30
|
+
The repository contains the full documentation matrix from Angular 2 through Angular 22. The current tested package release is `22.0.0` for Angular 22.x applications.
|
|
31
31
|
|
|
32
|
-
The Angular
|
|
32
|
+
The Angular 22 package is compatible with Angular 22.x and was tested in a real Angular 22.0.0 application before publication. The 22.0.x line keeps the Angular 21.2.x behavior baseline: accessibility-focused keyboard navigation, focus handling, and ARIA support for the dropdown trigger, clear-all action, selected chips, listbox, and lazy-loaded results. It carries the React 19.1.x combobox contract into Angular patterns: configurable keyboard behavior, matching `aria-selected` plus `aria-checked`, selected-object preservation across async data refreshes, richer template contexts, and renderless state helpers for custom Angular HTML.
|
|
33
33
|
|
|
34
34
|
## Features
|
|
35
35
|
|
|
36
36
|
| Feature | Supported |
|
|
37
37
|
| :--- | :---: |
|
|
38
|
-
| Angular
|
|
38
|
+
| Angular 22 tested release line | ✅ |
|
|
39
39
|
| Multi-select and single-select modes | ✅ |
|
|
40
40
|
| Search and filter | ✅ |
|
|
41
41
|
| Group by field | ✅ |
|
|
@@ -56,12 +56,12 @@ The Angular 21 package is compatible with Angular 21.x and was tested in a real
|
|
|
56
56
|
|
|
57
57
|
1. [Rename Note](#rename-note)
|
|
58
58
|
2. [Angular Version Compatibility](#angular-version-compatibility)
|
|
59
|
-
3. [StackBlitz Playground](#stackblitz-playground)
|
|
59
|
+
3. [Angular 21 StackBlitz Playground](#angular-21-stackblitz-playground)
|
|
60
60
|
4. [Installation](#installation)
|
|
61
61
|
5. [Setup](#setup)
|
|
62
62
|
6. [Custom CSS and SCSS Themes](#custom-css-and-scss-themes)
|
|
63
63
|
7. [Basic Usage](#basic-usage)
|
|
64
|
-
8. [Official Angular
|
|
64
|
+
8. [Official Angular 22 Test Matrix](#official-angular-22-test-matrix)
|
|
65
65
|
9. [Keyboard and ARIA Contract](#keyboard-and-aria-contract)
|
|
66
66
|
10. [Custom Templates](#custom-templates)
|
|
67
67
|
11. [Renderless State Helper](#renderless-state-helper)
|
|
@@ -83,10 +83,11 @@ The Angular 21 package is compatible with Angular 21.x and was tested in a real
|
|
|
83
83
|
|
|
84
84
|
Each package family only installs on its matching Angular family. Framework major and package major are not always the same package number, so use the package family column below.
|
|
85
85
|
|
|
86
|
-
Peer ranges are intentionally bounded to the tested Angular major. The Angular
|
|
86
|
+
Peer ranges are intentionally bounded to the tested Angular major. The Angular 22 line stays on `>=22.0.0 <23.0.0`; Angular 21 stays on `>=21.0.0 <22.0.0`. Do not treat one package family as an open-ended dependency for the next Angular major.
|
|
87
87
|
|
|
88
88
|
| Package family | Framework family | Peer range | Tested release window | Demo link |
|
|
89
89
|
| :---: | :---: | :---: | :---: | :--- |
|
|
90
|
+
| **22.x** | **Angular 22 only** | **`>=22.0.0 <23.0.0`** | **22.0.0 -> 22.0.0** | [Angular 22 family docs](https://alexandro.net/docs/angular/multiselect/angular-22/) |
|
|
90
91
|
| **21.x** | **Angular 21 only** | **`>=21.0.0 <22.0.0`** | **21.2.1 -> 21.2.14** | [Angular 21 family docs](https://alexandro.net/docs/angular/multiselect/angular-21/) |
|
|
91
92
|
| **20.x** | **Angular 20 only** | **`>=20.0.0 <21.0.0`** | **20.0.1 -> 20.3.21** | [Angular 20 family docs](https://alexandro.net/docs/angular/multiselect/angular-20/) |
|
|
92
93
|
| **19.x** | **Angular 19 only** | **`>=19.0.0 <20.0.0`** | **19.0.1 -> 19.2.22** | [Angular 19 family docs](https://alexandro.net/docs/angular/multiselect/angular-19/) |
|
|
@@ -107,7 +108,7 @@ Peer ranges are intentionally bounded to the tested Angular major. The Angular 2
|
|
|
107
108
|
| **4.x** | **Angular 4 only** | **`>=4.0.0 <5.0.0`** | **4.0.2 -> 4.4.7** | [Angular 4 family docs](https://alexandro.net/docs/angular/multiselect/angular-4/) |
|
|
108
109
|
| **2.x** | **Angular 2 only** | **`>=2.0.0 <3.0.0`** | **compatible with 2.x; tested on 2.4.10** | [Angular 2 family docs](https://alexandro.net/docs/angular/multiselect/angular-2/) |
|
|
109
110
|
|
|
110
|
-
## StackBlitz Playground
|
|
111
|
+
## Angular 21 StackBlitz Playground
|
|
111
112
|
|
|
112
113
|
The editable StackBlitz entry is one Angular 21 playground with isolated lazy routes. Official links use `stackblitz.com/github` against the maintained GitHub repository, so they stay tied to the latest pushed source instead of creating stale forked copies for every example. Each example has its own folder, Angular module, data object, and URL.
|
|
113
114
|
|
|
@@ -141,10 +142,10 @@ The editable StackBlitz entry is one Angular 21 playground with isolated lazy ro
|
|
|
141
142
|
## Installation
|
|
142
143
|
|
|
143
144
|
```bash
|
|
144
|
-
npm install @stackline/angular-multiselect-dropdown@
|
|
145
|
+
npm install @stackline/angular-multiselect-dropdown@22.0.0 --save-exact
|
|
145
146
|
```
|
|
146
147
|
|
|
147
|
-
Install `
|
|
148
|
+
Install `22.0.0` for Angular 22.x applications. This line keeps the tested Angular behavior, makes `<angular-multiselect>` the documented standard selector, keeps `<angular2-multiselect>` only as a legacy compatibility alias, includes the accessibility-focused and keyboard/ARIA tested interaction contract, preserves selected objects during async refreshes, and keeps dropdown surfaces opaque in clipped containers.
|
|
148
149
|
|
|
149
150
|
## Setup
|
|
150
151
|
|
|
@@ -238,9 +239,9 @@ dropdownSettings = {
|
|
|
238
239
|
</angular-multiselect>
|
|
239
240
|
```
|
|
240
241
|
|
|
241
|
-
## Official Angular
|
|
242
|
+
## Official Angular 22 Test Matrix
|
|
242
243
|
|
|
243
|
-
The
|
|
244
|
+
The Angular 22 release was tested in a real Angular `22.0.0` application with `@stackline/angular-multiselect-dropdown@22.0.0`. The docs use the same example pattern from the clean test app, including the accessibility-focused keyboard, focus, and ARIA behavior, responsive dropdown width handling, opaque menu surfaces, and dialog-safe positioning carried forward from the Angular 21.2.x line.
|
|
244
245
|
|
|
245
246
|
Switch between skins through the settings object:
|
|
246
247
|
|