@ajuarezso/sui-design-system 0.14.2 → 0.15.0

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.14.2",
3
+ "version": "0.15.0",
4
4
  "description": "SUI Design System — librería de componentes Angular (SUI 2.0).",
5
5
  "license": "UNLICENSED",
6
6
  "publishConfig": {
@@ -1759,7 +1759,7 @@ declare class SuiButton {
1759
1759
  readonly disabled: _angular_core.InputSignal<boolean>;
1760
1760
  readonly leftIcon: _angular_core.InputSignal<string | null>;
1761
1761
  readonly rightIcon: _angular_core.InputSignal<string | null>;
1762
- readonly type: _angular_core.InputSignal<"button" | "submit" | "reset">;
1762
+ readonly type: _angular_core.InputSignal<"button" | "reset" | "submit">;
1763
1763
  /** Intercept click/Enter/Space — cuando type=submit, busca el form padre y
1764
1764
  dispara requestSubmit(). Reset hace lo mismo con form.reset(). Disabled
1765
1765
  bloquea todo. */
@@ -2143,7 +2143,7 @@ declare class SuiCheckboxCard implements ControlValueAccessor {
2143
2143
  /** RemixIcon name (sin prefijo "ri-") para type='left-icon'. */
2144
2144
  readonly icon: _angular_core.InputSignal<string | null>;
2145
2145
  /** Emoji del catálogo SUI_EMOJI_MAP — alternativa a icon para type='left-icon'. */
2146
- readonly emoji: _angular_core.InputSignal<"label" | "warning" | "thinking-face" | "grinning-face" | "smiling-face-hearts" | "face-with-rolling-eyes" | "face-screaming" | "partying-face" | "star-struck" | "sleeping-face" | "pensive-face" | "confused-face" | "neutral-face" | "slightly-smiling-face" | "grinning-face-smiling-eyes" | "package" | "receipt" | "money-bag" | "money-with-wings" | "shopping-cart" | "shopping-bags" | "card-index-dividers" | "bell" | "bell-with-slash" | "pushpin" | "mobile-phone" | "gear" | "locked" | "unlocked" | "wrench" | "hammer" | "magnifying-glass-tilted-left" | "spiral-calendar" | "bar-chart" | "delivery-truck" | "motorcycle" | "rocket" | "house" | "office-building" | "shop" | "dollar-banknote" | "glowing-star" | "kick-scooter" | "check-mark" | "check-mark-button" | "cross-mark" | "no-entry" | "sparkles" | "party-popper" | "waving-hand" | "thumbs-up" | "clapping-hands" | "handshake" | "busts-in-silhouette" | "pizza" | "hamburger" | "taco" | "birthday-cake" | null>;
2146
+ readonly emoji: _angular_core.InputSignal<"warning" | "label" | "thinking-face" | "grinning-face" | "smiling-face-hearts" | "face-with-rolling-eyes" | "face-screaming" | "partying-face" | "star-struck" | "sleeping-face" | "pensive-face" | "confused-face" | "neutral-face" | "slightly-smiling-face" | "grinning-face-smiling-eyes" | "package" | "receipt" | "money-bag" | "money-with-wings" | "shopping-cart" | "shopping-bags" | "card-index-dividers" | "bell" | "bell-with-slash" | "pushpin" | "mobile-phone" | "gear" | "locked" | "unlocked" | "wrench" | "hammer" | "magnifying-glass-tilted-left" | "spiral-calendar" | "bar-chart" | "delivery-truck" | "motorcycle" | "rocket" | "house" | "office-building" | "shop" | "dollar-banknote" | "glowing-star" | "kick-scooter" | "check-mark" | "check-mark-button" | "cross-mark" | "no-entry" | "sparkles" | "party-popper" | "waving-hand" | "thumbs-up" | "clapping-hands" | "handshake" | "busts-in-silhouette" | "pizza" | "hamburger" | "taco" | "birthday-cake" | null>;
2147
2147
  /** URL directa al emoji para type='left-icon'. Precedencia: icon > emoji > iconSrc. */
2148
2148
  readonly iconSrc: _angular_core.InputSignal<string | null>;
2149
2149
  /** URL de imagen para type='avatar'. Si falla, fallback a iniciales del label. */
@@ -2265,7 +2265,7 @@ declare class SuiLinkButton {
2265
2265
  readonly href: _angular_core.InputSignal<string | null>;
2266
2266
  readonly target: _angular_core.InputSignal<string | null>;
2267
2267
  readonly rel: _angular_core.InputSignal<string | null>;
2268
- readonly type: _angular_core.InputSignal<"button" | "submit" | "reset">;
2268
+ readonly type: _angular_core.InputSignal<"button" | "reset" | "submit">;
2269
2269
  readonly ariaLabel: _angular_core.InputSignal<string | null>;
2270
2270
  readonly clicked: _angular_core.OutputEmitterRef<MouseEvent>;
2271
2271
  readonly iconSize: _angular_core.Signal<number>;
@@ -3171,7 +3171,7 @@ declare class SuiCompactButton {
3171
3171
  readonly href: _angular_core.InputSignal<string | null>;
3172
3172
  readonly target: _angular_core.InputSignal<string | null>;
3173
3173
  readonly rel: _angular_core.InputSignal<string | null>;
3174
- readonly type: _angular_core.InputSignal<"button" | "submit" | "reset">;
3174
+ readonly type: _angular_core.InputSignal<"button" | "reset" | "submit">;
3175
3175
  readonly ariaLabel: _angular_core.InputSignal<string>;
3176
3176
  readonly clicked: _angular_core.OutputEmitterRef<MouseEvent>;
3177
3177
  readonly iconSize: _angular_core.Signal<number>;
@@ -3266,7 +3266,7 @@ declare class SuiCompactSelectForInput<T = string> implements ControlValueAccess
3266
3266
  readonly arrowIcon: _angular_core.Signal<"arrow-up-s-line" | "arrow-down-s-line">;
3267
3267
  readonly displayValue: _angular_core.Signal<string>;
3268
3268
  readonly displayFlag: _angular_core.Signal<"abkhazia" | "afghanistan" | "aland-islands" | "albania" | "algeria" | "american-samoa" | "andorra" | "angola" | "anguilla" | "antigua-and-barbuda" | "argentina" | "armenia" | "aruba" | "australia" | "austria" | "azerbaijan" | "azores-islands" | "bahamas" | "bahrain" | "balearic-islands" | "bangladesh" | "barbados" | "basque-country" | "belarus" | "belgium" | "belize" | "benin" | "bermuda" | "bhutan" | "bolivia" | "bonaire" | "bosnia-and-herzegovina" | "botswana" | "brazil" | "british-columbia" | "british-indian-ocean-territory" | "british-virgin-islands" | "brunei" | "bulgaria" | "burkina-faso" | "burundi" | "cambodia" | "cameroon" | "canada" | "canary-islands" | "cape-verde" | "cayman-islands" | "central-african-republic" | "ceuta" | "chad" | "chile" | "china" | "christmas-island" | "cocos-island" | "colombia" | "comoros" | "cook-islands" | "corsica" | "costa-rica" | "croatia" | "cuba" | "curacao" | "cyprus" | "czech-republic" | "democratic-republic-of-congo" | "denmark" | "djibouti" | "dominica" | "dominican-republic" | "east-timor" | "ecuador" | "egypt" | "el-salvador" | "england" | "equatorial-guinea" | "eritrea" | "estonia" | "ethiopia" | "european-union" | "falkland-islands" | "faroe-islands" | "fiji" | "finland" | "france" | "french-polynesia" | "gabon" | "galapagos-islands" | "gambia" | "georgia" | "germany" | "ghana" | "gibraltar" | "greece" | "greenland" | "grenada" | "guam" | "guatemala" | "guernsey" | "guinea-bissau" | "guinea" | "guyana" | "haiti" | "hawaii" | "honduras" | "hong-kong" | "hungary" | "iceland" | "india" | "indonesia" | "iran" | "iraq" | "ireland" | "isle-of-man" | "israel" | "italy" | "ivory-coast" | "jamaica" | "japan" | "jersey" | "jordan" | "kazakhstan" | "kenya" | "kiribati" | "kosovo" | "kuwait" | "kyrgyzstan" | "laos" | "latvia" | "lebanon" | "lesotho" | "liberia" | "libya" | "liechtenstein" | "lithuania" | "luxembourg" | "macao" | "madagascar" | "madeira" | "malawi" | "malaysia" | "maldives" | "mali" | "malta" | "marshall-island" | "martinique" | "mauritania" | "mauritus" | "melilla" | "mexico" | "micronesia" | "moldova" | "monaco" | "mongolia" | "montenegro" | "montserrat" | "morocco" | "mozambique" | "myanmar" | "namibia" | "nato" | "nauru" | "nepal" | "netherlands" | "new-zealand" | "nicaragua" | "niger" | "nigeria" | "niue" | "norfolk-island" | "north-korea" | "northern-cyprus" | "northern-marianas-islands" | "norway" | "oman" | "orkney-islands" | "ossetia" | "pakistan" | "palau" | "palestine" | "panama" | "papua-new-guinea" | "paraguay" | "peru" | "philippines" | "pitcairn-islands" | "poland" | "portugal" | "puerto-rico" | "qatar" | "rapa-nui" | "republic-of-macedonia" | "republic-of-the-congo" | "romania" | "russia" | "rwanda" | "saba-island" | "sahrawi-arab-democratic-republic" | "saint-kitts-and-nevis" | "samoa" | "san-marino" | "sao-tome-and-prince" | "sardinia" | "saudi-arabia" | "scotland" | "senegal" | "serbia" | "seychelles" | "sierra-leone" | "singapore" | "sint-eustatius" | "sint-maarten" | "slovakia" | "slovania" | "solomon-islands" | "somalia" | "somaliland" | "south-africa" | "south-korea" | "south-sudan" | "spain" | "sri-lanka" | "st-barts" | "st-lucia" | "st-vincent-and-the-grenadines" | "sudan" | "suriname" | "swaziland" | "sweden" | "switzerland" | "syria" | "taijikistan" | "taiwan" | "tanzania" | "thailand" | "tibet" | "togo" | "tokelau" | "tonga" | "transnistria" | "trinidad-and-tobago" | "tunisia" | "turkey" | "turkmenistan" | "turks-and-caicos" | "tuvalu" | "uganda" | "ukraine" | "united-arab-emirates" | "united-kingdom" | "united-nations" | "united-states" | "uruguay" | "uzbekistan" | "vanuatu" | "vatican-city" | "venezuela" | "vietnam" | "virgin-islands" | "wales" | "yemen" | "zambia" | "zimbabwe" | null>;
3269
- readonly flagSizePx: _angular_core.Signal<20 | 16>;
3269
+ readonly flagSizePx: _angular_core.Signal<16 | 20>;
3270
3270
  onHostClick(event: Event): void;
3271
3271
  protected onMenuOpenedChange(open: boolean): void;
3272
3272
  protected selectItem(item: SuiCompactSelectForInputItem<T>): void;
@@ -4310,7 +4310,7 @@ declare class SuiDayCell {
4310
4310
  /** Type=Basic (default) o Range (entre extremos / extremo del range). */
4311
4311
  readonly type: _angular_core.InputSignal<SuiDayCellType>;
4312
4312
  /** Position dentro del range — solo aplica si type=range. */
4313
- readonly rangePosition: _angular_core.InputSignal<"start" | "end" | "in" | null>;
4313
+ readonly rangePosition: _angular_core.InputSignal<"end" | "start" | "in" | null>;
4314
4314
  /** Selected (mode date) o range extremo (start/end con bg primary). */
4315
4315
  readonly selected: _angular_core.InputSignal<boolean>;
4316
4316
  /** Marker dot (evento / pedido / disponibilidad). */
@@ -5037,7 +5037,7 @@ type SuiEmojiName = keyof typeof SUI_EMOJI_MAP;
5037
5037
  type SuiEmojiSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'full';
5038
5038
  declare class SuiEmoji {
5039
5039
  /** Nombre del emoji del catálogo. Si se proveé `src`, este se ignora. */
5040
- readonly name: _angular_core.InputSignal<"label" | "warning" | "thinking-face" | "grinning-face" | "smiling-face-hearts" | "face-with-rolling-eyes" | "face-screaming" | "partying-face" | "star-struck" | "sleeping-face" | "pensive-face" | "confused-face" | "neutral-face" | "slightly-smiling-face" | "grinning-face-smiling-eyes" | "package" | "receipt" | "money-bag" | "money-with-wings" | "shopping-cart" | "shopping-bags" | "card-index-dividers" | "bell" | "bell-with-slash" | "pushpin" | "mobile-phone" | "gear" | "locked" | "unlocked" | "wrench" | "hammer" | "magnifying-glass-tilted-left" | "spiral-calendar" | "bar-chart" | "delivery-truck" | "motorcycle" | "rocket" | "house" | "office-building" | "shop" | "dollar-banknote" | "glowing-star" | "kick-scooter" | "check-mark" | "check-mark-button" | "cross-mark" | "no-entry" | "sparkles" | "party-popper" | "waving-hand" | "thumbs-up" | "clapping-hands" | "handshake" | "busts-in-silhouette" | "pizza" | "hamburger" | "taco" | "birthday-cake" | null>;
5040
+ readonly name: _angular_core.InputSignal<"warning" | "label" | "thinking-face" | "grinning-face" | "smiling-face-hearts" | "face-with-rolling-eyes" | "face-screaming" | "partying-face" | "star-struck" | "sleeping-face" | "pensive-face" | "confused-face" | "neutral-face" | "slightly-smiling-face" | "grinning-face-smiling-eyes" | "package" | "receipt" | "money-bag" | "money-with-wings" | "shopping-cart" | "shopping-bags" | "card-index-dividers" | "bell" | "bell-with-slash" | "pushpin" | "mobile-phone" | "gear" | "locked" | "unlocked" | "wrench" | "hammer" | "magnifying-glass-tilted-left" | "spiral-calendar" | "bar-chart" | "delivery-truck" | "motorcycle" | "rocket" | "house" | "office-building" | "shop" | "dollar-banknote" | "glowing-star" | "kick-scooter" | "check-mark" | "check-mark-button" | "cross-mark" | "no-entry" | "sparkles" | "party-popper" | "waving-hand" | "thumbs-up" | "clapping-hands" | "handshake" | "busts-in-silhouette" | "pizza" | "hamburger" | "taco" | "birthday-cake" | null>;
5041
5041
  /** URL directa al emoji (override del catálogo). Útil para usar emojis fuera del map. */
5042
5042
  readonly src: _angular_core.InputSignal<string | null>;
5043
5043
  /** Tamaño del emoji. */
@@ -5226,7 +5226,7 @@ declare class SuiFancyButton {
5226
5226
  readonly href: _angular_core.InputSignal<string | null>;
5227
5227
  readonly target: _angular_core.InputSignal<string | null>;
5228
5228
  readonly rel: _angular_core.InputSignal<string | null>;
5229
- readonly htmlType: _angular_core.InputSignal<"button" | "submit" | "reset">;
5229
+ readonly htmlType: _angular_core.InputSignal<"button" | "reset" | "submit">;
5230
5230
  readonly ariaLabel: _angular_core.InputSignal<string | null>;
5231
5231
  readonly clicked: _angular_core.OutputEmitterRef<MouseEvent>;
5232
5232
  readonly iconSize: _angular_core.Signal<number>;
@@ -5448,7 +5448,7 @@ declare class SuiFileUploadCard {
5448
5448
  /** Default status text por state — override-able vía input. */
5449
5449
  protected readonly resolvedStatusText: _angular_core.Signal<string>;
5450
5450
  /** Status icon name por state (Remix Icons). */
5451
- protected readonly statusIconName: _angular_core.Signal<"checkbox-circle-fill" | "error-warning-fill" | "loader-2-fill">;
5451
+ protected readonly statusIconName: _angular_core.Signal<"error-warning-fill" | "checkbox-circle-fill" | "loader-2-fill">;
5452
5452
  /** Compact button (right-side) icon name por state. */
5453
5453
  protected readonly actionIconName: _angular_core.Signal<"close-line" | "delete-bin-line">;
5454
5454
  /** Progress 0–100 clamped. */
@@ -5543,13 +5543,13 @@ declare class SuiFileUpload {
5543
5543
  protected readonly inputRef: _angular_core.Signal<ElementRef<HTMLInputElement> | undefined>;
5544
5544
  protected readonly dragging: _angular_core.WritableSignal<boolean>;
5545
5545
  protected readonly internalError: _angular_core.WritableSignal<string | null>;
5546
- protected readonly state: _angular_core.Signal<"default" | "error" | "disabled" | "dragover">;
5546
+ protected readonly state: _angular_core.Signal<"error" | "default" | "dragover" | "disabled">;
5547
5547
  protected readonly resolvedTitle: _angular_core.Signal<string>;
5548
5548
  protected readonly resolvedSubtitle: _angular_core.Signal<string>;
5549
5549
  protected readonly resolvedErrorMessage: _angular_core.Signal<string | null>;
5550
5550
  /** Icon size px. Figma verified = 24 (medium). small/large/xlarge escalan +4
5551
5551
  * (small 20 → medium 24 → large 28 → xlarge 32) — extensión de proyecto. */
5552
- protected readonly iconSize: _angular_core.Signal<20 | 24 | 32 | 28>;
5552
+ protected readonly iconSize: _angular_core.Signal<32 | 20 | 24 | 28>;
5553
5553
  onClick(): void;
5554
5554
  /** Browse File button — abre el picker. stopPropagation evita doble-open
5555
5555
  * (el host también es clickeable). */
@@ -6191,9 +6191,9 @@ declare class SuiImageUpload {
6191
6191
  protected readonly sizePx: _angular_core.Signal<number>;
6192
6192
  /** Camera icon px en el empty state. xl escala a 20, resto 16
6193
6193
  * (matchea el escalado del contenedor 32→40 en SCSS). */
6194
- protected readonly iconSize: _angular_core.Signal<20 | 16>;
6194
+ protected readonly iconSize: _angular_core.Signal<16 | 20>;
6195
6195
  protected readonly hasSrc: _angular_core.Signal<boolean>;
6196
- protected readonly state: _angular_core.Signal<"filled" | "disabled" | "dragover" | "empty">;
6196
+ protected readonly state: _angular_core.Signal<"dragover" | "filled" | "disabled" | "empty">;
6197
6197
  protected readonly resolvedTitle: _angular_core.Signal<string>;
6198
6198
  protected readonly resolvedSubtitle: _angular_core.Signal<string>;
6199
6199
  onHostClick(): void;
@@ -6574,10 +6574,15 @@ declare class SuiInput implements ControlValueAccessor {
6574
6574
  * hay teclado abierto, por eso escuchamos también `touchstart` (nativo iOS)
6575
6575
  * y `mousedown` (web fallback). Cualquiera de los tres dispara el blur.
6576
6576
  *
6577
- * Usamos `document.activeElement.blur()` cuando ese elemento está dentro
6578
- * del host — eso garantiza que blur surta efecto en el input que realmente
6579
- * tiene el focus, no en una referencia stale. Fallback a inputEl por si
6580
- * activeElement no está dentro del host (edge case).
6577
+ * Solo hace blur cuando el elemento enfocado vive DENTRO de este host: si el
6578
+ * foco está en otro lado (otro input, un textarea, nada), acá no hay teclado
6579
+ * que cerrar y tocarlo es un bug. El listener es a nivel `document`, así que
6580
+ * cada instancia de la página recibe todos los taps: con un blur incondicional
6581
+ * de `inputEl`, tocar el texto de un input cerraba el teclado porque los OTROS
6582
+ * sui-input de la pantalla hacían blur de los suyos —y en iOS un blur con el
6583
+ * teclado abierto lo cierra aunque el elemento no tenga el foco. Se veía en
6584
+ * cualquier formulario con más de un campo y no en el buscador del home, que
6585
+ * tiene uno solo.
6581
6586
  */
6582
6587
  onDocumentTap(event: Event): void;
6583
6588
  private readonly _disabledByForm;
@@ -7229,8 +7234,26 @@ declare class SuiModal implements AfterViewInit, OnDestroy {
7229
7234
  readonly backdropBlur: _angular_core.InputSignal<boolean>;
7230
7235
  /** Solo afecta en mobile (≤768px): el modal toma todo el ancho desde safe-area-top
7231
7236
  hasta safe-area-bottom, deja el área superior visible (status bar respetado),
7232
- y se eleva con el teclado. En desktop el modal funciona como `size` indica. */
7233
- readonly fullscreen: _angular_core.InputSignal<boolean>;
7237
+ y se eleva con el teclado. En desktop el modal funciona como `size` indica.
7238
+ *
7239
+ * `'auto'` (default) resuelve por plataforma: **dentro de la app nativa va a
7240
+ * pantalla completa, en el navegador móvil queda centrado**. Es lo que
7241
+ * distingue a una app de una web abierta en el teléfono, y hacerlo acá evita
7242
+ * que cada pantalla tenga que acordarse — venía puesto a mano modal por
7243
+ * modal, y de 37 fullscreen de la app 28 se lo habían olvidado.
7244
+ *
7245
+ * `true` fuerza pantalla completa también en la web móvil; `false` la
7246
+ * desactiva siempre. Ese `false` explícito es para las confirmaciones de una
7247
+ * línea con dos botones («¿Cancelar pedido?»): ocupar toda la pantalla para
7248
+ * preguntar sí o no comunica que es un paso más grande de lo que es. */
7249
+ readonly fullscreen: _angular_core.InputSignal<boolean | "auto">;
7250
+ /** ¿Corre dentro de la app nativa? Se lee del DOM y NO del runtime de
7251
+ * Capacitor: el design system no puede depender de la app que lo usa. La
7252
+ * clase la pone el host al arrancar, y es el mismo marcador que este SCSS ya
7253
+ * usa para el safe-area de Android. */
7254
+ private static enApp;
7255
+ /** `fullscreen` ya resuelto: es lo que miran la plantilla y el host. */
7256
+ protected readonly esFullscreen: _angular_core.Signal<boolean>;
7234
7257
  /** Quita el padding del body para contenido full-bleed (mapas, imágenes
7235
7258
  grandes). El consumer es responsable de su propio spacing interno. */
7236
7259
  readonly fullBody: _angular_core.InputSignal<boolean>;
@@ -7693,7 +7716,7 @@ declare class SuiNotification {
7693
7716
  readonly dismissible: _angular_core.InputSignal<boolean>;
7694
7717
  readonly unread: _angular_core.InputSignal<boolean>;
7695
7718
  /** Item body type. 'basic' keeps the legacy/alert layout (no body slot). */
7696
- readonly type: _angular_core.InputSignal<"basic" | "file" | "button" | "message">;
7719
+ readonly type: _angular_core.InputSignal<"button" | "basic" | "file" | "message">;
7697
7720
  /** When true, item paints the Figma hover bg + reveals the more-2-line button. */
7698
7721
  readonly showMore: _angular_core.InputSignal<boolean>;
7699
7722
  /** Forces the hover affordance visible (e.g. keyboard-focused row). */
@@ -8522,7 +8545,7 @@ declare class SuiRadioCard implements ControlValueAccessor {
8522
8545
  * Emoji del catálogo SUI_EMOJI_MAP — alternativa a icon para type='left-icon'.
8523
8546
  * Si ambos están, icon tiene precedencia.
8524
8547
  */
8525
- readonly emoji: _angular_core.InputSignal<"label" | "warning" | "thinking-face" | "grinning-face" | "smiling-face-hearts" | "face-with-rolling-eyes" | "face-screaming" | "partying-face" | "star-struck" | "sleeping-face" | "pensive-face" | "confused-face" | "neutral-face" | "slightly-smiling-face" | "grinning-face-smiling-eyes" | "package" | "receipt" | "money-bag" | "money-with-wings" | "shopping-cart" | "shopping-bags" | "card-index-dividers" | "bell" | "bell-with-slash" | "pushpin" | "mobile-phone" | "gear" | "locked" | "unlocked" | "wrench" | "hammer" | "magnifying-glass-tilted-left" | "spiral-calendar" | "bar-chart" | "delivery-truck" | "motorcycle" | "rocket" | "house" | "office-building" | "shop" | "dollar-banknote" | "glowing-star" | "kick-scooter" | "check-mark" | "check-mark-button" | "cross-mark" | "no-entry" | "sparkles" | "party-popper" | "waving-hand" | "thumbs-up" | "clapping-hands" | "handshake" | "busts-in-silhouette" | "pizza" | "hamburger" | "taco" | "birthday-cake" | null>;
8548
+ readonly emoji: _angular_core.InputSignal<"warning" | "label" | "thinking-face" | "grinning-face" | "smiling-face-hearts" | "face-with-rolling-eyes" | "face-screaming" | "partying-face" | "star-struck" | "sleeping-face" | "pensive-face" | "confused-face" | "neutral-face" | "slightly-smiling-face" | "grinning-face-smiling-eyes" | "package" | "receipt" | "money-bag" | "money-with-wings" | "shopping-cart" | "shopping-bags" | "card-index-dividers" | "bell" | "bell-with-slash" | "pushpin" | "mobile-phone" | "gear" | "locked" | "unlocked" | "wrench" | "hammer" | "magnifying-glass-tilted-left" | "spiral-calendar" | "bar-chart" | "delivery-truck" | "motorcycle" | "rocket" | "house" | "office-building" | "shop" | "dollar-banknote" | "glowing-star" | "kick-scooter" | "check-mark" | "check-mark-button" | "cross-mark" | "no-entry" | "sparkles" | "party-popper" | "waving-hand" | "thumbs-up" | "clapping-hands" | "handshake" | "busts-in-silhouette" | "pizza" | "hamburger" | "taco" | "birthday-cake" | null>;
8526
8549
  /**
8527
8550
  * URL directa al emoji para type='left-icon'. Útil cuando el consumer ya tiene
8528
8551
  * la URL (ej. FLUENT_EMOJI map del proyecto) y no quiere registrar el emoji
@@ -9604,7 +9627,7 @@ declare class SuiSocialButton {
9604
9627
  readonly href: _angular_core.InputSignal<string | null>;
9605
9628
  readonly target: _angular_core.InputSignal<string | null>;
9606
9629
  readonly rel: _angular_core.InputSignal<string | null>;
9607
- readonly type: _angular_core.InputSignal<"button" | "submit" | "reset">;
9630
+ readonly type: _angular_core.InputSignal<"button" | "reset" | "submit">;
9608
9631
  readonly ariaLabel: _angular_core.InputSignal<string | null>;
9609
9632
  readonly clicked: _angular_core.OutputEmitterRef<MouseEvent>;
9610
9633
  /** Disabled efectivo: el input disabled O el estado loading. */
@@ -9716,7 +9739,7 @@ declare class SuiStatusBadge {
9716
9739
  */
9717
9740
  readonly withDot: _angular_core.InputSignal<boolean>;
9718
9741
  /** Icono Remix mapeado al status. Solo se usa cuando withDot=false. */
9719
- readonly iconName: _angular_core.Signal<"checkbox-circle-fill" | "alert-fill" | "error-warning-fill" | "information-fill" | "forbid-fill">;
9742
+ readonly iconName: _angular_core.Signal<"error-warning-fill" | "alert-fill" | "checkbox-circle-fill" | "information-fill" | "forbid-fill">;
9720
9743
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<SuiStatusBadge, never>;
9721
9744
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiStatusBadge, "sui-status-badge", never, { "status": { "alias": "status"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "withDot": { "alias": "withDot"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
9722
9745
  }
@@ -10163,7 +10186,7 @@ declare class SuiSwitchCard implements ControlValueAccessor {
10163
10186
  * `<sui-icon>` proyectado vía `[sui-switch-card-leading]` y se renderiza
10164
10187
  * con las MISMAS dimensiones (20×20 dentro del círculo de 40px).
10165
10188
  */
10166
- readonly emoji: _angular_core.InputSignal<"label" | "warning" | "thinking-face" | "grinning-face" | "smiling-face-hearts" | "face-with-rolling-eyes" | "face-screaming" | "partying-face" | "star-struck" | "sleeping-face" | "pensive-face" | "confused-face" | "neutral-face" | "slightly-smiling-face" | "grinning-face-smiling-eyes" | "package" | "receipt" | "money-bag" | "money-with-wings" | "shopping-cart" | "shopping-bags" | "card-index-dividers" | "bell" | "bell-with-slash" | "pushpin" | "mobile-phone" | "gear" | "locked" | "unlocked" | "wrench" | "hammer" | "magnifying-glass-tilted-left" | "spiral-calendar" | "bar-chart" | "delivery-truck" | "motorcycle" | "rocket" | "house" | "office-building" | "shop" | "dollar-banknote" | "glowing-star" | "kick-scooter" | "check-mark" | "check-mark-button" | "cross-mark" | "no-entry" | "sparkles" | "party-popper" | "waving-hand" | "thumbs-up" | "clapping-hands" | "handshake" | "busts-in-silhouette" | "pizza" | "hamburger" | "taco" | "birthday-cake" | null>;
10189
+ readonly emoji: _angular_core.InputSignal<"warning" | "label" | "thinking-face" | "grinning-face" | "smiling-face-hearts" | "face-with-rolling-eyes" | "face-screaming" | "partying-face" | "star-struck" | "sleeping-face" | "pensive-face" | "confused-face" | "neutral-face" | "slightly-smiling-face" | "grinning-face-smiling-eyes" | "package" | "receipt" | "money-bag" | "money-with-wings" | "shopping-cart" | "shopping-bags" | "card-index-dividers" | "bell" | "bell-with-slash" | "pushpin" | "mobile-phone" | "gear" | "locked" | "unlocked" | "wrench" | "hammer" | "magnifying-glass-tilted-left" | "spiral-calendar" | "bar-chart" | "delivery-truck" | "motorcycle" | "rocket" | "house" | "office-building" | "shop" | "dollar-banknote" | "glowing-star" | "kick-scooter" | "check-mark" | "check-mark-button" | "cross-mark" | "no-entry" | "sparkles" | "party-popper" | "waving-hand" | "thumbs-up" | "clapping-hands" | "handshake" | "busts-in-silhouette" | "pizza" | "hamburger" | "taco" | "birthday-cake" | null>;
10167
10190
  /**
10168
10191
  * URL de imagen para type='avatar' — se renderiza con sui-avatar size=lg
10169
10192
  * (40×40 redonda). Si la imagen falla, fallback automático a iniciales del