diff --git a/cspell.json b/cspell.json
index ce496efd8..8c52a2b34 100644
--- a/cspell.json
+++ b/cspell.json
@@ -19,7 +19,6 @@
"Ispconfig",
"Interkassa",
"Payza",
- "Spyc",
"Hostinger",
"docusaurus",
"Laravel",
@@ -62,7 +61,6 @@
"ipcountryname",
"bbmd",
"lngh",
- "Michelf",
"loggedin",
"ERRMODE",
"Servicelicense",
diff --git a/src/composer.json b/src/composer.json
index fd65692dc..ef1273671 100644
--- a/src/composer.json
+++ b/src/composer.json
@@ -23,8 +23,6 @@
"twig/twig": "^3.3.9",
"geoip2/geoip2": "^2.10.0",
"phpmailer/phpmailer": "^6.6.5",
- "mustangostang/spyc": "^0.6.3",
- "michelf/php-markdown": "^2.0.0",
"stripe/stripe-php": "^7.92.0",
"guzzlehttp/guzzle": "^7.4.2",
"filp/whoops": "^2.14",
@@ -36,7 +34,8 @@
"nelexa/zip": "^4.0.2",
"plesk/api-php-lib": "^2.0.0",
"phpmyadmin/motranslator": "^5.3.0",
- "io-developer/php-whois": "^4.1"
+ "io-developer/php-whois": "^4.1",
+ "league/commonmark": "^2.3"
},
"require-dev": {
"phpunit/phpunit": "^9.0",
diff --git a/src/composer.lock b/src/composer.lock
index 0c4f62dc4..4c831c168 100644
--- a/src/composer.lock
+++ b/src/composer.lock
@@ -4,20 +4,20 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "eaa78c2960176b186f52732ae1155607",
+ "content-hash": "80a60a81c9b0397ea79b17c8591a2c2b",
"packages": [
{
"name": "composer/ca-bundle",
- "version": "1.3.4",
+ "version": "1.3.5",
"source": {
"type": "git",
"url": "https://github.com/composer/ca-bundle.git",
- "reference": "69098eca243998b53eed7a48d82dedd28b447cd5"
+ "reference": "74780ccf8c19d6acb8d65c5f39cd72110e132bbd"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/composer/ca-bundle/zipball/69098eca243998b53eed7a48d82dedd28b447cd5",
- "reference": "69098eca243998b53eed7a48d82dedd28b447cd5",
+ "url": "https://api.github.com/repos/composer/ca-bundle/zipball/74780ccf8c19d6acb8d65c5f39cd72110e132bbd",
+ "reference": "74780ccf8c19d6acb8d65c5f39cd72110e132bbd",
"shasum": ""
},
"require": {
@@ -64,7 +64,7 @@
"support": {
"irc": "irc://irc.freenode.org/composer",
"issues": "https://github.com/composer/ca-bundle/issues",
- "source": "https://github.com/composer/ca-bundle/tree/1.3.4"
+ "source": "https://github.com/composer/ca-bundle/tree/1.3.5"
},
"funding": [
{
@@ -80,7 +80,82 @@
"type": "tidelift"
}
],
- "time": "2022-10-12T12:08:29+00:00"
+ "time": "2023-01-11T08:27:00+00:00"
+ },
+ {
+ "name": "dflydev/dot-access-data",
+ "version": "v3.0.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/dflydev/dflydev-dot-access-data.git",
+ "reference": "f41715465d65213d644d3141a6a93081be5d3549"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/dflydev/dflydev-dot-access-data/zipball/f41715465d65213d644d3141a6a93081be5d3549",
+ "reference": "f41715465d65213d644d3141a6a93081be5d3549",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^7.1 || ^8.0"
+ },
+ "require-dev": {
+ "phpstan/phpstan": "^0.12.42",
+ "phpunit/phpunit": "^7.5 || ^8.5 || ^9.3",
+ "scrutinizer/ocular": "1.6.0",
+ "squizlabs/php_codesniffer": "^3.5",
+ "vimeo/psalm": "^4.0.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "3.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Dflydev\\DotAccessData\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Dragonfly Development Inc.",
+ "email": "info@dflydev.com",
+ "homepage": "http://dflydev.com"
+ },
+ {
+ "name": "Beau Simensen",
+ "email": "beau@dflydev.com",
+ "homepage": "http://beausimensen.com"
+ },
+ {
+ "name": "Carlos Frutos",
+ "email": "carlos@kiwing.it",
+ "homepage": "https://github.com/cfrutos"
+ },
+ {
+ "name": "Colin O'Dell",
+ "email": "colinodell@gmail.com",
+ "homepage": "https://www.colinodell.com"
+ }
+ ],
+ "description": "Given a deep data structure, access data by dot notation.",
+ "homepage": "https://github.com/dflydev/dflydev-dot-access-data",
+ "keywords": [
+ "access",
+ "data",
+ "dot",
+ "notation"
+ ],
+ "support": {
+ "issues": "https://github.com/dflydev/dflydev-dot-access-data/issues",
+ "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.2"
+ },
+ "time": "2022-10-27T11:44:00+00:00"
},
{
"name": "dompdf/dompdf",
@@ -662,6 +737,194 @@
},
"time": "2022-06-14T10:29:24+00:00"
},
+ {
+ "name": "league/commonmark",
+ "version": "2.3.8",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/thephpleague/commonmark.git",
+ "reference": "c493585c130544c4e91d2e0e131e6d35cb0cbc47"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/c493585c130544c4e91d2e0e131e6d35cb0cbc47",
+ "reference": "c493585c130544c4e91d2e0e131e6d35cb0cbc47",
+ "shasum": ""
+ },
+ "require": {
+ "ext-mbstring": "*",
+ "league/config": "^1.1.1",
+ "php": "^7.4 || ^8.0",
+ "psr/event-dispatcher": "^1.0",
+ "symfony/deprecation-contracts": "^2.1 || ^3.0",
+ "symfony/polyfill-php80": "^1.16"
+ },
+ "require-dev": {
+ "cebe/markdown": "^1.0",
+ "commonmark/cmark": "0.30.0",
+ "commonmark/commonmark.js": "0.30.0",
+ "composer/package-versions-deprecated": "^1.8",
+ "embed/embed": "^4.4",
+ "erusev/parsedown": "^1.0",
+ "ext-json": "*",
+ "github/gfm": "0.29.0",
+ "michelf/php-markdown": "^1.4 || ^2.0",
+ "nyholm/psr7": "^1.5",
+ "phpstan/phpstan": "^1.8.2",
+ "phpunit/phpunit": "^9.5.21",
+ "scrutinizer/ocular": "^1.8.1",
+ "symfony/finder": "^5.3 | ^6.0",
+ "symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0",
+ "unleashedtech/php-coding-standard": "^3.1.1",
+ "vimeo/psalm": "^4.24.0 || ^5.0.0"
+ },
+ "suggest": {
+ "symfony/yaml": "v2.3+ required if using the Front Matter extension"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "2.4-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "League\\CommonMark\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Colin O'Dell",
+ "email": "colinodell@gmail.com",
+ "homepage": "https://www.colinodell.com",
+ "role": "Lead Developer"
+ }
+ ],
+ "description": "Highly-extensible PHP Markdown parser which fully supports the CommonMark spec and GitHub-Flavored Markdown (GFM)",
+ "homepage": "https://commonmark.thephpleague.com",
+ "keywords": [
+ "commonmark",
+ "flavored",
+ "gfm",
+ "github",
+ "github-flavored",
+ "markdown",
+ "md",
+ "parser"
+ ],
+ "support": {
+ "docs": "https://commonmark.thephpleague.com/",
+ "forum": "https://github.com/thephpleague/commonmark/discussions",
+ "issues": "https://github.com/thephpleague/commonmark/issues",
+ "rss": "https://github.com/thephpleague/commonmark/releases.atom",
+ "source": "https://github.com/thephpleague/commonmark"
+ },
+ "funding": [
+ {
+ "url": "https://www.colinodell.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://www.paypal.me/colinpodell/10.00",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/colinodell",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/league/commonmark",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2022-12-10T16:02:17+00:00"
+ },
+ {
+ "name": "league/config",
+ "version": "v1.2.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/thephpleague/config.git",
+ "reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/thephpleague/config/zipball/754b3604fb2984c71f4af4a9cbe7b57f346ec1f3",
+ "reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3",
+ "shasum": ""
+ },
+ "require": {
+ "dflydev/dot-access-data": "^3.0.1",
+ "nette/schema": "^1.2",
+ "php": "^7.4 || ^8.0"
+ },
+ "require-dev": {
+ "phpstan/phpstan": "^1.8.2",
+ "phpunit/phpunit": "^9.5.5",
+ "scrutinizer/ocular": "^1.8.1",
+ "unleashedtech/php-coding-standard": "^3.1",
+ "vimeo/psalm": "^4.7.3"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "1.2-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "League\\Config\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Colin O'Dell",
+ "email": "colinodell@gmail.com",
+ "homepage": "https://www.colinodell.com",
+ "role": "Lead Developer"
+ }
+ ],
+ "description": "Define configuration arrays with strict schemas and access values with dot notation",
+ "homepage": "https://config.thephpleague.com",
+ "keywords": [
+ "array",
+ "config",
+ "configuration",
+ "dot",
+ "dot-access",
+ "nested",
+ "schema"
+ ],
+ "support": {
+ "docs": "https://config.thephpleague.com/",
+ "issues": "https://github.com/thephpleague/config/issues",
+ "rss": "https://github.com/thephpleague/config/releases.atom",
+ "source": "https://github.com/thephpleague/config"
+ },
+ "funding": [
+ {
+ "url": "https://www.colinodell.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://www.paypal.me/colinpodell/10.00",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/colinodell",
+ "type": "github"
+ }
+ ],
+ "time": "2022-12-11T20:36:23+00:00"
+ },
{
"name": "masterminds/html5",
"version": "2.7.6",
@@ -847,112 +1110,6 @@
},
"time": "2022-03-28T17:43:20+00:00"
},
- {
- "name": "michelf/php-markdown",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/michelf/php-markdown.git",
- "reference": "eb176f173fbac58a045aff78e55f833264b34e71"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/michelf/php-markdown/zipball/eb176f173fbac58a045aff78e55f833264b34e71",
- "reference": "eb176f173fbac58a045aff78e55f833264b34e71",
- "shasum": ""
- },
- "require": {
- "php": ">=7.4"
- },
- "require-dev": {
- "friendsofphp/php-cs-fixer": "^3.0",
- "phpstan/phpstan": ">=1.0",
- "phpstan/phpstan-phpunit": ">=1.0",
- "phpunit/phpunit": "^9.5"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Michelf\\": "Michelf/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Michel Fortin",
- "email": "michel.fortin@michelf.ca",
- "homepage": "https://michelf.ca/",
- "role": "Developer"
- },
- {
- "name": "John Gruber",
- "homepage": "https://daringfireball.net/"
- }
- ],
- "description": "PHP Markdown",
- "homepage": "https://michelf.ca/projects/php-markdown/",
- "keywords": [
- "markdown"
- ],
- "support": {
- "issues": "https://github.com/michelf/php-markdown/issues",
- "source": "https://github.com/michelf/php-markdown/tree/2.0.0"
- },
- "time": "2022-09-26T12:21:08+00:00"
- },
- {
- "name": "mustangostang/spyc",
- "version": "0.6.3",
- "source": {
- "type": "git",
- "url": "git@github.com:mustangostang/spyc.git",
- "reference": "4627c838b16550b666d15aeae1e5289dd5b77da0"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/mustangostang/spyc/zipball/4627c838b16550b666d15aeae1e5289dd5b77da0",
- "reference": "4627c838b16550b666d15aeae1e5289dd5b77da0",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.1"
- },
- "require-dev": {
- "phpunit/phpunit": "4.3.*@dev"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "0.5.x-dev"
- }
- },
- "autoload": {
- "files": [
- "Spyc.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "mustangostang",
- "email": "vlad.andersen@gmail.com"
- }
- ],
- "description": "A simple YAML loader/dumper class for PHP",
- "homepage": "https://github.com/mustangostang/spyc/",
- "keywords": [
- "spyc",
- "yaml",
- "yml"
- ],
- "time": "2019-09-10T13:16:29+00:00"
- },
{
"name": "nelexa/zip",
"version": "4.0.2",
@@ -1026,6 +1183,153 @@
},
"time": "2022-06-17T11:17:46+00:00"
},
+ {
+ "name": "nette/schema",
+ "version": "v1.2.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/nette/schema.git",
+ "reference": "abbdbb70e0245d5f3bf77874cea1dfb0c930d06f"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/nette/schema/zipball/abbdbb70e0245d5f3bf77874cea1dfb0c930d06f",
+ "reference": "abbdbb70e0245d5f3bf77874cea1dfb0c930d06f",
+ "shasum": ""
+ },
+ "require": {
+ "nette/utils": "^2.5.7 || ^3.1.5 || ^4.0",
+ "php": ">=7.1 <8.3"
+ },
+ "require-dev": {
+ "nette/tester": "^2.3 || ^2.4",
+ "phpstan/phpstan-nette": "^1.0",
+ "tracy/tracy": "^2.7"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.2-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause",
+ "GPL-2.0-only",
+ "GPL-3.0-only"
+ ],
+ "authors": [
+ {
+ "name": "David Grudl",
+ "homepage": "https://davidgrudl.com"
+ },
+ {
+ "name": "Nette Community",
+ "homepage": "https://nette.org/contributors"
+ }
+ ],
+ "description": "📐 Nette Schema: validating data structures against a given Schema.",
+ "homepage": "https://nette.org",
+ "keywords": [
+ "config",
+ "nette"
+ ],
+ "support": {
+ "issues": "https://github.com/nette/schema/issues",
+ "source": "https://github.com/nette/schema/tree/v1.2.3"
+ },
+ "time": "2022-10-13T01:24:26+00:00"
+ },
+ {
+ "name": "nette/utils",
+ "version": "v3.2.8",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/nette/utils.git",
+ "reference": "02a54c4c872b99e4ec05c4aec54b5a06eb0f6368"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/nette/utils/zipball/02a54c4c872b99e4ec05c4aec54b5a06eb0f6368",
+ "reference": "02a54c4c872b99e4ec05c4aec54b5a06eb0f6368",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.2 <8.3"
+ },
+ "conflict": {
+ "nette/di": "<3.0.6"
+ },
+ "require-dev": {
+ "nette/tester": "~2.0",
+ "phpstan/phpstan": "^1.0",
+ "tracy/tracy": "^2.3"
+ },
+ "suggest": {
+ "ext-gd": "to use Image",
+ "ext-iconv": "to use Strings::webalize(), toAscii(), chr() and reverse()",
+ "ext-intl": "to use Strings::webalize(), toAscii(), normalize() and compare()",
+ "ext-json": "to use Nette\\Utils\\Json",
+ "ext-mbstring": "to use Strings::lower() etc...",
+ "ext-tokenizer": "to use Nette\\Utils\\Reflection::getUseStatements()",
+ "ext-xml": "to use Strings::length() etc. when mbstring is not available"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.2-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause",
+ "GPL-2.0-only",
+ "GPL-3.0-only"
+ ],
+ "authors": [
+ {
+ "name": "David Grudl",
+ "homepage": "https://davidgrudl.com"
+ },
+ {
+ "name": "Nette Community",
+ "homepage": "https://nette.org/contributors"
+ }
+ ],
+ "description": "🛠 Nette Utils: lightweight utilities for string & array manipulation, image handling, safe JSON encoding/decoding, validation, slug or strong password generating etc.",
+ "homepage": "https://nette.org",
+ "keywords": [
+ "array",
+ "core",
+ "datetime",
+ "images",
+ "json",
+ "nette",
+ "paginator",
+ "password",
+ "slugify",
+ "string",
+ "unicode",
+ "utf-8",
+ "utility",
+ "validation"
+ ],
+ "support": {
+ "issues": "https://github.com/nette/utils/issues",
+ "source": "https://github.com/nette/utils/tree/v3.2.8"
+ },
+ "time": "2022-09-12T23:36:20+00:00"
+ },
{
"name": "phenx/php-font-lib",
"version": "0.5.4",
@@ -1466,6 +1770,56 @@
},
"time": "2021-11-05T16:47:00+00:00"
},
+ {
+ "name": "psr/event-dispatcher",
+ "version": "1.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-fig/event-dispatcher.git",
+ "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0",
+ "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.2.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Psr\\EventDispatcher\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "PHP-FIG",
+ "homepage": "http://www.php-fig.org/"
+ }
+ ],
+ "description": "Standard interfaces for event handling.",
+ "keywords": [
+ "events",
+ "psr",
+ "psr-14"
+ ],
+ "support": {
+ "issues": "https://github.com/php-fig/event-dispatcher/issues",
+ "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0"
+ },
+ "time": "2019-01-08T18:20:26+00:00"
+ },
{
"name": "psr/http-client",
"version": "1.0.1",
@@ -1835,16 +2189,16 @@
},
{
"name": "symfony/cache",
- "version": "v6.0.16",
+ "version": "v6.0.18",
"source": {
"type": "git",
"url": "https://github.com/symfony/cache.git",
- "reference": "40cd2323c219e30292c0e2520572b54310e534c6"
+ "reference": "079ec0afe323fdcd5ac1f16e3ffdb4991fb5d4c9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/cache/zipball/40cd2323c219e30292c0e2520572b54310e534c6",
- "reference": "40cd2323c219e30292c0e2520572b54310e534c6",
+ "url": "https://api.github.com/repos/symfony/cache/zipball/079ec0afe323fdcd5ac1f16e3ffdb4991fb5d4c9",
+ "reference": "079ec0afe323fdcd5ac1f16e3ffdb4991fb5d4c9",
"shasum": ""
},
"require": {
@@ -1908,7 +2262,7 @@
"psr6"
],
"support": {
- "source": "https://github.com/symfony/cache/tree/v6.0.16"
+ "source": "https://github.com/symfony/cache/tree/v6.0.18"
},
"funding": [
{
@@ -1924,7 +2278,7 @@
"type": "tidelift"
}
],
- "time": "2022-11-07T17:51:53+00:00"
+ "time": "2022-12-29T16:27:58+00:00"
},
{
"name": "symfony/cache-contracts",
@@ -2608,6 +2962,89 @@
],
"time": "2022-11-03T14:55:06+00:00"
},
+ {
+ "name": "symfony/polyfill-php80",
+ "version": "v1.27.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/polyfill-php80.git",
+ "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936",
+ "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.1"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "1.27-dev"
+ },
+ "thanks": {
+ "name": "symfony/polyfill",
+ "url": "https://github.com/symfony/polyfill"
+ }
+ },
+ "autoload": {
+ "files": [
+ "bootstrap.php"
+ ],
+ "psr-4": {
+ "Symfony\\Polyfill\\Php80\\": ""
+ },
+ "classmap": [
+ "Resources/stubs"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Ion Bazan",
+ "email": "ion.bazan@gmail.com"
+ },
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "compatibility",
+ "polyfill",
+ "portable",
+ "shim"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2022-11-03T14:55:06+00:00"
+ },
{
"name": "symfony/service-contracts",
"version": "v3.0.2",
@@ -2985,16 +3422,16 @@
},
{
"name": "symfony/var-exporter",
- "version": "v6.0.10",
+ "version": "v6.0.17",
"source": {
"type": "git",
"url": "https://github.com/symfony/var-exporter.git",
- "reference": "e3df004a8d0fb572c420a6915cd23db9254c8366"
+ "reference": "d87c15d59421d38fe5eb4f6724eb75891479e3da"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/var-exporter/zipball/e3df004a8d0fb572c420a6915cd23db9254c8366",
- "reference": "e3df004a8d0fb572c420a6915cd23db9254c8366",
+ "url": "https://api.github.com/repos/symfony/var-exporter/zipball/d87c15d59421d38fe5eb4f6724eb75891479e3da",
+ "reference": "d87c15d59421d38fe5eb4f6724eb75891479e3da",
"shasum": ""
},
"require": {
@@ -3037,7 +3474,7 @@
"serialize"
],
"support": {
- "source": "https://github.com/symfony/var-exporter/tree/v6.0.10"
+ "source": "https://github.com/symfony/var-exporter/tree/v6.0.17"
},
"funding": [
{
@@ -3053,7 +3490,7 @@
"type": "tidelift"
}
],
- "time": "2022-05-27T12:57:11+00:00"
+ "time": "2022-12-22T17:53:58+00:00"
},
{
"name": "true/punycode",
@@ -3523,30 +3960,30 @@
},
{
"name": "doctrine/instantiator",
- "version": "1.4.1",
+ "version": "1.5.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/instantiator.git",
- "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc"
+ "reference": "0a0fa9780f5d4e507415a065172d26a98d02047b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/10dcfce151b967d20fde1b34ae6640712c3891bc",
- "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc",
+ "url": "https://api.github.com/repos/doctrine/instantiator/zipball/0a0fa9780f5d4e507415a065172d26a98d02047b",
+ "reference": "0a0fa9780f5d4e507415a065172d26a98d02047b",
"shasum": ""
},
"require": {
"php": "^7.1 || ^8.0"
},
"require-dev": {
- "doctrine/coding-standard": "^9",
+ "doctrine/coding-standard": "^9 || ^11",
"ext-pdo": "*",
"ext-phar": "*",
"phpbench/phpbench": "^0.16 || ^1",
"phpstan/phpstan": "^1.4",
"phpstan/phpstan-phpunit": "^1",
"phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
- "vimeo/psalm": "^4.22"
+ "vimeo/psalm": "^4.30 || ^5.4"
},
"type": "library",
"autoload": {
@@ -3573,7 +4010,7 @@
],
"support": {
"issues": "https://github.com/doctrine/instantiator/issues",
- "source": "https://github.com/doctrine/instantiator/tree/1.4.1"
+ "source": "https://github.com/doctrine/instantiator/tree/1.5.0"
},
"funding": [
{
@@ -3589,7 +4026,7 @@
"type": "tidelift"
}
],
- "time": "2022-03-03T08:28:38+00:00"
+ "time": "2022-12-30T00:15:36+00:00"
},
{
"name": "doctrine/lexer",
@@ -4045,16 +4482,16 @@
},
{
"name": "phpunit/php-code-coverage",
- "version": "9.2.19",
+ "version": "9.2.23",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "c77b56b63e3d2031bd8997fcec43c1925ae46559"
+ "reference": "9f1f0f9a2fbb680b26d1cf9b61b6eac43a6e4e9c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/c77b56b63e3d2031bd8997fcec43c1925ae46559",
- "reference": "c77b56b63e3d2031bd8997fcec43c1925ae46559",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/9f1f0f9a2fbb680b26d1cf9b61b6eac43a6e4e9c",
+ "reference": "9f1f0f9a2fbb680b26d1cf9b61b6eac43a6e4e9c",
"shasum": ""
},
"require": {
@@ -4110,7 +4547,7 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/php-code-coverage/issues",
- "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.19"
+ "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.23"
},
"funding": [
{
@@ -4118,7 +4555,7 @@
"type": "github"
}
],
- "time": "2022-11-18T07:47:47+00:00"
+ "time": "2022-12-28T12:41:10+00:00"
},
{
"name": "phpunit/php-file-iterator",
@@ -4463,56 +4900,6 @@
],
"time": "2022-12-09T07:31:23+00:00"
},
- {
- "name": "psr/event-dispatcher",
- "version": "1.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/event-dispatcher.git",
- "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0",
- "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0",
- "shasum": ""
- },
- "require": {
- "php": ">=7.2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Psr\\EventDispatcher\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
- }
- ],
- "description": "Standard interfaces for event handling.",
- "keywords": [
- "events",
- "psr",
- "psr-14"
- ],
- "support": {
- "issues": "https://github.com/php-fig/event-dispatcher/issues",
- "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0"
- },
- "time": "2019-01-08T18:20:26+00:00"
- },
{
"name": "rector/rector",
"version": "0.15.4",
@@ -6001,89 +6388,6 @@
],
"time": "2022-11-03T14:55:06+00:00"
},
- {
- "name": "symfony/polyfill-php80",
- "version": "v1.27.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-php80.git",
- "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936",
- "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936",
- "shasum": ""
- },
- "require": {
- "php": ">=7.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "1.27-dev"
- },
- "thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
- }
- },
- "autoload": {
- "files": [
- "bootstrap.php"
- ],
- "psr-4": {
- "Symfony\\Polyfill\\Php80\\": ""
- },
- "classmap": [
- "Resources/stubs"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Ion Bazan",
- "email": "ion.bazan@gmail.com"
- },
- {
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions",
- "homepage": "https://symfony.com",
- "keywords": [
- "compatibility",
- "polyfill",
- "portable",
- "shim"
- ],
- "support": {
- "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2022-11-03T14:55:06+00:00"
- },
{
"name": "symfony/polyfill-php81",
"version": "v1.27.0",
diff --git a/src/library/Box/TwigExtensions.php b/src/library/Box/TwigExtensions.php
index 1a182fcaa..9dd852f4e 100644
--- a/src/library/Box/TwigExtensions.php
+++ b/src/library/Box/TwigExtensions.php
@@ -16,6 +16,7 @@
use Box\InjectionAwareInterface;
use Twig\Extension\AbstractExtension;
use Twig\TwigFilter;
+use League\CommonMark\GithubFlavoredMarkdownConverter;
class Box_TwigExtensions extends AbstractExtension implements InjectionAwareInterface
{
@@ -107,7 +108,7 @@ class Box_TwigExtensions extends AbstractExtension implements InjectionAwareInte
{
$locale_date_format = $this->di['config']['locale_date_format'];
$locale_time_format = $this->di['config']['locale_time_format'];
- $format = is_null($format) ? $locale_date_format.$locale_time_format : $format;
+ $format = is_null($format) ? $locale_date_format . $locale_time_format : $format;
return date($format, strtotime($time));
}
@@ -192,21 +193,21 @@ function twig_money_without_currency(Twig\Environment $env, $price, $currency =
function twig_mod_asset_url($asset, $mod)
{
- return BB_URL.'modules/'.ucfirst($mod).'/assets/'.$asset;
+ return BB_URL . 'modules/' . ucfirst($mod) . '/assets/' . $asset;
}
function twig_asset_url(Twig\Environment $env, $asset)
{
$globals = $env->getGlobals();
- return BB_URL.'themes/'.$globals['current_theme'].'/assets/'.$asset;
+ return BB_URL . 'themes/' . $globals['current_theme'] . '/assets/' . $asset;
}
function twig_library_url(Twig\Environment $env, $path)
{
$globals = $env->getGlobals();
- return BB_URL.'library/'.$path;
+ return BB_URL . 'library/' . $path;
}
function twig_img_tag($path, $alt = null)
@@ -240,7 +241,7 @@ function twig_autolink_filter($text)
$url_parts = parse_url($url);
if (!isset($url_parts['scheme'])) {
- $url = 'http://'.$url;
+ $url = 'http://' . $url;
}
return sprintf('%s', $url, $url);
@@ -268,18 +269,18 @@ function twig_timeago_filter($iso8601)
$pds = [__trans('second'), __trans('minute'), __trans('hour'), __trans('day'), __trans('week'), __trans('month'), __trans('year'), __trans('decade')];
$lngh = [1, 60, 3600, 86400, 604800, 2630880, 31570560, 315705600];
$no = 0;
-
+
for ($v = sizeof($lngh) - 1; ($v >= 0) && (($no = $dif / $lngh[$v]) <= 1); --$v) {
}
-
+
if ($v < 0) {
$v = 0;
}
-
+
$_tm = $cur_tm - ($dif % $lngh[$v]);
$no = floor($no);
-
+
if (1 != $no) {
$pds[$v] .= 's';
}
@@ -299,31 +300,19 @@ function twig_size_filter($value)
$bytes /= pow(1024, $pow);
- return round($bytes, $precision).' '.$units[$pow];
+ return round($bytes, $precision) . ' ' . $units[$pow];
}
function twig_markdown_filter(Twig\Environment $env, $value)
{
- $markdownParser = new \Michelf\MarkdownExtra();
- // Michelf Markdown version 1.7.0 and up
- $markdownParser->hard_wrap = true;
- $result = $markdownParser->transform(htmlspecialchars($value, ENT_NOQUOTES));
- $result = preg_replace_callback('/(?<=href=")(.*)(?=")/', function ($match) {
- if (!filter_var($match[0], FILTER_VALIDATE_URL)) {
- $match[0] = '#';
- }
-
- return $match[0];
- }, $result);
-
- $result = preg_replace('/(?:~~)([^~~]*)(?:~~)/', '$1', $result);
- return $result;
+ $markdownParser = new GithubFlavoredMarkdownConverter(['html_input' => 'escape', 'allow_unsafe_links' => false, 'max_nesting_level' => 50]);
+ return $markdownParser->convert($value);
}
function twig_truncate_filter(Twig\Environment $env, $value, $length = 30, $preserve = false, $separator = '...')
{
mb_internal_encoding('UTF-8');
-
+
if (mb_strlen($value) > $length) {
if ($preserve) {
if (false !== ($breakpoint = mb_strpos($value, ' ', $length))) {
@@ -331,7 +320,7 @@ function twig_truncate_filter(Twig\Environment $env, $value, $length = 30, $pres
}
}
- return mb_substr($value, 0, $length).$separator;
+ return mb_substr($value, 0, $length) . $separator;
}
return $value;
@@ -345,4 +334,4 @@ function twig_bbmd_filter(Twig\Environment $env, $value)
$value = twig_markdown_filter($env, $value);
return $value;
-}
\ No newline at end of file
+}