Skip to content

Commit

Permalink
feat(export.renderer.FluidImageUrlFilterRenderer): correct replacemen…
Browse files Browse the repository at this point in the history
…t of crop param (#5)

* feat(export.renderer.FluidLiteralNodeRenderer): now replaces boolean types true/false with 1/0, adapts fixtures

* fix(export.renderer.FluidLiteralNodeRenderer): use strings

* feat(export.renderer.FluidImageUrlFilterRenderer): correct replacement of crop param

* feat(export.renderer.FluidSvgUrlFilterRenderer): add value param to format.raw

* fix(test.fixtures.renderer.filter): adapt svg test

* feat(export.renderer.FluidVariableNodeRenderer): add support for more loop variables + fixtures
  • Loading branch information
nmaier95 authored and ChristianAuth committed Feb 15, 2018
1 parent 7d7e97e commit 93f993b
Show file tree
Hide file tree
Showing 8 changed files with 25 additions and 21 deletions.
3 changes: 3 additions & 0 deletions source/export/renderer/FluidImageUrlFilterRenderer.js
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,9 @@ class FluidImageUrlFilterRenderer extends FluidFilterNodeRenderer

case 2:
return 'height';

case 3:
return 'crop';

default:
return argument.name || 'param' + index;
Expand Down
2 changes: 1 addition & 1 deletion source/export/renderer/FluidSvgUrlFilterRenderer.js
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ class FluidSvgUrlFilterRenderer extends NodeListRenderer
// we are relying on the outer rendering providing a { ... }
let result = 'settings.entoj.svgUrl';
result+= '}{' + name + '}';
result+= '{' + configuration.fluidConfiguration.builtinViewHelperNamespace + ':format.raw(\'.svg#icon\')';
result+= '{' + configuration.fluidConfiguration.builtinViewHelperNamespace + ':format.raw(value: \'.svg#icon\')';
return result;
}).catch(ErrorHandler.handler(this));
return promise;
Expand Down
21 changes: 11 additions & 10 deletions source/export/renderer/FluidVariableNodeRenderer.js
Original file line number Diff line number Diff line change
Expand Up @@ -93,17 +93,18 @@ class FluidVariableNodeRenderer extends NodeRenderer
if (node.isChildOf('ForNode') && node.fields[0] === 'loop' && node.fields.length === 2)
{
result+= 'loop.';
if (node.fields[1] === 'length')
{
result+= 'total';
}
else if (node.fields[1] === 'first')
{
result+= 'isFirst';
}
else if (node.fields[1] === 'last')

const map = {
'length': 'total',
'first': 'isFirst',
'last': 'isLast',
'index': 'count',
'index0': 'index'
};

if(map.hasOwnProperty(node.fields[1]))
{
result+= 'isLast';
result+= map[node.fields[1]];
}
else
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
moduleClass
model.image.url.1x1
model.images[0].url
loop.length loop.index loop.first loop.last
loop.length loop.index loop.index0 loop.first loop.last
<!-- variables in conditions -->
{model.copy}{model.headline}
<!-- variables in loops -->
model.items loop.total loop.index loop.isFirst loop.isLast
model.items loop.total loop.count loop.index loop.isFirst loop.isLast
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
{{ moduleClass }}
{{ model.image.url.1x1 }}
{{ model.images[0].url }}
{{ loop.length }} {{ loop.index }} {{ loop.first }} {{ loop.last }}
{{ loop.length }} {{ loop.index }} {{ loop.index0 }} {{ loop.first }} {{ loop.last }}
<!-- variables in conditions -->
{% if model.copy or model.headline == '' %}{% endif %}
<!-- variables in loops -->
{% for item in model.items %} {{ loop.length }} {{ loop.index }} {{ loop.first }} {{ loop.last }}{% endfor %}
{% for item in model.items %} {{ loop.length }} {{ loop.index }} {{ loop.index0 }} {{ loop.first }} {{ loop.last }}{% endfor %}
8 changes: 4 additions & 4 deletions test/__fixtures__/renderer/filter.expected.html
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,10 @@
<e:setProperty name="model" key="key" value="value" />
<e:setProperty name="{ }" key="key" value="{value}" />

{settings.entoj.svgUrl}{model.text}{f:format.raw('.svg#icon')}
{settings.entoj.svgUrl}{application}{f:format.raw('.svg#icon')}
<f:variable name="result" value="{settings.entoj.svgUrl}{model.text}{f:format.raw('.svg#icon')}" />
<f:variable name="result" value="{settings.entoj.svgUrl}{application}{f:format.raw('.svg#icon')}" />
{settings.entoj.svgUrl}{model.text}{f:format.raw(value: '.svg#icon')}
{settings.entoj.svgUrl}{application}{f:format.raw(value: '.svg#icon')}
<f:variable name="result" value="{settings.entoj.svgUrl}{model.text}{f:format.raw(value: '.svg#icon')}" />
<f:variable name="result" value="{settings.entoj.svgUrl}{application}{f:format.raw(value: '.svg#icon')}" />

{f:translate(key: model.text, extensionName: 'local')}
{f:translate(key: 'application', extensionName: 'local')}
Expand Down
2 changes: 1 addition & 1 deletion test/__fixtures__/renderer/loops.expected.html
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
<f:for as="item" each="{model.items}" iteration="loop">COPY</f:for>
<f:for as="item" key="key" each="{model.items}" iteration="loop">BREAKPOINT</f:for>
<f:for as="item" each="{model.items}" iteration="loop">{loop.total}{loop.index}{loop.isFirst}{loop.isLast}</f:for>
<f:for as="item" each="{model.items}" iteration="loop">{loop.total}{loop.count}{loop.index}{loop.isFirst}{loop.isLast}</f:for>
2 changes: 1 addition & 1 deletion test/__fixtures__/renderer/loops.input.j2
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{% for item in model.items %}COPY{% endfor %}
{% for key, item in model.items %}BREAKPOINT{% endfor %}
{% for item in model.items %}{{ loop.length }}{{ loop.index }}{{ loop.first }}{{ loop.last }}{% endfor %}
{% for item in model.items %}{{ loop.length }}{{ loop.index }}{{ loop.index0 }}{{ loop.first }}{{ loop.last }}{% endfor %}

0 comments on commit 93f993b

Please sign in to comment.