Fix recipe slug to account for input quantity
This commit is contained in:
@@ -153,12 +153,27 @@ module.exports = class Recipe extends BaseModel
|
|||||||
getSlug: ->
|
getSlug: ->
|
||||||
if not @_slug?
|
if not @_slug?
|
||||||
builder = new StringBuilder
|
builder = new StringBuilder
|
||||||
builder
|
delimiterNeeded = false
|
||||||
.loop(@input, delimiter:',', onEach:(b, stack)-> b.push stack.itemSlug.qualified)
|
@eachInputStack (stack)->
|
||||||
.onlyIf @tools.length > 0, (b)=>
|
if delimiterNeeded then builder.push ','
|
||||||
b.push(' + ').loop(@tools, delimiter:',', onEach:(b, stack)-> b.push stack.itemSlug.qualified)
|
delimiterNeeded = true
|
||||||
.push(' => ')
|
|
||||||
.loop(@output, delimiter:',', onEach:(b, stack)-> b.push stack.itemSlug.qualified)
|
if stack.quantity > 1 then builder.push stack.quantity, ' '
|
||||||
|
builder.push stack.itemSlug.qualified
|
||||||
|
|
||||||
|
builder.push '>'
|
||||||
|
@eachToolStack (stack)->
|
||||||
|
builder.push stack.itemSlug.qualified
|
||||||
|
builder.push '>'
|
||||||
|
|
||||||
|
delimiterNeeded = false
|
||||||
|
@eachOutputStack (stack)->
|
||||||
|
if delimiterNeeded then builder.push ','
|
||||||
|
delimiterNeeded = true
|
||||||
|
|
||||||
|
if stack.quantity > 1 then builder.push stack.quantity, ' '
|
||||||
|
builder.push stack.itemSlug.qualified
|
||||||
|
|
||||||
@_slug = builder.toString()
|
@_slug = builder.toString()
|
||||||
|
|
||||||
return @_slug
|
return @_slug
|
||||||
|
|||||||
Reference in New Issue
Block a user