@baravak/risloo-profile-cli 4.44.1 → 4.45.1
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.
- package/package.json +1 -1
- package/src/handlebars/helpers/even.js +8 -0
- package/src/handlebars/helpers.js +2 -0
- package/src/publish/json/profiles/FRHPT93.json +4524 -0
- package/src/samples/FRHPT93.js +430 -0
- package/src/samples/JRAQ93.js +6 -6
- package/views/profiles/samples/FRHPT93_1.hbs +115 -0
- package/views/profiles/samples/FRHPT93_2.hbs +103 -0
- package/views/profiles/samples/FRHPT93_3.hbs +103 -0
- package/views/profiles/samples/FRHPT93_4.hbs +103 -0
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
{{#> layout}}
|
|
2
|
+
|
|
3
|
+
<defs>
|
|
4
|
+
<linearGradient id="bgbar1">
|
|
5
|
+
<stop stop-color="{{colors.bars.[0].[0]}}"/>
|
|
6
|
+
<stop offset="1" stop-color="{{colors.bars.[0].[1]}}"/>
|
|
7
|
+
</linearGradient>
|
|
8
|
+
<linearGradient id="bgbar2">
|
|
9
|
+
<stop stop-color="{{colors.bars.[1].[0]}}"/>
|
|
10
|
+
<stop offset="1" stop-color="{{colors.bars.[1].[1]}}"/>
|
|
11
|
+
</linearGradient>
|
|
12
|
+
<clipPath id="cobar">
|
|
13
|
+
{{bar 250 16 (object tl=0 bl=0 tr=2 br=2) (toRad 0)}}
|
|
14
|
+
</clipPath>
|
|
15
|
+
|
|
16
|
+
<filter id="split" x="0" y="0" width="7" height="{{ternary (boolean groups.length '==' 3) 462 614}}" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
|
|
17
|
+
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
|
|
18
|
+
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
|
|
19
|
+
<feOffset dx="1"/>
|
|
20
|
+
<feGaussianBlur stdDeviation="1.5"/>
|
|
21
|
+
<feComposite in2="hardAlpha" operator="out"/>
|
|
22
|
+
<feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0"/>
|
|
23
|
+
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_5334_139730"/>
|
|
24
|
+
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_5334_139730" result="shape"/>
|
|
25
|
+
</filter>
|
|
26
|
+
</defs>
|
|
27
|
+
<g transform="translate({{spec.profile.padding.x}}, {{spec.profile.padding.y}})">
|
|
28
|
+
<g transform="translate(0, 4)">
|
|
29
|
+
<g transform="translate(0, 48)">
|
|
30
|
+
{{#each groups as |item index|}}
|
|
31
|
+
{{setVar "color" (ternary (even index) ../colors.bars.[0] ../colors.bars.[1])}}
|
|
32
|
+
<g transform="translate(0, {{math index '*' 152}})">
|
|
33
|
+
<rect width="800" height="136" rx="8" fill="{{ternary (even index) '#F8FAFC' 'white'}}" />
|
|
34
|
+
{{bar 180 136 (object tl=8 bl=8 tr=0 br=0) (toRad 0) fill=(ternary (even index) '#F1F5F9' 'white') }}
|
|
35
|
+
{{#if (boolean level '===' undefined)}}
|
|
36
|
+
<text x="90" y="57" font-size="12" font-weight="500" dy=".3em" fill="#64748B" text-anchor="middle">{{key}}</text>
|
|
37
|
+
<text x="90" y="77" font-size="15" font-weight="500" dy=".3em" fill="#334155" text-anchor="middle">{{label.fa}}</text>
|
|
38
|
+
{{else}}
|
|
39
|
+
<text x="90" y="23.5" font-size="12" font-weight="500" dy=".3em" fill="#64748B" text-anchor="middle">{{key}}</text>
|
|
40
|
+
<text x="90" y="44.5" font-size="15" font-weight="500" dy=".3em" fill="#334155" text-anchor="middle">{{label.fa}}</text>
|
|
41
|
+
<rect x="50" y="65.5" width="80" height="1" rx="0.5" fill="#E2E8F0"/>
|
|
42
|
+
<rect x="100.5" y="78.5" width="40" height="20" rx="4" fill="{{color.[2]}}" />
|
|
43
|
+
<text x="120.5" y="88.5" font-size="14" font-weight="600" dy=".3em" fill="#FFFFFF" text-anchor="middle">{{percentageText}} ٪</text>
|
|
44
|
+
<text x="90" y="111.5" font-size="12" font-weight="400" dy=".3em" fill="{{color.[2]}}" text-anchor="middle">{{levelText}}</text>
|
|
45
|
+
<text x="92.5" y="88.5" font-size="15" font-weight="500" dy=".3em" fill="#334155" text-anchor="start">
|
|
46
|
+
<tspan>
|
|
47
|
+
{{mark}}
|
|
48
|
+
</tspan>
|
|
49
|
+
<tspan fill="#64748B" font-size="14" font-weight="500">از 144</tspan>
|
|
50
|
+
</text>
|
|
51
|
+
{{/if}}
|
|
52
|
+
<g transform="translate(389, {{ternary (boolean item.length '===' 4) 12 28}})">
|
|
53
|
+
{{#each subs as |sub i|}}
|
|
54
|
+
<g transform="translate(0, {{math i '*' 32}})">
|
|
55
|
+
{{bar 250 16 (object tl=0 bl=0 tr=2 br=2) (toRad 0) fill='#E2E8F080' clip-path="url(#cobar)"}}
|
|
56
|
+
</g>
|
|
57
|
+
{{/each}}
|
|
58
|
+
</g>
|
|
59
|
+
</g>
|
|
60
|
+
{{/each}}
|
|
61
|
+
</g>
|
|
62
|
+
<line x1="451.25" y1="40.5" x2="451.25" y2="{{ternary (boolean groups.length '==' 3) '495.5' '647.5'}}" stroke="#E2E8F0" stroke-linecap="round" stroke-dasharray="5.5 5.5"/>
|
|
63
|
+
<line x1="513.25" y1="40.5" x2="513.25" y2="{{ternary (boolean groups.length '==' 3) '495.5' '647.5'}}" stroke="#E2E8F0" stroke-linecap="round" stroke-dasharray="5.5 5.5"/>
|
|
64
|
+
<line x1="576.25" y1="40.5" x2="576.25" y2="{{ternary (boolean groups.length '==' 3) '495.5' '647.5'}}" stroke="#E2E8F0" stroke-linecap="round" stroke-dasharray="5.5 5.5"/>
|
|
65
|
+
<line x1="638.25" y1="40.5" x2="638.25" y2="{{ternary (boolean groups.length '==' 3) '495.5' '647.5'}}" stroke="#E2E8F0" stroke-linecap="round" stroke-dasharray="5.5 5.5"/>
|
|
66
|
+
<rect x="709" width="1" height="{{ternary (boolean groups.length '==' 3) 496 648}}" fill="#F1F5F9"/>
|
|
67
|
+
<text x="387.5" y="24" font-size="12" font-weight="400" dy=".3em" fill="#94A3B8" text-anchor="middle">0</text>
|
|
68
|
+
<text x="514.5" y="24" font-size="12" font-weight="400" dy=".3em" fill="#94A3B8" text-anchor="middle">50 ٪</text>
|
|
69
|
+
<text x="637" y="24" font-size="12" font-weight="400" dy=".3em" fill="#94A3B8" text-anchor="middle">100 ٪</text>
|
|
70
|
+
<text x="754" y="27" font-size="12" font-weight="500" dy=".3em" fill="#64748B" text-anchor="middle">ردهبندی</text>
|
|
71
|
+
<text x="677" y="13" font-size="12" font-weight="500" dy=".3em" fill="#64748B" text-anchor="middle">نمره خام</text>
|
|
72
|
+
<text x="677" y="27" font-size="12" font-weight="500" dy=".3em" fill="#64748B" text-anchor="middle">از 36</text>
|
|
73
|
+
|
|
74
|
+
<g transform="translate(0, 48)">
|
|
75
|
+
{{#each groups as |item index|}}
|
|
76
|
+
{{setVar "color" (ternary (even index) ../colors.bars.[0] ../colors.bars.[1])}}
|
|
77
|
+
<g transform="translate(0, {{math index '*' 152}})">
|
|
78
|
+
<g transform="translate(389, {{ternary (boolean item.length '===' 4) 12 28}})">
|
|
79
|
+
{{#each subs as |sub i|}}
|
|
80
|
+
<g transform="translate(0, {{math i '*' 32}})">
|
|
81
|
+
{{bar (math percentage '*' 250) 16 (object tl=0 bl=0 tr=2 br=2) (toRad 0) fill=../bg}}
|
|
82
|
+
<text x="-9" y="9" font-size="13" font-weight="400" dy=".3em" fill="#475569" text-anchor="start">{{sub.label.fa}}</text>
|
|
83
|
+
<rect x="270" y="-.5" width="36" height="17" rx="4" fill="none" stroke="{{../color.[3]}}" />
|
|
84
|
+
<text x="288" y="9" font-size="13" font-weight="500" dy=".3em" fill="{{../color.[2]}}" text-anchor="middle">{{sub.mark}}</text>
|
|
85
|
+
<text x="366" y="9" font-size="12" font-weight="400" dy=".3em" fill="#64748B" text-anchor="middle">{{sub.levelText}}</text>
|
|
86
|
+
{{#if (boolean percentage '>' 0.24)}}
|
|
87
|
+
<text x="{{math (math percentage '*' 250) '-' 4}}" y="9" font-size="13" font-weight="500" dy=".3em" fill="#FFFFFF" text-anchor="start">{{sub.percentageText}} ٪</text>
|
|
88
|
+
{{else}}
|
|
89
|
+
<text x="{{math (math percentage '*' 250) '+' 6}}" y="9" font-size="13" font-weight="500" dy=".3em" fill="{{../color.[1]}}" text-anchor="end">{{sub.percentageText}} ٪</text>
|
|
90
|
+
{{/if}}
|
|
91
|
+
</g>
|
|
92
|
+
{{/each}}
|
|
93
|
+
</g>
|
|
94
|
+
</g>
|
|
95
|
+
{{/each}}
|
|
96
|
+
</g>
|
|
97
|
+
<g opacity="0.5" filter="url(#split)" transform="translate(386, 37.5)">
|
|
98
|
+
<line x1="2.5" y1="3.5" x2="2.5" y2="{{ternary (boolean groups.length '==' 3) 458.5 610.5}}" stroke="white" stroke-linecap="round"/>
|
|
99
|
+
</g>
|
|
100
|
+
</g>
|
|
101
|
+
</g>
|
|
102
|
+
|
|
103
|
+
{{/layout}}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
{{#> layout}}
|
|
2
|
+
|
|
3
|
+
<defs>
|
|
4
|
+
<linearGradient id="bgbar1">
|
|
5
|
+
<stop stop-color="{{colors.bars.[0].[0]}}"/>
|
|
6
|
+
<stop offset="1" stop-color="{{colors.bars.[0].[1]}}"/>
|
|
7
|
+
</linearGradient>
|
|
8
|
+
<linearGradient id="bgbar2">
|
|
9
|
+
<stop stop-color="{{colors.bars.[1].[0]}}"/>
|
|
10
|
+
<stop offset="1" stop-color="{{colors.bars.[1].[1]}}"/>
|
|
11
|
+
</linearGradient>
|
|
12
|
+
<clipPath id="cobar">
|
|
13
|
+
{{bar 250 16 (object tl=0 bl=0 tr=2 br=2) (toRad 0)}}
|
|
14
|
+
</clipPath>
|
|
15
|
+
|
|
16
|
+
<filter id="split" x="0" y="0" width="7" height="{{ternary (boolean groups.length '==' 3) 462 614}}" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
|
|
17
|
+
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
|
|
18
|
+
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
|
|
19
|
+
<feOffset dx="1"/>
|
|
20
|
+
<feGaussianBlur stdDeviation="1.5"/>
|
|
21
|
+
<feComposite in2="hardAlpha" operator="out"/>
|
|
22
|
+
<feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0"/>
|
|
23
|
+
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_5334_139730"/>
|
|
24
|
+
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_5334_139730" result="shape"/>
|
|
25
|
+
</filter>
|
|
26
|
+
</defs>
|
|
27
|
+
<g transform="translate({{spec.profile.padding.x}}, {{spec.profile.padding.y}})">
|
|
28
|
+
<g transform="translate(0, 4)">
|
|
29
|
+
<g transform="translate(0, 48)">
|
|
30
|
+
{{#each groups as |item index|}}
|
|
31
|
+
{{setVar "color" (ternary (even index) ../colors.bars.[0] ../colors.bars.[1])}}
|
|
32
|
+
<g transform="translate(0, {{math index '*' 152}})">
|
|
33
|
+
<rect width="800" height="136" rx="8" fill="{{ternary (even index) '#F8FAFC' 'white'}}" />
|
|
34
|
+
{{bar 180 136 (object tl=8 bl=8 tr=0 br=0) (toRad 0) fill=(ternary (even index) '#F1F5F9' 'white') }}
|
|
35
|
+
{{#if (boolean level '===' undefined)}}
|
|
36
|
+
<text x="90" y="57" font-size="12" font-weight="500" dy=".3em" fill="#64748B" text-anchor="middle">{{key}}</text>
|
|
37
|
+
<text x="90" y="77" font-size="15" font-weight="500" dy=".3em" fill="#334155" text-anchor="middle">{{label.fa}}</text>
|
|
38
|
+
{{else}}
|
|
39
|
+
<text x="90" y="23.5" font-size="12" font-weight="500" dy=".3em" fill="#64748B" text-anchor="middle">{{key}}</text>
|
|
40
|
+
<text x="90" y="44.5" font-size="15" font-weight="500" dy=".3em" fill="#334155" text-anchor="middle">{{label.fa}}</text>
|
|
41
|
+
<rect x="50" y="65.5" width="80" height="1" rx="0.5" fill="#E2E8F0"/>
|
|
42
|
+
<rect x="100.5" y="78.5" width="40" height="20" rx="4" fill="{{color.[2]}}" />
|
|
43
|
+
<text x="120.5" y="88.5" font-size="14" font-weight="600" dy=".3em" fill="#FFFFFF" text-anchor="middle">{{percentageText}} ٪</text>
|
|
44
|
+
<text x="90" y="111.5" font-size="12" font-weight="400" dy=".3em" fill="{{color.[2]}}" text-anchor="middle">{{levelText}}</text>
|
|
45
|
+
<text x="92.5" y="88.5" font-size="15" font-weight="500" dy=".3em" fill="#334155" text-anchor="start">
|
|
46
|
+
<tspan>
|
|
47
|
+
{{mark}}
|
|
48
|
+
</tspan>
|
|
49
|
+
<tspan fill="#64748B" font-size="13" font-weight="500">از 144</tspan>
|
|
50
|
+
</text>
|
|
51
|
+
{{/if}}
|
|
52
|
+
<g transform="translate(389, {{ternary (boolean item.length '===' 4) 12 28}})">
|
|
53
|
+
{{#each subs as |sub i|}}
|
|
54
|
+
<g transform="translate(0, {{math i '*' 32}})">
|
|
55
|
+
{{bar 250 16 (object tl=0 bl=0 tr=2 br=2) (toRad 0) fill='#E2E8F080' clip-path="url(#cobar)"}}
|
|
56
|
+
</g>
|
|
57
|
+
{{/each}}
|
|
58
|
+
</g>
|
|
59
|
+
</g>
|
|
60
|
+
{{/each}}
|
|
61
|
+
</g>
|
|
62
|
+
<line x1="451.25" y1="40.5" x2="451.25" y2="{{ternary (boolean groups.length '==' 3) '495.5' '647.5'}}" stroke="#E2E8F0" stroke-linecap="round" stroke-dasharray="5.5 5.5"/>
|
|
63
|
+
<line x1="513.25" y1="40.5" x2="513.25" y2="{{ternary (boolean groups.length '==' 3) '495.5' '647.5'}}" stroke="#E2E8F0" stroke-linecap="round" stroke-dasharray="5.5 5.5"/>
|
|
64
|
+
<line x1="576.25" y1="40.5" x2="576.25" y2="{{ternary (boolean groups.length '==' 3) '495.5' '647.5'}}" stroke="#E2E8F0" stroke-linecap="round" stroke-dasharray="5.5 5.5"/>
|
|
65
|
+
<line x1="638.25" y1="40.5" x2="638.25" y2="{{ternary (boolean groups.length '==' 3) '495.5' '647.5'}}" stroke="#E2E8F0" stroke-linecap="round" stroke-dasharray="5.5 5.5"/>
|
|
66
|
+
<rect x="709" width="1" height="{{ternary (boolean groups.length '==' 3) 496 648}}" fill="#F1F5F9"/>
|
|
67
|
+
<text x="387.5" y="24" font-size="12" font-weight="400" dy=".3em" fill="#94A3B8" text-anchor="middle">0</text>
|
|
68
|
+
<text x="514.5" y="24" font-size="12" font-weight="400" dy=".3em" fill="#94A3B8" text-anchor="middle">50 ٪</text>
|
|
69
|
+
<text x="637" y="24" font-size="12" font-weight="400" dy=".3em" fill="#94A3B8" text-anchor="middle">100 ٪</text>
|
|
70
|
+
<text x="754" y="27" font-size="12" font-weight="500" dy=".3em" fill="#64748B" text-anchor="middle">ردهبندی</text>
|
|
71
|
+
<text x="677" y="13" font-size="12" font-weight="500" dy=".3em" fill="#64748B" text-anchor="middle">نمره خام</text>
|
|
72
|
+
<text x="677" y="27" font-size="12" font-weight="500" dy=".3em" fill="#64748B" text-anchor="middle">از 36</text>
|
|
73
|
+
|
|
74
|
+
<g transform="translate(0, 48)">
|
|
75
|
+
{{#each groups as |item index|}}
|
|
76
|
+
{{setVar "color" (ternary (even index) ../colors.bars.[0] ../colors.bars.[1])}}
|
|
77
|
+
<g transform="translate(0, {{math index '*' 152}})">
|
|
78
|
+
<g transform="translate(389, {{ternary (boolean item.length '===' 4) 12 28}})">
|
|
79
|
+
{{#each subs as |sub i|}}
|
|
80
|
+
<g transform="translate(0, {{math i '*' 32}})">
|
|
81
|
+
{{bar (math percentage '*' 250) 16 (object tl=0 bl=0 tr=2 br=2) (toRad 0) fill=../bg}}
|
|
82
|
+
<text x="-9" y="9" font-size="13" font-weight="400" dy=".3em" fill="#475569" text-anchor="start">{{sub.label.fa}}</text>
|
|
83
|
+
<rect x="270" y="-.5" width="36" height="17" rx="4" fill="none" stroke="{{../color.[3]}}" />
|
|
84
|
+
<text x="288" y="9" font-size="13" font-weight="500" dy=".3em" fill="{{../color.[2]}}" text-anchor="middle">{{sub.mark}}</text>
|
|
85
|
+
<text x="366" y="9" font-size="12" font-weight="400" dy=".3em" fill="#64748B" text-anchor="middle">{{sub.levelText}}</text>
|
|
86
|
+
{{#if (boolean percentage '>' 0.24)}}
|
|
87
|
+
<text x="{{math (math percentage '*' 250) '-' 4}}" y="9" font-size="13" font-weight="500" dy=".3em" fill="#FFFFFF" text-anchor="start">{{sub.percentageText}} ٪</text>
|
|
88
|
+
{{else}}
|
|
89
|
+
<text x="{{math (math percentage '*' 250) '+' 6}}" y="9" font-size="13" font-weight="500" dy=".3em" fill="{{../color.[1]}}" text-anchor="end">{{sub.percentageText}} ٪</text>
|
|
90
|
+
{{/if}}
|
|
91
|
+
</g>
|
|
92
|
+
{{/each}}
|
|
93
|
+
</g>
|
|
94
|
+
</g>
|
|
95
|
+
{{/each}}
|
|
96
|
+
</g>
|
|
97
|
+
<g opacity="0.5" filter="url(#split)" transform="translate(386, 37.5)">
|
|
98
|
+
<line x1="2.5" y1="3.5" x2="2.5" y2="{{ternary (boolean groups.length '==' 3) 458.5 610.5}}" stroke="white" stroke-linecap="round"/>
|
|
99
|
+
</g>
|
|
100
|
+
</g>
|
|
101
|
+
</g>
|
|
102
|
+
|
|
103
|
+
{{/layout}}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
{{#> layout}}
|
|
2
|
+
|
|
3
|
+
<defs>
|
|
4
|
+
<linearGradient id="bgbar1">
|
|
5
|
+
<stop stop-color="{{colors.bars.[0].[0]}}"/>
|
|
6
|
+
<stop offset="1" stop-color="{{colors.bars.[0].[1]}}"/>
|
|
7
|
+
</linearGradient>
|
|
8
|
+
<linearGradient id="bgbar2">
|
|
9
|
+
<stop stop-color="{{colors.bars.[1].[0]}}"/>
|
|
10
|
+
<stop offset="1" stop-color="{{colors.bars.[1].[1]}}"/>
|
|
11
|
+
</linearGradient>
|
|
12
|
+
<clipPath id="cobar">
|
|
13
|
+
{{bar 250 16 (object tl=0 bl=0 tr=2 br=2) (toRad 0)}}
|
|
14
|
+
</clipPath>
|
|
15
|
+
|
|
16
|
+
<filter id="split" x="0" y="0" width="7" height="{{ternary (boolean groups.length '==' 3) 462 614}}" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
|
|
17
|
+
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
|
|
18
|
+
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
|
|
19
|
+
<feOffset dx="1"/>
|
|
20
|
+
<feGaussianBlur stdDeviation="1.5"/>
|
|
21
|
+
<feComposite in2="hardAlpha" operator="out"/>
|
|
22
|
+
<feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0"/>
|
|
23
|
+
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_5334_139730"/>
|
|
24
|
+
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_5334_139730" result="shape"/>
|
|
25
|
+
</filter>
|
|
26
|
+
</defs>
|
|
27
|
+
<g transform="translate({{spec.profile.padding.x}}, {{spec.profile.padding.y}})">
|
|
28
|
+
<g transform="translate(0, 4)">
|
|
29
|
+
<g transform="translate(0, 48)">
|
|
30
|
+
{{#each groups as |item index|}}
|
|
31
|
+
{{setVar "color" (ternary (even index) ../colors.bars.[0] ../colors.bars.[1])}}
|
|
32
|
+
<g transform="translate(0, {{math index '*' 152}})">
|
|
33
|
+
<rect width="800" height="136" rx="8" fill="{{ternary (even index) '#F8FAFC' 'white'}}" />
|
|
34
|
+
{{bar 180 136 (object tl=8 bl=8 tr=0 br=0) (toRad 0) fill=(ternary (even index) '#F1F5F9' 'white') }}
|
|
35
|
+
{{#if (boolean level '===' undefined)}}
|
|
36
|
+
<text x="90" y="57" font-size="12" font-weight="500" dy=".3em" fill="#64748B" text-anchor="middle">{{key}}</text>
|
|
37
|
+
<text x="90" y="77" font-size="15" font-weight="500" dy=".3em" fill="#334155" text-anchor="middle">{{label.fa}}</text>
|
|
38
|
+
{{else}}
|
|
39
|
+
<text x="90" y="23.5" font-size="12" font-weight="500" dy=".3em" fill="#64748B" text-anchor="middle">{{key}}</text>
|
|
40
|
+
<text x="90" y="44.5" font-size="15" font-weight="500" dy=".3em" fill="#334155" text-anchor="middle">{{label.fa}}</text>
|
|
41
|
+
<rect x="50" y="65.5" width="80" height="1" rx="0.5" fill="#E2E8F0"/>
|
|
42
|
+
<rect x="100.5" y="78.5" width="40" height="20" rx="4" fill="{{color.[2]}}" />
|
|
43
|
+
<text x="120.5" y="88.5" font-size="14" font-weight="600" dy=".3em" fill="#FFFFFF" text-anchor="middle">{{percentageText}} ٪</text>
|
|
44
|
+
<text x="90" y="111.5" font-size="12" font-weight="400" dy=".3em" fill="{{color.[2]}}" text-anchor="middle">{{levelText}}</text>
|
|
45
|
+
<text x="92.5" y="88.5" font-size="15" font-weight="500" dy=".3em" fill="#334155" text-anchor="start">
|
|
46
|
+
<tspan>
|
|
47
|
+
{{mark}}
|
|
48
|
+
</tspan>
|
|
49
|
+
<tspan fill="#64748B" font-size="14" font-weight="500">از 144</tspan>
|
|
50
|
+
</text>
|
|
51
|
+
{{/if}}
|
|
52
|
+
<g transform="translate(389, {{ternary (boolean item.length '===' 4) 12 28}})">
|
|
53
|
+
{{#each subs as |sub i|}}
|
|
54
|
+
<g transform="translate(0, {{math i '*' 32}})">
|
|
55
|
+
{{bar 250 16 (object tl=0 bl=0 tr=2 br=2) (toRad 0) fill='#E2E8F080' clip-path="url(#cobar)"}}
|
|
56
|
+
</g>
|
|
57
|
+
{{/each}}
|
|
58
|
+
</g>
|
|
59
|
+
</g>
|
|
60
|
+
{{/each}}
|
|
61
|
+
</g>
|
|
62
|
+
<line x1="451.25" y1="40.5" x2="451.25" y2="{{ternary (boolean groups.length '==' 3) '495.5' '647.5'}}" stroke="#E2E8F0" stroke-linecap="round" stroke-dasharray="5.5 5.5"/>
|
|
63
|
+
<line x1="513.25" y1="40.5" x2="513.25" y2="{{ternary (boolean groups.length '==' 3) '495.5' '647.5'}}" stroke="#E2E8F0" stroke-linecap="round" stroke-dasharray="5.5 5.5"/>
|
|
64
|
+
<line x1="576.25" y1="40.5" x2="576.25" y2="{{ternary (boolean groups.length '==' 3) '495.5' '647.5'}}" stroke="#E2E8F0" stroke-linecap="round" stroke-dasharray="5.5 5.5"/>
|
|
65
|
+
<line x1="638.25" y1="40.5" x2="638.25" y2="{{ternary (boolean groups.length '==' 3) '495.5' '647.5'}}" stroke="#E2E8F0" stroke-linecap="round" stroke-dasharray="5.5 5.5"/>
|
|
66
|
+
<rect x="709" width="1" height="{{ternary (boolean groups.length '==' 3) 496 648}}" fill="#F1F5F9"/>
|
|
67
|
+
<text x="387.5" y="24" font-size="12" font-weight="400" dy=".3em" fill="#94A3B8" text-anchor="middle">0</text>
|
|
68
|
+
<text x="514.5" y="24" font-size="12" font-weight="400" dy=".3em" fill="#94A3B8" text-anchor="middle">50 ٪</text>
|
|
69
|
+
<text x="637" y="24" font-size="12" font-weight="400" dy=".3em" fill="#94A3B8" text-anchor="middle">100 ٪</text>
|
|
70
|
+
<text x="754" y="27" font-size="12" font-weight="500" dy=".3em" fill="#64748B" text-anchor="middle">ردهبندی</text>
|
|
71
|
+
<text x="677" y="13" font-size="12" font-weight="500" dy=".3em" fill="#64748B" text-anchor="middle">نمره خام</text>
|
|
72
|
+
<text x="677" y="27" font-size="12" font-weight="500" dy=".3em" fill="#64748B" text-anchor="middle">از 36</text>
|
|
73
|
+
|
|
74
|
+
<g transform="translate(0, 48)">
|
|
75
|
+
{{#each groups as |item index|}}
|
|
76
|
+
{{setVar "color" (ternary (even index) ../colors.bars.[0] ../colors.bars.[1])}}
|
|
77
|
+
<g transform="translate(0, {{math index '*' 152}})">
|
|
78
|
+
<g transform="translate(389, {{ternary (boolean item.length '===' 4) 12 28}})">
|
|
79
|
+
{{#each subs as |sub i|}}
|
|
80
|
+
<g transform="translate(0, {{math i '*' 32}})">
|
|
81
|
+
{{bar (math percentage '*' 250) 16 (object tl=0 bl=0 tr=2 br=2) (toRad 0) fill=../bg}}
|
|
82
|
+
<text x="-9" y="9" font-size="13" font-weight="400" dy=".3em" fill="#475569" text-anchor="start">{{sub.label.fa}}</text>
|
|
83
|
+
<rect x="270" y="-.5" width="36" height="17" rx="4" fill="none" stroke="{{../color.[3]}}" />
|
|
84
|
+
<text x="288" y="9" font-size="13" font-weight="500" dy=".3em" fill="{{../color.[2]}}" text-anchor="middle">{{sub.mark}}</text>
|
|
85
|
+
<text x="366" y="9" font-size="12" font-weight="400" dy=".3em" fill="#64748B" text-anchor="middle">{{sub.levelText}}</text>
|
|
86
|
+
{{#if (boolean percentage '>' 0.24)}}
|
|
87
|
+
<text x="{{math (math percentage '*' 250) '-' 4}}" y="9" font-size="13" font-weight="500" dy=".3em" fill="#FFFFFF" text-anchor="start">{{sub.percentageText}} ٪</text>
|
|
88
|
+
{{else}}
|
|
89
|
+
<text x="{{math (math percentage '*' 250) '+' 6}}" y="9" font-size="13" font-weight="500" dy=".3em" fill="{{../color.[1]}}" text-anchor="end">{{sub.percentageText}} ٪</text>
|
|
90
|
+
{{/if}}
|
|
91
|
+
</g>
|
|
92
|
+
{{/each}}
|
|
93
|
+
</g>
|
|
94
|
+
</g>
|
|
95
|
+
{{/each}}
|
|
96
|
+
</g>
|
|
97
|
+
<g opacity="0.5" filter="url(#split)" transform="translate(386, 37.5)">
|
|
98
|
+
<line x1="2.5" y1="3.5" x2="2.5" y2="{{ternary (boolean groups.length '==' 3) 458.5 610.5}}" stroke="white" stroke-linecap="round"/>
|
|
99
|
+
</g>
|
|
100
|
+
</g>
|
|
101
|
+
</g>
|
|
102
|
+
|
|
103
|
+
{{/layout}}
|