Added template to automatically generate a nice settings form from app settings

This commit is contained in:
Jan Böhmer 2024-05-10 00:03:25 +02:00
parent 3967c53468
commit 08ae313dfe
5 changed files with 180 additions and 88 deletions

172
composer.lock generated
View file

@ -8,16 +8,16 @@
"packages": [ "packages": [
{ {
"name": "api-platform/core", "name": "api-platform/core",
"version": "v3.3.0", "version": "v3.3.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/api-platform/core.git", "url": "https://github.com/api-platform/core.git",
"reference": "3b8a0068beb23acbf7a9a0da19e4b9638bf883e4" "reference": "6fa4bb7ff347a77688bf1815ea3dcb9db38a2e52"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/api-platform/core/zipball/3b8a0068beb23acbf7a9a0da19e4b9638bf883e4", "url": "https://api.github.com/repos/api-platform/core/zipball/6fa4bb7ff347a77688bf1815ea3dcb9db38a2e52",
"reference": "3b8a0068beb23acbf7a9a0da19e4b9638bf883e4", "reference": "6fa4bb7ff347a77688bf1815ea3dcb9db38a2e52",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -190,9 +190,9 @@
], ],
"support": { "support": {
"issues": "https://github.com/api-platform/core/issues", "issues": "https://github.com/api-platform/core/issues",
"source": "https://github.com/api-platform/core/tree/v3.3.0" "source": "https://github.com/api-platform/core/tree/v3.3.2"
}, },
"time": "2024-04-29T13:41:11+00:00" "time": "2024-05-03T09:37:25+00:00"
}, },
{ {
"name": "beberlei/assert", "name": "beberlei/assert",
@ -3333,12 +3333,12 @@
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/jbtronics/settings-bundle.git", "url": "https://github.com/jbtronics/settings-bundle.git",
"reference": "1b31da93057dbe826584cadf6d7ae854f780f1b5" "reference": "9ebc8947246dfc21e9955bd449786919181d7f5c"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/jbtronics/settings-bundle/zipball/1b31da93057dbe826584cadf6d7ae854f780f1b5", "url": "https://api.github.com/repos/jbtronics/settings-bundle/zipball/9ebc8947246dfc21e9955bd449786919181d7f5c",
"reference": "1b31da93057dbe826584cadf6d7ae854f780f1b5", "reference": "9ebc8947246dfc21e9955bd449786919181d7f5c",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -3411,7 +3411,7 @@
"type": "github" "type": "github"
} }
], ],
"time": "2024-05-01T20:59:46+00:00" "time": "2024-05-06T21:20:57+00:00"
}, },
{ {
"name": "jfcherng/php-color-output", "name": "jfcherng/php-color-output",
@ -6007,16 +6007,16 @@
}, },
{ {
"name": "phpstan/phpdoc-parser", "name": "phpstan/phpdoc-parser",
"version": "1.28.0", "version": "1.29.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/phpstan/phpdoc-parser.git", "url": "https://github.com/phpstan/phpdoc-parser.git",
"reference": "cd06d6b1a1b3c75b0b83f97577869fd85a3cd4fb" "reference": "536889f2b340489d328f5ffb7b02bb6b183ddedc"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/cd06d6b1a1b3c75b0b83f97577869fd85a3cd4fb", "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/536889f2b340489d328f5ffb7b02bb6b183ddedc",
"reference": "cd06d6b1a1b3c75b0b83f97577869fd85a3cd4fb", "reference": "536889f2b340489d328f5ffb7b02bb6b183ddedc",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -6048,9 +6048,9 @@
"description": "PHPDoc parser with support for nullable, intersection and generic types", "description": "PHPDoc parser with support for nullable, intersection and generic types",
"support": { "support": {
"issues": "https://github.com/phpstan/phpdoc-parser/issues", "issues": "https://github.com/phpstan/phpdoc-parser/issues",
"source": "https://github.com/phpstan/phpdoc-parser/tree/1.28.0" "source": "https://github.com/phpstan/phpdoc-parser/tree/1.29.0"
}, },
"time": "2024-04-03T18:51:33+00:00" "time": "2024-05-06T12:04:23+00:00"
}, },
{ {
"name": "psr/cache", "name": "psr/cache",
@ -7744,16 +7744,16 @@
}, },
{ {
"name": "symfony/cache-contracts", "name": "symfony/cache-contracts",
"version": "v3.4.2", "version": "v3.5.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/cache-contracts.git", "url": "https://github.com/symfony/cache-contracts.git",
"reference": "2c9db6509a1b21dad229606897639d3284f54b2a" "reference": "df6a1a44c890faded49a5fca33c2d5c5fd3c2197"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/cache-contracts/zipball/2c9db6509a1b21dad229606897639d3284f54b2a", "url": "https://api.github.com/repos/symfony/cache-contracts/zipball/df6a1a44c890faded49a5fca33c2d5c5fd3c2197",
"reference": "2c9db6509a1b21dad229606897639d3284f54b2a", "reference": "df6a1a44c890faded49a5fca33c2d5c5fd3c2197",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -7763,7 +7763,7 @@
"type": "library", "type": "library",
"extra": { "extra": {
"branch-alias": { "branch-alias": {
"dev-main": "3.4-dev" "dev-main": "3.5-dev"
}, },
"thanks": { "thanks": {
"name": "symfony/contracts", "name": "symfony/contracts",
@ -7800,7 +7800,7 @@
"standards" "standards"
], ],
"support": { "support": {
"source": "https://github.com/symfony/cache-contracts/tree/v3.4.2" "source": "https://github.com/symfony/cache-contracts/tree/v3.5.0"
}, },
"funding": [ "funding": [
{ {
@ -7816,7 +7816,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2024-01-23T14:51:35+00:00" "time": "2024-04-18T09:32:20+00:00"
}, },
{ {
"name": "symfony/clock", "name": "symfony/clock",
@ -8209,16 +8209,16 @@
}, },
{ {
"name": "symfony/deprecation-contracts", "name": "symfony/deprecation-contracts",
"version": "v3.4.0", "version": "v3.5.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/deprecation-contracts.git", "url": "https://github.com/symfony/deprecation-contracts.git",
"reference": "7c3aff79d10325257a001fcf92d991f24fc967cf" "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/7c3aff79d10325257a001fcf92d991f24fc967cf", "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1",
"reference": "7c3aff79d10325257a001fcf92d991f24fc967cf", "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -8227,7 +8227,7 @@
"type": "library", "type": "library",
"extra": { "extra": {
"branch-alias": { "branch-alias": {
"dev-main": "3.4-dev" "dev-main": "3.5-dev"
}, },
"thanks": { "thanks": {
"name": "symfony/contracts", "name": "symfony/contracts",
@ -8256,7 +8256,7 @@
"description": "A generic function and convention to trigger deprecation notices", "description": "A generic function and convention to trigger deprecation notices",
"homepage": "https://symfony.com", "homepage": "https://symfony.com",
"support": { "support": {
"source": "https://github.com/symfony/deprecation-contracts/tree/v3.4.0" "source": "https://github.com/symfony/deprecation-contracts/tree/v3.5.0"
}, },
"funding": [ "funding": [
{ {
@ -8272,7 +8272,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2023-05-23T14:45:45+00:00" "time": "2024-04-18T09:32:20+00:00"
}, },
{ {
"name": "symfony/doctrine-bridge", "name": "symfony/doctrine-bridge",
@ -8613,16 +8613,16 @@
}, },
{ {
"name": "symfony/event-dispatcher-contracts", "name": "symfony/event-dispatcher-contracts",
"version": "v3.4.2", "version": "v3.5.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/event-dispatcher-contracts.git", "url": "https://github.com/symfony/event-dispatcher-contracts.git",
"reference": "4e64b49bf370ade88e567de29465762e316e4224" "reference": "8f93aec25d41b72493c6ddff14e916177c9efc50"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/4e64b49bf370ade88e567de29465762e316e4224", "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/8f93aec25d41b72493c6ddff14e916177c9efc50",
"reference": "4e64b49bf370ade88e567de29465762e316e4224", "reference": "8f93aec25d41b72493c6ddff14e916177c9efc50",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -8632,7 +8632,7 @@
"type": "library", "type": "library",
"extra": { "extra": {
"branch-alias": { "branch-alias": {
"dev-main": "3.4-dev" "dev-main": "3.5-dev"
}, },
"thanks": { "thanks": {
"name": "symfony/contracts", "name": "symfony/contracts",
@ -8669,7 +8669,7 @@
"standards" "standards"
], ],
"support": { "support": {
"source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.4.2" "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.5.0"
}, },
"funding": [ "funding": [
{ {
@ -8685,7 +8685,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2024-01-23T14:51:35+00:00" "time": "2024-04-18T09:32:20+00:00"
}, },
{ {
"name": "symfony/expression-language", "name": "symfony/expression-language",
@ -9284,16 +9284,16 @@
}, },
{ {
"name": "symfony/http-client-contracts", "name": "symfony/http-client-contracts",
"version": "v3.4.2", "version": "v3.5.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/http-client-contracts.git", "url": "https://github.com/symfony/http-client-contracts.git",
"reference": "b6b5c876b3a4ed74460e2c5ac53bbce2f12e2a7e" "reference": "20414d96f391677bf80078aa55baece78b82647d"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/b6b5c876b3a4ed74460e2c5ac53bbce2f12e2a7e", "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/20414d96f391677bf80078aa55baece78b82647d",
"reference": "b6b5c876b3a4ed74460e2c5ac53bbce2f12e2a7e", "reference": "20414d96f391677bf80078aa55baece78b82647d",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -9302,7 +9302,7 @@
"type": "library", "type": "library",
"extra": { "extra": {
"branch-alias": { "branch-alias": {
"dev-main": "3.4-dev" "dev-main": "3.5-dev"
}, },
"thanks": { "thanks": {
"name": "symfony/contracts", "name": "symfony/contracts",
@ -9342,7 +9342,7 @@
"standards" "standards"
], ],
"support": { "support": {
"source": "https://github.com/symfony/http-client-contracts/tree/v3.4.2" "source": "https://github.com/symfony/http-client-contracts/tree/v3.5.0"
}, },
"funding": [ "funding": [
{ {
@ -9358,7 +9358,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2024-04-01T18:51:09+00:00" "time": "2024-04-18T09:32:20+00:00"
}, },
{ {
"name": "symfony/http-foundation", "name": "symfony/http-foundation",
@ -12033,21 +12033,22 @@
}, },
{ {
"name": "symfony/service-contracts", "name": "symfony/service-contracts",
"version": "v3.4.2", "version": "v3.5.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/service-contracts.git", "url": "https://github.com/symfony/service-contracts.git",
"reference": "11bbf19a0fb7b36345861e85c5768844c552906e" "reference": "bd1d9e59a81d8fa4acdcea3f617c581f7475a80f"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/service-contracts/zipball/11bbf19a0fb7b36345861e85c5768844c552906e", "url": "https://api.github.com/repos/symfony/service-contracts/zipball/bd1d9e59a81d8fa4acdcea3f617c581f7475a80f",
"reference": "11bbf19a0fb7b36345861e85c5768844c552906e", "reference": "bd1d9e59a81d8fa4acdcea3f617c581f7475a80f",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"php": ">=8.1", "php": ">=8.1",
"psr/container": "^1.1|^2.0" "psr/container": "^1.1|^2.0",
"symfony/deprecation-contracts": "^2.5|^3"
}, },
"conflict": { "conflict": {
"ext-psr": "<1.1|>=2" "ext-psr": "<1.1|>=2"
@ -12055,7 +12056,7 @@
"type": "library", "type": "library",
"extra": { "extra": {
"branch-alias": { "branch-alias": {
"dev-main": "3.4-dev" "dev-main": "3.5-dev"
}, },
"thanks": { "thanks": {
"name": "symfony/contracts", "name": "symfony/contracts",
@ -12095,7 +12096,7 @@
"standards" "standards"
], ],
"support": { "support": {
"source": "https://github.com/symfony/service-contracts/tree/v3.4.2" "source": "https://github.com/symfony/service-contracts/tree/v3.5.0"
}, },
"funding": [ "funding": [
{ {
@ -12111,7 +12112,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2023-12-19T21:51:00+00:00" "time": "2024-04-18T09:32:20+00:00"
}, },
{ {
"name": "symfony/stimulus-bundle", "name": "symfony/stimulus-bundle",
@ -12427,16 +12428,16 @@
}, },
{ {
"name": "symfony/translation-contracts", "name": "symfony/translation-contracts",
"version": "v3.4.2", "version": "v3.5.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/translation-contracts.git", "url": "https://github.com/symfony/translation-contracts.git",
"reference": "43810bdb2ddb5400e5c5e778e27b210a0ca83b6b" "reference": "b9d2189887bb6b2e0367a9fc7136c5239ab9b05a"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/translation-contracts/zipball/43810bdb2ddb5400e5c5e778e27b210a0ca83b6b", "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/b9d2189887bb6b2e0367a9fc7136c5239ab9b05a",
"reference": "43810bdb2ddb5400e5c5e778e27b210a0ca83b6b", "reference": "b9d2189887bb6b2e0367a9fc7136c5239ab9b05a",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -12445,7 +12446,7 @@
"type": "library", "type": "library",
"extra": { "extra": {
"branch-alias": { "branch-alias": {
"dev-main": "3.4-dev" "dev-main": "3.5-dev"
}, },
"thanks": { "thanks": {
"name": "symfony/contracts", "name": "symfony/contracts",
@ -12485,7 +12486,7 @@
"standards" "standards"
], ],
"support": { "support": {
"source": "https://github.com/symfony/translation-contracts/tree/v3.4.2" "source": "https://github.com/symfony/translation-contracts/tree/v3.5.0"
}, },
"funding": [ "funding": [
{ {
@ -12501,7 +12502,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2024-01-23T14:51:35+00:00" "time": "2024-04-18T09:32:20+00:00"
}, },
{ {
"name": "symfony/twig-bridge", "name": "symfony/twig-bridge",
@ -15140,16 +15141,16 @@
}, },
{ {
"name": "composer/xdebug-handler", "name": "composer/xdebug-handler",
"version": "3.0.4", "version": "3.0.5",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/composer/xdebug-handler.git", "url": "https://github.com/composer/xdebug-handler.git",
"reference": "4f988f8fdf580d53bdb2d1278fe93d1ed5462255" "reference": "6c1925561632e83d60a44492e0b344cf48ab85ef"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/composer/xdebug-handler/zipball/4f988f8fdf580d53bdb2d1278fe93d1ed5462255", "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/6c1925561632e83d60a44492e0b344cf48ab85ef",
"reference": "4f988f8fdf580d53bdb2d1278fe93d1ed5462255", "reference": "6c1925561632e83d60a44492e0b344cf48ab85ef",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -15186,7 +15187,7 @@
"support": { "support": {
"irc": "ircs://irc.libera.chat:6697/composer", "irc": "ircs://irc.libera.chat:6697/composer",
"issues": "https://github.com/composer/xdebug-handler/issues", "issues": "https://github.com/composer/xdebug-handler/issues",
"source": "https://github.com/composer/xdebug-handler/tree/3.0.4" "source": "https://github.com/composer/xdebug-handler/tree/3.0.5"
}, },
"funding": [ "funding": [
{ {
@ -15202,7 +15203,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2024-03-26T18:29:49+00:00" "time": "2024-05-06T16:37:16+00:00"
}, },
{ {
"name": "dama/doctrine-test-bundle", "name": "dama/doctrine-test-bundle",
@ -15311,16 +15312,16 @@
}, },
{ {
"name": "doctrine/doctrine-fixtures-bundle", "name": "doctrine/doctrine-fixtures-bundle",
"version": "3.5.1", "version": "3.6.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/doctrine/DoctrineFixturesBundle.git", "url": "https://github.com/doctrine/DoctrineFixturesBundle.git",
"reference": "c808a0c85c38c8ee265cc8405b456c1d2b38567d" "reference": "87f5d53708a3855aa018bf0a00d0d4b0ef58a956"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/doctrine/DoctrineFixturesBundle/zipball/c808a0c85c38c8ee265cc8405b456c1d2b38567d", "url": "https://api.github.com/repos/doctrine/DoctrineFixturesBundle/zipball/87f5d53708a3855aa018bf0a00d0d4b0ef58a956",
"reference": "c808a0c85c38c8ee265cc8405b456c1d2b38567d", "reference": "87f5d53708a3855aa018bf0a00d0d4b0ef58a956",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -15349,7 +15350,7 @@
"type": "symfony-bundle", "type": "symfony-bundle",
"autoload": { "autoload": {
"psr-4": { "psr-4": {
"Doctrine\\Bundle\\FixturesBundle\\": "" "Doctrine\\Bundle\\FixturesBundle\\": "src"
} }
}, },
"notification-url": "https://packagist.org/downloads/", "notification-url": "https://packagist.org/downloads/",
@ -15378,7 +15379,7 @@
], ],
"support": { "support": {
"issues": "https://github.com/doctrine/DoctrineFixturesBundle/issues", "issues": "https://github.com/doctrine/DoctrineFixturesBundle/issues",
"source": "https://github.com/doctrine/DoctrineFixturesBundle/tree/3.5.1" "source": "https://github.com/doctrine/DoctrineFixturesBundle/tree/3.6.0"
}, },
"funding": [ "funding": [
{ {
@ -15394,7 +15395,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2023-11-19T12:48:54+00:00" "time": "2024-05-02T18:06:53+00:00"
}, },
{ {
"name": "ekino/phpstan-banned-code", "name": "ekino/phpstan-banned-code",
@ -16695,12 +16696,12 @@
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/Roave/SecurityAdvisories.git", "url": "https://github.com/Roave/SecurityAdvisories.git",
"reference": "a6cc84fe50abd91fdbfa06fa0e7b93386aa2193c" "reference": "386924e51b2e98d13dcc88bb530807046edbda90"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/a6cc84fe50abd91fdbfa06fa0e7b93386aa2193c", "url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/386924e51b2e98d13dcc88bb530807046edbda90",
"reference": "a6cc84fe50abd91fdbfa06fa0e7b93386aa2193c", "reference": "386924e51b2e98d13dcc88bb530807046edbda90",
"shasum": "" "shasum": ""
}, },
"conflict": { "conflict": {
@ -16914,7 +16915,7 @@
"getkirby/panel": "<2.5.14", "getkirby/panel": "<2.5.14",
"getkirby/starterkit": "<=3.7.0.2", "getkirby/starterkit": "<=3.7.0.2",
"gilacms/gila": "<=1.15.4", "gilacms/gila": "<=1.15.4",
"gleez/cms": "<=1.2|==2", "gleez/cms": "<=1.3|==2",
"globalpayments/php-sdk": "<2", "globalpayments/php-sdk": "<2",
"gogentooss/samlbase": "<1.2.7", "gogentooss/samlbase": "<1.2.7",
"google/protobuf": "<3.15", "google/protobuf": "<3.15",
@ -17075,6 +17076,7 @@
"nonfiction/nterchange": "<4.1.1", "nonfiction/nterchange": "<4.1.1",
"notrinos/notrinos-erp": "<=0.7", "notrinos/notrinos-erp": "<=0.7",
"noumo/easyii": "<=0.9", "noumo/easyii": "<=0.9",
"novaksolutions/infusionsoft-php-sdk": "<1",
"nukeviet/nukeviet": "<4.5.02", "nukeviet/nukeviet": "<4.5.02",
"nyholm/psr7": "<1.6.1", "nyholm/psr7": "<1.6.1",
"nystudio107/craft-seomatic": "<3.4.12", "nystudio107/craft-seomatic": "<3.4.12",
@ -17167,7 +17169,7 @@
"processwire/processwire": "<=3.0.210", "processwire/processwire": "<=3.0.210",
"propel/propel": ">=2.0.0.0-alpha1,<=2.0.0.0-alpha7", "propel/propel": ">=2.0.0.0-alpha1,<=2.0.0.0-alpha7",
"propel/propel1": ">=1,<=1.7.1", "propel/propel1": ">=1,<=1.7.1",
"pterodactyl/panel": "<1.7", "pterodactyl/panel": "<1.11.6",
"ptheofan/yii2-statemachine": ">=2.0.0.0-RC1-dev,<=2", "ptheofan/yii2-statemachine": ">=2.0.0.0-RC1-dev,<=2",
"ptrofimov/beanstalk_console": "<1.7.14", "ptrofimov/beanstalk_console": "<1.7.14",
"pubnub/pubnub": "<6.1", "pubnub/pubnub": "<6.1",
@ -17324,7 +17326,7 @@
"topthink/thinkphp": "<=3.2.3", "topthink/thinkphp": "<=3.2.3",
"torrentpier/torrentpier": "<=2.4.1", "torrentpier/torrentpier": "<=2.4.1",
"tpwd/ke_search": "<4.0.3|>=4.1,<4.6.6|>=5,<5.0.2", "tpwd/ke_search": "<4.0.3|>=4.1,<4.6.6|>=5,<5.0.2",
"tribalsystems/zenario": "<=9.4.59197", "tribalsystems/zenario": "<9.5.60602",
"truckersmp/phpwhois": "<=4.3.1", "truckersmp/phpwhois": "<=4.3.1",
"ttskch/pagination-service-provider": "<1", "ttskch/pagination-service-provider": "<1",
"twig/twig": "<1.44.7|>=2,<2.15.3|>=3,<3.4.3", "twig/twig": "<1.44.7|>=2,<2.15.3|>=3,<3.4.3",
@ -17478,7 +17480,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2024-04-30T09:04:31+00:00" "time": "2024-05-06T15:04:21+00:00"
}, },
{ {
"name": "sebastian/cli-parser", "name": "sebastian/cli-parser",
@ -18722,16 +18724,16 @@
}, },
{ {
"name": "symfony/maker-bundle", "name": "symfony/maker-bundle",
"version": "v1.59.0", "version": "v1.59.1",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/maker-bundle.git", "url": "https://github.com/symfony/maker-bundle.git",
"reference": "1f02b59b98003b2c1f51bc8f178aee5cbf36779c" "reference": "b87b1b25c607a8a50832395bc751c784946a0350"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/maker-bundle/zipball/1f02b59b98003b2c1f51bc8f178aee5cbf36779c", "url": "https://api.github.com/repos/symfony/maker-bundle/zipball/b87b1b25c607a8a50832395bc751c784946a0350",
"reference": "1f02b59b98003b2c1f51bc8f178aee5cbf36779c", "reference": "b87b1b25c607a8a50832395bc751c784946a0350",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -18794,7 +18796,7 @@
], ],
"support": { "support": {
"issues": "https://github.com/symfony/maker-bundle/issues", "issues": "https://github.com/symfony/maker-bundle/issues",
"source": "https://github.com/symfony/maker-bundle/tree/v1.59.0" "source": "https://github.com/symfony/maker-bundle/tree/v1.59.1"
}, },
"funding": [ "funding": [
{ {
@ -18810,7 +18812,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2024-04-27T21:12:25+00:00" "time": "2024-05-06T03:59:59+00:00"
}, },
{ {
"name": "symfony/phpunit-bridge", "name": "symfony/phpunit-bridge",

View file

@ -33,6 +33,9 @@ class AppSettings
{ {
use SettingsTrait; use SettingsTrait;
#[EmbeddedSettings] #[EmbeddedSettings()]
public ?InfoProviderSettings $infoProviders = null; public ?InfoProviderSettings $infoProviders = null;
#[EmbeddedSettings()]
public ?TestSettings $test = null;
} }

View file

@ -31,7 +31,7 @@ use Symfony\Component\Form\Extension\Core\Type\CurrencyType;
use Symfony\Component\Form\Extension\Core\Type\LanguageType; use Symfony\Component\Form\Extension\Core\Type\LanguageType;
use Symfony\Component\Validator\Constraints as Assert; use Symfony\Component\Validator\Constraints as Assert;
#[Settings] #[Settings(label: "TME settings", description: "Settings for the TME API")]
class TMESettings class TMESettings
{ {
use SettingsTrait; use SettingsTrait;

View file

@ -0,0 +1,40 @@
<?php
/*
* This file is part of Part-DB (https://github.com/Part-DB/Part-DB-symfony).
*
* Copyright (C) 2019 - 2024 Jan Böhmer (https://github.com/jbtronics)
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published
* by the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
declare(strict_types=1);
namespace App\Settings;
use Jbtronics\SettingsBundle\Settings\Settings;
use Jbtronics\SettingsBundle\Settings\SettingsParameter;
#[Settings]
class TestSettings
{
#[SettingsParameter()]
public bool $bool = false;
#[SettingsParameter()]
public int $int = 0;
#[SettingsParameter()]
public float $float = 0.0;
}

View file

@ -1,7 +1,54 @@
{% extends "main_card.html.twig" %} {% extends "main_card.html.twig" %}
{% macro genId(widget) %}{{ widget.vars.full_name }}{% endmacro %}
{% block card_content %} {% block card_content %}
{{ form_start(form) }} {{ form_start(form) }}
{{ form_widget(form.infoProviders) }}
{# Tabs #}
<ul class="nav nav-tabs">
{% for tab_widget in form %}
{# Create a tab for each compound form #}
{% if tab_widget.vars.compound ?? false %}
<li class="nav-item">
<button type="button" class="nav-link {% if loop.first %}active{% endif %}" aria-current="page" data-bs-toggle="tab"
id="settings-{{ _self.genId(tab_widget) }}-tab" data-bs-target="#settings-{{ _self.genId(tab_widget) }}-pane"
>{{ (tab_widget.vars.label ?? tab_widget.vars.name|humanize)|trans }}</button>
</li>
{% endif %}
{% endfor %}
</ul>
{# Panes #}
<div class="tab-content">
{% for tab_widget in form %}
{# Create a tab for each compound form #}
{% if tab_widget.vars.compound ?? false %}
<div class="tab-pane fade pt-2 {% if loop.first %}show active{% endif %}" id="settings-{{ _self.genId(tab_widget) }}-pane">
{{ form_help(tab_widget) }}
{{ form_errors(tab_widget) }}
{% for section_widget in tab_widget %}
{% if section_widget.vars.compound ?? false %}
<fieldset>
<legend>
{{ (section_widget.vars.label ?? section_widget.vars.name|humanize)|trans }}
</legend>
{{ form_help(section_widget) }}
{{ form_errors(section_widget) }}
{{ form_widget(section_widget) }}
</fieldset>
{% if not loop.last %}
<hr class="m-0">
{% endif %}
{% else %} {# If not a compound render as normal row #}
{{ form_row(section_widget) }}
{% endif %}
{% endfor %}
</div>
{% endif %}
{% endfor %}
</div>
{{ form_end(form) }} {{ form_end(form) }}
{% endblock %} {% endblock %}