@ionic/angular 9.0.4-dev.11789491273.11ab1c95 → 9.0.4-dev.11789496656.1690cf55

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.
Files changed (199) hide show
  1. package/dist/common/directives/navigation/back-button.d.ts +1 -0
  2. package/dist/common/directives/navigation/back-button.js +15 -3
  3. package/dist/common/directives/navigation/back-button.js.map +1 -1
  4. package/dist/common/directives/navigation/nav.d.ts +2 -0
  5. package/dist/common/directives/navigation/nav.js +12 -3
  6. package/dist/common/directives/navigation/nav.js.map +1 -1
  7. package/dist/common/directives/navigation/router-outlet.d.ts +2 -0
  8. package/dist/common/directives/navigation/router-outlet.js +8 -2
  9. package/dist/common/directives/navigation/router-outlet.js.map +1 -1
  10. package/dist/common/overlays/modal.d.ts +9 -0
  11. package/dist/common/overlays/modal.js +14 -11
  12. package/dist/common/overlays/modal.js.map +1 -1
  13. package/dist/common/overlays/popover.d.ts +10 -0
  14. package/dist/common/overlays/popover.js +15 -12
  15. package/dist/common/overlays/popover.js.map +1 -1
  16. package/dist/common/utils/boolean-attribute.d.ts +24 -0
  17. package/dist/common/utils/boolean-attribute.js +36 -0
  18. package/dist/common/utils/boolean-attribute.js.map +1 -0
  19. package/dist/lazy/directives/angular-component-lib/boolean-attribute.d.ts +35 -0
  20. package/dist/lazy/directives/angular-component-lib/boolean-attribute.js +43 -0
  21. package/dist/lazy/directives/angular-component-lib/boolean-attribute.js.map +1 -0
  22. package/dist/lazy/directives/proxies.d.ts +144 -0
  23. package/dist/lazy/directives/proxies.js +115 -114
  24. package/dist/lazy/directives/proxies.js.map +1 -1
  25. package/dist/standalone/directives/angular-component-lib/boolean-attribute.d.ts +35 -0
  26. package/dist/standalone/directives/angular-component-lib/boolean-attribute.js +43 -0
  27. package/dist/standalone/directives/angular-component-lib/boolean-attribute.js.map +1 -0
  28. package/dist/standalone/directives/checkbox.d.ts +3 -0
  29. package/dist/standalone/directives/checkbox.js +8 -5
  30. package/dist/standalone/directives/checkbox.js.map +1 -1
  31. package/dist/standalone/directives/datetime.d.ts +9 -0
  32. package/dist/standalone/directives/datetime.js +14 -11
  33. package/dist/standalone/directives/datetime.js.map +1 -1
  34. package/dist/standalone/directives/icon.d.ts +3 -0
  35. package/dist/standalone/directives/icon.js +19 -3
  36. package/dist/standalone/directives/icon.js.map +1 -1
  37. package/dist/standalone/directives/input-otp.d.ts +2 -0
  38. package/dist/standalone/directives/input-otp.js +7 -4
  39. package/dist/standalone/directives/input-otp.js.map +1 -1
  40. package/dist/standalone/directives/input.d.ts +10 -0
  41. package/dist/standalone/directives/input.js +15 -12
  42. package/dist/standalone/directives/input.js.map +1 -1
  43. package/dist/standalone/directives/ion-accordion-group.d.ts +4 -0
  44. package/dist/standalone/directives/ion-accordion-group.js +3 -2
  45. package/dist/standalone/directives/ion-accordion-group.js.map +1 -1
  46. package/dist/standalone/directives/ion-accordion.d.ts +2 -0
  47. package/dist/standalone/directives/ion-accordion.js +3 -2
  48. package/dist/standalone/directives/ion-accordion.js.map +1 -1
  49. package/dist/standalone/directives/ion-action-sheet.d.ts +5 -0
  50. package/dist/standalone/directives/ion-action-sheet.js +3 -2
  51. package/dist/standalone/directives/ion-action-sheet.js.map +1 -1
  52. package/dist/standalone/directives/ion-alert.d.ts +5 -0
  53. package/dist/standalone/directives/ion-alert.js +3 -2
  54. package/dist/standalone/directives/ion-alert.js.map +1 -1
  55. package/dist/standalone/directives/ion-backdrop.d.ts +3 -0
  56. package/dist/standalone/directives/ion-backdrop.js +3 -2
  57. package/dist/standalone/directives/ion-backdrop.js.map +1 -1
  58. package/dist/standalone/directives/ion-breadcrumb.d.ts +3 -0
  59. package/dist/standalone/directives/ion-breadcrumb.js +3 -2
  60. package/dist/standalone/directives/ion-breadcrumb.js.map +1 -1
  61. package/dist/standalone/directives/ion-button.d.ts +2 -0
  62. package/dist/standalone/directives/ion-button.js +3 -2
  63. package/dist/standalone/directives/ion-button.js.map +1 -1
  64. package/dist/standalone/directives/ion-buttons.d.ts +1 -0
  65. package/dist/standalone/directives/ion-buttons.js +3 -2
  66. package/dist/standalone/directives/ion-buttons.js.map +1 -1
  67. package/dist/standalone/directives/ion-card-header.d.ts +1 -0
  68. package/dist/standalone/directives/ion-card-header.js +3 -2
  69. package/dist/standalone/directives/ion-card-header.js.map +1 -1
  70. package/dist/standalone/directives/ion-card.d.ts +2 -0
  71. package/dist/standalone/directives/ion-card.js +3 -2
  72. package/dist/standalone/directives/ion-card.js.map +1 -1
  73. package/dist/standalone/directives/ion-chip.d.ts +2 -0
  74. package/dist/standalone/directives/ion-chip.js +3 -2
  75. package/dist/standalone/directives/ion-chip.js.map +1 -1
  76. package/dist/standalone/directives/ion-content.d.ts +5 -0
  77. package/dist/standalone/directives/ion-content.js +3 -2
  78. package/dist/standalone/directives/ion-content.js.map +1 -1
  79. package/dist/standalone/directives/ion-datetime-button.d.ts +1 -0
  80. package/dist/standalone/directives/ion-datetime-button.js +3 -2
  81. package/dist/standalone/directives/ion-datetime-button.js.map +1 -1
  82. package/dist/standalone/directives/ion-fab-button.d.ts +4 -0
  83. package/dist/standalone/directives/ion-fab-button.js +3 -2
  84. package/dist/standalone/directives/ion-fab-button.js.map +1 -1
  85. package/dist/standalone/directives/ion-fab-list.d.ts +1 -0
  86. package/dist/standalone/directives/ion-fab-list.js +3 -2
  87. package/dist/standalone/directives/ion-fab-list.js.map +1 -1
  88. package/dist/standalone/directives/ion-fab.d.ts +2 -0
  89. package/dist/standalone/directives/ion-fab.js +3 -2
  90. package/dist/standalone/directives/ion-fab.js.map +1 -1
  91. package/dist/standalone/directives/ion-footer.d.ts +1 -0
  92. package/dist/standalone/directives/ion-footer.js +3 -2
  93. package/dist/standalone/directives/ion-footer.js.map +1 -1
  94. package/dist/standalone/directives/ion-grid.d.ts +1 -0
  95. package/dist/standalone/directives/ion-grid.js +3 -2
  96. package/dist/standalone/directives/ion-grid.js.map +1 -1
  97. package/dist/standalone/directives/ion-header.d.ts +1 -0
  98. package/dist/standalone/directives/ion-header.js +3 -2
  99. package/dist/standalone/directives/ion-header.js.map +1 -1
  100. package/dist/standalone/directives/ion-infinite-scroll.d.ts +1 -0
  101. package/dist/standalone/directives/ion-infinite-scroll.js +3 -2
  102. package/dist/standalone/directives/ion-infinite-scroll.js.map +1 -1
  103. package/dist/standalone/directives/ion-item-divider.d.ts +1 -0
  104. package/dist/standalone/directives/ion-item-divider.js +3 -2
  105. package/dist/standalone/directives/ion-item-divider.js.map +1 -1
  106. package/dist/standalone/directives/ion-item-option.d.ts +2 -0
  107. package/dist/standalone/directives/ion-item-option.js +3 -2
  108. package/dist/standalone/directives/ion-item-option.js.map +1 -1
  109. package/dist/standalone/directives/ion-item-sliding.d.ts +1 -0
  110. package/dist/standalone/directives/ion-item-sliding.js +3 -2
  111. package/dist/standalone/directives/ion-item-sliding.js.map +1 -1
  112. package/dist/standalone/directives/ion-item.d.ts +3 -0
  113. package/dist/standalone/directives/ion-item.js +3 -2
  114. package/dist/standalone/directives/ion-item.js.map +1 -1
  115. package/dist/standalone/directives/ion-list.d.ts +1 -0
  116. package/dist/standalone/directives/ion-list.js +3 -2
  117. package/dist/standalone/directives/ion-list.js.map +1 -1
  118. package/dist/standalone/directives/ion-loading.d.ts +6 -0
  119. package/dist/standalone/directives/ion-loading.js +3 -2
  120. package/dist/standalone/directives/ion-loading.js.map +1 -1
  121. package/dist/standalone/directives/ion-menu-button.d.ts +2 -0
  122. package/dist/standalone/directives/ion-menu-button.js +3 -2
  123. package/dist/standalone/directives/ion-menu-button.js.map +1 -1
  124. package/dist/standalone/directives/ion-menu-toggle.d.ts +1 -0
  125. package/dist/standalone/directives/ion-menu-toggle.js +3 -2
  126. package/dist/standalone/directives/ion-menu-toggle.js.map +1 -1
  127. package/dist/standalone/directives/ion-menu.d.ts +2 -0
  128. package/dist/standalone/directives/ion-menu.js +3 -2
  129. package/dist/standalone/directives/ion-menu.js.map +1 -1
  130. package/dist/standalone/directives/ion-picker-column-option.d.ts +1 -0
  131. package/dist/standalone/directives/ion-picker-column-option.js +3 -2
  132. package/dist/standalone/directives/ion-picker-column-option.js.map +1 -1
  133. package/dist/standalone/directives/ion-picker-column.d.ts +1 -0
  134. package/dist/standalone/directives/ion-picker-column.js +3 -2
  135. package/dist/standalone/directives/ion-picker-column.js.map +1 -1
  136. package/dist/standalone/directives/ion-progress-bar.d.ts +1 -0
  137. package/dist/standalone/directives/ion-progress-bar.js +3 -2
  138. package/dist/standalone/directives/ion-progress-bar.js.map +1 -1
  139. package/dist/standalone/directives/ion-radio.d.ts +1 -0
  140. package/dist/standalone/directives/ion-radio.js +3 -2
  141. package/dist/standalone/directives/ion-radio.js.map +1 -1
  142. package/dist/standalone/directives/ion-refresher.d.ts +1 -0
  143. package/dist/standalone/directives/ion-refresher.js +3 -2
  144. package/dist/standalone/directives/ion-refresher.js.map +1 -1
  145. package/dist/standalone/directives/ion-reorder-group.d.ts +1 -0
  146. package/dist/standalone/directives/ion-reorder-group.js +3 -2
  147. package/dist/standalone/directives/ion-reorder-group.js.map +1 -1
  148. package/dist/standalone/directives/ion-segment-button.d.ts +1 -0
  149. package/dist/standalone/directives/ion-segment-button.js +3 -2
  150. package/dist/standalone/directives/ion-segment-button.js.map +1 -1
  151. package/dist/standalone/directives/ion-segment-view.d.ts +2 -0
  152. package/dist/standalone/directives/ion-segment-view.js +3 -2
  153. package/dist/standalone/directives/ion-segment-view.js.map +1 -1
  154. package/dist/standalone/directives/ion-select-modal.d.ts +1 -0
  155. package/dist/standalone/directives/ion-select-modal.js +3 -2
  156. package/dist/standalone/directives/ion-select-modal.js.map +1 -1
  157. package/dist/standalone/directives/ion-select-option.d.ts +1 -0
  158. package/dist/standalone/directives/ion-select-option.js +3 -2
  159. package/dist/standalone/directives/ion-select-option.js.map +1 -1
  160. package/dist/standalone/directives/ion-skeleton-text.d.ts +1 -0
  161. package/dist/standalone/directives/ion-skeleton-text.js +3 -2
  162. package/dist/standalone/directives/ion-skeleton-text.js.map +1 -1
  163. package/dist/standalone/directives/ion-spinner.d.ts +1 -0
  164. package/dist/standalone/directives/ion-spinner.js +3 -2
  165. package/dist/standalone/directives/ion-spinner.js.map +1 -1
  166. package/dist/standalone/directives/ion-split-pane.d.ts +1 -0
  167. package/dist/standalone/directives/ion-split-pane.js +3 -2
  168. package/dist/standalone/directives/ion-split-pane.js.map +1 -1
  169. package/dist/standalone/directives/ion-tab-bar.d.ts +1 -0
  170. package/dist/standalone/directives/ion-tab-bar.js +3 -2
  171. package/dist/standalone/directives/ion-tab-bar.js.map +1 -1
  172. package/dist/standalone/directives/ion-tab-button.d.ts +2 -0
  173. package/dist/standalone/directives/ion-tab-button.js +3 -2
  174. package/dist/standalone/directives/ion-tab-button.js.map +1 -1
  175. package/dist/standalone/directives/ion-toast.d.ts +4 -0
  176. package/dist/standalone/directives/ion-toast.js +3 -2
  177. package/dist/standalone/directives/ion-toast.js.map +1 -1
  178. package/dist/standalone/directives/radio-group.d.ts +1 -0
  179. package/dist/standalone/directives/radio-group.js +13 -3
  180. package/dist/standalone/directives/radio-group.js.map +1 -1
  181. package/dist/standalone/directives/range.d.ts +5 -0
  182. package/dist/standalone/directives/range.js +10 -7
  183. package/dist/standalone/directives/range.js.map +1 -1
  184. package/dist/standalone/directives/searchbar.d.ts +4 -0
  185. package/dist/standalone/directives/searchbar.js +9 -6
  186. package/dist/standalone/directives/searchbar.js.map +1 -1
  187. package/dist/standalone/directives/segment.d.ts +4 -0
  188. package/dist/standalone/directives/segment.js +14 -3
  189. package/dist/standalone/directives/segment.js.map +1 -1
  190. package/dist/standalone/directives/select.d.ts +2 -0
  191. package/dist/standalone/directives/select.js +7 -4
  192. package/dist/standalone/directives/select.js.map +1 -1
  193. package/dist/standalone/directives/textarea.d.ts +8 -0
  194. package/dist/standalone/directives/textarea.js +13 -10
  195. package/dist/standalone/directives/textarea.js.map +1 -1
  196. package/dist/standalone/directives/toggle.d.ts +3 -0
  197. package/dist/standalone/directives/toggle.js +8 -5
  198. package/dist/standalone/directives/toggle.js.map +1 -1
  199. package/package.json +2 -2
@@ -9,6 +9,10 @@ export declare class IonSearchbar extends ValueAccessor {
9
9
  handleIonInput(el: HTMLIonSearchbarElement): void;
10
10
  static ɵfac: i0.ɵɵFactoryDeclaration<IonSearchbar, never>;
11
11
  static ɵcmp: i0.ɵɵComponentDeclaration<IonSearchbar, "ion-searchbar", never, { "animated": { "alias": "animated"; "required": false; }; "autocomplete": { "alias": "autocomplete"; "required": false; }; "autocorrect": { "alias": "autocorrect"; "required": false; }; "cancelButtonIcon": { "alias": "cancelButtonIcon"; "required": false; }; "cancelButtonText": { "alias": "cancelButtonText"; "required": false; }; "clearIcon": { "alias": "clearIcon"; "required": false; }; "color": { "alias": "color"; "required": false; }; "debounce": { "alias": "debounce"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "enterkeyhint": { "alias": "enterkeyhint"; "required": false; }; "inputmode": { "alias": "inputmode"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "name": { "alias": "name"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "searchIcon": { "alias": "searchIcon"; "required": false; }; "showCancelButton": { "alias": "showCancelButton"; "required": false; }; "showClearButton": { "alias": "showClearButton"; "required": false; }; "spellcheck": { "alias": "spellcheck"; "required": false; }; "type": { "alias": "type"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, {}, never, ["*"], true, never>;
12
+ static ngAcceptInputType_animated: boolean | string | null | undefined;
13
+ static ngAcceptInputType_autocorrect: boolean | string | null | undefined;
14
+ static ngAcceptInputType_disabled: boolean | string | null | undefined;
15
+ static ngAcceptInputType_spellcheck: boolean | string | null | undefined;
12
16
  }
13
17
  export declare interface IonSearchbar extends Components.IonSearchbar {
14
18
  /**
@@ -3,18 +3,19 @@ import { ChangeDetectionStrategy, Component, HostListener, forwardRef, } from '@
3
3
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
4
4
  import { ValueAccessor } from '@ionic/angular/common';
5
5
  import { defineCustomElement } from '@ionic/core/components/ion-searchbar.js';
6
+ import { nullableBooleanAttribute } from './angular-component-lib/boolean-attribute';
6
7
  import { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';
7
8
  import * as i0 from "@angular/core";
8
9
  const SEARCHBAR_INPUTS = [
9
- 'animated',
10
+ { name: 'animated', transform: nullableBooleanAttribute },
10
11
  'autocomplete',
11
- 'autocorrect',
12
+ { name: 'autocorrect', transform: nullableBooleanAttribute },
12
13
  'cancelButtonIcon',
13
14
  'cancelButtonText',
14
15
  'clearIcon',
15
16
  'color',
16
17
  'debounce',
17
- 'disabled',
18
+ { name: 'disabled', transform: nullableBooleanAttribute },
18
19
  'enterkeyhint',
19
20
  'inputmode',
20
21
  'mode',
@@ -23,10 +24,12 @@ const SEARCHBAR_INPUTS = [
23
24
  'searchIcon',
24
25
  'showCancelButton',
25
26
  'showClearButton',
26
- 'spellcheck',
27
+ { name: 'spellcheck', transform: nullableBooleanAttribute },
27
28
  'type',
28
29
  'value',
29
30
  ];
31
+ /* ProxyCmp only needs the names, and runs at runtime rather than through the Angular compiler. */
32
+ const SEARCHBAR_PROXY_INPUTS = SEARCHBAR_INPUTS.map((input) => (typeof input === 'string' ? input : input.name));
30
33
  let IonSearchbar = class IonSearchbar extends ValueAccessor {
31
34
  z;
32
35
  el;
@@ -41,7 +44,7 @@ let IonSearchbar = class IonSearchbar extends ValueAccessor {
41
44
  this.handleValueChange(el, el.value);
42
45
  }
43
46
  /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: IonSearchbar, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
44
- /** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.0", 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: [
47
+ /** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "22.0.0", type: IonSearchbar, isStandalone: true, selector: "ion-searchbar", inputs: { animated: ["animated", "animated", nullableBooleanAttribute], autocomplete: "autocomplete", autocorrect: ["autocorrect", "autocorrect", nullableBooleanAttribute], cancelButtonIcon: "cancelButtonIcon", cancelButtonText: "cancelButtonText", clearIcon: "clearIcon", color: "color", debounce: "debounce", disabled: ["disabled", "disabled", nullableBooleanAttribute], enterkeyhint: "enterkeyhint", inputmode: "inputmode", mode: "mode", name: "name", placeholder: "placeholder", searchIcon: "searchIcon", showCancelButton: "showCancelButton", showClearButton: "showClearButton", spellcheck: ["spellcheck", "spellcheck", nullableBooleanAttribute], type: "type", value: "value" }, host: { listeners: { "ionInput": "handleIonInput($event.target)" } }, providers: [
45
48
  {
46
49
  provide: NG_VALUE_ACCESSOR,
47
50
  useExisting: forwardRef((() => IonSearchbar)),
@@ -52,7 +55,7 @@ let IonSearchbar = class IonSearchbar extends ValueAccessor {
52
55
  IonSearchbar = __decorate([
53
56
  ProxyCmp({
54
57
  defineCustomElementFn: defineCustomElement,
55
- inputs: SEARCHBAR_INPUTS,
58
+ inputs: SEARCHBAR_PROXY_INPUTS,
56
59
  methods: ['setFocus', 'getInputElement'],
57
60
  })
58
61
  ], IonSearchbar);
@@ -1 +1 @@
1
- {"version":3,"file":"searchbar.js","sourceRoot":"","sources":["../../../src/standalone/directives/searchbar.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,uBAAuB,EAEvB,SAAS,EAGT,YAAY,EAGZ,UAAU,GACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAE9E,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;;AAEvE,MAAM,gBAAgB,GAAG;IACvB,UAAU;IACV,cAAc;IACd,aAAa;IACb,kBAAkB;IAClB,kBAAkB;IAClB,WAAW;IACX,OAAO;IACP,UAAU;IACV,UAAU;IACV,cAAc;IACd,WAAW;IACX,MAAM;IACN,MAAM;IACN,aAAa;IACb,YAAY;IACZ,kBAAkB;IAClB,iBAAiB;IACjB,YAAY;IACZ,MAAM;IACN,OAAO;CACR,CAAC;AAsBK,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,aAAa;IAEc;IADjD,EAAE,CAAc;IAC1B,YAAY,CAAoB,EAAE,CAAa,EAAY,CAAS,EAAE,QAAkB;QACtF,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QADsC,MAAC,GAAD,CAAC,CAAQ;QAElE,CAAC,CAAC,MAAM,EAAE,CAAC;QACX,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,aAAa,CAAC;QAC1B,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;IACzG,CAAC;IAGD,cAAc,CAAC,EAA2B;QACxC,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;0HAZU,YAAY;8GAAZ,YAAY,woBATZ;YACT;gBACE,OAAO,EAAE,iBAAiB;gBAC1B,WAAW,EAAE,UAAU,EAAC,GAAG,EAAE,CAAC,YAAY,EAAC;gBAC3C,KAAK,EAAE,IAAI;aACZ;SACF,iDATS,2BAA2B;;AAY1B,YAAY;IApBxB,QAAQ,CAAC;QACR,qBAAqB,EAAE,mBAAmB;QAC1C,MAAM,EAAE,gBAAgB;QACxB,OAAO,EAAE,CAAC,UAAU,EAAE,iBAAiB,CAAC;KACzC,CAAC;GAgBW,YAAY,CAaxB;;2FAbY,YAAY;kBAfxB,SAAS;mBAAC;oBACT,QAAQ,EAAE,eAAe;oBACzB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,QAAQ,EAAE,2BAA2B;oBACrC,uEAAuE;oBACvE,MAAM,EAAE,gBAAgB;oBACxB,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,EAAC,GAAG,EAAE,aAAa,EAAC;4BAC3C,KAAK,EAAE,IAAI;yBACZ;qBACF;oBACD,UAAU,EAAE,IAAI;iBACjB;;sBAUE,YAAY;uBAAC,UAAU,EAAE,CAAC,eAAe,CAAC","sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n HostListener,\n Injector,\n NgZone,\n forwardRef,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ValueAccessor } from '@ionic/angular/common';\nimport type { SearchbarInputEventDetail, SearchbarChangeEventDetail, Components } from '@ionic/core/components';\nimport { defineCustomElement } from '@ionic/core/components/ion-searchbar.js';\n\nimport { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';\n\nconst SEARCHBAR_INPUTS = [\n 'animated',\n 'autocomplete',\n 'autocorrect',\n 'cancelButtonIcon',\n 'cancelButtonText',\n 'clearIcon',\n 'color',\n 'debounce',\n 'disabled',\n 'enterkeyhint',\n 'inputmode',\n 'mode',\n 'name',\n 'placeholder',\n 'searchIcon',\n 'showCancelButton',\n 'showClearButton',\n 'spellcheck',\n 'type',\n 'value',\n];\n\n@ProxyCmp({\n defineCustomElementFn: defineCustomElement,\n inputs: SEARCHBAR_INPUTS,\n methods: ['setFocus', 'getInputElement'],\n})\n@Component({\n selector: 'ion-searchbar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: SEARCHBAR_INPUTS,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => IonSearchbar),\n multi: true,\n },\n ],\n standalone: true,\n})\nexport class IonSearchbar extends ValueAccessor {\n protected el: HTMLElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone, injector: Injector) {\n super(injector, r);\n c.detach();\n this.el = r.nativeElement;\n proxyOutputs(this, this.el, ['ionInput', 'ionChange', 'ionCancel', 'ionClear', 'ionBlur', 'ionFocus']);\n }\n\n @HostListener('ionInput', ['$event.target'])\n handleIonInput(el: HTMLIonSearchbarElement): void {\n this.handleValueChange(el, el.value);\n }\n}\n\nexport declare interface IonSearchbar extends Components.IonSearchbar {\n /**\n * Emitted when the `value` of the `ion-searchbar` element has changed.\n */\n ionInput: EventEmitter<CustomEvent<SearchbarInputEventDetail>>;\n /**\n * The `ionChange` event is fired for `<ion-searchbar>` elements when the user\nmodifies the element's value. Unlike the `ionInput` event, the `ionChange`\nevent is not necessarily fired for each alteration to an element's value.\n\nThe `ionChange` event is fired when the value has been committed\nby the user. This can happen when the element loses focus or\nwhen the \"Enter\" key is pressed. `ionChange` can also fire\nwhen clicking the clear or cancel buttons.\n */\n ionChange: EventEmitter<CustomEvent<SearchbarChangeEventDetail>>;\n /**\n * Emitted when the cancel button is clicked.\n */\n ionCancel: EventEmitter<CustomEvent<void>>;\n /**\n * Emitted when the clear input button is clicked.\n */\n ionClear: EventEmitter<CustomEvent<void>>;\n /**\n * Emitted when the input loses focus.\n */\n ionBlur: EventEmitter<CustomEvent<void>>;\n /**\n * Emitted when the input has focus.\n */\n ionFocus: EventEmitter<CustomEvent<void>>;\n}\n"]}
1
+ {"version":3,"file":"searchbar.js","sourceRoot":"","sources":["../../../src/standalone/directives/searchbar.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n HostListener,\n Injector,\n NgZone,\n forwardRef,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ValueAccessor } from '@ionic/angular/common';\nimport type { SearchbarInputEventDetail, SearchbarChangeEventDetail, Components } from '@ionic/core/components';\nimport { defineCustomElement } from '@ionic/core/components/ion-searchbar.js';\n\nimport { nullableBooleanAttribute } from './angular-component-lib/boolean-attribute';\nimport { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';\n\nconst SEARCHBAR_INPUTS = [\n { name: 'animated', transform: nullableBooleanAttribute },\n 'autocomplete',\n { name: 'autocorrect', transform: nullableBooleanAttribute },\n 'cancelButtonIcon',\n 'cancelButtonText',\n 'clearIcon',\n 'color',\n 'debounce',\n { name: 'disabled', transform: nullableBooleanAttribute },\n 'enterkeyhint',\n 'inputmode',\n 'mode',\n 'name',\n 'placeholder',\n 'searchIcon',\n 'showCancelButton',\n 'showClearButton',\n { name: 'spellcheck', transform: nullableBooleanAttribute },\n 'type',\n 'value',\n];\n\n/* ProxyCmp only needs the names, and runs at runtime rather than through the Angular compiler. */\nconst SEARCHBAR_PROXY_INPUTS = SEARCHBAR_INPUTS.map((input) => (typeof input === 'string' ? input : input.name));\n\n@ProxyCmp({\n defineCustomElementFn: defineCustomElement,\n inputs: SEARCHBAR_PROXY_INPUTS,\n methods: ['setFocus', 'getInputElement'],\n})\n@Component({\n selector: 'ion-searchbar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: SEARCHBAR_INPUTS,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => IonSearchbar),\n multi: true,\n },\n ],\n standalone: true,\n})\nexport class IonSearchbar extends ValueAccessor {\n protected el: HTMLElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone, injector: Injector) {\n super(injector, r);\n c.detach();\n this.el = r.nativeElement;\n proxyOutputs(this, this.el, ['ionInput', 'ionChange', 'ionCancel', 'ionClear', 'ionBlur', 'ionFocus']);\n }\n\n @HostListener('ionInput', ['$event.target'])\n handleIonInput(el: HTMLIonSearchbarElement): void {\n this.handleValueChange(el, el.value);\n }\n}\n\nexport declare interface IonSearchbar extends Components.IonSearchbar {\n /**\n * Emitted when the `value` of the `ion-searchbar` element has changed.\n */\n ionInput: EventEmitter<CustomEvent<SearchbarInputEventDetail>>;\n /**\n * The `ionChange` event is fired for `<ion-searchbar>` elements when the user\nmodifies the element's value. Unlike the `ionInput` event, the `ionChange`\nevent is not necessarily fired for each alteration to an element's value.\n\nThe `ionChange` event is fired when the value has been committed\nby the user. This can happen when the element loses focus or\nwhen the \"Enter\" key is pressed. `ionChange` can also fire\nwhen clicking the clear or cancel buttons.\n */\n ionChange: EventEmitter<CustomEvent<SearchbarChangeEventDetail>>;\n /**\n * Emitted when the cancel button is clicked.\n */\n ionCancel: EventEmitter<CustomEvent<void>>;\n /**\n * Emitted when the clear input button is clicked.\n */\n ionClear: EventEmitter<CustomEvent<void>>;\n /**\n * Emitted when the input loses focus.\n */\n ionBlur: EventEmitter<CustomEvent<void>>;\n /**\n * Emitted when the input has focus.\n */\n ionFocus: EventEmitter<CustomEvent<void>>;\n}\n"]}
@@ -9,6 +9,10 @@ export declare class IonSegment extends ValueAccessor {
9
9
  handleIonChange(el: HTMLIonSegmentElement): void;
10
10
  static ɵfac: i0.ɵɵFactoryDeclaration<IonSegment, never>;
11
11
  static ɵcmp: i0.ɵɵComponentDeclaration<IonSegment, "ion-segment", never, { "color": { "alias": "color"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "scrollable": { "alias": "scrollable"; "required": false; }; "selectOnFocus": { "alias": "selectOnFocus"; "required": false; }; "swipeGesture": { "alias": "swipeGesture"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, {}, never, ["*"], true, never>;
12
+ static ngAcceptInputType_disabled: boolean | string | null | undefined;
13
+ static ngAcceptInputType_scrollable: boolean | string | null | undefined;
14
+ static ngAcceptInputType_selectOnFocus: boolean | string | null | undefined;
15
+ static ngAcceptInputType_swipeGesture: boolean | string | null | undefined;
12
16
  }
13
17
  export declare interface IonSegment extends Components.IonSegment {
14
18
  /**
@@ -3,9 +3,20 @@ import { ChangeDetectionStrategy, Component, HostListener, forwardRef, } from '@
3
3
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
4
4
  import { ValueAccessor } from '@ionic/angular/common';
5
5
  import { defineCustomElement } from '@ionic/core/components/ion-segment.js';
6
+ import { nullableBooleanAttribute } from './angular-component-lib/boolean-attribute';
6
7
  import { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';
7
8
  import * as i0 from "@angular/core";
8
- const SEGMENT_INPUTS = ['color', 'disabled', 'mode', 'scrollable', 'selectOnFocus', 'swipeGesture', 'value'];
9
+ const SEGMENT_INPUTS = [
10
+ 'color',
11
+ { name: 'disabled', transform: nullableBooleanAttribute },
12
+ 'mode',
13
+ { name: 'scrollable', transform: nullableBooleanAttribute },
14
+ { name: 'selectOnFocus', transform: nullableBooleanAttribute },
15
+ { name: 'swipeGesture', transform: nullableBooleanAttribute },
16
+ 'value',
17
+ ];
18
+ /* ProxyCmp only needs the names, and runs at runtime rather than through the Angular compiler. */
19
+ const SEGMENT_PROXY_INPUTS = SEGMENT_INPUTS.map((input) => (typeof input === 'string' ? input : input.name));
9
20
  let IonSegment = class IonSegment extends ValueAccessor {
10
21
  z;
11
22
  el;
@@ -20,7 +31,7 @@ let IonSegment = class IonSegment extends ValueAccessor {
20
31
  this.handleValueChange(el, el.value);
21
32
  }
22
33
  /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: IonSegment, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
23
- /** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.0", 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: [
34
+ /** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "22.0.0", type: IonSegment, isStandalone: true, selector: "ion-segment", inputs: { color: "color", disabled: ["disabled", "disabled", nullableBooleanAttribute], mode: "mode", scrollable: ["scrollable", "scrollable", nullableBooleanAttribute], selectOnFocus: ["selectOnFocus", "selectOnFocus", nullableBooleanAttribute], swipeGesture: ["swipeGesture", "swipeGesture", nullableBooleanAttribute], value: "value" }, host: { listeners: { "ionChange": "handleIonChange($event.target)" } }, providers: [
24
35
  {
25
36
  provide: NG_VALUE_ACCESSOR,
26
37
  useExisting: forwardRef((() => IonSegment)),
@@ -31,7 +42,7 @@ let IonSegment = class IonSegment extends ValueAccessor {
31
42
  IonSegment = __decorate([
32
43
  ProxyCmp({
33
44
  defineCustomElementFn: defineCustomElement,
34
- inputs: SEGMENT_INPUTS,
45
+ inputs: SEGMENT_PROXY_INPUTS,
35
46
  })
36
47
  ], IonSegment);
37
48
  export { IonSegment };
@@ -1 +1 @@
1
- {"version":3,"file":"segment.js","sourceRoot":"","sources":["../../../src/standalone/directives/segment.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,uBAAuB,EAEvB,SAAS,EAGT,YAAY,EAGZ,UAAU,GACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAE5E,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;;AAEvE,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;AAqBtG,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,aAAa;IAEgB;IADjD,EAAE,CAAc;IAC1B,YAAY,CAAoB,EAAE,CAAa,EAAY,CAAS,EAAE,QAAkB;QACtF,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QADsC,MAAC,GAAD,CAAC,CAAQ;QAElE,CAAC,CAAC,MAAM,EAAE,CAAC;QACX,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,aAAa,CAAC;QAC1B,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAC7C,CAAC;IAGD,eAAe,CAAC,EAAyB;QACvC,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;0HAZU,UAAU;8GAAV,UAAU,0SATV;YACT;gBACE,OAAO,EAAE,iBAAiB;gBAC1B,WAAW,EAAE,UAAU,EAAC,GAAG,EAAE,CAAC,UAAU,EAAC;gBACzC,KAAK,EAAE,IAAI;aACZ;SACF,iDATS,2BAA2B;;AAY1B,UAAU;IAnBtB,QAAQ,CAAC;QACR,qBAAqB,EAAE,mBAAmB;QAC1C,MAAM,EAAE,cAAc;KACvB,CAAC;GAgBW,UAAU,CAatB;;2FAbY,UAAU;kBAftB,SAAS;mBAAC;oBACT,QAAQ,EAAE,aAAa;oBACvB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,QAAQ,EAAE,2BAA2B;oBACrC,uEAAuE;oBACvE,MAAM,EAAE,cAAc;oBACtB,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,EAAC,GAAG,EAAE,WAAW,EAAC;4BACzC,KAAK,EAAE,IAAI;yBACZ;qBACF;oBACD,UAAU,EAAE,IAAI;iBACjB;;sBAUE,YAAY;uBAAC,WAAW,EAAE,CAAC,eAAe,CAAC","sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n HostListener,\n Injector,\n NgZone,\n forwardRef,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ValueAccessor } from '@ionic/angular/common';\nimport type { SegmentChangeEventDetail, Components } from '@ionic/core/components';\nimport { defineCustomElement } from '@ionic/core/components/ion-segment.js';\n\nimport { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';\n\nconst SEGMENT_INPUTS = ['color', 'disabled', 'mode', 'scrollable', 'selectOnFocus', 'swipeGesture', 'value'];\n\n@ProxyCmp({\n defineCustomElementFn: defineCustomElement,\n inputs: SEGMENT_INPUTS,\n})\n@Component({\n selector: 'ion-segment',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: SEGMENT_INPUTS,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => IonSegment),\n multi: true,\n },\n ],\n standalone: true,\n})\nexport class IonSegment extends ValueAccessor {\n protected el: HTMLElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone, injector: Injector) {\n super(injector, r);\n c.detach();\n this.el = r.nativeElement;\n proxyOutputs(this, this.el, ['ionChange']);\n }\n\n @HostListener('ionChange', ['$event.target'])\n handleIonChange(el: HTMLIonSegmentElement): void {\n this.handleValueChange(el, el.value);\n }\n}\n\nexport declare interface IonSegment extends Components.IonSegment {\n /**\n * Emitted when the value property has changed and any\ndragging pointer has been released from `ion-segment`.\n */\n ionChange: EventEmitter<CustomEvent<SegmentChangeEventDetail>>;\n}\n"]}
1
+ {"version":3,"file":"segment.js","sourceRoot":"","sources":["../../../src/standalone/directives/segment.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,uBAAuB,EAEvB,SAAS,EAGT,YAAY,EAGZ,UAAU,GACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAE5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AACrF,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;;AAEvE,MAAM,cAAc,GAAG;IACrB,OAAO;IACP,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,wBAAwB,EAAE;IACzD,MAAM;IACN,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,wBAAwB,EAAE;IAC3D,EAAE,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,wBAAwB,EAAE;IAC9D,EAAE,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,wBAAwB,EAAE;IAC7D,OAAO;CACR,CAAC;AAEF,kGAAkG;AAClG,MAAM,oBAAoB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AAqBtG,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,aAAa;IAEgB;IADjD,EAAE,CAAc;IAC1B,YAAY,CAAoB,EAAE,CAAa,EAAY,CAAS,EAAE,QAAkB;QACtF,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QADsC,MAAC,GAAD,CAAC,CAAQ;QAElE,CAAC,CAAC,MAAM,EAAE,CAAC;QACX,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,aAAa,CAAC;QAC1B,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAC7C,CAAC;IAGD,eAAe,CAAC,EAAyB;QACvC,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;0HAZU,UAAU;8GAAV,UAAU,4GA9BU,wBAAwB,0DAEtB,wBAAwB,qDACrB,wBAAwB,kDACzB,wBAAwB,wGAiBhD;YACT;gBACE,OAAO,EAAE,iBAAiB;gBAC1B,WAAW,EAAE,UAAU,EAAC,GAAG,EAAE,CAAC,UAAU,EAAC;gBACzC,KAAK,EAAE,IAAI;aACZ;SACF,iDATS,2BAA2B;;AAY1B,UAAU;IAnBtB,QAAQ,CAAC;QACR,qBAAqB,EAAE,mBAAmB;QAC1C,MAAM,EAAE,oBAAoB;KAC7B,CAAC;GAgBW,UAAU,CAatB;;2FAbY,UAAU;kBAftB,SAAS;mBAAC;oBACT,QAAQ,EAAE,aAAa;oBACvB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,QAAQ,EAAE,2BAA2B;oBACrC,uEAAuE;oBACvE,MAAM,EAAE,cAAc;oBACtB,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,EAAC,GAAG,EAAE,WAAW,EAAC;4BACzC,KAAK,EAAE,IAAI;yBACZ;qBACF;oBACD,UAAU,EAAE,IAAI;iBACjB;;sBAUE,YAAY;uBAAC,WAAW,EAAE,CAAC,eAAe,CAAC","sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n HostListener,\n Injector,\n NgZone,\n forwardRef,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ValueAccessor } from '@ionic/angular/common';\nimport type { SegmentChangeEventDetail, Components } from '@ionic/core/components';\nimport { defineCustomElement } from '@ionic/core/components/ion-segment.js';\n\nimport { nullableBooleanAttribute } from './angular-component-lib/boolean-attribute';\nimport { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';\n\nconst SEGMENT_INPUTS = [\n 'color',\n { name: 'disabled', transform: nullableBooleanAttribute },\n 'mode',\n { name: 'scrollable', transform: nullableBooleanAttribute },\n { name: 'selectOnFocus', transform: nullableBooleanAttribute },\n { name: 'swipeGesture', transform: nullableBooleanAttribute },\n 'value',\n];\n\n/* ProxyCmp only needs the names, and runs at runtime rather than through the Angular compiler. */\nconst SEGMENT_PROXY_INPUTS = SEGMENT_INPUTS.map((input) => (typeof input === 'string' ? input : input.name));\n\n@ProxyCmp({\n defineCustomElementFn: defineCustomElement,\n inputs: SEGMENT_PROXY_INPUTS,\n})\n@Component({\n selector: 'ion-segment',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: SEGMENT_INPUTS,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => IonSegment),\n multi: true,\n },\n ],\n standalone: true,\n})\nexport class IonSegment extends ValueAccessor {\n protected el: HTMLElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone, injector: Injector) {\n super(injector, r);\n c.detach();\n this.el = r.nativeElement;\n proxyOutputs(this, this.el, ['ionChange']);\n }\n\n @HostListener('ionChange', ['$event.target'])\n handleIonChange(el: HTMLIonSegmentElement): void {\n this.handleValueChange(el, el.value);\n }\n}\n\nexport declare interface IonSegment extends Components.IonSegment {\n /**\n * Emitted when the value property has changed and any\ndragging pointer has been released from `ion-segment`.\n */\n ionChange: EventEmitter<CustomEvent<SegmentChangeEventDetail>>;\n}\n"]}
@@ -9,6 +9,8 @@ export declare class IonSelect extends ValueAccessor {
9
9
  handleIonChange(el: HTMLIonSelectElement): void;
10
10
  static ɵfac: i0.ɵɵFactoryDeclaration<IonSelect, never>;
11
11
  static ɵcmp: i0.ɵɵComponentDeclaration<IonSelect, "ion-select", never, { "cancelText": { "alias": "cancelText"; "required": false; }; "color": { "alias": "color"; "required": false; }; "compareWith": { "alias": "compareWith"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "errorText": { "alias": "errorText"; "required": false; }; "expandedIcon": { "alias": "expandedIcon"; "required": false; }; "fill": { "alias": "fill"; "required": false; }; "helperText": { "alias": "helperText"; "required": false; }; "interface": { "alias": "interface"; "required": false; }; "interfaceOptions": { "alias": "interfaceOptions"; "required": false; }; "justify": { "alias": "justify"; "required": false; }; "label": { "alias": "label"; "required": false; }; "labelPlacement": { "alias": "labelPlacement"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "name": { "alias": "name"; "required": false; }; "okText": { "alias": "okText"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "selectedText": { "alias": "selectedText"; "required": false; }; "shape": { "alias": "shape"; "required": false; }; "toggleIcon": { "alias": "toggleIcon"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, {}, never, ["*"], true, never>;
12
+ static ngAcceptInputType_disabled: boolean | string | null | undefined;
13
+ static ngAcceptInputType_multiple: boolean | string | null | undefined;
12
14
  }
13
15
  export declare interface IonSelect extends Components.IonSelect {
14
16
  /**
@@ -3,13 +3,14 @@ import { ChangeDetectionStrategy, Component, HostListener, forwardRef, } from '@
3
3
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
4
4
  import { ValueAccessor } from '@ionic/angular/common';
5
5
  import { defineCustomElement } from '@ionic/core/components/ion-select.js';
6
+ import { nullableBooleanAttribute } from './angular-component-lib/boolean-attribute';
6
7
  import { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';
7
8
  import * as i0 from "@angular/core";
8
9
  const SELECT_INPUTS = [
9
10
  'cancelText',
10
11
  'color',
11
12
  'compareWith',
12
- 'disabled',
13
+ { name: 'disabled', transform: nullableBooleanAttribute },
13
14
  'errorText',
14
15
  'expandedIcon',
15
16
  'fill',
@@ -20,7 +21,7 @@ const SELECT_INPUTS = [
20
21
  'label',
21
22
  'labelPlacement',
22
23
  'mode',
23
- 'multiple',
24
+ { name: 'multiple', transform: nullableBooleanAttribute },
24
25
  'name',
25
26
  'okText',
26
27
  'placeholder',
@@ -29,6 +30,8 @@ const SELECT_INPUTS = [
29
30
  'toggleIcon',
30
31
  'value',
31
32
  ];
33
+ /* ProxyCmp only needs the names, and runs at runtime rather than through the Angular compiler. */
34
+ const SELECT_PROXY_INPUTS = SELECT_INPUTS.map((input) => (typeof input === 'string' ? input : input.name));
32
35
  let IonSelect = class IonSelect extends ValueAccessor {
33
36
  z;
34
37
  el;
@@ -43,7 +46,7 @@ let IonSelect = class IonSelect extends ValueAccessor {
43
46
  this.handleValueChange(el, el.value);
44
47
  }
45
48
  /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: IonSelect, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
46
- /** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.0", type: IonSelect, isStandalone: true, selector: "ion-select", inputs: { cancelText: "cancelText", color: "color", compareWith: "compareWith", disabled: "disabled", errorText: "errorText", expandedIcon: "expandedIcon", fill: "fill", helperText: "helperText", interface: "interface", interfaceOptions: "interfaceOptions", justify: "justify", label: "label", labelPlacement: "labelPlacement", 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: [
49
+ /** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "22.0.0", type: IonSelect, isStandalone: true, selector: "ion-select", inputs: { cancelText: "cancelText", color: "color", compareWith: "compareWith", disabled: ["disabled", "disabled", nullableBooleanAttribute], errorText: "errorText", expandedIcon: "expandedIcon", fill: "fill", helperText: "helperText", interface: "interface", interfaceOptions: "interfaceOptions", justify: "justify", label: "label", labelPlacement: "labelPlacement", mode: "mode", multiple: ["multiple", "multiple", nullableBooleanAttribute], name: "name", okText: "okText", placeholder: "placeholder", selectedText: "selectedText", shape: "shape", toggleIcon: "toggleIcon", value: "value" }, host: { listeners: { "ionChange": "handleIonChange($event.target)" } }, providers: [
47
50
  {
48
51
  provide: NG_VALUE_ACCESSOR,
49
52
  useExisting: forwardRef((() => IonSelect)),
@@ -54,7 +57,7 @@ let IonSelect = class IonSelect extends ValueAccessor {
54
57
  IonSelect = __decorate([
55
58
  ProxyCmp({
56
59
  defineCustomElementFn: defineCustomElement,
57
- inputs: SELECT_INPUTS,
60
+ inputs: SELECT_PROXY_INPUTS,
58
61
  methods: ['open'],
59
62
  })
60
63
  ], IonSelect);
@@ -1 +1 @@
1
- {"version":3,"file":"select.js","sourceRoot":"","sources":["../../../src/standalone/directives/select.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,uBAAuB,EAEvB,SAAS,EAGT,YAAY,EAGZ,UAAU,GACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAE3E,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;;AAEvE,MAAM,aAAa,GAAG;IACpB,YAAY;IACZ,OAAO;IACP,aAAa;IACb,UAAU;IACV,WAAW;IACX,cAAc;IACd,MAAM;IACN,YAAY;IACZ,WAAW;IACX,kBAAkB;IAClB,SAAS;IACT,OAAO;IACP,gBAAgB;IAChB,MAAM;IACN,UAAU;IACV,MAAM;IACN,QAAQ;IACR,aAAa;IACb,cAAc;IACd,OAAO;IACP,YAAY;IACZ,OAAO;CACR,CAAC;AAsBK,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,aAAa;IAEiB;IADjD,EAAE,CAAc;IAC1B,YAAY,CAAoB,EAAE,CAAa,EAAY,CAAS,EAAE,QAAkB;QACtF,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QADsC,MAAC,GAAD,CAAC,CAAQ;QAElE,CAAC,CAAC,MAAM,EAAE,CAAC;QACX,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,aAAa,CAAC;QAC1B,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;IAC/F,CAAC;IAGD,eAAe,CAAC,EAAwB;QACtC,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;0HAZU,SAAS;8GAAT,SAAS,moBATT;YACT;gBACE,OAAO,EAAE,iBAAiB;gBAC1B,WAAW,EAAE,UAAU,EAAC,GAAG,EAAE,CAAC,SAAS,EAAC;gBACxC,KAAK,EAAE,IAAI;aACZ;SACF,iDATS,2BAA2B;;AAY1B,SAAS;IApBrB,QAAQ,CAAC;QACR,qBAAqB,EAAE,mBAAmB;QAC1C,MAAM,EAAE,aAAa;QACrB,OAAO,EAAE,CAAC,MAAM,CAAC;KAClB,CAAC;GAgBW,SAAS,CAarB;;2FAbY,SAAS;kBAfrB,SAAS;mBAAC;oBACT,QAAQ,EAAE,YAAY;oBACtB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,QAAQ,EAAE,2BAA2B;oBACrC,uEAAuE;oBACvE,MAAM,EAAE,aAAa;oBACrB,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,EAAC,GAAG,EAAE,UAAU,EAAC;4BACxC,KAAK,EAAE,IAAI;yBACZ;qBACF;oBACD,UAAU,EAAE,IAAI;iBACjB;;sBAUE,YAAY;uBAAC,WAAW,EAAE,CAAC,eAAe,CAAC","sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n HostListener,\n Injector,\n NgZone,\n forwardRef,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ValueAccessor } from '@ionic/angular/common';\nimport type { SelectChangeEventDetail, Components } from '@ionic/core/components';\nimport { defineCustomElement } from '@ionic/core/components/ion-select.js';\n\nimport { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';\n\nconst SELECT_INPUTS = [\n 'cancelText',\n 'color',\n 'compareWith',\n 'disabled',\n 'errorText',\n 'expandedIcon',\n 'fill',\n 'helperText',\n 'interface',\n 'interfaceOptions',\n 'justify',\n 'label',\n 'labelPlacement',\n 'mode',\n 'multiple',\n 'name',\n 'okText',\n 'placeholder',\n 'selectedText',\n 'shape',\n 'toggleIcon',\n 'value',\n];\n\n@ProxyCmp({\n defineCustomElementFn: defineCustomElement,\n inputs: SELECT_INPUTS,\n methods: ['open'],\n})\n@Component({\n selector: 'ion-select',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: SELECT_INPUTS,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => IonSelect),\n multi: true,\n },\n ],\n standalone: true,\n})\nexport class IonSelect extends ValueAccessor {\n protected el: HTMLElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone, injector: Injector) {\n super(injector, r);\n c.detach();\n this.el = r.nativeElement;\n proxyOutputs(this, this.el, ['ionChange', 'ionCancel', 'ionDismiss', 'ionFocus', 'ionBlur']);\n }\n\n @HostListener('ionChange', ['$event.target'])\n handleIonChange(el: HTMLIonSelectElement): void {\n this.handleValueChange(el, el.value);\n }\n}\n\nexport declare interface IonSelect extends Components.IonSelect {\n /**\n * Emitted when the value has changed.\n */\n ionChange: EventEmitter<CustomEvent<SelectChangeEventDetail>>;\n /**\n * Emitted when the selection is cancelled.\n */\n ionCancel: EventEmitter<CustomEvent<void>>;\n /**\n * Emitted when the overlay is dismissed.\n */\n ionDismiss: EventEmitter<CustomEvent<void>>;\n /**\n * Emitted when the select has focus.\n */\n ionFocus: EventEmitter<CustomEvent<void>>;\n /**\n * Emitted when the select loses focus.\n */\n ionBlur: EventEmitter<CustomEvent<void>>;\n}\n"]}
1
+ {"version":3,"file":"select.js","sourceRoot":"","sources":["../../../src/standalone/directives/select.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,uBAAuB,EAEvB,SAAS,EAGT,YAAY,EAGZ,UAAU,GACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAE3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AACrF,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;;AAEvE,MAAM,aAAa,GAAG;IACpB,YAAY;IACZ,OAAO;IACP,aAAa;IACb,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,wBAAwB,EAAE;IACzD,WAAW;IACX,cAAc;IACd,MAAM;IACN,YAAY;IACZ,WAAW;IACX,kBAAkB;IAClB,SAAS;IACT,OAAO;IACP,gBAAgB;IAChB,MAAM;IACN,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,wBAAwB,EAAE;IACzD,MAAM;IACN,QAAQ;IACR,aAAa;IACb,cAAc;IACd,OAAO;IACP,YAAY;IACZ,OAAO;CACR,CAAC;AAEF,kGAAkG;AAClG,MAAM,mBAAmB,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AAsBpG,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,aAAa;IAEiB;IADjD,EAAE,CAAc;IAC1B,YAAY,CAAoB,EAAE,CAAa,EAAY,CAAS,EAAE,QAAkB;QACtF,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QADsC,MAAC,GAAD,CAAC,CAAQ;QAElE,CAAC,CAAC,MAAM,EAAE,CAAC;QACX,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,aAAa,CAAC;QAC1B,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;IAC/F,CAAC;IAGD,eAAe,CAAC,EAAwB;QACtC,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;0HAZU,SAAS;8GAAT,SAAS,iKA5CW,wBAAwB,sRAWxB,wBAAwB,4OAwB5C;YACT;gBACE,OAAO,EAAE,iBAAiB;gBAC1B,WAAW,EAAE,UAAU,EAAC,GAAG,EAAE,CAAC,SAAS,EAAC;gBACxC,KAAK,EAAE,IAAI;aACZ;SACF,iDATS,2BAA2B;;AAY1B,SAAS;IApBrB,QAAQ,CAAC;QACR,qBAAqB,EAAE,mBAAmB;QAC1C,MAAM,EAAE,mBAAmB;QAC3B,OAAO,EAAE,CAAC,MAAM,CAAC;KAClB,CAAC;GAgBW,SAAS,CAarB;;2FAbY,SAAS;kBAfrB,SAAS;mBAAC;oBACT,QAAQ,EAAE,YAAY;oBACtB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,QAAQ,EAAE,2BAA2B;oBACrC,uEAAuE;oBACvE,MAAM,EAAE,aAAa;oBACrB,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,EAAC,GAAG,EAAE,UAAU,EAAC;4BACxC,KAAK,EAAE,IAAI;yBACZ;qBACF;oBACD,UAAU,EAAE,IAAI;iBACjB;;sBAUE,YAAY;uBAAC,WAAW,EAAE,CAAC,eAAe,CAAC","sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n HostListener,\n Injector,\n NgZone,\n forwardRef,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ValueAccessor } from '@ionic/angular/common';\nimport type { SelectChangeEventDetail, Components } from '@ionic/core/components';\nimport { defineCustomElement } from '@ionic/core/components/ion-select.js';\n\nimport { nullableBooleanAttribute } from './angular-component-lib/boolean-attribute';\nimport { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';\n\nconst SELECT_INPUTS = [\n 'cancelText',\n 'color',\n 'compareWith',\n { name: 'disabled', transform: nullableBooleanAttribute },\n 'errorText',\n 'expandedIcon',\n 'fill',\n 'helperText',\n 'interface',\n 'interfaceOptions',\n 'justify',\n 'label',\n 'labelPlacement',\n 'mode',\n { name: 'multiple', transform: nullableBooleanAttribute },\n 'name',\n 'okText',\n 'placeholder',\n 'selectedText',\n 'shape',\n 'toggleIcon',\n 'value',\n];\n\n/* ProxyCmp only needs the names, and runs at runtime rather than through the Angular compiler. */\nconst SELECT_PROXY_INPUTS = SELECT_INPUTS.map((input) => (typeof input === 'string' ? input : input.name));\n\n@ProxyCmp({\n defineCustomElementFn: defineCustomElement,\n inputs: SELECT_PROXY_INPUTS,\n methods: ['open'],\n})\n@Component({\n selector: 'ion-select',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: SELECT_INPUTS,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => IonSelect),\n multi: true,\n },\n ],\n standalone: true,\n})\nexport class IonSelect extends ValueAccessor {\n protected el: HTMLElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone, injector: Injector) {\n super(injector, r);\n c.detach();\n this.el = r.nativeElement;\n proxyOutputs(this, this.el, ['ionChange', 'ionCancel', 'ionDismiss', 'ionFocus', 'ionBlur']);\n }\n\n @HostListener('ionChange', ['$event.target'])\n handleIonChange(el: HTMLIonSelectElement): void {\n this.handleValueChange(el, el.value);\n }\n}\n\nexport declare interface IonSelect extends Components.IonSelect {\n /**\n * Emitted when the value has changed.\n */\n ionChange: EventEmitter<CustomEvent<SelectChangeEventDetail>>;\n /**\n * Emitted when the selection is cancelled.\n */\n ionCancel: EventEmitter<CustomEvent<void>>;\n /**\n * Emitted when the overlay is dismissed.\n */\n ionDismiss: EventEmitter<CustomEvent<void>>;\n /**\n * Emitted when the select has focus.\n */\n ionFocus: EventEmitter<CustomEvent<void>>;\n /**\n * Emitted when the select loses focus.\n */\n ionBlur: EventEmitter<CustomEvent<void>>;\n}\n"]}
@@ -9,6 +9,14 @@ export declare class IonTextarea extends ValueAccessor {
9
9
  handleIonInput(el: HTMLIonTextareaElement): void;
10
10
  static ɵfac: i0.ɵɵFactoryDeclaration<IonTextarea, never>;
11
11
  static ɵcmp: i0.ɵɵComponentDeclaration<IonTextarea, "ion-textarea", never, { "autoGrow": { "alias": "autoGrow"; "required": false; }; "autocapitalize": { "alias": "autocapitalize"; "required": false; }; "autofocus": { "alias": "autofocus"; "required": false; }; "clearOnEdit": { "alias": "clearOnEdit"; "required": false; }; "color": { "alias": "color"; "required": false; }; "cols": { "alias": "cols"; "required": false; }; "counter": { "alias": "counter"; "required": false; }; "counterFormatter": { "alias": "counterFormatter"; "required": false; }; "debounce": { "alias": "debounce"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "enterkeyhint": { "alias": "enterkeyhint"; "required": false; }; "errorText": { "alias": "errorText"; "required": false; }; "fill": { "alias": "fill"; "required": false; }; "helperText": { "alias": "helperText"; "required": false; }; "inputmode": { "alias": "inputmode"; "required": false; }; "label": { "alias": "label"; "required": false; }; "labelPlacement": { "alias": "labelPlacement"; "required": false; }; "maxlength": { "alias": "maxlength"; "required": false; }; "minlength": { "alias": "minlength"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "name": { "alias": "name"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "required": { "alias": "required"; "required": false; }; "rows": { "alias": "rows"; "required": false; }; "shape": { "alias": "shape"; "required": false; }; "spellcheck": { "alias": "spellcheck"; "required": false; }; "value": { "alias": "value"; "required": false; }; "wrap": { "alias": "wrap"; "required": false; }; }, {}, never, ["*"], true, never>;
12
+ static ngAcceptInputType_autoGrow: boolean | string | null | undefined;
13
+ static ngAcceptInputType_autofocus: boolean | string | null | undefined;
14
+ static ngAcceptInputType_clearOnEdit: boolean | string | null | undefined;
15
+ static ngAcceptInputType_counter: boolean | string | null | undefined;
16
+ static ngAcceptInputType_disabled: boolean | string | null | undefined;
17
+ static ngAcceptInputType_readonly: boolean | string | null | undefined;
18
+ static ngAcceptInputType_required: boolean | string | null | undefined;
19
+ static ngAcceptInputType_spellcheck: boolean | string | null | undefined;
12
20
  }
13
21
  export declare interface IonTextarea extends Components.IonTextarea {
14
22
  /**
@@ -3,19 +3,20 @@ import { ChangeDetectionStrategy, Component, HostListener, forwardRef, } from '@
3
3
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
4
4
  import { ValueAccessor } from '@ionic/angular/common';
5
5
  import { defineCustomElement } from '@ionic/core/components/ion-textarea.js';
6
+ import { nullableBooleanAttribute } from './angular-component-lib/boolean-attribute';
6
7
  import { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';
7
8
  import * as i0 from "@angular/core";
8
9
  const TEXTAREA_INPUTS = [
9
- 'autoGrow',
10
+ { name: 'autoGrow', transform: nullableBooleanAttribute },
10
11
  'autocapitalize',
11
- 'autofocus',
12
- 'clearOnEdit',
12
+ { name: 'autofocus', transform: nullableBooleanAttribute },
13
+ { name: 'clearOnEdit', transform: nullableBooleanAttribute },
13
14
  'color',
14
15
  'cols',
15
- 'counter',
16
+ { name: 'counter', transform: nullableBooleanAttribute },
16
17
  'counterFormatter',
17
18
  'debounce',
18
- 'disabled',
19
+ { name: 'disabled', transform: nullableBooleanAttribute },
19
20
  'enterkeyhint',
20
21
  'errorText',
21
22
  'fill',
@@ -28,14 +29,16 @@ const TEXTAREA_INPUTS = [
28
29
  'mode',
29
30
  'name',
30
31
  'placeholder',
31
- 'readonly',
32
- 'required',
32
+ { name: 'readonly', transform: nullableBooleanAttribute },
33
+ { name: 'required', transform: nullableBooleanAttribute },
33
34
  'rows',
34
35
  'shape',
35
- 'spellcheck',
36
+ { name: 'spellcheck', transform: nullableBooleanAttribute },
36
37
  'value',
37
38
  'wrap',
38
39
  ];
40
+ /* ProxyCmp only needs the names, and runs at runtime rather than through the Angular compiler. */
41
+ const TEXTAREA_PROXY_INPUTS = TEXTAREA_INPUTS.map((input) => (typeof input === 'string' ? input : input.name));
39
42
  let IonTextarea = class IonTextarea extends ValueAccessor {
40
43
  z;
41
44
  el;
@@ -50,7 +53,7 @@ let IonTextarea = class IonTextarea extends ValueAccessor {
50
53
  this.handleValueChange(el, el.value);
51
54
  }
52
55
  /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: IonTextarea, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
53
- /** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.0", 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", 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: [
56
+ /** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "22.0.0", type: IonTextarea, isStandalone: true, selector: "ion-textarea", inputs: { autoGrow: ["autoGrow", "autoGrow", nullableBooleanAttribute], autocapitalize: "autocapitalize", autofocus: ["autofocus", "autofocus", nullableBooleanAttribute], clearOnEdit: ["clearOnEdit", "clearOnEdit", nullableBooleanAttribute], color: "color", cols: "cols", counter: ["counter", "counter", nullableBooleanAttribute], counterFormatter: "counterFormatter", debounce: "debounce", disabled: ["disabled", "disabled", nullableBooleanAttribute], enterkeyhint: "enterkeyhint", errorText: "errorText", fill: "fill", helperText: "helperText", inputmode: "inputmode", label: "label", labelPlacement: "labelPlacement", maxlength: "maxlength", minlength: "minlength", mode: "mode", name: "name", placeholder: "placeholder", readonly: ["readonly", "readonly", nullableBooleanAttribute], required: ["required", "required", nullableBooleanAttribute], rows: "rows", shape: "shape", spellcheck: ["spellcheck", "spellcheck", nullableBooleanAttribute], value: "value", wrap: "wrap" }, host: { listeners: { "ionInput": "handleIonInput($event.target)" } }, providers: [
54
57
  {
55
58
  provide: NG_VALUE_ACCESSOR,
56
59
  useExisting: forwardRef((() => IonTextarea)),
@@ -61,7 +64,7 @@ let IonTextarea = class IonTextarea extends ValueAccessor {
61
64
  IonTextarea = __decorate([
62
65
  ProxyCmp({
63
66
  defineCustomElementFn: defineCustomElement,
64
- inputs: TEXTAREA_INPUTS,
67
+ inputs: TEXTAREA_PROXY_INPUTS,
65
68
  methods: ['setFocus', 'getInputElement'],
66
69
  })
67
70
  ], IonTextarea);
@@ -1 +1 @@
1
- {"version":3,"file":"textarea.js","sourceRoot":"","sources":["../../../src/standalone/directives/textarea.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,uBAAuB,EAEvB,SAAS,EAGT,YAAY,EAGZ,UAAU,GACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAE7E,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;;AAEvE,MAAM,eAAe,GAAG;IACtB,UAAU;IACV,gBAAgB;IAChB,WAAW;IACX,aAAa;IACb,OAAO;IACP,MAAM;IACN,SAAS;IACT,kBAAkB;IAClB,UAAU;IACV,UAAU;IACV,cAAc;IACd,WAAW;IACX,MAAM;IACN,YAAY;IACZ,WAAW;IACX,OAAO;IACP,gBAAgB;IAChB,WAAW;IACX,WAAW;IACX,MAAM;IACN,MAAM;IACN,aAAa;IACb,UAAU;IACV,UAAU;IACV,MAAM;IACN,OAAO;IACP,YAAY;IACZ,OAAO;IACP,MAAM;CACP,CAAC;AAsBK,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,aAAa;IAEe;IADjD,EAAE,CAAc;IAC1B,YAAY,CAAoB,EAAE,CAAa,EAAY,CAAS,EAAE,QAAkB;QACtF,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QADsC,MAAC,GAAD,CAAC,CAAQ;QAElE,CAAC,CAAC,MAAM,EAAE,CAAC;QACX,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,aAAa,CAAC;QAC1B,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;IAChF,CAAC;IAGD,cAAc,CAAC,EAA0B;QACvC,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;0HAZU,WAAW;8GAAX,WAAW,+wBATX;YACT;gBACE,OAAO,EAAE,iBAAiB;gBAC1B,WAAW,EAAE,UAAU,EAAC,GAAG,EAAE,CAAC,WAAW,EAAC;gBAC1C,KAAK,EAAE,IAAI;aACZ;SACF,iDATS,2BAA2B;;AAY1B,WAAW;IApBvB,QAAQ,CAAC;QACR,qBAAqB,EAAE,mBAAmB;QAC1C,MAAM,EAAE,eAAe;QACvB,OAAO,EAAE,CAAC,UAAU,EAAE,iBAAiB,CAAC;KACzC,CAAC;GAgBW,WAAW,CAavB;;2FAbY,WAAW;kBAfvB,SAAS;mBAAC;oBACT,QAAQ,EAAE,cAAc;oBACxB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,QAAQ,EAAE,2BAA2B;oBACrC,uEAAuE;oBACvE,MAAM,EAAE,eAAe;oBACvB,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,EAAC,GAAG,EAAE,YAAY,EAAC;4BAC1C,KAAK,EAAE,IAAI;yBACZ;qBACF;oBACD,UAAU,EAAE,IAAI;iBACjB;;sBAUE,YAAY;uBAAC,UAAU,EAAE,CAAC,eAAe,CAAC","sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n HostListener,\n Injector,\n NgZone,\n forwardRef,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ValueAccessor } from '@ionic/angular/common';\nimport type { TextareaChangeEventDetail, TextareaInputEventDetail, Components } from '@ionic/core/components';\nimport { defineCustomElement } from '@ionic/core/components/ion-textarea.js';\n\nimport { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';\n\nconst TEXTAREA_INPUTS = [\n 'autoGrow',\n 'autocapitalize',\n 'autofocus',\n 'clearOnEdit',\n 'color',\n 'cols',\n 'counter',\n 'counterFormatter',\n 'debounce',\n 'disabled',\n 'enterkeyhint',\n 'errorText',\n 'fill',\n 'helperText',\n 'inputmode',\n 'label',\n 'labelPlacement',\n 'maxlength',\n 'minlength',\n 'mode',\n 'name',\n 'placeholder',\n 'readonly',\n 'required',\n 'rows',\n 'shape',\n 'spellcheck',\n 'value',\n 'wrap',\n];\n\n@ProxyCmp({\n defineCustomElementFn: defineCustomElement,\n inputs: TEXTAREA_INPUTS,\n methods: ['setFocus', 'getInputElement'],\n})\n@Component({\n selector: 'ion-textarea',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: TEXTAREA_INPUTS,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => IonTextarea),\n multi: true,\n },\n ],\n standalone: true,\n})\nexport class IonTextarea extends ValueAccessor {\n protected el: HTMLElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone, injector: Injector) {\n super(injector, r);\n c.detach();\n this.el = r.nativeElement;\n proxyOutputs(this, this.el, ['ionChange', 'ionInput', 'ionBlur', 'ionFocus']);\n }\n\n @HostListener('ionInput', ['$event.target'])\n handleIonInput(el: HTMLIonTextareaElement): void {\n this.handleValueChange(el, el.value);\n }\n}\n\nexport declare interface IonTextarea extends Components.IonTextarea {\n /**\n * The `ionChange` event is fired when the user modifies the textarea's value.\nUnlike the `ionInput` event, the `ionChange` event is fired when\nthe element loses focus after its value has been modified.\n */\n ionChange: EventEmitter<CustomEvent<TextareaChangeEventDetail>>;\n /**\n * The `ionInput` event is fired each time the user modifies the textarea's value.\nUnlike the `ionChange` event, the `ionInput` event is fired for each alteration\nto the textarea's value. This typically happens for each keystroke as the user types.\n\nWhen `clearOnEdit` is enabled, the `ionInput` event will be fired when\nthe user clears the textarea by performing a keydown event.\n */\n ionInput: EventEmitter<CustomEvent<TextareaInputEventDetail>>;\n /**\n * Emitted when the input loses focus.\n */\n ionBlur: EventEmitter<CustomEvent<FocusEvent>>;\n /**\n * Emitted when the input has focus.\n */\n ionFocus: EventEmitter<CustomEvent<FocusEvent>>;\n}\n"]}
1
+ {"version":3,"file":"textarea.js","sourceRoot":"","sources":["../../../src/standalone/directives/textarea.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n HostListener,\n Injector,\n NgZone,\n forwardRef,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ValueAccessor } from '@ionic/angular/common';\nimport type { TextareaChangeEventDetail, TextareaInputEventDetail, Components } from '@ionic/core/components';\nimport { defineCustomElement } from '@ionic/core/components/ion-textarea.js';\n\nimport { nullableBooleanAttribute } from './angular-component-lib/boolean-attribute';\nimport { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';\n\nconst TEXTAREA_INPUTS = [\n { name: 'autoGrow', transform: nullableBooleanAttribute },\n 'autocapitalize',\n { name: 'autofocus', transform: nullableBooleanAttribute },\n { name: 'clearOnEdit', transform: nullableBooleanAttribute },\n 'color',\n 'cols',\n { name: 'counter', transform: nullableBooleanAttribute },\n 'counterFormatter',\n 'debounce',\n { name: 'disabled', transform: nullableBooleanAttribute },\n 'enterkeyhint',\n 'errorText',\n 'fill',\n 'helperText',\n 'inputmode',\n 'label',\n 'labelPlacement',\n 'maxlength',\n 'minlength',\n 'mode',\n 'name',\n 'placeholder',\n { name: 'readonly', transform: nullableBooleanAttribute },\n { name: 'required', transform: nullableBooleanAttribute },\n 'rows',\n 'shape',\n { name: 'spellcheck', transform: nullableBooleanAttribute },\n 'value',\n 'wrap',\n];\n\n/* ProxyCmp only needs the names, and runs at runtime rather than through the Angular compiler. */\nconst TEXTAREA_PROXY_INPUTS = TEXTAREA_INPUTS.map((input) => (typeof input === 'string' ? input : input.name));\n\n@ProxyCmp({\n defineCustomElementFn: defineCustomElement,\n inputs: TEXTAREA_PROXY_INPUTS,\n methods: ['setFocus', 'getInputElement'],\n})\n@Component({\n selector: 'ion-textarea',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: TEXTAREA_INPUTS,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => IonTextarea),\n multi: true,\n },\n ],\n standalone: true,\n})\nexport class IonTextarea extends ValueAccessor {\n protected el: HTMLElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone, injector: Injector) {\n super(injector, r);\n c.detach();\n this.el = r.nativeElement;\n proxyOutputs(this, this.el, ['ionChange', 'ionInput', 'ionBlur', 'ionFocus']);\n }\n\n @HostListener('ionInput', ['$event.target'])\n handleIonInput(el: HTMLIonTextareaElement): void {\n this.handleValueChange(el, el.value);\n }\n}\n\nexport declare interface IonTextarea extends Components.IonTextarea {\n /**\n * The `ionChange` event is fired when the user modifies the textarea's value.\nUnlike the `ionInput` event, the `ionChange` event is fired when\nthe element loses focus after its value has been modified.\n */\n ionChange: EventEmitter<CustomEvent<TextareaChangeEventDetail>>;\n /**\n * The `ionInput` event is fired each time the user modifies the textarea's value.\nUnlike the `ionChange` event, the `ionInput` event is fired for each alteration\nto the textarea's value. This typically happens for each keystroke as the user types.\n\nWhen `clearOnEdit` is enabled, the `ionInput` event will be fired when\nthe user clears the textarea by performing a keydown event.\n */\n ionInput: EventEmitter<CustomEvent<TextareaInputEventDetail>>;\n /**\n * Emitted when the input loses focus.\n */\n ionBlur: EventEmitter<CustomEvent<FocusEvent>>;\n /**\n * Emitted when the input has focus.\n */\n ionFocus: EventEmitter<CustomEvent<FocusEvent>>;\n}\n"]}
@@ -10,6 +10,9 @@ export declare class IonToggle extends ValueAccessor {
10
10
  handleIonChange(el: HTMLIonToggleElement): void;
11
11
  static ɵfac: i0.ɵɵFactoryDeclaration<IonToggle, never>;
12
12
  static ɵcmp: i0.ɵɵComponentDeclaration<IonToggle, "ion-toggle", never, { "checked": { "alias": "checked"; "required": false; }; "color": { "alias": "color"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "enableOnOffLabels": { "alias": "enableOnOffLabels"; "required": false; }; "errorText": { "alias": "errorText"; "required": false; }; "helperText": { "alias": "helperText"; "required": false; }; "justify": { "alias": "justify"; "required": false; }; "labelPlacement": { "alias": "labelPlacement"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "name": { "alias": "name"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, {}, never, ["*"], true, never>;
13
+ static ngAcceptInputType_checked: boolean | string | null | undefined;
14
+ static ngAcceptInputType_disabled: boolean | string | null | undefined;
15
+ static ngAcceptInputType_enableOnOffLabels: boolean | string | null | undefined;
13
16
  }
14
17
  export declare interface IonToggle extends Components.IonToggle {
15
18
  /**
@@ -3,13 +3,14 @@ import { ChangeDetectionStrategy, Component, HostListener, forwardRef, } from '@
3
3
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
4
4
  import { ValueAccessor, setIonicClasses } from '@ionic/angular/common';
5
5
  import { defineCustomElement } from '@ionic/core/components/ion-toggle.js';
6
+ import { nullableBooleanAttribute } from './angular-component-lib/boolean-attribute';
6
7
  import { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';
7
8
  import * as i0 from "@angular/core";
8
9
  const TOGGLE_INPUTS = [
9
- 'checked',
10
+ { name: 'checked', transform: nullableBooleanAttribute },
10
11
  'color',
11
- 'disabled',
12
- 'enableOnOffLabels',
12
+ { name: 'disabled', transform: nullableBooleanAttribute },
13
+ { name: 'enableOnOffLabels', transform: nullableBooleanAttribute },
13
14
  'errorText',
14
15
  'helperText',
15
16
  'justify',
@@ -18,6 +19,8 @@ const TOGGLE_INPUTS = [
18
19
  'name',
19
20
  'value',
20
21
  ];
22
+ /* ProxyCmp only needs the names, and runs at runtime rather than through the Angular compiler. */
23
+ const TOGGLE_PROXY_INPUTS = TOGGLE_INPUTS.map((input) => (typeof input === 'string' ? input : input.name));
21
24
  let IonToggle = class IonToggle extends ValueAccessor {
22
25
  z;
23
26
  el;
@@ -36,7 +39,7 @@ let IonToggle = class IonToggle extends ValueAccessor {
36
39
  this.handleValueChange(el, el.checked);
37
40
  }
38
41
  /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: IonToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
39
- /** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.0", type: IonToggle, isStandalone: true, selector: "ion-toggle", inputs: { checked: "checked", color: "color", disabled: "disabled", enableOnOffLabels: "enableOnOffLabels", errorText: "errorText", helperText: "helperText", justify: "justify", labelPlacement: "labelPlacement", mode: "mode", name: "name", value: "value" }, host: { listeners: { "ionChange": "handleIonChange($event.target)" } }, providers: [
42
+ /** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "22.0.0", type: IonToggle, isStandalone: true, selector: "ion-toggle", inputs: { checked: ["checked", "checked", nullableBooleanAttribute], color: "color", disabled: ["disabled", "disabled", nullableBooleanAttribute], enableOnOffLabels: ["enableOnOffLabels", "enableOnOffLabels", nullableBooleanAttribute], errorText: "errorText", helperText: "helperText", justify: "justify", labelPlacement: "labelPlacement", mode: "mode", name: "name", value: "value" }, host: { listeners: { "ionChange": "handleIonChange($event.target)" } }, providers: [
40
43
  {
41
44
  provide: NG_VALUE_ACCESSOR,
42
45
  useExisting: forwardRef((() => IonToggle)),
@@ -47,7 +50,7 @@ let IonToggle = class IonToggle extends ValueAccessor {
47
50
  IonToggle = __decorate([
48
51
  ProxyCmp({
49
52
  defineCustomElementFn: defineCustomElement,
50
- inputs: TOGGLE_INPUTS,
53
+ inputs: TOGGLE_PROXY_INPUTS,
51
54
  })
52
55
  ], IonToggle);
53
56
  export { IonToggle };
@@ -1 +1 @@
1
- {"version":3,"file":"toggle.js","sourceRoot":"","sources":["../../../src/standalone/directives/toggle.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,uBAAuB,EAEvB,SAAS,EAGT,YAAY,EAGZ,UAAU,GACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAE3E,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;;AAEvE,MAAM,aAAa,GAAG;IACpB,SAAS;IACT,OAAO;IACP,UAAU;IACV,mBAAmB;IACnB,WAAW;IACX,YAAY;IACZ,SAAS;IACT,gBAAgB;IAChB,MAAM;IACN,MAAM;IACN,OAAO;CACR,CAAC;AAqBK,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,aAAa;IAEiB;IADjD,EAAE,CAAc;IAC1B,YAAY,CAAoB,EAAE,CAAa,EAAY,CAAS,EAAE,QAAkB;QACtF,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QADsC,MAAC,GAAD,CAAC,CAAQ;QAElE,CAAC,CAAC,MAAM,EAAE,CAAC;QACX,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,aAAa,CAAC;QAC1B,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,UAAU,CAAC,KAAc;QACvB,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QAC/D,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACnC,CAAC;IAGD,eAAe,CAAC,EAAwB;QACtC,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;0HAjBU,SAAS;8GAAT,SAAS,mYATT;YACT;gBACE,OAAO,EAAE,iBAAiB;gBAC1B,WAAW,EAAE,UAAU,EAAC,GAAG,EAAE,CAAC,SAAS,EAAC;gBACxC,KAAK,EAAE,IAAI;aACZ;SACF,iDATS,2BAA2B;;AAY1B,SAAS;IAnBrB,QAAQ,CAAC;QACR,qBAAqB,EAAE,mBAAmB;QAC1C,MAAM,EAAE,aAAa;KACtB,CAAC;GAgBW,SAAS,CAkBrB;;2FAlBY,SAAS;kBAfrB,SAAS;mBAAC;oBACT,QAAQ,EAAE,YAAY;oBACtB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,QAAQ,EAAE,2BAA2B;oBACrC,uEAAuE;oBACvE,MAAM,EAAE,aAAa;oBACrB,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,EAAC,GAAG,EAAE,UAAU,EAAC;4BACxC,KAAK,EAAE,IAAI;yBACZ;qBACF;oBACD,UAAU,EAAE,IAAI;iBACjB;;sBAeE,YAAY;uBAAC,WAAW,EAAE,CAAC,eAAe,CAAC","sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n HostListener,\n Injector,\n NgZone,\n forwardRef,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ValueAccessor, setIonicClasses } from '@ionic/angular/common';\nimport type { ToggleChangeEventDetail, Components } from '@ionic/core/components';\nimport { defineCustomElement } from '@ionic/core/components/ion-toggle.js';\n\nimport { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';\n\nconst TOGGLE_INPUTS = [\n 'checked',\n 'color',\n 'disabled',\n 'enableOnOffLabels',\n 'errorText',\n 'helperText',\n 'justify',\n 'labelPlacement',\n 'mode',\n 'name',\n 'value',\n];\n\n@ProxyCmp({\n defineCustomElementFn: defineCustomElement,\n inputs: TOGGLE_INPUTS,\n})\n@Component({\n selector: 'ion-toggle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: TOGGLE_INPUTS,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => IonToggle),\n multi: true,\n },\n ],\n standalone: true,\n})\nexport class IonToggle extends ValueAccessor {\n protected el: HTMLElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone, injector: Injector) {\n super(injector, r);\n c.detach();\n this.el = r.nativeElement;\n proxyOutputs(this, this.el, ['ionChange', 'ionFocus', 'ionBlur']);\n }\n\n writeValue(value: boolean): void {\n this.elementRef.nativeElement.checked = this.lastValue = value;\n setIonicClasses(this.elementRef);\n }\n\n @HostListener('ionChange', ['$event.target'])\n handleIonChange(el: HTMLIonToggleElement): void {\n this.handleValueChange(el, el.checked);\n }\n}\n\nexport declare interface IonToggle extends Components.IonToggle {\n /**\n * Emitted when the user switches the toggle on or off. Does not emit\nwhen programmatically changing the value of the `checked` property.\n */\n ionChange: EventEmitter<CustomEvent<ToggleChangeEventDetail>>;\n /**\n * Emitted when the toggle has focus.\n */\n ionFocus: EventEmitter<CustomEvent<void>>;\n /**\n * Emitted when the toggle loses focus.\n */\n ionBlur: EventEmitter<CustomEvent<void>>;\n}\n"]}
1
+ {"version":3,"file":"toggle.js","sourceRoot":"","sources":["../../../src/standalone/directives/toggle.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n HostListener,\n Injector,\n NgZone,\n forwardRef,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ValueAccessor, setIonicClasses } from '@ionic/angular/common';\nimport type { ToggleChangeEventDetail, Components } from '@ionic/core/components';\nimport { defineCustomElement } from '@ionic/core/components/ion-toggle.js';\n\nimport { nullableBooleanAttribute } from './angular-component-lib/boolean-attribute';\nimport { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';\n\nconst TOGGLE_INPUTS = [\n { name: 'checked', transform: nullableBooleanAttribute },\n 'color',\n { name: 'disabled', transform: nullableBooleanAttribute },\n { name: 'enableOnOffLabels', transform: nullableBooleanAttribute },\n 'errorText',\n 'helperText',\n 'justify',\n 'labelPlacement',\n 'mode',\n 'name',\n 'value',\n];\n\n/* ProxyCmp only needs the names, and runs at runtime rather than through the Angular compiler. */\nconst TOGGLE_PROXY_INPUTS = TOGGLE_INPUTS.map((input) => (typeof input === 'string' ? input : input.name));\n\n@ProxyCmp({\n defineCustomElementFn: defineCustomElement,\n inputs: TOGGLE_PROXY_INPUTS,\n})\n@Component({\n selector: 'ion-toggle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: TOGGLE_INPUTS,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => IonToggle),\n multi: true,\n },\n ],\n standalone: true,\n})\nexport class IonToggle extends ValueAccessor {\n protected el: HTMLElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone, injector: Injector) {\n super(injector, r);\n c.detach();\n this.el = r.nativeElement;\n proxyOutputs(this, this.el, ['ionChange', 'ionFocus', 'ionBlur']);\n }\n\n writeValue(value: boolean): void {\n this.elementRef.nativeElement.checked = this.lastValue = value;\n setIonicClasses(this.elementRef);\n }\n\n @HostListener('ionChange', ['$event.target'])\n handleIonChange(el: HTMLIonToggleElement): void {\n this.handleValueChange(el, el.checked);\n }\n}\n\nexport declare interface IonToggle extends Components.IonToggle {\n /**\n * Emitted when the user switches the toggle on or off. Does not emit\nwhen programmatically changing the value of the `checked` property.\n */\n ionChange: EventEmitter<CustomEvent<ToggleChangeEventDetail>>;\n /**\n * Emitted when the toggle has focus.\n */\n ionFocus: EventEmitter<CustomEvent<void>>;\n /**\n * Emitted when the toggle loses focus.\n */\n ionBlur: EventEmitter<CustomEvent<void>>;\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ionic/angular",
3
- "version": "9.0.4-dev.11789491273.11ab1c95",
3
+ "version": "9.0.4-dev.11789496656.1690cf55",
4
4
  "description": "Angular specific wrappers for @ionic/core",
5
5
  "keywords": [
6
6
  "ionic",
@@ -168,7 +168,7 @@
168
168
  "css/"
169
169
  ],
170
170
  "dependencies": {
171
- "@ionic/core": "9.0.4-dev.11789491273.11ab1c95",
171
+ "@ionic/core": "9.0.4-dev.11789496656.1690cf55",
172
172
  "ionicons": "^8.0.13",
173
173
  "jsonc-parser": "^3.0.0",
174
174
  "tslib": "^2.3.0"