Foros del Web » Creando para Internet » CSS »

Stylus y un ParseError extraño que no logro resolver

Estas en el tema de Stylus y un ParseError extraño que no logro resolver en el foro de CSS en Foros del Web. Pues paso por acá a ver si alguien logra ver algo que yo no, porque llevo ya un rato dándole vueltas y no consigo ver ...
  #1 (permalink)  
Antiguo 02/04/2014, 12:35
Avatar de nanotime  
Fecha de Ingreso: noviembre-2011
Ubicación: Cd. Guayana
Mensajes: 145
Antigüedad: 12 años, 5 meses
Puntos: 6
Exclamación Stylus y un ParseError extraño que no logro resolver

Pues paso por acá a ver si alguien logra ver algo que yo no, porque llevo ya un rato dándole vueltas y no consigo ver donde estoy metiendo la pata.

En resumen es un mixin que trabaja para estilos de notificaciones. Estoy usando un esquema de Hashes en vez de variables que me permite organizar y usar namespaces más cómodamente para evitarme choques de variables y eso, entre otras cosas.

En fin, este módulo es el último en la cadena, por consecuencia entonces se supone que todos los demás módulos compilaron perfectamente con las referencias a los hashes (ej. -colors['red']) y acá, al final, me tira un ParseError en esas referencias ... no sé, quizá sea algo que se me escapa al ojo y que alguno pueda ver

En fin, les dejo el código acá:

Código CSS:
Ver original
  1. notice(width = false, clr = -default_color, padding = -notice['padding'], flat = -notice['flat'])
  2.   simple-gradient(clr, 3%)
  3.   if flat
  4.     border-radius 0
  5.   else
  6.     border-radius -notice['radius']
  7.   background-color clr
  8.   border 1px solid darken(clr, 10%)
  9.   box-shadow 1px 1px 3px rgba(#000000, 0.5)
  10.   padding padding
  11.   position relative
  12.   width width if width
  13.  
  14. flash(type = "notice")
  15.   if type == "notice"
  16.     notice(clr: -colors['light-blue'])
  17.     color -colors['white']
  18.     font-weight bold
  19.     text-shadow 1px 1px 1px rgba(#000, 0.2)
  20.  
  21.   if type == "success"
  22.     notice(clr: -colors['green'])
  23.     color -colors['white']
  24.     font-weight bold
  25.     text-shadow 1px 1px 1px rgba(#000, 0.2)
  26.  
  27.   if type == "warn"
  28.     notice(clr: -colors['orange'])
  29.     color -colors['white']
  30.     font-weight bold
  31.     text-shadow 1px 1px 1px rgba(#000, 0.2)
  32.  
  33.   if type == "err"
  34.     notice(clr: -colors['red'])
  35.     color -colors['white']
  36.     font-weight bold
  37.     text-shadow 1px 1px 1px rgba(#000, 0.2)

Y el código de los hashes-variables

Código:
-colors = {
  'red': #e74c3c
  'orange': #e67e22
  'yellow': lighten(#f1c40f, 15%)
  'green': #2ecc71
  'light-blue': #3498db
  'blue': #2980b9
  'purple': #9b59b6
  'white': #ecf0f1
  'black': #15191D  
}
Y claro el trace que no logro resolver:

Código:
ParseError: ../../dopamine/components/_ui.styl:26
   22|     notice(clr: -colors['light-blue'])
   23|     color -colors['white']
   24|     font-weight bold
   25|     text-shadow 1px 1px 1px rgba(#000, 0.2)
 > 26|   
   27|   if type == "success"
   28|     notice(clr: -colors['green'])
   29|     color -colors['white']

expected "indent", got "outdent"

    at Parser.error (/usr/local/lib/node_modules/stylus/lib/parser.js:230:11)
    at Parser.expect (/usr/local/lib/node_modules/stylus/lib/parser.js:258:12)
    at Parser.block (/usr/local/lib/node_modules/stylus/lib/parser.js:741:12)
    at Parser.selector (/usr/local/lib/node_modules/stylus/lib/parser.js:1277:24)
    at Parser.property (/usr/local/lib/node_modules/stylus/lib/parser.js:1228:47)
    at Parser.ident (/usr/local/lib/node_modules/stylus/lib/parser.js:1183:25)
    at Parser.stmt (/usr/local/lib/node_modules/stylus/lib/parser.js:685:26)
    at Parser.statement (/usr/local/lib/node_modules/stylus/lib/parser.js:593:21)
    at Parser.block (/usr/local/lib/node_modules/stylus/lib/parser.js:753:21)
    at Parser [as if] (/usr/local/lib/node_modules/stylus/lib/parser.js:842:23)
Desde ya muchas gracias!

Etiquetas: stylus
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:39.