@gov-cy/govcy-frontend-renderer 1.8.1 → 1.10.0

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.
@@ -1749,6 +1749,92 @@ root: root
1749
1749
  })();
1750
1750
  })();
1751
1751
 
1752
+ (function() {(window.nunjucksPrecompiled = window.nunjucksPrecompiled || {})["elements/details.njk"] = (function() {
1753
+ function root(env, context, frame, runtime, cb) {
1754
+ var lineno = 0;
1755
+ var colno = 0;
1756
+ var output = "";
1757
+ try {
1758
+ var parentTemplate = null;
1759
+ output += "\r\n";
1760
+ var macro_t_1 = runtime.makeMacro(
1761
+ ["params"],
1762
+ [],
1763
+ function (l_params, kwargs) {
1764
+ var callerFrame = frame;
1765
+ frame = new runtime.Frame();
1766
+ kwargs = kwargs || {};
1767
+ if (Object.prototype.hasOwnProperty.call(kwargs, "caller")) {
1768
+ frame.set("caller", kwargs.caller); }
1769
+ frame.set("params", l_params);
1770
+ var t_2 = "";env.getTemplate("utilities/govcyUtilities.njk", false, "elements/details.njk", false, function(t_4,t_3) {
1771
+ if(t_4) { cb(t_4); return; }
1772
+ t_3.getExported(function(t_5,t_3) {
1773
+ if(t_5) { cb(t_5); return; }
1774
+ if(Object.prototype.hasOwnProperty.call(t_3, "govcyLocalizeContent")) {
1775
+ var t_6 = t_3.govcyLocalizeContent;
1776
+ } else {
1777
+ cb(new Error("cannot import 'govcyLocalizeContent'")); return;
1778
+ }
1779
+ context.setVariable("govcyLocalizeContent", t_6);
1780
+ if(Object.prototype.hasOwnProperty.call(t_3, "govcyLangAttribute")) {
1781
+ var t_7 = t_3.govcyLangAttribute;
1782
+ } else {
1783
+ cb(new Error("cannot import 'govcyLangAttribute'")); return;
1784
+ }
1785
+ context.setVariable("govcyLangAttribute", t_7);
1786
+ if(Object.prototype.hasOwnProperty.call(t_3, "govcyElementsFromArray")) {
1787
+ var t_8 = t_3.govcyElementsFromArray;
1788
+ } else {
1789
+ cb(new Error("cannot import 'govcyElementsFromArray'")); return;
1790
+ }
1791
+ context.setVariable("govcyElementsFromArray", t_8);
1792
+ if(runtime.memberLookup((l_params),"summary") && runtime.memberLookup((l_params),"elements")) {
1793
+ t_2 += "\r\n<details ";
1794
+ if(runtime.memberLookup((l_params),"id")) {
1795
+ t_2 += "id=\"";
1796
+ t_2 += runtime.suppressValue(runtime.memberLookup((l_params),"id"), env.opts.autoescape);
1797
+ t_2 += "\" ";
1798
+ ;
1799
+ }
1800
+ t_2 += "class=\"govcy-details";
1801
+ if(runtime.memberLookup((l_params),"classes")) {
1802
+ t_2 += " ";
1803
+ t_2 += runtime.suppressValue(runtime.memberLookup((l_params),"classes"), env.opts.autoescape);
1804
+ ;
1805
+ }
1806
+ t_2 += "\"";
1807
+ t_2 += runtime.suppressValue((lineno = 17, colno = 156, runtime.callWrap(t_7, "govcyLangAttribute", context, [runtime.memberLookup((l_params),"lang")])), env.opts.autoescape);
1808
+ t_2 += ">\r\n <summary class=\"govcy-details__summary\">\r\n <span class=\"govcy-details__summary-text\">";
1809
+ t_2 += runtime.suppressValue((lineno = 19, colno = 73, runtime.callWrap(t_6, "govcyLocalizeContent", context, [runtime.memberLookup((l_params),"summary"),runtime.memberLookup((l_params),"lang")])), env.opts.autoescape);
1810
+ t_2 += "</span>\r\n </summary>\r\n <div class=\"govcy-details__text\">\r\n ";
1811
+ t_2 += runtime.suppressValue((lineno = 22, colno = 33, runtime.callWrap(t_8, "govcyElementsFromArray", context, [runtime.memberLookup((l_params),"elements"),runtime.memberLookup((l_params),"lang")])), env.opts.autoescape);
1812
+ t_2 += "\r\n </div>\r\n</details>";
1813
+ ;
1814
+ }
1815
+ })});
1816
+ frame = callerFrame;
1817
+ return new runtime.SafeString(t_2);
1818
+ });
1819
+ context.addExport("details");
1820
+ context.setVariable("details", macro_t_1);
1821
+ if(parentTemplate) {
1822
+ parentTemplate.rootRenderFunc(env, context, frame, runtime, cb);
1823
+ } else {
1824
+ cb(null, output);
1825
+ }
1826
+ ;
1827
+ } catch (e) {
1828
+ cb(runtime.handleError(e, lineno, colno));
1829
+ }
1830
+ }
1831
+ return {
1832
+ root: root
1833
+ };
1834
+
1835
+ })();
1836
+ })();
1837
+
1752
1838
  (function() {(window.nunjucksPrecompiled = window.nunjucksPrecompiled || {})["elements/errorMessage.njk"] = (function() {
1753
1839
  function root(env, context, frame, runtime, cb) {
1754
1840
  var lineno = 0;
@@ -4320,6 +4406,290 @@ root: root
4320
4406
  })();
4321
4407
  })();
4322
4408
 
4409
+ (function() {(window.nunjucksPrecompiled = window.nunjucksPrecompiled || {})["elements/stepByStepStatic.njk"] = (function() {
4410
+ function root(env, context, frame, runtime, cb) {
4411
+ var lineno = 0;
4412
+ var colno = 0;
4413
+ var output = "";
4414
+ try {
4415
+ var parentTemplate = null;
4416
+ output += "\r\n";
4417
+ var macro_t_1 = runtime.makeMacro(
4418
+ ["params"],
4419
+ [],
4420
+ function (l_params, kwargs) {
4421
+ var callerFrame = frame;
4422
+ frame = new runtime.Frame();
4423
+ kwargs = kwargs || {};
4424
+ if (Object.prototype.hasOwnProperty.call(kwargs, "caller")) {
4425
+ frame.set("caller", kwargs.caller); }
4426
+ frame.set("params", l_params);
4427
+ var t_2 = "";env.getTemplate("utilities/govcyUtilities.njk", false, "elements/stepByStepStatic.njk", false, function(t_4,t_3) {
4428
+ if(t_4) { cb(t_4); return; }
4429
+ t_3.getExported(function(t_5,t_3) {
4430
+ if(t_5) { cb(t_5); return; }
4431
+ if(Object.prototype.hasOwnProperty.call(t_3, "govcyLocalizeContent")) {
4432
+ var t_6 = t_3.govcyLocalizeContent;
4433
+ } else {
4434
+ cb(new Error("cannot import 'govcyLocalizeContent'")); return;
4435
+ }
4436
+ context.setVariable("govcyLocalizeContent", t_6);
4437
+ if(Object.prototype.hasOwnProperty.call(t_3, "govcyLangAttribute")) {
4438
+ var t_7 = t_3.govcyLangAttribute;
4439
+ } else {
4440
+ cb(new Error("cannot import 'govcyLangAttribute'")); return;
4441
+ }
4442
+ context.setVariable("govcyLangAttribute", t_7);
4443
+ if(Object.prototype.hasOwnProperty.call(t_3, "govcyElementsFromArray")) {
4444
+ var t_8 = t_3.govcyElementsFromArray;
4445
+ } else {
4446
+ cb(new Error("cannot import 'govcyElementsFromArray'")); return;
4447
+ }
4448
+ context.setVariable("govcyElementsFromArray", t_8);
4449
+ var t_9;
4450
+ t_9 = (function() {
4451
+ var output = "";
4452
+ output += runtime.suppressValue((lineno = 40, colno = 43, runtime.callWrap(t_6, "govcyLocalizeContent", context, [{"en": "Or","el": "Ή"},runtime.memberLookup((l_params),"lang")])), env.opts.autoescape);
4453
+ ;
4454
+ return output;
4455
+ })()
4456
+ ;
4457
+ frame.set("orText", t_9, true);
4458
+ if(frame.topLevel) {
4459
+ context.setVariable("orText", t_9);
4460
+ }
4461
+ if(frame.topLevel) {
4462
+ context.addExport("orText", t_9);
4463
+ }
4464
+ var t_10;
4465
+ t_10 = (function() {
4466
+ var output = "";
4467
+ output += runtime.suppressValue((lineno = 41, colno = 44, runtime.callWrap(t_6, "govcyLocalizeContent", context, [{"en": "And","el": "Και"},runtime.memberLookup((l_params),"lang")])), env.opts.autoescape);
4468
+ ;
4469
+ return output;
4470
+ })()
4471
+ ;
4472
+ frame.set("andText", t_10, true);
4473
+ if(frame.topLevel) {
4474
+ context.setVariable("andText", t_10);
4475
+ }
4476
+ if(frame.topLevel) {
4477
+ context.addExport("andText", t_10);
4478
+ }
4479
+ var t_11;
4480
+ t_11 = (function() {
4481
+ var output = "";
4482
+ output += runtime.suppressValue((lineno = 42, colno = 46, runtime.callWrap(t_6, "govcyLocalizeContent", context, [{"en": "Step","el": "Βήμα"},runtime.memberLookup((l_params),"lang")])), env.opts.autoescape);
4483
+ ;
4484
+ return output;
4485
+ })()
4486
+ ;
4487
+ frame.set("stepText", t_11, true);
4488
+ if(frame.topLevel) {
4489
+ context.setVariable("stepText", t_11);
4490
+ }
4491
+ if(frame.topLevel) {
4492
+ context.addExport("stepText", t_11);
4493
+ }
4494
+ if(runtime.memberLookup((l_params),"items")) {
4495
+ t_2 += "\r\n<div class=\"govcy-accordion govcy-accordion-steps govcy-mb-0";
4496
+ if(runtime.memberLookup((l_params),"classes")) {
4497
+ t_2 += " ";
4498
+ t_2 += runtime.suppressValue(runtime.memberLookup((l_params),"classes"), env.opts.autoescape);
4499
+ ;
4500
+ }
4501
+ t_2 += "\"";
4502
+ if(runtime.memberLookup((l_params),"id")) {
4503
+ t_2 += " id=\"";
4504
+ t_2 += runtime.suppressValue(runtime.memberLookup((l_params),"id"), env.opts.autoescape);
4505
+ t_2 += "\"";
4506
+ ;
4507
+ }
4508
+ t_2 += runtime.suppressValue((lineno = 45, colno = 187, runtime.callWrap(t_7, "govcyLangAttribute", context, [runtime.memberLookup((l_params),"lang")])), env.opts.autoescape);
4509
+ t_2 += ">";
4510
+ frame = frame.push();
4511
+ var t_14 = runtime.memberLookup((l_params),"items");
4512
+ if(t_14) {t_14 = runtime.fromIterator(t_14);
4513
+ var t_13 = t_14.length;
4514
+ for(var t_12=0; t_12 < t_14.length; t_12++) {
4515
+ var t_15 = t_14[t_12];
4516
+ frame.set("item", t_15);
4517
+ frame.set("loop.index", t_12 + 1);
4518
+ frame.set("loop.index0", t_12);
4519
+ frame.set("loop.revindex", t_13 - t_12);
4520
+ frame.set("loop.revindex0", t_13 - t_12 - 1);
4521
+ frame.set("loop.first", t_12 === 0);
4522
+ frame.set("loop.last", t_12 === t_13 - 1);
4523
+ frame.set("loop.length", t_13);
4524
+ if(runtime.memberLookup((t_15),"type") == "or") {
4525
+ var t_16;
4526
+ t_16 = (function() {
4527
+ var output = "";
4528
+ output += "<div class=\"govcy-accordion-step govcy-accordion-step-conditional\">";
4529
+ output += runtime.suppressValue(runtime.contextOrFrameLookup(context, frame, "orText"), env.opts.autoescape);
4530
+ output += "</div>";
4531
+ ;
4532
+ return output;
4533
+ })()
4534
+ ;
4535
+ frame.set("itemStep", t_16, true);
4536
+ if(frame.topLevel) {
4537
+ context.setVariable("itemStep", t_16);
4538
+ }
4539
+ if(frame.topLevel) {
4540
+ context.addExport("itemStep", t_16);
4541
+ }
4542
+ var t_17;
4543
+ t_17 = (function() {
4544
+ var output = "";
4545
+ output += "<span class=\"govcy-visually-hidden\">";
4546
+ output += runtime.suppressValue(runtime.contextOrFrameLookup(context, frame, "orText"), env.opts.autoescape);
4547
+ output += ", </span>";
4548
+ ;
4549
+ return output;
4550
+ })()
4551
+ ;
4552
+ frame.set("itemStepVisallyHidden", t_17, true);
4553
+ if(frame.topLevel) {
4554
+ context.setVariable("itemStepVisallyHidden", t_17);
4555
+ }
4556
+ if(frame.topLevel) {
4557
+ context.addExport("itemStepVisallyHidden", t_17);
4558
+ }
4559
+ ;
4560
+ }
4561
+ else {
4562
+ if(runtime.memberLookup((t_15),"type") == "and") {
4563
+ var t_18;
4564
+ t_18 = (function() {
4565
+ var output = "";
4566
+ output += "<div class=\"govcy-accordion-step govcy-accordion-step-conditional\">";
4567
+ output += runtime.suppressValue(runtime.contextOrFrameLookup(context, frame, "andText"), env.opts.autoescape);
4568
+ output += "</div>";
4569
+ ;
4570
+ return output;
4571
+ })()
4572
+ ;
4573
+ frame.set("itemStep", t_18, true);
4574
+ if(frame.topLevel) {
4575
+ context.setVariable("itemStep", t_18);
4576
+ }
4577
+ if(frame.topLevel) {
4578
+ context.addExport("itemStep", t_18);
4579
+ }
4580
+ var t_19;
4581
+ t_19 = (function() {
4582
+ var output = "";
4583
+ output += "<span class=\"govcy-visually-hidden\">";
4584
+ output += runtime.suppressValue(runtime.contextOrFrameLookup(context, frame, "andText"), env.opts.autoescape);
4585
+ output += ", </span>";
4586
+ ;
4587
+ return output;
4588
+ })()
4589
+ ;
4590
+ frame.set("itemStepVisallyHidden", t_19, true);
4591
+ if(frame.topLevel) {
4592
+ context.setVariable("itemStepVisallyHidden", t_19);
4593
+ }
4594
+ if(frame.topLevel) {
4595
+ context.addExport("itemStepVisallyHidden", t_19);
4596
+ }
4597
+ ;
4598
+ }
4599
+ else {
4600
+ var t_20;
4601
+ t_20 = (function() {
4602
+ var output = "";
4603
+ output += "<div class=\"govcy-accordion-step\">";
4604
+ output += runtime.suppressValue(runtime.memberLookup((runtime.contextOrFrameLookup(context, frame, "loop")),"index"), env.opts.autoescape);
4605
+ output += "</div>";
4606
+ ;
4607
+ return output;
4608
+ })()
4609
+ ;
4610
+ frame.set("itemStep", t_20, true);
4611
+ if(frame.topLevel) {
4612
+ context.setVariable("itemStep", t_20);
4613
+ }
4614
+ if(frame.topLevel) {
4615
+ context.addExport("itemStep", t_20);
4616
+ }
4617
+ var t_21;
4618
+ t_21 = (function() {
4619
+ var output = "";
4620
+ output += "<span class=\"govcy-visually-hidden\">";
4621
+ output += runtime.suppressValue(runtime.contextOrFrameLookup(context, frame, "stepText"), env.opts.autoescape);
4622
+ output += " ";
4623
+ output += runtime.suppressValue(runtime.memberLookup((runtime.contextOrFrameLookup(context, frame, "loop")),"index"), env.opts.autoescape);
4624
+ output += ", </span>";
4625
+ ;
4626
+ return output;
4627
+ })()
4628
+ ;
4629
+ frame.set("itemStepVisallyHidden", t_21, true);
4630
+ if(frame.topLevel) {
4631
+ context.setVariable("itemStepVisallyHidden", t_21);
4632
+ }
4633
+ if(frame.topLevel) {
4634
+ context.addExport("itemStepVisallyHidden", t_21);
4635
+ }
4636
+ ;
4637
+ }
4638
+ ;
4639
+ }
4640
+ t_2 += "\r\n <div class=\"govcy-accordion-item";
4641
+ if(runtime.memberLookup((t_15),"classes")) {
4642
+ t_2 += " ";
4643
+ t_2 += runtime.suppressValue(runtime.memberLookup((t_15),"classes"), env.opts.autoescape);
4644
+ ;
4645
+ }
4646
+ t_2 += "\"";
4647
+ if(runtime.memberLookup((l_params),"id")) {
4648
+ t_2 += " id=\"";
4649
+ t_2 += runtime.suppressValue(runtime.memberLookup((l_params),"id"), env.opts.autoescape);
4650
+ t_2 += "-item-";
4651
+ t_2 += runtime.suppressValue(runtime.memberLookup((runtime.contextOrFrameLookup(context, frame, "loop")),"index"), env.opts.autoescape);
4652
+ t_2 += "\"";
4653
+ ;
4654
+ }
4655
+ t_2 += ">\r\n ";
4656
+ t_2 += runtime.suppressValue(env.getFilter("safe").call(context, runtime.contextOrFrameLookup(context, frame, "itemStep")), env.opts.autoescape);
4657
+ t_2 += "\r\n <h3 class=\"govcy-pt-4\">\r\n ";
4658
+ t_2 += runtime.suppressValue(env.getFilter("safe").call(context, runtime.contextOrFrameLookup(context, frame, "itemStepVisallyHidden")), env.opts.autoescape);
4659
+ t_2 += runtime.suppressValue((lineno = 61, colno = 75, runtime.callWrap(t_6, "govcyLocalizeContent", context, [runtime.memberLookup((t_15),"heading"),runtime.memberLookup((l_params),"lang")])), env.opts.autoescape);
4660
+ t_2 += "</h3> \r\n <div>\r\n ";
4661
+ t_2 += runtime.suppressValue((lineno = 64, colno = 41, runtime.callWrap(t_8, "govcyElementsFromArray", context, [runtime.memberLookup((t_15),"elements"),runtime.memberLookup((l_params),"lang")])), env.opts.autoescape);
4662
+ t_2 += "\r\n </div>\r\n </div>";
4663
+ ;
4664
+ }
4665
+ }
4666
+ frame = frame.pop();
4667
+ t_2 += "\r\n</div>";
4668
+ ;
4669
+ }
4670
+ })});
4671
+ frame = callerFrame;
4672
+ return new runtime.SafeString(t_2);
4673
+ });
4674
+ context.addExport("stepByStepStatic");
4675
+ context.setVariable("stepByStepStatic", macro_t_1);
4676
+ if(parentTemplate) {
4677
+ parentTemplate.rootRenderFunc(env, context, frame, runtime, cb);
4678
+ } else {
4679
+ cb(null, output);
4680
+ }
4681
+ ;
4682
+ } catch (e) {
4683
+ cb(runtime.handleError(e, lineno, colno));
4684
+ }
4685
+ }
4686
+ return {
4687
+ root: root
4688
+ };
4689
+
4690
+ })();
4691
+ })();
4692
+
4323
4693
  (function() {(window.nunjucksPrecompiled = window.nunjucksPrecompiled || {})["elements/summaryList.njk"] = (function() {
4324
4694
  function root(env, context, frame, runtime, cb) {
4325
4695
  var lineno = 0;
@@ -6288,7 +6658,7 @@ var output = "";
6288
6658
  try {
6289
6659
  var parentTemplate = null;
6290
6660
  var t_1;
6291
- t_1 = ["label","legend","hint","button","errorMessage","select","textElement","htmlElement","textInput","radios","checkboxes","fileInput","fileView","backLink","tag","table","summaryList","textArea","markdown","panel","datePicker","dateInput","taskList","errorSummary"];
6661
+ t_1 = ["label","legend","hint","button","errorMessage","select","textElement","htmlElement","textInput","radios","checkboxes","fileInput","fileView","backLink","tag","table","summaryList","textArea","markdown","panel","datePicker","dateInput","taskList","errorSummary","details","stepByStepStatic"];
6292
6662
  frame.set("macroSimpleBlocks", t_1, true);
6293
6663
  if(frame.topLevel) {
6294
6664
  context.setVariable("macroSimpleBlocks", t_1);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gov-cy/govcy-frontend-renderer",
3
- "version": "1.8.1",
3
+ "version": "1.10.0",
4
4
  "description": "Render html for design elements of the Unified design system using njk or json template.",
5
5
  "author": "DMRID - DSF Team",
6
6
  "license": "MIT",
@@ -0,0 +1,27 @@
1
+ {# details
2
+ @param {string} lang The language used. Can be 'en','el'. Optional.
3
+ @param {string} id The id of the summary. Will escape text. Optional
4
+ @param {object} summary The text displayed inside the `<summary>`. Will escape text. Example `{"en":"Content","el":"Περιεχομένο"}`.
5
+ @param {array} elements if defined, govcy-elements to be rendered inside the panel.
6
+ i.e. `[
7
+ {element:"textElement",params:{text:{en:"Content",el:"Περιεχομένο"}},
8
+ {element:"button",params:{text:{en:"Button 1",el:"Κουμπί 1"},lang:"en",id:"govcy-test-23b"} }
9
+ ]`
10
+ @param {string} classes Additional classes to add to the outer `<details>`. Optional
11
+ @returns govcy details html
12
+ #}
13
+ {% macro details(params) -%}
14
+ {#- Import localizer from utilities -#}
15
+ {%- from "../utilities/govcyUtilities.njk" import govcyLocalizeContent, govcyLangAttribute, govcyElementsFromArray -%}
16
+ {#- summary and elements are mandatory -#}
17
+ {%- if params.summary and params.elements %}
18
+ <details {% if params.id %}id="{{ params.id }}" {% endif %}class="govcy-details{% if params.classes %} {{ params.classes }}{% endif %}"{{ govcyLangAttribute(params.lang) }}>
19
+ <summary class="govcy-details__summary">
20
+ <span class="govcy-details__summary-text">{{ govcyLocalizeContent(params.summary, params.lang) }}</span>
21
+ </summary>
22
+ <div class="govcy-details__text">
23
+ {{ govcyElementsFromArray(params.elements, params.lang) }}
24
+ </div>
25
+ </details>
26
+ {%- endif %}
27
+ {%- endmacro %}
@@ -0,0 +1,71 @@
1
+ {# stepByStepStatic
2
+ @param {string} lang The language used. Can be 'en','el'. Optional.
3
+ @param {string} id The id of the step by step. Will escape text. Optional
4
+ @param {array} items The array of items to turn into steps
5
+ @param {string} item.heading The heading of the item. Will escape text. Example `{"en":"Content","el":"Περιεχομένο"}`.
6
+ @param {array} item.elements, govcy-elements to be rendered inside the item's body.
7
+ @param {string} item.type The item type. Can be ''(which is incremental steps) ,'or','and'. Optional, default is ''
8
+ @param {string} item.classes Additional classes to add to the item. Optional
9
+ i.e. ` [
10
+ {
11
+ "heading":{"en":"Step 1","el":"Βήμα 1"},
12
+ "elements":[
13
+ {"element":"textElement",
14
+ "params":{
15
+ "text":{"en":"Content","el":"Περιεχομένο"}
16
+ }
17
+ },
18
+ {"element":"markdown",
19
+ "params":{
20
+ "text":{"en":"- item1\n- item2","el":"- item1 el\n- item2 el"}
21
+ }
22
+ }
23
+ ]
24
+ },
25
+ {
26
+ "heading":{"en":"Step 2","el":"Βήμα 2"},
27
+ "elements":[
28
+ {"element":"textElement","params":{"text":{"en":"Content 2","el":"Περιεχομένο 2"} } }
29
+ ],
30
+ "type":"or",
31
+ "classes":"govcy-test-class"
32
+ }
33
+ ]`
34
+ @param {string} classes Additional classes to add to the outer `<details>`. Optional
35
+ @returns govcy stepByStepStatic html
36
+ #}
37
+ {% macro stepByStepStatic(params) -%}
38
+ {#- Import localizer from utilities -#}
39
+ {%- from "../utilities/govcyUtilities.njk" import govcyLocalizeContent, govcyLangAttribute, govcyElementsFromArray -%}
40
+ {#- set default values -#}
41
+ {%- set orText -%} {{- govcyLocalizeContent({en:'Or',el:'Ή'}, params.lang) -}}{%- endset -%}
42
+ {%- set andText -%} {{- govcyLocalizeContent({en:'And',el:'Και'}, params.lang) -}}{%- endset -%}
43
+ {%- set stepText -%} {{- govcyLocalizeContent({en:'Step',el:'Βήμα'}, params.lang) -}}{%- endset -%}
44
+ {#- items are mandatory -#}
45
+ {%- if params.items %}
46
+ <div class="govcy-accordion govcy-accordion-steps govcy-mb-0{% if params.classes %} {{ params.classes }}{% endif %}"{% if params.id %} id="{{ params.id }}"{% endif %}{{ govcyLangAttribute(params.lang) }}>
47
+ {#- for each item render checkbox item -#}
48
+ {%- for item in params.items %}
49
+ {%- if item.type == 'or' -%}
50
+ {%- set itemStep -%}<div class="govcy-accordion-step govcy-accordion-step-conditional">{{ orText }}</div>{%- endset -%}
51
+ {%- set itemStepVisallyHidden -%}<span class="govcy-visually-hidden">{{ orText }}, </span>{%- endset -%}
52
+ {%- elif item.type == 'and' -%}
53
+ {%- set itemStep -%}<div class="govcy-accordion-step govcy-accordion-step-conditional">{{ andText }}</div>{%- endset -%}
54
+ {%- set itemStepVisallyHidden -%}<span class="govcy-visually-hidden">{{ andText }}, </span>{%- endset -%}
55
+ {%- else -%}
56
+ {%- set itemStep -%}<div class="govcy-accordion-step">{{ loop.index }}</div>{%- endset -%}
57
+ {%- set itemStepVisallyHidden -%}<span class="govcy-visually-hidden">{{ stepText }} {{ loop.index}}, </span>{%- endset -%}
58
+ {%- endif %}
59
+ <div class="govcy-accordion-item{% if item.classes %} {{ item.classes }}{% endif %}"{% if params.id %} id="{{ params.id }}-item-{{ loop.index }}"{% endif %}>
60
+ {{ itemStep | safe }}
61
+ <h3 class="govcy-pt-4">
62
+ {{ itemStepVisallyHidden | safe }} {{- govcyLocalizeContent(item.heading, params.lang) -}}
63
+ </h3>
64
+ <div>
65
+ {{ govcyElementsFromArray(item.elements, params.lang) }}
66
+ </div>
67
+ </div>
68
+ {%- endfor %}
69
+ </div>
70
+ {%- endif %}
71
+ {%- endmacro %}
@@ -25,7 +25,7 @@ To use:
25
25
  {%- set macroSimpleBlocks = ['label', 'legend', 'hint', 'button',
26
26
  'errorMessage','select','textElement','htmlElement','textInput','radios','checkboxes',
27
27
  'fileInput','fileView','backLink','tag','table', 'summaryList', 'textArea','markdown',
28
- 'panel', 'datePicker','dateInput', 'taskList', 'errorSummary'] -%}
28
+ 'panel', 'datePicker','dateInput', 'taskList', 'errorSummary', 'details', 'stepByStepStatic'] -%}
29
29
  {%- set macroCallerBlocks = ['formControl','form','fieldset'] -%}
30
30
  {%- macro govcyElement(component, params) -%}
31
31
  {#- Simple blocks -#}