diff --git a/core/src/components/input/input.tsx b/core/src/components/input/input.tsx index 5c5ec9cd2f6..7cd9b931ef9 100644 --- a/core/src/components/input/input.tsx +++ b/core/src/components/input/input.tsx @@ -1,5 +1,8 @@ import type { ComponentInterface, EventEmitter } from '@stencil/core'; import { Build, Component, Element, Event, Host, Method, Prop, State, Watch, h } from '@stencil/core'; +import { createLegacyFormController } from '@utils/forms'; +import type { LegacyFormController } from '@utils/forms'; +import { printIonWarning } from '@utils/logging'; import { getIonMode } from '../../global/ionic-global'; import type { @@ -30,6 +33,12 @@ export class Input implements ComponentInterface { private inputId = `ion-input-${inputIds++}`; private inheritedAttributes: Attributes = {}; private isComposing = false; + + private legacyFormController!: LegacyFormController; + + // This flag ensures we log the deprecation warning at most once. + private hasLoggedDeprecationWarning = false; + /** * `true` if the input was cleared as a result of the user typing * with `clearOnEdit` enabled. @@ -44,7 +53,7 @@ export class Input implements ComponentInterface { @State() hasFocus = false; - @Element() el!: HTMLElement; + @Element() el!: HTMLIonInputElement; /** * The color to use from your application's color palette. @@ -328,6 +337,10 @@ export class Input implements ComponentInterface { } connectedCallback() { + const { el } = this; + + this.legacyFormController = createLegacyFormController(el); + this.emitStyle(); this.debounceChanged(); if (Build.isBrowser) { @@ -408,14 +421,16 @@ export class Input implements ComponentInterface { } private emitStyle() { - this.ionStyle.emit({ - interactive: true, - input: true, - 'has-placeholder': this.placeholder !== undefined, - 'has-value': this.hasValue(), - 'has-focus': this.hasFocus, - 'interactive-disabled': this.disabled, - }); + if (this.legacyFormController.hasLegacyControl()) { + this.ionStyle.emit({ + interactive: true, + input: true, + 'has-placeholder': this.placeholder !== undefined, + 'has-value': this.hasValue(), + 'has-focus': this.hasFocus, + 'interactive-disabled': this.disabled, + }); + } } private onInput = (ev: InputEvent | Event) => { @@ -497,7 +512,21 @@ export class Input implements ComponentInterface { return this.getValue().length > 0; } - render() { + private renderInput() { + return Stubbed input; + } + + private renderLegacyInput() { + if (!this.hasLoggedDeprecationWarning) { + printIonWarning( + `Using ion-input with an ion-label has been deprecated. To migrate, remove the ion-label and use the "label" property on ion-input instead. + +For inputs that do not have a visible label, developers should use "aria-label" so screen readers can announce the purpose of the input.`, + this.el + ); + this.hasLoggedDeprecationWarning = true; + } + const mode = getIonMode(this); const value = this.getValue(); const labelId = this.inputId + '-lbl'; @@ -518,7 +547,7 @@ export class Input implements ComponentInterface { (this.nativeInput = input)} - aria-labelledby={label ? labelId : null} + aria-labelledby={label ? label.id : null} disabled={this.disabled} accept={this.accept} autoCapitalize={this.autocapitalize} @@ -568,6 +597,12 @@ export class Input implements ComponentInterface { ); } + + render() { + const { legacyFormController } = this; + + return legacyFormController.hasLegacyControl() ? this.renderLegacyInput() : this.renderInput(); + } } let inputIds = 0; diff --git a/core/src/components/input/test/basic/index.html b/core/src/components/input/test/basic/index.html index 2f63b0b96b1..a98bada1199 100644 --- a/core/src/components/input/test/basic/index.html +++ b/core/src/components/input/test/basic/index.html @@ -25,10 +25,13 @@ - + - + - Default Label - + - + Right - + --> + + + + + + + + + + Input - Basic + + + + + + + + + + + + + + + + + + + + + + + + + + + Default Label + + + + + Clear Input + + + + + Floating + + + + + Type # + + + + + Password + + + + + Placeholder + + + + + Disabled + + + + + Readonly + + + + + Slot + + + + + Toggle + + + + + Type # +
+ + + +
+
+
+ +
+ Toggle Disabled + + + Toggle Readonly + +
+ + + Clear Input + + + + + Clear On Edit + + + + + + Left + + + + Right + + +
+ + +
+ + diff --git a/core/src/components/input/test/basic/input.e2e.ts b/core/src/components/input/test/legacy/basic/input.e2e.ts similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts rename to core/src/components/input/test/legacy/basic/input.e2e.ts diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-ios-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-ios-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-ios-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-ios-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-ios-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-ios-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-ios-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-ios-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-ios-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-ios-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-ios-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-ios-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-ios-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-ios-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-ios-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-ios-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-ios-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-ios-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-ios-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-ios-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-md-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-md-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-md-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-md-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-md-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-md-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-md-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-md-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-md-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-md-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-md-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-md-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-md-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-md-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-md-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-md-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-md-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-md-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-md-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-md-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-md-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-md-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-disabled-md-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-disabled-md-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-ios-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-md-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-md-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-md-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-md-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-md-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-md-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-md-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-md-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-md-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-md-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-md-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-md-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-md-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-md-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-md-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-md-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-md-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-md-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-md-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-md-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-md-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-md-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-clear-button-md-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-clear-button-md-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-ios-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-focused-md-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-ios-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-md-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-md-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-md-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-md-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-md-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-md-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-md-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-md-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-md-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-md-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-md-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-md-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-md-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-md-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-md-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-md-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-md-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-md-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-md-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-md-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-md-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-md-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-full-md-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-full-md-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-ios-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-focused-md-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-ios-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-inset-md-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-ios-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-focused-md-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-ios-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-md-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-md-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-md-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-md-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-md-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-md-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-md-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-md-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-md-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-md-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-md-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-md-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-md-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-md-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-md-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-md-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-md-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-md-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-md-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-md-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-md-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-md-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-lines-none-md-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-lines-none-md-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-ios-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-md-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-md-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-md-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-md-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-md-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-md-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-md-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-md-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-md-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-md-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-md-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-md-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-md-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-md-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-md-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-md-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-md-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-md-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-md-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-md-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-md-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-md-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-placeholder-md-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-placeholder-md-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-ios-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/basic/input.e2e.ts-snapshots/input-with-text-overflow-md-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/clearOnEdit/input.e2e.ts b/core/src/components/input/test/legacy/clearOnEdit/input.e2e.ts similarity index 100% rename from core/src/components/input/test/clearOnEdit/input.e2e.ts rename to core/src/components/input/test/legacy/clearOnEdit/input.e2e.ts diff --git a/core/src/components/input/test/input-events.e2e.ts b/core/src/components/input/test/legacy/input-events.e2e.ts similarity index 100% rename from core/src/components/input/test/input-events.e2e.ts rename to core/src/components/input/test/legacy/input-events.e2e.ts diff --git a/core/src/components/input/test/masking/index.html b/core/src/components/input/test/legacy/masking/index.html similarity index 100% rename from core/src/components/input/test/masking/index.html rename to core/src/components/input/test/legacy/masking/index.html diff --git a/core/src/components/input/test/masking/input.e2e.ts b/core/src/components/input/test/legacy/masking/input.e2e.ts similarity index 91% rename from core/src/components/input/test/masking/input.e2e.ts rename to core/src/components/input/test/legacy/masking/input.e2e.ts index 9fd4ca7032f..e315f211dd9 100644 --- a/core/src/components/input/test/masking/input.e2e.ts +++ b/core/src/components/input/test/legacy/masking/input.e2e.ts @@ -3,7 +3,7 @@ import { test } from '@utils/test/playwright'; test.describe('input: masking', () => { test.beforeEach(async ({ page }) => { - await page.goto('/src/components/input/test/masking'); + await page.goto('/src/components/input/test/legacy/masking'); }); test('should filter out spaces', async ({ page, skip }) => { diff --git a/core/src/components/input/test/spec/index.html b/core/src/components/input/test/legacy/spec/index.html similarity index 100% rename from core/src/components/input/test/spec/index.html rename to core/src/components/input/test/legacy/spec/index.html diff --git a/core/src/components/input/test/spec/input.e2e.ts b/core/src/components/input/test/legacy/spec/input.e2e.ts similarity index 86% rename from core/src/components/input/test/spec/input.e2e.ts rename to core/src/components/input/test/legacy/spec/input.e2e.ts index 29c5e4c3cbe..d25e4cb8da9 100644 --- a/core/src/components/input/test/spec/input.e2e.ts +++ b/core/src/components/input/test/legacy/spec/input.e2e.ts @@ -3,7 +3,7 @@ import { test } from '@utils/test/playwright'; test.describe('input: spec', () => { test.beforeEach(async ({ page }) => { - await page.goto('/src/components/input/test/spec'); + await page.goto('/src/components/input/test/legacy/spec'); }); test('should not have visual regressions', async ({ page }) => { diff --git a/core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-ios-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-ios-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-ios-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-ios-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-ios-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-ios-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-ios-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-ios-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-ios-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-ios-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-ios-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-ios-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-ios-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-ios-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-ios-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-ios-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-ios-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-ios-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-ios-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-ios-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-md-ltr-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-md-ltr-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-md-ltr-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-md-ltr-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-md-ltr-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-md-ltr-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-md-ltr-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-md-ltr-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-md-ltr-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-md-ltr-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-md-ltr-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-md-ltr-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-md-rtl-Mobile-Chrome-linux.png b/core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-md-rtl-Mobile-Chrome-linux.png similarity index 100% rename from core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-md-rtl-Mobile-Chrome-linux.png rename to core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-md-rtl-Mobile-Chrome-linux.png diff --git a/core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-md-rtl-Mobile-Firefox-linux.png b/core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-md-rtl-Mobile-Firefox-linux.png similarity index 100% rename from core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-md-rtl-Mobile-Firefox-linux.png rename to core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-md-rtl-Mobile-Firefox-linux.png diff --git a/core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-md-rtl-Mobile-Safari-linux.png b/core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-md-rtl-Mobile-Safari-linux.png similarity index 100% rename from core/src/components/input/test/spec/input.e2e.ts-snapshots/input-spec-diff-md-rtl-Mobile-Safari-linux.png rename to core/src/components/input/test/legacy/spec/input.e2e.ts-snapshots/input-spec-diff-md-rtl-Mobile-Safari-linux.png diff --git a/core/src/components/input/test/tabindex/index.html b/core/src/components/input/test/legacy/tabindex/index.html similarity index 100% rename from core/src/components/input/test/tabindex/index.html rename to core/src/components/input/test/legacy/tabindex/index.html diff --git a/core/src/utils/forms/form-controller.ts b/core/src/utils/forms/form-controller.ts new file mode 100644 index 00000000000..3c45bad41ed --- /dev/null +++ b/core/src/utils/forms/form-controller.ts @@ -0,0 +1,31 @@ +/** + * Creates a controller that tracks whether a form control is using the legacy or modern syntax. This should be removed when the legacy form control syntax is removed. + * + * @internal + * @prop el: The Ionic form component to reference + */ +export const createLegacyFormController = (el: HTMLIonInputElement): LegacyFormController => { + const controlEl: HTMLIonInputElement = el; + let legacyControl = true; + + /** + * Detect if developers are using the legacy form control syntax + * so a deprecation warning is logged. This warning can be disabled + * by either using the new `label` property or setting `aria-label` + * on the control. + */ + const hasLabelProp = controlEl.label !== undefined; + const hasAriaLabelAttribute = controlEl.hasAttribute('aria-label'); + + legacyControl = !hasLabelProp && !hasAriaLabelAttribute; + + const hasLegacyControl = () => { + return legacyControl; + }; + + return { hasLegacyControl }; +}; + +export type LegacyFormController = { + hasLegacyControl: () => boolean; +}; diff --git a/core/src/utils/forms/index.ts b/core/src/utils/forms/index.ts new file mode 100644 index 00000000000..d7c63744bdc --- /dev/null +++ b/core/src/utils/forms/index.ts @@ -0,0 +1 @@ +export * from './form-controller';