@ionic/angular 7.5.3-dev.11698765436.1c5d9418 → 7.5.3-dev.11698856380.18896dcd

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.
@@ -1,6 +1,6 @@
1
1
  import { __decorate } from 'tslib';
2
2
  import * as i0 from '@angular/core';
3
- import { Directive, Attribute, Optional, SkipSelf, Component, ChangeDetectionStrategy, ViewChild, ContentChild, ContentChildren, APP_INITIALIZER, Injectable, HostListener } from '@angular/core';
3
+ import { Directive, Attribute, Optional, SkipSelf, Component, ChangeDetectionStrategy, ViewChild, ContentChild, ContentChildren, APP_INITIALIZER, Injectable, forwardRef, HostListener } from '@angular/core';
4
4
  import * as i2$1 from '@ionic/angular/common';
5
5
  import { IonRouterOutlet as IonRouterOutlet$1, ProxyCmp as ProxyCmp$1, IonBackButton as IonBackButton$1, IonModal as IonModal$1, IonPopover as IonPopover$1, RouterLinkDelegateDirective, RouterLinkWithHrefDelegateDirective, IonTabs as IonTabs$1, ConfigToken, provideComponentInputBinding, AngularDelegate, ModalController, PopoverController, MenuController as MenuController$1, IonNav as IonNav$1, ValueAccessor, setIonicClasses } from '@ionic/angular/common';
6
6
  export { ActionSheetController, AlertController, AnimationController, Config, DomController, GestureController, IonicRouteStrategy, LoadingController, ModalController, NavController, NavParams, PickerController, Platform, PopoverController, ToastController } from '@ionic/angular/common';
@@ -2131,23 +2131,27 @@ const CHECKBOX_INPUTS = [
2131
2131
  'name',
2132
2132
  'value',
2133
2133
  ];
2134
- class IonCheckbox extends ValueAccessor {
2134
+ /**
2135
+ * Pulling the provider into an object and using PURE works
2136
+ * around an ng-packagr issue that causes
2137
+ * components with multiple decorators and
2138
+ * a provider to be re-assigned. This re-assignment
2139
+ * is not supported by Webpack and causes treeshaking
2140
+ * to not work on these kinds of components.
2141
+ */
2142
+ const accessorProvider$a = {
2143
+ provide: NG_VALUE_ACCESSOR,
2144
+ useExisting: /*@__PURE__*/ forwardRef(() => IonCheckbox),
2145
+ multi: true,
2146
+ };
2147
+ let IonCheckbox = class IonCheckbox extends ValueAccessor {
2135
2148
  constructor(c, r, z, injector) {
2136
2149
  super(injector, r);
2137
2150
  this.z = z;
2138
- defineCustomElement$17();
2139
2151
  c.detach();
2140
2152
  this.el = r.nativeElement;
2141
2153
  proxyOutputs(this, this.el, ['ionChange', 'ionFocus', 'ionBlur']);
2142
2154
  }
2143
- ngOnInit() {
2144
- /**
2145
- * Data-bound input properties are set
2146
- * by Angular after the constructor, so
2147
- * we need to run the proxy in ngOnInit.
2148
- */
2149
- proxyInputs(IonCheckbox, CHECKBOX_INPUTS);
2150
- }
2151
2155
  writeValue(value) {
2152
2156
  this.elementRef.nativeElement.checked = this.lastValue = value;
2153
2157
  setIonicClasses(this.elementRef);
@@ -2155,15 +2159,15 @@ class IonCheckbox extends ValueAccessor {
2155
2159
  handleIonChange(el) {
2156
2160
  this.handleValueChange(el, el.checked);
2157
2161
  }
2158
- }
2162
+ };
2159
2163
  /** @nocollapse */ IonCheckbox.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonCheckbox, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
2160
- /** @nocollapse */ IonCheckbox.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonCheckbox, isStandalone: true, selector: "ion-checkbox", inputs: { checked: "checked", color: "color", disabled: "disabled", indeterminate: "indeterminate", justify: "justify", labelPlacement: "labelPlacement", legacy: "legacy", mode: "mode", name: "name", value: "value" }, host: { listeners: { "ionChange": "handleIonChange($event.target)" } }, providers: [
2161
- {
2162
- provide: NG_VALUE_ACCESSOR,
2163
- useExisting: IonCheckbox,
2164
- multi: true,
2165
- },
2166
- ], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2164
+ /** @nocollapse */ IonCheckbox.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonCheckbox, isStandalone: true, selector: "ion-checkbox", inputs: { checked: "checked", color: "color", disabled: "disabled", indeterminate: "indeterminate", justify: "justify", labelPlacement: "labelPlacement", legacy: "legacy", mode: "mode", name: "name", value: "value" }, host: { listeners: { "ionChange": "handleIonChange($event.target)" } }, providers: [accessorProvider$a], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2165
+ IonCheckbox = __decorate([
2166
+ ProxyCmp({
2167
+ defineCustomElementFn: defineCustomElement$17,
2168
+ inputs: CHECKBOX_INPUTS,
2169
+ })
2170
+ ], IonCheckbox);
2167
2171
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonCheckbox, decorators: [{
2168
2172
  type: Component,
2169
2173
  args: [{
@@ -2172,13 +2176,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
2172
2176
  template: '<ng-content></ng-content>',
2173
2177
  // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2174
2178
  inputs: CHECKBOX_INPUTS,
2175
- providers: [
2176
- {
2177
- provide: NG_VALUE_ACCESSOR,
2178
- useExisting: IonCheckbox,
2179
- multi: true,
2180
- },
2181
- ],
2179
+ providers: [accessorProvider$a],
2182
2180
  standalone: true,
2183
2181
  }]
2184
2182
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Injector }]; }, propDecorators: { handleIonChange: [{
@@ -2218,37 +2216,41 @@ const DATETIME_INPUTS = [
2218
2216
  'value',
2219
2217
  'yearValues',
2220
2218
  ];
2221
- const DATETIME_METHODS = ['confirm', 'reset', 'cancel'];
2222
- class IonDatetime extends ValueAccessor {
2219
+ /**
2220
+ * Pulling the provider into an object and using PURE works
2221
+ * around an ng-packagr issue that causes
2222
+ * components with multiple decorators and
2223
+ * a provider to be re-assigned. This re-assignment
2224
+ * is not supported by Webpack and causes treeshaking
2225
+ * to not work on these kinds of components.
2226
+
2227
+ */
2228
+ const accessorProvider$9 = {
2229
+ provide: NG_VALUE_ACCESSOR,
2230
+ useExisting: /*@__PURE__*/ forwardRef(() => IonDatetime),
2231
+ multi: true,
2232
+ };
2233
+ let IonDatetime = class IonDatetime extends ValueAccessor {
2223
2234
  constructor(c, r, z, injector) {
2224
2235
  super(injector, r);
2225
2236
  this.z = z;
2226
- defineCustomElement$18();
2227
2237
  c.detach();
2228
2238
  this.el = r.nativeElement;
2229
2239
  proxyOutputs(this, this.el, ['ionCancel', 'ionChange', 'ionFocus', 'ionBlur']);
2230
2240
  }
2231
- ngOnInit() {
2232
- /**
2233
- * Data-bound input properties are set
2234
- * by Angular after the constructor, so
2235
- * we need to run the proxy in ngOnInit.
2236
- */
2237
- proxyInputs(IonDatetime, DATETIME_INPUTS);
2238
- proxyMethods(IonDatetime, DATETIME_METHODS);
2239
- }
2240
2241
  handleIonChange(el) {
2241
2242
  this.handleValueChange(el, el.value);
2242
2243
  }
2243
- }
2244
+ };
2244
2245
  /** @nocollapse */ IonDatetime.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonDatetime, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
2245
- /** @nocollapse */ IonDatetime.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonDatetime, isStandalone: true, selector: "ion-datetime", inputs: { cancelText: "cancelText", clearText: "clearText", color: "color", dayValues: "dayValues", disabled: "disabled", doneText: "doneText", firstDayOfWeek: "firstDayOfWeek", highlightedDates: "highlightedDates", hourCycle: "hourCycle", hourValues: "hourValues", isDateEnabled: "isDateEnabled", locale: "locale", max: "max", min: "min", minuteValues: "minuteValues", mode: "mode", monthValues: "monthValues", multiple: "multiple", name: "name", preferWheel: "preferWheel", presentation: "presentation", readonly: "readonly", showClearButton: "showClearButton", showDefaultButtons: "showDefaultButtons", showDefaultTimeLabel: "showDefaultTimeLabel", showDefaultTitle: "showDefaultTitle", size: "size", titleSelectedDatesFormatter: "titleSelectedDatesFormatter", value: "value", yearValues: "yearValues" }, host: { listeners: { "ionChange": "handleIonChange($event.target)" } }, providers: [
2246
- {
2247
- provide: NG_VALUE_ACCESSOR,
2248
- useExisting: IonDatetime,
2249
- multi: true,
2250
- },
2251
- ], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2246
+ /** @nocollapse */ IonDatetime.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonDatetime, isStandalone: true, selector: "ion-datetime", inputs: { cancelText: "cancelText", clearText: "clearText", color: "color", dayValues: "dayValues", disabled: "disabled", doneText: "doneText", firstDayOfWeek: "firstDayOfWeek", highlightedDates: "highlightedDates", hourCycle: "hourCycle", hourValues: "hourValues", isDateEnabled: "isDateEnabled", locale: "locale", max: "max", min: "min", minuteValues: "minuteValues", mode: "mode", monthValues: "monthValues", multiple: "multiple", name: "name", preferWheel: "preferWheel", presentation: "presentation", readonly: "readonly", showClearButton: "showClearButton", showDefaultButtons: "showDefaultButtons", showDefaultTimeLabel: "showDefaultTimeLabel", showDefaultTitle: "showDefaultTitle", size: "size", titleSelectedDatesFormatter: "titleSelectedDatesFormatter", value: "value", yearValues: "yearValues" }, host: { listeners: { "ionChange": "handleIonChange($event.target)" } }, providers: [accessorProvider$9], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2247
+ IonDatetime = __decorate([
2248
+ ProxyCmp({
2249
+ defineCustomElementFn: defineCustomElement$18,
2250
+ inputs: DATETIME_INPUTS,
2251
+ methods: ['confirm', 'reset', 'cancel'],
2252
+ })
2253
+ ], IonDatetime);
2252
2254
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonDatetime, decorators: [{
2253
2255
  type: Component,
2254
2256
  args: [{
@@ -2257,13 +2259,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
2257
2259
  template: '<ng-content></ng-content>',
2258
2260
  // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2259
2261
  inputs: DATETIME_INPUTS,
2260
- providers: [
2261
- {
2262
- provide: NG_VALUE_ACCESSOR,
2263
- useExisting: IonDatetime,
2264
- multi: true,
2265
- },
2266
- ],
2262
+ providers: [accessorProvider$9],
2267
2263
  standalone: true,
2268
2264
  }]
2269
2265
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Injector }]; }, propDecorators: { handleIonChange: [{
@@ -2337,25 +2333,27 @@ const INPUT_INPUTS = [
2337
2333
  'type',
2338
2334
  'value',
2339
2335
  ];
2340
- const INPUT_METHODS = ['setFocus', 'getInputElement'];
2341
- class IonInput extends ValueAccessor {
2336
+ /**
2337
+ * Pulling the provider into an object and using PURE works
2338
+ * around an ng-packagr issue that causes
2339
+ * components with multiple decorators and
2340
+ * a provider to be re-assigned. This re-assignment
2341
+ * is not supported by Webpack and causes treeshaking
2342
+ * to not work on these kinds of components.
2343
+ */
2344
+ const accessorProvider$8 = {
2345
+ provide: NG_VALUE_ACCESSOR,
2346
+ useExisting: /*@__PURE__*/ forwardRef(() => IonInput),
2347
+ multi: true,
2348
+ };
2349
+ let IonInput = class IonInput extends ValueAccessor {
2342
2350
  constructor(c, r, z, injector) {
2343
2351
  super(injector, r);
2344
2352
  this.z = z;
2345
- defineCustomElement$1a();
2346
2353
  c.detach();
2347
2354
  this.el = r.nativeElement;
2348
2355
  proxyOutputs(this, this.el, ['ionInput', 'ionChange', 'ionBlur', 'ionFocus']);
2349
2356
  }
2350
- ngOnInit() {
2351
- /**
2352
- * Data-bound input properties are set
2353
- * by Angular after the constructor, so
2354
- * we need to run the proxy in ngOnInit.
2355
- */
2356
- proxyInputs(IonInput, INPUT_INPUTS);
2357
- proxyMethods(IonInput, INPUT_METHODS);
2358
- }
2359
2357
  handleIonInput(el) {
2360
2358
  this.handleValueChange(el, el.value);
2361
2359
  }
@@ -2374,15 +2372,16 @@ class IonInput extends ValueAccessor {
2374
2372
  }
2375
2373
  });
2376
2374
  }
2377
- }
2375
+ };
2378
2376
  /** @nocollapse */ IonInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonInput, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
2379
- /** @nocollapse */ IonInput.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonInput, isStandalone: true, selector: "ion-input", inputs: { accept: "accept", autocapitalize: "autocapitalize", autocomplete: "autocomplete", autocorrect: "autocorrect", autofocus: "autofocus", clearInput: "clearInput", clearOnEdit: "clearOnEdit", color: "color", counter: "counter", counterFormatter: "counterFormatter", debounce: "debounce", disabled: "disabled", enterkeyhint: "enterkeyhint", errorText: "errorText", fill: "fill", helperText: "helperText", inputmode: "inputmode", label: "label", labelPlacement: "labelPlacement", legacy: "legacy", max: "max", maxlength: "maxlength", min: "min", minlength: "minlength", mode: "mode", multiple: "multiple", name: "name", pattern: "pattern", placeholder: "placeholder", readonly: "readonly", required: "required", shape: "shape", size: "size", spellcheck: "spellcheck", step: "step", type: "type", value: "value" }, host: { listeners: { "ionInput": "handleIonInput($event.target)" } }, providers: [
2380
- {
2381
- provide: NG_VALUE_ACCESSOR,
2382
- useExisting: IonInput,
2383
- multi: true,
2384
- },
2385
- ], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2377
+ /** @nocollapse */ IonInput.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonInput, isStandalone: true, selector: "ion-input", inputs: { accept: "accept", autocapitalize: "autocapitalize", autocomplete: "autocomplete", autocorrect: "autocorrect", autofocus: "autofocus", clearInput: "clearInput", clearOnEdit: "clearOnEdit", color: "color", counter: "counter", counterFormatter: "counterFormatter", debounce: "debounce", disabled: "disabled", enterkeyhint: "enterkeyhint", errorText: "errorText", fill: "fill", helperText: "helperText", inputmode: "inputmode", label: "label", labelPlacement: "labelPlacement", legacy: "legacy", max: "max", maxlength: "maxlength", min: "min", minlength: "minlength", mode: "mode", multiple: "multiple", name: "name", pattern: "pattern", placeholder: "placeholder", readonly: "readonly", required: "required", shape: "shape", size: "size", spellcheck: "spellcheck", step: "step", type: "type", value: "value" }, host: { listeners: { "ionInput": "handleIonInput($event.target)" } }, providers: [accessorProvider$8], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2378
+ IonInput = __decorate([
2379
+ ProxyCmp({
2380
+ defineCustomElementFn: defineCustomElement$1a,
2381
+ inputs: INPUT_INPUTS,
2382
+ methods: ['setFocus', 'getInputElement'],
2383
+ })
2384
+ ], IonInput);
2386
2385
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonInput, decorators: [{
2387
2386
  type: Component,
2388
2387
  args: [{
@@ -2391,13 +2390,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
2391
2390
  template: '<ng-content></ng-content>',
2392
2391
  // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2393
2392
  inputs: INPUT_INPUTS,
2394
- providers: [
2395
- {
2396
- provide: NG_VALUE_ACCESSOR,
2397
- useExisting: IonInput,
2398
- multi: true,
2399
- },
2400
- ],
2393
+ providers: [accessorProvider$8],
2401
2394
  standalone: true,
2402
2395
  }]
2403
2396
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Injector }]; }, propDecorators: { handleIonInput: [{
@@ -2406,35 +2399,39 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
2406
2399
  }] } });
2407
2400
 
2408
2401
  const RADIO_GROUP_INPUTS = ['allowEmptySelection', 'name', 'value'];
2409
- class IonRadioGroup extends ValueAccessor {
2402
+ /**
2403
+ * Pulling the provider into an object and using PURE works
2404
+ * around an ng-packagr issue that causes
2405
+ * components with multiple decorators and
2406
+ * a provider to be re-assigned. This re-assignment
2407
+ * is not supported by Webpack and causes treeshaking
2408
+ * to not work on these kinds of components.
2409
+ */
2410
+ const accessorProvider$7 = {
2411
+ provide: NG_VALUE_ACCESSOR,
2412
+ useExisting: /*@__PURE__*/ forwardRef(() => IonRadioGroup),
2413
+ multi: true,
2414
+ };
2415
+ let IonRadioGroup = class IonRadioGroup extends ValueAccessor {
2410
2416
  constructor(c, r, z, injector) {
2411
2417
  super(injector, r);
2412
2418
  this.z = z;
2413
- defineCustomElement$1b();
2414
2419
  c.detach();
2415
2420
  this.el = r.nativeElement;
2416
2421
  proxyOutputs(this, this.el, ['ionChange']);
2417
2422
  }
2418
- ngOnInit() {
2419
- /**
2420
- * Data-bound input properties are set
2421
- * by Angular after the constructor, so
2422
- * we need to run the proxy in ngOnInit.
2423
- */
2424
- proxyInputs(IonRadioGroup, RADIO_GROUP_INPUTS);
2425
- }
2426
2423
  handleIonChange(el) {
2427
2424
  this.handleValueChange(el, el.value);
2428
2425
  }
2429
- }
2426
+ };
2430
2427
  /** @nocollapse */ IonRadioGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonRadioGroup, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
2431
- /** @nocollapse */ IonRadioGroup.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonRadioGroup, isStandalone: true, selector: "ion-radio-group", inputs: { allowEmptySelection: "allowEmptySelection", name: "name", value: "value" }, host: { listeners: { "ionChange": "handleIonChange($event.target)" } }, providers: [
2432
- {
2433
- provide: NG_VALUE_ACCESSOR,
2434
- useExisting: IonRadioGroup,
2435
- multi: true,
2436
- },
2437
- ], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2428
+ /** @nocollapse */ IonRadioGroup.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonRadioGroup, isStandalone: true, selector: "ion-radio-group", inputs: { allowEmptySelection: "allowEmptySelection", name: "name", value: "value" }, host: { listeners: { "ionChange": "handleIonChange($event.target)" } }, providers: [accessorProvider$7], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2429
+ IonRadioGroup = __decorate([
2430
+ ProxyCmp({
2431
+ defineCustomElementFn: defineCustomElement$1b,
2432
+ inputs: RADIO_GROUP_INPUTS,
2433
+ })
2434
+ ], IonRadioGroup);
2438
2435
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonRadioGroup, decorators: [{
2439
2436
  type: Component,
2440
2437
  args: [{
@@ -2443,13 +2440,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
2443
2440
  template: '<ng-content></ng-content>',
2444
2441
  // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2445
2442
  inputs: RADIO_GROUP_INPUTS,
2446
- providers: [
2447
- {
2448
- provide: NG_VALUE_ACCESSOR,
2449
- useExisting: IonRadioGroup,
2450
- multi: true,
2451
- },
2452
- ],
2443
+ providers: [accessorProvider$7],
2453
2444
  standalone: true,
2454
2445
  }]
2455
2446
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Injector }]; }, propDecorators: { handleIonChange: [{
@@ -2458,23 +2449,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
2458
2449
  }] } });
2459
2450
 
2460
2451
  const RADIO_INPUTS = ['color', 'disabled', 'justify', 'labelPlacement', 'legacy', 'mode', 'name', 'value'];
2461
- class IonRadio extends ValueAccessor {
2452
+ /**
2453
+ * Pulling the provider into an object and using PURE works
2454
+ * around an ng-packagr issue that causes
2455
+ * components with multiple decorators and
2456
+ * a provider to be re-assigned. This re-assignment
2457
+ * is not supported by Webpack and causes treeshaking
2458
+ * to not work on these kinds of components.
2459
+ */
2460
+ const accessorProvider$6 = {
2461
+ provide: NG_VALUE_ACCESSOR,
2462
+ useExisting: /*@__PURE__*/ forwardRef(() => IonRadio),
2463
+ multi: true,
2464
+ };
2465
+ let IonRadio = class IonRadio extends ValueAccessor {
2462
2466
  constructor(c, r, z, injector) {
2463
2467
  super(injector, r);
2464
2468
  this.z = z;
2465
- defineCustomElement$1c();
2466
2469
  c.detach();
2467
2470
  this.el = r.nativeElement;
2468
2471
  proxyOutputs(this, this.el, ['ionFocus', 'ionBlur']);
2469
2472
  }
2470
- ngOnInit() {
2471
- /**
2472
- * Data-bound input properties are set
2473
- * by Angular after the constructor, so
2474
- * we need to run the proxy in ngOnInit.
2475
- */
2476
- proxyInputs(IonRadio, RADIO_INPUTS);
2477
- }
2478
2473
  handleIonSelect(el) {
2479
2474
  /**
2480
2475
  * The `el` type is any to access the `checked` state property
@@ -2482,15 +2477,15 @@ class IonRadio extends ValueAccessor {
2482
2477
  */
2483
2478
  this.handleValueChange(el, el.checked);
2484
2479
  }
2485
- }
2480
+ };
2486
2481
  /** @nocollapse */ IonRadio.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonRadio, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
2487
- /** @nocollapse */ IonRadio.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonRadio, isStandalone: true, selector: "ion-radio", inputs: { color: "color", disabled: "disabled", justify: "justify", labelPlacement: "labelPlacement", legacy: "legacy", mode: "mode", name: "name", value: "value" }, host: { listeners: { "ionSelect": "handleIonSelect($event.target)" } }, providers: [
2488
- {
2489
- provide: NG_VALUE_ACCESSOR,
2490
- useExisting: IonRadio,
2491
- multi: true,
2492
- },
2493
- ], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2482
+ /** @nocollapse */ IonRadio.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonRadio, isStandalone: true, selector: "ion-radio", inputs: { color: "color", disabled: "disabled", justify: "justify", labelPlacement: "labelPlacement", legacy: "legacy", mode: "mode", name: "name", value: "value" }, host: { listeners: { "ionSelect": "handleIonSelect($event.target)" } }, providers: [accessorProvider$6], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2483
+ IonRadio = __decorate([
2484
+ ProxyCmp({
2485
+ defineCustomElementFn: defineCustomElement$1c,
2486
+ inputs: RADIO_INPUTS,
2487
+ })
2488
+ ], IonRadio);
2494
2489
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonRadio, decorators: [{
2495
2490
  type: Component,
2496
2491
  args: [{
@@ -2499,13 +2494,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
2499
2494
  template: '<ng-content></ng-content>',
2500
2495
  // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2501
2496
  inputs: RADIO_INPUTS,
2502
- providers: [
2503
- {
2504
- provide: NG_VALUE_ACCESSOR,
2505
- useExisting: IonRadio,
2506
- multi: true,
2507
- },
2508
- ],
2497
+ providers: [accessorProvider$6],
2509
2498
  standalone: true,
2510
2499
  }]
2511
2500
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Injector }]; }, propDecorators: { handleIonSelect: [{
@@ -2533,35 +2522,39 @@ const RANGE_INPUTS = [
2533
2522
  'ticks',
2534
2523
  'value',
2535
2524
  ];
2536
- class IonRange extends ValueAccessor {
2525
+ /**
2526
+ * Pulling the provider into an object and using PURE works
2527
+ * around an ng-packagr issue that causes
2528
+ * components with multiple decorators and
2529
+ * a provider to be re-assigned. This re-assignment
2530
+ * is not supported by Webpack and causes treeshaking
2531
+ * to not work on these kinds of components.
2532
+ */
2533
+ const accessorProvider$5 = {
2534
+ provide: NG_VALUE_ACCESSOR,
2535
+ useExisting: /*@__PURE__*/ forwardRef(() => IonRange),
2536
+ multi: true,
2537
+ };
2538
+ let IonRange = class IonRange extends ValueAccessor {
2537
2539
  constructor(c, r, z, injector) {
2538
2540
  super(injector, r);
2539
2541
  this.z = z;
2540
- defineCustomElement$1d();
2541
2542
  c.detach();
2542
2543
  this.el = r.nativeElement;
2543
2544
  proxyOutputs(this, this.el, ['ionChange', 'ionInput', 'ionFocus', 'ionBlur', 'ionKnobMoveStart', 'ionKnobMoveEnd']);
2544
2545
  }
2545
- ngOnInit() {
2546
- /**
2547
- * Data-bound input properties are set
2548
- * by Angular after the constructor, so
2549
- * we need to run the proxy in ngOnInit.
2550
- */
2551
- proxyInputs(IonRange, RANGE_INPUTS);
2552
- }
2553
2546
  handleIonChange(el) {
2554
2547
  this.handleValueChange(el, el.value);
2555
2548
  }
2556
- }
2549
+ };
2557
2550
  /** @nocollapse */ IonRange.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonRange, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
2558
- /** @nocollapse */ IonRange.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonRange, isStandalone: true, selector: "ion-range", inputs: { activeBarStart: "activeBarStart", color: "color", debounce: "debounce", disabled: "disabled", dualKnobs: "dualKnobs", label: "label", labelPlacement: "labelPlacement", legacy: "legacy", max: "max", min: "min", mode: "mode", name: "name", pin: "pin", pinFormatter: "pinFormatter", snaps: "snaps", step: "step", ticks: "ticks", value: "value" }, host: { listeners: { "ionChange": "handleIonChange($event.target)" } }, providers: [
2559
- {
2560
- provide: NG_VALUE_ACCESSOR,
2561
- useExisting: IonRange,
2562
- multi: true,
2563
- },
2564
- ], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2551
+ /** @nocollapse */ IonRange.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonRange, isStandalone: true, selector: "ion-range", inputs: { activeBarStart: "activeBarStart", color: "color", debounce: "debounce", disabled: "disabled", dualKnobs: "dualKnobs", label: "label", labelPlacement: "labelPlacement", legacy: "legacy", max: "max", min: "min", mode: "mode", name: "name", pin: "pin", pinFormatter: "pinFormatter", snaps: "snaps", step: "step", ticks: "ticks", value: "value" }, host: { listeners: { "ionChange": "handleIonChange($event.target)" } }, providers: [accessorProvider$5], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2552
+ IonRange = __decorate([
2553
+ ProxyCmp({
2554
+ defineCustomElementFn: defineCustomElement$1d,
2555
+ inputs: RANGE_INPUTS,
2556
+ })
2557
+ ], IonRange);
2565
2558
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonRange, decorators: [{
2566
2559
  type: Component,
2567
2560
  args: [{
@@ -2570,13 +2563,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
2570
2563
  template: '<ng-content></ng-content>',
2571
2564
  // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2572
2565
  inputs: RANGE_INPUTS,
2573
- providers: [
2574
- {
2575
- provide: NG_VALUE_ACCESSOR,
2576
- useExisting: IonRange,
2577
- multi: true,
2578
- },
2579
- ],
2566
+ providers: [accessorProvider$5],
2580
2567
  standalone: true,
2581
2568
  }]
2582
2569
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Injector }]; }, propDecorators: { handleIonChange: [{
@@ -2606,37 +2593,40 @@ const SEARCHBAR_INPUTS = [
2606
2593
  'type',
2607
2594
  'value',
2608
2595
  ];
2609
- const SEARCHBAR_METHODS = ['setFocus', 'getInputElement'];
2610
- class IonSearchbar extends ValueAccessor {
2596
+ /**
2597
+ * Pulling the provider into an object and using PURE works
2598
+ * around an ng-packagr issue that causes
2599
+ * components with multiple decorators and
2600
+ * a provider to be re-assigned. This re-assignment
2601
+ * is not supported by Webpack and causes treeshaking
2602
+ * to not work on these kinds of components.
2603
+ */
2604
+ const accessorProvider$4 = {
2605
+ provide: NG_VALUE_ACCESSOR,
2606
+ useExisting: /*@__PURE__*/ forwardRef(() => IonSearchbar),
2607
+ multi: true,
2608
+ };
2609
+ let IonSearchbar = class IonSearchbar extends ValueAccessor {
2611
2610
  constructor(c, r, z, injector) {
2612
2611
  super(injector, r);
2613
2612
  this.z = z;
2614
- defineCustomElement$1e();
2615
2613
  c.detach();
2616
2614
  this.el = r.nativeElement;
2617
2615
  proxyOutputs(this, this.el, ['ionInput', 'ionChange', 'ionCancel', 'ionClear', 'ionBlur', 'ionFocus']);
2618
2616
  }
2619
- ngOnInit() {
2620
- /**
2621
- * Data-bound input properties are set
2622
- * by Angular after the constructor, so
2623
- * we need to run the proxy in ngOnInit.
2624
- */
2625
- proxyInputs(IonSearchbar, SEARCHBAR_INPUTS);
2626
- proxyMethods(IonSearchbar, SEARCHBAR_METHODS);
2627
- }
2628
2617
  handleIonInput(el) {
2629
2618
  this.handleValueChange(el, el.value);
2630
2619
  }
2631
- }
2620
+ };
2632
2621
  /** @nocollapse */ IonSearchbar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonSearchbar, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
2633
- /** @nocollapse */ IonSearchbar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonSearchbar, isStandalone: true, selector: "ion-searchbar", inputs: { animated: "animated", autocomplete: "autocomplete", autocorrect: "autocorrect", cancelButtonIcon: "cancelButtonIcon", cancelButtonText: "cancelButtonText", clearIcon: "clearIcon", color: "color", debounce: "debounce", disabled: "disabled", enterkeyhint: "enterkeyhint", inputmode: "inputmode", mode: "mode", name: "name", placeholder: "placeholder", searchIcon: "searchIcon", showCancelButton: "showCancelButton", showClearButton: "showClearButton", spellcheck: "spellcheck", type: "type", value: "value" }, host: { listeners: { "ionInput": "handleIonInput($event.target)" } }, providers: [
2634
- {
2635
- provide: NG_VALUE_ACCESSOR,
2636
- useExisting: IonSearchbar,
2637
- multi: true,
2638
- },
2639
- ], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2622
+ /** @nocollapse */ IonSearchbar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonSearchbar, isStandalone: true, selector: "ion-searchbar", inputs: { animated: "animated", autocomplete: "autocomplete", autocorrect: "autocorrect", cancelButtonIcon: "cancelButtonIcon", cancelButtonText: "cancelButtonText", clearIcon: "clearIcon", color: "color", debounce: "debounce", disabled: "disabled", enterkeyhint: "enterkeyhint", inputmode: "inputmode", mode: "mode", name: "name", placeholder: "placeholder", searchIcon: "searchIcon", showCancelButton: "showCancelButton", showClearButton: "showClearButton", spellcheck: "spellcheck", type: "type", value: "value" }, host: { listeners: { "ionInput": "handleIonInput($event.target)" } }, providers: [accessorProvider$4], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2623
+ IonSearchbar = __decorate([
2624
+ ProxyCmp({
2625
+ defineCustomElementFn: defineCustomElement$1e,
2626
+ inputs: SEARCHBAR_INPUTS,
2627
+ methods: ['setFocus', 'getInputElement'],
2628
+ })
2629
+ ], IonSearchbar);
2640
2630
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonSearchbar, decorators: [{
2641
2631
  type: Component,
2642
2632
  args: [{
@@ -2645,13 +2635,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
2645
2635
  template: '<ng-content></ng-content>',
2646
2636
  // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2647
2637
  inputs: SEARCHBAR_INPUTS,
2648
- providers: [
2649
- {
2650
- provide: NG_VALUE_ACCESSOR,
2651
- useExisting: IonSearchbar,
2652
- multi: true,
2653
- },
2654
- ],
2638
+ providers: [accessorProvider$4],
2655
2639
  standalone: true,
2656
2640
  }]
2657
2641
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Injector }]; }, propDecorators: { handleIonInput: [{
@@ -2660,35 +2644,39 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
2660
2644
  }] } });
2661
2645
 
2662
2646
  const SEGMENT_INPUTS = ['color', 'disabled', 'mode', 'scrollable', 'selectOnFocus', 'swipeGesture', 'value'];
2663
- class IonSegment extends ValueAccessor {
2647
+ /**
2648
+ * Pulling the provider into an object and using PURE works
2649
+ * around an ng-packagr issue that causes
2650
+ * components with multiple decorators and
2651
+ * a provider to be re-assigned. This re-assignment
2652
+ * is not supported by Webpack and causes treeshaking
2653
+ * to not work on these kinds of components.
2654
+ */
2655
+ const accessorProvider$3 = {
2656
+ provide: NG_VALUE_ACCESSOR,
2657
+ useExisting: /*@__PURE__*/ forwardRef(() => IonSegment),
2658
+ multi: true,
2659
+ };
2660
+ let IonSegment = class IonSegment extends ValueAccessor {
2664
2661
  constructor(c, r, z, injector) {
2665
2662
  super(injector, r);
2666
2663
  this.z = z;
2667
- defineCustomElement$1f();
2668
2664
  c.detach();
2669
2665
  this.el = r.nativeElement;
2670
2666
  proxyOutputs(this, this.el, ['ionChange']);
2671
2667
  }
2672
- ngOnInit() {
2673
- /**
2674
- * Data-bound input properties are set
2675
- * by Angular after the constructor, so
2676
- * we need to run the proxy in ngOnInit.
2677
- */
2678
- proxyInputs(IonSegment, SEGMENT_INPUTS);
2679
- }
2680
2668
  handleIonChange(el) {
2681
2669
  this.handleValueChange(el, el.value);
2682
2670
  }
2683
- }
2671
+ };
2684
2672
  /** @nocollapse */ IonSegment.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonSegment, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
2685
- /** @nocollapse */ IonSegment.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonSegment, isStandalone: true, selector: "ion-segment", inputs: { color: "color", disabled: "disabled", mode: "mode", scrollable: "scrollable", selectOnFocus: "selectOnFocus", swipeGesture: "swipeGesture", value: "value" }, host: { listeners: { "ionChange": "handleIonChange($event.target)" } }, providers: [
2686
- {
2687
- provide: NG_VALUE_ACCESSOR,
2688
- useExisting: IonSegment,
2689
- multi: true,
2690
- },
2691
- ], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2673
+ /** @nocollapse */ IonSegment.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonSegment, isStandalone: true, selector: "ion-segment", inputs: { color: "color", disabled: "disabled", mode: "mode", scrollable: "scrollable", selectOnFocus: "selectOnFocus", swipeGesture: "swipeGesture", value: "value" }, host: { listeners: { "ionChange": "handleIonChange($event.target)" } }, providers: [accessorProvider$3], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2674
+ IonSegment = __decorate([
2675
+ ProxyCmp({
2676
+ defineCustomElementFn: defineCustomElement$1f,
2677
+ inputs: SEGMENT_INPUTS,
2678
+ })
2679
+ ], IonSegment);
2692
2680
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonSegment, decorators: [{
2693
2681
  type: Component,
2694
2682
  args: [{
@@ -2697,13 +2685,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
2697
2685
  template: '<ng-content></ng-content>',
2698
2686
  // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2699
2687
  inputs: SEGMENT_INPUTS,
2700
- providers: [
2701
- {
2702
- provide: NG_VALUE_ACCESSOR,
2703
- useExisting: IonSegment,
2704
- multi: true,
2705
- },
2706
- ],
2688
+ providers: [accessorProvider$3],
2707
2689
  standalone: true,
2708
2690
  }]
2709
2691
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Injector }]; }, propDecorators: { handleIonChange: [{
@@ -2734,37 +2716,40 @@ const SELECT_INPUTS = [
2734
2716
  'toggleIcon',
2735
2717
  'value',
2736
2718
  ];
2737
- const SELECT_METHODS = ['open'];
2738
- class IonSelect extends ValueAccessor {
2719
+ /**
2720
+ * Pulling the provider into an object and using PURE works
2721
+ * around an ng-packagr issue that causes
2722
+ * components with multiple decorators and
2723
+ * a provider to be re-assigned. This re-assignment
2724
+ * is not supported by Webpack and causes treeshaking
2725
+ * to not work on these kinds of components.
2726
+ */
2727
+ const accessorProvider$2 = {
2728
+ provide: NG_VALUE_ACCESSOR,
2729
+ useExisting: /*@__PURE__*/ forwardRef(() => IonSelect),
2730
+ multi: true,
2731
+ };
2732
+ let IonSelect = class IonSelect extends ValueAccessor {
2739
2733
  constructor(c, r, z, injector) {
2740
2734
  super(injector, r);
2741
2735
  this.z = z;
2742
- defineCustomElement$1g();
2743
2736
  c.detach();
2744
2737
  this.el = r.nativeElement;
2745
2738
  proxyOutputs(this, this.el, ['ionChange', 'ionCancel', 'ionDismiss', 'ionFocus', 'ionBlur']);
2746
2739
  }
2747
- ngOnInit() {
2748
- /**
2749
- * Data-bound input properties are set
2750
- * by Angular after the constructor, so
2751
- * we need to run the proxy in ngOnInit.
2752
- */
2753
- proxyInputs(IonSelect, SELECT_INPUTS);
2754
- proxyMethods(IonSelect, SELECT_METHODS);
2755
- }
2756
2740
  handleIonChange(el) {
2757
2741
  this.handleValueChange(el, el.value);
2758
2742
  }
2759
- }
2743
+ };
2760
2744
  /** @nocollapse */ IonSelect.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonSelect, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
2761
- /** @nocollapse */ IonSelect.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonSelect, isStandalone: true, selector: "ion-select", inputs: { cancelText: "cancelText", color: "color", compareWith: "compareWith", disabled: "disabled", expandedIcon: "expandedIcon", fill: "fill", interface: "interface", interfaceOptions: "interfaceOptions", justify: "justify", label: "label", labelPlacement: "labelPlacement", legacy: "legacy", mode: "mode", multiple: "multiple", name: "name", okText: "okText", placeholder: "placeholder", selectedText: "selectedText", shape: "shape", toggleIcon: "toggleIcon", value: "value" }, host: { listeners: { "ionChange": "handleIonChange($event.target)" } }, providers: [
2762
- {
2763
- provide: NG_VALUE_ACCESSOR,
2764
- useExisting: IonSelect,
2765
- multi: true,
2766
- },
2767
- ], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2745
+ /** @nocollapse */ IonSelect.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonSelect, isStandalone: true, selector: "ion-select", inputs: { cancelText: "cancelText", color: "color", compareWith: "compareWith", disabled: "disabled", expandedIcon: "expandedIcon", fill: "fill", interface: "interface", interfaceOptions: "interfaceOptions", justify: "justify", label: "label", labelPlacement: "labelPlacement", legacy: "legacy", mode: "mode", multiple: "multiple", name: "name", okText: "okText", placeholder: "placeholder", selectedText: "selectedText", shape: "shape", toggleIcon: "toggleIcon", value: "value" }, host: { listeners: { "ionChange": "handleIonChange($event.target)" } }, providers: [accessorProvider$2], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2746
+ IonSelect = __decorate([
2747
+ ProxyCmp({
2748
+ defineCustomElementFn: defineCustomElement$1g,
2749
+ inputs: SELECT_INPUTS,
2750
+ methods: ['open'],
2751
+ })
2752
+ ], IonSelect);
2768
2753
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonSelect, decorators: [{
2769
2754
  type: Component,
2770
2755
  args: [{
@@ -2773,13 +2758,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
2773
2758
  template: '<ng-content></ng-content>',
2774
2759
  // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2775
2760
  inputs: SELECT_INPUTS,
2776
- providers: [
2777
- {
2778
- provide: NG_VALUE_ACCESSOR,
2779
- useExisting: IonSelect,
2780
- multi: true,
2781
- },
2782
- ],
2761
+ providers: [accessorProvider$2],
2783
2762
  standalone: true,
2784
2763
  }]
2785
2764
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Injector }]; }, propDecorators: { handleIonChange: [{
@@ -2819,37 +2798,40 @@ const TEXTAREA_INPUTS = [
2819
2798
  'value',
2820
2799
  'wrap',
2821
2800
  ];
2822
- const TEXTAREA_METHODS = ['setFocus', 'getInputElement'];
2823
- class IonTextarea extends ValueAccessor {
2801
+ /**
2802
+ * Pulling the provider into an object and using PURE works
2803
+ * around an ng-packagr issue that causes
2804
+ * components with multiple decorators and
2805
+ * a provider to be re-assigned. This re-assignment
2806
+ * is not supported by Webpack and causes treeshaking
2807
+ * to not work on these kinds of components.
2808
+ */
2809
+ const accessorProvider$1 = {
2810
+ provide: NG_VALUE_ACCESSOR,
2811
+ useExisting: /*@__PURE__*/ forwardRef(() => IonTextarea),
2812
+ multi: true,
2813
+ };
2814
+ let IonTextarea = class IonTextarea extends ValueAccessor {
2824
2815
  constructor(c, r, z, injector) {
2825
2816
  super(injector, r);
2826
2817
  this.z = z;
2827
- defineCustomElement$1h();
2828
2818
  c.detach();
2829
2819
  this.el = r.nativeElement;
2830
2820
  proxyOutputs(this, this.el, ['ionChange', 'ionInput', 'ionBlur', 'ionFocus']);
2831
2821
  }
2832
- ngOnInit() {
2833
- /**
2834
- * Data-bound input properties are set
2835
- * by Angular after the constructor, so
2836
- * we need to run the proxy in ngOnInit.
2837
- */
2838
- proxyInputs(IonTextarea, TEXTAREA_INPUTS);
2839
- proxyMethods(IonTextarea, TEXTAREA_METHODS);
2840
- }
2841
2822
  handleIonInput(el) {
2842
2823
  this.handleValueChange(el, el.value);
2843
2824
  }
2844
- }
2825
+ };
2845
2826
  /** @nocollapse */ IonTextarea.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonTextarea, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
2846
- /** @nocollapse */ IonTextarea.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonTextarea, isStandalone: true, selector: "ion-textarea", inputs: { autoGrow: "autoGrow", autocapitalize: "autocapitalize", autofocus: "autofocus", clearOnEdit: "clearOnEdit", color: "color", cols: "cols", counter: "counter", counterFormatter: "counterFormatter", debounce: "debounce", disabled: "disabled", enterkeyhint: "enterkeyhint", errorText: "errorText", fill: "fill", helperText: "helperText", inputmode: "inputmode", label: "label", labelPlacement: "labelPlacement", legacy: "legacy", maxlength: "maxlength", minlength: "minlength", mode: "mode", name: "name", placeholder: "placeholder", readonly: "readonly", required: "required", rows: "rows", shape: "shape", spellcheck: "spellcheck", value: "value", wrap: "wrap" }, host: { listeners: { "ionInput": "handleIonInput($event.target)" } }, providers: [
2847
- {
2848
- provide: NG_VALUE_ACCESSOR,
2849
- useExisting: IonTextarea,
2850
- multi: true,
2851
- },
2852
- ], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2827
+ /** @nocollapse */ IonTextarea.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonTextarea, isStandalone: true, selector: "ion-textarea", inputs: { autoGrow: "autoGrow", autocapitalize: "autocapitalize", autofocus: "autofocus", clearOnEdit: "clearOnEdit", color: "color", cols: "cols", counter: "counter", counterFormatter: "counterFormatter", debounce: "debounce", disabled: "disabled", enterkeyhint: "enterkeyhint", errorText: "errorText", fill: "fill", helperText: "helperText", inputmode: "inputmode", label: "label", labelPlacement: "labelPlacement", legacy: "legacy", maxlength: "maxlength", minlength: "minlength", mode: "mode", name: "name", placeholder: "placeholder", readonly: "readonly", required: "required", rows: "rows", shape: "shape", spellcheck: "spellcheck", value: "value", wrap: "wrap" }, host: { listeners: { "ionInput": "handleIonInput($event.target)" } }, providers: [accessorProvider$1], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2828
+ IonTextarea = __decorate([
2829
+ ProxyCmp({
2830
+ defineCustomElementFn: defineCustomElement$1h,
2831
+ inputs: TEXTAREA_INPUTS,
2832
+ methods: ['setFocus', 'getInputElement'],
2833
+ })
2834
+ ], IonTextarea);
2853
2835
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonTextarea, decorators: [{
2854
2836
  type: Component,
2855
2837
  args: [{
@@ -2858,13 +2840,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
2858
2840
  template: '<ng-content></ng-content>',
2859
2841
  // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2860
2842
  inputs: TEXTAREA_INPUTS,
2861
- providers: [
2862
- {
2863
- provide: NG_VALUE_ACCESSOR,
2864
- useExisting: IonTextarea,
2865
- multi: true,
2866
- },
2867
- ],
2843
+ providers: [accessorProvider$1],
2868
2844
  standalone: true,
2869
2845
  }]
2870
2846
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Injector }]; }, propDecorators: { handleIonInput: [{
@@ -2884,23 +2860,27 @@ const TOGGLE_INPUTS = [
2884
2860
  'name',
2885
2861
  'value',
2886
2862
  ];
2887
- class IonToggle extends ValueAccessor {
2863
+ /**
2864
+ * Pulling the provider into an object and using PURE works
2865
+ * around an ng-packagr issue that causes
2866
+ * components with multiple decorators and
2867
+ * a provider to be re-assigned. This re-assignment
2868
+ * is not supported by Webpack and causes treeshaking
2869
+ * to not work on these kinds of components.
2870
+ */
2871
+ const accessorProvider = {
2872
+ provide: NG_VALUE_ACCESSOR,
2873
+ useExisting: /*@__PURE__*/ forwardRef(() => IonToggle),
2874
+ multi: true,
2875
+ };
2876
+ let IonToggle = class IonToggle extends ValueAccessor {
2888
2877
  constructor(c, r, z, injector) {
2889
2878
  super(injector, r);
2890
2879
  this.z = z;
2891
- defineCustomElement$1i();
2892
2880
  c.detach();
2893
2881
  this.el = r.nativeElement;
2894
2882
  proxyOutputs(this, this.el, ['ionChange', 'ionFocus', 'ionBlur']);
2895
2883
  }
2896
- ngOnInit() {
2897
- /**
2898
- * Data-bound input properties are set
2899
- * by Angular after the constructor, so
2900
- * we need to run the proxy in ngOnInit.
2901
- */
2902
- proxyInputs(IonToggle, TOGGLE_INPUTS);
2903
- }
2904
2884
  writeValue(value) {
2905
2885
  this.elementRef.nativeElement.checked = this.lastValue = value;
2906
2886
  setIonicClasses(this.elementRef);
@@ -2908,15 +2888,15 @@ class IonToggle extends ValueAccessor {
2908
2888
  handleIonChange(el) {
2909
2889
  this.handleValueChange(el, el.checked);
2910
2890
  }
2911
- }
2891
+ };
2912
2892
  /** @nocollapse */ IonToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
2913
- /** @nocollapse */ IonToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonToggle, isStandalone: true, selector: "ion-toggle", inputs: { checked: "checked", color: "color", disabled: "disabled", enableOnOffLabels: "enableOnOffLabels", justify: "justify", labelPlacement: "labelPlacement", legacy: "legacy", mode: "mode", name: "name", value: "value" }, host: { listeners: { "ionChange": "handleIonChange($event.target)" } }, providers: [
2914
- {
2915
- provide: NG_VALUE_ACCESSOR,
2916
- useExisting: IonToggle,
2917
- multi: true,
2918
- },
2919
- ], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2893
+ /** @nocollapse */ IonToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: IonToggle, isStandalone: true, selector: "ion-toggle", inputs: { checked: "checked", color: "color", disabled: "disabled", enableOnOffLabels: "enableOnOffLabels", justify: "justify", labelPlacement: "labelPlacement", legacy: "legacy", mode: "mode", name: "name", value: "value" }, host: { listeners: { "ionChange": "handleIonChange($event.target)" } }, providers: [accessorProvider], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2894
+ IonToggle = __decorate([
2895
+ ProxyCmp({
2896
+ defineCustomElementFn: defineCustomElement$1i,
2897
+ inputs: TOGGLE_INPUTS,
2898
+ })
2899
+ ], IonToggle);
2920
2900
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: IonToggle, decorators: [{
2921
2901
  type: Component,
2922
2902
  args: [{
@@ -2925,13 +2905,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
2925
2905
  template: '<ng-content></ng-content>',
2926
2906
  // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2927
2907
  inputs: TOGGLE_INPUTS,
2928
- providers: [
2929
- {
2930
- provide: NG_VALUE_ACCESSOR,
2931
- useExisting: IonToggle,
2932
- multi: true,
2933
- },
2934
- ],
2908
+ providers: [accessorProvider],
2935
2909
  standalone: true,
2936
2910
  }]
2937
2911
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Injector }]; }, propDecorators: { handleIonChange: [{