@khipu/design-system 0.3.5-alpha.31 → 0.3.5-alpha.33

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.
@@ -13,7 +13,7 @@
13
13
  *
14
14
  * AUTO-GENERATED FILE - DO NOT EDIT MANUALLY
15
15
  * Source: design-system/src/tokens/tokens.json
16
- * Generated: 2026-10-07T15:44:56.536Z
16
+ * Generated: 2026-10-08T13:28:14.131Z
17
17
  *
18
18
  * To regenerate:
19
19
  * cd design-system && npm run tokens:generate
@@ -2526,17 +2526,15 @@ a.kds-btn-google:disabled {
2526
2526
  El valor de escritorio es moderado a proposito: el minimo de telefono (36rem) dejaba
2527
2527
  la card de la carga mucho mas alta que cualquier otra pantalla, y al entrar y salir
2528
2528
  del loader el widget crecia y volvia a encoger.
2529
- .kds-card-elevated--action espeja este valor (y el de telefono): cambiarlos juntos. */
2529
+ Dentro de .kds-card-elevated--action el loader no usa este minimo: lo da el card. */
2530
2530
  min-height: 18rem;
2531
2531
  }
2532
2532
 
2533
- /* En telefono la carga es mas alta: ahi la card va a ancho completo y un loader corto se
2534
- lee como una franja perdida en el medio. 22rem (card de 400px con su padding) en vez de
2535
- los 36rem de antes (624px): con el header arriba, la pantalla entera cabe en el alto util
2536
- de la mayoria de los telefonos (KTUF-388). */
2533
+ /* En telefono la carga si ocupa el alto util de la pantalla: ahi la card va a ancho
2534
+ completo y un loader corto se lee como una franja perdida en el medio. */
2537
2535
  @media (max-width: 767px) {
2538
2536
  .kds-secure-loader {
2539
- min-height: 22rem;
2537
+ min-height: 36rem;
2540
2538
  }
2541
2539
  }
2542
2540
 
@@ -5129,7 +5127,10 @@ dialog#surveyModal button.circle {
5129
5127
  }
5130
5128
 
5131
5129
  /* ── Text-transform utilities ── */
5130
+ /* Also declares --kds-button-text-transform: .kds-btn reads that variable, so the
5131
+ utility wins on buttons without a specificity fight (button.kds-btn is 0-1-1). */
5132
5132
  .kds-text-transform-none {
5133
+ --kds-button-text-transform: none;
5133
5134
  text-transform: none;
5134
5135
  }
5135
5136
 
@@ -6798,6 +6799,43 @@ button.kds-fab:active:not(:disabled) {
6798
6799
  to { transform: rotate(360deg); }
6799
6800
  }
6800
6801
 
6802
+ /* Dots loader: three dots pulsing in sequence, for an in-progress status inline with
6803
+ text. Color follows currentColor so the consumer sets it with a color utility. */
6804
+ .kds-dots-loader {
6805
+ align-items: center;
6806
+ display: inline-flex;
6807
+ gap: var(--kds-spacing-0-5);
6808
+ vertical-align: middle;
6809
+ }
6810
+
6811
+ .kds-dots-loader > span {
6812
+ animation: kds-dots-pulse 1.2s ease-in-out infinite;
6813
+ background: currentColor;
6814
+ border-radius: var(--kds-radius-full);
6815
+ height: var(--kds-spacing-0-75);
6816
+ width: var(--kds-spacing-0-75);
6817
+ }
6818
+
6819
+ .kds-dots-loader > span:nth-child(2) {
6820
+ animation-delay: 0.15s;
6821
+ }
6822
+
6823
+ .kds-dots-loader > span:nth-child(3) {
6824
+ animation-delay: 0.3s;
6825
+ }
6826
+
6827
+ @keyframes kds-dots-pulse {
6828
+ 0%, 80%, 100% { opacity: 0.25; }
6829
+ 40% { opacity: 1; }
6830
+ }
6831
+
6832
+ @media (prefers-reduced-motion: reduce) {
6833
+ .kds-dots-loader > span {
6834
+ animation: none;
6835
+ opacity: 0.6;
6836
+ }
6837
+ }
6838
+
6801
6839
  /* ========================================
6802
6840
  14 - BOTTOM SHEET (.kds-bottom-sheet)
6803
6841
  Modal bottom sheet for mobile confirmations
@@ -7254,6 +7292,10 @@ button.kds-fab:active:not(:disabled) {
7254
7292
  max-height: calc(100vh - var(--kds-spacing-12) - var(--kds-spacing-4));
7255
7293
  max-height: calc(100dvh - var(--kds-spacing-12) - var(--kds-spacing-4));
7256
7294
  overflow-y: auto;
7295
+ /* El caret de "Detalle del cobro" baja 0.09em (corrección óptica de .kds-expand-toggle i)
7296
+ y asomaba ~1.3px bajo el borde: con overflow auto eso bastaba para mostrar una barra
7297
+ de scroll con el detalle cerrado. 2px de aire lo dejan dentro (KTUF-388). */
7298
+ padding-bottom: 2px;
7257
7299
  overflow-x: hidden;
7258
7300
  overscroll-behavior-y: auto;
7259
7301
  scrollbar-width: thin;
@@ -8219,24 +8261,18 @@ svg[fill='none'] {
8219
8261
  border-radius: var(--kds-radius-card);
8220
8262
  }
8221
8263
 
8222
- /* Body card con acción (opt-in, KTUF-388): mismo alto mínimo que el card de carga, para que
8223
- el card no salte de alto entre el loader, los pasos de progreso y los formularios, y la
8224
- acción (submit) quede anclada al fondo con `.kds-mt-auto`. No cambia el default de arriba:
8225
- solo lo toma quien pone el modificador (khenshin-web).
8226
- - Espeja el min-height de .kds-secure-loader (18rem / 22rem en teléfono) más el padding
8227
- vertical del card en el flujo (spacing-3 x2). Si cambia el del loader, cambia acá.
8228
- - Valores fijos, sin vh/dvh: en un iframe (KTUF-239) el viewport es el propio iframe, cuyo
8264
+ /* Body card con acción (opt-in, KTUF-388): un mismo alto mínimo para el loader, los pasos de
8265
+ progreso, los formularios y los resultados, así el card no salta de alto entre pasos, y la
8266
+ acción (submit) queda anclada al fondo con `.kds-mt-auto`. No cambia el default de arriba:
8267
+ solo lo toma quien pone el modificador (khenshin-web, también en su card de carga).
8268
+ - 36rem + el padding del card (624px): el alto del formulario de login de un banco, la
8269
+ pantalla más alta del flujo, en teléfono y en desktop.
8270
+ - Valor fijo, sin vh/dvh: en un iframe (KTUF-239) el viewport es el propio iframe, cuyo
8229
8271
  alto lo da el RESIZE del contenido; un mínimo relativo al viewport se realimenta.
8230
8272
  - El contenido directo (form) crece para que la acción baje dentro de él y no compita
8231
8273
  con el `margin-top: auto` de .kds-card-version. */
8232
8274
  .kds-screen > .kds-card-elevated.kds-card-elevated--action {
8233
- min-height: calc(18rem + 2 * var(--kds-spacing-3));
8234
- }
8235
-
8236
- @media (max-width: 767px) {
8237
- .kds-screen > .kds-card-elevated.kds-card-elevated--action {
8238
- min-height: calc(22rem + 2 * var(--kds-spacing-3));
8239
- }
8275
+ min-height: calc(36rem + 2 * var(--kds-spacing-3));
8240
8276
  }
8241
8277
 
8242
8278
  .kds-card-elevated--action > form {