@ajuarezso/sui-design-system 0.7.25 → 0.8.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.
|
@@ -1320,7 +1320,7 @@ declare class SuiBanner {
|
|
|
1320
1320
|
declare const SUI_BRAND_LOGO_COMPANIES: readonly ["adobe", "amazon", "apple", "bitcoin", "discord", "dropbox", "facebook", "figma", "framer", "github", "google", "instagram", "linkedin", "microsoft", "netflix", "notion", "paypal", "pinterest", "slack", "spotify", "stripe", "telegram", "twitch", "webflow", "whatsapp", "wise", "x-twitter", "youtube"];
|
|
1321
1321
|
type SuiBrandLogoCompany = (typeof SUI_BRAND_LOGO_COMPANIES)[number];
|
|
1322
1322
|
type SuiBrandLogoStyle = 'original' | 'black' | 'white';
|
|
1323
|
-
type SuiBrandLogoSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
|
|
1323
|
+
type SuiBrandLogoSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';
|
|
1324
1324
|
/**
|
|
1325
1325
|
* SUI Brand Logo — SUI Design System 2.0
|
|
1326
1326
|
*
|
|
@@ -1818,6 +1818,174 @@ declare class SuiCard {
|
|
|
1818
1818
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiCard, "sui-card", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "interactive": { "alias": "interactive"; "required": false; "isSignal": true; }; }, {}, never, ["[sui-card-header]", "*", "[sui-card-media]", "[sui-card-footer]"], true, never>;
|
|
1819
1819
|
}
|
|
1820
1820
|
|
|
1821
|
+
/**
|
|
1822
|
+
* Colores canon de series de chart — SUI 2.0.
|
|
1823
|
+
* Los 11 colores del set de dots (Figma 2942:9880) + `disabled`
|
|
1824
|
+
* (variant extra que solo existe en el set de legends, Figma 3871:20344:
|
|
1825
|
+
* mismo dot que `light-gray` pero con el label apagado en el legend).
|
|
1826
|
+
*/
|
|
1827
|
+
type SuiChartLegendColor = 'gray' | 'light-gray' | 'blue' | 'orange' | 'red' | 'green' | 'yellow' | 'purple' | 'sky' | 'pink' | 'teal' | 'disabled';
|
|
1828
|
+
/** Orden EXACTO del set de Figma 2942:9880 (11 colores; `disabled` no es un color de serie). */
|
|
1829
|
+
declare const SUI_CHART_LEGEND_COLORS: readonly SuiChartLegendColor[];
|
|
1830
|
+
/**
|
|
1831
|
+
* Ciclo de auto-asignación de colores para series de chart (usado por
|
|
1832
|
+
* `<sui-chart-legend>` cuando un item no trae color explícito).
|
|
1833
|
+
* NO es canon de Figma (el set no define orden de series): arranca en `blue`
|
|
1834
|
+
* (primera serie de facto del DS) y deja los grises al final para que los
|
|
1835
|
+
* primeros N series de cualquier chart salgan con color.
|
|
1836
|
+
*/
|
|
1837
|
+
declare const SUI_CHART_SERIES_COLORS: readonly SuiChartLegendColor[];
|
|
1838
|
+
/**
|
|
1839
|
+
* Mapa color → hex canónico resuelto (valores de los tokens `--sui-state-*-base`
|
|
1840
|
+
* que Figma bindea en cada variant). Útil para alimentar la MISMA paleta a la
|
|
1841
|
+
* lib de charts del consumer (echarts `series[].color`, etc.) y que el dot de
|
|
1842
|
+
* la leyenda matchee 1:1 el color pintado en la gráfica.
|
|
1843
|
+
*/
|
|
1844
|
+
declare const SUI_CHART_LEGEND_HEX: Record<SuiChartLegendColor, string>;
|
|
1845
|
+
/**
|
|
1846
|
+
* SUI Chart Legend Dot — SUI Design System 2.0
|
|
1847
|
+
*
|
|
1848
|
+
* Figma file: 8p1k72aKKvzJV4XcvPS4VO
|
|
1849
|
+
* Node: 2942:9880 "Chart Legend Dots [1.1]" — VERIFIED via MCP
|
|
1850
|
+
*
|
|
1851
|
+
* Átomo decorativo de las leyendas de chart: el punto de color de una serie.
|
|
1852
|
+
* Render 100% CSS (el SVG de Figma es circle fill + stroke blanco + drop
|
|
1853
|
+
* shadow — se replica con background + box-shadow, sin assets).
|
|
1854
|
+
*
|
|
1855
|
+
* EXACT (pulled from Figma 2942:9880 via get_metadata + get_design_context +
|
|
1856
|
+
* SVG del asset del ellipse):
|
|
1857
|
+
* - 22 variants en figma = 11 colores × 2 sizes (Medium 20 / Small 16)
|
|
1858
|
+
* - Container: 20×20 (medium) / 16×16 (small)
|
|
1859
|
+
* - Ellipse SIEMPRE 12×12 centrado (circle r=6) — solo cambia el container
|
|
1860
|
+
* (medium inset 20% = 4px; small inset 12.5% = 2px)
|
|
1861
|
+
* - Ring interno blanco: stroke 2px en r=5 (`stroke/white-0`) → core de
|
|
1862
|
+
* color visible ≈8px + anillo blanco 2px hasta el borde (separa el dot
|
|
1863
|
+
* del fill del chart en fondos no-blancos)
|
|
1864
|
+
* - Drop shadow: Figma var `regular-shadow/small` = 0 2px 4px 0 #1b1c1d0a
|
|
1865
|
+
* (SIN token en la lib — solo existen regular-shadow x-small y medium;
|
|
1866
|
+
* se usa el valor EXACT literal en el scss)
|
|
1867
|
+
*
|
|
1868
|
+
* Color tokens (bound en Figma, verificados en src/styles/sui-tokens.scss):
|
|
1869
|
+
* gray → --sui-state-faded-base (#7b7b7b)
|
|
1870
|
+
* light-gray → --sui-icon-disabled-300 (#d1d1d1)
|
|
1871
|
+
* blue → --sui-state-information-base (#335cff)
|
|
1872
|
+
* orange → --sui-state-warning-base (#fa7319)
|
|
1873
|
+
* red → --sui-state-error-base (#fb3748)
|
|
1874
|
+
* green → --sui-state-success-base (#1fc16b)
|
|
1875
|
+
* yellow → --sui-state-away-base (#f6b51e)
|
|
1876
|
+
* purple → --sui-state-feature-base (#7d52f4)
|
|
1877
|
+
* sky → --sui-state-verified-base (#47c2ff)
|
|
1878
|
+
* pink → --sui-state-highlighted-base (#fb4ba3)
|
|
1879
|
+
* teal → --sui-state-stable-base (#22d3bb)
|
|
1880
|
+
* disabled → --sui-icon-disabled-300 (#d1d1d1, igual a light-gray)
|
|
1881
|
+
*
|
|
1882
|
+
* `customColor` acepta cualquier CSS color (hex de una paleta echarts custom)
|
|
1883
|
+
* y sobreescribe el preset — mismo patrón que `customHex` de sui-color-dot.
|
|
1884
|
+
*
|
|
1885
|
+
* A11y: decorativo puro (aria-hidden). El significado lo lleva el label del
|
|
1886
|
+
* `<sui-chart-legend>` que lo compone.
|
|
1887
|
+
*
|
|
1888
|
+
* Usage:
|
|
1889
|
+
* <sui-chart-legend-dot color="blue" />
|
|
1890
|
+
* <sui-chart-legend-dot color="green" size="small" />
|
|
1891
|
+
* <sui-chart-legend-dot [customColor]="'#8b5cf6'" />
|
|
1892
|
+
*/
|
|
1893
|
+
declare class SuiChartLegendDot {
|
|
1894
|
+
/** Color canon de la serie. Default `gray` (variant default del set Figma). */
|
|
1895
|
+
readonly color: _angular_core.InputSignal<SuiChartLegendColor>;
|
|
1896
|
+
/** Size del container: `medium` 20×20 / `small` 16×16. El dot es 12×12 en ambos. */
|
|
1897
|
+
readonly size: _angular_core.InputSignal<"small" | "medium">;
|
|
1898
|
+
/**
|
|
1899
|
+
* CSS color custom (override del preset) para series fuera de la paleta
|
|
1900
|
+
* canon — ej. colores de una paleta echarts propia. Si presente, ignora
|
|
1901
|
+
* `color` a nivel visual.
|
|
1902
|
+
*/
|
|
1903
|
+
readonly customColor: _angular_core.InputSignal<string | null>;
|
|
1904
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SuiChartLegendDot, never>;
|
|
1905
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiChartLegendDot, "sui-chart-legend-dot", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "customColor": { "alias": "customColor"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1906
|
+
}
|
|
1907
|
+
|
|
1908
|
+
/**
|
|
1909
|
+
* Item del array `items` del legend.
|
|
1910
|
+
* Contrato "config presente = visible": `value` solo se renderiza si viene.
|
|
1911
|
+
*/
|
|
1912
|
+
interface SuiChartLegendItem {
|
|
1913
|
+
/** Label de la serie (requerido). */
|
|
1914
|
+
label: string;
|
|
1915
|
+
/**
|
|
1916
|
+
* Color canon del dot. Si se omite (y no hay `customColor`), el legend
|
|
1917
|
+
* auto-asigna ciclando `SUI_CHART_SERIES_COLORS` por índice.
|
|
1918
|
+
*/
|
|
1919
|
+
color?: SuiChartLegendColor;
|
|
1920
|
+
/** CSS color custom del dot (override del preset) — paletas echarts propias. */
|
|
1921
|
+
customColor?: string;
|
|
1922
|
+
/** Valor opcional de la serie, renderizado después del label (ej. `42%`, `S/ 1,200`). */
|
|
1923
|
+
value?: string | number;
|
|
1924
|
+
/**
|
|
1925
|
+
* Serie apagada (Figma 3871:20344 "Disabled"): dot gris pálido + label
|
|
1926
|
+
* disabled-300. Gana sobre `color`/`customColor`.
|
|
1927
|
+
*/
|
|
1928
|
+
disabled?: boolean;
|
|
1929
|
+
}
|
|
1930
|
+
/** Shape interno ya resuelto (color efectivo calculado). */
|
|
1931
|
+
interface ResolvedLegendItem {
|
|
1932
|
+
data: SuiChartLegendItem;
|
|
1933
|
+
color: SuiChartLegendColor;
|
|
1934
|
+
customColor: string | null;
|
|
1935
|
+
}
|
|
1936
|
+
/**
|
|
1937
|
+
* SUI Chart Legend — SUI Design System 2.0
|
|
1938
|
+
*
|
|
1939
|
+
* Figma file: 8p1k72aKKvzJV4XcvPS4VO
|
|
1940
|
+
* Node: 2942:9934 "Chart Legends [1.1]" — VERIFIED via MCP
|
|
1941
|
+
*
|
|
1942
|
+
* Leyenda de chart: recibe `items[]` y COMPONE `<sui-chart-legend-dot>`
|
|
1943
|
+
* (átomo, Figma 2942:9880) + label por serie — patrón familia breadcrumbs
|
|
1944
|
+
* (sui-breadcrumbs compone sui-breadcrumb-item).
|
|
1945
|
+
*
|
|
1946
|
+
* EXACT (pulled from Figma 2942:9934 via get_metadata + get_design_context):
|
|
1947
|
+
* - 12 variants en figma = 12 colores (Gray, Light Gray, Blue, Orange, Red,
|
|
1948
|
+
* Green, Yellow, Purple, Sky, Pink, Teal, Disabled). El set define el
|
|
1949
|
+
* ITEM individual (dot + label, 70×16); NO define orientaciones — el eje
|
|
1950
|
+
* `orientation` es prop de layout para consumo real con charts.
|
|
1951
|
+
* - Item: flex row, gap 4px, dot Small (16×16, ellipse 12×12)
|
|
1952
|
+
* - Label: Inter Medium 12/16 ls 0 (`Label/X Small`), color text/sub-600
|
|
1953
|
+
* - Disabled: label text/disabled-300 (#d1d1d1) + dot gris pálido
|
|
1954
|
+
* - Separación entre items: 24px (layout del frame del set)
|
|
1955
|
+
*
|
|
1956
|
+
* Colores: si un item no trae `color` ni `customColor`, se auto-asigna
|
|
1957
|
+
* ciclando `SUI_CHART_SERIES_COLORS` por índice (arranca en `blue`; NO es
|
|
1958
|
+
* canon Figma, es convención de consumo — el set no define orden de series).
|
|
1959
|
+
*
|
|
1960
|
+
* A11y: host `role="list"` + items `role="listitem"`; el dot es decorativo
|
|
1961
|
+
* (aria-hidden en el átomo).
|
|
1962
|
+
*
|
|
1963
|
+
* Usage:
|
|
1964
|
+
* <sui-chart-legend [items]="[
|
|
1965
|
+
* { label: 'Ventas', color: 'blue', value: '64%' },
|
|
1966
|
+
* { label: 'Devoluciones', color: 'red' },
|
|
1967
|
+
* { label: 'Archivadas', disabled: true },
|
|
1968
|
+
* ]" />
|
|
1969
|
+
*
|
|
1970
|
+
* <!-- auto-colores (blue, orange, red, …) + layout vertical -->
|
|
1971
|
+
* <sui-chart-legend orientation="vertical" [items]="[
|
|
1972
|
+
* { label: 'Lima' }, { label: 'Arequipa' }, { label: 'Cusco' },
|
|
1973
|
+
* ]" />
|
|
1974
|
+
*/
|
|
1975
|
+
declare class SuiChartLegend {
|
|
1976
|
+
/** Series de la leyenda, en orden de render. */
|
|
1977
|
+
readonly items: _angular_core.InputSignal<readonly SuiChartLegendItem[]>;
|
|
1978
|
+
/**
|
|
1979
|
+
* Disposición de los items: `horizontal` (row con wrap, default) o
|
|
1980
|
+
* `vertical` (columna — leyendas laterales de donut/pie).
|
|
1981
|
+
*/
|
|
1982
|
+
readonly orientation: _angular_core.InputSignal<"horizontal" | "vertical">;
|
|
1983
|
+
/** Items con color efectivo resuelto (disabled > customColor > color > ciclo auto). */
|
|
1984
|
+
protected readonly resolvedItems: _angular_core.Signal<ResolvedLegendItem[]>;
|
|
1985
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SuiChartLegend, never>;
|
|
1986
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiChartLegend, "sui-chart-legend", never, { "items": { "alias": "items"; "required": true; "isSignal": true; }; "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1987
|
+
}
|
|
1988
|
+
|
|
1821
1989
|
type SuiCheckboxSize = 'small' | 'medium' | 'large' | 'xlarge';
|
|
1822
1990
|
/**
|
|
1823
1991
|
* SUI Checkbox — SUI Design System 2.0
|
|
@@ -3230,147 +3398,232 @@ declare class SuiCompactSelect<T = string> implements ControlValueAccessor {
|
|
|
3230
3398
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiCompactSelect<any>, "sui-compact-select", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "flag": { "alias": "flag"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "selected": "selectedChange"; "clicked": "clicked"; "selectedChange": "selectedChange"; }, never, never, true, never>;
|
|
3231
3399
|
}
|
|
3232
3400
|
|
|
3401
|
+
/**
|
|
3402
|
+
* 5 tipos de leading visual del Content Label (eje 🧩 Type del set de Figma).
|
|
3403
|
+
* basic — sin leading; solo el bloque de texto.
|
|
3404
|
+
* left-icon — sui-key-icon (círculo stroke, icono = 50% del contenedor).
|
|
3405
|
+
* avatar — sui-avatar (foto / iniciales) 40/48px según size.
|
|
3406
|
+
* brand — sui-brand-logo RAW (sin caja) 40/48px según size.
|
|
3407
|
+
* company — sui-avatar con companyLogoSrc (logo de empresa) 40/48px.
|
|
3408
|
+
*/
|
|
3409
|
+
type SuiContentLabelType = 'basic' | 'left-icon' | 'avatar' | 'brand' | 'company';
|
|
3410
|
+
/** Eje 📏 Size del set: Medium (leading 40px) | Large (leading 48px). */
|
|
3411
|
+
type SuiContentLabelSize = 'medium' | 'large';
|
|
3412
|
+
/**
|
|
3413
|
+
* Dónde vive el badge:
|
|
3414
|
+
* trailing — a la derecha del row (canon del set Content Label de Figma).
|
|
3415
|
+
* title — inline en el title row, después del sublabel (así lo usa el
|
|
3416
|
+
* Content Card 2942:9503; existe para esa composición).
|
|
3417
|
+
*/
|
|
3418
|
+
type SuiContentLabelBadgePlacement = 'trailing' | 'title';
|
|
3419
|
+
/**
|
|
3420
|
+
* SUI Content Label — SUI Design System 2.0
|
|
3421
|
+
*
|
|
3422
|
+
* Figma file: 8p1k72aKKvzJV4XcvPS4VO — set "Content Label [1.1]" nodo 2945:5539
|
|
3423
|
+
* (FIGMA-VERIFIED 2026-07-23: metadata + design context + screenshot del set).
|
|
3424
|
+
* 10 variants = Type(5: Basic | Left Icon | Avatar | Brand | Company)
|
|
3425
|
+
* × Size(2: Medium 40 | Large 48).
|
|
3426
|
+
*
|
|
3427
|
+
* Fila de contenido SIN card: [ leading ] [ text block flex-1 ] [ trailing ].
|
|
3428
|
+
* Es la pieza base de la familia content — el Content Card (2942:9503) es este
|
|
3429
|
+
* mismo row envuelto en una card con botón X (ver sui-content-card, que COMPONE
|
|
3430
|
+
* este componente).
|
|
3431
|
+
*
|
|
3432
|
+
* EXACT (del design context de los nodos 2945:5540/5548/5557/5575/5584/5628):
|
|
3433
|
+
* row → flex, items-center, gap 14
|
|
3434
|
+
* text block → flex-col, gap 4, flex 1 1 0, min-width 0
|
|
3435
|
+
* title row → flex, items-center, gap 4
|
|
3436
|
+
* label medium → Inter Medium 14/20 ls -0.084px, text/strong-950 (Label/Small)
|
|
3437
|
+
* label large → Inter Medium 16/24 ls -0.176px, text/strong-950 (Label/Medium)
|
|
3438
|
+
* sublabel → Inter Regular 12/16 ls 0, text/sub-600 (ambos sizes)
|
|
3439
|
+
* descr medium → Inter Regular 12/16 ls 0, text/sub-600 (Paragraph/X Small)
|
|
3440
|
+
* descr large → Inter Regular 14/20 ls -0.084px, text/sub-600 (Paragraph/Small)
|
|
3441
|
+
* left-icon → instancia "Key Icons [1.1]" stroke: medium p-10 + icono 20
|
|
3442
|
+
* (= 40px), large p-12 + icono 24 (= 48px), radius-full,
|
|
3443
|
+
* border stroke-soft-200, bg white-0, shadow x-small
|
|
3444
|
+
* → se compone <sui-key-icon size 40/48 styleVariant="stroke">.
|
|
3445
|
+
* avatar → sui-avatar 40px (size lg) / 48px (size xl), radius-full.
|
|
3446
|
+
* brand → logo de marca RAW 40/48px (Spotify en el set), SIN caja.
|
|
3447
|
+
* company → círculo de empresa 40/48px (Synergy en el set) → sui-avatar
|
|
3448
|
+
* con companyLogoSrc / iniciales (mismo patrón del Content Card).
|
|
3449
|
+
* badge trailing → Badge [1.1] px-8 py-2 radius-full, texto Inter Medium 12/16
|
|
3450
|
+
* = <sui-badge size="medium"> (Label/X Small, sin uppercase).
|
|
3451
|
+
* Figma: bg state/information/light #c0d5ff + texto
|
|
3452
|
+
* state/information/dark #122368 (= sui-badge color "blue");
|
|
3453
|
+
* el fallback del proyecto es color 'orange' (branding).
|
|
3454
|
+
* toggle → Switch [1.1] 32×20 = <sui-switch size="medium">.
|
|
3455
|
+
*
|
|
3456
|
+
* Token map (Figma → sui-tokens):
|
|
3457
|
+
* text/strong-950 → --sui-text-strong-950 (label)
|
|
3458
|
+
* text/sub-600 → --sui-text-sub-600 (sublabel + description)
|
|
3459
|
+
* Label/Small → --sui-type-label-sm-* (label medium)
|
|
3460
|
+
* Label/Medium → --sui-type-label-md-* (label large)
|
|
3461
|
+
* Paragraph/X Small → --sui-type-paragraph-xs-* (sublabel + descr medium)
|
|
3462
|
+
* Paragraph/Small → --sui-type-paragraph-sm-* (descr large)
|
|
3463
|
+
*
|
|
3464
|
+
* Extensiones del proyecto (NO son ejes del set de Figma, documentadas):
|
|
3465
|
+
* - `badgePlacement='title'` — coloca el badge inline en el title row, como lo
|
|
3466
|
+
* renderiza el Content Card (2942:9503). Default 'trailing' (canon del set).
|
|
3467
|
+
* - `disabled` — atenúa texto/leading a tokens disabled-300 y bloquea el
|
|
3468
|
+
* switch. Heredado de la familia (el Content Card lo expone) para que la
|
|
3469
|
+
* composición no pierda el estado.
|
|
3470
|
+
*
|
|
3471
|
+
* Usage:
|
|
3472
|
+
* <sui-content-label label="Notificaciones" sublabel="(Push)"
|
|
3473
|
+
* description="Recibe avisos de tus pedidos"
|
|
3474
|
+
* [toggle]="true" [(toggleChecked)]="pushOn" />
|
|
3475
|
+
* <sui-content-label type="left-icon" icon="user-6-line" size="large"
|
|
3476
|
+
* label="Perfil" description="Datos de tu cuenta" badge="NUEVO" />
|
|
3477
|
+
* <sui-content-label type="avatar" [avatar]="{ initials: 'AT' }"
|
|
3478
|
+
* label="Ana Torres" description="ana@correo.com" />
|
|
3479
|
+
*/
|
|
3480
|
+
declare class SuiContentLabel {
|
|
3481
|
+
/** Tipo de leading visual. */
|
|
3482
|
+
readonly type: _angular_core.InputSignal<SuiContentLabelType>;
|
|
3483
|
+
/** Size del set: medium (leading 40, Label/Small) | large (leading 48, Label/Medium). */
|
|
3484
|
+
readonly size: _angular_core.InputSignal<SuiContentLabelSize>;
|
|
3485
|
+
/** Label principal — Label/Small (medium) / Label/Medium (large), text-strong-950. */
|
|
3486
|
+
readonly label: _angular_core.InputSignal<string>;
|
|
3487
|
+
/** Sublabel inline al lado del label — Paragraph/X Small, text-sub-600. Vacío = no se renderiza. */
|
|
3488
|
+
readonly sublabel: _angular_core.InputSignal<string>;
|
|
3489
|
+
/** Descripción bajo el title row — Paragraph/X Small (medium) / Paragraph/Small (large), text-sub-600. */
|
|
3490
|
+
readonly description: _angular_core.InputSignal<string>;
|
|
3491
|
+
/** RemixIcon name (sin 'ri-') para type=left-icon — va al sui-key-icon. */
|
|
3492
|
+
readonly icon: _angular_core.InputSignal<string | null>;
|
|
3493
|
+
/** Avatar del leading (type=avatar / company) — string shorthand (src directo)
|
|
3494
|
+
o SuiAvatarConfig { src?, initials?, color? }. */
|
|
3495
|
+
readonly avatar: _angular_core.InputSignal<string | SuiAvatarConfig | null>;
|
|
3496
|
+
protected readonly avatarCfg: _angular_core.Signal<SuiAvatarConfig | null>;
|
|
3497
|
+
/** Logo de empresa para type=company (mini-avatar bottom-right del sui-avatar). */
|
|
3498
|
+
readonly companyLogoSrc: _angular_core.InputSignal<string | null>;
|
|
3499
|
+
/** Marca para type=brand (logo raw, sin caja). */
|
|
3500
|
+
readonly brand: _angular_core.InputSignal<"adobe" | "amazon" | "apple" | "bitcoin" | "discord" | "dropbox" | "facebook" | "figma" | "framer" | "github" | "google" | "instagram" | "linkedin" | "microsoft" | "netflix" | "notion" | "paypal" | "pinterest" | "slack" | "spotify" | "stripe" | "telegram" | "twitch" | "webflow" | "whatsapp" | "wise" | "x-twitter" | "youtube" | null>;
|
|
3501
|
+
/** Badge — string shorthand o SuiBadgeConfig. Fallbacks: color 'orange'
|
|
3502
|
+
(branding; el DS de Figma usa 'blue'), variant 'lighter', size 'medium'
|
|
3503
|
+
(Figma: Badge px-8 py-2 texto 12/16 = sui-badge medium). null/'' = sin badge. */
|
|
3504
|
+
readonly badge: _angular_core.InputSignal<string | SuiBadgeConfig | null>;
|
|
3505
|
+
protected readonly badgeCfg: _angular_core.Signal<SuiBadgeConfig | null>;
|
|
3506
|
+
/** Dónde renderiza el badge: 'trailing' (canon Figma) | 'title' (composición Content Card). */
|
|
3507
|
+
readonly badgePlacement: _angular_core.InputSignal<SuiContentLabelBadgePlacement>;
|
|
3508
|
+
/** Muestra el switch trailing (eje Toggle del set). */
|
|
3509
|
+
readonly toggle: _angular_core.InputSignal<boolean>;
|
|
3510
|
+
/** Estado del switch — two-way: [(toggleChecked)]. */
|
|
3511
|
+
readonly toggleChecked: _angular_core.InputSignal<boolean>;
|
|
3512
|
+
readonly toggleCheckedChange: _angular_core.OutputEmitterRef<boolean>;
|
|
3513
|
+
/** Atenúa texto/leading a tokens disabled-300 y bloquea el switch (extensión de familia). */
|
|
3514
|
+
readonly disabled: _angular_core.InputSignal<boolean>;
|
|
3515
|
+
/** True si hay leading visual (todo menos basic). */
|
|
3516
|
+
readonly hasLeading: _angular_core.Signal<boolean>;
|
|
3517
|
+
/** Leading = 40px (medium) / 48px (large) — ancla la altura del row. */
|
|
3518
|
+
protected readonly keyIconSize: _angular_core.Signal<40 | 48>;
|
|
3519
|
+
protected readonly avatarSize: _angular_core.Signal<SuiAvatarSize>;
|
|
3520
|
+
protected readonly brandLogoSize: _angular_core.Signal<SuiBrandLogoSize>;
|
|
3521
|
+
protected onToggleChange(checked: boolean): void;
|
|
3522
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SuiContentLabel, never>;
|
|
3523
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiContentLabel, "sui-content-label", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "sublabel": { "alias": "sublabel"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "avatar": { "alias": "avatar"; "required": false; "isSignal": true; }; "companyLogoSrc": { "alias": "companyLogoSrc"; "required": false; "isSignal": true; }; "brand": { "alias": "brand"; "required": false; "isSignal": true; }; "badge": { "alias": "badge"; "required": false; "isSignal": true; }; "badgePlacement": { "alias": "badgePlacement"; "required": false; "isSignal": true; }; "toggle": { "alias": "toggle"; "required": false; "isSignal": true; }; "toggleChecked": { "alias": "toggleChecked"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "toggleCheckedChange": "toggleCheckedChange"; }, never, never, true, never>;
|
|
3524
|
+
}
|
|
3525
|
+
|
|
3233
3526
|
/**
|
|
3234
3527
|
* 6 tipos de leading visual del Content Card (SUI 2.0).
|
|
3235
3528
|
* basic — sin leading; sólo text block.
|
|
3236
|
-
* left-icon —
|
|
3237
|
-
* avatar — sui-avatar (foto / iniciales)
|
|
3238
|
-
* card-provider —
|
|
3239
|
-
* brand — sui-brand-logo
|
|
3240
|
-
* company — sui-avatar con companyLogoSrc (
|
|
3529
|
+
* left-icon — sui-key-icon circular 40px (stroke: border + bg-white + shadow).
|
|
3530
|
+
* avatar — sui-avatar (foto / iniciales) 40px.
|
|
3531
|
+
* card-provider — tile de tarjeta de pago 32×24 radius-4 con brand logo.
|
|
3532
|
+
* brand — sui-brand-logo RAW 40px (sin caja).
|
|
3533
|
+
* company — sui-avatar con companyLogoSrc (logo de empresa) 40px.
|
|
3241
3534
|
*/
|
|
3242
3535
|
type SuiContentCardType = 'basic' | 'left-icon' | 'avatar' | 'card-provider' | 'brand' | 'company';
|
|
3243
3536
|
/**
|
|
3244
3537
|
* SUI Content Card — SUI Design System 2.0
|
|
3245
3538
|
*
|
|
3246
|
-
*
|
|
3247
|
-
*
|
|
3248
|
-
*
|
|
3249
|
-
*
|
|
3250
|
-
*
|
|
3251
|
-
*
|
|
3252
|
-
*
|
|
3253
|
-
*
|
|
3254
|
-
*
|
|
3255
|
-
*
|
|
3256
|
-
*
|
|
3257
|
-
*
|
|
3258
|
-
*
|
|
3259
|
-
*
|
|
3260
|
-
*
|
|
3261
|
-
*
|
|
3262
|
-
*
|
|
3263
|
-
*
|
|
3264
|
-
* inline
|
|
3265
|
-
*
|
|
3266
|
-
*
|
|
3267
|
-
*
|
|
3268
|
-
*
|
|
3269
|
-
*
|
|
3270
|
-
*
|
|
3271
|
-
*
|
|
3272
|
-
*
|
|
3273
|
-
*
|
|
3274
|
-
*
|
|
3275
|
-
*
|
|
3276
|
-
*
|
|
3277
|
-
*
|
|
3278
|
-
*
|
|
3279
|
-
*
|
|
3280
|
-
*
|
|
3281
|
-
*
|
|
3282
|
-
*
|
|
3283
|
-
*
|
|
3284
|
-
*
|
|
3285
|
-
*
|
|
3286
|
-
*
|
|
3287
|
-
*
|
|
3288
|
-
*
|
|
3289
|
-
*
|
|
3290
|
-
*
|
|
3291
|
-
*
|
|
3292
|
-
*
|
|
3293
|
-
*
|
|
3294
|
-
*
|
|
3295
|
-
*
|
|
3296
|
-
*
|
|
3297
|
-
* text/strong-950 → --sui-text-strong-950 (#171717, title)
|
|
3298
|
-
* text/sub-600 → --sui-text-sub-600 (#5c5c5c, subtitle)
|
|
3299
|
-
* icon/sub-600 → --sui-icon-sub-600 (#5c5c5c, leading icon + X idle)
|
|
3300
|
-
* text/strong-950 → --sui-text-strong-950 (#171717, X icon on hover)
|
|
3301
|
-
* bg/weak-50 → --sui-bg-weak-50 (#f7f7f7, X hover bg)
|
|
3302
|
-
* text/disabled-300 → --sui-text-disabled-300 (#d1d1d1, title cuando disabled)
|
|
3303
|
-
* icon/disabled-300 → --sui-icon-disabled-300 (#d1d1d1, leading/X cuando disabled)
|
|
3304
|
-
* radius-12 → --sui-radius-12 (card)
|
|
3305
|
-
* radius-10 → --sui-radius-10 (leading box icon/brand)
|
|
3306
|
-
* radius-6 → --sui-radius-6 (card-provider box)
|
|
3307
|
-
* shadow x-small → --sui-shadow-x-small (0 1px 2px 0 #0a0d1408)
|
|
3308
|
-
*
|
|
3309
|
-
* Typography:
|
|
3310
|
-
* title → Label/Small 14/20 weight 500 ls -0.006em (--sui-type-label-sm-*)
|
|
3311
|
-
* subtitle → Paragraph/Small 14/20 weight 400 ls -0.006em (--sui-type-paragraph-sm-*)
|
|
3539
|
+
* Figma file: 8p1k72aKKvzJV4XcvPS4VO — set "Content Card [1.1]" nodo 2942:9503
|
|
3540
|
+
* (FIGMA-VERIFIED 2026-07-23: metadata + design context + screenshot del set;
|
|
3541
|
+
* cierra el ⚠️ "referencia no verificada" del 2026-05-29 — el nodo real SÍ vive
|
|
3542
|
+
* en este fileKey). 6 variants = Type(Basic | Left Icon | Avatar | Card Provider
|
|
3543
|
+
* | Brand | Company), un solo size (row de 40px, frames de ejemplo 360×72).
|
|
3544
|
+
*
|
|
3545
|
+
* Es el Content Label (set 2945:5539) envuelto en una card — este componente
|
|
3546
|
+
* COMPONE <sui-content-label size="medium" badgePlacement="title"> (la deuda
|
|
3547
|
+
* "extraer el row a sui-content-label" del 2026-05-29 quedó saldada).
|
|
3548
|
+
*
|
|
3549
|
+
* EXACT (design context de 2942:9504/9512/9530 + screenshot):
|
|
3550
|
+
* card → bg white-0, border 1px stroke-soft-200, radius-12, padding 16,
|
|
3551
|
+
* shadow x-small, flex row gap 14 items-center
|
|
3552
|
+
* text block → flex-col gap 4; title row gap 4 (rendereado por sui-content-label)
|
|
3553
|
+
* title → Inter Medium 14/20 ls -0.084px, text/strong-950 (Label/Small)
|
|
3554
|
+
* sublabel → Inter Regular 12/16, text/sub-600 — inline al lado del título
|
|
3555
|
+
* subtitle → Inter Regular 12/16, text/sub-600 (Paragraph/X Small) — la
|
|
3556
|
+
* "description" del label (el nodo 2945 la llama description)
|
|
3557
|
+
* badge → inline en el title row DESPUÉS del sublabel; Badge px-8 py-2
|
|
3558
|
+
* radius-full, texto Inter Medium 11/12 UPPERCASE tracking 0.22px
|
|
3559
|
+
* (Subheading/2X Small) = sui-badge size="small". Figma: bg
|
|
3560
|
+
* state/information/light #c0d5ff + texto state/information/dark
|
|
3561
|
+
* #122368 (= color "blue"); fallback del proyecto = 'orange'.
|
|
3562
|
+
* left-icon → instancia "Key Icons [1.1]" stroke 40px (p-10 + icono 20,
|
|
3563
|
+
* radius-full, border stroke-soft-200, shadow x-small)
|
|
3564
|
+
* avatar → sui-avatar 40px (= size lg; ojo: md es 32px)
|
|
3565
|
+
* brand → logo de marca RAW 40px, SIN caja (Spotify en el set)
|
|
3566
|
+
* company → círculo de empresa 40px (Synergy en el set)
|
|
3567
|
+
* card-provider → tile 32×24 radius-4 con la marca de la tarjeta (Mastercard
|
|
3568
|
+
* en el set, asset con bg #252525 propio)
|
|
3569
|
+
* X dismiss → close-line 20px a la derecha (gap 14 del row)
|
|
3570
|
+
*
|
|
3571
|
+
* Correcciones aplicadas en la verificación 2026-07-23 (antes inferido ≠ Figma):
|
|
3572
|
+
* - gap del row 12 → 14 · gap del text block 2 → 4 · gap del title row 6 → 4
|
|
3573
|
+
* - subtitle 14/20 (Paragraph/Small) → 12/16 (Paragraph/X Small)
|
|
3574
|
+
* - left-icon: cuadro 40×40 radius-10 → sui-key-icon circular (radius-full)
|
|
3575
|
+
* - avatar: size md (32px) → lg (40px)
|
|
3576
|
+
* - brand: cuadro con borde → logo raw 40px sin caja
|
|
3577
|
+
* - card-provider: 40×28 radius-6 → 32×24 radius-4
|
|
3578
|
+
* - nuevo input `sublabel` (el set lo trae en el title row; faltaba)
|
|
3579
|
+
*
|
|
3580
|
+
* Adaptaciones deliberadas (documentadas, NO son drift):
|
|
3581
|
+
* - card-provider: el asset de Figma es el tile Mastercard con bg #252525
|
|
3582
|
+
* propio del arte. Sin card-tiles como asset en la lib, se renderiza el
|
|
3583
|
+
* brand logo centrado en un tile blanco 32×24 con borde stroke-soft-200.
|
|
3584
|
+
* - Badge fallback color 'orange' (branding del proyecto; el DS usa blue).
|
|
3585
|
+
* Cualquier consumer pasa `[badge]="{ label: 'X', color: 'blue' }"`.
|
|
3586
|
+
* - X dismiss hover/active: hover → bg-weak-50 + icon strong-950, active →
|
|
3587
|
+
* scale(0.96). INFERIDO, el set no publica estados del botón. PRESERVAR.
|
|
3588
|
+
* - disabled: extensión del proyecto (el set no publica eje State); tokens
|
|
3589
|
+
* disabled-300 por consistencia con sui-badge/sui-form-label.
|
|
3312
3590
|
*
|
|
3313
3591
|
* iOS :active — el botón X es clickeable custom: lleva (touchstart)/(touchend)
|
|
3314
3592
|
* para liberar el estado active en WKWebView (regla del proyecto).
|
|
3315
3593
|
*
|
|
3316
|
-
* DEPENDENCIA / DEVIACIÓN: la spec pedía componer `sui-content-label`. Ese
|
|
3317
|
-
* componente NO existe aún en el repo (verificado por `find` 2026-05-29, sigue
|
|
3318
|
-
* marcado "[no existe como SUI]" en SUI-FIGMA-CHECKLIST.md:85). Para no bloquear,
|
|
3319
|
-
* la estructura del ContentLabel se implementa INLINE acá (text block + leading),
|
|
3320
|
-
* siguiendo la misma anatomía y tokens. Si más adelante se crea `sui-content-label`,
|
|
3321
|
-
* extraer el bloque `.sui-content-card__row` a ese componente y componerlo.
|
|
3322
|
-
* Tracking en PENDIENTES.md (sección "SUI · ContentCard / ContentLabel").
|
|
3323
|
-
*
|
|
3324
|
-
* Disabled: el ContentCard deriva del ContentLabel, que en Figma define un estado
|
|
3325
|
-
* `Disabled` (text/disabled-300, icono atenuado, pointer-events none). Se expone
|
|
3326
|
-
* via input `disabled`: atenúa title/subtitle/leading/X a tokens disabled-300,
|
|
3327
|
-
* pone el badge en su propio estado disabled, bloquea el botón X y setea
|
|
3328
|
-
* aria-disabled en el host. Usar para método de pago bloqueado/vencido o
|
|
3329
|
-
* integración inactiva.
|
|
3330
|
-
*
|
|
3331
|
-
* PENDING VERIFY (NO confirmado pixel-exacto contra Figma — el nodo real del
|
|
3332
|
-
* ContentCard vive en la librería de componentes SUI, archivo distinto del
|
|
3333
|
-
* fileKey de assets de marca 8p1k72aKKvzJV4XcvPS4VO; ver ⚠️ del header):
|
|
3334
|
-
* - leading box 40×40 / card-provider 40×28 / radios (10/6) / gap 12: inferidos
|
|
3335
|
-
* del patrón SUI ContentLabel estándar (avatar md = 40 ancla el row height).
|
|
3336
|
-
* Pueden coincidir por convención DS, pero sin confirmación pixel-exacta.
|
|
3337
|
-
* - card-provider visual: brand logo sobre bg-white + border. El "chip" EMV y el
|
|
3338
|
-
* degradado de tarjeta real del DS no se reproducen (no hay asset). Ver
|
|
3339
|
-
* assetsPending.
|
|
3340
|
-
* - X dismiss hover/active: hover → bg-weak-50 + icon strong-950, active →
|
|
3341
|
-
* scale(0.96). INFERIDO, el set no publica estados del botón. PRESERVAR.
|
|
3342
|
-
* - disabled visual (opacidad/tokens exactos del leading y badge): el patrón
|
|
3343
|
-
* Disabled del ContentLabel no se pudo medir; se aplican los tokens disabled-300
|
|
3344
|
-
* del DS por consistencia con sui-badge/sui-form-label.
|
|
3345
|
-
*
|
|
3346
3594
|
* Usage:
|
|
3347
3595
|
* <sui-content-card type="left-icon" icon="bank-card-line"
|
|
3348
3596
|
* title="Visa **** 4242" subtitle="Expira 09/27"
|
|
3349
3597
|
* badge="Principal" (dismiss)="onRemove()" />
|
|
3350
3598
|
* <sui-content-card type="avatar" [avatar]="{ src: user.photo, initials: 'AT' }"
|
|
3351
|
-
* title="Ana Torres" subtitle="ana@correo.com" />
|
|
3599
|
+
* title="Ana Torres" sublabel="(Admin)" subtitle="ana@correo.com" />
|
|
3352
3600
|
* <sui-content-card type="brand" brand="stripe" title="Stripe" subtitle="Conectado"
|
|
3353
3601
|
* [badge]="{ label: 'Activo', color: 'green' }" />
|
|
3354
3602
|
*/
|
|
3355
3603
|
declare class SuiContentCard {
|
|
3356
3604
|
/** Tipo de leading visual. */
|
|
3357
3605
|
readonly type: _angular_core.InputSignal<SuiContentCardType>;
|
|
3358
|
-
/** Título — Label/Small, text-strong-950. */
|
|
3606
|
+
/** Título — Label/Small 14/20, text-strong-950. */
|
|
3359
3607
|
readonly title: _angular_core.InputSignal<string>;
|
|
3360
|
-
/**
|
|
3608
|
+
/** Sublabel inline al lado del título — Paragraph/X Small 12/16, text-sub-600
|
|
3609
|
+
(Figma 2942:9517). Vacío = no se renderiza. */
|
|
3610
|
+
readonly sublabel: _angular_core.InputSignal<string>;
|
|
3611
|
+
/** Subtítulo (la "description" del Content Label) — Paragraph/X Small 12/16, text-sub-600. */
|
|
3361
3612
|
readonly subtitle: _angular_core.InputSignal<string>;
|
|
3362
|
-
/** Badge inline (Title row) — string shorthand ('Principal')
|
|
3363
|
-
(label + color/variant/size, tipado como sui-badge).
|
|
3364
|
-
color 'orange' (branding; el DS de Figma usa 'blue'),
|
|
3365
|
-
size 'small'. null/'' = sin badge. */
|
|
3613
|
+
/** Badge inline (Title row, después del sublabel) — string shorthand ('Principal')
|
|
3614
|
+
o SuiBadgeConfig (label + color/variant/size, tipado como sui-badge).
|
|
3615
|
+
Fallbacks de la card: color 'orange' (branding; el DS de Figma usa 'blue'),
|
|
3616
|
+
variant 'lighter', size 'small'. null/'' = sin badge. */
|
|
3366
3617
|
readonly badge: _angular_core.InputSignal<string | SuiBadgeConfig | null>;
|
|
3618
|
+
/** Config normalizado COMPLETO (fallbacks de la card aplicados) — se pasa al
|
|
3619
|
+
sui-content-label compuesto, cuyo fallback de size es 'medium' (canon del
|
|
3620
|
+
label); la card fija size 'small' (Subheading/2X Small del nodo 2942:9518). */
|
|
3367
3621
|
protected readonly badgeCfg: _angular_core.Signal<SuiBadgeConfig | null>;
|
|
3368
3622
|
/** RemixIcon name (sin 'ri-') para type=left-icon. */
|
|
3369
3623
|
readonly icon: _angular_core.InputSignal<string | null>;
|
|
3370
3624
|
/** Avatar del leading (type=avatar / company) — string shorthand (src directo)
|
|
3371
3625
|
o SuiAvatarConfig { src?, initials?, color? }. null = sin avatar. */
|
|
3372
3626
|
readonly avatar: _angular_core.InputSignal<string | SuiAvatarConfig | null>;
|
|
3373
|
-
protected readonly avatarCfg: _angular_core.Signal<SuiAvatarConfig | null>;
|
|
3374
3627
|
/** Logo de empresa para type=company (mini-avatar bottom-right del sui-avatar). */
|
|
3375
3628
|
readonly companyLogoSrc: _angular_core.InputSignal<string | null>;
|
|
3376
3629
|
/** Marca para type=brand / card-provider. */
|
|
@@ -3388,9 +3641,13 @@ declare class SuiContentCard {
|
|
|
3388
3641
|
readonly dismiss: _angular_core.OutputEmitterRef<MouseEvent>;
|
|
3389
3642
|
/** True si hay leading visual (todo menos basic). */
|
|
3390
3643
|
readonly hasLeading: _angular_core.Signal<boolean>;
|
|
3644
|
+
/** Type que se delega al sui-content-label compuesto. card-provider no existe
|
|
3645
|
+
en el set del label (2945:5539) → la card renderiza ese leading ella misma
|
|
3646
|
+
y el label va en 'basic' (solo text block). */
|
|
3647
|
+
protected readonly labelType: _angular_core.Signal<SuiContentLabelType>;
|
|
3391
3648
|
onDismiss(event: MouseEvent): void;
|
|
3392
3649
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SuiContentCard, never>;
|
|
3393
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiContentCard, "sui-content-card", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "badge": { "alias": "badge"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "avatar": { "alias": "avatar"; "required": false; "isSignal": true; }; "companyLogoSrc": { "alias": "companyLogoSrc"; "required": false; "isSignal": true; }; "brand": { "alias": "brand"; "required": false; "isSignal": true; }; "dismissible": { "alias": "dismissible"; "required": false; "isSignal": true; }; "dismissAriaLabel": { "alias": "dismissAriaLabel"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "dismiss": "dismiss"; }, never, never, true, never>;
|
|
3650
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiContentCard, "sui-content-card", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "sublabel": { "alias": "sublabel"; "required": false; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "badge": { "alias": "badge"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "avatar": { "alias": "avatar"; "required": false; "isSignal": true; }; "companyLogoSrc": { "alias": "companyLogoSrc"; "required": false; "isSignal": true; }; "brand": { "alias": "brand"; "required": false; "isSignal": true; }; "dismissible": { "alias": "dismissible"; "required": false; "isSignal": true; }; "dismissAriaLabel": { "alias": "dismissAriaLabel"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "dismiss": "dismiss"; }, never, never, true, never>;
|
|
3394
3651
|
}
|
|
3395
3652
|
|
|
3396
3653
|
type SuiContentDividerType = 'line' | 'line-spacing' | 'text-line' | 'text' | 'solid-text' | 'icon-button' | 'icon-button-group' | 'text-button' | 'text-button-group';
|
|
@@ -5286,7 +5543,7 @@ declare class SuiFileUpload {
|
|
|
5286
5543
|
protected readonly inputRef: _angular_core.Signal<ElementRef<HTMLInputElement> | undefined>;
|
|
5287
5544
|
protected readonly dragging: _angular_core.WritableSignal<boolean>;
|
|
5288
5545
|
protected readonly internalError: _angular_core.WritableSignal<string | null>;
|
|
5289
|
-
protected readonly state: _angular_core.Signal<"
|
|
5546
|
+
protected readonly state: _angular_core.Signal<"default" | "error" | "disabled" | "dragover">;
|
|
5290
5547
|
protected readonly resolvedTitle: _angular_core.Signal<string>;
|
|
5291
5548
|
protected readonly resolvedSubtitle: _angular_core.Signal<string>;
|
|
5292
5549
|
protected readonly resolvedErrorMessage: _angular_core.Signal<string | null>;
|
|
@@ -6558,7 +6815,7 @@ declare const SUI_KEY_ICON_SIZES: readonly SuiKeyIconSize[];
|
|
|
6558
6815
|
/**
|
|
6559
6816
|
* SUI Key Icon — SUI Design System 2.0
|
|
6560
6817
|
*
|
|
6561
|
-
* Figma file: 8p1k72aKKvzJV4XcvPS4VO —
|
|
6818
|
+
* Figma file: 8p1k72aKKvzJV4XcvPS4VO — set "Key Icons [1.1]" = nodo 263:1850.
|
|
6562
6819
|
* Componente NUEVO (no existía como SUI). Contenedor circular de icono usado como
|
|
6563
6820
|
* leading element en list rows, content-labels, empty-states, notificaciones, etc.
|
|
6564
6821
|
*
|
|
@@ -6584,7 +6841,9 @@ declare const SUI_KEY_ICON_SIZES: readonly SuiKeyIconSize[];
|
|
|
6584
6841
|
*
|
|
6585
6842
|
* ── Icono ────────────────────────────────────────────────────────────────────
|
|
6586
6843
|
* Render SIEMPRE vía <sui-icon name="..."> (regla del proyecto — nunca SVG
|
|
6587
|
-
* inline). Tamaño
|
|
6844
|
+
* inline). Tamaño MEDIDO en Figma 263:1850: size/2 en 40/48/56/64
|
|
6845
|
+
* (20/24/28/32), pero Small (32) usa icono 20px (padding 6, NO 16=size/2) —
|
|
6846
|
+
* Figma no baja el glyph de 20px para mantener legibilidad.
|
|
6588
6847
|
* El <sui-icon> recibe su tamaño DIRECTO vía [size]="iconSize()" (su @Input),
|
|
6589
6848
|
* NO vía custom prop CSS — sui-icon lee solo su @Input `size`, no una variable.
|
|
6590
6849
|
* El color del icono = `*-base` del color, vía la custom prop `--sui-key-icon-fg`.
|
|
@@ -6601,21 +6860,21 @@ declare const SUI_KEY_ICON_SIZES: readonly SuiKeyIconSize[];
|
|
|
6601
6860
|
* stroke bg— adapta. NO hardcodear un bg distinto acá: divergiría de Figma (la
|
|
6602
6861
|
* spec del KeyIcon stroke ES bg-white-0) y del resto del DS.
|
|
6603
6862
|
*
|
|
6604
|
-
*
|
|
6605
|
-
* -
|
|
6606
|
-
*
|
|
6607
|
-
* (
|
|
6608
|
-
*
|
|
6609
|
-
*
|
|
6610
|
-
*
|
|
6611
|
-
*
|
|
6612
|
-
*
|
|
6613
|
-
*
|
|
6614
|
-
*
|
|
6615
|
-
*
|
|
6616
|
-
*
|
|
6617
|
-
*
|
|
6618
|
-
*
|
|
6863
|
+
* FIGMA-VERIFIED 2026-07-23 — set "Key Icons [1.1]" nodo 263:1850 (mismo file):
|
|
6864
|
+
* - Estructura confirmada vía get_metadata(263:1850): 90 symbols exactos =
|
|
6865
|
+
* Style(Stroke|Lighter) × Color(Gray/Blue/Orange/Red/Green/Yellow/Purple/
|
|
6866
|
+
* Pink/Teal) × Size(Small 32 / Medium 40 / Large 48 / X-Large 56 / 2X-Large 64).
|
|
6867
|
+
* - Stroke (263:1849, 264:2386): bg `--bg/white-0` + border 1px solid
|
|
6868
|
+
* `--stroke/soft-200` (#ebebeb) + `rounded-[var(--radius-full,999px)]` +
|
|
6869
|
+
* drop-shadow regular-shadow/x-small (0 1px 2px rgba(10,13,20,0.03)) ✓
|
|
6870
|
+
* — matchea `--sui-bg-white-0` / `--sui-stroke-soft-200` / `--sui-radius-full`
|
|
6871
|
+
* / `--sui-shadow-x-small` de sui-tokens.scss 1:1.
|
|
6872
|
+
* - Lighter (264:2716, 264:2604, 264:2496): bg `--state/<x>/lighter`
|
|
6873
|
+
* (faded #f5f5f5, information #ebf1ff), sin borde ni sombra, radius-full ✓.
|
|
6874
|
+
* - Icono (glyph placeholder `user-6-line` de RemixIcon, color `*-base`,
|
|
6875
|
+
* confirmado en screenshot del set completo): 64→32 (p16), 56→28 (p14),
|
|
6876
|
+
* 48→24 (p12), 40→20 (p10) = size/2 ✓; PERO Small 32→20 (p6), NO 16.
|
|
6877
|
+
* Desviación corregida en `iconSize` (piso de 20px).
|
|
6619
6878
|
*/
|
|
6620
6879
|
declare class SuiKeyIcon {
|
|
6621
6880
|
/** RemixIcon name (sin prefijo), e.g. 'mail-line', 'home-5-fill'. Se pasa a <sui-icon>. */
|
|
@@ -6629,7 +6888,11 @@ declare class SuiKeyIcon {
|
|
|
6629
6888
|
readonly color: _angular_core.InputSignal<SuiKeyIconColor>;
|
|
6630
6889
|
/** Tamaño del contenedor en px. Uno de 32/40/48/56/64. */
|
|
6631
6890
|
readonly size: _angular_core.InputSignal<SuiKeyIconSize>;
|
|
6632
|
-
/**
|
|
6891
|
+
/**
|
|
6892
|
+
* Tamaño del icono interno. Figma 263:1850 (medido por variant): size/2 en
|
|
6893
|
+
* 40/48/56/64, pero Small (32) mantiene el glyph en 20px (piso de legibilidad
|
|
6894
|
+
* — 264:2712/264:2716 usan padding 6, icono 20, NO 16).
|
|
6895
|
+
*/
|
|
6633
6896
|
readonly iconSize: _angular_core.Signal<number>;
|
|
6634
6897
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SuiKeyIcon, never>;
|
|
6635
6898
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiKeyIcon, "sui-key-icon", never, { "name": { "alias": "name"; "required": true; "isSignal": true; }; "styleVariant": { "alias": "styleVariant"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
@@ -7628,6 +7891,146 @@ declare class SuiPagination {
|
|
|
7628
7891
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiPagination, "sui-pagination", never, { "total": { "alias": "total"; "required": true; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "siblingCount": { "alias": "siblingCount"; "required": false; "isSignal": true; }; "showInfo": { "alias": "showInfo"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "firstLast": { "alias": "firstLast"; "required": false; "isSignal": true; }; "nextPrevious": { "alias": "nextPrevious"; "required": false; "isSignal": true; }; "infoFormat": { "alias": "infoFormat"; "required": false; "isSignal": true; }; "pageSizeOptions": { "alias": "pageSizeOptions"; "required": false; "isSignal": true; }; "currentPage": { "alias": "currentPage"; "required": false; "isSignal": true; }; }, { "pageSize": "pageSizeChange"; "currentPage": "currentPageChange"; "pageChange": "pageChange"; "pageSizeChange": "pageSizeChange"; }, never, never, true, never>;
|
|
7629
7892
|
}
|
|
7630
7893
|
|
|
7894
|
+
type SuiPasswordStrengthLevel = 'empty' | 'weak' | 'moderate' | 'strong';
|
|
7895
|
+
/**
|
|
7896
|
+
* Condición de la checklist bajo la barra.
|
|
7897
|
+
* - `label`: texto visible (requerido).
|
|
7898
|
+
* - `test`: RegExp o predicado sobre `value` — evalúa si la condición se cumple.
|
|
7899
|
+
* - `met`: override manual — si está definido gana sobre `test` (útil cuando el
|
|
7900
|
+
* consumer evalúa las reglas afuera, ej. validación de backend).
|
|
7901
|
+
*/
|
|
7902
|
+
interface SuiPasswordStrengthCondition {
|
|
7903
|
+
label: string;
|
|
7904
|
+
test?: RegExp | ((value: string) => boolean);
|
|
7905
|
+
met?: boolean;
|
|
7906
|
+
}
|
|
7907
|
+
/** Condiciones default — las 3 del set de Figma, en español (tuteo). */
|
|
7908
|
+
declare const SUI_PASSWORD_STRENGTH_DEFAULT_CONDITIONS: SuiPasswordStrengthCondition[];
|
|
7909
|
+
/** Labels por nivel para el `aria-valuetext` (configurables vía `levelLabels`). */
|
|
7910
|
+
declare const SUI_PASSWORD_STRENGTH_DEFAULT_LEVEL_LABELS: Record<SuiPasswordStrengthLevel, string>;
|
|
7911
|
+
/**
|
|
7912
|
+
* sui-password-strength — SUI Design System 2.0 · Password Strength
|
|
7913
|
+
*
|
|
7914
|
+
* Figma: 8p1k72aKKvzJV4XcvPS4VO — frame "Password Strength [1.1]" node 327:8202.
|
|
7915
|
+
* VERIFIED via MCP (`get_metadata` + `get_design_context` + `get_variable_defs`
|
|
7916
|
+
* + `get_screenshot`, 2026-07-23).
|
|
7917
|
+
*
|
|
7918
|
+
* Indicador de fuerza de contraseña: barra segmentada de 3 niveles + caption +
|
|
7919
|
+
* checklist de condiciones. 4 variants del set (eje Strength):
|
|
7920
|
+
*
|
|
7921
|
+
* - ⚪️ Empty (327:8201): 0 segmentos llenos · todas las condiciones con
|
|
7922
|
+
* check gris (icon/soft-400) — estado neutro, aún sin tipear.
|
|
7923
|
+
* - 🔴 Weak (327:8239): segmento 1 lleno (error/base) · cumplidas con check
|
|
7924
|
+
* verde, NO cumplidas con close-circle gris.
|
|
7925
|
+
* - 🟡 Moderate (327:8258): segmentos 1-2 llenos (error + warning/base).
|
|
7926
|
+
* - 🟢 Strong (327:8277): 3 segmentos llenos (error + warning + success/base).
|
|
7927
|
+
*
|
|
7928
|
+
* OJO: cada segmento tiene su color FIJO (1=error, 2=warning, 3=success) y se
|
|
7929
|
+
* llenan progresivamente — en Strong la barra es roja+naranja+verde, NO toda verde.
|
|
7930
|
+
*
|
|
7931
|
+
* EXACT (pulled from Figma 2026-07-23, verified):
|
|
7932
|
+
* - Contenedor: flex-col, gap 8px, padding-top 6px, width 100% (Figma fija 300
|
|
7933
|
+
* como ejemplo — el componente es full-width, el consumer restringe).
|
|
7934
|
+
* - Fila "Level": flex gap 8px; cada segmento flex:1, height 4px, radius 1.2px.
|
|
7935
|
+
* - Segmento vacío: bg/soft-200 #ebebeb · lleno: state/error/base #fb3748 ·
|
|
7936
|
+
* state/warning/base #fa7319 · state/success/base #1fc16b.
|
|
7937
|
+
* - Caption y condiciones: text/sub-600 #5c5c5c, Inter Regular 12/lh16
|
|
7938
|
+
* (Paragraph/XSmall), font-feature-settings 'ss11' 1,'calt' 0,'liga' 0.
|
|
7939
|
+
* - Fila condición: flex gap 4px, items-center; icono 16px.
|
|
7940
|
+
* - Icono check (cumplida / estado empty): checkbox-circle-fill — verde
|
|
7941
|
+
* state/success/base cumplida, gris icon/soft-400 #a3a3a3 en empty.
|
|
7942
|
+
* - Icono no cumplida (weak/moderate): close-circle-fill gris icon/soft-400.
|
|
7943
|
+
* - Copy Figma "Must contain at least;" → "Debe contener al menos:" (ES).
|
|
7944
|
+
*
|
|
7945
|
+
* Derivación automática del nivel (cuando `strength` no se fuerza):
|
|
7946
|
+
* - `value` vacío → 'empty'
|
|
7947
|
+
* - todas las condiciones cumplidas → 'strong'
|
|
7948
|
+
* - cumplidas ≥ mitad del total → 'moderate'
|
|
7949
|
+
* - resto → 'weak'
|
|
7950
|
+
* (con las 3 condiciones default: 3=strong, 2=moderate, 0-1=weak — igual al set.)
|
|
7951
|
+
*
|
|
7952
|
+
* Inputs:
|
|
7953
|
+
* - value: string — la contraseña; evalúa condiciones y deriva el nivel.
|
|
7954
|
+
* - strength: SuiPasswordStrengthLevel | null (default null) — override
|
|
7955
|
+
* manual del nivel; si está presente gana sobre el derivado.
|
|
7956
|
+
* - caption: string (default 'Debe contener al menos:') — '' lo oculta.
|
|
7957
|
+
* - conditions: SuiPasswordStrengthCondition[] — checklist configurable
|
|
7958
|
+
* (default: las 3 del set en español). [] oculta la lista.
|
|
7959
|
+
* - levelLabels: Partial<Record<level, string>> — textos del aria-valuetext.
|
|
7960
|
+
* - ariaLabel: string (default 'Seguridad de la contraseña') — label del
|
|
7961
|
+
* progressbar.
|
|
7962
|
+
*
|
|
7963
|
+
* Output:
|
|
7964
|
+
* - strengthChange: SuiPasswordStrengthLevel — emitido cuando el nivel
|
|
7965
|
+
* resuelto cambia (no emite el estado inicial).
|
|
7966
|
+
*
|
|
7967
|
+
* A11y: la barra es role="progressbar" (aria-valuemin=0, aria-valuemax=3,
|
|
7968
|
+
* aria-valuenow=segmentos llenos, aria-valuetext=label del nivel); la checklist
|
|
7969
|
+
* es <ul>/<li> semántica con los iconos aria-hidden.
|
|
7970
|
+
*
|
|
7971
|
+
* Usage:
|
|
7972
|
+
* <sui-password-strength [value]="password()" (strengthChange)="onStrength($event)" />
|
|
7973
|
+
* <sui-password-strength strength="moderate" [conditions]="[]" caption="" />
|
|
7974
|
+
*/
|
|
7975
|
+
declare class SuiPasswordStrength {
|
|
7976
|
+
/** Contraseña a evaluar — deriva las condiciones cumplidas y el nivel. */
|
|
7977
|
+
readonly value: _angular_core.InputSignal<string>;
|
|
7978
|
+
/** Override manual del nivel — presente gana sobre el derivado de `value`. */
|
|
7979
|
+
readonly strength: _angular_core.InputSignal<SuiPasswordStrengthLevel | null>;
|
|
7980
|
+
/** Caption sobre la checklist. '' = oculto. */
|
|
7981
|
+
readonly caption: _angular_core.InputSignal<string>;
|
|
7982
|
+
/** Checklist de condiciones. [] = sin checklist (solo barra + caption). */
|
|
7983
|
+
readonly conditions: _angular_core.InputSignal<SuiPasswordStrengthCondition[]>;
|
|
7984
|
+
/** Textos del nivel para lectores de pantalla (merge sobre los defaults ES). */
|
|
7985
|
+
readonly levelLabels: _angular_core.InputSignal<Partial<Record<SuiPasswordStrengthLevel, string>>>;
|
|
7986
|
+
/** Label accesible del progressbar. */
|
|
7987
|
+
readonly ariaLabel: _angular_core.InputSignal<string>;
|
|
7988
|
+
/** Emite el nivel resuelto cada vez que cambia (no emite el inicial). */
|
|
7989
|
+
readonly strengthChange: _angular_core.OutputEmitterRef<SuiPasswordStrengthLevel>;
|
|
7990
|
+
/** Condiciones evaluadas: `met` manual gana; sino corre `test` sobre `value`. */
|
|
7991
|
+
protected readonly conditionStates: _angular_core.Signal<{
|
|
7992
|
+
label: string;
|
|
7993
|
+
met: boolean;
|
|
7994
|
+
}[]>;
|
|
7995
|
+
/** Nivel resuelto: override explícito o derivado de las condiciones. */
|
|
7996
|
+
readonly resolvedStrength: _angular_core.Signal<SuiPasswordStrengthLevel>;
|
|
7997
|
+
/** Segmentos llenos de la barra (0-3) — también el aria-valuenow. */
|
|
7998
|
+
protected readonly filledSegments: _angular_core.Signal<number>;
|
|
7999
|
+
/** aria-valuetext del nivel actual (levelLabels del consumer sobre defaults). */
|
|
8000
|
+
protected readonly levelLabel: _angular_core.Signal<string>;
|
|
8001
|
+
/** Icono por condición: check (cumplida o estado empty) vs close (fallida). */
|
|
8002
|
+
protected iconName(met: boolean): string;
|
|
8003
|
+
private previousStrength;
|
|
8004
|
+
constructor();
|
|
8005
|
+
private runTest;
|
|
8006
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SuiPasswordStrength, never>;
|
|
8007
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiPasswordStrength, "sui-password-strength", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "strength": { "alias": "strength"; "required": false; "isSignal": true; }; "caption": { "alias": "caption"; "required": false; "isSignal": true; }; "conditions": { "alias": "conditions"; "required": false; "isSignal": true; }; "levelLabels": { "alias": "levelLabels"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "strengthChange": "strengthChange"; }, never, never, true, never>;
|
|
8008
|
+
}
|
|
8009
|
+
|
|
8010
|
+
/** Los 8 tipos canon del set de Figma (mismo orden que el frame). */
|
|
8011
|
+
declare const SUI_PAYMENT_ICON_TYPES: readonly ["water", "gas", "electricity", "donate", "internet", "phone", "rent", "tax"];
|
|
8012
|
+
type SuiPaymentIconType = (typeof SUI_PAYMENT_ICON_TYPES)[number];
|
|
8013
|
+
/** Tamaños del contenedor: reusa la escala canon de sui-key-icon (32/40/48/56/64). */
|
|
8014
|
+
type SuiPaymentIconSize = SuiKeyIconSize;
|
|
8015
|
+
declare class SuiPaymentIcon {
|
|
8016
|
+
/** Tipo de pago/servicio (ver SUI_PAYMENT_ICON_TYPES). Define icono + color. */
|
|
8017
|
+
readonly type: _angular_core.InputSignal<"water" | "gas" | "electricity" | "donate" | "internet" | "phone" | "rent" | "tax">;
|
|
8018
|
+
/** Tamaño del contenedor en px. Canon Figma = 40; la escala es la de sui-key-icon. */
|
|
8019
|
+
readonly size: _angular_core.InputSignal<SuiKeyIconSize>;
|
|
8020
|
+
/**
|
|
8021
|
+
* Aria-label opcional. Si se provee, se anuncia como imagen (`role="img"`);
|
|
8022
|
+
* si no, se considera decorativo (`aria-hidden="true"`) — el caso típico,
|
|
8023
|
+
* porque el icono acompaña un texto que ya nombra el servicio.
|
|
8024
|
+
*/
|
|
8025
|
+
readonly ariaLabel: _angular_core.InputSignal<string | null>;
|
|
8026
|
+
/** RemixIcon name derivado del type (glyphs literales del set de Figma). */
|
|
8027
|
+
protected readonly iconName: _angular_core.Signal<string>;
|
|
8028
|
+
/** Color semántico de sui-key-icon derivado del type. */
|
|
8029
|
+
protected readonly keyColor: _angular_core.Signal<SuiKeyIconColor>;
|
|
8030
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SuiPaymentIcon, never>;
|
|
8031
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiPaymentIcon, "sui-payment-icon", never, { "type": { "alias": "type"; "required": true; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
8032
|
+
}
|
|
8033
|
+
|
|
7631
8034
|
/**
|
|
7632
8035
|
* SUI Period Range — SUI Design System 2.0
|
|
7633
8036
|
*
|
|
@@ -11453,5 +11856,5 @@ declare class SuiTooltipPanel {
|
|
|
11453
11856
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiTooltipPanel, "sui-tooltip-panel", never, { "text": { "alias": "text"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "theme": { "alias": "theme"; "required": false; "isSignal": true; }; "showArrow": { "alias": "showArrow"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "dismissible": { "alias": "dismissible"; "required": false; "isSignal": true; }; }, { "dismissed": "dismissed"; }, never, never, true, never>;
|
|
11454
11857
|
}
|
|
11455
11858
|
|
|
11456
|
-
export { DAY_LABELS_ES, DEFAULT_DURATION_PRESETS, DEFAULT_PRESETS, EMPTY_STATE_FOX_EMOJI, SUI_BRAND_LOGO_COMPANIES, SUI_COLOR_DOT_COLORS, SUI_COLOR_DOT_HEX, SUI_CUSTOM_ICONS, SUI_EMOJI_MAP, SUI_FLAG_NAMES, SUI_HEX_TO_COLOR, SUI_KEY_ICON_COLORS, SUI_KEY_ICON_SIZES, SUI_NAVBAR_VISIBILITY, SUI_PRODUCT_FALLBACK_COLORS, SUI_TAB_BAR, SuiAccordion, SuiAccordionContent, SuiActivityFeed, SuiActivityFilter, SuiAlert, SuiAppStoreBadge, SuiAvatar, SuiAvatarGroup, SuiBadge, SuiBanner, SuiBrandLogo, SuiBreadcrumbItem, SuiBreadcrumbs, SuiButton, SuiButtonGroup, SuiButtonGroupItem, SuiCard, SuiCheckbox, SuiCheckboxCard, SuiCheckboxLabel, SuiCircularProgressBar, SuiColorDot, SuiColorPicker, SuiCommandMenuFooter, SuiCommandMenuItem, SuiCommandMenuSearch, SuiCompactAvatarGroup, SuiCompactButton, SuiCompactSelect, SuiCompactSelectForInput, SuiContentCard, SuiContentDivider, SuiCounterInput, SuiDateSelector, SuiDatepicker, SuiDayCell, SuiDayLabel, SuiDivider, SuiDrawerFooter, SuiDrawerHeader, SuiDropdownCaption, SuiDropdownItem, SuiDropdownMenu, SuiDropdownPanel, SuiDropdownSearch, SuiEmoji, SuiEmptyState, SuiFancyButton, SuiFileIcon, SuiFileUpload, SuiFileUploadCard, SuiFilterBar, SuiFilterItem, SuiFilterPanelFooter, SuiFilterPanelHeader, SuiFlag, SuiFormHint, SuiFormLabel, SuiIcon, SuiImageUpload, SuiImageUploadProfile, SuiImgRetry, SuiInlineInput, SuiInlineSelect, SuiInput, SuiIntegrationSwitch, SuiKbd, SuiKeyIcon, SuiLinkButton, SuiModal, SuiModalFooter, SuiModalHeader, SuiModalSheet, SuiNotification, SuiNotificationFooter, SuiNotificationTabMenu, SuiOtpInput, SuiPageHeader, SuiPagination, SuiPeriodRange, SuiPopover, SuiProductCard, SuiProgressBar, SuiProgressBarLabel, SuiRadio, SuiRadioCard, SuiRadioGroup, SuiRadioLabel, SuiRating, SuiRichEditor, SuiRichEditorItem, SuiSegmentedControl, SuiSelect, SuiSidebar, SuiSlider, SuiSocialButton, SuiStatusBadge, SuiStepper, SuiStoreCard, SuiSwitch, SuiSwitchCard, SuiSwitchLabel, SuiTabChips, SuiTabMenuHorizontal, SuiTabMenuVertical, SuiTable, SuiTableCellDirective, SuiTag, SuiTagInput, SuiTextarea, SuiTimePicker, SuiTimePickerDuration, SuiTimePickerItem, SuiTimePickerStatus, SuiToastOutlet, SuiToastService, SuiTooltip, SuiTooltipPanel, buildCalendarGrid, buildHourList, buildMinuteList, formatDateInput, formatDateShort, formatMonthYear, formatTime, isSameTime, normalizeHex, pad2, parseTime, to12h, to24h };
|
|
11457
|
-
export type { CalendarCell, CalendarRow, DatepickerPreset, DatepickerPresetId, SuiAccordionFlipIcon, SuiActivityAvatarRef, SuiActivityFeedItem, SuiActivityFile, SuiActivityFilterState, SuiActivityTask, SuiActivityTaskState, SuiAlertAction, SuiAlertSize, SuiAlertStyle, SuiAlertVariant, SuiAppStoreBadgeAppearance, SuiAppStoreBadgeCompany, SuiAvatarColor, SuiAvatarConfig, SuiAvatarGroupItem, SuiAvatarSize, SuiAvatarStatus, SuiAvatarTopBadge, SuiBadgeColor, SuiBadgeConfig, SuiBadgeSize, SuiBadgeType, SuiBadgeVariant, SuiBannerStyle, SuiBannerVariant, SuiBrandLogoCompany, SuiBrandLogoSize, SuiBrandLogoStyle, SuiBreadcrumbDivider, SuiBreadcrumbEntry, SuiButtonColor, SuiButtonGroupEntry, SuiButtonGroupItemSize, SuiButtonSize, SuiButtonVariant, SuiCardSize, SuiCardVariant, SuiCheckboxCardType, SuiCheckboxSize, SuiCircularProgressBarColor, SuiCircularProgressBarSize, SuiColorDotColor, SuiCommandMenuItemSize, SuiCommandMenuItemType, SuiCompactAvatarGroupAppearance, SuiCompactAvatarGroupSize, SuiCompactButtonSize, SuiCompactButtonStyle, SuiCompactSelectForInputItem, SuiCompactSelectForInputSize, SuiCompactSelectItem, SuiCompactSelectSize, SuiCompactSelectType, SuiContentCardType, SuiContentDividerItem, SuiContentDividerType, SuiCounterInputSize, SuiDateRange, SuiDatepickerCalendars, SuiDatepickerMode, SuiDayCellType, SuiDividerOrientation, SuiDrawerFooterType, SuiDrawerHeaderSize, SuiDrawerHeaderType, SuiDropdownItemMode, SuiDropdownItemSize, SuiDropdownMenuPopupRole, SuiDropdownMenuPosition, SuiEmojiName, SuiEmojiSize, SuiEmptyStateAction, SuiFancyButtonSize, SuiFancyButtonType, SuiFileIconColor, SuiFileIconSize, SuiFileUploadCardFile, SuiFileUploadCardState, SuiFileUploadSize, SuiFilterItemState, SuiFlagName, SuiFlagSize, SuiFooterButtonConfig, SuiFormHintVariant, SuiFormLabelSize, SuiImageUploadProfileAlignment, SuiImageUploadProfileLabels, SuiImageUploadProfileType, SuiImageUploadShape, SuiImageUploadSize, SuiInlineSelectItem, SuiInlineSelectType, SuiInputSize, SuiInputType, SuiIntegrationManageConfig, SuiIntegrationSwitchAppearance, SuiIntegrationSwitchType, SuiKbdVariant, SuiKeyIconColor, SuiKeyIconSize, SuiKeyIconStyle, SuiLinkButtonSize, SuiLinkButtonVariant, SuiLinkConfig, SuiModalHeaderVariant, SuiModalIconVariant, SuiModalSize, SuiModalStatusAlignment, SuiNavbarVisibility, SuiNotificationStyle, SuiNotificationTab, SuiNotificationVariant, SuiOtpInputType, SuiPaginationInfoFormat, SuiPaginationSize, SuiPaginationType, SuiPopoverFooter, SuiPopoverPosition, SuiProductCardFallback, SuiProductCardImage, SuiProgressBarColor, SuiProgressBarLabelType, SuiProgressBarSize, SuiRadioCardType, SuiRadioSize, SuiRadioValue, SuiRatingAlignment, SuiRatingAppearance, SuiRatingReviewLink, SuiRatingSize, SuiRatingType, SuiRichEditorAction, SuiRichEditorCommand, SuiRichEditorItemState, SuiRichEditorItemType, SuiRichEditorLayout, SuiSegmentedControlItem, SuiSegmentedControlSize, SuiSelectOption, SuiSelectSize, SuiSelectType, SuiSidebarBrandConfig, SuiSidebarIndicatorColor, SuiSidebarItem, SuiSidebarMobileMode, SuiSidebarProfile, SuiSidebarSearchConfig, SuiSliderType, SuiSocialButtonBrand, SuiSocialButtonStyle, SuiStatusBadgeAppearance, SuiStatusBadgeStatus, SuiStepperItem, SuiStepperSize, SuiStepperState, SuiStepperVariant, SuiStoreCardData, SuiSwitchCardType, SuiSwitchSize, SuiTabBar, SuiTabChipItem, SuiTabMenuHorizontalItem, SuiTabMenuHorizontalSize, SuiTabMenuVerticalItem, SuiTabMenuVerticalStyle, SuiTableCellMisc, SuiTableCellPriority, SuiTableColumn, SuiTableSize, SuiTagInputSize, SuiTagStyle, SuiTimeDurationPreset, SuiTimeFormat, SuiTimePeriod, SuiTimePickerItemDirection, SuiTimePickerStatusType, SuiTimeValue, SuiToastAction, SuiToastData, SuiToastItem, SuiToastPosition, SuiToastStyle, SuiToastVariant, SuiTooltipLargeData, SuiTooltipPosition, SuiTooltipSize, SuiTooltipTheme, SuiTooltipThemeInput };
|
|
11859
|
+
export { DAY_LABELS_ES, DEFAULT_DURATION_PRESETS, DEFAULT_PRESETS, EMPTY_STATE_FOX_EMOJI, SUI_BRAND_LOGO_COMPANIES, SUI_CHART_LEGEND_COLORS, SUI_CHART_LEGEND_HEX, SUI_CHART_SERIES_COLORS, SUI_COLOR_DOT_COLORS, SUI_COLOR_DOT_HEX, SUI_CUSTOM_ICONS, SUI_EMOJI_MAP, SUI_FLAG_NAMES, SUI_HEX_TO_COLOR, SUI_KEY_ICON_COLORS, SUI_KEY_ICON_SIZES, SUI_NAVBAR_VISIBILITY, SUI_PASSWORD_STRENGTH_DEFAULT_CONDITIONS, SUI_PASSWORD_STRENGTH_DEFAULT_LEVEL_LABELS, SUI_PAYMENT_ICON_TYPES, SUI_PRODUCT_FALLBACK_COLORS, SUI_TAB_BAR, SuiAccordion, SuiAccordionContent, SuiActivityFeed, SuiActivityFilter, SuiAlert, SuiAppStoreBadge, SuiAvatar, SuiAvatarGroup, SuiBadge, SuiBanner, SuiBrandLogo, SuiBreadcrumbItem, SuiBreadcrumbs, SuiButton, SuiButtonGroup, SuiButtonGroupItem, SuiCard, SuiChartLegend, SuiChartLegendDot, SuiCheckbox, SuiCheckboxCard, SuiCheckboxLabel, SuiCircularProgressBar, SuiColorDot, SuiColorPicker, SuiCommandMenuFooter, SuiCommandMenuItem, SuiCommandMenuSearch, SuiCompactAvatarGroup, SuiCompactButton, SuiCompactSelect, SuiCompactSelectForInput, SuiContentCard, SuiContentDivider, SuiContentLabel, SuiCounterInput, SuiDateSelector, SuiDatepicker, SuiDayCell, SuiDayLabel, SuiDivider, SuiDrawerFooter, SuiDrawerHeader, SuiDropdownCaption, SuiDropdownItem, SuiDropdownMenu, SuiDropdownPanel, SuiDropdownSearch, SuiEmoji, SuiEmptyState, SuiFancyButton, SuiFileIcon, SuiFileUpload, SuiFileUploadCard, SuiFilterBar, SuiFilterItem, SuiFilterPanelFooter, SuiFilterPanelHeader, SuiFlag, SuiFormHint, SuiFormLabel, SuiIcon, SuiImageUpload, SuiImageUploadProfile, SuiImgRetry, SuiInlineInput, SuiInlineSelect, SuiInput, SuiIntegrationSwitch, SuiKbd, SuiKeyIcon, SuiLinkButton, SuiModal, SuiModalFooter, SuiModalHeader, SuiModalSheet, SuiNotification, SuiNotificationFooter, SuiNotificationTabMenu, SuiOtpInput, SuiPageHeader, SuiPagination, SuiPasswordStrength, SuiPaymentIcon, SuiPeriodRange, SuiPopover, SuiProductCard, SuiProgressBar, SuiProgressBarLabel, SuiRadio, SuiRadioCard, SuiRadioGroup, SuiRadioLabel, SuiRating, SuiRichEditor, SuiRichEditorItem, SuiSegmentedControl, SuiSelect, SuiSidebar, SuiSlider, SuiSocialButton, SuiStatusBadge, SuiStepper, SuiStoreCard, SuiSwitch, SuiSwitchCard, SuiSwitchLabel, SuiTabChips, SuiTabMenuHorizontal, SuiTabMenuVertical, SuiTable, SuiTableCellDirective, SuiTag, SuiTagInput, SuiTextarea, SuiTimePicker, SuiTimePickerDuration, SuiTimePickerItem, SuiTimePickerStatus, SuiToastOutlet, SuiToastService, SuiTooltip, SuiTooltipPanel, buildCalendarGrid, buildHourList, buildMinuteList, formatDateInput, formatDateShort, formatMonthYear, formatTime, isSameTime, normalizeHex, pad2, parseTime, to12h, to24h };
|
|
11860
|
+
export type { CalendarCell, CalendarRow, DatepickerPreset, DatepickerPresetId, SuiAccordionFlipIcon, SuiActivityAvatarRef, SuiActivityFeedItem, SuiActivityFile, SuiActivityFilterState, SuiActivityTask, SuiActivityTaskState, SuiAlertAction, SuiAlertSize, SuiAlertStyle, SuiAlertVariant, SuiAppStoreBadgeAppearance, SuiAppStoreBadgeCompany, SuiAvatarColor, SuiAvatarConfig, SuiAvatarGroupItem, SuiAvatarSize, SuiAvatarStatus, SuiAvatarTopBadge, SuiBadgeColor, SuiBadgeConfig, SuiBadgeSize, SuiBadgeType, SuiBadgeVariant, SuiBannerStyle, SuiBannerVariant, SuiBrandLogoCompany, SuiBrandLogoSize, SuiBrandLogoStyle, SuiBreadcrumbDivider, SuiBreadcrumbEntry, SuiButtonColor, SuiButtonGroupEntry, SuiButtonGroupItemSize, SuiButtonSize, SuiButtonVariant, SuiCardSize, SuiCardVariant, SuiChartLegendColor, SuiChartLegendItem, SuiCheckboxCardType, SuiCheckboxSize, SuiCircularProgressBarColor, SuiCircularProgressBarSize, SuiColorDotColor, SuiCommandMenuItemSize, SuiCommandMenuItemType, SuiCompactAvatarGroupAppearance, SuiCompactAvatarGroupSize, SuiCompactButtonSize, SuiCompactButtonStyle, SuiCompactSelectForInputItem, SuiCompactSelectForInputSize, SuiCompactSelectItem, SuiCompactSelectSize, SuiCompactSelectType, SuiContentCardType, SuiContentDividerItem, SuiContentDividerType, SuiContentLabelBadgePlacement, SuiContentLabelSize, SuiContentLabelType, SuiCounterInputSize, SuiDateRange, SuiDatepickerCalendars, SuiDatepickerMode, SuiDayCellType, SuiDividerOrientation, SuiDrawerFooterType, SuiDrawerHeaderSize, SuiDrawerHeaderType, SuiDropdownItemMode, SuiDropdownItemSize, SuiDropdownMenuPopupRole, SuiDropdownMenuPosition, SuiEmojiName, SuiEmojiSize, SuiEmptyStateAction, SuiFancyButtonSize, SuiFancyButtonType, SuiFileIconColor, SuiFileIconSize, SuiFileUploadCardFile, SuiFileUploadCardState, SuiFileUploadSize, SuiFilterItemState, SuiFlagName, SuiFlagSize, SuiFooterButtonConfig, SuiFormHintVariant, SuiFormLabelSize, SuiImageUploadProfileAlignment, SuiImageUploadProfileLabels, SuiImageUploadProfileType, SuiImageUploadShape, SuiImageUploadSize, SuiInlineSelectItem, SuiInlineSelectType, SuiInputSize, SuiInputType, SuiIntegrationManageConfig, SuiIntegrationSwitchAppearance, SuiIntegrationSwitchType, SuiKbdVariant, SuiKeyIconColor, SuiKeyIconSize, SuiKeyIconStyle, SuiLinkButtonSize, SuiLinkButtonVariant, SuiLinkConfig, SuiModalHeaderVariant, SuiModalIconVariant, SuiModalSize, SuiModalStatusAlignment, SuiNavbarVisibility, SuiNotificationStyle, SuiNotificationTab, SuiNotificationVariant, SuiOtpInputType, SuiPaginationInfoFormat, SuiPaginationSize, SuiPaginationType, SuiPasswordStrengthCondition, SuiPasswordStrengthLevel, SuiPaymentIconSize, SuiPaymentIconType, SuiPopoverFooter, SuiPopoverPosition, SuiProductCardFallback, SuiProductCardImage, SuiProgressBarColor, SuiProgressBarLabelType, SuiProgressBarSize, SuiRadioCardType, SuiRadioSize, SuiRadioValue, SuiRatingAlignment, SuiRatingAppearance, SuiRatingReviewLink, SuiRatingSize, SuiRatingType, SuiRichEditorAction, SuiRichEditorCommand, SuiRichEditorItemState, SuiRichEditorItemType, SuiRichEditorLayout, SuiSegmentedControlItem, SuiSegmentedControlSize, SuiSelectOption, SuiSelectSize, SuiSelectType, SuiSidebarBrandConfig, SuiSidebarIndicatorColor, SuiSidebarItem, SuiSidebarMobileMode, SuiSidebarProfile, SuiSidebarSearchConfig, SuiSliderType, SuiSocialButtonBrand, SuiSocialButtonStyle, SuiStatusBadgeAppearance, SuiStatusBadgeStatus, SuiStepperItem, SuiStepperSize, SuiStepperState, SuiStepperVariant, SuiStoreCardData, SuiSwitchCardType, SuiSwitchSize, SuiTabBar, SuiTabChipItem, SuiTabMenuHorizontalItem, SuiTabMenuHorizontalSize, SuiTabMenuVerticalItem, SuiTabMenuVerticalStyle, SuiTableCellMisc, SuiTableCellPriority, SuiTableColumn, SuiTableSize, SuiTagInputSize, SuiTagStyle, SuiTimeDurationPreset, SuiTimeFormat, SuiTimePeriod, SuiTimePickerItemDirection, SuiTimePickerStatusType, SuiTimeValue, SuiToastAction, SuiToastData, SuiToastItem, SuiToastPosition, SuiToastStyle, SuiToastVariant, SuiTooltipLargeData, SuiTooltipPosition, SuiTooltipSize, SuiTooltipTheme, SuiTooltipThemeInput };
|