@ajuarezso/sui-design-system 0.6.0 → 0.7.1
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
|
@@ -1655,6 +1655,10 @@ type SuiButtonSize = '2xsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlar
|
|
|
1655
1655
|
interface SuiFooterButtonConfig {
|
|
1656
1656
|
label: string;
|
|
1657
1657
|
disabled?: boolean;
|
|
1658
|
+
/** Color del botón primario — 'error' para acciones destructivas
|
|
1659
|
+
* (confirmar borrado). Default 'primary'. Solo lo consume el botón
|
|
1660
|
+
* primario de sui-modal-footer; los secundarios son stroke neutral. */
|
|
1661
|
+
color?: 'primary' | 'error';
|
|
1658
1662
|
}
|
|
1659
1663
|
/**
|
|
1660
1664
|
* SUI Button — SUI Design System 2.0
|
|
@@ -6817,7 +6821,7 @@ type SuiModalStatusAlignment = 'horizontal' | 'vertical';
|
|
|
6817
6821
|
* @input closeOnEscape — boolean — close on Escape key (default: true)
|
|
6818
6822
|
* @input showClose — boolean — show X button (default: true)
|
|
6819
6823
|
* @input iconVariant — SuiModalIconVariant | null — circular icon in header
|
|
6820
|
-
* @input statusAlignment — 'horizontal' | 'vertical' —
|
|
6824
|
+
* @input statusAlignment — 'horizontal' | 'vertical' | null — anatomía Status Modal (480:1372); null = header normal.
|
|
6821
6825
|
* 'vertical' = patrón Status Modal de Figma (default: 'horizontal')
|
|
6822
6826
|
* @input backdropBlur — boolean — blur(10px) del fondo. default true (look
|
|
6823
6827
|
* glass del proyecto); opt-out con [backdropBlur]="false"
|
|
@@ -6845,11 +6849,11 @@ declare class SuiModal implements AfterViewInit, OnDestroy {
|
|
|
6845
6849
|
contenedor circular bg `neutral-lighter` + color `sub-600`. Si NO se
|
|
6846
6850
|
pasa y hay `iconVariant`, fallback al variant semántico. */
|
|
6847
6851
|
readonly headerIcon: _angular_core.InputSignal<string | null>;
|
|
6848
|
-
/**
|
|
6849
|
-
(
|
|
6850
|
-
|
|
6851
|
-
|
|
6852
|
-
readonly statusAlignment: _angular_core.InputSignal<SuiModalStatusAlignment>;
|
|
6852
|
+
/** Anatomía Status Modal de Figma (set 480:1372) — null (default) = header
|
|
6853
|
+
normal (Modal Header 466:4778). `horizontal`: tile cuadrado + texto en
|
|
6854
|
+
fila dentro del body (480:1366). `vertical`: icono centrado arriba +
|
|
6855
|
+
texto centrado en columna. Requiere `iconVariant` o `headerIcon`. */
|
|
6856
|
+
readonly statusAlignment: _angular_core.InputSignal<SuiModalStatusAlignment | null>;
|
|
6853
6857
|
/** Aplica `backdrop-filter: blur(10px)` al overlay. Por defecto `true` —
|
|
6854
6858
|
extra-feature "glass" del proyecto encima del overlay-gray plano del DS
|
|
6855
6859
|
(rgba(51,51,51,0.24)). Pasar `[backdropBlur]="false"` lo quita y deja el
|
|
@@ -6918,14 +6922,12 @@ declare class SuiModal implements AfterViewInit, OnDestroy {
|
|
|
6918
6922
|
/** data-variant del círculo: si hay variant semántico lo usa; si solo hay
|
|
6919
6923
|
* headerIcon custom, retorna 'neutral'. */
|
|
6920
6924
|
protected readonly resolvedIconVariant: _angular_core.Signal<string>;
|
|
6921
|
-
/**
|
|
6922
|
-
*
|
|
6923
|
-
*
|
|
6925
|
+
/** Modo Status Modal activo (statusAlignment seteado + icono presente):
|
|
6926
|
+
* el icono+texto se renderizan en el body con la anatomía 480:1372 y el
|
|
6927
|
+
* header queda solo con el close flotante. */
|
|
6928
|
+
readonly isStatus: _angular_core.Signal<boolean>;
|
|
6924
6929
|
readonly isStatusVertical: _angular_core.Signal<boolean>;
|
|
6925
|
-
|
|
6926
|
-
* círculo): patrón Figma "Modal Header / Small" (size sin description). Solo
|
|
6927
|
-
* aplica en modo horizontal con icono y SIN description. */
|
|
6928
|
-
readonly isCompactHeader: _angular_core.Signal<boolean>;
|
|
6930
|
+
readonly isStatusHorizontal: _angular_core.Signal<boolean>;
|
|
6929
6931
|
private _previousFocus;
|
|
6930
6932
|
private _escapeHandler?;
|
|
6931
6933
|
ngAfterViewInit(): void;
|
|
@@ -6952,23 +6954,28 @@ type SuiModalHeaderVariant = 'info' | 'success' | 'warning' | 'error';
|
|
|
6952
6954
|
* Figma file: 8p1k72aKKvzJV4XcvPS4VO
|
|
6953
6955
|
* Component set: 466:4778 ("Modal Header [1.1]") — 6 Types × 2 Sizes
|
|
6954
6956
|
* Types: Basic · Left Icon · Error · Warning · Success · Information
|
|
6955
|
-
* Sizes: Medium (80, title
|
|
6956
|
-
*
|
|
6957
|
-
*
|
|
6958
|
-
*
|
|
6959
|
-
*
|
|
6960
|
-
*
|
|
6961
|
-
*
|
|
6962
|
-
*
|
|
6963
|
-
*
|
|
6964
|
-
*
|
|
6965
|
-
*
|
|
6966
|
-
*
|
|
6967
|
-
*
|
|
6968
|
-
*
|
|
6969
|
-
*
|
|
6970
|
-
*
|
|
6971
|
-
*
|
|
6957
|
+
* Sizes: Medium (min-height 80, title + description) ·
|
|
6958
|
+
* Small (min-height 56, título; icono FLAT 24 sin círculo)
|
|
6959
|
+
*
|
|
6960
|
+
* Es la ÚNICA fuente de verdad de la anatomía del header de modal: sui-modal
|
|
6961
|
+
* lo renderiza internamente y también se usa standalone para componer paneles
|
|
6962
|
+
* custom (par de sui-modal-footer).
|
|
6963
|
+
*
|
|
6964
|
+
* EXACT (Figma 466:4777 medium / 472:298 small — homologado con sui-modal):
|
|
6965
|
+
* Container flex align-center · padding 16px 56px 16px 20px (pr 56 reserva
|
|
6966
|
+
* el close absolute) · border-bottom stroke-soft-200 · bg white-0
|
|
6967
|
+
* · min-height 80 (small: 56) · gap 16 (small: 12; con icono: 14
|
|
6968
|
+
* en ambos sizes — cascade fix nodo "with-icon")
|
|
6969
|
+
* Title Label/Small (14/500/20/−0.006em), strong-950
|
|
6970
|
+
* Description Paragraph/X-Small (12/400/16), sub-600, margen-top 4
|
|
6971
|
+
* Status icon medium: círculo padding-10 radius-full state lighter/base,
|
|
6972
|
+
* icono 20 · small: flat 24 sin círculo (Figma "Small")
|
|
6973
|
+
* Close sui-compact-button ghost large, absolute top 16 right 16
|
|
6974
|
+
*
|
|
6975
|
+
* Tipos: `iconVariant` (semántico) o `icon` (custom, type Left Icon, círculo
|
|
6976
|
+
* neutral — prioridad). Ambos null → Basic.
|
|
6977
|
+
* `titleId`/`descriptionId` opcionales: ids para aria-labelledby/describedby
|
|
6978
|
+
* del dialog contenedor (los usa sui-modal).
|
|
6972
6979
|
*
|
|
6973
6980
|
* Usage:
|
|
6974
6981
|
* <sui-modal-header title="Editar producto" description="Cambios en vivo."
|
|
@@ -6976,25 +6983,29 @@ type SuiModalHeaderVariant = 'info' | 'success' | 'warning' | 'error';
|
|
|
6976
6983
|
* <sui-modal-header size="small" title="Filtros" (closed)="cerrar()" />
|
|
6977
6984
|
*/
|
|
6978
6985
|
declare class SuiModalHeader {
|
|
6979
|
-
/** Título del header (
|
|
6986
|
+
/** Título del header (Label/Small). */
|
|
6980
6987
|
readonly title: _angular_core.InputSignal<string>;
|
|
6981
|
-
/** Descripción bajo el título (
|
|
6988
|
+
/** Descripción bajo el título (Paragraph/X-Small). */
|
|
6982
6989
|
readonly description: _angular_core.InputSignal<string | null>;
|
|
6983
|
-
/** medium (80):
|
|
6990
|
+
/** medium (80): título + descripción · small (56): título; icono flat 24. */
|
|
6984
6991
|
readonly size: _angular_core.InputSignal<"small" | "medium">;
|
|
6985
|
-
/** Icono semántico de status (círculo state lighter/base). */
|
|
6992
|
+
/** Icono semántico de status (círculo state lighter/base en medium). */
|
|
6986
6993
|
readonly iconVariant: _angular_core.InputSignal<SuiModalHeaderVariant | null>;
|
|
6987
|
-
/** Icono custom (
|
|
6994
|
+
/** Icono custom (type "Left Icon" de Figma). Prioridad sobre iconVariant. */
|
|
6988
6995
|
readonly icon: _angular_core.InputSignal<string | null>;
|
|
6989
6996
|
/** Muestra el botón de cerrar (default true). */
|
|
6990
6997
|
readonly showClose: _angular_core.InputSignal<boolean>;
|
|
6998
|
+
/** id del h2 del título — para aria-labelledby del dialog contenedor. */
|
|
6999
|
+
readonly titleId: _angular_core.InputSignal<string | null>;
|
|
7000
|
+
/** id del p de la descripción — para aria-describedby del dialog contenedor. */
|
|
7001
|
+
readonly descriptionId: _angular_core.InputSignal<string | null>;
|
|
6991
7002
|
/** Click en el botón de cerrar. */
|
|
6992
7003
|
readonly closed: _angular_core.OutputEmitterRef<void>;
|
|
6993
7004
|
protected readonly iconName: _angular_core.Signal<string | null>;
|
|
6994
7005
|
/** Variant efectivo para el data-attr del círculo (custom icon = neutral). */
|
|
6995
7006
|
protected readonly resolvedVariant: _angular_core.Signal<string | null>;
|
|
6996
7007
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SuiModalHeader, never>;
|
|
6997
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiModalHeader, "sui-modal-header", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "iconVariant": { "alias": "iconVariant"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "showClose": { "alias": "showClose"; "required": false; "isSignal": true; }; }, { "closed": "closed"; }, never, never, true, never>;
|
|
7008
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SuiModalHeader, "sui-modal-header", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "iconVariant": { "alias": "iconVariant"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "showClose": { "alias": "showClose"; "required": false; "isSignal": true; }; "titleId": { "alias": "titleId"; "required": false; "isSignal": true; }; "descriptionId": { "alias": "descriptionId"; "required": false; "isSignal": true; }; }, { "closed": "closed"; }, never, never, true, never>;
|
|
6998
7009
|
}
|
|
6999
7010
|
|
|
7000
7011
|
/**
|