@ngx-formly/ionic 10.0.1 → 11.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 +109 -177
- package/fesm2022/ngx-formly-ionic-checkbox.mjs +192 -70
- package/fesm2022/ngx-formly-ionic-checkbox.mjs.map +1 -1
- package/fesm2022/ngx-formly-ionic-datetime.mjs +349 -119
- package/fesm2022/ngx-formly-ionic-datetime.mjs.map +1 -1
- package/fesm2022/ngx-formly-ionic-form-field.mjs +259 -81
- package/fesm2022/ngx-formly-ionic-form-field.mjs.map +1 -1
- package/fesm2022/ngx-formly-ionic-input.mjs +233 -92
- package/fesm2022/ngx-formly-ionic-input.mjs.map +1 -1
- package/fesm2022/ngx-formly-ionic-radio.mjs +262 -72
- package/fesm2022/ngx-formly-ionic-radio.mjs.map +1 -1
- package/fesm2022/ngx-formly-ionic-select.mjs +247 -90
- package/fesm2022/ngx-formly-ionic-select.mjs.map +1 -1
- package/fesm2022/ngx-formly-ionic-slider.mjs +198 -64
- package/fesm2022/ngx-formly-ionic-slider.mjs.map +1 -1
- package/fesm2022/ngx-formly-ionic-textarea.mjs +194 -67
- package/fesm2022/ngx-formly-ionic-textarea.mjs.map +1 -1
- package/fesm2022/ngx-formly-ionic-toggle.mjs +189 -66
- package/fesm2022/ngx-formly-ionic-toggle.mjs.map +1 -1
- package/fesm2022/ngx-formly-ionic.mjs +96 -69
- package/fesm2022/ngx-formly-ionic.mjs.map +1 -1
- package/package.json +3 -3
- package/types/ngx-formly-ionic-checkbox.d.ts +22 -27
- package/types/ngx-formly-ionic-datetime.d.ts +43 -47
- package/types/ngx-formly-ionic-form-field.d.ts +30 -31
- package/types/ngx-formly-ionic-input.d.ts +21 -27
- package/types/ngx-formly-ionic-radio.d.ts +21 -26
- package/types/ngx-formly-ionic-select.d.ts +34 -38
- package/types/ngx-formly-ionic-slider.d.ts +20 -26
- package/types/ngx-formly-ionic-textarea.d.ts +21 -27
- package/types/ngx-formly-ionic-toggle.d.ts +21 -26
- package/types/ngx-formly-ionic.d.ts +17 -21
package/README.md
CHANGED
|
@@ -1,180 +1,112 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
1
|
+
# @ngx-formly/ionic
|
|
2
|
+
|
|
3
|
+
Ionic field types and wrappers for Formly. This adapter uses Ionic standalone controls such as `ion-input`, `ion-select`, and `ion-checkbox` with Angular Reactive Forms.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
For Formly 11, use Angular 22 or newer and Ionic 9. Keep all `@ngx-formly/*` packages on the same version, and use an `@angular/forms` version matching your application.
|
|
8
|
+
|
|
9
|
+
In an Angular application with Reactive Forms installed:
|
|
10
|
+
|
|
11
|
+
```sh
|
|
12
|
+
npm install @ngx-formly/core@^11 @ngx-formly/ionic@^11 @ionic/angular@^9
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
Use this adapter in an Ionic Angular application with its global Ionic styles configured. For an existing Angular application, follow the [Ionic Angular setup guide](https://ionicframework.com/docs/angular/overview). Initialize Ionic with `provideIonicAngular()` as shown below.
|
|
16
|
+
|
|
17
|
+
## Configuration
|
|
18
|
+
|
|
19
|
+
Add the adapter to your application providers in `app.config.ts`:
|
|
20
|
+
|
|
21
|
+
```ts
|
|
22
|
+
import { ApplicationConfig } from '@angular/core';
|
|
23
|
+
import { provideIonicAngular } from '@ionic/angular';
|
|
24
|
+
import { provideFormlyCore } from '@ngx-formly/core';
|
|
25
|
+
import { withFormlyIonic } from '@ngx-formly/ionic';
|
|
26
|
+
|
|
27
|
+
export const appConfig: ApplicationConfig = {
|
|
28
|
+
providers: [provideIonicAngular(), provideFormlyCore(withFormlyIonic())],
|
|
29
|
+
};
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Usage
|
|
33
|
+
|
|
34
|
+
This field renders an email input using Ionic:
|
|
35
|
+
|
|
36
|
+
```ts
|
|
37
|
+
import { Component } from '@angular/core';
|
|
38
|
+
import { FormGroup, ReactiveFormsModule } from '@angular/forms';
|
|
39
|
+
import { FormlyFieldConfig, FormlyForm } from '@ngx-formly/core';
|
|
40
|
+
|
|
41
|
+
@Component({
|
|
42
|
+
selector: 'app-example',
|
|
43
|
+
imports: [ReactiveFormsModule, FormlyForm],
|
|
44
|
+
template: `
|
|
45
|
+
<form [formGroup]="form">
|
|
46
|
+
<formly-form [form]="form" [fields]="fields" [model]="model"></formly-form>
|
|
47
|
+
</form>
|
|
48
|
+
`,
|
|
49
|
+
})
|
|
50
|
+
export class ExampleComponent {
|
|
51
|
+
form = new FormGroup({});
|
|
52
|
+
model = { email: '' };
|
|
53
|
+
fields: FormlyFieldConfig[] = [
|
|
54
|
+
{
|
|
55
|
+
key: 'email',
|
|
56
|
+
type: 'input',
|
|
57
|
+
props: { type: 'email', label: 'Email', required: true },
|
|
58
|
+
},
|
|
59
|
+
];
|
|
60
|
+
}
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## Field types
|
|
64
|
+
|
|
65
|
+
`withFormlyIonic()` registers `input`, `textarea`, `checkbox`, `radio`, and `select`, together with their form-field wrapper.
|
|
66
|
+
|
|
67
|
+
Register these additional controls separately:
|
|
68
|
+
|
|
69
|
+
| Field type | Import | Registration |
|
|
70
|
+
| ----------------- | ---------------------------- | --------------------------- |
|
|
71
|
+
| `datetime` | `@ngx-formly/ionic/datetime` | `withFormlyFieldDatetime()` |
|
|
72
|
+
| `slider`, `range` | `@ngx-formly/ionic/slider` | `withFormlyFieldSlider()` |
|
|
73
|
+
| `toggle` | `@ngx-formly/ionic/toggle` | `withFormlyFieldToggle()` |
|
|
74
|
+
|
|
75
|
+
For example, add `withFormlyFieldToggle()` alongside the default types:
|
|
76
|
+
|
|
77
|
+
```ts
|
|
78
|
+
import { ApplicationConfig } from '@angular/core';
|
|
79
|
+
import { provideIonicAngular } from '@ionic/angular';
|
|
80
|
+
import { provideFormlyCore } from '@ngx-formly/core';
|
|
81
|
+
import { withFormlyIonic } from '@ngx-formly/ionic';
|
|
82
|
+
import { withFormlyFieldToggle } from '@ngx-formly/ionic/toggle';
|
|
83
|
+
|
|
84
|
+
export const appConfig: ApplicationConfig = {
|
|
85
|
+
providers: [provideIonicAngular(), provideFormlyCore([...withFormlyIonic(), withFormlyFieldToggle()])],
|
|
86
|
+
};
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
Use `props.interface` and `props.interfaceOptions` to configure Ionic select overlays. See [select interfaces](https://github.com/ngx-formly/ngx-formly/blob/main/docs/properties-options.md#ionic-select-interfaces).
|
|
90
|
+
|
|
91
|
+
## Which Version to use?
|
|
92
|
+
|
|
93
|
+
Match `@ngx-formly/ionic` to your `@ngx-formly/core` version, and check the migration guide for UI library requirements.
|
|
66
94
|
|
|
67
95
|
| Angular version | Formly version | Migration |
|
|
68
96
|
| --------------- | -------------------- | ---------------------------------- |
|
|
69
|
-
| Angular >=
|
|
70
|
-
| Angular >=
|
|
71
|
-
| Angular >=
|
|
72
|
-
| Angular >=
|
|
73
|
-
| Angular >=
|
|
74
|
-
| Angular >=
|
|
75
|
-
| Angular >=
|
|
76
|
-
| Angular >=
|
|
77
|
-
| Angular >=
|
|
78
|
-
| Angular >=
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
their respective UI libraries. Kendo requires version 21.4.1 or newer, and NativeScript
|
|
86
|
-
requires `@nativescript/angular` 21 or newer. Applications staying on Angular 20 should use Formly v9.
|
|
87
|
-
|
|
88
|
-
See the [v10 upgrade guide](UPGRADE-10.0.md) for migration steps.
|
|
89
|
-
|
|
90
|
-
#### Upgrading to v9
|
|
91
|
-
|
|
92
|
-
Formly v9 requires Angular 20 or newer. Upgrade Angular first, then update all
|
|
93
|
-
`@ngx-formly/*` packages used by your application together to v9.
|
|
94
|
-
The Material, PrimeNG, and NG-ZORRO integrations require version 20 or newer of
|
|
95
|
-
their respective UI libraries. Kendo requires version 19.1 or newer, and NativeScript
|
|
96
|
-
requires `@nativescript/angular` 20 or newer. Applications staying on Angular 19 should
|
|
97
|
-
use Formly v8; applications staying on Angular 18 should use Formly v7.
|
|
98
|
-
|
|
99
|
-
PrimeNG datepicker fields no longer accept `monthNavigator`, `yearNavigator`, or
|
|
100
|
-
`yearRange`, which PrimeNG 20 removed. Replace `@primeng/themes` imports with
|
|
101
|
-
`@primeuix/themes` when configuring a PrimeNG theme.
|
|
102
|
-
|
|
103
|
-
See the [v9 upgrade guide](UPGRADE-9.0.md) for migration steps and the [changelog](CHANGELOG.md) for the full list of changes.
|
|
104
|
-
|
|
105
|
-
## Core Team
|
|
106
|
-
|
|
107
|
-
<table>
|
|
108
|
-
<tr>
|
|
109
|
-
<td align="center">
|
|
110
|
-
<a href="https://github.com/aitboudad">
|
|
111
|
-
<img src="https://avatars.githubusercontent.com/u/1753742?v=3" width="100px;" />
|
|
112
|
-
<br />
|
|
113
|
-
<sub><b>Abdellatif Ait boudad</b></sub>
|
|
114
|
-
</a>
|
|
115
|
-
</td>
|
|
116
|
-
<td align="center">
|
|
117
|
-
<a href="https://juri.dev">
|
|
118
|
-
<img src="https://avatars.githubusercontent.com/u/542458" width="100px;" />
|
|
119
|
-
<br />
|
|
120
|
-
<sub><b>Juri Strumpflohner</b></sub>
|
|
121
|
-
</a>
|
|
122
|
-
</td>
|
|
123
|
-
<td align="center">
|
|
124
|
-
<a href="https://github.com/mohammedzamakhan">
|
|
125
|
-
<img src="https://avatars.githubusercontent.com/u/2327532" width="100px;" />
|
|
126
|
-
<br />
|
|
127
|
-
<sub><b>Mohammed Zama Khan</b></sub>
|
|
128
|
-
</a>
|
|
129
|
-
</td>
|
|
130
|
-
<td align="center">
|
|
131
|
-
<a href="https://github.com/beeman">
|
|
132
|
-
<img src="https://avatars.githubusercontent.com/u/36491" width="100px;" />
|
|
133
|
-
<br />
|
|
134
|
-
<sub><b>Bram Borggreve</b></sub>
|
|
135
|
-
</a>
|
|
136
|
-
</td>
|
|
137
|
-
<td align="center">
|
|
138
|
-
<a href="https://github.com/kenisteward">
|
|
139
|
-
<img src="https://avatars.githubusercontent.com/u/12831669" width="100px;" />
|
|
140
|
-
<br />
|
|
141
|
-
<sub><b>Keni Steward</b></sub>
|
|
142
|
-
</a>
|
|
143
|
-
</td>
|
|
144
|
-
<td align="center">
|
|
145
|
-
<a href="https://github.com/MaxKless">
|
|
146
|
-
<img src="https://avatars.githubusercontent.com/u/34165455" width="100px;" />
|
|
147
|
-
<br />
|
|
148
|
-
<sub><b>Max Kless</b></sub>
|
|
149
|
-
</a>
|
|
150
|
-
</td>
|
|
151
|
-
</tr>
|
|
152
|
-
</table>
|
|
153
|
-
|
|
154
|
-
## Contributors
|
|
155
|
-
|
|
156
|
-
Thanks goes to these wonderful people:
|
|
157
|
-
|
|
158
|
-
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
|
|
159
|
-
[<img alt="aitboudad" src="https://avatars.githubusercontent.com/u/1753742?v=4&s=80" width="80"/>](https://github.com/aitboudad)[<img alt="mohammedzamakhan" src="https://avatars.githubusercontent.com/u/2327532?v=4&s=80" width="80"/>](https://github.com/mohammedzamakhan)[<img alt="divyakumarjain" src="https://avatars.githubusercontent.com/u/2039134?v=4&s=80" width="80"/>](https://github.com/divyakumarjain)[<img alt="MaxKless" src="https://avatars.githubusercontent.com/u/34165455?v=4&s=80" width="80"/>](https://github.com/MaxKless)[<img alt="couzic" src="https://avatars.githubusercontent.com/u/1380322?v=4&s=80" width="80"/>](https://github.com/couzic)[<img alt="juristr" src="https://avatars.githubusercontent.com/u/542458?v=4&s=80" width="80"/>](https://github.com/juristr)[<img alt="franzeal" src="https://avatars.githubusercontent.com/u/7455769?v=4&s=80" width="80"/>](https://github.com/franzeal)[<img alt="beeman" src="https://avatars.githubusercontent.com/u/36491?v=4&s=80" width="80"/>](https://github.com/beeman)
|
|
160
|
-
|
|
161
|
-
[<img alt="kenisteward" src="https://avatars.githubusercontent.com/u/12831669?v=4&s=80" width="80"/>](https://github.com/kenisteward)[<img alt="thorgod" src="https://avatars.githubusercontent.com/u/13910170?v=4&s=80" width="80"/>](https://github.com/thorgod)[<img alt="samtsai" src="https://avatars.githubusercontent.com/u/225526?v=4&s=80" width="80"/>](https://github.com/samtsai)[<img alt="luizfbicalho" src="https://avatars.githubusercontent.com/u/16882855?v=4&s=80" width="80"/>](https://github.com/luizfbicalho)[<img alt="klemenoslaj" src="https://avatars.githubusercontent.com/u/7548247?v=4&s=80" width="80"/>](https://github.com/klemenoslaj)[<img alt="FritzHerbers" src="https://avatars.githubusercontent.com/u/10029682?v=4&s=80" width="80"/>](https://github.com/FritzHerbers)[<img alt="dev-kanishk" src="https://avatars.githubusercontent.com/u/48204976?v=4&s=80" width="80"/>](https://github.com/dev-kanishk)[<img alt="vstiebe" src="https://avatars.githubusercontent.com/u/13326475?v=4&s=80" width="80"/>](https://github.com/vstiebe)
|
|
162
|
-
|
|
163
|
-
[<img alt="rpw1" src="https://avatars.githubusercontent.com/u/47835461?v=4&s=80" width="80"/>](https://github.com/rpw1)[<img alt="Devqon" src="https://avatars.githubusercontent.com/u/9316480?v=4&s=80" width="80"/>](https://github.com/Devqon)[<img alt="ryanjerskine" src="https://avatars.githubusercontent.com/u/5464778?v=4&s=80" width="80"/>](https://github.com/ryanjerskine)[<img alt="rehleinBo" src="https://avatars.githubusercontent.com/u/7338819?v=4&s=80" width="80"/>](https://github.com/rehleinBo)[<img alt="MarcosEllys" src="https://avatars.githubusercontent.com/u/6751242?v=4&s=80" width="80"/>](https://github.com/MarcosEllys)[<img alt="manuelmeister" src="https://avatars.githubusercontent.com/u/3001985?v=4&s=80" width="80"/>](https://github.com/manuelmeister)[<img alt="dolphinigle" src="https://avatars.githubusercontent.com/u/7020472?v=4&s=80" width="80"/>](https://github.com/dolphinigle)[<img alt="Lehoczky" src="https://avatars.githubusercontent.com/u/31937175?v=4&s=80" width="80"/>](https://github.com/Lehoczky)
|
|
164
|
-
|
|
165
|
-
[<img alt="Krustie101" src="https://avatars.githubusercontent.com/u/1636728?v=4&s=80" width="80"/>](https://github.com/Krustie101)[<img alt="intellix" src="https://avatars.githubusercontent.com/u/1162531?v=4&s=80" width="80"/>](https://github.com/intellix)[<img alt="skrtheboss" src="https://avatars.githubusercontent.com/u/10209728?v=4&s=80" width="80"/>](https://github.com/skrtheboss)[<img alt="dwaldrum" src="https://avatars.githubusercontent.com/u/386721?v=4&s=80" width="80"/>](https://github.com/dwaldrum)[<img alt="json-derulo" src="https://avatars.githubusercontent.com/u/18580672?v=4&s=80" width="80"/>](https://github.com/json-derulo)[<img alt="atsjo" src="https://avatars.githubusercontent.com/u/16601899?v=4&s=80" width="80"/>](https://github.com/atsjo)[<img alt="Cselt" src="https://avatars.githubusercontent.com/u/11027521?v=4&s=80" width="80"/>](https://github.com/Cselt)[<img alt="blowsie" src="https://avatars.githubusercontent.com/u/308572?v=4&s=80" width="80"/>](https://github.com/blowsie)
|
|
166
|
-
|
|
167
|
-
[<img alt="roshan-sama" src="https://avatars.githubusercontent.com/u/31125563?v=4&s=80" width="80"/>](https://github.com/roshan-sama)[<img alt="rternavskyi" src="https://avatars.githubusercontent.com/u/26190424?v=4&s=80" width="80"/>](https://github.com/rternavskyi)[<img alt="milasevicius" src="https://avatars.githubusercontent.com/u/1790265?v=4&s=80" width="80"/>](https://github.com/milasevicius)[<img alt="13dante04" src="https://avatars.githubusercontent.com/u/25120620?v=4&s=80" width="80"/>](https://github.com/13dante04)[<img alt="Riron" src="https://avatars.githubusercontent.com/u/5145523?v=4&s=80" width="80"/>](https://github.com/Riron)[<img alt="rbalet" src="https://avatars.githubusercontent.com/u/44493964?v=4&s=80" width="80"/>](https://github.com/rbalet)[<img alt="rafaelss95" src="https://avatars.githubusercontent.com/u/11965907?v=4&s=80" width="80"/>](https://github.com/rafaelss95)[<img alt="rammba" src="https://avatars.githubusercontent.com/u/40705899?v=4&s=80" width="80"/>](https://github.com/rammba)
|
|
168
|
-
|
|
169
|
-
[<img alt="Pouja" src="https://avatars.githubusercontent.com/u/2385144?v=4&s=80" width="80"/>](https://github.com/Pouja)[<img alt="OmkarJ13" src="https://avatars.githubusercontent.com/u/65808188?v=4&s=80" width="80"/>](https://github.com/OmkarJ13)[<img alt="NanFengCheong" src="https://avatars.githubusercontent.com/u/7321833?v=4&s=80" width="80"/>](https://github.com/NanFengCheong)[<img alt="Tom-V" src="https://avatars.githubusercontent.com/u/322654?v=4&s=80" width="80"/>](https://github.com/Tom-V)[<img alt="VyacheslavPritykin" src="https://avatars.githubusercontent.com/u/819457?v=4&s=80" width="80"/>](https://github.com/VyacheslavPritykin)[<img alt="akamyshanov" src="https://avatars.githubusercontent.com/u/1358330?v=4&s=80" width="80"/>](https://github.com/akamyshanov)[<img alt="danielcrisp" src="https://avatars.githubusercontent.com/u/1104814?v=4&s=80" width="80"/>](https://github.com/danielcrisp)[<img alt="francisco-sanchez-molina" src="https://avatars.githubusercontent.com/u/9049706?v=4&s=80" width="80"/>](https://github.com/francisco-sanchez-molina)
|
|
170
|
-
|
|
171
|
-
[<img alt="jazpearson" src="https://avatars.githubusercontent.com/u/7648154?v=4&s=80" width="80"/>](https://github.com/jazpearson)[<img alt="kapsiR" src="https://avatars.githubusercontent.com/u/7165033?v=4&s=80" width="80"/>](https://github.com/kapsiR)[<img alt="marfer" src="https://avatars.githubusercontent.com/u/1127166?v=4&s=80" width="80"/>](https://github.com/marfer)[<img alt="mburger81" src="https://avatars.githubusercontent.com/u/3778892?v=4&s=80" width="80"/>](https://github.com/mburger81)[<img alt="n3xus" src="https://avatars.githubusercontent.com/u/510213?v=4&s=80" width="80"/>](https://github.com/n3xus)[<img alt="neminovno" src="https://avatars.githubusercontent.com/u/1468887?v=4&s=80" width="80"/>](https://github.com/neminovno)[<img alt="sesidhar01" src="https://avatars.githubusercontent.com/u/61068911?v=4&s=80" width="80"/>](https://github.com/sesidhar01)[<img alt="vezzoo" src="https://avatars.githubusercontent.com/u/28898894?v=4&s=80" width="80"/>](https://github.com/vezzoo)
|
|
172
|
-
|
|
173
|
-
[<img alt="wenqi73" src="https://avatars.githubusercontent.com/u/23337087?v=4&s=80" width="80"/>](https://github.com/wenqi73)[<img alt="yoni333" src="https://avatars.githubusercontent.com/u/19931760?v=4&s=80" width="80"/>](https://github.com/yoni333)[<img alt="AlexTalcura" src="https://avatars.githubusercontent.com/u/20095773?v=4&s=80" width="80"/>](https://github.com/AlexTalcura)[<img alt="alex-novikov-1990" src="https://avatars.githubusercontent.com/u/6377930?v=4&s=80" width="80"/>](https://github.com/alex-novikov-1990)[<img alt="alvarolb" src="https://avatars.githubusercontent.com/u/1141353?v=4&s=80" width="80"/>](https://github.com/alvarolb)[<img alt="andmoredev" src="https://avatars.githubusercontent.com/u/33256364?v=4&s=80" width="80"/>](https://github.com/andmoredev)[<img alt="vitale232" src="https://avatars.githubusercontent.com/u/8504254?v=4&s=80" width="80"/>](https://github.com/vitale232)[<img alt="AmGarera" src="https://avatars.githubusercontent.com/u/6021169?v=4&s=80" width="80"/>](https://github.com/AmGarera)
|
|
174
|
-
|
|
175
|
-
[<img alt="atsjo" src="https://avatars.githubusercontent.com/u/16601899?v=4&s=80" width="80"/>](https://github.com/atsjo)[<img alt="bhaidar" src="https://avatars.githubusercontent.com/u/1163421?v=4&s=80" width="80"/>](https://github.com/bhaidar)[<img alt="cyrilletuzi" src="https://avatars.githubusercontent.com/u/555867?v=4&s=80" width="80"/>](https://github.com/cyrilletuzi)[<img alt="json-derulo" src="https://avatars.githubusercontent.com/u/18580672?v=4&s=80" width="80"/>](https://github.com/json-derulo)[<img alt="Dayvisson" src="https://avatars.githubusercontent.com/u/12189515?v=4&s=80" width="80"/>](https://github.com/Dayvisson)[<img alt="dereekb" src="https://avatars.githubusercontent.com/u/3586580?v=4&s=80" width="80"/>](https://github.com/dereekb)[<img alt="eduardoRoth" src="https://avatars.githubusercontent.com/u/5419161?v=4&s=80" width="80"/>](https://github.com/eduardoRoth)[<img alt="enricouniurb" src="https://avatars.githubusercontent.com/u/38656571?v=4&s=80" width="80"/>](https://github.com/enricouniurb)
|
|
176
|
-
|
|
177
|
-
[<img alt="erikvdv1" src="https://avatars.githubusercontent.com/u/2014802?v=4&s=80" width="80"/>](https://github.com/erikvdv1)[<img alt="fynnfeldpausch" src="https://avatars.githubusercontent.com/u/1246913?v=4&s=80" width="80"/>](https://github.com/fynnfeldpausch)[<img alt="jrgleason" src="https://avatars.githubusercontent.com/u/1319151?v=4&s=80" width="80"/>](https://github.com/jrgleason)[<img alt="johannesjo" src="https://avatars.githubusercontent.com/u/1456265?v=4&s=80" width="80"/>](https://github.com/johannesjo)[<img alt="johndbell" src="https://avatars.githubusercontent.com/u/1931322?v=4&s=80" width="80"/>](https://github.com/johndbell)[<img alt="jdpnielsen" src="https://avatars.githubusercontent.com/u/8746698?v=4&s=80" width="80"/>](https://github.com/jdpnielsen)[<img alt="TheMcMurder" src="https://avatars.githubusercontent.com/u/3059715?v=4&s=80" width="80"/>](https://github.com/TheMcMurder)[<img alt="LennardWesterveld" src="https://avatars.githubusercontent.com/u/1076589?v=4&s=80" width="80"/>](https://github.com/LennardWesterveld)
|
|
178
|
-
|
|
179
|
-
[<img alt="logvinoleg89" src="https://avatars.githubusercontent.com/u/12018303?v=4&s=80" width="80"/>](https://github.com/logvinoleg89)[<img alt="LucasJAlba" src="https://avatars.githubusercontent.com/u/2780076?v=4&s=80" width="80"/>](https://github.com/LucasJAlba)[<img alt="lucienbertin" src="https://avatars.githubusercontent.com/u/10089239?v=4&s=80" width="80"/>](https://github.com/lucienbertin)[<img alt="luizbicalhoagl" src="https://avatars.githubusercontent.com/u/93284446?v=4&s=80" width="80"/>](https://github.com/luizbicalhoagl)[<img alt="waffle-iron" src="https://avatars.githubusercontent.com/u/6912981?v=4&s=80" width="80"/>](https://github.com/waffle-iron)[<img alt="mathijshoogland" src="https://avatars.githubusercontent.com/u/7372934?v=4&s=80" width="80"/>](https://github.com/mathijshoogland)[<img alt="mrbusche" src="https://avatars.githubusercontent.com/u/792378?v=4&s=80" width="80"/>](https://github.com/mrbusche)[<img alt="mehranmb78" src="https://avatars.githubusercontent.com/u/144687844?v=4&s=80" width="80"/>](https://github.com/mehranmb78)
|
|
180
|
-
<!-- ALL-CONTRIBUTORS-LIST:END -->
|
|
97
|
+
| Angular >= 22 | `@ngx-formly/ionic@11.x` | [Upgrade to v11](https://github.com/ngx-formly/ngx-formly/blob/main/UPGRADE-11.0.md) |
|
|
98
|
+
| Angular >= 21 | `@ngx-formly/ionic@10.x` | [Upgrade to v10](https://github.com/ngx-formly/ngx-formly/blob/main/UPGRADE-10.0.md) |
|
|
99
|
+
| Angular >= 20 | `@ngx-formly/ionic@9.x` | [Upgrade to v9](https://github.com/ngx-formly/ngx-formly/blob/main/UPGRADE-9.0.md) |
|
|
100
|
+
| Angular >= 19 | `@ngx-formly/ionic@8.x` | [Upgrade to v8](https://github.com/ngx-formly/ngx-formly/blob/main/UPGRADE-8.0.md) |
|
|
101
|
+
| Angular >= 18 | `@ngx-formly/ionic@7.x` | [Upgrade to v7](https://github.com/ngx-formly/ngx-formly/blob/main/UPGRADE-7.0.md) |
|
|
102
|
+
| Angular >= 13 | `@ngx-formly/ionic@6.x` | [Upgrade to v6](https://github.com/ngx-formly/ngx-formly/blob/main/UPGRADE-6.0.md) |
|
|
103
|
+
| Angular >= 7 | `@ngx-formly/ionic@5.x` | [Upgrade to v5](https://github.com/ngx-formly/ngx-formly/blob/main/UPGRADE-5.0.md) |
|
|
104
|
+
| Angular >= 6 | `@ngx-formly/ionic@4.x` | |
|
|
105
|
+
| Angular >= 5 | `@ngx-formly/ionic@3.x` | |
|
|
106
|
+
| Angular >= 4 | `@ngx-formly/ionic@2.x` | [Upgrade to v2](https://github.com/ngx-formly/ngx-formly/blob/main/UPGRADE-2.0.md) |
|
|
107
|
+
|
|
108
|
+
## Documentation
|
|
109
|
+
|
|
110
|
+
- [Ionic examples](https://formly.dev/ui/ionic)
|
|
111
|
+
- [Formly guide](https://formly.dev/guide)
|
|
112
|
+
- [Source](https://github.com/ngx-formly/ngx-formly/tree/main/src/ui/ionic)
|
|
@@ -1,77 +1,199 @@
|
|
|
1
|
-
import * as i0 from
|
|
2
|
-
import { ChangeDetectionStrategy, Component, NgModule } from
|
|
3
|
-
import * as i1
|
|
4
|
-
import { FieldType, FormlyModule } from
|
|
5
|
-
import * as i1 from
|
|
6
|
-
import { ReactiveFormsModule } from
|
|
7
|
-
import * as i2 from
|
|
8
|
-
import {
|
|
9
|
-
import * as i3 from
|
|
10
|
-
import { FormlyFormFieldModule } from
|
|
11
|
-
import { CommonModule } from
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
import { ChangeDetectionStrategy, Component, NgModule } from "@angular/core";
|
|
3
|
+
import * as i1 from "@ngx-formly/core";
|
|
4
|
+
import { FieldType, FormlyModule } from "@ngx-formly/core";
|
|
5
|
+
import * as i1$1 from "@angular/forms";
|
|
6
|
+
import { ReactiveFormsModule } from "@angular/forms";
|
|
7
|
+
import * as i2 from "@ionic/angular";
|
|
8
|
+
import { IonCheckbox } from "@ionic/angular";
|
|
9
|
+
import * as i3 from "@ngx-formly/ionic/form-field";
|
|
10
|
+
import { FormlyFormFieldModule } from "@ngx-formly/ionic/form-field";
|
|
11
|
+
import { CommonModule } from "@angular/common";
|
|
12
|
+
var FormlyFieldCheckbox = class FormlyFieldCheckbox extends FieldType {
|
|
13
|
+
onLabelInteraction(event) {
|
|
14
|
+
if (event.target.closest("a[href]")) event.stopPropagation();
|
|
15
|
+
}
|
|
16
|
+
static {
|
|
17
|
+
this.ɵfac = i0.ɵɵngDeclareFactory({
|
|
18
|
+
minVersion: "12.0.0",
|
|
19
|
+
version: "22.2.2",
|
|
20
|
+
ngImport: i0,
|
|
21
|
+
type: FormlyFieldCheckbox,
|
|
22
|
+
deps: null,
|
|
23
|
+
target: i0.ɵɵFactoryTarget.Component
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
static {
|
|
27
|
+
this.ɵcmp = i0.ɵɵngDeclareComponent({
|
|
28
|
+
minVersion: "17.0.0",
|
|
29
|
+
version: "22.2.2",
|
|
30
|
+
type: FormlyFieldCheckbox,
|
|
31
|
+
isStandalone: false,
|
|
32
|
+
selector: "formly-field-ion-checkbox",
|
|
33
|
+
usesInheritance: true,
|
|
34
|
+
ngImport: i0,
|
|
35
|
+
template: `
|
|
16
36
|
<ion-checkbox [formControl]="formControl" [ionFormlyAttributes]="field">
|
|
17
|
-
|
|
37
|
+
@if (props.allowHtml) {
|
|
38
|
+
<span
|
|
39
|
+
[innerHTML]="props.label"
|
|
40
|
+
(click)="onLabelInteraction($event)"
|
|
41
|
+
(keydown)="onLabelInteraction($event)"
|
|
42
|
+
></span>
|
|
43
|
+
} @else {
|
|
44
|
+
{{ props.label }}
|
|
45
|
+
}
|
|
18
46
|
</ion-checkbox>
|
|
19
|
-
`,
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
47
|
+
`,
|
|
48
|
+
isInline: true,
|
|
49
|
+
styles: [":host{display:inherit}\n"],
|
|
50
|
+
dependencies: [
|
|
51
|
+
{
|
|
52
|
+
kind: "directive",
|
|
53
|
+
type: i1$1.NgControlStatus,
|
|
54
|
+
selector: "[formControlName],[ngModel],[formControl]"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
kind: "directive",
|
|
58
|
+
type: i1$1.FormControlDirective,
|
|
59
|
+
selector: "[formControl]",
|
|
60
|
+
inputs: [
|
|
61
|
+
"formControl",
|
|
62
|
+
"disabled",
|
|
63
|
+
"ngModel"
|
|
64
|
+
],
|
|
65
|
+
outputs: ["ngModelChange"],
|
|
66
|
+
exportAs: ["ngForm"]
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
kind: "component",
|
|
70
|
+
type: i2.IonCheckbox,
|
|
71
|
+
selector: "ion-checkbox",
|
|
72
|
+
inputs: [
|
|
73
|
+
"checked",
|
|
74
|
+
"color",
|
|
75
|
+
"disabled",
|
|
76
|
+
"errorText",
|
|
77
|
+
"helperText",
|
|
78
|
+
"indeterminate",
|
|
79
|
+
"justify",
|
|
80
|
+
"labelPlacement",
|
|
81
|
+
"mode",
|
|
82
|
+
"name",
|
|
83
|
+
"value"
|
|
84
|
+
]
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
kind: "directive",
|
|
88
|
+
type: i3.ɵIonFormlyAttributes,
|
|
89
|
+
selector: "[ionFormlyAttributes]",
|
|
90
|
+
inputs: ["ionFormlyAttributes"]
|
|
91
|
+
}
|
|
92
|
+
],
|
|
93
|
+
changeDetection: i0.ChangeDetectionStrategy.OnPush
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
i0.ɵɵngDeclareClassMetadata({
|
|
98
|
+
minVersion: "12.0.0",
|
|
99
|
+
version: "22.2.2",
|
|
100
|
+
ngImport: i0,
|
|
101
|
+
type: FormlyFieldCheckbox,
|
|
102
|
+
decorators: [{
|
|
103
|
+
type: Component,
|
|
104
|
+
args: [{
|
|
105
|
+
selector: "formly-field-ion-checkbox",
|
|
106
|
+
template: `
|
|
24
107
|
<ion-checkbox [formControl]="formControl" [ionFormlyAttributes]="field">
|
|
25
|
-
|
|
108
|
+
@if (props.allowHtml) {
|
|
109
|
+
<span
|
|
110
|
+
[innerHTML]="props.label"
|
|
111
|
+
(click)="onLabelInteraction($event)"
|
|
112
|
+
(keydown)="onLabelInteraction($event)"
|
|
113
|
+
></span>
|
|
114
|
+
} @else {
|
|
115
|
+
{{ props.label }}
|
|
116
|
+
}
|
|
26
117
|
</ion-checkbox>
|
|
27
|
-
`,
|
|
28
|
-
|
|
29
|
-
|
|
118
|
+
`,
|
|
119
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
120
|
+
standalone: false,
|
|
121
|
+
styles: [":host{display:inherit}\n"]
|
|
122
|
+
}]
|
|
123
|
+
}]
|
|
124
|
+
});
|
|
30
125
|
function withFormlyFieldCheckbox() {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
name: 'boolean',
|
|
40
|
-
extends: 'checkbox',
|
|
41
|
-
},
|
|
42
|
-
],
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
class FormlyCheckboxModule {
|
|
47
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: FormlyCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
48
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.25", ngImport: i0, type: FormlyCheckboxModule, declarations: [FormlyFieldCheckbox], imports: [CommonModule,
|
|
49
|
-
ReactiveFormsModule,
|
|
50
|
-
IonicModule,
|
|
51
|
-
FormlyFormFieldModule, i1$1.FormlyModule] }); }
|
|
52
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: FormlyCheckboxModule, imports: [CommonModule,
|
|
53
|
-
ReactiveFormsModule,
|
|
54
|
-
IonicModule,
|
|
55
|
-
FormlyFormFieldModule,
|
|
56
|
-
FormlyModule.forChild(withFormlyFieldCheckbox())] }); }
|
|
126
|
+
return { types: [{
|
|
127
|
+
name: "checkbox",
|
|
128
|
+
component: FormlyFieldCheckbox,
|
|
129
|
+
wrappers: ["form-field"]
|
|
130
|
+
}, {
|
|
131
|
+
name: "boolean",
|
|
132
|
+
extends: "checkbox"
|
|
133
|
+
}] };
|
|
57
134
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
135
|
+
var FormlyCheckboxModule = class FormlyCheckboxModule {
|
|
136
|
+
static {
|
|
137
|
+
this.ɵfac = i0.ɵɵngDeclareFactory({
|
|
138
|
+
minVersion: "12.0.0",
|
|
139
|
+
version: "22.2.2",
|
|
140
|
+
ngImport: i0,
|
|
141
|
+
type: FormlyCheckboxModule,
|
|
142
|
+
deps: [],
|
|
143
|
+
target: i0.ɵɵFactoryTarget.NgModule
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
static {
|
|
147
|
+
this.ɵmod = i0.ɵɵngDeclareNgModule({
|
|
148
|
+
minVersion: "14.0.0",
|
|
149
|
+
version: "22.2.2",
|
|
150
|
+
ngImport: i0,
|
|
151
|
+
type: FormlyCheckboxModule,
|
|
152
|
+
declarations: [FormlyFieldCheckbox],
|
|
153
|
+
imports: [
|
|
154
|
+
CommonModule,
|
|
155
|
+
ReactiveFormsModule,
|
|
156
|
+
IonCheckbox,
|
|
157
|
+
FormlyFormFieldModule,
|
|
158
|
+
i1.FormlyModule
|
|
159
|
+
]
|
|
160
|
+
});
|
|
161
|
+
}
|
|
162
|
+
static {
|
|
163
|
+
this.ɵinj = i0.ɵɵngDeclareInjector({
|
|
164
|
+
minVersion: "12.0.0",
|
|
165
|
+
version: "22.2.2",
|
|
166
|
+
ngImport: i0,
|
|
167
|
+
type: FormlyCheckboxModule,
|
|
168
|
+
imports: [
|
|
169
|
+
CommonModule,
|
|
170
|
+
ReactiveFormsModule,
|
|
171
|
+
IonCheckbox,
|
|
172
|
+
FormlyFormFieldModule,
|
|
173
|
+
FormlyModule.forChild(withFormlyFieldCheckbox())
|
|
174
|
+
]
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
};
|
|
178
|
+
i0.ɵɵngDeclareClassMetadata({
|
|
179
|
+
minVersion: "12.0.0",
|
|
180
|
+
version: "22.2.2",
|
|
181
|
+
ngImport: i0,
|
|
182
|
+
type: FormlyCheckboxModule,
|
|
183
|
+
decorators: [{
|
|
184
|
+
type: NgModule,
|
|
185
|
+
args: [{
|
|
186
|
+
declarations: [FormlyFieldCheckbox],
|
|
187
|
+
imports: [
|
|
188
|
+
CommonModule,
|
|
189
|
+
ReactiveFormsModule,
|
|
190
|
+
IonCheckbox,
|
|
191
|
+
FormlyFormFieldModule,
|
|
192
|
+
FormlyModule.forChild(withFormlyFieldCheckbox())
|
|
193
|
+
]
|
|
194
|
+
}]
|
|
195
|
+
}]
|
|
196
|
+
});
|
|
76
197
|
export { FormlyCheckboxModule, FormlyFieldCheckbox, withFormlyFieldCheckbox };
|
|
77
|
-
|
|
198
|
+
|
|
199
|
+
//# sourceMappingURL=ngx-formly-ionic-checkbox.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngx-formly-ionic-checkbox.mjs","sources":["../../../../src/ui/ionic/checkbox/src/checkbox.type.ts","../../../../src/ui/ionic/checkbox/src/checkbox.config.ts","../../../../src/ui/ionic/checkbox/src/checkbox.module.ts"
|
|
1
|
+
{"version":3,"file":"ngx-formly-ionic-checkbox.mjs","names":[],"sources":["../../../../src/ui/ionic/checkbox/src/checkbox.type.ts","../../../../src/ui/ionic/checkbox/src/checkbox.config.ts","../../../../src/ui/ionic/checkbox/src/checkbox.module.ts"],"sourcesContent":["import { Component, ChangeDetectionStrategy, Type } from '@angular/core';\nimport { FieldType, FieldTypeConfig, FormlyFieldConfig } from '@ngx-formly/core';\nimport { FormlyFieldProps } from '@ngx-formly/ionic/form-field';\n\ninterface CheckboxProps extends FormlyFieldProps {}\n\nexport interface FormlyCheckboxFieldConfig extends FormlyFieldConfig<CheckboxProps> {\n type: 'checkbox' | Type<FormlyFieldCheckbox>;\n}\n\n@Component({\n selector: 'formly-field-ion-checkbox',\n template: `\n <ion-checkbox [formControl]=\"formControl\" [ionFormlyAttributes]=\"field\">\n @if (props.allowHtml) {\n <span\n [innerHTML]=\"props.label\"\n (click)=\"onLabelInteraction($event)\"\n (keydown)=\"onLabelInteraction($event)\"\n ></span>\n } @else {\n {{ props.label }}\n }\n </ion-checkbox>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n styleUrls: ['./checkbox.type.scss'],\n standalone: false,\n})\nexport class FormlyFieldCheckbox extends FieldType<FieldTypeConfig<CheckboxProps>> {\n protected onLabelInteraction(event: Event) {\n if ((event.target as HTMLElement).closest('a[href]')) {\n event.stopPropagation();\n }\n }\n}\n","import { ConfigOption } from '@ngx-formly/core';\nimport { FormlyFieldCheckbox } from './checkbox.type';\n\nexport function withFormlyFieldCheckbox(): ConfigOption {\n return {\n types: [\n {\n name: 'checkbox',\n component: FormlyFieldCheckbox,\n wrappers: ['form-field'],\n },\n {\n name: 'boolean',\n extends: 'checkbox',\n },\n ],\n };\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormlyModule } from '@ngx-formly/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { IonCheckbox } from '@ionic/angular';\nimport { FormlyFormFieldModule } from '@ngx-formly/ionic/form-field';\n\nimport { FormlyFieldCheckbox } from './checkbox.type';\nimport { withFormlyFieldCheckbox } from './checkbox.config';\n\n@NgModule({\n declarations: [FormlyFieldCheckbox],\n imports: [\n CommonModule,\n ReactiveFormsModule,\n IonCheckbox,\n FormlyFormFieldModule,\n FormlyModule.forChild(withFormlyFieldCheckbox()),\n ],\n})\nexport class FormlyCheckboxModule {}\n"],"mappings":";;;;;;;;;;;AA6BA,IAAa,sBAAb,MAAa,4BAA4B,UAAyC;CACtE,mBAAmB,OAAY;EACvC,IAAK,MAAM,OAAuB,QAAQ,SAAS,GACjD,MAAM,gBAAe;CAEzB;CALW;EAAA,KAAA,OAAA,GAAA,mBAAA;GAAA,YAAA;GAAA,SAAA;GAAA,UAAA;GAAA,MAAA;GAAmB,MAAA;GAAA,QAAA,GAAA,gBAAA;EAAA,CAAA;CAAA;CAAnB;EAAA,KAAA,OAAA,GAAA,qBAAA;GAAA,YAAA;GAAA,SAAA;GAAA,MAAA;GAAmB,cAAA;GAAA,UAAA;GAAA,iBAAA;GAAA,UAAA;GAAA,UAjBpB;;;;;;;;;;;;;GAYT,UAAA;GAAA,QAAA,CAAA,0BAAA;GAAA,cAAA;IAAA;KAAA,MAAA;KAAA,MAAA,KAAA;KAAA,UAAA;IAAA;IAAA;KAAA,MAAA;KAAA,MAAA,KAAA;KAAA,UAAA;KAAA,QAAA;MAAA;MAAA;MAAA;KAAA;KAAA,SAAA,CAAA,eAAA;KAAA,UAAA,CAAA,QAAA;IAAA;IAAA;KAAA,MAAA;KAAA,MAAA,GAAA;KAAA,UAAA;KAAA,QAAA;MAAA;MAAA;MAAA;MAAA;MAAA;MAAA;MAAA;MAAA;MAAA;MAAA;MAAA;KAAA;IAAA;IAAA;KAAA,MAAA;KAAA,MAAA,GAAA;KAAA,UAAA;KAAA,QAAA,CAAA,qBAAA;IAAA;GAAA;GAAA,iBAAA,GAAA,wBAAA;EAAA,CAAA;CAAA;;AAKU,GAAA,yBAAA;CAAA,YAAA;CAAA,SAAA;CAAA,UAAA;CAAA,MAAA;CAAmB,YAAA,CAAA;EAnB/B,MAAA;EACW,MAAA,CAAA;GAAA,UAAA;GAA2B,UAC3B;;;;;;;;;;;;;GAYT,iBACgB,wBAAwB;GAAM,YAEnC;GAAK,QAAA,CAAA,0BAAA;EAAA,CAAA;;;ACxBnB,SAAgB,0BAAuB;CACrC,OAAO,EACL,OAAO,CACL;EACE,MAAM;EACN,WAAW;EACX,UAAU,CAAC,YAAY;CACxB,GACD;EACE,MAAM;EACN,SAAS;CACV,CACF,EACF;AACH;ACGA,IAAa,uBAAb,MAAa,qBAAoB;CAApB;EAAA,KAAA,OAAA,GAAA,mBAAA;GAAA,YAAA;GAAA,SAAA;GAAA,UAAA;GAAA,MAAA;GAAoB,MAAA,CAAA;GAAA,QAAA,GAAA,gBAAA;EAAA,CAAA;CAAA;CAApB;EAAA,KAAA,OAAA,GAAA,oBAAA;GAAA,YAAA;GAAA,SAAA;GAAA,UAAA;GAAA,MAAA;GAAoB,cAAA,CAThB,mBAAmB;GAAA,SAAA;IAEhC;IACA;IACA;IACA;IAAqB,GAAA;GAAA;EAAA,CAAA;CAAA;CAIZ;EAAA,KAAA,OAAA,GAAA,oBAAA;GAAA,YAAA;GAAA,SAAA;GAAA,UAAA;GAAA,MAAA;GAAoB,SAAA;IAP7B;IACA;IACA;IACA;IACA,aAAa,SAAS,wBAAuB,CAAE;GAAC;EAAA,CAAA;CAAA;;AAGvC,GAAA,yBAAA;CAAA,YAAA;CAAA,SAAA;CAAA,UAAA;CAAA,MAAA;CAAoB,YAAA,CAAA;EAVhC,MAAA;EAAS,MAAA,CAAA;GACR,cAAc,CAAC,mBAAmB;GAClC,SAAS;IACP;IACA;IACA;IACA;IACA,aAAa,SAAS,wBAAuB,CAAE;GAChD;EACF,CAAA"}
|