@ajuarezso/sui-design-system 0.18.1 → 0.18.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ajuarezso/sui-design-system",
3
- "version": "0.18.1",
3
+ "version": "0.18.3",
4
4
  "description": "SUI Design System — librería de componentes Angular (SUI 2.0).",
5
5
  "license": "UNLICENSED",
6
6
  "publishConfig": {
@@ -6628,28 +6628,38 @@ declare class SuiInput implements ControlValueAccessor {
6628
6628
  readonly showPassword: _angular_core.WritableSignal<boolean>;
6629
6629
  /** Resolved native [type] attribute for the <input> element */
6630
6630
  readonly nativeType: _angular_core.Signal<string>;
6631
- /** Teclado que le corresponde a cada `type` cuando nadie pidió otro. */
6631
+ /**
6632
+ * Teclado que le corresponde a cada `type` cuando nadie pidió otro.
6633
+ *
6634
+ * Los que están acá cambian el teclado de verdad: `numeric`, `decimal`,
6635
+ * `tel`, `email` y `url` eligen otra grilla de teclas.
6636
+ *
6637
+ * `search` NO está, y es a propósito: en Android no cambia ninguna tecla y
6638
+ * además ROMPE la tecla de acción. Chromium, cuando el campo trae un
6639
+ * `inputmode` que no sabe convertir en teclado —`search` y `text` son los
6640
+ * dos casos—, lo manda igual pero marcándolo como campo de VARIAS LÍNEAS
6641
+ * (`TYPE_TEXT_FLAG_MULTI_LINE`, rama `default` de
6642
+ * `ImeUtils.computeEditorInfo`). Un campo de varias líneas necesita la tecla
6643
+ * de salto de línea, así que el teclado dibuja la flecha de enter y descarta
6644
+ * la lupa aunque se la hayan pedido. Sin `inputmode`, el mismo campo llega
6645
+ * como de una sola línea y la lupa aparece.
6646
+ */
6632
6647
  private readonly _inputModeAuto;
6633
6648
  /** `inputmode` que termina en el DOM: gana lo que pidió el consumer. */
6634
6649
  readonly inputMode: _angular_core.Signal<string | null>;
6635
6650
  /**
6636
6651
  * Un campo de búsqueda abre con LUPA en la tecla de acción, siempre.
6637
6652
  *
6638
- * Va por default y no queda a cargo de cada pantalla porque el caso correcto
6639
- * NO sale solo, y en Android el propio `inputmode` lo empeora. Chromium le
6640
- * pide la lupa al teclado únicamente si el campo es `type=search` Y NO trae
6641
- * `inputmode` propio (`ImeUtils.getImeAction`). Como acá sí lo trae
6642
- * —`_inputModeAuto` le pone `search` para elegir el teclado— esa regla se
6643
- * saltea, el campo cae en la rama genérica y la tecla queda en la acción por
6644
- * descarte en vez de la lupa. Dicho de otra forma: emitir solo `inputmode`
6645
- * deja el teclado PEOR que no emitir nada.
6653
+ * Va por default y no queda a cargo de cada pantalla porque pedirla es la
6654
+ * mitad del trabajo: la otra mitad es NO pedir `inputmode="search"`, que es
6655
+ * lo que la tapaba (ver `_inputModeAuto`). Las dos decisiones viven juntas
6656
+ * acá para que no se puedan separar por accidente en una pantalla.
6646
6657
  *
6647
- * iOS llega al mismo lugar por otro camino: sin `enterkeyhint` solo pone la
6648
- * lupa si el campo vive dentro de un `form` con `action`, y acá no vive.
6658
+ * En Android el atributo alcanza solo: Chromium lo traduce a la acción
6659
+ * SEARCH del teclado sin mirar el type ni el form.
6649
6660
  *
6650
- * `enterkeyhint` es lo único que decide el ícono sin mirar nada más —ni el
6651
- * type, ni el inputmode, ni el form— así que se emite desde el componente y
6652
- * ninguna pantalla tiene que acordarse.
6661
+ * En iOS hace falta igual, porque ahí la lupa sale sola únicamente si el
6662
+ * campo vive dentro de un `form` con `action`, y acá no vive.
6653
6663
  */
6654
6664
  private readonly _enterKeyHintAuto;
6655
6665
  /** `enterkeyhint` que termina en el DOM: gana lo que pidió el consumer. */