Swipe list — OutfitKit

GitHub

Swipe list

Lista con acciones reveladas por gesto horizontal — patrón iOS Mail / Apple Reminders. Touch-first: en pantallas táctiles desliza la fila a izquierda para revelar acciones. Click fuera o tap en la fila cierra.

En desktop (este demo se sirve normalmente desde un ratón), pasa mouse=true para activar el fallback de mouse-drag. Sin eso, el gesto solo responde a touch real. Las clases .is-open / data-swipe-open="true" también funcionan estáticamente sin JS.

Email list — desliza izquierda en la fila (mouse drag activado para demo)

  • Anna López
    Re: oferta proveedor — confirmamos para…
    12:34
  • Equipo ops
    Backup nocturno completado · 0 errores
    11:08
  • Newsletter
    Resumen semanal · KPIs · 14 % de mejora en…
    09:51
  • Carlos Vega
    Factura adjunta — vencimiento 30 días
    Ayer

Variante .single — una sola acción más ancha

  • Comprar materia prima
    Vencimiento mañana
    ·
  • Revisar inventario almacén
    Pendiente desde el lunes
    ·
  • Llamar al transportista
    Pedido #4421
    ·

Estado pre-abierto con .is-open (server-rendered, sin JS)

  • P
    Pedido #4421
    Cliente · Ferretería Norte
    ·

API · macro swipe()

PropTipoDefaultDescripción
itemslist[dict][]Filas. Campos: title, sub, meta, avatar, actions (override por fila).
actionslist[dict]NoneAcciones por defecto para todas las filas. Cada dict: {label, kind, icon?}.
singleboolfalseSi true, una sola acción (full width, 6rem revelado).
mouseboolfalseActiva el fallback de mouse drag (útil para demos en desktop).

Kinds (color semántico de la acción)

  • archive · info azul
  • danger / del · rojo destructivo
  • warn / flag · amarillo aviso
  • (sin kind) · medium gris

API JS — window.OKSwipe

OKSwipe.init(item)        // inicializa un .swipe-item
OKSwipe.initAll(root)     // inicializa todos los .swipe-item bajo root
OKSwipe.setOpen(item, b)  // abre/cierra programáticamente