@gov-cy/govcy-express-services 1.3.0-alpha.2 → 1.3.0-alpha.4

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,50 +1,50 @@
1
1
  export const staticResources = {
2
2
  //text content
3
3
  text: {
4
- submit: {
5
- en: "Submit",
6
- el: "Υποβολή",
7
- tr: "Gönder"
8
- },
9
- continue: {
10
- en: "Continue",
11
- el: "Συνέχεια",
12
- tr: "Continue"
13
- },
14
- cancel: {
15
- en: "Cancel",
16
- el: "Ακύρωση",
17
- tr: "İptal"
18
- },
19
- back: {
20
- en: "Back",
21
- el: "Πίσω",
22
- tr: "Geri"
23
- },
24
- change: {
25
- en: "Change",
26
- el: "Αλλαγή",
27
- tr: "Değişiklik"
28
- },
29
- delete : {
4
+ submit: {
5
+ en: "Submit",
6
+ el: "Υποβολή",
7
+ tr: "Gönder"
8
+ },
9
+ continue: {
10
+ en: "Continue",
11
+ el: "Συνέχεια",
12
+ tr: "Continue"
13
+ },
14
+ cancel: {
15
+ en: "Cancel",
16
+ el: "Ακύρωση",
17
+ tr: "İptal"
18
+ },
19
+ back: {
20
+ en: "Back",
21
+ el: "Πίσω",
22
+ tr: "Geri"
23
+ },
24
+ change: {
25
+ en: "Change",
26
+ el: "Αλλαγή",
27
+ tr: "Değişiklik"
28
+ },
29
+ delete: {
30
30
  en: "Delete",
31
31
  el: "Διαγραφή",
32
32
  tr: "Delete"
33
33
  },
34
- untitled : {
34
+ untitled: {
35
35
  en: "Untitled",
36
36
  el: "Χωρίς τίτλο",
37
37
  tr: "Untitled"
38
38
  },
39
- formSuccess: {
40
- en: "Your form has been submitted!",
41
- el: "Η φόρμα σας έχει υποβληθεί!" ,
39
+ formSuccess: {
40
+ en: "Your form has been submitted!",
41
+ el: "Η φόρμα σας έχει υποβληθεί!",
42
42
  tr: "Formunuz gönderild"
43
43
  },
44
- errorOccurred: {
45
- en: "An error occurred. Please try again.",
44
+ errorOccurred: {
45
+ en: "An error occurred. Please try again.",
46
46
  el: "Παρουσιάστηκε σφάλμα. Παρακαλώ δοκιμάστε ξανά.",
47
- tr: "Bir hata oluştu. Lutfen tekrar deneyiniz."
47
+ tr: "Bir hata oluştu. Lutfen tekrar deneyiniz."
48
48
  },
49
49
  errorPage404Title: {
50
50
  el: "Δεν βρέθηκε η σελίδα",
@@ -81,70 +81,70 @@ export const staticResources = {
81
81
  en: "<p>Sign out and try again later.</p>",
82
82
  tr: "<p>Giriş yapmadan sonra tekrar deneyiniz.</p>"
83
83
  },
84
- checkYourAnswersTitle : {
84
+ checkYourAnswersTitle: {
85
85
  en: "Check your answers",
86
86
  el: "Ελέγξτε τις απαντήσεις σας",
87
87
  tr: "Cevaplarınızı kontrol edin"
88
88
  },
89
- valueNotOnList : {
89
+ valueNotOnList: {
90
90
  en: "Select one of the available options",
91
91
  el: "Επιλέξτε μία από τις διαθέσιμες επιλογές",
92
92
  tr: "Mevcut seçeneklerden birini seçin"
93
93
  },
94
- submissionSuccessTitle : {
94
+ submissionSuccessTitle: {
95
95
  en: "We have received your request",
96
96
  el: "Έχουμε λάβει την αίτησή σας",
97
97
  tr: "We have received your request"
98
98
  },
99
- yourSubmissionId : {
99
+ yourSubmissionId: {
100
100
  en: "Your reference number: ",
101
101
  el: "Ο αριθμός αναφοράς: ",
102
102
  tr: "Your reference number: "
103
103
  },
104
- weHaveSendYouAnEmail : {
104
+ weHaveSendYouAnEmail: {
105
105
  en: "We have sent you a confirmation email.",
106
106
  el: "Έχουμε στείλει email επιβεβαιωσης.",
107
107
  tr: "We have sent you a confirmation email."
108
108
  },
109
- theDataFromYourRequest : {
109
+ theDataFromYourRequest: {
110
110
  en: "The data from your request: ",
111
111
  el: "Τα δεδομένα της αίτησής σας: ",
112
112
  tr: "The data from your request: "
113
113
  },
114
- emailSubmissionPreHeader : {
114
+ emailSubmissionPreHeader: {
115
115
  en: "We have received your request. ",
116
116
  el: "Έχουμε λάβει την αίτησή σας. ",
117
117
  tr: "We have received your request. "
118
118
  },
119
- fileUploaded : {
119
+ fileUploaded: {
120
120
  en: "File uploaded",
121
121
  el: "Το αρχείο ανεβάστηκε",
122
122
  tr: "File uploaded"
123
123
  },
124
- fileNotUploaded : {
124
+ fileNotUploaded: {
125
125
  en: "File has not been uploaded. ",
126
126
  el: "Το αρχείο δεν ανεβάστηκε. ",
127
127
  tr: "File has not been uploaded. "
128
128
  },
129
- fileYouHaveUploaded : {
129
+ fileYouHaveUploaded: {
130
130
  en: "You have uploaded the file for \"{{file}}\"",
131
131
  el: "Έχετε ανεβάσει το αρχείο \"{{file}}\"",
132
132
  tr: "You have uploaded the file for \"{{file}}\""
133
133
  },
134
- deleteFileTitle : {
134
+ deleteFileTitle: {
135
135
  en: "Are you sure you want to delete the file \"{{file}}\"? ",
136
136
  el: "Σίγουρα θέλετε να διαγράψετε το αρχείο \"{{file}}\";",
137
137
  tr: "Are you sure you want to delete the file \"{{file}}\"? "
138
138
  },
139
139
  deleteYesOption: {
140
- el:"Ναι, θέλω να διαγράψω το αρχείο",
141
- en:"Yes, I want to delete this file",
142
- tr:"Yes, I want to delete this file"
140
+ el: "Ναι, θέλω να διαγράψω το αρχείο",
141
+ en: "Yes, I want to delete this file",
142
+ tr: "Yes, I want to delete this file"
143
143
  },
144
144
  deleteNoOption: {
145
- el:"Όχι, δεν θέλω να διαγράψω το αρχείο",
146
- en:"No, I don't want to delete this file",
147
- tr:"No, I don't want to delete this file"
145
+ el: "Όχι, δεν θέλω να διαγράψω το αρχείο",
146
+ en: "No, I don't want to delete this file",
147
+ tr: "No, I don't want to delete this file"
148
148
  },
149
149
  deleteFileValidationError: {
150
150
  en: "Select if you want to delete the file",
@@ -222,23 +222,389 @@ export const staticResources = {
222
222
  tr: "Entries"
223
223
  },
224
224
  multipleThingsDeleteYesOption: {
225
- el:"Ναι, θέλω να διαγράψω την καταχώρηση",
226
- en:"Yes, I want to delete this entry",
227
- tr:"Yes, I want to delete this entry"
225
+ el: "Ναι, θέλω να διαγράψω την καταχώρηση",
226
+ en: "Yes, I want to delete this entry",
227
+ tr: "Yes, I want to delete this entry"
228
228
  },
229
229
  multipleThingsDeleteNoOption: {
230
- el:"Όχι, δεν θέλω να διαγράψω την καταχώρηση",
231
- en:"No, I don't want to delete this entry",
232
- tr:"No, I don't want to delete this entry"
230
+ el: "Όχι, δεν θέλω να διαγράψω την καταχώρηση",
231
+ en: "No, I don't want to delete this entry",
232
+ tr: "No, I don't want to delete this entry"
233
+ },
234
+ updateMyDetailsTitle: {
235
+ el: "Τα στοιχεία σας",
236
+ en: "Your details",
237
+ tr: "Your details"
238
+ },
239
+ updateMyDetailsScopes : {
240
+ fullName :
241
+ {
242
+ el: "Ονοματεπωνυμο",
243
+ en: "Full name",
244
+ tr: "Full name"
245
+ },
246
+ email :
247
+ {
248
+ el: "Email",
249
+ en: "Email",
250
+ tr: "Email"
251
+ },
252
+ mobile :
253
+ {
254
+ el: "Αριθμός κινητού τηλεφώνου",
255
+ en: "Mobile phone number",
256
+ tr: "Mobile phone number"
257
+ },
258
+ address :
259
+ {
260
+ el: "Διεύθυνση αλληλογραφίας",
261
+ en: "Mailing address",
262
+ tr: "Mailing address"
263
+ },
233
264
  }
234
265
  },
235
266
  //remderer sections
236
267
  sections: {
237
- beforeMain : {name: "beforeMain", elements: []},
238
- main : {name: "main", elements: []}
268
+ beforeMain: { name: "beforeMain", elements: [] },
269
+ main: { name: "main", elements: [] }
239
270
  },
240
271
  //renderer elements
241
272
  elements: {
273
+ continueButton: {
274
+ element: "button",
275
+ params: {
276
+ id: "continue",
277
+ variant: "primary",
278
+ type: "submit",
279
+ text: {
280
+ el: "Αποθήκευση",
281
+ en: "Save"
282
+ }
283
+ }
284
+ },
285
+ umdHasData: {
286
+ header: {
287
+ element: "textElement",
288
+ params: {
289
+ id: "header",
290
+ type: "h1",
291
+ text: {
292
+ el: "Τα στοιχεία σας",
293
+ en: "Your details"
294
+ }
295
+ }
296
+ },
297
+ instructions: {
298
+ element: "textElement",
299
+ params: {
300
+ id: "instructions",
301
+ type: "p",
302
+ text: {
303
+ el: "Για να επεξεργαστούμε την αίτησή σας, θα χρησιμοποιήσουμε τα στοιχεία σας από το Αρχείο Πληθυσμού",
304
+ en: "In order to process your application, we’ll your details in the Civil Registry:"
305
+ }
306
+ }
307
+ },
308
+ question: {
309
+ element: "radios",
310
+ params: {
311
+ id: "useTheseDetails",
312
+ name: "useTheseDetails",
313
+ legend: {
314
+ el: "Να χρησιμοποιήσουμε αυτά τα στοιχεία;",
315
+ en: "Should we use these elements?"
316
+ },
317
+ items: [
318
+ {
319
+ value: "yes",
320
+ text: {
321
+ el: "Ναι, χρησιμοποιήστε τα στοιχεία που φαίνονται εδώ",
322
+ en: "Yes, use the details shown here",
323
+ tr: ""
324
+ }
325
+ },
326
+ {
327
+ value: "no",
328
+ text: {
329
+ el: "Όχι, θα αλλάξω αυτά τα στοιχεία",
330
+ en: "No, I will change these details",
331
+ tr: ""
332
+ }
333
+ }
334
+ ],
335
+ isPageHeading: false
336
+ },
337
+ validations: [
338
+ {
339
+ check: "required",
340
+ params: {
341
+ checkValue: "",
342
+ message: {
343
+ el: "Επιλέξτε ναι εάν θέλετε να χρησιμοποιήσουμε τα στοιχεία σας",
344
+ en: "Select yes if you want us to use your details",
345
+ tr: ""
346
+ }
347
+ }
348
+ }
349
+ ]
350
+ }
351
+ },
352
+ umdHasNoData: {
353
+ header: {
354
+ element: "textElement",
355
+ params: {
356
+ id: "header",
357
+ type: "h1",
358
+ text: {
359
+ el: "Τα στοιχεία σας",
360
+ en: "Your details"
361
+ }
362
+ }
363
+ },
364
+ instructions: {
365
+ element: "textElement",
366
+ params: {
367
+ id: "instructions",
368
+ type: "p",
369
+ text: {
370
+ el: "Για να επεξεργαστούμε την αίτησή σας, θα χρειαστεί να μας δώσετε τα στοιχεία σας.",
371
+ en: "In order to process your application, you’ll need to give us your details."
372
+ }
373
+ }
374
+ }
375
+ },
376
+ umdManual: {
377
+ header: {
378
+ element: "textElement",
379
+ params: {
380
+ id: "header",
381
+ type: "h1",
382
+ text: {
383
+ el: "Τα στοιχεία σας",
384
+ en: "Your details",
385
+ tr: ""
386
+ }
387
+ }
388
+ },
389
+ instructions: {
390
+ element: "textElement",
391
+ params: {
392
+ id: "instructions",
393
+ type: "p",
394
+ text: {
395
+ el: "Για να επεξεργαστούμε την αίτησή σας, θα χρησιμοποιήσουμε τα πιο κάτω στοιχεία:",
396
+ en: "In order to process your application, we’ll use the information below:",
397
+ tr: ""
398
+ }
399
+ }
400
+ },
401
+ fullName: {
402
+ element: "textInput",
403
+ params: {
404
+ id: "fullName",
405
+ name: "fullName",
406
+ label: {
407
+ el: "Ονοματεπώνυμο",
408
+ en: "Full name",
409
+ tr: ""
410
+ },
411
+ isPageHeading: false,
412
+ type: "name"
413
+ },
414
+ validations: [
415
+ {
416
+ check: "required",
417
+ params: {
418
+ checkValue: "",
419
+ message: {
420
+ el: "Εισαγάγετε το όνομα σας",
421
+ en: "Enter your name",
422
+ tr: ""
423
+ }
424
+ }
425
+ },
426
+ {
427
+ check: "valid",
428
+ params: {
429
+ checkValue: "noSpecialChars",
430
+ message: {
431
+ el: "Το όνομα σας πρέπει να αποτελείται μόνο από γράμματα, αριθμούς και ορισμένους άλλους χαρακτήρες",
432
+ en: "Your name must consist only of letters, numbers and some other characters",
433
+ tr: ""
434
+ }
435
+ }
436
+ },
437
+ {
438
+ check: "length",
439
+ params: {
440
+ checkValue: "300",
441
+ message: {
442
+ el: "Το όνομα σας πρέπει να είναι 300 χαρακτήρες ή λιγότεροι",
443
+ en: "Your name must be 300 characters or less",
444
+ tr: ""
445
+ }
446
+ }
447
+ }
448
+ ]
449
+ },
450
+ mobile: {
451
+ element: "textInput",
452
+ params: {
453
+ id: "mobile",
454
+ name: "mobile",
455
+ label: {
456
+ el: "Αριθμός κινητού τηλεφώνου",
457
+ en: "Mobile phone number",
458
+ tr: ""
459
+ },
460
+ isPageHeading: false,
461
+ hint: {
462
+ el: "Μόνο για αριθμούς εκτός Κύπρου χρειάζεται ο κωδικός χώρας",
463
+ en: "Country code only needed for numbers outside of Cyprus",
464
+ tr: ""
465
+ },
466
+ fixedWidth: "20",
467
+ type: "tel"
468
+ },
469
+ validations: [
470
+ {
471
+ check: "required",
472
+ params: {
473
+ checkValue: "",
474
+ message: {
475
+ el: "Εισαγάγετε τον αριθμό κινητού τηλεφώνου",
476
+ en: "Enter your mobile number",
477
+ tr: ""
478
+ }
479
+ }
480
+ },
481
+ {
482
+ check: "valid",
483
+ params: {
484
+ checkValue: "mobile",
485
+ message: {
486
+ el: "Ο αριθμός κινητού τηλεφώνου πρέπει έχει μορφή αριθμός κινητού τηλεφώνου. Για πράδειγμα `99123456`",
487
+ en: "The mobile number must have a mobile telephone number format. For example `99123456`",
488
+ tr: ""
489
+ }
490
+ }
491
+ },
492
+ {
493
+ check: "length",
494
+ params: {
495
+ checkValue: "40",
496
+ message: {
497
+ el: "Ο αριθμός κινητού τηλεφώνου πρέπει να είναι 20 χαρακτήρες ή λιγότεροι",
498
+ en: "The mobile number must be 20 characters or less",
499
+ tr: ""
500
+ }
501
+ }
502
+ }
503
+ ]
504
+ },
505
+ email: {
506
+ element: "textInput",
507
+ params: {
508
+ id: "email",
509
+ name: "email",
510
+ label: {
511
+ el: "Email",
512
+ en: "Email",
513
+ tr: ""
514
+ },
515
+ isPageHeading: false,
516
+ type: "email"
517
+ },
518
+ validations: [
519
+ {
520
+ check: "required",
521
+ params: {
522
+ checkValue: "",
523
+ message: {
524
+ el: "Εισαγάγετε το email σας",
525
+ en: "Enter your email",
526
+ tr: ""
527
+ }
528
+ }
529
+ },
530
+ {
531
+ check: "valid",
532
+ params: {
533
+ checkValue: "email",
534
+ message: {
535
+ el: "Το email πρέπει να έχει μορφή email. Για παράδειγμα `name@provider.com`",
536
+ en: "Email must be of email format. For example `name@provider.com`",
537
+ tr: ""
538
+ }
539
+ }
540
+ },
541
+ {
542
+ check: "length",
543
+ params: {
544
+ checkValue: "254",
545
+ message: {
546
+ el: "Το email πρέπει να είναι 254 χαρακτήρες ή λιγότεροι",
547
+ en: "Email must be 254 characters or less",
548
+ tr: ""
549
+ }
550
+ }
551
+ }
552
+ ]
553
+ },
554
+ address: {
555
+ element: "textArea",
556
+ params: {
557
+ id: "address",
558
+ name: "address",
559
+ rows: 5,
560
+ label: {
561
+ el: "Διεύθυνση αλληλογραφίας",
562
+ en: "Mailing address",
563
+ tr: ""
564
+ },
565
+ isPageHeading: false,
566
+ characterCount: {
567
+ type: "char",
568
+ max: 300
569
+ }
570
+ },
571
+ validations: [
572
+ {
573
+ check: "required",
574
+ params: {
575
+ checkValue: "",
576
+ message: {
577
+ el: "Εισαγάγετε τη διεύθυνσης αλληλογραφίας σας",
578
+ en: "Enter your mailing address",
579
+ tr: ""
580
+ }
581
+ }
582
+ },
583
+ {
584
+ check: "valid",
585
+ params: {
586
+ checkValue: "noSpecialChars",
587
+ message: {
588
+ el: "Η διεύθυνση αλληλογραφίας πρέπει να αποτελείται μόνο από γράμματα, αριθμούς και ορισμένους άλλους χαρακτήρες",
589
+ en: "The mailing address must consist only of letters, numbers and some other characters",
590
+ tr: ""
591
+ }
592
+ }
593
+ },
594
+ {
595
+ check: "length",
596
+ params: {
597
+ checkValue: "300",
598
+ message: {
599
+ el: "Η διεύθυνση αλληλογραφίας πρέπει να είναι 300 χαρακτήρες ή λιγότεροι",
600
+ en: "The mailing address must be 300 characters or less",
601
+ tr: ""
602
+ }
603
+ }
604
+ }
605
+ ]
606
+ }
607
+ },
242
608
  govcyFormsJs: {
243
609
  element: "htmlElement",
244
610
  params: {
@@ -262,29 +628,29 @@ export const staticResources = {
262
628
  backLink: { element: "backLink", params: {} }
263
629
  },
264
630
  //renderer page data template
265
- rendererPageData :
631
+ rendererPageData:
266
632
  {
267
633
  site: {
268
634
  lang: "el",
269
- title: {
270
- en: "govcy Express Services",
635
+ title: {
636
+ en: "govcy Express Services",
271
637
  el: "govcy Express Services",
272
- tr: "govcy Express Services"
638
+ tr: "govcy Express Services"
273
639
  },
274
- headerTitle: {
275
- en: "",
640
+ headerTitle: {
641
+ en: "",
276
642
  el: "",
277
643
  tr: ""
278
644
  },
279
- description: {
280
- en: "govcy Express Services",
645
+ description: {
646
+ en: "govcy Express Services",
281
647
  el: "govcy Express Services",
282
- tr: "govcy Express Services"
648
+ tr: "govcy Express Services"
283
649
  },
284
- copyrightText :{
285
- en:"Republic of Cyprus, 2025",
286
- el:"Κυπριακή Δημοκρατία, 2025",
287
- tr:"Kıbrıs Cumhuriyeti, 2025"
650
+ copyrightText: {
651
+ en: "Republic of Cyprus, 2025",
652
+ el: "Κυπριακή Δημοκρατία, 2025",
653
+ tr: "Kıbrıs Cumhuriyeti, 2025"
288
654
  },
289
655
  url: "https://gov.cy",
290
656
  cdn: {
@@ -294,8 +660,8 @@ export const staticResources = {
294
660
  }
295
661
  },
296
662
  pageData: {
297
- title: {
298
- en: "govcy Express Services",
663
+ title: {
664
+ en: "govcy Express Services",
299
665
  el: "govcy Express Services",
300
666
  tr: "govcy Express Services"
301
667
  },
@@ -305,10 +671,10 @@ export const staticResources = {
305
671
  },
306
672
  //renderer page template
307
673
  emptySections: {
308
- sections : []
309
- },
674
+ sections: []
675
+ },
310
676
  //all other
311
- other : {
677
+ other: {
312
678
  noPrintClass: "govcy-d-print-none"
313
679
  }
314
680
  };
@@ -368,18 +734,18 @@ export function simpleHtmlPageTemplate(title, body) {
368
734
  {
369
735
  element: "textElement",
370
736
  params: {
371
- id: "title",
372
- type: "h1",
373
- text: title
737
+ id: "title",
738
+ type: "h1",
739
+ text: title
374
740
  }
375
- },
376
- {
741
+ },
742
+ {
377
743
  element: "htmlElement",
378
744
  params: {
379
- id: "instructions",
380
- text: body
745
+ id: "instructions",
746
+ text: body
381
747
  }
382
- }
748
+ }
383
749
  ]
384
750
  }
385
751
  ]
@@ -426,13 +792,13 @@ export function constructErrorSummaryUrl(url) {
426
792
  */
427
793
  export function userNameSection(userName) {
428
794
  return {
429
- name: "userName",
795
+ name: "userName",
430
796
  elements: [
431
797
  {
432
798
  "element": "userName",
433
799
  "params": {
434
- "name":{"en":userName,"el":userName, "tr":userName}
435
- ,"signOutLink":"/logout"
800
+ "name": { "en": userName, "el": userName, "tr": userName }
801
+ , "signOutLink": "/logout"
436
802
  }
437
803
  }
438
804
  ]
@@ -446,7 +812,7 @@ export function userNameSection(userName) {
446
812
  * @param {string} lang The desired language code. For example `en`, `el`, `tr`
447
813
  * @returns {string|undefined} Localized string or empty string if nothing available.
448
814
  */
449
- export function getLocalizeContent(content,lang){
815
+ export function getLocalizeContent(content, lang) {
450
816
  if (!content || typeof content !== 'object') return "";
451
817
 
452
818
  return content[lang] || content["el"] || content["en"] || content["tr"] || "";
@@ -458,7 +824,7 @@ export function getLocalizeContent(content,lang){
458
824
  * @param {string} siteId
459
825
  * @returns The html for the submission pdf link
460
826
  */
461
- export function getSubmissionPDFLinkHtml (siteId = "") {
827
+ export function getSubmissionPDFLinkHtml(siteId = "") {
462
828
  return getMultilingualObject(
463
829
  `<p><a class="govcy-d-print-none govcy-d-flex govcy-align-items-center" href="javascript:window.print()">
464
830
  <img alt="" aria-hidden="true" src="/img/Certificate_A4.svg" style="width:30px; margin-right:10px; margin-bottom:0px;aspect-ratio: auto !important;">
@@ -485,7 +851,7 @@ export function availableServicesPageTemplate(listOfAvailableSites, lang = "el")
485
851
  // Supported languages
486
852
  const supportedLangs = ["el", "en", "tr"];
487
853
  const usedLang = supportedLangs.includes(lang) ? lang : "el";
488
-
854
+
489
855
  // Localized titles
490
856
  const titles = {
491
857
  el: "Διαθέσιμες Υπηρεσίες",
@@ -503,7 +869,7 @@ export function availableServicesPageTemplate(listOfAvailableSites, lang = "el")
503
869
  let siteLinks = "";
504
870
  if (Array.isArray(listOfAvailableSites) && listOfAvailableSites.length > 0) {
505
871
  siteLinks = `<ul>` + listOfAvailableSites.map(site =>
506
- `<li><a href="/${site.filename}">${site.title?.[usedLang] || site.filename}</a></li>`
872
+ `<li><a href="/${site.filename}">${site.title?.[usedLang] || site.filename}</a></li>`
507
873
  ).join('') + `</ul>`;
508
874
  } else {
509
875
  // No services available
@@ -513,7 +879,7 @@ export function availableServicesPageTemplate(listOfAvailableSites, lang = "el")
513
879
  tr: `<div class="govcy-warning-text"><span class="govcy-warning-text-icon" aria-hidden="true">!</span><span class="govcy-warning-text-message"><p>Şu anda mevcut hizmet yok.</span></div>`
514
880
  }[usedLang];
515
881
  }
516
-
882
+
517
883
  // Localized footer
518
884
  const footers = {
519
885
  el: `<p>Για περισσότερες υπηρεσίες επισκεφτείτε το <a href="https://gov.cy">gov.cy</a></p>`,
@@ -543,7 +909,7 @@ ${footers[lang] || footers.el}`;
543
909
  * @returns {object} The multilingual object with the text in all languages
544
910
  */
545
911
  export function getMultilingualObject(el, en, tr) {
546
- return {el: el || "", en: en || "", tr: tr || ""};
912
+ return { el: el || "", en: en || "", tr: tr || "" };
547
913
  }
548
914
 
549
915
  /**
@@ -555,7 +921,7 @@ export function getMultilingualObject(el, en, tr) {
555
921
  */
556
922
  export function getSameMultilingualObject(languages, value) {
557
923
  const obj = {};
558
- if (!Array.isArray(languages)) return {el: value, en: value, tr: value};
924
+ if (!Array.isArray(languages)) return { el: value, en: value, tr: value };
559
925
  for (const lang of languages) {
560
926
  obj[lang.code] = value || "";
561
927
  }
@@ -574,7 +940,7 @@ export function getSameMultilingualObject(languages, value) {
574
940
  * @param {string} lang The desired language code. For example `en`, `el`, `tr`
575
941
  * @returns {object} The email object with the subject, preHeader, header, username and footer in the desired language
576
942
  */
577
- export function getEmailObject( subject, preHeader, header, username, body, footer, lang) {
943
+ export function getEmailObject(subject, preHeader, header, username, body, footer, lang) {
578
944
 
579
945
  const usedLang = lang || "el";
580
946
 
@@ -583,7 +949,7 @@ export function getEmailObject( subject, preHeader, header, username, body, foot
583
949
  subject: getLocalizeContent(subject, usedLang),
584
950
  pre: getLocalizeContent(preHeader, usedLang),
585
951
  header: {
586
- serviceName: getLocalizeContent(header, usedLang),
952
+ serviceName: getLocalizeContent(header, usedLang),
587
953
  name: username || ""
588
954
  },
589
955
  body: body || [],
@@ -605,7 +971,7 @@ export function getEmailObject( subject, preHeader, header, username, body, foot
605
971
  * @param {number} count The current count of entries. If not provided, it will be set to null.
606
972
  * @returns {string} The link htmlElement govcy-frontend-renderer object
607
973
  */
608
- export function getMultipleThingsLink(linkType, siteId, pageUrl, lang , entryKey = "", route = "", linkText = "", count = null) {
974
+ export function getMultipleThingsLink(linkType, siteId, pageUrl, lang, entryKey = "", route = "", linkText = "", count = null) {
609
975
  // Generate the action part of the URL based on the linkType
610
976
  let actionPart = "";
611
977
  let linkTextString = "";
@@ -613,8 +979,8 @@ export function getMultipleThingsLink(linkType, siteId, pageUrl, lang , entryKey
613
979
  case "add":
614
980
  actionPart = `multiple/add`;
615
981
  // if linkText is not provided, use the default text from staticResources
616
- linkTextString = (linkText
617
- ? linkText
982
+ linkTextString = (linkText
983
+ ? linkText
618
984
  : staticResources.text.multipleThingsAddEntry[lang] || staticResources.text.multipleThingsAddEntry["el"]
619
985
  );
620
986
  break;
@@ -629,8 +995,8 @@ export function getMultipleThingsLink(linkType, siteId, pageUrl, lang , entryKey
629
995
  default:
630
996
  actionPart = `multiple/add`;
631
997
  // if linkText is not provided, use the default text from staticResources
632
- linkTextString = (linkText
633
- ? linkText
998
+ linkTextString = (linkText
999
+ ? linkText
634
1000
  : staticResources.text.multipleThingsAddEntry[lang] || staticResources.text.multipleThingsAddEntry["el"]
635
1001
  );
636
1002
  }