From e9654436a6ad4074c2f4a9c8bf58fc736f143eb0 Mon Sep 17 00:00:00 2001 From: Brandy Carney Date: Wed, 3 Apr 2024 11:19:09 -0400 Subject: [PATCH] feat(input): add the large size for the ionic theme (#29249) Issue number: internal --------- ## What is the current behavior? Input does not have a size property. ## What is the new behavior? - Adds the `size` property with support for the `"large"` size on the `"ionic"` theme only - Adds tests for the size property - Note: the screenshots will not look right until the fill styles are added ## Does this introduce a breaking change? - [ ] Yes - [x] No --- core/api.txt | 1 + core/src/components.d.ts | 8 ++ core/src/components/input/input.ionic.scss | 9 ++ core/src/components/input/input.tsx | 19 +++++ .../src/components/input/test/size/index.html | 74 +++++++++++++++++ .../components/input/test/size/input.e2e.ts | 78 ++++++++++++++++++ ...ionic-md-ltr-light-Mobile-Chrome-linux.png | Bin 0 -> 2286 bytes ...onic-md-ltr-light-Mobile-Firefox-linux.png | Bin 0 -> 2603 bytes ...ionic-md-ltr-light-Mobile-Safari-linux.png | Bin 0 -> 1886 bytes ...ionic-md-ltr-light-Mobile-Chrome-linux.png | Bin 0 -> 2195 bytes ...onic-md-ltr-light-Mobile-Firefox-linux.png | Bin 0 -> 2532 bytes ...ionic-md-ltr-light-Mobile-Safari-linux.png | Bin 0 -> 1794 bytes ...ionic-md-ltr-light-Mobile-Chrome-linux.png | Bin 0 -> 2195 bytes ...onic-md-ltr-light-Mobile-Firefox-linux.png | Bin 0 -> 2532 bytes ...ionic-md-ltr-light-Mobile-Safari-linux.png | Bin 0 -> 1794 bytes ...ionic-md-ltr-light-Mobile-Chrome-linux.png | Bin 0 -> 2195 bytes ...onic-md-ltr-light-Mobile-Firefox-linux.png | Bin 0 -> 2532 bytes ...ionic-md-ltr-light-Mobile-Safari-linux.png | Bin 0 -> 1794 bytes packages/angular/src/directives/proxies.ts | 4 +- packages/vue/src/proxies.ts | 1 + 20 files changed, 192 insertions(+), 2 deletions(-) create mode 100644 core/src/components/input/test/size/index.html create mode 100644 core/src/components/input/test/size/input.e2e.ts create mode 100644 core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-ionic-md-ltr-light-Mobile-Chrome-linux.png create mode 100644 core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-ionic-md-ltr-light-Mobile-Firefox-linux.png create mode 100644 core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-ionic-md-ltr-light-Mobile-Safari-linux.png create mode 100644 core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-label-floating-ionic-md-ltr-light-Mobile-Chrome-linux.png create mode 100644 core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-label-floating-ionic-md-ltr-light-Mobile-Firefox-linux.png create mode 100644 core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-label-floating-ionic-md-ltr-light-Mobile-Safari-linux.png create mode 100644 core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-outline-ionic-md-ltr-light-Mobile-Chrome-linux.png create mode 100644 core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-outline-ionic-md-ltr-light-Mobile-Firefox-linux.png create mode 100644 core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-outline-ionic-md-ltr-light-Mobile-Safari-linux.png create mode 100644 core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-outline-round-ionic-md-ltr-light-Mobile-Chrome-linux.png create mode 100644 core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-outline-round-ionic-md-ltr-light-Mobile-Firefox-linux.png create mode 100644 core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-outline-round-ionic-md-ltr-light-Mobile-Safari-linux.png diff --git a/core/api.txt b/core/api.txt index f3fdbbd60a7..26be0122bdb 100644 --- a/core/api.txt +++ b/core/api.txt @@ -623,6 +623,7 @@ ion-input,prop,placeholder,string | undefined,undefined,false,false ion-input,prop,readonly,boolean,false,false,true ion-input,prop,required,boolean,false,false,false ion-input,prop,shape,"round" | undefined,undefined,false,false +ion-input,prop,size,"large" | undefined,undefined,false,false ion-input,prop,spellcheck,boolean,false,false,false ion-input,prop,step,string | undefined,undefined,false,false ion-input,prop,theme,"ios" | "md" | "ionic",undefined,false,false diff --git a/core/src/components.d.ts b/core/src/components.d.ts index eec75790d3c..9cd8c797dea 100644 --- a/core/src/components.d.ts +++ b/core/src/components.d.ts @@ -1450,6 +1450,10 @@ export namespace Components { * The shape of the input. If "round" it will have an increased border radius. */ "shape"?: 'round'; + /** + * The size of the input. If "large", it will have an increased height. By default the size is unset. This property only applies to the `"ionic"` theme. + */ + "size"?: 'large'; /** * If `true`, the element will have its spelling and grammar checked. */ @@ -6694,6 +6698,10 @@ declare namespace LocalJSX { * The shape of the input. If "round" it will have an increased border radius. */ "shape"?: 'round'; + /** + * The size of the input. If "large", it will have an increased height. By default the size is unset. This property only applies to the `"ionic"` theme. + */ + "size"?: 'large'; /** * If `true`, the element will have its spelling and grammar checked. */ diff --git a/core/src/components/input/input.ionic.scss b/core/src/components/input/input.ionic.scss index 3d1a752d807..863679e7c70 100644 --- a/core/src/components/input/input.ionic.scss +++ b/core/src/components/input/input.ionic.scss @@ -3,3 +3,12 @@ // Ionic Input // -------------------------------------------------- + + + +// Ionic Input Sizes +// -------------------------------------------------- + +:host(.input-size-large) { + min-height: 48px; +} diff --git a/core/src/components/input/input.tsx b/core/src/components/input/input.tsx index 227324f11b3..9208f170f02 100644 --- a/core/src/components/input/input.tsx +++ b/core/src/components/input/input.tsx @@ -4,6 +4,7 @@ import type { NotchController } from '@utils/forms'; import { createNotchController } from '@utils/forms'; import type { Attributes } from '@utils/helpers'; import { inheritAriaAttributes, debounceEvent, inheritAttributes, componentOnReady } from '@utils/helpers'; +import { printIonWarning } from '@utils/logging'; import { createSlotMutationController } from '@utils/slot-mutation-controller'; import type { SlotMutationController } from '@utils/slot-mutation-controller'; import { createColorClasses, hostContext } from '@utils/theme'; @@ -251,6 +252,12 @@ export class Input implements ComponentInterface { */ @Prop() step?: string; + /** + * The size of the input. If "large", it will have an increased height. By default the + * size is unset. This property only applies to the `"ionic"` theme. + */ + @Prop() size?: 'large'; + /** * The type of control to display. The default type is text. */ @@ -464,6 +471,16 @@ export class Input implements ComponentInterface { return typeof this.value === 'number' ? this.value.toString() : (this.value || '').toString(); } + private getSize() { + const theme = getIonTheme(this); + const { size } = this; + if (theme !== 'ionic' && size === 'large') { + printIonWarning(`The "${size}" size is not supported in the ${theme} theme.`); + return undefined; + } + return size; + } + private onInput = (ev: InputEvent | Event) => { const input = ev.target as HTMLInputElement | null; if (input) { @@ -686,6 +703,7 @@ export class Input implements ComponentInterface { const { disabled, fill, readonly, shape, inputId, labelPlacement, el, hasFocus } = this; const theme = getIonTheme(this); const value = this.getValue(); + const size = this.getSize(); const inItem = hostContext('ion-item', this.el); const shouldRenderHighlight = theme === 'md' && fill !== 'outline' && !inItem; @@ -721,6 +739,7 @@ export class Input implements ComponentInterface { 'label-floating': labelShouldFloat, [`input-fill-${fill}`]: fill !== undefined, [`input-shape-${shape}`]: shape !== undefined, + [`input-size-${size}`]: size !== undefined, [`input-label-placement-${labelPlacement}`]: true, 'in-item': inItem, 'in-item-color': hostContext('ion-item.ion-color', this.el), diff --git a/core/src/components/input/test/size/index.html b/core/src/components/input/test/size/index.html new file mode 100644 index 00000000000..06605abfa98 --- /dev/null +++ b/core/src/components/input/test/size/index.html @@ -0,0 +1,74 @@ + + + + + Input - Size + + + + + + + + + + + + + + Input - Size + + + + +
+
+

No Fill: No Size

+ +
+ +
+

Outline: No Size

+ +
+ +
+

No Fill: Large Size

+ +
+ +
+

Outline: Large Size

+ +
+
+
+
+ + diff --git a/core/src/components/input/test/size/input.e2e.ts b/core/src/components/input/test/size/input.e2e.ts new file mode 100644 index 00000000000..169219f9cf1 --- /dev/null +++ b/core/src/components/input/test/size/input.e2e.ts @@ -0,0 +1,78 @@ +import { expect } from '@playwright/test'; +import { configs, test } from '@utils/test/playwright'; + +/** + * Size is only available in the Ionic theme + */ +configs({ modes: ['ionic-md'], directions: ['ltr'] }).forEach(({ title, screenshot, config }) => { + test.describe(title('input: size'), () => { + test.describe('input: size large', () => { + test('should not have visual regressions', async ({ page }) => { + await page.setContent( + ` + + `, + config + ); + + const input = page.locator('ion-input'); + await expect(input).toHaveScreenshot(screenshot(`input-size-large`)); + }); + test('should render correctly with floating label', async ({ page }) => { + await page.setContent( + ` + + `, + config + ); + + const input = page.locator('ion-input'); + await expect(input).toHaveScreenshot(screenshot(`input-size-large-label-floating`)); + }); + test('should not have visual regressions with fill outline', async ({ page }) => { + await page.setContent( + ` + + `, + config + ); + + const input = page.locator('ion-input'); + await expect(input).toHaveScreenshot(screenshot(`input-size-large-outline`)); + }); + test('should not have visual regressions with fill outline and round shape', async ({ page }) => { + await page.setContent( + ` + + `, + config + ); + + const input = page.locator('ion-input'); + await expect(input).toHaveScreenshot(screenshot(`input-size-large-outline-round`)); + }); + }); + }); +}); diff --git a/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-ionic-md-ltr-light-Mobile-Chrome-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..5420110a6db2f57527cc554ff2afd92230dda4f3 GIT binary patch literal 2286 zcmb`J`#;m|AICo=Ms1N}&YPr^Lpij#S!TwD=3dHj3PU-CRL)VDvE1C0NzSJzGv_I% zD0fO$Lk=mC!;qX?4x{^X{|n#8_m}H>U%$K`@5Af)dR$3%=PaRO@?ro0Kyg+WA^->^ zfw3+`7(Ax}DfQqb5JI#>166FrIRJo^<1l9SVL3lO2iT-6?GagK_MfrmN`=gxAtG}y zZ_fvK``J2`4W2Ue<*W{P>*?#9lJRkMLz8>FO|tN0Y^^7(2eYP&&m$B|G3tpLxi@xP z`62HweZf`m*LGUwO}WpRZQN_kZ8uT+SP1+q1~ag)%SuEQQPeJLeV0o0tT{}jTFLxB z!_0%ge&Ib&o;-G(c#(3V=(9pnG zSWGNWyxd`bcr-Y8(cZy<+*gA8;M=e#?~1Ch@siy%qKIQF3TP1WUOhPOFuu4rMm~#1 zcc#%Xc)XaRq9XQ&!1v=XpM`LPrn)8mh}l(Sv)Na#U86KK7&Q8i+>MVHA~`wz^2;lH zds=Z@lGBdcoTMGn^Dbyl z`HV!71Inr>l!{n_;KalP1Ol1WGba)cj+S=OXt)G5PO--trnque6Z2lfY-JF-=^Z9OGUI{HNEw{Pb8!KwHb#;Hb zxTMVWKmLWRLMd2jBM=Zc#?!N8na7if4!&_is=v%uGNRSB(us90EIeE^0S&*kG^Ul4 zo7Q@D*#mc`ua+C*!d`(`}k6bsHlWfqrb%Y$LFM#m6gBs&~^Hh4ns3g@0&dtqHQ&UBNlCm<7?}H5FZ9ekD&M33F z+4y=$NKN?K%)~r8tJnLF@Kqs4h72g4{>KDMES9oxW~=VXdjtZ3-f}*6?3fjS@OpP= zdu3yV9G{R-SXBixG&BUKW)>WL@*>mq3puZ;3G5VEP*Nf!pCSzAad&s8CMS1-8`r(H zKmyKMTlWM`(`dA~_I6a&<#yNu{N9W=LMRk!VU%^?3Oi?WdSy0H8?nX0sdGMk5{v6_ zTbXGIUps;K;1pTdY5r!>7!0kbsHhJd4qU4Q80T^m`}&AJ+heVfKx|c&cGT9osFIRW z7BaYK;fuYwI#~I0HC!pNV{}wu>1#V(DF&psLLU{i5nEDn_!!cjE!Rv=dA(Aty&oPd_NMckj-vHV39_VM~jmtd46u zzEltx9v)WJ(t9yNp5a#Ynw*=i$|ve3;IDnmDP5RO-(&8^FIFou(3WT znUj-Kvf|qy4~0TaW=_hd0II!fFDozA#V(Td(xOyMqk!iz-l*?Oou*mNAk=fe629LN z+qW++BSZ2YR?XSjId+jNv+Ld4+j})I@b%Q23;}?UZ<@elGS_drxa4+S+1UDde8Bf+ zYWP1X3L=2+LmL_9X#)d+FVm;QQ8NJn0ZIeAF-EcyDW>KT1WyqDJd;QYRKd_{ue;%+ zl^>(5LVjZ$kNh{khMH}2gqE-d8bg-8PkQ~%ET`BtU;UwRsCFfT5xh2IOB)LO+#~>y znt~=`S9>4oiQr57zSS!~UrNW@*zl)!%^%RHSd}@Qq{c?W`}gm!%Z<;>3{KW#V{CJf z5}-sM6Y?ppOiN2kk@SoV&cHxCNMDD#3L0N}5C((k%BKW{gv8P5vf3`s<3TvbLDe=z zZJz4v>;wQ1(6EhVIA|Y{?}|BBs{=+26-^>Qv|(^KJZyPf;Gm>rjd!nnSVRQu=+}5r zNpS@Qnt3A3>~TL_S67@B_!Wyr3&IqU0MPyR?cEW7tiS(4^?%N8sVQ2_p_W?Hd2-bu zT(;@&T#L(7~Nk8vXn%L5Cilv^SpVRbHUV`87EV z24jQ2sRyd5#1A@aI)jFgE?r6i%~xKDQhIpza==*2A#lP?*QdptU0f`UU=o~aGH%@r za>pc+_a7yot0uZK6VZidK{B$lv+YPEWS>M5l_F(bq#`db55A9@TppjBOG--i*uMNwA za*5gR>ldS`&tygnl`>pJeEt0V1_OW1)yuVEr$_y&8YZNtuPb{!c`?1P{mpYbu$5iW z*pSv^5egNIrUP_sCNygwLK%!urkg<35kdO@O+gUZ7K>j5zrg}Y?mtOet;wQ=EoYtp zf+d8yiCUvizZm#U9R_@+N@iQ6>Q0CX^cTgz%y74=^nHf~%e^5|Fz?$)QwZ7wlBr_C zTI{g%eg??s8>CQ_b62eDZXmjV@66%5TE7e8>VR3JJJLL%0>iXO5TQl)T4zL}z$X^4 zjMa_bjiwu(Z9%(TQe!RfsjX(h(spZ;5E%X}2hl*hygQI6eavp%arG@rHSbEflZw#t zROg}gWX-2yays~QJqqgkr^b}4l`ieP_M|+sC~@QMK(~%mm3#kG{Q;<3j#hhak9%}y zo*@^I6ozXbmUOjJo+zG4JbEer?d(9wB=8`NeBIlBKbpjKA12G|-BJFKLwIq*uY9sV zZRh)bRQmOb#$1P&cN6s}NXh{tu zoN>9t&XSGs^kD>Q?#OaYR&;B2QcvDQJGX>u+}9I8BbpqliJ0!rO6e=OC}O1LI!GX* zzj&NX(Q-`0MeJ?wNYg#_Zqbe5Gu{w<%zLT>CU;;wRd5QZB$FN#>$JZYWrSNaS|51j z<8ymeXJ_Z$3TLx4ZRapCB*yx7ccx~R@uTGB$@lM9`F)3Na`3fU9RJOKzm@Qx13}JG zf_kz|18`9_1QlCUrSt1O{K4`pwviu6$F1u*%Oo0c*hl=Sfk!e^`q(=F5wv+ca?_sQ zo0oSXO-F~ecw^gt^4%Y`T^_^OjKG~=+do$3hhMxOc}W$PNNKDw4qCUaeK>byeOu{l zP)}g|Ap_Dh=rQKz{MXi)AKg{={y|$NqI>K7JmM-Ko!@~~y?N(l0Wj;{FeJ>TpWFf8 z+_q-{NMA0t{WEC8Yujyppu+jJ>%wTw^5I?feRMG)5Za zL<{eexno#-qd9DL^vjG2tvcVWJM%2ne{CUy_deyKagy06o!55N`r_GPoU(3Nqe_aW$ zBS3y+-FlzQ|EnTuWxD%{3Xu7^wuRR89Wy~`n!xZ^tJ^36f5$6SS=bia^6UEdlA5}+ zj8ooyrLM3&4%q&`MS{scCd7yR?zKmEQt zWxZ6^e7G`Y^>CC_a-}?zDb(h`&wn`gks@F zN)Obe8Gv29J~z?7`_|qctCeRVjeO^$@Ht+S@8pHEf5D$)36Rb`>H(@RT?g0?l=P5X z>L4lCgj07%aNonpER%7?G5xMl15%NCoA1Kt#;Z7V0@3W82nFqP@7W=kqm8yyfaljL zvc=3O&QzYF^2(w~PPKH8sfhw4GC-);j=^D{f<5Bro3NnFPpKm08y^D|J~InNTW0|5 zHctPf|~uhXFlLO==;nq*)+erY^fO%Y?@vy|G8X7i75lJ9?N zD5XeZY&aPUV|4{;cKCyhH__mzCu``QMCMohSslinghumv2nB_?)qizSm#twKGfMT} z-h9dHe0qf{J5z}BRC08pVZ|vLZhlG87TN1@3rD!zoI2RIx2d|d9~Q~z5aLK-$o8iE z{^rp!t94|?h1XFB1{d-PF*1B5UxN==pw(btThoJH*)#ynAtf0YHw_0*kO#U&rLU+; z=i?Em6Yi%10YXv|z9%aDMnc$?ld;TeSKTM8WgFG#!zY_w(7) zTuPGD<32;0!42GdXkE;S6|+pm>yC6T+=1AaZ*>gl4}JZlj?|MoJh#VGRRNKC zG+uo~M9}(xv1lHOYMu_;r8~;XU?x;a{J$B1_v|VN7)tE_lWs`Cy4_F7o)d&Q1rV93 y4$Q8@(`KQlFKMMyI7xvKn&0U8(==+RFw= z6KDCbt-Y&j*Rzn~OIInx&?uvk1heUGiZzE26f{==H%&=NVK5lCCcBhQWJ96Qn>TOP z)zulkt08f_4EFK>kuPvytyNZM7B?(HIXV_}M@9DjSzHVWpa{Zid^Fv@)4Yck#EU9{5mjQBmSv1z>Q)WQeL+)AqHh>EkcpE@531NtKmCJmZv_ zh4z_zYZU75hK6hL=H_E_KP?D_S6jze`DZUF=1ojsaV3nYPNzA7nMfqEwzg&k_pn3p z3_s4*Kh}0LG9<}wUkRea!ooZ}$}!E1pXOeSwO%FH)F2RuXDJ6JDIwRp{9LsaCDYXr zh+k>6iv6Ra(~&iL`uYt$dKX%{x}5bYPiCXCQKM5+7AeR6SShc^S{K=C@kRH}!C-uh zDl*j%L8?clr5^0A#l^+R$;nw-TJG%ZfG^VT%yduGxfE#wbj*J z4u>yVtG^r@9vS&dV`I?X`ZQP}d{;-lA^_15i9|M=omD(MJUlTmArJ_@HIG+RQi7ru z@cW;}I~uN}n1x|OLYkikzK`nF)z$U(_O`LHSzKJ48n3CTQCNgC=4V0iW0c;qMWbJ`SYOG=Q1!1y-RdZdv`P1|>QD$2^rYHGWQ_YouqBoax}B{|5*$UG`qURiNRkg|$>>A39d?3+d^ zs5kH57klXlwD5c6&Y77R5On7A!JXA924@iua+m16w=WVlAk$|06AdRhA3hM~UlPwV zOO!83>Nu9o_Q_?VDAXEnLCSLk>@!A+Yrtc~V>QhhM=y@iFU znwqoh^7=YfTQPcI8Yk3X&(6+@-jzdMNZ<1EIyY&}F)|++`5k0ZR?6uU&Uk7_x5ZrKqcAiF-yn;gF<_u6IjIN!?Au zJKEWK(W1H2PZJnwW$c#8l{BOOv~Oj*k1Z`NF_ZQz^wAj1@FHISI+Tb;kUqU{w3Z(# zC@S*Rspt+Ec=+(4_%3zEwPXCojT&`-@9!TS9UU0>5&V={W)l52kA`F#1D~t+_g~uw z2M2#qSyfe}3Aq^@O-+tk93K77@%A$yP+BA^mjcq-_Y)l??++;cAA#}Ta^*;(Csdq! TZ9JwI3{1e@#u?p(3e5O7&exa~ literal 0 HcmV?d00001 diff --git a/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-label-floating-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-label-floating-ionic-md-ltr-light-Mobile-Chrome-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..3f70df2eb18abebfc05c3da44c56e0ddf541ae64 GIT binary patch literal 2195 zcmb7`X*|?x8^`~XrLi4mh?+#0WGy2kjcOQUMj6#9;>@w1#}dYoJq!`!Fe*`5hK!1A znHCXZtjWF(3PXr2gDf-F=il@0ynNo=*Y)bUuKT)wzwhUczf3fj5JiXr03boYW3K`L zBp%Flpu*reNsfIB2FR_e<|aT%hx{x6KrIPa%(dXmg^` z&v@tQ&971%mA7}GzYcg)mFnt;i;TB@teK9eY7=#hC_$( zq#zK8n!0)vG0*hcHJO6K!sVH66+s~(r`ew80Ptog@ymO1Zguq$F}V|1JRS;Mcz%^N zHm0bN>RGfwqf&9RdEb!;1fn!zC-m8i7Yrs7=HcN1m6UAW-P!6M7>MQZf=N}uFo%y} ztck{i2ie*8N=i-?kt*P3W@bR-;-XJOVVD#lTT2fuu&A01TyIP>%3)%KEvO|G0&v9;L47C}03Kb;syr9#8Dd9dQ* z;wNW=76-W!FqmzsJlw8Wwxgp%_Q1=RFEO5;8WtBXj(__W{qVRIgTbgv4~N6L9UN0b z;NWVz-1U~$*PGa{9IlW^ZLOqusw!{>X<}-M3R!XGKcLf%CzLgfMcAS|4fW7ZlWu*T=zNFr_`-82Adl zGhIr3{rx$mrBZgq*32aR#InWg9|=@<^kEq|lgTXq`%EuDG%f8re|b~fBzoWo^iU>X>Cty7VKUpZ34Biu^H!b zPgYe`VZ*|zprWGiWMuq)Nd+q8=XAR?3WZwvIXrBa)9+~(9$sCgb^N$F*4#W{a?*8~ zx9p-6BV}xCZ1Reokd&04|_lFBP96Fhof#5XixVFwSYWoBkJ>}+jJp-M_hoSPC4 z)$}` zkofuY=Uv_0G!=4de8=}Oa&u7uKdy0_Q9EzkIwv@+==_oroU1ExczBpIGecck@=Zxe zIci`Kh^K>N&a8!|JbrAN+gyo^O0~RZt7AE55@2^K9kpRH+9Rh>F1aGYuPsH;1d}>mX zFrcTeKVBOpP#*GA6)r8!bY$%V`-XU3xB%FH3_J4-XKE^-U>q6)TKIEZVV|eI?x|DV zJw10;R{TQdxvLvL`ZfFd`W&~`7cLj}1Aw`?dFHur1gNB~sq<4opkC8I$#nKuB*&1) zK1x&)p;4#FqqQJ&0NfS8yV$LY2-Aaa8{R^Q%kslc6_)SLf{xwf_j9AzKU3E%YR zG-td!wxh4F4~g8?cB@^PYCSM#TL?-yzJbx=KQb~hGdCAa%o706x7Wp;oSarR%gV|y zO3VD8ZiZ*hNW47d`$ymC=qRR@hErKmA!(s5vt4y*p0{sqm|^usZ^*y}$jJg^Ms;;{ z^r)djO$4pw;qlha!h!-RI9&G`(cN85US8gpJ6ert1rIUc$tky_V+%@#h6lkuran2L zpl0VsDmNZ~*?S2ppy_aeN!`GJY-qLpIjwJVa|sg@&i(-bIr;g}_vA6$#fxIV)7P)z zR#|A)@VlFFeckSQgG`tG#7x7e*2gD*u~|q+Xs|Nqq=DBUps1*r5cqj$=n#QGF!Y;* zuB@zdb$3T)oF+T7OaAl=o|>HGZ1aEC`|SM>3}mgWGiA<=qB3%FF5L_>yrpI1yPIsz z#KfJ_Qk{e1!VOJL%HZ7D=fX__1J|G0viCGWjEvP#%q=WLH#aw*S{E`sdQ~%x0zCD$ z?*5)f%&DnS1Z|{~(GF4(MAPH%-lPxyBA{>Z78Z!!U)PmR;9jx;J)WPh#_vj&+NZ6p zy|lU-L!(K61-piaMag6?tlfEWVIj5iFGC|EyPlrXORCc6!gzqBq$Hmt0IY6om_i|` z7Hc-Y;3kO+*y<_%<2?ghQbcC$HKrka>OH3T^{1-pmCG`LR literal 0 HcmV?d00001 diff --git a/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-label-floating-ionic-md-ltr-light-Mobile-Firefox-linux.png b/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-label-floating-ionic-md-ltr-light-Mobile-Firefox-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..bce33fcd717799f91901d39816a9e9d11030a8a7 GIT binary patch literal 2532 zcmXX|2{@G78<(asjb)5AG%+(7CD)YDTv^hLC7P-13^6JZB4Q$H6wTNt6=lnEb6rcq zSh6(CP}$u|uFzOQB}-$OtpD%R|9Q^yJ>PlGd(Qd2@B4dy=VhKDnM>?e+ASg?B4KGk zI42^qjS2kY#C8JT@vAYFA|lWtOTr0Tn%j@e>x>7kvaQ*64z|<&({9s};)kXa*|0j7 zvN9Lh?Jy^qx-(~k5BIe;o8lZ{a&-?8faP4)?ej$H>e3I#m%#^6XmrDD;no4biUB?O>gUFF1tq1GPYGxg zs;AJV01`UIp>KC=yoq0${Vc^KL+y)qH(iK^Z#6+{M417eSp!(|P(T(+04ZD9H z5Sk~0KRgA|uDOcdl4TO(M94$<(n*i`|!fON%W}Sfb3sZse1E@ICl|sQU=4OfHWeUA45RTC#4O@fY6N* z0qH3kPUViI2Tf%j+<+egy0Qn( zK>(;NEpZB+?X;DJLPB%WokEwbls<>j7BCq^>U94L;l{ebL}$9!`cz+u@~HLEfy+Anze5Vs)uyW%0WfIdG2OlqM1EJTzW#_JbctF^)N8?d8~jd4#D!;&msk7nsk3n8B zMBrE!kkosA$=`h>zk;E+on3&{IEc^lpo1{mB&+dQ)lDcct(uH{lCUgYq+%7(gE zFLZ{IZlAm@0uIcK)j%T8>-Wv8E%LJ_}TwLr8MMw zpVs?An_XB^h6!DC2hZhqsdB`4G=$$kWCyHg4opMoXlUhd5eA(*$s%5|n33z=5b^BcJE(e5AH zw+H$249R=*8b2TFc#U>t8rWCo-rC%lcwAV9NJt-B6I^q3$KSzPg4NY z{mn;jUI~$dHYNxpR@YaT%@XCl9b*C1?%SB{f01Wb=()$nSuoLAQtS=L*)3^kX$)29 zH9Op3|F+9R+~e?tmKE9hzM*fLlOT|_UxLFv?=`;bb1zDU3+L4C@3)FMuyl?J!eJoNX)InbL_L zB+#js% z#JfyCrPR(N3k0=k<@=wn z9O4!Cu8#hDL)sk2UJM@xN%>?Q@{a3Rap|58U9sjubrrP*JC$%#zaKPde? z)1vfIA?)2pPB_FVPCO&n-VR9?EAViq6YJ zbKM=8MM**hBr>u7hF~BP;!m)8c<|v3i6dZ30H<^IC#$mfo&pVtnLYeo<=)<2`IiUW z>T9AiYwGRP!Pf%?uYn*AA?T}9-)gs{{5BToddPPdwq}sSKzjq1YDBt%GJ70&c4(;l o-;7{DEih5Exy32)5I&Q$X)+RCugxys19Wd9mP8Vv)YLudf2xa;lmGw# literal 0 HcmV?d00001 diff --git a/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-label-floating-ionic-md-ltr-light-Mobile-Safari-linux.png b/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-label-floating-ionic-md-ltr-light-Mobile-Safari-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..2238b50eab7352ab1ac5ee71fa90f7ffce2824d9 GIT binary patch literal 1794 zcmaJ?c{JPE9{=$?do^@WT2(|w#MX}KioRy3*rImRgj$|`UhJA;=t)I_mZqVEmSK<* zVT?nXAsUTPQ%h~FRDxlKs>Uu6+q_@@e&@V<&$;)Wd+xdSp3nBpyNPx_rmC+B0KhR9 zl%qEQ$mN1-8)bQLELU{Jfs)TOcNT>) zgHvP6Zzn?L2KA^$KlH{N>MBi6MB4sRlW>!982afIObg|&QysxPuSS3>H>tH6 zW1VU=Q%4CYIPGuWT8d;rPd~)h{q>|=NqQ*6%b`SMid=cK^(P!1Z86t;F1DG0XR)S$paeKp>hD}>|@~GcMunVYxL#VBU%x(^bLPuBl6%^ z0HRXU*Vl)?)|n~Wyp4^<<1d+-Mx>;q^kEe4z1AE$O1yO1?TH0#m^i<%(1K+ny^8x6 zXnB3WSuKyF9; zwZ5%vgkxdoujav?J^F$YTGRgW*va59|7w?9oXq-(PyS+;S}(Fs?cDcDXdPT&FpN)L!36PcT4o(9=f>QT_ z;{PGW3`ur}A*`*dwj=KMgj}e|*89A&f`G$aJUw+)i6GK4nJg$M$Y)s9?L|OYmJ={X zfcv}Hdc@h5&r#~@VdeF@*1^ILANKZkR)&YsoZ#Eu-rjzGJEZUbP?f5VwC5&-C3*jZcslX#oMjCZ(#*mTuu92*6uGCa) zO!RJ;2y5NVbV$Q8CiNfQkW7iwN=r)GJ37ouTysNXr?lUEYEtGnA_z3YWLjM3a&`Ky)DpWDmhszjvOSB<`n5{V=)-lR7l z;3m$REDPDmR;3I!`>u3V)8`$trR7?}+`ZB0&mTVq zwnch)d3i-eEg8;?RUza7`Z;xKS=kGm=*r945gT=$jX)s4uy7GY-|7!NvBXS;m)DO} zT^q3(eESySUtXVSRwM^!-u9YSh+iFk;Ee%@9*vXB||00 z`~A{Z9)EspY>cZ7Dze_AqO6J-s0mzJ-8Y9{y?S-s&3Ry808LL0!|&|uv}T}Z*vVgm ztTQIHkXWlyU-M(`DV?GopWyDy%eJ=vK2MW3nP$aHWtk$8$mrdV8}t07k*bS0;mMPr zL@uX(npo3H`yB)_Vw75V{sgW&^KfrxobCyS!*d{=qGs=gsYKSa0lD`1^XC)_W$t?( zkC*ePwzifFsxLf>7${xnFUon8las?GgKzsjH4}oD!K)q22Ub&8r28sHXgYNWh9pmm z3yX@PijT-eV4DCR21aX zn3^X}oY;L|Cc@Fp^6j&B*F({0^m-H6Ktr9nh*P-H9Mq{}VBj&HLQVx^R7Zbh=FTe5JZpWf2aGjA zFDPI=0|O?5Q6b0&Y)G%jwFd_Wi;IzMg0AGHVUPfNeZ7v3j>Fwe5J;3UB^oqgy9>9{ zK0`tNI_T2y@bK8!#>rSq1VW9$Z)`NLz6r(^e!f?Qh)mr1H2LZk68RcTCu>%7WTP=K zSYmVGx1DqjjYjKC6JJUC^L3L%0nkKraajBN`&*lvNl8f(@pLJTHn6lc+x_GI(cwOr zeS$bmz}OjILAAhiG_hC#On*Z=yp4&;cUGks3mp>goZFDxziNA|ivfTXqIU6rio~Yj X6t?DI6qy+h7B#@d3GLX73?cj%EK7Vz literal 0 HcmV?d00001 diff --git a/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-outline-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-outline-ionic-md-ltr-light-Mobile-Chrome-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..3f70df2eb18abebfc05c3da44c56e0ddf541ae64 GIT binary patch literal 2195 zcmb7`X*|?x8^`~XrLi4mh?+#0WGy2kjcOQUMj6#9;>@w1#}dYoJq!`!Fe*`5hK!1A znHCXZtjWF(3PXr2gDf-F=il@0ynNo=*Y)bUuKT)wzwhUczf3fj5JiXr03boYW3K`L zBp%Flpu*reNsfIB2FR_e<|aT%hx{x6KrIPa%(dXmg^` z&v@tQ&971%mA7}GzYcg)mFnt;i;TB@teK9eY7=#hC_$( zq#zK8n!0)vG0*hcHJO6K!sVH66+s~(r`ew80Ptog@ymO1Zguq$F}V|1JRS;Mcz%^N zHm0bN>RGfwqf&9RdEb!;1fn!zC-m8i7Yrs7=HcN1m6UAW-P!6M7>MQZf=N}uFo%y} ztck{i2ie*8N=i-?kt*P3W@bR-;-XJOVVD#lTT2fuu&A01TyIP>%3)%KEvO|G0&v9;L47C}03Kb;syr9#8Dd9dQ* z;wNW=76-W!FqmzsJlw8Wwxgp%_Q1=RFEO5;8WtBXj(__W{qVRIgTbgv4~N6L9UN0b z;NWVz-1U~$*PGa{9IlW^ZLOqusw!{>X<}-M3R!XGKcLf%CzLgfMcAS|4fW7ZlWu*T=zNFr_`-82Adl zGhIr3{rx$mrBZgq*32aR#InWg9|=@<^kEq|lgTXq`%EuDG%f8re|b~fBzoWo^iU>X>Cty7VKUpZ34Biu^H!b zPgYe`VZ*|zprWGiWMuq)Nd+q8=XAR?3WZwvIXrBa)9+~(9$sCgb^N$F*4#W{a?*8~ zx9p-6BV}xCZ1Reokd&04|_lFBP96Fhof#5XixVFwSYWoBkJ>}+jJp-M_hoSPC4 z)$}` zkofuY=Uv_0G!=4de8=}Oa&u7uKdy0_Q9EzkIwv@+==_oroU1ExczBpIGecck@=Zxe zIci`Kh^K>N&a8!|JbrAN+gyo^O0~RZt7AE55@2^K9kpRH+9Rh>F1aGYuPsH;1d}>mX zFrcTeKVBOpP#*GA6)r8!bY$%V`-XU3xB%FH3_J4-XKE^-U>q6)TKIEZVV|eI?x|DV zJw10;R{TQdxvLvL`ZfFd`W&~`7cLj}1Aw`?dFHur1gNB~sq<4opkC8I$#nKuB*&1) zK1x&)p;4#FqqQJ&0NfS8yV$LY2-Aaa8{R^Q%kslc6_)SLf{xwf_j9AzKU3E%YR zG-td!wxh4F4~g8?cB@^PYCSM#TL?-yzJbx=KQb~hGdCAa%o706x7Wp;oSarR%gV|y zO3VD8ZiZ*hNW47d`$ymC=qRR@hErKmA!(s5vt4y*p0{sqm|^usZ^*y}$jJg^Ms;;{ z^r)djO$4pw;qlha!h!-RI9&G`(cN85US8gpJ6ert1rIUc$tky_V+%@#h6lkuran2L zpl0VsDmNZ~*?S2ppy_aeN!`GJY-qLpIjwJVa|sg@&i(-bIr;g}_vA6$#fxIV)7P)z zR#|A)@VlFFeckSQgG`tG#7x7e*2gD*u~|q+Xs|Nqq=DBUps1*r5cqj$=n#QGF!Y;* zuB@zdb$3T)oF+T7OaAl=o|>HGZ1aEC`|SM>3}mgWGiA<=qB3%FF5L_>yrpI1yPIsz z#KfJ_Qk{e1!VOJL%HZ7D=fX__1J|G0viCGWjEvP#%q=WLH#aw*S{E`sdQ~%x0zCD$ z?*5)f%&DnS1Z|{~(GF4(MAPH%-lPxyBA{>Z78Z!!U)PmR;9jx;J)WPh#_vj&+NZ6p zy|lU-L!(K61-piaMag6?tlfEWVIj5iFGC|EyPlrXORCc6!gzqBq$Hmt0IY6om_i|` z7Hc-Y;3kO+*y<_%<2?ghQbcC$HKrka>OH3T^{1-pmCG`LR literal 0 HcmV?d00001 diff --git a/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-outline-ionic-md-ltr-light-Mobile-Firefox-linux.png b/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-outline-ionic-md-ltr-light-Mobile-Firefox-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..bce33fcd717799f91901d39816a9e9d11030a8a7 GIT binary patch literal 2532 zcmXX|2{@G78<(asjb)5AG%+(7CD)YDTv^hLC7P-13^6JZB4Q$H6wTNt6=lnEb6rcq zSh6(CP}$u|uFzOQB}-$OtpD%R|9Q^yJ>PlGd(Qd2@B4dy=VhKDnM>?e+ASg?B4KGk zI42^qjS2kY#C8JT@vAYFA|lWtOTr0Tn%j@e>x>7kvaQ*64z|<&({9s};)kXa*|0j7 zvN9Lh?Jy^qx-(~k5BIe;o8lZ{a&-?8faP4)?ej$H>e3I#m%#^6XmrDD;no4biUB?O>gUFF1tq1GPYGxg zs;AJV01`UIp>KC=yoq0${Vc^KL+y)qH(iK^Z#6+{M417eSp!(|P(T(+04ZD9H z5Sk~0KRgA|uDOcdl4TO(M94$<(n*i`|!fON%W}Sfb3sZse1E@ICl|sQU=4OfHWeUA45RTC#4O@fY6N* z0qH3kPUViI2Tf%j+<+egy0Qn( zK>(;NEpZB+?X;DJLPB%WokEwbls<>j7BCq^>U94L;l{ebL}$9!`cz+u@~HLEfy+Anze5Vs)uyW%0WfIdG2OlqM1EJTzW#_JbctF^)N8?d8~jd4#D!;&msk7nsk3n8B zMBrE!kkosA$=`h>zk;E+on3&{IEc^lpo1{mB&+dQ)lDcct(uH{lCUgYq+%7(gE zFLZ{IZlAm@0uIcK)j%T8>-Wv8E%LJ_}TwLr8MMw zpVs?An_XB^h6!DC2hZhqsdB`4G=$$kWCyHg4opMoXlUhd5eA(*$s%5|n33z=5b^BcJE(e5AH zw+H$249R=*8b2TFc#U>t8rWCo-rC%lcwAV9NJt-B6I^q3$KSzPg4NY z{mn;jUI~$dHYNxpR@YaT%@XCl9b*C1?%SB{f01Wb=()$nSuoLAQtS=L*)3^kX$)29 zH9Op3|F+9R+~e?tmKE9hzM*fLlOT|_UxLFv?=`;bb1zDU3+L4C@3)FMuyl?J!eJoNX)InbL_L zB+#js% z#JfyCrPR(N3k0=k<@=wn z9O4!Cu8#hDL)sk2UJM@xN%>?Q@{a3Rap|58U9sjubrrP*JC$%#zaKPde? z)1vfIA?)2pPB_FVPCO&n-VR9?EAViq6YJ zbKM=8MM**hBr>u7hF~BP;!m)8c<|v3i6dZ30H<^IC#$mfo&pVtnLYeo<=)<2`IiUW z>T9AiYwGRP!Pf%?uYn*AA?T}9-)gs{{5BToddPPdwq}sSKzjq1YDBt%GJ70&c4(;l o-;7{DEih5Exy32)5I&Q$X)+RCugxys19Wd9mP8Vv)YLudf2xa;lmGw# literal 0 HcmV?d00001 diff --git a/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-outline-ionic-md-ltr-light-Mobile-Safari-linux.png b/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-outline-ionic-md-ltr-light-Mobile-Safari-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..2238b50eab7352ab1ac5ee71fa90f7ffce2824d9 GIT binary patch literal 1794 zcmaJ?c{JPE9{=$?do^@WT2(|w#MX}KioRy3*rImRgj$|`UhJA;=t)I_mZqVEmSK<* zVT?nXAsUTPQ%h~FRDxlKs>Uu6+q_@@e&@V<&$;)Wd+xdSp3nBpyNPx_rmC+B0KhR9 zl%qEQ$mN1-8)bQLELU{Jfs)TOcNT>) zgHvP6Zzn?L2KA^$KlH{N>MBi6MB4sRlW>!982afIObg|&QysxPuSS3>H>tH6 zW1VU=Q%4CYIPGuWT8d;rPd~)h{q>|=NqQ*6%b`SMid=cK^(P!1Z86t;F1DG0XR)S$paeKp>hD}>|@~GcMunVYxL#VBU%x(^bLPuBl6%^ z0HRXU*Vl)?)|n~Wyp4^<<1d+-Mx>;q^kEe4z1AE$O1yO1?TH0#m^i<%(1K+ny^8x6 zXnB3WSuKyF9; zwZ5%vgkxdoujav?J^F$YTGRgW*va59|7w?9oXq-(PyS+;S}(Fs?cDcDXdPT&FpN)L!36PcT4o(9=f>QT_ z;{PGW3`ur}A*`*dwj=KMgj}e|*89A&f`G$aJUw+)i6GK4nJg$M$Y)s9?L|OYmJ={X zfcv}Hdc@h5&r#~@VdeF@*1^ILANKZkR)&YsoZ#Eu-rjzGJEZUbP?f5VwC5&-C3*jZcslX#oMjCZ(#*mTuu92*6uGCa) zO!RJ;2y5NVbV$Q8CiNfQkW7iwN=r)GJ37ouTysNXr?lUEYEtGnA_z3YWLjM3a&`Ky)DpWDmhszjvOSB<`n5{V=)-lR7l z;3m$REDPDmR;3I!`>u3V)8`$trR7?}+`ZB0&mTVq zwnch)d3i-eEg8;?RUza7`Z;xKS=kGm=*r945gT=$jX)s4uy7GY-|7!NvBXS;m)DO} zT^q3(eESySUtXVSRwM^!-u9YSh+iFk;Ee%@9*vXB||00 z`~A{Z9)EspY>cZ7Dze_AqO6J-s0mzJ-8Y9{y?S-s&3Ry808LL0!|&|uv}T}Z*vVgm ztTQIHkXWlyU-M(`DV?GopWyDy%eJ=vK2MW3nP$aHWtk$8$mrdV8}t07k*bS0;mMPr zL@uX(npo3H`yB)_Vw75V{sgW&^KfrxobCyS!*d{=qGs=gsYKSa0lD`1^XC)_W$t?( zkC*ePwzifFsxLf>7${xnFUon8las?GgKzsjH4}oD!K)q22Ub&8r28sHXgYNWh9pmm z3yX@PijT-eV4DCR21aX zn3^X}oY;L|Cc@Fp^6j&B*F({0^m-H6Ktr9nh*P-H9Mq{}VBj&HLQVx^R7Zbh=FTe5JZpWf2aGjA zFDPI=0|O?5Q6b0&Y)G%jwFd_Wi;IzMg0AGHVUPfNeZ7v3j>Fwe5J;3UB^oqgy9>9{ zK0`tNI_T2y@bK8!#>rSq1VW9$Z)`NLz6r(^e!f?Qh)mr1H2LZk68RcTCu>%7WTP=K zSYmVGx1DqjjYjKC6JJUC^L3L%0nkKraajBN`&*lvNl8f(@pLJTHn6lc+x_GI(cwOr zeS$bmz}OjILAAhiG_hC#On*Z=yp4&;cUGks3mp>goZFDxziNA|ivfTXqIU6rio~Yj X6t?DI6qy+h7B#@d3GLX73?cj%EK7Vz literal 0 HcmV?d00001 diff --git a/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-outline-round-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-outline-round-ionic-md-ltr-light-Mobile-Chrome-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..3f70df2eb18abebfc05c3da44c56e0ddf541ae64 GIT binary patch literal 2195 zcmb7`X*|?x8^`~XrLi4mh?+#0WGy2kjcOQUMj6#9;>@w1#}dYoJq!`!Fe*`5hK!1A znHCXZtjWF(3PXr2gDf-F=il@0ynNo=*Y)bUuKT)wzwhUczf3fj5JiXr03boYW3K`L zBp%Flpu*reNsfIB2FR_e<|aT%hx{x6KrIPa%(dXmg^` z&v@tQ&971%mA7}GzYcg)mFnt;i;TB@teK9eY7=#hC_$( zq#zK8n!0)vG0*hcHJO6K!sVH66+s~(r`ew80Ptog@ymO1Zguq$F}V|1JRS;Mcz%^N zHm0bN>RGfwqf&9RdEb!;1fn!zC-m8i7Yrs7=HcN1m6UAW-P!6M7>MQZf=N}uFo%y} ztck{i2ie*8N=i-?kt*P3W@bR-;-XJOVVD#lTT2fuu&A01TyIP>%3)%KEvO|G0&v9;L47C}03Kb;syr9#8Dd9dQ* z;wNW=76-W!FqmzsJlw8Wwxgp%_Q1=RFEO5;8WtBXj(__W{qVRIgTbgv4~N6L9UN0b z;NWVz-1U~$*PGa{9IlW^ZLOqusw!{>X<}-M3R!XGKcLf%CzLgfMcAS|4fW7ZlWu*T=zNFr_`-82Adl zGhIr3{rx$mrBZgq*32aR#InWg9|=@<^kEq|lgTXq`%EuDG%f8re|b~fBzoWo^iU>X>Cty7VKUpZ34Biu^H!b zPgYe`VZ*|zprWGiWMuq)Nd+q8=XAR?3WZwvIXrBa)9+~(9$sCgb^N$F*4#W{a?*8~ zx9p-6BV}xCZ1Reokd&04|_lFBP96Fhof#5XixVFwSYWoBkJ>}+jJp-M_hoSPC4 z)$}` zkofuY=Uv_0G!=4de8=}Oa&u7uKdy0_Q9EzkIwv@+==_oroU1ExczBpIGecck@=Zxe zIci`Kh^K>N&a8!|JbrAN+gyo^O0~RZt7AE55@2^K9kpRH+9Rh>F1aGYuPsH;1d}>mX zFrcTeKVBOpP#*GA6)r8!bY$%V`-XU3xB%FH3_J4-XKE^-U>q6)TKIEZVV|eI?x|DV zJw10;R{TQdxvLvL`ZfFd`W&~`7cLj}1Aw`?dFHur1gNB~sq<4opkC8I$#nKuB*&1) zK1x&)p;4#FqqQJ&0NfS8yV$LY2-Aaa8{R^Q%kslc6_)SLf{xwf_j9AzKU3E%YR zG-td!wxh4F4~g8?cB@^PYCSM#TL?-yzJbx=KQb~hGdCAa%o706x7Wp;oSarR%gV|y zO3VD8ZiZ*hNW47d`$ymC=qRR@hErKmA!(s5vt4y*p0{sqm|^usZ^*y}$jJg^Ms;;{ z^r)djO$4pw;qlha!h!-RI9&G`(cN85US8gpJ6ert1rIUc$tky_V+%@#h6lkuran2L zpl0VsDmNZ~*?S2ppy_aeN!`GJY-qLpIjwJVa|sg@&i(-bIr;g}_vA6$#fxIV)7P)z zR#|A)@VlFFeckSQgG`tG#7x7e*2gD*u~|q+Xs|Nqq=DBUps1*r5cqj$=n#QGF!Y;* zuB@zdb$3T)oF+T7OaAl=o|>HGZ1aEC`|SM>3}mgWGiA<=qB3%FF5L_>yrpI1yPIsz z#KfJ_Qk{e1!VOJL%HZ7D=fX__1J|G0viCGWjEvP#%q=WLH#aw*S{E`sdQ~%x0zCD$ z?*5)f%&DnS1Z|{~(GF4(MAPH%-lPxyBA{>Z78Z!!U)PmR;9jx;J)WPh#_vj&+NZ6p zy|lU-L!(K61-piaMag6?tlfEWVIj5iFGC|EyPlrXORCc6!gzqBq$Hmt0IY6om_i|` z7Hc-Y;3kO+*y<_%<2?ghQbcC$HKrka>OH3T^{1-pmCG`LR literal 0 HcmV?d00001 diff --git a/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-outline-round-ionic-md-ltr-light-Mobile-Firefox-linux.png b/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-outline-round-ionic-md-ltr-light-Mobile-Firefox-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..bce33fcd717799f91901d39816a9e9d11030a8a7 GIT binary patch literal 2532 zcmXX|2{@G78<(asjb)5AG%+(7CD)YDTv^hLC7P-13^6JZB4Q$H6wTNt6=lnEb6rcq zSh6(CP}$u|uFzOQB}-$OtpD%R|9Q^yJ>PlGd(Qd2@B4dy=VhKDnM>?e+ASg?B4KGk zI42^qjS2kY#C8JT@vAYFA|lWtOTr0Tn%j@e>x>7kvaQ*64z|<&({9s};)kXa*|0j7 zvN9Lh?Jy^qx-(~k5BIe;o8lZ{a&-?8faP4)?ej$H>e3I#m%#^6XmrDD;no4biUB?O>gUFF1tq1GPYGxg zs;AJV01`UIp>KC=yoq0${Vc^KL+y)qH(iK^Z#6+{M417eSp!(|P(T(+04ZD9H z5Sk~0KRgA|uDOcdl4TO(M94$<(n*i`|!fON%W}Sfb3sZse1E@ICl|sQU=4OfHWeUA45RTC#4O@fY6N* z0qH3kPUViI2Tf%j+<+egy0Qn( zK>(;NEpZB+?X;DJLPB%WokEwbls<>j7BCq^>U94L;l{ebL}$9!`cz+u@~HLEfy+Anze5Vs)uyW%0WfIdG2OlqM1EJTzW#_JbctF^)N8?d8~jd4#D!;&msk7nsk3n8B zMBrE!kkosA$=`h>zk;E+on3&{IEc^lpo1{mB&+dQ)lDcct(uH{lCUgYq+%7(gE zFLZ{IZlAm@0uIcK)j%T8>-Wv8E%LJ_}TwLr8MMw zpVs?An_XB^h6!DC2hZhqsdB`4G=$$kWCyHg4opMoXlUhd5eA(*$s%5|n33z=5b^BcJE(e5AH zw+H$249R=*8b2TFc#U>t8rWCo-rC%lcwAV9NJt-B6I^q3$KSzPg4NY z{mn;jUI~$dHYNxpR@YaT%@XCl9b*C1?%SB{f01Wb=()$nSuoLAQtS=L*)3^kX$)29 zH9Op3|F+9R+~e?tmKE9hzM*fLlOT|_UxLFv?=`;bb1zDU3+L4C@3)FMuyl?J!eJoNX)InbL_L zB+#js% z#JfyCrPR(N3k0=k<@=wn z9O4!Cu8#hDL)sk2UJM@xN%>?Q@{a3Rap|58U9sjubrrP*JC$%#zaKPde? z)1vfIA?)2pPB_FVPCO&n-VR9?EAViq6YJ zbKM=8MM**hBr>u7hF~BP;!m)8c<|v3i6dZ30H<^IC#$mfo&pVtnLYeo<=)<2`IiUW z>T9AiYwGRP!Pf%?uYn*AA?T}9-)gs{{5BToddPPdwq}sSKzjq1YDBt%GJ70&c4(;l o-;7{DEih5Exy32)5I&Q$X)+RCugxys19Wd9mP8Vv)YLudf2xa;lmGw# literal 0 HcmV?d00001 diff --git a/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-outline-round-ionic-md-ltr-light-Mobile-Safari-linux.png b/core/src/components/input/test/size/input.e2e.ts-snapshots/input-size-large-outline-round-ionic-md-ltr-light-Mobile-Safari-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..2238b50eab7352ab1ac5ee71fa90f7ffce2824d9 GIT binary patch literal 1794 zcmaJ?c{JPE9{=$?do^@WT2(|w#MX}KioRy3*rImRgj$|`UhJA;=t)I_mZqVEmSK<* zVT?nXAsUTPQ%h~FRDxlKs>Uu6+q_@@e&@V<&$;)Wd+xdSp3nBpyNPx_rmC+B0KhR9 zl%qEQ$mN1-8)bQLELU{Jfs)TOcNT>) zgHvP6Zzn?L2KA^$KlH{N>MBi6MB4sRlW>!982afIObg|&QysxPuSS3>H>tH6 zW1VU=Q%4CYIPGuWT8d;rPd~)h{q>|=NqQ*6%b`SMid=cK^(P!1Z86t;F1DG0XR)S$paeKp>hD}>|@~GcMunVYxL#VBU%x(^bLPuBl6%^ z0HRXU*Vl)?)|n~Wyp4^<<1d+-Mx>;q^kEe4z1AE$O1yO1?TH0#m^i<%(1K+ny^8x6 zXnB3WSuKyF9; zwZ5%vgkxdoujav?J^F$YTGRgW*va59|7w?9oXq-(PyS+;S}(Fs?cDcDXdPT&FpN)L!36PcT4o(9=f>QT_ z;{PGW3`ur}A*`*dwj=KMgj}e|*89A&f`G$aJUw+)i6GK4nJg$M$Y)s9?L|OYmJ={X zfcv}Hdc@h5&r#~@VdeF@*1^ILANKZkR)&YsoZ#Eu-rjzGJEZUbP?f5VwC5&-C3*jZcslX#oMjCZ(#*mTuu92*6uGCa) zO!RJ;2y5NVbV$Q8CiNfQkW7iwN=r)GJ37ouTysNXr?lUEYEtGnA_z3YWLjM3a&`Ky)DpWDmhszjvOSB<`n5{V=)-lR7l z;3m$REDPDmR;3I!`>u3V)8`$trR7?}+`ZB0&mTVq zwnch)d3i-eEg8;?RUza7`Z;xKS=kGm=*r945gT=$jX)s4uy7GY-|7!NvBXS;m)DO} zT^q3(eESySUtXVSRwM^!-u9YSh+iFk;Ee%@9*vXB||00 z`~A{Z9)EspY>cZ7Dze_AqO6J-s0mzJ-8Y9{y?S-s&3Ry808LL0!|&|uv}T}Z*vVgm ztTQIHkXWlyU-M(`DV?GopWyDy%eJ=vK2MW3nP$aHWtk$8$mrdV8}t07k*bS0;mMPr zL@uX(npo3H`yB)_Vw75V{sgW&^KfrxobCyS!*d{=qGs=gsYKSa0lD`1^XC)_W$t?( zkC*ePwzifFsxLf>7${xnFUon8las?GgKzsjH4}oD!K)q22Ub&8r28sHXgYNWh9pmm z3yX@PijT-eV4DCR21aX zn3^X}oY;L|Cc@Fp^6j&B*F({0^m-H6Ktr9nh*P-H9Mq{}VBj&HLQVx^R7Zbh=FTe5JZpWf2aGjA zFDPI=0|O?5Q6b0&Y)G%jwFd_Wi;IzMg0AGHVUPfNeZ7v3j>Fwe5J;3UB^oqgy9>9{ zK0`tNI_T2y@bK8!#>rSq1VW9$Z)`NLz6r(^e!f?Qh)mr1H2LZk68RcTCu>%7WTP=K zSYmVGx1DqjjYjKC6JJUC^L3L%0nkKraajBN`&*lvNl8f(@pLJTHn6lc+x_GI(cwOr zeS$bmz}OjILAAhiG_hC#On*Z=yp4&;cUGks3mp>goZFDxziNA|ivfTXqIU6rio~Yj X6t?DI6qy+h7B#@d3GLX73?cj%EK7Vz literal 0 HcmV?d00001 diff --git a/packages/angular/src/directives/proxies.ts b/packages/angular/src/directives/proxies.ts index acec987bcf1..5eeaea7529b 100644 --- a/packages/angular/src/directives/proxies.ts +++ b/packages/angular/src/directives/proxies.ts @@ -957,7 +957,7 @@ export declare interface IonInfiniteScrollContent extends Components.IonInfinite @ProxyCmp({ - inputs: ['autocapitalize', 'autocomplete', 'autocorrect', 'autofocus', 'clearInput', 'clearOnEdit', 'color', 'counter', 'counterFormatter', 'debounce', 'disabled', 'enterkeyhint', 'errorText', 'fill', 'helperText', 'inputmode', 'label', 'labelPlacement', 'max', 'maxlength', 'min', 'minlength', 'mode', 'multiple', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'shape', 'spellcheck', 'step', 'theme', 'type', 'value'], + inputs: ['autocapitalize', 'autocomplete', 'autocorrect', 'autofocus', 'clearInput', 'clearOnEdit', 'color', 'counter', 'counterFormatter', 'debounce', 'disabled', 'enterkeyhint', 'errorText', 'fill', 'helperText', 'inputmode', 'label', 'labelPlacement', 'max', 'maxlength', 'min', 'minlength', 'mode', 'multiple', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'shape', 'size', 'spellcheck', 'step', 'theme', 'type', 'value'], methods: ['setFocus', 'getInputElement'] }) @Component({ @@ -965,7 +965,7 @@ export declare interface IonInfiniteScrollContent extends Components.IonInfinite changeDetection: ChangeDetectionStrategy.OnPush, template: '', // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property - inputs: ['autocapitalize', 'autocomplete', 'autocorrect', 'autofocus', 'clearInput', 'clearOnEdit', 'color', 'counter', 'counterFormatter', 'debounce', 'disabled', 'enterkeyhint', 'errorText', 'fill', 'helperText', 'inputmode', 'label', 'labelPlacement', 'max', 'maxlength', 'min', 'minlength', 'mode', 'multiple', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'shape', 'spellcheck', 'step', 'theme', 'type', 'value'], + inputs: ['autocapitalize', 'autocomplete', 'autocorrect', 'autofocus', 'clearInput', 'clearOnEdit', 'color', 'counter', 'counterFormatter', 'debounce', 'disabled', 'enterkeyhint', 'errorText', 'fill', 'helperText', 'inputmode', 'label', 'labelPlacement', 'max', 'maxlength', 'min', 'minlength', 'mode', 'multiple', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'shape', 'size', 'spellcheck', 'step', 'theme', 'type', 'value'], }) export class IonInput { protected el: HTMLElement; diff --git a/packages/vue/src/proxies.ts b/packages/vue/src/proxies.ts index 30d640d44f2..cf55136c06c 100644 --- a/packages/vue/src/proxies.ts +++ b/packages/vue/src/proxies.ts @@ -427,6 +427,7 @@ export const IonInput = /*@__PURE__*/ defineContainer