@ajuarezso/sui-design-system 0.21.0 → 0.22.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/docs/INDEX.md +25 -30
- package/docs/sui-accordion/README.md +171 -0
- package/docs/sui-activity-feed/README.md +155 -0
- package/docs/sui-activity-filter/README.md +100 -0
- package/docs/sui-button/README.md +19 -0
- package/docs/sui-command-menu-footer/README.md +100 -0
- package/docs/sui-command-menu-item/README.md +140 -0
- package/docs/sui-command-menu-search/README.md +105 -0
- package/docs/sui-compact-select/README.md +4 -1
- package/docs/sui-compact-select-for-input/README.md +3 -0
- package/docs/sui-counter-input/README.md +3 -0
- package/docs/sui-datepicker/README.md +4 -0
- package/docs/sui-dropdown-caption/README.md +92 -0
- package/docs/sui-dropdown-item/README.md +163 -0
- package/docs/sui-dropdown-menu/README.md +196 -0
- package/docs/sui-dropdown-search/README.md +113 -0
- package/docs/sui-filter/README.md +181 -0
- package/docs/sui-href/README.md +85 -0
- package/docs/sui-img-retry/README.md +107 -0
- package/docs/sui-input/README.md +3 -0
- package/docs/sui-modal/README.md +238 -0
- package/docs/sui-modal-footer/README.md +178 -0
- package/docs/sui-modal-header/README.md +115 -0
- package/docs/sui-modal-sheet/README.md +170 -0
- package/docs/sui-page-header/README.md +123 -0
- package/docs/sui-segmented-control/README.md +3 -0
- package/docs/sui-select/README.md +5 -2
- package/docs/sui-sidebar/README.md +217 -0
- package/docs/sui-switch-label/README.md +3 -0
- package/docs/sui-tab-chips/README.md +5 -2
- package/docs/sui-table/README.md +264 -0
- package/docs/sui-tag-input/README.md +3 -0
- package/docs/sui-textarea/README.md +3 -0
- package/docs/sui-time-picker/README.md +3 -0
- package/docs/sui-topbar/README.md +153 -0
- package/docs/sui-topbar-button/README.md +95 -0
- package/docs/sui-topbar-item/README.md +97 -0
- package/docs/sui-topbar-user/README.md +83 -0
- package/fesm2022/ajuarezso-sui-design-system.mjs +32 -29
- package/fesm2022/ajuarezso-sui-design-system.mjs.map +1 -1
- package/package.json +1 -1
- package/types/ajuarezso-sui-design-system.d.ts +18 -16
package/package.json
CHANGED
|
@@ -1592,7 +1592,7 @@ declare class SuiButtonGroupItem {
|
|
|
1592
1592
|
/** aria-label para icon-only buttons */
|
|
1593
1593
|
readonly ariaLabel: _angular_core.InputSignal<string>;
|
|
1594
1594
|
/** Estado del data-attribute para CSS scoping */
|
|
1595
|
-
readonly state: _angular_core.Signal<"default" | "
|
|
1595
|
+
readonly state: _angular_core.Signal<"default" | "active" | "disabled">;
|
|
1596
1596
|
/** True cuando solo tiene icon (left o right) sin label */
|
|
1597
1597
|
readonly onlyIcon: _angular_core.Signal<boolean>;
|
|
1598
1598
|
/**
|
|
@@ -2164,7 +2164,7 @@ declare class SuiCheckboxCard implements ControlValueAccessor {
|
|
|
2164
2164
|
/** RemixIcon name (sin prefijo "ri-") para type='left-icon'. */
|
|
2165
2165
|
readonly icon: _angular_core.InputSignal<string | null>;
|
|
2166
2166
|
/** Emoji del catálogo SUI_EMOJI_MAP — alternativa a icon para type='left-icon'. */
|
|
2167
|
-
readonly emoji: _angular_core.InputSignal<"
|
|
2167
|
+
readonly emoji: _angular_core.InputSignal<"label" | "warning" | "pensive-face" | "confused-face" | "neutral-face" | "slightly-smiling-face" | "grinning-face-smiling-eyes" | "thinking-face" | "grinning-face" | "smiling-face-hearts" | "face-with-rolling-eyes" | "face-screaming" | "partying-face" | "star-struck" | "sleeping-face" | "package" | "receipt" | "money-bag" | "money-with-wings" | "shopping-cart" | "shopping-bags" | "card-index-dividers" | "bell" | "bell-with-slash" | "pushpin" | "mobile-phone" | "gear" | "locked" | "unlocked" | "wrench" | "hammer" | "magnifying-glass-tilted-left" | "spiral-calendar" | "bar-chart" | "delivery-truck" | "motorcycle" | "rocket" | "house" | "office-building" | "shop" | "dollar-banknote" | "glowing-star" | "kick-scooter" | "check-mark" | "check-mark-button" | "cross-mark" | "no-entry" | "sparkles" | "party-popper" | "waving-hand" | "thumbs-up" | "clapping-hands" | "handshake" | "busts-in-silhouette" | "pizza" | "hamburger" | "taco" | "birthday-cake" | null>;
|
|
2168
2168
|
/** URL directa al emoji para type='left-icon'. Precedencia: icon > emoji > iconSrc. */
|
|
2169
2169
|
readonly iconSrc: _angular_core.InputSignal<string | null>;
|
|
2170
2170
|
/** URL de imagen para type='avatar'. Si falla, fallback a iniciales del label. */
|
|
@@ -2635,7 +2635,7 @@ declare class SuiColorDot {
|
|
|
2635
2635
|
* - `selected` → dot 12×12 + ring 2px.
|
|
2636
2636
|
* - `disabled` → dot gris pálido, sin pointer events.
|
|
2637
2637
|
*/
|
|
2638
|
-
readonly state: _angular_core.InputSignal<"default" | "disabled" | "
|
|
2638
|
+
readonly state: _angular_core.InputSignal<"default" | "disabled" | "hover" | "selected">;
|
|
2639
2639
|
/**
|
|
2640
2640
|
* Tamaño. `medium` (default, Figma 24): dot 16 / hover 14 / selected 12 + anillo 18.
|
|
2641
2641
|
* `large` (32, extensión SUI para mobile): dot 22 / hover 18 / selected 16 + anillo 24.
|
|
@@ -3326,7 +3326,7 @@ declare class SuiCompactSelectForInput<T = string> implements ControlValueAccess
|
|
|
3326
3326
|
readonly arrowIcon: _angular_core.Signal<"arrow-up-s-line" | "arrow-down-s-line">;
|
|
3327
3327
|
readonly displayValue: _angular_core.Signal<string>;
|
|
3328
3328
|
readonly displayFlag: _angular_core.Signal<"abkhazia" | "afghanistan" | "aland-islands" | "albania" | "algeria" | "american-samoa" | "andorra" | "angola" | "anguilla" | "antigua-and-barbuda" | "argentina" | "armenia" | "aruba" | "australia" | "austria" | "azerbaijan" | "azores-islands" | "bahamas" | "bahrain" | "balearic-islands" | "bangladesh" | "barbados" | "basque-country" | "belarus" | "belgium" | "belize" | "benin" | "bermuda" | "bhutan" | "bolivia" | "bonaire" | "bosnia-and-herzegovina" | "botswana" | "brazil" | "british-columbia" | "british-indian-ocean-territory" | "british-virgin-islands" | "brunei" | "bulgaria" | "burkina-faso" | "burundi" | "cambodia" | "cameroon" | "canada" | "canary-islands" | "cape-verde" | "cayman-islands" | "central-african-republic" | "ceuta" | "chad" | "chile" | "china" | "christmas-island" | "cocos-island" | "colombia" | "comoros" | "cook-islands" | "corsica" | "costa-rica" | "croatia" | "cuba" | "curacao" | "cyprus" | "czech-republic" | "democratic-republic-of-congo" | "denmark" | "djibouti" | "dominica" | "dominican-republic" | "east-timor" | "ecuador" | "egypt" | "el-salvador" | "england" | "equatorial-guinea" | "eritrea" | "estonia" | "ethiopia" | "european-union" | "falkland-islands" | "faroe-islands" | "fiji" | "finland" | "france" | "french-polynesia" | "gabon" | "galapagos-islands" | "gambia" | "georgia" | "germany" | "ghana" | "gibraltar" | "greece" | "greenland" | "grenada" | "guam" | "guatemala" | "guernsey" | "guinea-bissau" | "guinea" | "guyana" | "haiti" | "hawaii" | "honduras" | "hong-kong" | "hungary" | "iceland" | "india" | "indonesia" | "iran" | "iraq" | "ireland" | "isle-of-man" | "israel" | "italy" | "ivory-coast" | "jamaica" | "japan" | "jersey" | "jordan" | "kazakhstan" | "kenya" | "kiribati" | "kosovo" | "kuwait" | "kyrgyzstan" | "laos" | "latvia" | "lebanon" | "lesotho" | "liberia" | "libya" | "liechtenstein" | "lithuania" | "luxembourg" | "macao" | "madagascar" | "madeira" | "malawi" | "malaysia" | "maldives" | "mali" | "malta" | "marshall-island" | "martinique" | "mauritania" | "mauritus" | "melilla" | "mexico" | "micronesia" | "moldova" | "monaco" | "mongolia" | "montenegro" | "montserrat" | "morocco" | "mozambique" | "myanmar" | "namibia" | "nato" | "nauru" | "nepal" | "netherlands" | "new-zealand" | "nicaragua" | "niger" | "nigeria" | "niue" | "norfolk-island" | "north-korea" | "northern-cyprus" | "northern-marianas-islands" | "norway" | "oman" | "orkney-islands" | "ossetia" | "pakistan" | "palau" | "palestine" | "panama" | "papua-new-guinea" | "paraguay" | "peru" | "philippines" | "pitcairn-islands" | "poland" | "portugal" | "puerto-rico" | "qatar" | "rapa-nui" | "republic-of-macedonia" | "republic-of-the-congo" | "romania" | "russia" | "rwanda" | "saba-island" | "sahrawi-arab-democratic-republic" | "saint-kitts-and-nevis" | "samoa" | "san-marino" | "sao-tome-and-prince" | "sardinia" | "saudi-arabia" | "scotland" | "senegal" | "serbia" | "seychelles" | "sierra-leone" | "singapore" | "sint-eustatius" | "sint-maarten" | "slovakia" | "slovania" | "solomon-islands" | "somalia" | "somaliland" | "south-africa" | "south-korea" | "south-sudan" | "spain" | "sri-lanka" | "st-barts" | "st-lucia" | "st-vincent-and-the-grenadines" | "sudan" | "suriname" | "swaziland" | "sweden" | "switzerland" | "syria" | "taijikistan" | "taiwan" | "tanzania" | "thailand" | "tibet" | "togo" | "tokelau" | "tonga" | "transnistria" | "trinidad-and-tobago" | "tunisia" | "turkey" | "turkmenistan" | "turks-and-caicos" | "tuvalu" | "uganda" | "ukraine" | "united-arab-emirates" | "united-kingdom" | "united-nations" | "united-states" | "uruguay" | "uzbekistan" | "vanuatu" | "vatican-city" | "venezuela" | "vietnam" | "virgin-islands" | "wales" | "yemen" | "zambia" | "zimbabwe" | null>;
|
|
3329
|
-
readonly flagSizePx: _angular_core.Signal<
|
|
3329
|
+
readonly flagSizePx: _angular_core.Signal<20 | 16>;
|
|
3330
3330
|
onHostClick(event: Event): void;
|
|
3331
3331
|
protected onMenuOpenedChange(open: boolean): void;
|
|
3332
3332
|
protected selectItem(item: SuiCompactSelectForInputItem<T>): void;
|
|
@@ -5131,7 +5131,7 @@ type SuiEmojiName = keyof typeof SUI_EMOJI_MAP;
|
|
|
5131
5131
|
type SuiEmojiSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'full';
|
|
5132
5132
|
declare class SuiEmoji {
|
|
5133
5133
|
/** Nombre del emoji del catálogo. Si se proveé `src`, este se ignora. */
|
|
5134
|
-
readonly name: _angular_core.InputSignal<"
|
|
5134
|
+
readonly name: _angular_core.InputSignal<"label" | "warning" | "pensive-face" | "confused-face" | "neutral-face" | "slightly-smiling-face" | "grinning-face-smiling-eyes" | "thinking-face" | "grinning-face" | "smiling-face-hearts" | "face-with-rolling-eyes" | "face-screaming" | "partying-face" | "star-struck" | "sleeping-face" | "package" | "receipt" | "money-bag" | "money-with-wings" | "shopping-cart" | "shopping-bags" | "card-index-dividers" | "bell" | "bell-with-slash" | "pushpin" | "mobile-phone" | "gear" | "locked" | "unlocked" | "wrench" | "hammer" | "magnifying-glass-tilted-left" | "spiral-calendar" | "bar-chart" | "delivery-truck" | "motorcycle" | "rocket" | "house" | "office-building" | "shop" | "dollar-banknote" | "glowing-star" | "kick-scooter" | "check-mark" | "check-mark-button" | "cross-mark" | "no-entry" | "sparkles" | "party-popper" | "waving-hand" | "thumbs-up" | "clapping-hands" | "handshake" | "busts-in-silhouette" | "pizza" | "hamburger" | "taco" | "birthday-cake" | null>;
|
|
5135
5135
|
/** URL directa al emoji (override del catálogo). Útil para usar emojis fuera del map. */
|
|
5136
5136
|
readonly src: _angular_core.InputSignal<string | null>;
|
|
5137
5137
|
/** Tamaño del emoji. */
|
|
@@ -5687,13 +5687,13 @@ declare class SuiFileUpload {
|
|
|
5687
5687
|
protected readonly inputRef: _angular_core.Signal<ElementRef<HTMLInputElement> | undefined>;
|
|
5688
5688
|
protected readonly dragging: _angular_core.WritableSignal<boolean>;
|
|
5689
5689
|
protected readonly internalError: _angular_core.WritableSignal<string | null>;
|
|
5690
|
-
protected readonly state: _angular_core.Signal<"
|
|
5690
|
+
protected readonly state: _angular_core.Signal<"default" | "error" | "disabled" | "dragover">;
|
|
5691
5691
|
protected readonly resolvedTitle: _angular_core.Signal<string>;
|
|
5692
5692
|
protected readonly resolvedSubtitle: _angular_core.Signal<string>;
|
|
5693
5693
|
protected readonly resolvedErrorMessage: _angular_core.Signal<string | null>;
|
|
5694
5694
|
/** Icon size px. Figma verified = 24 (medium). small/large/xlarge escalan +4
|
|
5695
5695
|
* (small 20 → medium 24 → large 28 → xlarge 32) — extensión de proyecto. */
|
|
5696
|
-
protected readonly iconSize: _angular_core.Signal<20 | 24 |
|
|
5696
|
+
protected readonly iconSize: _angular_core.Signal<20 | 24 | 32 | 28>;
|
|
5697
5697
|
onClick(): void;
|
|
5698
5698
|
/** Browse File button — abre el picker. stopPropagation evita doble-open
|
|
5699
5699
|
* (el host también es clickeable). */
|
|
@@ -6339,9 +6339,9 @@ declare class SuiImageUpload {
|
|
|
6339
6339
|
protected readonly sizePx: _angular_core.Signal<number>;
|
|
6340
6340
|
/** Camera icon px en el empty state. xl escala a 20, resto 16
|
|
6341
6341
|
* (matchea el escalado del contenedor 32→40 en SCSS). */
|
|
6342
|
-
protected readonly iconSize: _angular_core.Signal<
|
|
6342
|
+
protected readonly iconSize: _angular_core.Signal<20 | 16>;
|
|
6343
6343
|
/** Ícono del lápiz y el tacho (editable): 20 en botones de 40, 16 en sm (32). */
|
|
6344
|
-
protected readonly ctrlIconSize: _angular_core.Signal<
|
|
6344
|
+
protected readonly ctrlIconSize: _angular_core.Signal<20 | 16>;
|
|
6345
6345
|
protected readonly hasSrc: _angular_core.Signal<boolean>;
|
|
6346
6346
|
/** Hay imagen y se muestra el botón «Quitar» debajo (sin `editable`). */
|
|
6347
6347
|
protected readonly conQuitar: _angular_core.Signal<boolean>;
|
|
@@ -8115,7 +8115,7 @@ declare class SuiNotification {
|
|
|
8115
8115
|
readonly dismissible: _angular_core.InputSignal<boolean>;
|
|
8116
8116
|
readonly unread: _angular_core.InputSignal<boolean>;
|
|
8117
8117
|
/** Item body type. 'basic' keeps the legacy/alert layout (no body slot). */
|
|
8118
|
-
readonly type: _angular_core.InputSignal<"
|
|
8118
|
+
readonly type: _angular_core.InputSignal<"button" | "basic" | "file" | "message">;
|
|
8119
8119
|
/** When true, item paints the Figma hover bg + reveals the more-2-line button. */
|
|
8120
8120
|
readonly showMore: _angular_core.InputSignal<boolean>;
|
|
8121
8121
|
/** Forces the hover affordance visible (e.g. keyboard-focused row). */
|
|
@@ -8962,7 +8962,7 @@ declare class SuiRadioCard implements ControlValueAccessor {
|
|
|
8962
8962
|
* Emoji del catálogo SUI_EMOJI_MAP — alternativa a icon para type='left-icon'.
|
|
8963
8963
|
* Si ambos están, icon tiene precedencia.
|
|
8964
8964
|
*/
|
|
8965
|
-
readonly emoji: _angular_core.InputSignal<"
|
|
8965
|
+
readonly emoji: _angular_core.InputSignal<"label" | "warning" | "pensive-face" | "confused-face" | "neutral-face" | "slightly-smiling-face" | "grinning-face-smiling-eyes" | "thinking-face" | "grinning-face" | "smiling-face-hearts" | "face-with-rolling-eyes" | "face-screaming" | "partying-face" | "star-struck" | "sleeping-face" | "package" | "receipt" | "money-bag" | "money-with-wings" | "shopping-cart" | "shopping-bags" | "card-index-dividers" | "bell" | "bell-with-slash" | "pushpin" | "mobile-phone" | "gear" | "locked" | "unlocked" | "wrench" | "hammer" | "magnifying-glass-tilted-left" | "spiral-calendar" | "bar-chart" | "delivery-truck" | "motorcycle" | "rocket" | "house" | "office-building" | "shop" | "dollar-banknote" | "glowing-star" | "kick-scooter" | "check-mark" | "check-mark-button" | "cross-mark" | "no-entry" | "sparkles" | "party-popper" | "waving-hand" | "thumbs-up" | "clapping-hands" | "handshake" | "busts-in-silhouette" | "pizza" | "hamburger" | "taco" | "birthday-cake" | null>;
|
|
8966
8966
|
/**
|
|
8967
8967
|
* URL directa al emoji para type='left-icon'. Útil cuando el consumer ya tiene
|
|
8968
8968
|
* la URL (ej. FLUENT_EMOJI map del proyecto) y no quiere registrar el emoji
|
|
@@ -9494,7 +9494,8 @@ declare class SuiRichEditor {
|
|
|
9494
9494
|
* La lista acompaña desde el 03-10-2026 (extensión SUI): las opciones son
|
|
9495
9495
|
* `sui-dropdown-item` de 36 (Figma) hasta medium, 44 en large y 48 en xlarge,
|
|
9496
9496
|
* y ≥ 44 en mobile (≤ 767 px) con cualquier size. Lo resuelve sui-select.scss
|
|
9497
|
-
* sobre los ítems del panel; el dropdown-item no se toca.
|
|
9497
|
+
* sobre los ítems del panel; el dropdown-item no se toca. En large y xlarge el
|
|
9498
|
+
* texto (valor, placeholder y opciones) va en 16/24 (regla del 03-10-2026).
|
|
9498
9499
|
*/
|
|
9499
9500
|
type SuiSelectSize = 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
|
|
9500
9501
|
/**
|
|
@@ -10615,7 +10616,7 @@ declare class SuiProductCard {
|
|
|
10615
10616
|
/** Glyph del «+» / lápiz: 18 en small, 20 en medium. */
|
|
10616
10617
|
readonly iconSize: _angular_core.Signal<20 | 18>;
|
|
10617
10618
|
/** Glyph del stepper: 16 en small, 20 en medium. */
|
|
10618
|
-
readonly stepIconSize: _angular_core.Signal<
|
|
10619
|
+
readonly stepIconSize: _angular_core.Signal<20 | 16>;
|
|
10619
10620
|
readonly showStepper: _angular_core.Signal<boolean>;
|
|
10620
10621
|
/** Config resuelta de la imagen (string → { url }; `position` default 50).
|
|
10621
10622
|
* null = sin imagen → fallback. */
|
|
@@ -10777,7 +10778,7 @@ declare class SuiSwitchCard implements ControlValueAccessor {
|
|
|
10777
10778
|
* `<sui-icon>` proyectado vía `[sui-switch-card-leading]` y se renderiza
|
|
10778
10779
|
* con las MISMAS dimensiones (20×20 dentro del círculo de 40px).
|
|
10779
10780
|
*/
|
|
10780
|
-
readonly emoji: _angular_core.InputSignal<"
|
|
10781
|
+
readonly emoji: _angular_core.InputSignal<"label" | "warning" | "pensive-face" | "confused-face" | "neutral-face" | "slightly-smiling-face" | "grinning-face-smiling-eyes" | "thinking-face" | "grinning-face" | "smiling-face-hearts" | "face-with-rolling-eyes" | "face-screaming" | "partying-face" | "star-struck" | "sleeping-face" | "package" | "receipt" | "money-bag" | "money-with-wings" | "shopping-cart" | "shopping-bags" | "card-index-dividers" | "bell" | "bell-with-slash" | "pushpin" | "mobile-phone" | "gear" | "locked" | "unlocked" | "wrench" | "hammer" | "magnifying-glass-tilted-left" | "spiral-calendar" | "bar-chart" | "delivery-truck" | "motorcycle" | "rocket" | "house" | "office-building" | "shop" | "dollar-banknote" | "glowing-star" | "kick-scooter" | "check-mark" | "check-mark-button" | "cross-mark" | "no-entry" | "sparkles" | "party-popper" | "waving-hand" | "thumbs-up" | "clapping-hands" | "handshake" | "busts-in-silhouette" | "pizza" | "hamburger" | "taco" | "birthday-cake" | null>;
|
|
10781
10782
|
/**
|
|
10782
10783
|
* URL de imagen para type='avatar' — se renderiza con sui-avatar size=lg
|
|
10783
10784
|
* (40×40 redonda). Si la imagen falla, fallback automático a iniciales del
|
|
@@ -10884,7 +10885,7 @@ declare class SuiSwitchLabel implements ControlValueAccessor {
|
|
|
10884
10885
|
readonly label: _angular_core.InputSignal<string>;
|
|
10885
10886
|
readonly sublabel: _angular_core.InputSignal<string | null>;
|
|
10886
10887
|
readonly description: _angular_core.InputSignal<string | null>;
|
|
10887
|
-
/** Tamaño del switch interno — lo decide el padre (componente dumb). */
|
|
10888
|
+
/** Tamaño del switch interno y del texto (large/xlarge → 16/24) — lo decide el padre (componente dumb). */
|
|
10888
10889
|
readonly size: _angular_core.InputSignal<SuiSwitchSize>;
|
|
10889
10890
|
/** Badge junto al label — string shorthand ('NEW') o SuiBadgeConfig
|
|
10890
10891
|
(label + color/variant/size, tipado como sui-badge). null = sin badge. */
|
|
@@ -10970,7 +10971,8 @@ interface SuiTabChipItem {
|
|
|
10970
10971
|
* />
|
|
10971
10972
|
*
|
|
10972
10973
|
* Tamaños (extensión SUI, 03-10-2026): small 32 · medium 36 (default) ·
|
|
10973
|
-
* large 40.
|
|
10974
|
+
* large 40. small y medium con texto label-sm 14; large en label-md 16/24 (regla
|
|
10975
|
+
* del 03-10-2026). Cambia el alto y el aire lateral.
|
|
10974
10976
|
*
|
|
10975
10977
|
* También acepta objetos:
|
|
10976
10978
|
* <sui-tab-chips
|