create-berna-stencil 2.0.15 → 2.2.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.
Files changed (193) hide show
  1. package/.eleventy.js +5 -27
  2. package/README.md +1 -1
  3. package/_tools/buildJs.js +28 -0
  4. package/_tools/cleanOutput.js +9 -13
  5. package/_tools/modules/updateOutputPath.js +36 -14
  6. package/_tools/modules/updatePage.js +31 -11
  7. package/_tools/res/templates/template.js +3 -11
  8. package/_tools/res/templates/template.ts +13 -0
  9. package/bin/create.js +161 -111
  10. package/docs/Assistant CLI.md +2 -0
  11. package/docs/Creating pages.md +2 -0
  12. package/docs/Javascript.md +30 -37
  13. package/package.json +64 -63
  14. package/src/backend/_core/index.php +10 -1
  15. package/src/backend/_core/init.php +4 -3
  16. package/src/backend/_core/modules/RateLimiter.php +31 -0
  17. package/src/backend/_core/vendor/composer/autoload_static.php +10 -10
  18. package/src/backend/_core/vendor/composer/installed.json +6 -6
  19. package/src/backend/_core/vendor/composer/installed.php +2 -2
  20. package/src/backend/_core/vendor/graham-campbell/result-type/.gitattributes +9 -0
  21. package/src/backend/_core/vendor/graham-campbell/result-type/.github/CODE_OF_CONDUCT.md +132 -0
  22. package/src/backend/_core/vendor/graham-campbell/result-type/.github/CONTRIBUTING.md +31 -0
  23. package/src/backend/_core/vendor/graham-campbell/result-type/.github/FUNDING.yml +2 -0
  24. package/src/backend/_core/vendor/graham-campbell/result-type/.github/SECURITY.md +14 -0
  25. package/src/backend/_core/vendor/graham-campbell/result-type/.github/workflows/stale.yml +11 -0
  26. package/src/backend/_core/vendor/graham-campbell/result-type/.github/workflows/tests.yml +40 -0
  27. package/src/backend/_core/vendor/graham-campbell/result-type/CHANGELOG.md +53 -0
  28. package/src/backend/_core/vendor/graham-campbell/result-type/LICENSE +21 -21
  29. package/src/backend/_core/vendor/graham-campbell/result-type/README.md +42 -0
  30. package/src/backend/_core/vendor/graham-campbell/result-type/composer.json +33 -33
  31. package/src/backend/_core/vendor/graham-campbell/result-type/phpunit.xml.dist +13 -0
  32. package/src/backend/_core/vendor/graham-campbell/result-type/src/Error.php +121 -121
  33. package/src/backend/_core/vendor/graham-campbell/result-type/src/Result.php +69 -69
  34. package/src/backend/_core/vendor/graham-campbell/result-type/src/Success.php +120 -120
  35. package/src/backend/_core/vendor/graham-campbell/result-type/tests/ResultTest.php +95 -0
  36. package/src/backend/_core/vendor/phpoption/phpoption/.gitattributes +13 -0
  37. package/src/backend/_core/vendor/phpoption/phpoption/.github/CODE_OF_CONDUCT.md +132 -0
  38. package/src/backend/_core/vendor/phpoption/phpoption/.github/CONTRIBUTING.md +30 -0
  39. package/src/backend/_core/vendor/phpoption/phpoption/.github/FUNDING.yml +2 -0
  40. package/src/backend/_core/vendor/phpoption/phpoption/.github/SECURITY.md +14 -0
  41. package/src/backend/_core/vendor/phpoption/phpoption/.github/workflows/static.yml +40 -0
  42. package/src/backend/_core/vendor/phpoption/phpoption/.github/workflows/tests.yml +40 -0
  43. package/src/backend/_core/vendor/phpoption/phpoption/LICENSE +200 -200
  44. package/src/backend/_core/vendor/phpoption/phpoption/Makefile +17 -0
  45. package/src/backend/_core/vendor/phpoption/phpoption/README.md +201 -0
  46. package/src/backend/_core/vendor/phpoption/phpoption/composer.json +50 -50
  47. package/src/backend/_core/vendor/phpoption/phpoption/phpstan-baseline.neon +44 -0
  48. package/src/backend/_core/vendor/phpoption/phpoption/phpstan.neon.dist +7 -0
  49. package/src/backend/_core/vendor/phpoption/phpoption/phpunit.xml.dist +13 -0
  50. package/src/backend/_core/vendor/phpoption/phpoption/src/PhpOption/LazyOption.php +175 -175
  51. package/src/backend/_core/vendor/phpoption/phpoption/src/PhpOption/None.php +136 -136
  52. package/src/backend/_core/vendor/phpoption/phpoption/src/PhpOption/Option.php +434 -434
  53. package/src/backend/_core/vendor/phpoption/phpoption/src/PhpOption/Some.php +169 -169
  54. package/src/backend/_core/vendor/phpoption/phpoption/tests/PhpOption/Tests/EnsureTest.php +72 -0
  55. package/src/backend/_core/vendor/phpoption/phpoption/tests/PhpOption/Tests/LazyOptionTest.php +357 -0
  56. package/src/backend/_core/vendor/phpoption/phpoption/tests/PhpOption/Tests/NoneTest.php +153 -0
  57. package/src/backend/_core/vendor/phpoption/phpoption/tests/PhpOption/Tests/OptionTest.php +166 -0
  58. package/src/backend/_core/vendor/phpoption/phpoption/tests/PhpOption/Tests/SomeTest.php +194 -0
  59. package/src/backend/_core/vendor/phpoption/phpoption/tests/bootstrap.php +8 -0
  60. package/src/backend/_core/vendor/phpoption/phpoption/vendor-bin/phpstan/composer.json +8 -0
  61. package/src/backend/_core/vendor/symfony/polyfill-ctype/Ctype.php +232 -232
  62. package/src/backend/_core/vendor/symfony/polyfill-ctype/LICENSE +19 -19
  63. package/src/backend/_core/vendor/symfony/polyfill-ctype/README.md +12 -12
  64. package/src/backend/_core/vendor/symfony/polyfill-ctype/bootstrap.php +50 -50
  65. package/src/backend/_core/vendor/symfony/polyfill-ctype/bootstrap80.php +46 -46
  66. package/src/backend/_core/vendor/symfony/polyfill-ctype/composer.json +38 -38
  67. package/src/backend/_core/vendor/symfony/polyfill-mbstring/LICENSE +19 -19
  68. package/src/backend/_core/vendor/symfony/polyfill-mbstring/Mbstring.php +1077 -1077
  69. package/src/backend/_core/vendor/symfony/polyfill-mbstring/README.md +13 -13
  70. package/src/backend/_core/vendor/symfony/polyfill-mbstring/Resources/unidata/caseFolding.php +119 -119
  71. package/src/backend/_core/vendor/symfony/polyfill-mbstring/Resources/unidata/lowerCase.php +1397 -1397
  72. package/src/backend/_core/vendor/symfony/polyfill-mbstring/Resources/unidata/titleCaseRegexp.php +5 -5
  73. package/src/backend/_core/vendor/symfony/polyfill-mbstring/Resources/unidata/upperCase.php +1489 -1489
  74. package/src/backend/_core/vendor/symfony/polyfill-mbstring/bootstrap.php +171 -171
  75. package/src/backend/_core/vendor/symfony/polyfill-mbstring/bootstrap80.php +167 -167
  76. package/src/backend/_core/vendor/symfony/polyfill-mbstring/composer.json +39 -39
  77. package/src/backend/_core/vendor/symfony/polyfill-php80/LICENSE +19 -19
  78. package/src/backend/_core/vendor/symfony/polyfill-php80/Php80.php +115 -115
  79. package/src/backend/_core/vendor/symfony/polyfill-php80/PhpToken.php +106 -106
  80. package/src/backend/_core/vendor/symfony/polyfill-php80/README.md +25 -25
  81. package/src/backend/_core/vendor/symfony/polyfill-php80/Resources/stubs/Attribute.php +31 -31
  82. package/src/backend/_core/vendor/symfony/polyfill-php80/Resources/stubs/PhpToken.php +16 -16
  83. package/src/backend/_core/vendor/symfony/polyfill-php80/Resources/stubs/Stringable.php +20 -20
  84. package/src/backend/_core/vendor/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php +16 -16
  85. package/src/backend/_core/vendor/symfony/polyfill-php80/Resources/stubs/ValueError.php +16 -16
  86. package/src/backend/_core/vendor/symfony/polyfill-php80/bootstrap.php +42 -42
  87. package/src/backend/_core/vendor/symfony/polyfill-php80/composer.json +37 -37
  88. package/src/backend/_core/vendor/vlucas/phpdotenv/.editorconfig +15 -0
  89. package/src/backend/_core/vendor/vlucas/phpdotenv/.gitattributes +15 -0
  90. package/src/backend/_core/vendor/vlucas/phpdotenv/.github/CODE_OF_CONDUCT.md +132 -0
  91. package/src/backend/_core/vendor/vlucas/phpdotenv/.github/CONTRIBUTING.md +30 -0
  92. package/src/backend/_core/vendor/vlucas/phpdotenv/.github/FUNDING.yml +2 -0
  93. package/src/backend/_core/vendor/vlucas/phpdotenv/.github/SECURITY.md +14 -0
  94. package/src/backend/_core/vendor/vlucas/phpdotenv/.github/workflows/static.yml +40 -0
  95. package/src/backend/_core/vendor/vlucas/phpdotenv/.github/workflows/tests.yml +70 -0
  96. package/src/backend/_core/vendor/vlucas/phpdotenv/LICENSE +30 -30
  97. package/src/backend/_core/vendor/vlucas/phpdotenv/Makefile +17 -0
  98. package/src/backend/_core/vendor/vlucas/phpdotenv/README.md +370 -0
  99. package/src/backend/_core/vendor/vlucas/phpdotenv/UPGRADING.md +196 -0
  100. package/src/backend/_core/vendor/vlucas/phpdotenv/composer.json +60 -60
  101. package/src/backend/_core/vendor/vlucas/phpdotenv/phpstan-baseline.neon +157 -0
  102. package/src/backend/_core/vendor/vlucas/phpdotenv/phpstan.neon.dist +7 -0
  103. package/src/backend/_core/vendor/vlucas/phpdotenv/phpunit.xml.dist +13 -0
  104. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Dotenv.php +267 -267
  105. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Exception/ExceptionInterface.php +12 -12
  106. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Exception/InvalidEncodingException.php +12 -12
  107. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Exception/InvalidFileException.php +12 -12
  108. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Exception/InvalidPathException.php +12 -12
  109. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Exception/ValidationException.php +12 -12
  110. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Loader/Loader.php +48 -48
  111. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Loader/LoaderInterface.php +20 -20
  112. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Loader/Resolver.php +65 -65
  113. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Parser/Entry.php +59 -59
  114. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Parser/EntryParser.php +299 -299
  115. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Parser/Lexer.php +58 -58
  116. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Parser/Lines.php +127 -127
  117. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Parser/Parser.php +53 -53
  118. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Parser/ParserInterface.php +19 -19
  119. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Parser/Value.php +88 -88
  120. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Repository/Adapter/AdapterInterface.php +15 -15
  121. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Repository/Adapter/ApacheAdapter.php +89 -89
  122. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Repository/Adapter/ArrayAdapter.php +80 -80
  123. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Repository/Adapter/EnvConstAdapter.php +88 -88
  124. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Repository/Adapter/GuardedWriter.php +85 -85
  125. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Repository/Adapter/ImmutableWriter.php +110 -110
  126. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Repository/Adapter/MultiReader.php +48 -48
  127. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Repository/Adapter/MultiWriter.php +64 -64
  128. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Repository/Adapter/PutenvAdapter.php +91 -91
  129. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Repository/Adapter/ReaderInterface.php +17 -17
  130. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Repository/Adapter/ReplacingWriter.php +104 -104
  131. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Repository/Adapter/ServerConstAdapter.php +88 -88
  132. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Repository/Adapter/WriterInterface.php +27 -27
  133. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Repository/AdapterRepository.php +107 -107
  134. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Repository/RepositoryBuilder.php +272 -272
  135. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Repository/RepositoryInterface.php +51 -51
  136. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Store/File/Paths.php +44 -44
  137. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Store/File/Reader.php +81 -81
  138. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Store/FileStore.php +72 -72
  139. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Store/StoreBuilder.php +141 -141
  140. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Store/StoreInterface.php +17 -17
  141. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Store/StringStore.php +37 -37
  142. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Util/Regex.php +112 -112
  143. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Util/Str.php +108 -108
  144. package/src/backend/_core/vendor/vlucas/phpdotenv/src/Validator.php +207 -207
  145. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/Dotenv/DotenvTest.php +387 -0
  146. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/Dotenv/Loader/LoaderTest.php +86 -0
  147. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/Dotenv/Parser/EntryParserTest.php +234 -0
  148. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/Dotenv/Parser/LexerTest.php +40 -0
  149. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/Dotenv/Parser/LinesTest.php +53 -0
  150. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/Dotenv/Parser/ParserTest.php +98 -0
  151. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/Dotenv/Repository/Adapter/ArrayAdapterTest.php +57 -0
  152. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/Dotenv/Repository/Adapter/EnvConstAdapterTest.php +75 -0
  153. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/Dotenv/Repository/Adapter/PutenvAdapterTest.php +52 -0
  154. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/Dotenv/Repository/Adapter/ServerConstAdapterTest.php +75 -0
  155. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/Dotenv/Repository/RepositoryTest.php +305 -0
  156. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/Dotenv/Store/StoreTest.php +141 -0
  157. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/Dotenv/ValidatorTest.php +479 -0
  158. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/.env +5 -0
  159. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/assertions.env +18 -0
  160. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/booleans.env +33 -0
  161. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/commented.env +15 -0
  162. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/empty.env +1 -0
  163. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/example.env +1 -0
  164. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/exported.env +7 -0
  165. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/immutable.env +1 -0
  166. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/integers.env +17 -0
  167. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/large.env +2 -0
  168. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/multibyte.env +3 -0
  169. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/multiline.env +14 -0
  170. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/multiple.env +4 -0
  171. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/mutable.env +1 -0
  172. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/nested.env +15 -0
  173. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/quoted.env +11 -0
  174. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/specialchars.env +8 -0
  175. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/unicodevarnames.env +2 -0
  176. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/utf8-with-bom-encoding.env +3 -0
  177. package/src/backend/_core/vendor/vlucas/phpdotenv/tests/fixtures/env/windows.env +1 -0
  178. package/src/backend/_core/vendor/vlucas/phpdotenv/vendor-bin/phpstan/composer.json +15 -0
  179. package/src/backend/api/protected/example-protected.php +1 -1
  180. package/src/backend/api/public/example-public.php +1 -1
  181. package/src/backend/config.php +19 -0
  182. package/src/backend/web.config +2 -5
  183. package/src/frontend/.htaccess +4 -1
  184. package/src/frontend/js/modules/exampleModule.js +7 -0
  185. package/src/frontend/js/pages/404.js +3 -11
  186. package/src/frontend/js/pages/homepage.js +3 -11
  187. package/src/frontend/ts/modules/exampleModule.ts +3 -0
  188. package/src/frontend/ts/pages/404.ts +13 -0
  189. package/src/frontend/ts/pages/homepage.ts +13 -0
  190. package/src/frontend/web.config +21 -30
  191. package/src/frontend/js/modules/forms/normalizePhoneNumber.js +0 -42
  192. package/src/frontend/js/modules/forms/textAreaAutoExpand.js +0 -38
  193. package/src/frontend/js/modules/notification.js +0 -39
@@ -1,88 +1,88 @@
1
- <?php
2
-
3
- declare(strict_types=1);
4
-
5
- namespace Dotenv\Parser;
6
-
7
- use Dotenv\Util\Str;
8
-
9
- final class Value
10
- {
11
- /**
12
- * The string representation of the parsed value.
13
- *
14
- * @var string
15
- */
16
- private $chars;
17
-
18
- /**
19
- * The locations of the variables in the value.
20
- *
21
- * @var int[]
22
- */
23
- private $vars;
24
-
25
- /**
26
- * Internal constructor for a value.
27
- *
28
- * @param string $chars
29
- * @param int[] $vars
30
- *
31
- * @return void
32
- */
33
- private function __construct(string $chars, array $vars)
34
- {
35
- $this->chars = $chars;
36
- $this->vars = $vars;
37
- }
38
-
39
- /**
40
- * Create an empty value instance.
41
- *
42
- * @return \Dotenv\Parser\Value
43
- */
44
- public static function blank()
45
- {
46
- return new self('', []);
47
- }
48
-
49
- /**
50
- * Create a new value instance, appending the characters.
51
- *
52
- * @param string $chars
53
- * @param bool $var
54
- *
55
- * @return \Dotenv\Parser\Value
56
- */
57
- public function append(string $chars, bool $var)
58
- {
59
- return new self(
60
- $this->chars.$chars,
61
- $var ? \array_merge($this->vars, [Str::len($this->chars)]) : $this->vars
62
- );
63
- }
64
-
65
- /**
66
- * Get the string representation of the parsed value.
67
- *
68
- * @return string
69
- */
70
- public function getChars()
71
- {
72
- return $this->chars;
73
- }
74
-
75
- /**
76
- * Get the locations of the variables in the value.
77
- *
78
- * @return int[]
79
- */
80
- public function getVars()
81
- {
82
- $vars = $this->vars;
83
-
84
- \rsort($vars);
85
-
86
- return $vars;
87
- }
88
- }
1
+ <?php
2
+
3
+ declare(strict_types=1);
4
+
5
+ namespace Dotenv\Parser;
6
+
7
+ use Dotenv\Util\Str;
8
+
9
+ final class Value
10
+ {
11
+ /**
12
+ * The string representation of the parsed value.
13
+ *
14
+ * @var string
15
+ */
16
+ private $chars;
17
+
18
+ /**
19
+ * The locations of the variables in the value.
20
+ *
21
+ * @var int[]
22
+ */
23
+ private $vars;
24
+
25
+ /**
26
+ * Internal constructor for a value.
27
+ *
28
+ * @param string $chars
29
+ * @param int[] $vars
30
+ *
31
+ * @return void
32
+ */
33
+ private function __construct(string $chars, array $vars)
34
+ {
35
+ $this->chars = $chars;
36
+ $this->vars = $vars;
37
+ }
38
+
39
+ /**
40
+ * Create an empty value instance.
41
+ *
42
+ * @return \Dotenv\Parser\Value
43
+ */
44
+ public static function blank()
45
+ {
46
+ return new self('', []);
47
+ }
48
+
49
+ /**
50
+ * Create a new value instance, appending the characters.
51
+ *
52
+ * @param string $chars
53
+ * @param bool $var
54
+ *
55
+ * @return \Dotenv\Parser\Value
56
+ */
57
+ public function append(string $chars, bool $var)
58
+ {
59
+ return new self(
60
+ $this->chars.$chars,
61
+ $var ? \array_merge($this->vars, [Str::len($this->chars)]) : $this->vars
62
+ );
63
+ }
64
+
65
+ /**
66
+ * Get the string representation of the parsed value.
67
+ *
68
+ * @return string
69
+ */
70
+ public function getChars()
71
+ {
72
+ return $this->chars;
73
+ }
74
+
75
+ /**
76
+ * Get the locations of the variables in the value.
77
+ *
78
+ * @return int[]
79
+ */
80
+ public function getVars()
81
+ {
82
+ $vars = $this->vars;
83
+
84
+ \rsort($vars);
85
+
86
+ return $vars;
87
+ }
88
+ }
@@ -1,15 +1,15 @@
1
- <?php
2
-
3
- declare(strict_types=1);
4
-
5
- namespace Dotenv\Repository\Adapter;
6
-
7
- interface AdapterInterface extends ReaderInterface, WriterInterface
8
- {
9
- /**
10
- * Create a new instance of the adapter, if it is available.
11
- *
12
- * @return \PhpOption\Option<\Dotenv\Repository\Adapter\AdapterInterface>
13
- */
14
- public static function create();
15
- }
1
+ <?php
2
+
3
+ declare(strict_types=1);
4
+
5
+ namespace Dotenv\Repository\Adapter;
6
+
7
+ interface AdapterInterface extends ReaderInterface, WriterInterface
8
+ {
9
+ /**
10
+ * Create a new instance of the adapter, if it is available.
11
+ *
12
+ * @return \PhpOption\Option<\Dotenv\Repository\Adapter\AdapterInterface>
13
+ */
14
+ public static function create();
15
+ }
@@ -1,89 +1,89 @@
1
- <?php
2
-
3
- declare(strict_types=1);
4
-
5
- namespace Dotenv\Repository\Adapter;
6
-
7
- use PhpOption\None;
8
- use PhpOption\Option;
9
- use PhpOption\Some;
10
-
11
- final class ApacheAdapter implements AdapterInterface
12
- {
13
- /**
14
- * Create a new apache adapter instance.
15
- *
16
- * @return void
17
- */
18
- private function __construct()
19
- {
20
- //
21
- }
22
-
23
- /**
24
- * Create a new instance of the adapter, if it is available.
25
- *
26
- * @return \PhpOption\Option<\Dotenv\Repository\Adapter\AdapterInterface>
27
- */
28
- public static function create()
29
- {
30
- if (self::isSupported()) {
31
- /** @var \PhpOption\Option<AdapterInterface> */
32
- return Some::create(new self());
33
- }
34
-
35
- return None::create();
36
- }
37
-
38
- /**
39
- * Determines if the adapter is supported.
40
- *
41
- * This happens if PHP is running as an Apache module.
42
- *
43
- * @return bool
44
- */
45
- private static function isSupported()
46
- {
47
- return \function_exists('apache_getenv') && \function_exists('apache_setenv');
48
- }
49
-
50
- /**
51
- * Read an environment variable, if it exists.
52
- *
53
- * @param non-empty-string $name
54
- *
55
- * @return \PhpOption\Option<string>
56
- */
57
- public function read(string $name)
58
- {
59
- /** @var \PhpOption\Option<string> */
60
- return Option::fromValue(apache_getenv($name))->filter(static function ($value) {
61
- return \is_string($value) && $value !== '';
62
- });
63
- }
64
-
65
- /**
66
- * Write to an environment variable, if possible.
67
- *
68
- * @param non-empty-string $name
69
- * @param string $value
70
- *
71
- * @return bool
72
- */
73
- public function write(string $name, string $value)
74
- {
75
- return apache_setenv($name, $value);
76
- }
77
-
78
- /**
79
- * Delete an environment variable, if possible.
80
- *
81
- * @param non-empty-string $name
82
- *
83
- * @return bool
84
- */
85
- public function delete(string $name)
86
- {
87
- return apache_setenv($name, '');
88
- }
89
- }
1
+ <?php
2
+
3
+ declare(strict_types=1);
4
+
5
+ namespace Dotenv\Repository\Adapter;
6
+
7
+ use PhpOption\None;
8
+ use PhpOption\Option;
9
+ use PhpOption\Some;
10
+
11
+ final class ApacheAdapter implements AdapterInterface
12
+ {
13
+ /**
14
+ * Create a new apache adapter instance.
15
+ *
16
+ * @return void
17
+ */
18
+ private function __construct()
19
+ {
20
+ //
21
+ }
22
+
23
+ /**
24
+ * Create a new instance of the adapter, if it is available.
25
+ *
26
+ * @return \PhpOption\Option<\Dotenv\Repository\Adapter\AdapterInterface>
27
+ */
28
+ public static function create()
29
+ {
30
+ if (self::isSupported()) {
31
+ /** @var \PhpOption\Option<AdapterInterface> */
32
+ return Some::create(new self());
33
+ }
34
+
35
+ return None::create();
36
+ }
37
+
38
+ /**
39
+ * Determines if the adapter is supported.
40
+ *
41
+ * This happens if PHP is running as an Apache module.
42
+ *
43
+ * @return bool
44
+ */
45
+ private static function isSupported()
46
+ {
47
+ return \function_exists('apache_getenv') && \function_exists('apache_setenv');
48
+ }
49
+
50
+ /**
51
+ * Read an environment variable, if it exists.
52
+ *
53
+ * @param non-empty-string $name
54
+ *
55
+ * @return \PhpOption\Option<string>
56
+ */
57
+ public function read(string $name)
58
+ {
59
+ /** @var \PhpOption\Option<string> */
60
+ return Option::fromValue(apache_getenv($name))->filter(static function ($value) {
61
+ return \is_string($value) && $value !== '';
62
+ });
63
+ }
64
+
65
+ /**
66
+ * Write to an environment variable, if possible.
67
+ *
68
+ * @param non-empty-string $name
69
+ * @param string $value
70
+ *
71
+ * @return bool
72
+ */
73
+ public function write(string $name, string $value)
74
+ {
75
+ return apache_setenv($name, $value);
76
+ }
77
+
78
+ /**
79
+ * Delete an environment variable, if possible.
80
+ *
81
+ * @param non-empty-string $name
82
+ *
83
+ * @return bool
84
+ */
85
+ public function delete(string $name)
86
+ {
87
+ return apache_setenv($name, '');
88
+ }
89
+ }
@@ -1,80 +1,80 @@
1
- <?php
2
-
3
- declare(strict_types=1);
4
-
5
- namespace Dotenv\Repository\Adapter;
6
-
7
- use PhpOption\Option;
8
- use PhpOption\Some;
9
-
10
- final class ArrayAdapter implements AdapterInterface
11
- {
12
- /**
13
- * The variables and their values.
14
- *
15
- * @var array<string, string>
16
- */
17
- private $variables;
18
-
19
- /**
20
- * Create a new array adapter instance.
21
- *
22
- * @return void
23
- */
24
- private function __construct()
25
- {
26
- $this->variables = [];
27
- }
28
-
29
- /**
30
- * Create a new instance of the adapter, if it is available.
31
- *
32
- * @return \PhpOption\Option<\Dotenv\Repository\Adapter\AdapterInterface>
33
- */
34
- public static function create()
35
- {
36
- /** @var \PhpOption\Option<AdapterInterface> */
37
- return Some::create(new self());
38
- }
39
-
40
- /**
41
- * Read an environment variable, if it exists.
42
- *
43
- * @param non-empty-string $name
44
- *
45
- * @return \PhpOption\Option<string>
46
- */
47
- public function read(string $name)
48
- {
49
- return Option::fromArraysValue($this->variables, $name);
50
- }
51
-
52
- /**
53
- * Write to an environment variable, if possible.
54
- *
55
- * @param non-empty-string $name
56
- * @param string $value
57
- *
58
- * @return bool
59
- */
60
- public function write(string $name, string $value)
61
- {
62
- $this->variables[$name] = $value;
63
-
64
- return true;
65
- }
66
-
67
- /**
68
- * Delete an environment variable, if possible.
69
- *
70
- * @param non-empty-string $name
71
- *
72
- * @return bool
73
- */
74
- public function delete(string $name)
75
- {
76
- unset($this->variables[$name]);
77
-
78
- return true;
79
- }
80
- }
1
+ <?php
2
+
3
+ declare(strict_types=1);
4
+
5
+ namespace Dotenv\Repository\Adapter;
6
+
7
+ use PhpOption\Option;
8
+ use PhpOption\Some;
9
+
10
+ final class ArrayAdapter implements AdapterInterface
11
+ {
12
+ /**
13
+ * The variables and their values.
14
+ *
15
+ * @var array<string, string>
16
+ */
17
+ private $variables;
18
+
19
+ /**
20
+ * Create a new array adapter instance.
21
+ *
22
+ * @return void
23
+ */
24
+ private function __construct()
25
+ {
26
+ $this->variables = [];
27
+ }
28
+
29
+ /**
30
+ * Create a new instance of the adapter, if it is available.
31
+ *
32
+ * @return \PhpOption\Option<\Dotenv\Repository\Adapter\AdapterInterface>
33
+ */
34
+ public static function create()
35
+ {
36
+ /** @var \PhpOption\Option<AdapterInterface> */
37
+ return Some::create(new self());
38
+ }
39
+
40
+ /**
41
+ * Read an environment variable, if it exists.
42
+ *
43
+ * @param non-empty-string $name
44
+ *
45
+ * @return \PhpOption\Option<string>
46
+ */
47
+ public function read(string $name)
48
+ {
49
+ return Option::fromArraysValue($this->variables, $name);
50
+ }
51
+
52
+ /**
53
+ * Write to an environment variable, if possible.
54
+ *
55
+ * @param non-empty-string $name
56
+ * @param string $value
57
+ *
58
+ * @return bool
59
+ */
60
+ public function write(string $name, string $value)
61
+ {
62
+ $this->variables[$name] = $value;
63
+
64
+ return true;
65
+ }
66
+
67
+ /**
68
+ * Delete an environment variable, if possible.
69
+ *
70
+ * @param non-empty-string $name
71
+ *
72
+ * @return bool
73
+ */
74
+ public function delete(string $name)
75
+ {
76
+ unset($this->variables[$name]);
77
+
78
+ return true;
79
+ }
80
+ }