ccs-digitalmarketplace-frontend-jinja 4.12.0__py3-none-any.whl → 4.13.0__py3-none-any.whl

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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ccs-digitalmarketplace-frontend-jinja
3
- Version: 4.12.0
3
+ Version: 4.13.0
4
4
  Summary: Jinja templates for Digital Marketplace apps.
5
5
  Author: CCS Developers
6
6
  Project-URL: Homepage, https://github.com/Crown-Commercial-Service/ccs-digitalmarketplace-frontend-jinja
@@ -17,9 +17,9 @@ Provides-Extra: dev
17
17
  Requires-Dist: flake8==7.3.0; extra == "dev"
18
18
  Requires-Dist: mypy==1.17.1; extra == "dev"
19
19
  Requires-Dist: pytest==8.4.1; extra == "dev"
20
- Requires-Dist: lxml==6.0.0; extra == "dev"
20
+ Requires-Dist: lxml==6.0.1; extra == "dev"
21
21
  Requires-Dist: xmldiff==2.7.0; extra == "dev"
22
- Requires-Dist: flask==3.1.1; extra == "dev"
22
+ Requires-Dist: flask==3.1.2; extra == "dev"
23
23
  Requires-Dist: pre-commit==4.3.0; extra == "dev"
24
24
  Dynamic: license-file
25
25
 
@@ -41,6 +41,8 @@ The following table shows the version of Digital Marketplace Frontend Jinja that
41
41
 
42
42
  | Digital Marketplace Frontend Jinja Version | Target CCS Digital Marketplace GOV.UK Frontend Version |
43
43
  | ------------------------------------------ | ------------------------------------------------------ |
44
+ | [4.13.0](https://github.com/Crown-Commercial-Service/ccs-digitalmarketplace-frontend-jinja/releases/tag/4.13.0) | [3.13.0](https://github.com/Crown-Commercial-Service/ccs-digitalmarketplace-govuk-frontend/releases/tag/v3.13.0) |
45
+ | [4.12.1](https://github.com/Crown-Commercial-Service/ccs-digitalmarketplace-frontend-jinja/releases/tag/4.12.1) | [3.12.1](https://github.com/Crown-Commercial-Service/ccs-digitalmarketplace-govuk-frontend/releases/tag/v3.12.1) |
44
46
  | [4.12.0](https://github.com/Crown-Commercial-Service/ccs-digitalmarketplace-frontend-jinja/releases/tag/4.12.0) | [3.12.0](https://github.com/Crown-Commercial-Service/ccs-digitalmarketplace-govuk-frontend/releases/tag/v3.12.0) |
45
47
  | [4.11.0](https://github.com/Crown-Commercial-Service/ccs-digitalmarketplace-frontend-jinja/releases/tag/4.11.0) | [3.11.0](https://github.com/Crown-Commercial-Service/ccs-digitalmarketplace-govuk-frontend/releases/tag/v3.11.0) |
46
48
  | [4.10.1](https://github.com/Crown-Commercial-Service/ccs-digitalmarketplace-frontend-jinja/releases/tag/4.10.1) | [3.10.1](https://github.com/Crown-Commercial-Service/ccs-digitalmarketplace-govuk-frontend/releases/tag/v3.10.1) |
@@ -1,5 +1,5 @@
1
- ccs_digitalmarketplace_frontend_jinja-4.12.0.dist-info/licenses/LICENCE,sha256=GbPuM26UomDfs5sMy6udIVXYC8grPSN7bSkO29-F5hI,1110
2
- digitalmarketplace_frontend_jinja/__init__.py,sha256=d5iupHdSPCeHI_OAN7eyyB4beUD228iuK9KYvUDuS0o,23
1
+ ccs_digitalmarketplace_frontend_jinja-4.13.0.dist-info/licenses/LICENCE,sha256=GbPuM26UomDfs5sMy6udIVXYC8grPSN7bSkO29-F5hI,1110
2
+ digitalmarketplace_frontend_jinja/__init__.py,sha256=QO8ZboaP90aSi9yfoACjNifzw5tx_SZVJRs5EzV-ZtA,23
3
3
  digitalmarketplace_frontend_jinja/templates/components/alert/macro.html,sha256=W4hQmVTEOTSON6ypLoV3cJNgBcCYN1akxy-Y1QZH8X0,992
4
4
  digitalmarketplace_frontend_jinja/templates/components/attachment/macro.html,sha256=0Fi8QqqwmPpZ3UBOjCDiUkfSOYxMYyTlBngnPJrZ7Zo,6452
5
5
  digitalmarketplace_frontend_jinja/templates/components/banner/macro.html,sha256=AsPQydTvw-SwcgczVZmbdlGMXT0SoilvhAtKrTskpME,905
@@ -16,7 +16,7 @@ digitalmarketplace_frontend_jinja/templates/components/input-from-form/macro.htm
16
16
  digitalmarketplace_frontend_jinja/templates/components/list-input/macro.html,sha256=MW0PA2jNKFaYJQtYrcEYBVTDBbFa7NL07QCXS3ozQhE,5756
17
17
  digitalmarketplace_frontend_jinja/templates/components/option-select/macro.html,sha256=YhQXBlqjPbONv1hTlaTMbEj4SO3wf-FAbeBETYpEB7c,2134
18
18
  digitalmarketplace_frontend_jinja/templates/components/previous-next-pagination/macro.html,sha256=z3VnGXfaQvgIgR0XfCkOlC9EDA46UpKgZyTIQQx14_8,668
19
- digitalmarketplace_frontend_jinja/templates/components/question/macro.html,sha256=MY8f4PTxEBb7ifBx-kurXrLivHW_RN-UpcojJdAjHLk,3985
19
+ digitalmarketplace_frontend_jinja/templates/components/question/macro.html,sha256=jaEQDkZwuRYpzDOzY2r9pGm87U7hZibW8D_RGp-ybM0,4204
20
20
  digitalmarketplace_frontend_jinja/templates/components/question-boolean/macro.html,sha256=DVxnbPGYfEa_FgYwLPccvYmS2wD-PC_GI1B_fkYGHho,2878
21
21
  digitalmarketplace_frontend_jinja/templates/components/question-character-count/macro.html,sha256=YMOJiATKyLByuPq8SuPsjN4WZfpSp5PIPtKks1lGnT8,1501
22
22
  digitalmarketplace_frontend_jinja/templates/components/question-checkbox-tree/macro.html,sha256=MV2LC7DwPq_GWf0kG1x3YkVeZTuNCFDfzBQThuULpIQ,4729
@@ -24,14 +24,15 @@ digitalmarketplace_frontend_jinja/templates/components/question-checkbox-tree-la
24
24
  digitalmarketplace_frontend_jinja/templates/components/question-checkboxes/macro.html,sha256=ZaffviKInxgaNts-Cy8j7Dd2sduOO0_ZY_ftAyozqEw,2640
25
25
  digitalmarketplace_frontend_jinja/templates/components/question-date/macro.html,sha256=D8UUNZTKuBXoAeWKWL3SLq_IUysOBfkC7Svgl1eYHIM,1948
26
26
  digitalmarketplace_frontend_jinja/templates/components/question-format-hint/macro.html,sha256=x6xTgRJgucQ-FVzeTmHLRrD0ocKIOzzGJRIzYsNZIXw,368
27
+ digitalmarketplace_frontend_jinja/templates/components/question-formula/macro.html,sha256=90IwmoQWDZhRI8fJvlvAUyv0OcgEiioD71nkk6E88hU,4843
27
28
  digitalmarketplace_frontend_jinja/templates/components/question-hidden/macro.html,sha256=HdvraPSzTN_x0rtoJLofB6nO3yZqpuqPTVA-4VF_RRU,4384
28
29
  digitalmarketplace_frontend_jinja/templates/components/question-list/macro.html,sha256=531t6KzHmeTBU2jNasRpIT8Yl5M-NcqLn720VQQn8YE,3981
29
30
  digitalmarketplace_frontend_jinja/templates/components/question-list-multiquestion/macro.html,sha256=oD5PLwydZ6Eg-N2aMS2sBWX9izOSU7Oeg6otMh6_qhc,682
30
- digitalmarketplace_frontend_jinja/templates/components/question-list-multiquestion-client-side/macro.html,sha256=D_cdzICRGV8C2qZ5VO8kMN2TB16rGUhbn6F6GPYrOkk,4239
31
+ digitalmarketplace_frontend_jinja/templates/components/question-list-multiquestion-client-side/macro.html,sha256=QZ1UglvJ4Z717IfIZK_0ufuPH00CGgf2bij40RljFrY,4032
31
32
  digitalmarketplace_frontend_jinja/templates/components/question-list-multiquestion-server-side/macro.html,sha256=hTxXFdhESA1ieINtr5GptwouN2Pn9_tGkY0hYPYer_8,6981
32
33
  digitalmarketplace_frontend_jinja/templates/components/question-money/macro.html,sha256=8H0EIKluzAJ0tAQFVZAlEf4imMMJohp1N7WvQAvTGR0,1472
33
34
  digitalmarketplace_frontend_jinja/templates/components/question-multiquestion/macro.html,sha256=LbKMvOBaK_gadlLUUVw0Z_SCeUV9tUkxCqGyjndGrhw,1073
34
- digitalmarketplace_frontend_jinja/templates/components/question-number/macro.html,sha256=37n9fGhkisxlJKpPBeltA28YPoTgfjeZqZN84KHs4Zw,1657
35
+ digitalmarketplace_frontend_jinja/templates/components/question-number/macro.html,sha256=ND-jSzLChbFix4EJby6h9LSJJBMWkuHtnsLX_whnyFM,1861
35
36
  digitalmarketplace_frontend_jinja/templates/components/question-pricing/macro.html,sha256=8ofkZwM_2M8rDWcGzUiqkeMMn2kOKZrH-gRevfq5nlI,6559
36
37
  digitalmarketplace_frontend_jinja/templates/components/question-radios/macro.html,sha256=iAoeG4ImkV6n5-_ilVEJ8pDZb6eojDRJK-QldXGXkNU,3028
37
38
  digitalmarketplace_frontend_jinja/templates/components/question-select/macro.html,sha256=HUSQiYWv9jMRkV4FdiyVojkGSns_dKoi_FUj9d5w3u0,2031
@@ -40,9 +41,10 @@ digitalmarketplace_frontend_jinja/templates/components/question-upload/macro.htm
40
41
  digitalmarketplace_frontend_jinja/templates/components/radios-from-form/macro.html,sha256=DqXM84BLsAfLRtfjlLgKQ3-gjPGWFt0O5QdVOQiih60,1776
41
42
  digitalmarketplace_frontend_jinja/templates/components/search-box/macro.html,sha256=QHf7Log2Gp31HHCVK3ufoLvJwLDusRmZXDmZ7ME9EtA,1028
42
43
  digitalmarketplace_frontend_jinja/templates/components/select-country-from-form/macro.html,sha256=AHWNjovdZoLz5LP17l1U4XJlPirFTdVxsvUNLTWw-ik,1117
43
- digitalmarketplace_frontend_jinja/templates/components/summary-content/macro.html,sha256=w2__doR4tBr7njI7aM-Q-EPLG9TNGiRVIBtM8wV_UE0,2778
44
+ digitalmarketplace_frontend_jinja/templates/components/summary-content/macro.html,sha256=eOqXKvIuehanbZ-pLooMQdotLRYncwKAhGWUHhKLfTs,3037
44
45
  digitalmarketplace_frontend_jinja/templates/components/summary-content-boolean/macro.html,sha256=JKMmIt_74HVtThFlvV6JHkmxmHKr7N1Dm9Flarbti6s,517
45
46
  digitalmarketplace_frontend_jinja/templates/components/summary-content-checkbox-tree/macro.html,sha256=IPJBi671LhV8cjP_MtfTsQYHytitaiJ0-9uS-6nWkhg,1013
47
+ digitalmarketplace_frontend_jinja/templates/components/summary-content-formula/macro.html,sha256=Sa-H2Xu4eWQeQYo7JTfxshcEaeKTc8fFoj6WiFoW_ow,1081
46
48
  digitalmarketplace_frontend_jinja/templates/components/summary-content-list/macro.html,sha256=whchdQS_dPCoxdjEQ1POpA_cQiN15kuaRAOoft4MNlg,625
47
49
  digitalmarketplace_frontend_jinja/templates/components/summary-content-list-multiquestion/macro.html,sha256=dpvyFTnbXG45CGWmOrGkD3O8BGw5JtsuhBh3Wqh069M,715
48
50
  digitalmarketplace_frontend_jinja/templates/components/summary-content-multiquestion/macro.html,sha256=-E6z6-ttbF3l9jbjHmo4bRU3mILedhMuZjCxKwnL71U,621
@@ -60,7 +62,7 @@ digitalmarketplace_frontend_jinja/templates/errors/410.html,sha256=ub7W3MRbIPQvj
60
62
  digitalmarketplace_frontend_jinja/templates/errors/500.html,sha256=x1Lu8ATSPGGSXvjj1ZHVq-h9eBWLiUK2MxPHwqZCiDQ,408
61
63
  digitalmarketplace_frontend_jinja/templates/layouts/_custom_dimensions.html,sha256=SglUULyYlEWLWYQ7luwKONuI2BnWbOnd5MOIblKZR3E,731
62
64
  digitalmarketplace_frontend_jinja/templates/layouts/_site_verification.html,sha256=6YWaREd5cPw1u5V9zsVaCOWG_uJ9SUMNdZj9fLK2jU8,142
63
- ccs_digitalmarketplace_frontend_jinja-4.12.0.dist-info/METADATA,sha256=LVpwQLSKlrrWtdmxBGueIgTHqrGjDDVcXi-39SMI_IQ,17121
64
- ccs_digitalmarketplace_frontend_jinja-4.12.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
65
- ccs_digitalmarketplace_frontend_jinja-4.12.0.dist-info/top_level.txt,sha256=MeEUNXXhcYp_c2URA_Npkpxj50E3hc3Eir0PWJjNIrw,34
66
- ccs_digitalmarketplace_frontend_jinja-4.12.0.dist-info/RECORD,,
65
+ ccs_digitalmarketplace_frontend_jinja-4.13.0.dist-info/METADATA,sha256=nXzWIroSik0Vzs_Vip7x6DCcGDxbLKKswoNZN3d3z2M,17583
66
+ ccs_digitalmarketplace_frontend_jinja-4.13.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
67
+ ccs_digitalmarketplace_frontend_jinja-4.13.0.dist-info/top_level.txt,sha256=MeEUNXXhcYp_c2URA_Npkpxj50E3hc3Eir0PWJjNIrw,34
68
+ ccs_digitalmarketplace_frontend_jinja-4.13.0.dist-info/RECORD,,
@@ -1 +1 @@
1
- __version__ = '4.12.0'
1
+ __version__ = '4.13.0'
@@ -15,6 +15,7 @@
15
15
  {%- from "digitalmarketplace_frontend_jinja/components/question-select/macro.html" import digitalmarketplaceQuestionSelect -%}
16
16
  {%- from "digitalmarketplace_frontend_jinja/components/question-multiquestion/macro.html" import digitalmarketplaceQuestionMultiquestion -%}
17
17
  {%- from "digitalmarketplace_frontend_jinja/components/question-list-multiquestion/macro.html" import digitalmarketplaceQuestionListMultiquestion -%}
18
+ {%- from "digitalmarketplace_frontend_jinja/components/question-formula/macro.html" import digitalmarketplaceQuestionFormula -%}
18
19
 
19
20
  <div
20
21
  class="question {% if params.question.hidden %}js-hidden dm-question__related-information" aria-hidden="false{% endif %}"
@@ -54,6 +55,8 @@
54
55
  {{ digitalmarketplaceQuestionMultiquestion(params) }}
55
56
  {% elif params.type == 'list_multiquestion' %}
56
57
  {{ digitalmarketplaceQuestionListMultiquestion(params) }}
58
+ {% elif params.type == 'formula' %}
59
+ {{ digitalmarketplaceQuestionFormula(params) }}
57
60
  {% endif %}
58
61
  </div>
59
62
 
@@ -0,0 +1,102 @@
1
+ {% macro digitalmarketplaceQuestionFormula(params) %}
2
+ {%- from "govuk_frontend_jinja/components/fieldset/macro.html" import govukFieldset -%}
3
+ {%- from "govuk_frontend_jinja/components/label/macro.html" import govukLabel -%}
4
+ {%- from "govuk_frontend_jinja/components/hint/macro.html" import govukHint -%}
5
+ {%- from "govuk_frontend_jinja/components/error-message/macro.html" import govukErrorMessage -%}
6
+ {%- from "digitalmarketplace_frontend_jinja/components/question-format-hint/macro.html" import digitalmarketplaceQuestionFormatHint -%}
7
+
8
+ {%- if params.question.questions -%}
9
+ {% call govukFieldset({
10
+ "legend": {
11
+ "text": params.question.question,
12
+ "classes": 'govuk-fieldset__legend--m'
13
+ }
14
+ }) %}
15
+ {%- if params.question.question_advice -%}
16
+ <div class="govuk-body">
17
+ {{ params.question.question_advice | safe }}
18
+ </div>
19
+ {%- endif -%}
20
+
21
+ <table class="govuk-table dm-question-formula">
22
+ <thead class="govuk-table__head">
23
+ <tr class="govuk-table__row">
24
+ <th scope="col" class="govuk-table__header govuk-!-width-one-half"><span class="govuk-visually-hidden">Question</span></th>
25
+ <th scope="col" class="govuk-table__header govuk-!-width-one-half"><span class="govuk-visually-hidden">Answer</span></th>
26
+ </tr>
27
+ </thead>
28
+ <tbody class="govuk-table__body">
29
+ {%- for question in params.question.questions -%}
30
+ {%- if question.operation and question.operation_position == "before" -%}
31
+ <tr class="govuk-table__row">
32
+ <td class="govuk-table__cell" colspan="2"><strong class="govuk-!-font-size-27">{{ question.operation }}</strong></td>
33
+ </tr>
34
+ {%- endif -%}
35
+
36
+ {%- if question.type == 'display' -%}
37
+ <tr class="govuk-table__row">
38
+ <td class="govuk-table__cell">{{ question.question }}</td>
39
+ <td class="govuk-table__cell">{{ question.value }}</td>
40
+ </tr>
41
+ {%- elif question.type == 'textbox_large' -%}
42
+ {% set name = question.id %}
43
+ {% set id = "input-" + name %}
44
+ {% set questionText = question.question %}
45
+ {% set value = params.data[name] if params.data and params.data[name] %}
46
+
47
+ {% set describedBy = id + '-info' %}
48
+
49
+ <tr class="govuk-table__row govuk-character-count" data-module="govuk-character-count" data-maxwords="{{ (question.max_length_in_words | string) }}">
50
+ <td class="govuk-table__cell{% if params.errors and params.errors[name] %} dm-question-formula--error{% endif %}">
51
+ {{ govukLabel({
52
+ "html": questionText,
53
+ "classes": "govuk-label--s",
54
+ "for": id
55
+ }) | trim | indent(2) }}
56
+ {% if question.hint or question.question_advice %}
57
+ {% set hintId = id + '-hint' %}
58
+ {% set describedBy = describedBy + ' ' + hintId %}
59
+ {{ govukHint({
60
+ "id": hintId,
61
+ "html": digitalmarketplaceQuestionFormatHint(question)
62
+ }) | trim | indent(2) }}
63
+ {% endif %}
64
+ {% if params.errors and params.errors[name] %}
65
+ {% set errorId = id + '-error' %}
66
+ {% set rowQuestionClasses = "dm-question-formula--error "%}
67
+ {% set describedBy = describedBy + ' ' + errorId %}
68
+ {% set errorMessage = params.errors[name]["message"] %}
69
+ {{ govukErrorMessage({
70
+ "id": errorId,
71
+ "text": errorMessage
72
+ }) | trim | indent(2) }}
73
+ {% endif %}
74
+ </td>
75
+ <td class="govuk-table__cell">
76
+ <textarea
77
+ class="govuk-textarea {%- if errorMessage %} govuk-textarea--error{% endif %} govuk-js-character-count"
78
+ id="{{ id }}"
79
+ name="{{ name }}"
80
+ rows="3"
81
+ {%- if describedBy %} aria-describedby="{{ describedBy }}"{% endif %}
82
+ >{{ value }}</textarea>
83
+ {{ govukHint({
84
+ "text": 'You can enter up to ' + (question.max_length_in_words | string) + ' words',
85
+ "id": id + '-info',
86
+ "classes": 'govuk-character-count__message'
87
+ }) | trim }}
88
+ </td>
89
+ </tr>
90
+ {% endif %}
91
+
92
+ {%- if question.operation and question.operation_position == "after" -%}
93
+ <tr class="govuk-table__row">
94
+ <td class="govuk-table__cell" colspan="2"><strong class="govuk-!-font-size-27">{{ question.operation }}</strong></td>
95
+ </tr>
96
+ {%- endif -%}
97
+ {%- endfor -%}
98
+ </tbody>
99
+ </table>
100
+ {% endcall %}
101
+ {%- endif %}
102
+ {% endmacro %}
@@ -50,12 +50,6 @@
50
50
  "classes": 'govuk-fieldset__legend--m'
51
51
  }
52
52
  }) %}
53
- {% if multi_question.question_advice %}
54
- <div class="govuk-body">
55
- {{ multi_question.question_advice | safe }}
56
- </div>
57
- {% endif %}
58
-
59
53
  {% for question in multi_question.questions %}
60
54
  {% set index = loop.index - 1 %}
61
55
  {% if index % column_width_to_number_for_wrap[column_width] == 0 %}
@@ -1,5 +1,6 @@
1
1
  {% macro digitalmarketplaceQuestionNumber(params) %}
2
2
  {%- from "govuk_frontend_jinja/components/input/macro.html" import govukInput -%}
3
+ {%- from "digitalmarketplace_frontend_jinja/components/question-format-hint/macro.html" import digitalmarketplaceQuestionFormatHint -%}
3
4
 
4
5
  {% set name = params.question.id %}
5
6
  {% set questionText = params.question.question + " ({})".format(params.question.optional_text if params.question.optional_text else "optional") if params.question.optional else params.question.question %}
@@ -39,8 +40,8 @@
39
40
  "classes": formGroupClasses
40
41
  },
41
42
  "hint": {
42
- "html": params.question.hint
43
- } if params.question.hint,
43
+ "html": digitalmarketplaceQuestionFormatHint(params.question)
44
+ } if params.question.hint or params.question.question_advice,
44
45
  "value": params.data[name] if params.data,
45
46
  "errorMessage": errorMessage if errorMessage,
46
47
  "prefix": prefix if prefix,
@@ -9,6 +9,7 @@
9
9
  {%- from "digitalmarketplace_frontend_jinja/components/summary-content-checkbox-tree/macro.html" import digitalmarketplaceSummaryContentCheckboxTree -%}
10
10
  {%- from "digitalmarketplace_frontend_jinja/components/summary-content-multiquestion/macro.html" import digitalmarketplaceSummaryContentMultiquestion -%}
11
11
  {%- from "digitalmarketplace_frontend_jinja/components/summary-content-list-multiquestion/macro.html" import digitalmarketplaceSummaryContentListMultiquestion -%}
12
+ {%- from "digitalmarketplace_frontend_jinja/components/summary-content-formula/macro.html" import digitalmarketplaceSummaryContentFormula -%}
12
13
 
13
14
  {% if params.type == 'list' or params.type == 'checkboxes'%}
14
15
  {{ digitalmarketplaceSummaryContentList({
@@ -46,6 +47,10 @@
46
47
  {{ digitalmarketplaceSummaryContentListMultiquestion({
47
48
  'value': params.value
48
49
  }) }}
50
+ {% elif params.type == 'formula' %}
51
+ {{ digitalmarketplaceSummaryContentFormula({
52
+ 'value': params.value
53
+ }) }}
49
54
  {% else %}
50
55
  {{ digitalmarketplaceSummaryContentText({
51
56
  "value": params.value
@@ -0,0 +1,29 @@
1
+ {% macro digitalmarketplaceSummaryContentFormula(params) %}
2
+ {%- from "govuk_frontend_jinja/components/table/macro.html" import govukTable -%}
3
+
4
+ {%- if params.value -%}
5
+ {%- set tableHead = [] -%}
6
+ {%- set tableRow = [] -%}
7
+
8
+ {%- for question in params.value %}
9
+ {%- if question.operation and question.operation_position == "before" -%}
10
+ {%- set _tableHead = tableHead.append({ "text": question.operation }) -%}
11
+ {%- set _tableRow = tableRow.append({ "text": question.operation }) -%}
12
+ {%- endif -%}
13
+
14
+ {%- set _tableHead = tableHead.append({ "text": question.name }) -%}
15
+ {%- set _tableRow = tableRow.append({ "text": question.value }) -%}
16
+
17
+ {%- if question.operation and question.operation_position == "after" -%}
18
+ {%- set _tableHead = tableHead.append({ "text": question.operation }) -%}
19
+ {%- set _tableRow = tableRow.append({ "text": question.operation }) -%}
20
+ {%- endif -%}
21
+ {%- endfor -%}
22
+
23
+ {{ govukTable({
24
+ "head": tableHead,
25
+ "rows": [tableRow],
26
+ "classes": 'dm-summary-content-formula'
27
+ }) }}
28
+ {%- endif -%}
29
+ {% endmacro %}