create-berna-stencil 1.0.36 → 1.0.37

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.
Files changed (177) hide show
  1. package/_tools/res/templates/template.js +18 -22
  2. package/_tools/res/templates/template.njk +8 -8
  3. package/_tools/res/templates/template.scss +16 -16
  4. package/bin/create.js +1 -1
  5. package/package.json +70 -70
  6. package/src/404.njk +2 -2
  7. package/src/api/core/composer.lock +492 -492
  8. package/src/api/core/vendor/composer/autoload_static.php +10 -10
  9. package/src/api/core/vendor/composer/installed.json +6 -6
  10. package/src/api/core/vendor/composer/installed.php +2 -2
  11. package/src/api/core/vendor/graham-campbell/result-type/LICENSE +21 -21
  12. package/src/api/core/vendor/graham-campbell/result-type/composer.json +33 -33
  13. package/src/api/core/vendor/graham-campbell/result-type/src/Error.php +121 -121
  14. package/src/api/core/vendor/graham-campbell/result-type/src/Result.php +69 -69
  15. package/src/api/core/vendor/graham-campbell/result-type/src/Success.php +120 -120
  16. package/src/api/core/vendor/phpoption/phpoption/LICENSE +200 -200
  17. package/src/api/core/vendor/phpoption/phpoption/composer.json +50 -50
  18. package/src/api/core/vendor/phpoption/phpoption/src/PhpOption/LazyOption.php +175 -175
  19. package/src/api/core/vendor/phpoption/phpoption/src/PhpOption/None.php +136 -136
  20. package/src/api/core/vendor/phpoption/phpoption/src/PhpOption/Option.php +434 -434
  21. package/src/api/core/vendor/phpoption/phpoption/src/PhpOption/Some.php +169 -169
  22. package/src/api/core/vendor/symfony/polyfill-ctype/Ctype.php +232 -232
  23. package/src/api/core/vendor/symfony/polyfill-ctype/LICENSE +19 -19
  24. package/src/api/core/vendor/symfony/polyfill-ctype/README.md +12 -12
  25. package/src/api/core/vendor/symfony/polyfill-ctype/bootstrap.php +50 -50
  26. package/src/api/core/vendor/symfony/polyfill-ctype/bootstrap80.php +46 -46
  27. package/src/api/core/vendor/symfony/polyfill-ctype/composer.json +38 -38
  28. package/src/api/core/vendor/symfony/polyfill-mbstring/LICENSE +19 -19
  29. package/src/api/core/vendor/symfony/polyfill-mbstring/Mbstring.php +1077 -1077
  30. package/src/api/core/vendor/symfony/polyfill-mbstring/README.md +13 -13
  31. package/src/api/core/vendor/symfony/polyfill-mbstring/Resources/unidata/caseFolding.php +119 -119
  32. package/src/api/core/vendor/symfony/polyfill-mbstring/Resources/unidata/lowerCase.php +1397 -1397
  33. package/src/api/core/vendor/symfony/polyfill-mbstring/Resources/unidata/titleCaseRegexp.php +5 -5
  34. package/src/api/core/vendor/symfony/polyfill-mbstring/Resources/unidata/upperCase.php +1489 -1489
  35. package/src/api/core/vendor/symfony/polyfill-mbstring/bootstrap.php +171 -171
  36. package/src/api/core/vendor/symfony/polyfill-mbstring/bootstrap80.php +167 -167
  37. package/src/api/core/vendor/symfony/polyfill-mbstring/composer.json +39 -39
  38. package/src/api/core/vendor/symfony/polyfill-php80/LICENSE +19 -19
  39. package/src/api/core/vendor/symfony/polyfill-php80/Php80.php +115 -115
  40. package/src/api/core/vendor/symfony/polyfill-php80/PhpToken.php +106 -106
  41. package/src/api/core/vendor/symfony/polyfill-php80/README.md +25 -25
  42. package/src/api/core/vendor/symfony/polyfill-php80/Resources/stubs/Attribute.php +31 -31
  43. package/src/api/core/vendor/symfony/polyfill-php80/Resources/stubs/PhpToken.php +16 -16
  44. package/src/api/core/vendor/symfony/polyfill-php80/Resources/stubs/Stringable.php +20 -20
  45. package/src/api/core/vendor/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php +16 -16
  46. package/src/api/core/vendor/symfony/polyfill-php80/Resources/stubs/ValueError.php +16 -16
  47. package/src/api/core/vendor/symfony/polyfill-php80/bootstrap.php +42 -42
  48. package/src/api/core/vendor/symfony/polyfill-php80/composer.json +37 -37
  49. package/src/api/core/vendor/vlucas/phpdotenv/LICENSE +30 -30
  50. package/src/api/core/vendor/vlucas/phpdotenv/composer.json +60 -60
  51. package/src/api/core/vendor/vlucas/phpdotenv/src/Dotenv.php +267 -267
  52. package/src/api/core/vendor/vlucas/phpdotenv/src/Exception/ExceptionInterface.php +12 -12
  53. package/src/api/core/vendor/vlucas/phpdotenv/src/Exception/InvalidEncodingException.php +12 -12
  54. package/src/api/core/vendor/vlucas/phpdotenv/src/Exception/InvalidFileException.php +12 -12
  55. package/src/api/core/vendor/vlucas/phpdotenv/src/Exception/InvalidPathException.php +12 -12
  56. package/src/api/core/vendor/vlucas/phpdotenv/src/Exception/ValidationException.php +12 -12
  57. package/src/api/core/vendor/vlucas/phpdotenv/src/Loader/Loader.php +48 -48
  58. package/src/api/core/vendor/vlucas/phpdotenv/src/Loader/LoaderInterface.php +20 -20
  59. package/src/api/core/vendor/vlucas/phpdotenv/src/Loader/Resolver.php +65 -65
  60. package/src/api/core/vendor/vlucas/phpdotenv/src/Parser/Entry.php +59 -59
  61. package/src/api/core/vendor/vlucas/phpdotenv/src/Parser/EntryParser.php +299 -299
  62. package/src/api/core/vendor/vlucas/phpdotenv/src/Parser/Lexer.php +58 -58
  63. package/src/api/core/vendor/vlucas/phpdotenv/src/Parser/Lines.php +127 -127
  64. package/src/api/core/vendor/vlucas/phpdotenv/src/Parser/Parser.php +53 -53
  65. package/src/api/core/vendor/vlucas/phpdotenv/src/Parser/ParserInterface.php +19 -19
  66. package/src/api/core/vendor/vlucas/phpdotenv/src/Parser/Value.php +88 -88
  67. package/src/api/core/vendor/vlucas/phpdotenv/src/Repository/Adapter/AdapterInterface.php +15 -15
  68. package/src/api/core/vendor/vlucas/phpdotenv/src/Repository/Adapter/ApacheAdapter.php +89 -89
  69. package/src/api/core/vendor/vlucas/phpdotenv/src/Repository/Adapter/ArrayAdapter.php +80 -80
  70. package/src/api/core/vendor/vlucas/phpdotenv/src/Repository/Adapter/EnvConstAdapter.php +88 -88
  71. package/src/api/core/vendor/vlucas/phpdotenv/src/Repository/Adapter/GuardedWriter.php +85 -85
  72. package/src/api/core/vendor/vlucas/phpdotenv/src/Repository/Adapter/ImmutableWriter.php +110 -110
  73. package/src/api/core/vendor/vlucas/phpdotenv/src/Repository/Adapter/MultiReader.php +48 -48
  74. package/src/api/core/vendor/vlucas/phpdotenv/src/Repository/Adapter/MultiWriter.php +64 -64
  75. package/src/api/core/vendor/vlucas/phpdotenv/src/Repository/Adapter/PutenvAdapter.php +91 -91
  76. package/src/api/core/vendor/vlucas/phpdotenv/src/Repository/Adapter/ReaderInterface.php +17 -17
  77. package/src/api/core/vendor/vlucas/phpdotenv/src/Repository/Adapter/ReplacingWriter.php +104 -104
  78. package/src/api/core/vendor/vlucas/phpdotenv/src/Repository/Adapter/ServerConstAdapter.php +88 -88
  79. package/src/api/core/vendor/vlucas/phpdotenv/src/Repository/Adapter/WriterInterface.php +27 -27
  80. package/src/api/core/vendor/vlucas/phpdotenv/src/Repository/AdapterRepository.php +107 -107
  81. package/src/api/core/vendor/vlucas/phpdotenv/src/Repository/RepositoryBuilder.php +272 -272
  82. package/src/api/core/vendor/vlucas/phpdotenv/src/Repository/RepositoryInterface.php +51 -51
  83. package/src/api/core/vendor/vlucas/phpdotenv/src/Store/File/Paths.php +44 -44
  84. package/src/api/core/vendor/vlucas/phpdotenv/src/Store/File/Reader.php +81 -81
  85. package/src/api/core/vendor/vlucas/phpdotenv/src/Store/FileStore.php +72 -72
  86. package/src/api/core/vendor/vlucas/phpdotenv/src/Store/StoreBuilder.php +141 -141
  87. package/src/api/core/vendor/vlucas/phpdotenv/src/Store/StoreInterface.php +17 -17
  88. package/src/api/core/vendor/vlucas/phpdotenv/src/Store/StringStore.php +37 -37
  89. package/src/api/core/vendor/vlucas/phpdotenv/src/Util/Regex.php +112 -112
  90. package/src/api/core/vendor/vlucas/phpdotenv/src/Util/Str.php +108 -108
  91. package/src/api/core/vendor/vlucas/phpdotenv/src/Validator.php +207 -207
  92. package/src/components/global/header.njk +2 -6
  93. package/src/components/welcome.njk +8 -13
  94. package/src/data/site.json +43 -43
  95. package/src/js/pages/404.js +0 -3
  96. package/src/js/pages/homepage.js +0 -6
  97. package/src/api/core/vendor/graham-campbell/result-type/.gitattributes +0 -9
  98. package/src/api/core/vendor/graham-campbell/result-type/.github/CODE_OF_CONDUCT.md +0 -132
  99. package/src/api/core/vendor/graham-campbell/result-type/.github/CONTRIBUTING.md +0 -31
  100. package/src/api/core/vendor/graham-campbell/result-type/.github/FUNDING.yml +0 -2
  101. package/src/api/core/vendor/graham-campbell/result-type/.github/SECURITY.md +0 -14
  102. package/src/api/core/vendor/graham-campbell/result-type/.github/workflows/stale.yml +0 -11
  103. package/src/api/core/vendor/graham-campbell/result-type/.github/workflows/tests.yml +0 -40
  104. package/src/api/core/vendor/graham-campbell/result-type/CHANGELOG.md +0 -53
  105. package/src/api/core/vendor/graham-campbell/result-type/README.md +0 -42
  106. package/src/api/core/vendor/graham-campbell/result-type/phpunit.xml.dist +0 -13
  107. package/src/api/core/vendor/graham-campbell/result-type/tests/ResultTest.php +0 -95
  108. package/src/api/core/vendor/phpoption/phpoption/.gitattributes +0 -13
  109. package/src/api/core/vendor/phpoption/phpoption/.github/CODE_OF_CONDUCT.md +0 -132
  110. package/src/api/core/vendor/phpoption/phpoption/.github/CONTRIBUTING.md +0 -30
  111. package/src/api/core/vendor/phpoption/phpoption/.github/FUNDING.yml +0 -2
  112. package/src/api/core/vendor/phpoption/phpoption/.github/SECURITY.md +0 -14
  113. package/src/api/core/vendor/phpoption/phpoption/.github/workflows/static.yml +0 -40
  114. package/src/api/core/vendor/phpoption/phpoption/.github/workflows/tests.yml +0 -40
  115. package/src/api/core/vendor/phpoption/phpoption/Makefile +0 -17
  116. package/src/api/core/vendor/phpoption/phpoption/README.md +0 -201
  117. package/src/api/core/vendor/phpoption/phpoption/phpstan-baseline.neon +0 -44
  118. package/src/api/core/vendor/phpoption/phpoption/phpstan.neon.dist +0 -7
  119. package/src/api/core/vendor/phpoption/phpoption/phpunit.xml.dist +0 -13
  120. package/src/api/core/vendor/phpoption/phpoption/tests/PhpOption/Tests/EnsureTest.php +0 -72
  121. package/src/api/core/vendor/phpoption/phpoption/tests/PhpOption/Tests/LazyOptionTest.php +0 -357
  122. package/src/api/core/vendor/phpoption/phpoption/tests/PhpOption/Tests/NoneTest.php +0 -153
  123. package/src/api/core/vendor/phpoption/phpoption/tests/PhpOption/Tests/OptionTest.php +0 -166
  124. package/src/api/core/vendor/phpoption/phpoption/tests/PhpOption/Tests/SomeTest.php +0 -194
  125. package/src/api/core/vendor/phpoption/phpoption/tests/bootstrap.php +0 -8
  126. package/src/api/core/vendor/phpoption/phpoption/vendor-bin/phpstan/composer.json +0 -8
  127. package/src/api/core/vendor/vlucas/phpdotenv/.editorconfig +0 -15
  128. package/src/api/core/vendor/vlucas/phpdotenv/.gitattributes +0 -15
  129. package/src/api/core/vendor/vlucas/phpdotenv/.github/CODE_OF_CONDUCT.md +0 -132
  130. package/src/api/core/vendor/vlucas/phpdotenv/.github/CONTRIBUTING.md +0 -30
  131. package/src/api/core/vendor/vlucas/phpdotenv/.github/FUNDING.yml +0 -2
  132. package/src/api/core/vendor/vlucas/phpdotenv/.github/SECURITY.md +0 -14
  133. package/src/api/core/vendor/vlucas/phpdotenv/.github/workflows/static.yml +0 -40
  134. package/src/api/core/vendor/vlucas/phpdotenv/.github/workflows/tests.yml +0 -70
  135. package/src/api/core/vendor/vlucas/phpdotenv/Makefile +0 -17
  136. package/src/api/core/vendor/vlucas/phpdotenv/README.md +0 -370
  137. package/src/api/core/vendor/vlucas/phpdotenv/UPGRADING.md +0 -196
  138. package/src/api/core/vendor/vlucas/phpdotenv/phpstan-baseline.neon +0 -157
  139. package/src/api/core/vendor/vlucas/phpdotenv/phpstan.neon.dist +0 -7
  140. package/src/api/core/vendor/vlucas/phpdotenv/phpunit.xml.dist +0 -13
  141. package/src/api/core/vendor/vlucas/phpdotenv/tests/Dotenv/DotenvTest.php +0 -387
  142. package/src/api/core/vendor/vlucas/phpdotenv/tests/Dotenv/Loader/LoaderTest.php +0 -86
  143. package/src/api/core/vendor/vlucas/phpdotenv/tests/Dotenv/Parser/EntryParserTest.php +0 -234
  144. package/src/api/core/vendor/vlucas/phpdotenv/tests/Dotenv/Parser/LexerTest.php +0 -40
  145. package/src/api/core/vendor/vlucas/phpdotenv/tests/Dotenv/Parser/LinesTest.php +0 -53
  146. package/src/api/core/vendor/vlucas/phpdotenv/tests/Dotenv/Parser/ParserTest.php +0 -98
  147. package/src/api/core/vendor/vlucas/phpdotenv/tests/Dotenv/Repository/Adapter/ArrayAdapterTest.php +0 -57
  148. package/src/api/core/vendor/vlucas/phpdotenv/tests/Dotenv/Repository/Adapter/EnvConstAdapterTest.php +0 -75
  149. package/src/api/core/vendor/vlucas/phpdotenv/tests/Dotenv/Repository/Adapter/PutenvAdapterTest.php +0 -52
  150. package/src/api/core/vendor/vlucas/phpdotenv/tests/Dotenv/Repository/Adapter/ServerConstAdapterTest.php +0 -75
  151. package/src/api/core/vendor/vlucas/phpdotenv/tests/Dotenv/Repository/RepositoryTest.php +0 -305
  152. package/src/api/core/vendor/vlucas/phpdotenv/tests/Dotenv/Store/StoreTest.php +0 -141
  153. package/src/api/core/vendor/vlucas/phpdotenv/tests/Dotenv/ValidatorTest.php +0 -479
  154. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/.env +0 -5
  155. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/assertions.env +0 -18
  156. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/booleans.env +0 -33
  157. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/commented.env +0 -15
  158. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/empty.env +0 -1
  159. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/example.env +0 -1
  160. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/exported.env +0 -7
  161. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/immutable.env +0 -1
  162. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/integers.env +0 -17
  163. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/large.env +0 -2
  164. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/multibyte.env +0 -3
  165. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/multiline.env +0 -14
  166. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/multiple.env +0 -4
  167. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/mutable.env +0 -1
  168. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/nested.env +0 -15
  169. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/quoted.env +0 -11
  170. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/specialchars.env +0 -8
  171. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/unicodevarnames.env +0 -2
  172. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/utf8-with-bom-encoding.env +0 -3
  173. package/src/api/core/vendor/vlucas/phpdotenv/tests/fixtures/env/windows.env +0 -1
  174. package/src/api/core/vendor/vlucas/phpdotenv/vendor-bin/phpstan/composer.json +0 -15
  175. package/src/data/lang.json +0 -36
  176. package/src/js/modules/forms/form.js +0 -45
  177. package/src/js/modules/langSwitcher.js +0 -69
@@ -1,2 +0,0 @@
1
- AlbertÅberg=Skybert
2
- ДатаЗакрытияРасчетногоПериода='2022-04-01T00:00'
@@ -1,3 +0,0 @@
1
- FOO=bar
2
- BAR=baz
3
- SPACED="with spaces"
@@ -1,15 +0,0 @@
1
- {
2
- "require": {
3
- "php": "^8.5",
4
- "phpstan/phpstan": "2.1.33",
5
- "phpstan/extension-installer": "1.4.3",
6
- "phpstan/phpstan-deprecation-rules": "2.0.3",
7
- "phpstan/phpstan-strict-rules": "2.0.7"
8
- },
9
- "config": {
10
- "preferred-install": "dist",
11
- "allow-plugins": {
12
- "phpstan/extension-installer": true
13
- }
14
- }
15
- }
@@ -1,36 +0,0 @@
1
- {
2
- "en": {
3
- "enLangName": "English",
4
- "itLangName": "Italian",
5
-
6
- "error404Message": "Oops! Page not found",
7
- "error404Return": "Return to homepage",
8
-
9
- "welcomeSlogan": "The framework you need, simplified",
10
-
11
- "documentationCardTitle": "Documentation",
12
- "documentatioCardParagraph": "Everything you need to get started, from setup to advanced topics and customizations",
13
- "documentationCardLink": "Go to documentation",
14
-
15
- "githubCardTitle": "Github repository",
16
- "githubCardParagraph": "Community-driven. Contributions, issues and PRs are welcome.",
17
- "githubCardLink": "Open the repository"
18
- },
19
- "it": {
20
- "enLangName": "Inglese",
21
- "itLangName": "Italiano",
22
-
23
- "error404Message": "Oops! Pagina non trovata",
24
- "error404Return": "Ritorna alla homepage",
25
-
26
- "welcomeSlogan": "Il framework di cui hai bisogno, in modo semplice",
27
-
28
- "documentationCardTitle": "Documentazione",
29
- "documentatioCardParagraph": "Tutto ciò di cui hai bisogno per iniziare, dalla configurazione agli argomenti avanzati e personalizzazioni",
30
- "documentationCardLink": "Vai alla documentazione",
31
-
32
- "githubCardTitle": "Repository Github",
33
- "githubCardParagraph": "Guidato dalla comunità. Contributi, segnalazioni e PR sono benvenuti.",
34
- "githubCardLink": "Vai alla repository"
35
- }
36
- }
@@ -1,45 +0,0 @@
1
- import { showNotification } from "../notification.js";
2
- import { langKeys, currentLang } from "../langSwitcher.js";
3
-
4
- //==========================
5
- // FORM SUBMISSION MODULE
6
- //==========================
7
-
8
- export function initFormListener() {
9
- document.querySelectorAll("form").forEach((form) => {
10
- form.addEventListener("submit", (e) => {
11
- e.preventDefault();
12
-
13
- const lang = langKeys[currentLang].forms;
14
-
15
- if (!form.checkValidity()) {
16
- form.classList.add("was-validated");
17
- showNotification(lang.formInvalidFields, "error");
18
- return;
19
- }
20
-
21
- showNotification(lang.emailSending, "info", -1);
22
- fetch("/php/sendEmail.php", {
23
- method: "POST",
24
- body: new FormData(form),
25
- })
26
- .then((response) => {
27
- return response.text();
28
- })
29
- .then((data) => {
30
- if (data.trim() === "success") {
31
- showNotification(lang.emailSuccess, "success");
32
- form.reset();
33
- form.classList.remove("was-validated");
34
- } else {
35
- console.error(data);
36
- showNotification(lang.emailError, "error");
37
- }
38
- })
39
- .catch((error) => {
40
- console.error(error);
41
- showNotification(lang.emailError, "error");
42
- });
43
- });
44
- });
45
- }
@@ -1,69 +0,0 @@
1
- //==========================
2
- // LANG-SWITCHER MODULE
3
- //==========================
4
-
5
- export let currentLang = null;
6
- export let langKeys = null;
7
-
8
- async function loadLangKeys() {
9
- if (langKeys) return langKeys;
10
- const response = await fetch("/data/lang.json");
11
- langKeys = await response.json();
12
- return langKeys;
13
- }
14
-
15
- export async function initLangSwitcher() {
16
- const data = await loadLangKeys();
17
- const availableLangs = Object.keys(data);
18
- const fallbackLang = document.documentElement.lang || availableLangs[0];
19
- const initialLang = await getInitialLang(availableLangs, fallbackLang);
20
-
21
- applyLanguage(initialLang, data);
22
-
23
- function handleLangChange(value) {
24
- localStorage.setItem("language", value);
25
- applyLanguage(value, data);
26
- }
27
-
28
- // Radio buttons
29
- document.querySelectorAll("input[type='radio'][name='lang-button']").forEach((radio) => {
30
- if (radio.value === initialLang) radio.checked = true;
31
- radio.addEventListener("change", () => handleLangChange(radio.value));
32
- });
33
-
34
- // Select
35
- document.querySelectorAll("select#lang-select").forEach((select) => {
36
- select.value = initialLang;
37
- select.addEventListener("change", () => handleLangChange(select.value));
38
- });
39
- }
40
-
41
- async function getInitialLang(availableLangs, fallbackLang) {
42
- if (localStorage.getItem("language")) return localStorage.getItem("language");
43
- const browserLang = navigator.language.slice(0, 2);
44
- return availableLangs.includes(browserLang) ? browserLang : fallbackLang;
45
- }
46
-
47
- function getNestedValue(obj, path) {
48
- return path.split('.').reduce((acc, part) => acc && acc[part], obj);
49
- }
50
-
51
- function applyLanguage(lang, data) {
52
- currentLang = lang;
53
- langKeys = data;
54
- const langData = data[lang];
55
-
56
- document.querySelectorAll("[data-lang-key]").forEach((element) => {
57
- const key = element.dataset.langKey;
58
- const value = getNestedValue(langData, key);
59
- if (value) element.textContent = value;
60
- });
61
-
62
- document.querySelectorAll("[data-lang-placeholder]").forEach((element) => {
63
- const key = element.dataset.langPlaceholder;
64
- const value = getNestedValue(langData, key);
65
- if (value) element.setAttribute("placeholder", value);
66
- });
67
-
68
- document.documentElement.lang = lang;
69
- }