@ajuarezso/sui-design-system 0.2.6 → 0.3.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
|
@@ -904,7 +904,7 @@ declare class SuiAlert {
|
|
|
904
904
|
* `small` (12/16) en los compactos (small/xsmall). Mapea el tipo del action al
|
|
905
905
|
* tamaño del alert.
|
|
906
906
|
*/
|
|
907
|
-
readonly actionLinkSize: _angular_core.Signal<"
|
|
907
|
+
readonly actionLinkSize: _angular_core.Signal<"small" | "medium">;
|
|
908
908
|
/**
|
|
909
909
|
* Tamaño del `sui-compact-button` del cierre, mapeado del size del alert para
|
|
910
910
|
* conservar el footprint del icono: xsmall (icon 16) → compact `medium`;
|
|
@@ -4976,7 +4976,7 @@ declare class SuiFileUpload {
|
|
|
4976
4976
|
*
|
|
4977
4977
|
* Toolbar horizontal de filtros con layout Left/Right split. Es un CONTENEDOR
|
|
4978
4978
|
* de composición: el consumer proyecta los controles ya homologados —
|
|
4979
|
-
* Segmented Control (`<sui-
|
|
4979
|
+
* Segmented Control (`<sui-segmented-control>`), Text Input
|
|
4980
4980
|
* (`<sui-input type="search">` con kbd badge), Select (`<sui-select>`),
|
|
4981
4981
|
* Button Group (`<sui-button-group>`) y Buttons (`<sui-button>`)— en dos slots
|
|
4982
4982
|
* nombrados.
|
|
@@ -5012,7 +5012,7 @@ declare class SuiFileUpload {
|
|
|
5012
5012
|
*
|
|
5013
5013
|
* Usage (Table variant):
|
|
5014
5014
|
* <sui-filter-bar>
|
|
5015
|
-
* <sui-
|
|
5015
|
+
* <sui-segmented-control slot="start" [tabs]="views" [(active)]="view" />
|
|
5016
5016
|
* <div slot="end" class="row">
|
|
5017
5017
|
* <sui-input type="search" placeholder="Search…" [(value)]="q">
|
|
5018
5018
|
* <sui-kbd input-suffix>⌘1</sui-kbd>
|
|
@@ -5023,7 +5023,7 @@ declare class SuiFileUpload {
|
|
|
5023
5023
|
*/
|
|
5024
5024
|
declare class SuiFilterBar {
|
|
5025
5025
|
/** Variante de la toolbar. Solo afecta hints de layout/responsive, no el wiring. */
|
|
5026
|
-
readonly variant: _angular_core.InputSignal<"
|
|
5026
|
+
readonly variant: _angular_core.InputSignal<"calendar" | "table">;
|
|
5027
5027
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SuiFilterBar, never>;
|
|
5028
5028
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiFilterBar, "sui-filter-bar", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, {}, never, ["[slot=start]", "[slot=end]", "*"], true, never>;
|
|
5029
5029
|
}
|
|
@@ -5173,7 +5173,7 @@ declare class SuiFilterPanelFooter {
|
|
|
5173
5173
|
readonly clearDisabled: _angular_core.InputSignal<boolean>;
|
|
5174
5174
|
readonly applyDisabled: _angular_core.InputSignal<boolean>;
|
|
5175
5175
|
/** Tamaño de los botones. Default 'small' (Figma: p-8px/radius-8 = size small). */
|
|
5176
|
-
readonly size: _angular_core.InputSignal<"
|
|
5176
|
+
readonly size: _angular_core.InputSignal<"small" | "medium">;
|
|
5177
5177
|
readonly clear: _angular_core.OutputEmitterRef<void>;
|
|
5178
5178
|
readonly apply: _angular_core.OutputEmitterRef<void>;
|
|
5179
5179
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SuiFilterPanelFooter, never>;
|
|
@@ -9494,125 +9494,206 @@ declare class SuiTable<T = any> {
|
|
|
9494
9494
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiTable<any>, "sui-table", never, { "columns": { "alias": "columns"; "required": true; "isSignal": true; }; "rows": { "alias": "rows"; "required": true; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "striped": { "alias": "striped"; "required": false; "isSignal": true; }; "selectable": { "alias": "selectable"; "required": false; "isSignal": true; }; "rowKey": { "alias": "rowKey"; "required": false; "isSignal": true; }; "selectedRows": { "alias": "selectedRows"; "required": false; "isSignal": true; }; "sortKey": { "alias": "sortKey"; "required": false; "isSignal": true; }; "sortDir": { "alias": "sortDir"; "required": false; "isSignal": true; }; }, { "selectedRows": "selectedRowsChange"; "sortKey": "sortKeyChange"; "sortDir": "sortDirChange"; "rowClicked": "rowClicked"; "sortChanged": "sortChanged"; }, ["cellTemplates"], never, true, never>;
|
|
9495
9495
|
}
|
|
9496
9496
|
|
|
9497
|
-
type
|
|
9498
|
-
|
|
9499
|
-
/** Estilo del contenedor del variant `vertical` (Tab Menu Vertical de Figma). */
|
|
9500
|
-
type SuiTabsVerticalStyle = 'card' | 'list';
|
|
9501
|
-
interface SuiTab<T = string> {
|
|
9497
|
+
type SuiTabMenuHorizontalSize = 'small' | 'medium' | 'large' | 'xlarge';
|
|
9498
|
+
interface SuiTabMenuHorizontalItem<T = string> {
|
|
9502
9499
|
value: T;
|
|
9503
9500
|
label: string;
|
|
9504
9501
|
icon?: string;
|
|
9505
|
-
disabled?: boolean;
|
|
9506
9502
|
/**
|
|
9507
|
-
*
|
|
9508
|
-
*
|
|
9509
|
-
*
|
|
9510
|
-
*
|
|
9503
|
+
* Muestra el chevron de navegación (pill `arrow-right-s-line` 18px) a la
|
|
9504
|
+
* derecha del ítem — prop `rightIcon` del Tab Menu de Figma. El pill es
|
|
9505
|
+
* bg-white-0 p-px radius-full overflow-clip SIN shadow (Figma 3511:9882,
|
|
9506
|
+
* a diferencia del pill del Tab Menu Vertical, que sí lleva shadow-x-small).
|
|
9511
9507
|
*/
|
|
9512
|
-
|
|
9508
|
+
rightIcon?: boolean;
|
|
9513
9509
|
/**
|
|
9514
9510
|
* Badge numérico rojo (state/error/base) renderizado a la derecha del label.
|
|
9515
|
-
* Mapea al prop `number` del Tab Menu de Figma
|
|
9516
|
-
* Si es `0`/`undefined` no se renderiza.
|
|
9511
|
+
* Mapea al prop `number` del Tab Menu Horizontal Items de Figma.
|
|
9512
|
+
* Si es `0`/`undefined` no se renderiza.
|
|
9517
9513
|
*/
|
|
9518
|
-
|
|
9514
|
+
number?: number;
|
|
9515
|
+
disabled?: boolean;
|
|
9516
|
+
}
|
|
9517
|
+
/**
|
|
9518
|
+
* SUI Tab Menu Horizontal — SUI Design System 2.0
|
|
9519
|
+
*
|
|
9520
|
+
* Figma file: 8p1k72aKKvzJV4XcvPS4VO
|
|
9521
|
+
* Componente Figma: "Tab Menu Horizontal [1.1]"
|
|
9522
|
+
* 3511:9958 — container (border-t/b, py-14px, gap-24px)
|
|
9523
|
+
* 3511:9832 — Tab Menu Horizontal Items [1.1] (State × Active; leftIcon/rightIcon/number)
|
|
9524
|
+
* 3511:9897 — Item Active/On (label strong-950 + línea primary)
|
|
9525
|
+
* 3511:9877 — Item Hover/Off (text strong-950, icon sub-600)
|
|
9526
|
+
*
|
|
9527
|
+
* Pestañas horizontales con subrayado (underline 2px primary en el ítem activo,
|
|
9528
|
+
* al ras del border-bottom del container).
|
|
9529
|
+
*
|
|
9530
|
+
* EXACT specs (Figma):
|
|
9531
|
+
* Container (3511:9958): border-top + border-bottom 1px stroke-soft-200,
|
|
9532
|
+
* padding 14px 0, gap 24px entre items, align-items flex-start, bg-white-0
|
|
9533
|
+
* Item (3511:9830/9897): gap icon↔label 6px, gap label↔number 4px
|
|
9534
|
+
* Default/Off: text/icon sub-600
|
|
9535
|
+
* Hover/Off: text strong-950, icon sub-600
|
|
9536
|
+
* Active/On: text strong-950 + underline primary-base 2px (bottom -14px);
|
|
9537
|
+
* leftIcon strong-950 (verificado 2026-06-21: difiere del
|
|
9538
|
+
* vertical, cuyo icono activo es primary-base — a propósito)
|
|
9539
|
+
* number: badge state/error/base, p-2px, radius-full, text static-white,
|
|
9540
|
+
* Subheading/2XSmall (11px/12px line, +2% / 0.22px, uppercase)
|
|
9541
|
+
* rightIcon (chevron): pill 'Arrow' (3511:9882/9902/9844): bg-white-0, p-px,
|
|
9542
|
+
* radius-full, overflow-clip, icon arrow-right-s-line 18px, SIN shadow
|
|
9543
|
+
*
|
|
9544
|
+
* PENDING VERIFY:
|
|
9545
|
+
* - `size`: el Tab Menu Horizontal de Figma no expone eje size. El input se
|
|
9546
|
+
* mantiene como extensión SUI (espeja el data-attr del host como hook de
|
|
9547
|
+
* SCSS), pero hoy solo medium está 1:1 y no altera estilos.
|
|
9548
|
+
* - `disabled` por ítem es extensión SUI (Figma no muestra estado Disabled).
|
|
9549
|
+
*
|
|
9550
|
+
* Historia: hasta la v0.2.x este componente vivía como `<sui-tabs variant="line">`;
|
|
9551
|
+
* en la v0.3.0 se separó en componente propio (junto a `sui-segmented-control`
|
|
9552
|
+
* y `sui-tab-menu-vertical`) espejando los tres sets independientes de Figma.
|
|
9553
|
+
* Renombres vs la interface SuiTab vieja: `badge` → `number` y `chevron` →
|
|
9554
|
+
* `rightIcon` (nombres de los props del Figma).
|
|
9555
|
+
*/
|
|
9556
|
+
declare class SuiTabMenuHorizontal<T = string> {
|
|
9557
|
+
readonly tabs: _angular_core.InputSignal<SuiTabMenuHorizontalItem<T>[]>;
|
|
9558
|
+
readonly active: _angular_core.ModelSignal<T | undefined>;
|
|
9559
|
+
readonly size: _angular_core.InputSignal<SuiTabMenuHorizontalSize>;
|
|
9560
|
+
readonly tabChange: _angular_core.OutputEmitterRef<T>;
|
|
9561
|
+
isActive(tab: SuiTabMenuHorizontalItem<T>): boolean;
|
|
9562
|
+
select(tab: SuiTabMenuHorizontalItem<T>): void;
|
|
9563
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SuiTabMenuHorizontal<any>, never>;
|
|
9564
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiTabMenuHorizontal<any>, "sui-tab-menu-horizontal", never, { "tabs": { "alias": "tabs"; "required": true; "isSignal": true; }; "active": { "alias": "active"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, { "active": "activeChange"; "tabChange": "tabChange"; }, never, never, true, never>;
|
|
9565
|
+
}
|
|
9566
|
+
|
|
9567
|
+
/** Estilo del contenedor del Tab Menu Vertical (prop Style=Card|List de Figma). */
|
|
9568
|
+
type SuiTabMenuVerticalStyle = 'card' | 'list';
|
|
9569
|
+
interface SuiTabMenuVerticalItem<T = string> {
|
|
9570
|
+
value: T;
|
|
9571
|
+
label: string;
|
|
9572
|
+
icon?: string;
|
|
9519
9573
|
/**
|
|
9520
9574
|
* Muestra el chevron de navegación (pill `arrow-right-s-line` 18px) a la
|
|
9521
|
-
* derecha del ítem — prop `rightIcon` del Tab Menu de Figma.
|
|
9522
|
-
*
|
|
9523
|
-
*
|
|
9524
|
-
|
|
9575
|
+
* derecha del ítem — prop `rightIcon` del Tab Menu de Figma. El pill vertical
|
|
9576
|
+
* es bg-white-0 p-1px radius-full CON shadow-x-small (Figma 3515:10332, a
|
|
9577
|
+
* diferencia del pill del Tab Menu Horizontal, que NO lleva shadow).
|
|
9578
|
+
*/
|
|
9579
|
+
rightIcon?: boolean;
|
|
9580
|
+
/**
|
|
9581
|
+
* Badge numérico rojo (state/error/base) renderizado a la derecha del label.
|
|
9582
|
+
* Mapea al prop `number` del Tab Menu Vertical Items de Figma.
|
|
9583
|
+
* Si es `0`/`undefined` no se renderiza.
|
|
9525
9584
|
*/
|
|
9526
|
-
|
|
9585
|
+
number?: number;
|
|
9586
|
+
disabled?: boolean;
|
|
9527
9587
|
}
|
|
9528
9588
|
/**
|
|
9529
|
-
* SUI
|
|
9589
|
+
* SUI Tab Menu Vertical — SUI Design System 2.0
|
|
9530
9590
|
*
|
|
9531
9591
|
* Figma file: 8p1k72aKKvzJV4XcvPS4VO
|
|
9532
|
-
*
|
|
9533
|
-
*
|
|
9534
|
-
*
|
|
9535
|
-
* - variant='line' → "Tab Menu Horizontal [1.1]" (underline tabs)
|
|
9536
|
-
* - variant='vertical' → "Tab Menu Vertical [1.1]" (sidebar nav, Card|List)
|
|
9537
|
-
*
|
|
9538
|
-
* Nodos homologados (2026-05-29 · Tab Menu pass):
|
|
9539
|
-
* 3511:9958 — Tab Menu Horizontal [1.1] (container: border-t/b, py-14px, gap-24px)
|
|
9540
|
-
* 3511:9832 — Tab Menu Horizontal Items [1.1] (State × Active; leftIcon/rightIcon/number)
|
|
9541
|
-
* 3511:9897 — Horizontal Item Active/On (label strong-950 + línea primary)
|
|
9542
|
-
* 3511:9877 — Horizontal Item Hover/Off (text strong-950, icon sub-600)
|
|
9543
|
-
* 3516:10411 — Tab Menu Vertical [1.1] (Style=Card|List × Quantity 02–08 × divider)
|
|
9544
|
-
* 3516:10412 — Vertical Card Quantity=03 con divider 'SELECT MENU'
|
|
9592
|
+
* Componente Figma: "Tab Menu Vertical [1.1]"
|
|
9593
|
+
* 3516:10411 — set (Style=Card|List × Quantity 02–08 × divider)
|
|
9594
|
+
* 3516:10412 — Card Quantity=03 con divider 'SELECT MENU'
|
|
9545
9595
|
* 3515:10326 — Tab Menu Vertical Items [1.1] (State × Active; leftIcon/rightIcon/number)
|
|
9546
|
-
* 3515:10341 —
|
|
9547
|
-
*
|
|
9548
|
-
*
|
|
9549
|
-
*
|
|
9550
|
-
*
|
|
9551
|
-
*
|
|
9552
|
-
*
|
|
9553
|
-
*
|
|
9554
|
-
*
|
|
9555
|
-
*
|
|
9556
|
-
*
|
|
9557
|
-
* Active/On: text strong-950 + indicator line primary-base 2px (bottom -14px,
|
|
9558
|
-
* al ras del border-bottom del container)
|
|
9559
|
-
* leftIcon: 20px · rightIcon: chevron arrow-right-s-line 18px en pill 'Arrow'
|
|
9560
|
-
* (3511:9882/9902/9844): bg-white-0, p-px, radius-full, overflow-clip,
|
|
9561
|
-
* SIN shadow (el vertical sí lleva shadow-x-small)
|
|
9562
|
-
* number: badge state/error/base, p-2px, radius-full, text static-white
|
|
9563
|
-
* Subheading/2XSmall (11px/12px line, +2% / 0.22px, uppercase)
|
|
9564
|
-
* Vertical item (3515:10327/10341/10334):
|
|
9565
|
-
* gap: 6px · padding: 8px · radius: radius-8 · w-full · label flex-1 text-left
|
|
9566
|
-
* overflow-clip en el item (y en el container Card 3516:10412)
|
|
9567
|
-
* Active/On: bg-weak-50 + text strong-950 / icon strong-950
|
|
9596
|
+
* 3515:10341 — Item Active/On (bg-weak-50)
|
|
9597
|
+
*
|
|
9598
|
+
* Navegación lateral (sidebar nav) con dos estilos de contenedor: Card (con
|
|
9599
|
+
* borde/fondo/sombra) o List (plano).
|
|
9600
|
+
*
|
|
9601
|
+
* EXACT specs (Figma):
|
|
9602
|
+
* Item (3515:10327/10341): gap 6px, padding 8px, radius-8, w-full, label flex-1
|
|
9603
|
+
* text-left, overflow-clip
|
|
9604
|
+
* Active/On: bg-weak-50 + text strong-950; leftIcon PRIMARY-BASE (verificado
|
|
9605
|
+
* 2026-06-21 vía variable_defs + screenshot de 3515:10341 — difiere
|
|
9606
|
+
* del horizontal, cuyo icono activo es strong-950, a propósito)
|
|
9568
9607
|
* Hover/Off: bg-weak-50 (igual fill que el active) + text strong-950 (3515:10334)
|
|
9569
|
-
* Default/Off (Card):
|
|
9570
|
-
* Default/Off (List):
|
|
9571
|
-
*
|
|
9572
|
-
*
|
|
9573
|
-
*
|
|
9574
|
-
*
|
|
9575
|
-
*
|
|
9576
|
-
*
|
|
9577
|
-
*
|
|
9578
|
-
*
|
|
9579
|
-
* Subheading/XSmall (12px/16px line, +4% / 0.48px, uppercase)
|
|
9580
|
-
*
|
|
9581
|
-
* VERIFICADO (2026-06-21, re-verificación visual pixel-perfect):
|
|
9582
|
-
* - Horizontal Active leftIcon = STRONG-950 (oscuro). Confirmado: variable_defs
|
|
9583
|
-
* de 3511:9897 expone primary-base SOLO para la línea underline (NO para el
|
|
9584
|
-
* icono); icon/sub-600 es el chevron; el screenshot del item activo muestra el
|
|
9585
|
-
* leftIcon oscuro. → icono activo horizontal = strong-950 (queda como estaba).
|
|
9586
|
-
* - Vertical Active leftIcon = PRIMARY-BASE (azul en Figma → naranja brand acá).
|
|
9587
|
-
* Confirmado: variable_defs de 3515:10341 expone primary-base (texto=strong-950,
|
|
9588
|
-
* bg=weak-50) → ese primary es el icono; screenshot del item activo lo muestra
|
|
9589
|
-
* AZUL. El componente lo tenía en strong-950 → FIX aplicado (.sui-tabs__vertical-
|
|
9590
|
-
* item--active .sui-tabs__vertical-leading { color: var(--sui-primary-base) }).
|
|
9591
|
-
* OJO: horizontal y vertical DIFIEREN en el color del icono activo (a propósito).
|
|
9608
|
+
* Default/Off (Card): bg-white-0 + text/icon sub-600
|
|
9609
|
+
* Default/Off (List): transparent + text/icon sub-600
|
|
9610
|
+
* Container Card (3516:10412): bg-white-0, border 1px stroke-soft-200, p-10px,
|
|
9611
|
+
* radius-16, shadow-x-small, flex-col gap-8px, overflow-clip
|
|
9612
|
+
* Container List: flat (sin border/bg/shadow/padding), gap-8px
|
|
9613
|
+
* Divider label (Content Divider [1.1] reusado): px-8px py-4px, text-soft-400,
|
|
9614
|
+
* Subheading/XSmall (12px/16px line, +4% / 0.48px), uppercase
|
|
9615
|
+
* number: badge state/error/base, p-2px, radius-full, text static-white
|
|
9616
|
+
* rightIcon (chevron): pill bg-white-0, p-1px, radius-full, shadow-x-small,
|
|
9617
|
+
* arrow-right-s-line 18px
|
|
9592
9618
|
*
|
|
9593
9619
|
* PENDING VERIFY:
|
|
9594
|
-
* -
|
|
9595
|
-
*
|
|
9596
|
-
* -
|
|
9597
|
-
*
|
|
9598
|
-
*
|
|
9599
|
-
*
|
|
9600
|
-
*
|
|
9601
|
-
*
|
|
9602
|
-
|
|
9603
|
-
|
|
9604
|
-
|
|
9620
|
+
* - El set de Figma no expone eje `size`; usa un único tamaño (item p-8px /
|
|
9621
|
+
* icon 20px), por eso este componente NO tiene input `size`.
|
|
9622
|
+
* - `disabled` por ítem es extensión SUI (Figma no muestra estado Disabled).
|
|
9623
|
+
*
|
|
9624
|
+
* Historia: hasta la v0.2.x este componente vivía como
|
|
9625
|
+
* `<sui-tabs variant="vertical">`; en la v0.3.0 se separó en componente propio
|
|
9626
|
+
* (junto a `sui-segmented-control` y `sui-tab-menu-horizontal`) espejando los
|
|
9627
|
+
* tres sets independientes de Figma. Renombres vs la API vieja:
|
|
9628
|
+
* - input `verticalStyle` → `menuStyle` (el prefijo "vertical" quedó
|
|
9629
|
+
* redundante con el nombre del componente; no se usa `style` a secas para
|
|
9630
|
+
* no chocar con el atributo HTML global `style`).
|
|
9631
|
+
* - item `badge` → `number` y `chevron` → `rightIcon` (props del Figma).
|
|
9632
|
+
*/
|
|
9633
|
+
declare class SuiTabMenuVertical<T = string> {
|
|
9634
|
+
readonly tabs: _angular_core.InputSignal<SuiTabMenuVerticalItem<T>[]>;
|
|
9605
9635
|
readonly active: _angular_core.ModelSignal<T | undefined>;
|
|
9606
|
-
|
|
9607
|
-
readonly
|
|
9608
|
-
/** Estilo del contenedor cuando variant='vertical' (Card|List). */
|
|
9609
|
-
readonly verticalStyle: _angular_core.InputSignal<SuiTabsVerticalStyle>;
|
|
9636
|
+
/** Estilo del contenedor: Card (borde/fondo/sombra) o List (plano). */
|
|
9637
|
+
readonly menuStyle: _angular_core.InputSignal<SuiTabMenuVerticalStyle>;
|
|
9610
9638
|
/**
|
|
9611
|
-
* Label de sección renderizado sobre el menú
|
|
9612
|
-
*
|
|
9639
|
+
* Label de sección renderizado sobre el menú (prop `divider` del Figma —
|
|
9640
|
+
* ej. 'SELECT MENU'). Vacío = sin divider.
|
|
9613
9641
|
*/
|
|
9614
9642
|
readonly dividerLabel: _angular_core.InputSignal<string>;
|
|
9615
9643
|
readonly tabChange: _angular_core.OutputEmitterRef<T>;
|
|
9644
|
+
isActive(tab: SuiTabMenuVerticalItem<T>): boolean;
|
|
9645
|
+
select(tab: SuiTabMenuVerticalItem<T>): void;
|
|
9646
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SuiTabMenuVertical<any>, never>;
|
|
9647
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiTabMenuVertical<any>, "sui-tab-menu-vertical", never, { "tabs": { "alias": "tabs"; "required": true; "isSignal": true; }; "active": { "alias": "active"; "required": false; "isSignal": true; }; "menuStyle": { "alias": "menuStyle"; "required": false; "isSignal": true; }; "dividerLabel": { "alias": "dividerLabel"; "required": false; "isSignal": true; }; }, { "active": "activeChange"; "tabChange": "tabChange"; }, never, never, true, never>;
|
|
9648
|
+
}
|
|
9649
|
+
|
|
9650
|
+
type SuiSegmentedControlSize = 'small' | 'medium' | 'large' | 'xlarge';
|
|
9651
|
+
interface SuiSegmentedControlItem<T = string> {
|
|
9652
|
+
value: T;
|
|
9653
|
+
label: string;
|
|
9654
|
+
icon?: string;
|
|
9655
|
+
/**
|
|
9656
|
+
* Renderiza el ítem solo con icono (sin label visible) — mapea al
|
|
9657
|
+
* Type=Only Icon del Figma Segmented Control. Requiere que `icon` esté
|
|
9658
|
+
* presente. El `label` se usa entonces como `aria-label` para accesibilidad.
|
|
9659
|
+
*/
|
|
9660
|
+
iconOnly?: boolean;
|
|
9661
|
+
disabled?: boolean;
|
|
9662
|
+
}
|
|
9663
|
+
/**
|
|
9664
|
+
* SUI Segmented Control — SUI Design System 2.0
|
|
9665
|
+
*
|
|
9666
|
+
* Figma file: 8p1k72aKKvzJV4XcvPS4VO
|
|
9667
|
+
* Componente Figma: "Segmented Control [1.1]"
|
|
9668
|
+
* 2604:114 — set del Segmented Control
|
|
9669
|
+
* 2604:150 — variantes de ítem (Text · Left Icon · Only Icon)
|
|
9670
|
+
* 2603:2062 — estados (default · hover · active · disabled)
|
|
9671
|
+
* 2604:152 — container (bg-weak-50, padding 4px, gap 4px, radius 10px)
|
|
9672
|
+
*
|
|
9673
|
+
* Píldora estilo iOS: opciones mutuamente excluyentes con un indicador de
|
|
9674
|
+
* fondo blanco que se anima (translateX + width) hacia la opción activa.
|
|
9675
|
+
* El indicador se reposiciona con ResizeObserver cuando el track cambia de
|
|
9676
|
+
* tamaño (responsive) y con un effect cuando cambia `active` o `tabs`.
|
|
9677
|
+
*
|
|
9678
|
+
* EXACT specs (Figma):
|
|
9679
|
+
* Container (2604:152): bg #f7f7f7 (bg-weak-50), padding 4px, gap 4px, radius 10px
|
|
9680
|
+
* Item: padding 4px, gap 6px, radius 6px, icon 20px
|
|
9681
|
+
* Estados: default text/icon-soft-400 · hover sub-600 · active strong-950 + indicator
|
|
9682
|
+
* Disabled: color discreto text-disabled-300 (NO opacity)
|
|
9683
|
+
*
|
|
9684
|
+
* EXTRA FEATURES (extensión SUI, el set de Figma no expone eje `size`):
|
|
9685
|
+
* - prop `size` (small/medium/large/xlarge); solo medium está 1:1 con Figma.
|
|
9686
|
+
* - prop `disabled` por ítem.
|
|
9687
|
+
*
|
|
9688
|
+
* Historia: hasta la v0.2.x este componente vivía como `<sui-tabs variant="segment">`;
|
|
9689
|
+
* en la v0.3.0 se separó en componente propio (junto a `sui-tab-menu-horizontal`
|
|
9690
|
+
* y `sui-tab-menu-vertical`) espejando los tres sets independientes de Figma.
|
|
9691
|
+
*/
|
|
9692
|
+
declare class SuiSegmentedControl<T = string> implements AfterViewInit {
|
|
9693
|
+
readonly tabs: _angular_core.InputSignal<SuiSegmentedControlItem<T>[]>;
|
|
9694
|
+
readonly active: _angular_core.ModelSignal<T | undefined>;
|
|
9695
|
+
readonly size: _angular_core.InputSignal<SuiSegmentedControlSize>;
|
|
9696
|
+
readonly tabChange: _angular_core.OutputEmitterRef<T>;
|
|
9616
9697
|
segmentItems?: QueryList<ElementRef<HTMLElement>>;
|
|
9617
9698
|
segmentTrack?: ElementRef<HTMLElement>;
|
|
9618
9699
|
readonly indicatorStyle: _angular_core.WritableSignal<{
|
|
@@ -9623,10 +9704,10 @@ declare class SuiTabs<T = string> implements AfterViewInit {
|
|
|
9623
9704
|
constructor();
|
|
9624
9705
|
ngAfterViewInit(): void;
|
|
9625
9706
|
private updateIndicator;
|
|
9626
|
-
isActive(tab:
|
|
9627
|
-
select(tab:
|
|
9628
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<
|
|
9629
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<
|
|
9707
|
+
isActive(tab: SuiSegmentedControlItem<T>): boolean;
|
|
9708
|
+
select(tab: SuiSegmentedControlItem<T>): void;
|
|
9709
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SuiSegmentedControl<any>, never>;
|
|
9710
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiSegmentedControl<any>, "sui-segmented-control", never, { "tabs": { "alias": "tabs"; "required": true; "isSignal": true; }; "active": { "alias": "active"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, { "active": "activeChange"; "tabChange": "tabChange"; }, never, never, true, never>;
|
|
9630
9711
|
}
|
|
9631
9712
|
|
|
9632
9713
|
type SuiTagInputSize = 'xsmall' | 'small' | 'medium';
|
|
@@ -10328,7 +10409,7 @@ declare class SuiTimePicker implements ControlValueAccessor {
|
|
|
10328
10409
|
readonly error: _angular_core.InputSignal<boolean>;
|
|
10329
10410
|
readonly placeholder: _angular_core.InputSignal<string>;
|
|
10330
10411
|
readonly disabled: _angular_core.InputSignal<boolean>;
|
|
10331
|
-
readonly size: _angular_core.InputSignal<"
|
|
10412
|
+
readonly size: _angular_core.InputSignal<"small" | "medium">;
|
|
10332
10413
|
/** Formato de display: '12h' (AM/PM) o '24h'. */
|
|
10333
10414
|
readonly format: _angular_core.InputSignal<SuiTimeFormat>;
|
|
10334
10415
|
/** Incremento de minutos de la lista (1, 5, 15, ...). Default 5. */
|
|
@@ -10699,5 +10780,5 @@ declare class SuiTooltipPanel {
|
|
|
10699
10780
|
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>;
|
|
10700
10781
|
}
|
|
10701
10782
|
|
|
10702
|
-
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_TAB_BAR, SuiAccordion, 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, SuiInlineInput, SuiInlineSelect, SuiInput, SuiIntegrationSwitch, SuiKbd, SuiKeyIcon, SuiLinkButton, SuiModal, SuiModalSheet, SuiNotification, SuiNotificationFooter, SuiNotificationTabMenu, SuiOtpInput, SuiPageHeader, SuiPagination, SuiPeriodRange, SuiPopover, SuiProgressBar, SuiProgressBarLabel, SuiRadio, SuiRadioCard, SuiRadioGroup, SuiRating, SuiRichEditor, SuiRichEditorItem, SuiSelect, SuiSidebar, SuiSlider, SuiSocialButton, SuiStatusBadge, SuiStepper, SuiStoreCard, SuiSwitch, SuiSwitchCard, SuiSwitchLabel, SuiTabChips, SuiTable, SuiTableCellDirective,
|
|
10703
|
-
export type { CalendarCell, CalendarRow, DatepickerPreset, DatepickerPresetId, SuiAccordionFlipIcon, SuiActivityAvatarRef, SuiActivityFeedItem, SuiActivityFile, SuiActivityFilterState, SuiActivityTask, SuiActivityTaskState, SuiAlertAction, SuiAlertSize, SuiAlertStyle, SuiAlertVariant, SuiAppStoreBadgeAppearance, SuiAppStoreBadgeCompany, SuiAvatarColor, 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, SuiFancyButtonSize, SuiFancyButtonType, SuiFileIconColor, SuiFileIconSize, SuiFileUploadCardState, SuiFileUploadSize, SuiFilterItemState, SuiFlagName, SuiFlagSize, SuiFormHintSize, SuiFormHintVariant, SuiFormLabelSize, SuiImageUploadProfileAlignment, SuiImageUploadProfileType, SuiImageUploadShape, SuiImageUploadSize, SuiInlineSelectItem, SuiInlineSelectType, SuiInputSize, SuiInputType, SuiIntegrationSwitchAppearance, SuiIntegrationSwitchType, SuiKbdVariant, SuiKeyIconColor, SuiKeyIconSize, SuiKeyIconStyle, SuiLinkButtonSize, SuiLinkButtonVariant, SuiModalIconVariant, SuiModalSize, SuiModalStatusAlignment, SuiNavbarVisibility, SuiNotificationStyle, SuiNotificationTab, SuiNotificationVariant, SuiOtpInputType, SuiPaginationInfoFormat, SuiPaginationSize, SuiPaginationType, SuiPopoverFooter, SuiPopoverPosition, SuiProgressBarColor, SuiProgressBarLabelType, SuiProgressBarSize, SuiRadioCardType, SuiRadioSize, SuiRadioValue, SuiRatingAlignment, SuiRatingAppearance, SuiRatingReviewLink, SuiRatingSize, SuiRatingType, SuiRichEditorAction, SuiRichEditorCommand, SuiRichEditorItemState, SuiRichEditorItemType, SuiRichEditorLayout, SuiSelectOption, SuiSelectSize, SuiSelectType, SuiSidebarIndicatorColor, SuiSidebarItem, SuiSidebarMobileMode, SuiSidebarProfile, SuiSliderType, SuiSocialButtonBrand, SuiSocialButtonStyle, SuiStatusBadgeAppearance, SuiStatusBadgeStatus, SuiStepperItem, SuiStepperSize, SuiStepperState, SuiStepperVariant, SuiStoreCardData, SuiSwitchCardType, SuiSwitchSize,
|
|
10783
|
+
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_TAB_BAR, SuiAccordion, 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, SuiInlineInput, SuiInlineSelect, SuiInput, SuiIntegrationSwitch, SuiKbd, SuiKeyIcon, SuiLinkButton, SuiModal, SuiModalSheet, SuiNotification, SuiNotificationFooter, SuiNotificationTabMenu, SuiOtpInput, SuiPageHeader, SuiPagination, SuiPeriodRange, SuiPopover, SuiProgressBar, SuiProgressBarLabel, SuiRadio, SuiRadioCard, SuiRadioGroup, 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 };
|
|
10784
|
+
export type { CalendarCell, CalendarRow, DatepickerPreset, DatepickerPresetId, SuiAccordionFlipIcon, SuiActivityAvatarRef, SuiActivityFeedItem, SuiActivityFile, SuiActivityFilterState, SuiActivityTask, SuiActivityTaskState, SuiAlertAction, SuiAlertSize, SuiAlertStyle, SuiAlertVariant, SuiAppStoreBadgeAppearance, SuiAppStoreBadgeCompany, SuiAvatarColor, 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, SuiFancyButtonSize, SuiFancyButtonType, SuiFileIconColor, SuiFileIconSize, SuiFileUploadCardState, SuiFileUploadSize, SuiFilterItemState, SuiFlagName, SuiFlagSize, SuiFormHintSize, SuiFormHintVariant, SuiFormLabelSize, SuiImageUploadProfileAlignment, SuiImageUploadProfileType, SuiImageUploadShape, SuiImageUploadSize, SuiInlineSelectItem, SuiInlineSelectType, SuiInputSize, SuiInputType, SuiIntegrationSwitchAppearance, SuiIntegrationSwitchType, SuiKbdVariant, SuiKeyIconColor, SuiKeyIconSize, SuiKeyIconStyle, SuiLinkButtonSize, SuiLinkButtonVariant, SuiModalIconVariant, SuiModalSize, SuiModalStatusAlignment, SuiNavbarVisibility, SuiNotificationStyle, SuiNotificationTab, SuiNotificationVariant, SuiOtpInputType, SuiPaginationInfoFormat, SuiPaginationSize, SuiPaginationType, SuiPopoverFooter, SuiPopoverPosition, SuiProgressBarColor, SuiProgressBarLabelType, SuiProgressBarSize, SuiRadioCardType, SuiRadioSize, SuiRadioValue, SuiRatingAlignment, SuiRatingAppearance, SuiRatingReviewLink, SuiRatingSize, SuiRatingType, SuiRichEditorAction, SuiRichEditorCommand, SuiRichEditorItemState, SuiRichEditorItemType, SuiRichEditorLayout, SuiSegmentedControlItem, SuiSegmentedControlSize, SuiSelectOption, SuiSelectSize, SuiSelectType, SuiSidebarIndicatorColor, SuiSidebarItem, SuiSidebarMobileMode, SuiSidebarProfile, 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 };
|