Upgrade to 3.5.6

This commit is contained in:
Bastian Allgeier
2021-06-08 09:57:59 +02:00
parent fb57845df1
commit 5358f8885c
65 changed files with 506 additions and 223 deletions

View File

@@ -1,7 +1,7 @@
##
## Bundle of CA Root Certificates
##
## Certificate data from Mozilla as of: Tue Apr 13 03:12:04 2021 GMT
## Certificate data from Mozilla as of: Tue May 25 03:12:05 2021 GMT
##
## This is a bundle of X.509 certificates of public Certificate Authorities
## (CA). These were automatically extracted from Mozilla's root certificates
@@ -14,7 +14,7 @@
## Just configure this file as the SSLCACertificateFile.
##
## Conversion done with mk-ca-bundle.pl version 1.28.
## SHA256: f377673fa3c22ba2188a4cea041c7b8c99a4817ffde6821e98325ce89324e5aa
## SHA256: e292bd4e2d500c86df45b830d89417be5c42ee670408f1d2c454c63d8a782865
##
@@ -893,82 +893,6 @@ Q0iy2+tzJOeRf1SktoA+naM8THLCV8Sg1Mw4J87VBp6iSNnpn86CcDaTmjvfliHjWbcM2pE38P1Z
WrOZyGlsQyYBNWNgVYkDOnXYukrZVP/u3oDYLdE41V4tC5h9Pmzb/CaIxw==
-----END CERTIFICATE-----
Chambers of Commerce Root - 2008
================================
-----BEGIN CERTIFICATE-----
MIIHTzCCBTegAwIBAgIJAKPaQn6ksa7aMA0GCSqGSIb3DQEBBQUAMIGuMQswCQYDVQQGEwJFVTFD
MEEGA1UEBxM6TWFkcmlkIChzZWUgY3VycmVudCBhZGRyZXNzIGF0IHd3dy5jYW1lcmZpcm1hLmNv
bS9hZGRyZXNzKTESMBAGA1UEBRMJQTgyNzQzMjg3MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMu
QS4xKTAnBgNVBAMTIENoYW1iZXJzIG9mIENvbW1lcmNlIFJvb3QgLSAyMDA4MB4XDTA4MDgwMTEy
Mjk1MFoXDTM4MDczMTEyMjk1MFowga4xCzAJBgNVBAYTAkVVMUMwQQYDVQQHEzpNYWRyaWQgKHNl
ZSBjdXJyZW50IGFkZHJlc3MgYXQgd3d3LmNhbWVyZmlybWEuY29tL2FkZHJlc3MpMRIwEAYDVQQF
EwlBODI3NDMyODcxGzAZBgNVBAoTEkFDIENhbWVyZmlybWEgUy5BLjEpMCcGA1UEAxMgQ2hhbWJl
cnMgb2YgQ29tbWVyY2UgUm9vdCAtIDIwMDgwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoIC
AQCvAMtwNyuAWko6bHiUfaN/Gh/2NdW928sNRHI+JrKQUrpjOyhYb6WzbZSm891kDFX29ufyIiKA
XuFixrYp4YFs8r/lfTJqVKAyGVn+H4vXPWCGhSRv4xGzdz4gljUha7MI2XAuZPeEklPWDrCQiorj
h40G072QDuKZoRuGDtqaCrsLYVAGUvGef3bsyw/QHg3PmTA9HMRFEFis1tPo1+XqxQEHd9ZR5gN/
ikilTWh1uem8nk4ZcfUyS5xtYBkL+8ydddy/Js2Pk3g5eXNeJQ7KXOt3EgfLZEFHcpOrUMPrCXZk
NNI5t3YRCQ12RcSprj1qr7V9ZS+UWBDsXHyvfuK2GNnQm05aSd+pZgvMPMZ4fKecHePOjlO+Bd5g
D2vlGts/4+EhySnB8esHnFIbAURRPHsl18TlUlRdJQfKFiC4reRB7noI/plvg6aRArBsNlVq5331
lubKgdaX8ZSD6e2wsWsSaR6s+12pxZjptFtYer49okQ6Y1nUCyXeG0+95QGezdIp1Z8XGQpvvwyQ
0wlf2eOKNcx5Wk0ZN5K3xMGtr/R5JJqyAQuxr1yW84Ay+1w9mPGgP0revq+ULtlVmhduYJ1jbLhj
ya6BXBg14JC7vjxPNyK5fuvPnnchpj04gftI2jE9K+OJ9dC1vX7gUMQSibMjmhAxhduub+84Mxh2
EQIDAQABo4IBbDCCAWgwEgYDVR0TAQH/BAgwBgEB/wIBDDAdBgNVHQ4EFgQU+SSsD7K1+HnA+mCI
G8TZTQKeFxkwgeMGA1UdIwSB2zCB2IAU+SSsD7K1+HnA+mCIG8TZTQKeFxmhgbSkgbEwga4xCzAJ
BgNVBAYTAkVVMUMwQQYDVQQHEzpNYWRyaWQgKHNlZSBjdXJyZW50IGFkZHJlc3MgYXQgd3d3LmNh
bWVyZmlybWEuY29tL2FkZHJlc3MpMRIwEAYDVQQFEwlBODI3NDMyODcxGzAZBgNVBAoTEkFDIENh
bWVyZmlybWEgUy5BLjEpMCcGA1UEAxMgQ2hhbWJlcnMgb2YgQ29tbWVyY2UgUm9vdCAtIDIwMDiC
CQCj2kJ+pLGu2jAOBgNVHQ8BAf8EBAMCAQYwPQYDVR0gBDYwNDAyBgRVHSAAMCowKAYIKwYBBQUH
AgEWHGh0dHA6Ly9wb2xpY3kuY2FtZXJmaXJtYS5jb20wDQYJKoZIhvcNAQEFBQADggIBAJASryI1
wqM58C7e6bXpeHxIvj99RZJe6dqxGfwWPJ+0W2aeaufDuV2I6A+tzyMP3iU6XsxPpcG1Lawk0lgH
3qLPaYRgM+gQDROpI9CF5Y57pp49chNyM/WqfcZjHwj0/gF/JM8rLFQJ3uIrbZLGOU8W6jx+ekbU
RWpGqOt1glanq6B8aBMz9p0w8G8nOSQjKpD9kCk18pPfNKXG9/jvjA9iSnyu0/VU+I22mlaHFoI6
M6taIgj3grrqLuBHmrS1RaMFO9ncLkVAO+rcf+g769HsJtg1pDDFOqxXnrN2pSB7+R5KBWIBpih1
YJeSDW4+TTdDDZIVnBgizVGZoCkaPF+KMjNbMMeJL0eYD6MDxvbxrN8y8NmBGuScvfaAFPDRLLmF
9dijscilIeUcE5fuDr3fKanvNFNb0+RqE4QGtjICxFKuItLcsiFCGtpA8CnJ7AoMXOLQusxI0zcK
zBIKinmwPQN/aUv0NCB9szTqjktk9T79syNnFQ0EuPAtwQlRPLJsFfClI9eDdOTlLsn+mCdCxqvG
nrDQWzilm1DefhiYtUU79nm06PcaewaD+9CL2rvHvRirCG88gGtAPxkZumWK5r7VXNM21+9AUiRg
OGcEMeyP84LG3rlV8zsxkVrctQgVrXYlCg17LofiDKYGvCYQbTed7N14jHyAxfDZd0jQ
-----END CERTIFICATE-----
Global Chambersign Root - 2008
==============================
-----BEGIN CERTIFICATE-----
MIIHSTCCBTGgAwIBAgIJAMnN0+nVfSPOMA0GCSqGSIb3DQEBBQUAMIGsMQswCQYDVQQGEwJFVTFD
MEEGA1UEBxM6TWFkcmlkIChzZWUgY3VycmVudCBhZGRyZXNzIGF0IHd3dy5jYW1lcmZpcm1hLmNv
bS9hZGRyZXNzKTESMBAGA1UEBRMJQTgyNzQzMjg3MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMu
QS4xJzAlBgNVBAMTHkdsb2JhbCBDaGFtYmVyc2lnbiBSb290IC0gMjAwODAeFw0wODA4MDExMjMx
NDBaFw0zODA3MzExMjMxNDBaMIGsMQswCQYDVQQGEwJFVTFDMEEGA1UEBxM6TWFkcmlkIChzZWUg
Y3VycmVudCBhZGRyZXNzIGF0IHd3dy5jYW1lcmZpcm1hLmNvbS9hZGRyZXNzKTESMBAGA1UEBRMJ
QTgyNzQzMjg3MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMuQS4xJzAlBgNVBAMTHkdsb2JhbCBD
aGFtYmVyc2lnbiBSb290IC0gMjAwODCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMDf
VtPkOpt2RbQT2//BthmLN0EYlVJH6xedKYiONWwGMi5HYvNJBL99RDaxccy9Wglz1dmFRP+RVyXf
XjaOcNFccUMd2drvXNL7G706tcuto8xEpw2uIRU/uXpbknXYpBI4iRmKt4DS4jJvVpyR1ogQC7N0
ZJJ0YPP2zxhPYLIj0Mc7zmFLmY/CDNBAspjcDahOo7kKrmCgrUVSY7pmvWjg+b4aqIG7HkF4ddPB
/gBVsIdU6CeQNR1MM62X/JcumIS/LMmjv9GYERTtY/jKmIhYF5ntRQOXfjyGHoiMvvKRhI9lNNgA
TH23MRdaKXoKGCQwoze1eqkBfSbW+Q6OWfH9GzO1KTsXO0G2Id3UwD2ln58fQ1DJu7xsepeY7s2M
H/ucUa6LcL0nn3HAa6x9kGbo1106DbDVwo3VyJ2dwW3Q0L9R5OP4wzg2rtandeavhENdk5IMagfe
Ox2YItaswTXbo6Al/3K1dh3ebeksZixShNBFks4c5eUzHdwHU1SjqoI7mjcv3N2gZOnm3b2u/GSF
HTynyQbehP9r6GsaPMWis0L7iwk+XwhSx2LE1AVxv8Rk5Pihg+g+EpuoHtQ2TS9x9o0o9oOpE9Jh
wZG7SMA0j0GMS0zbaRL/UJScIINZc+18ofLx/d33SdNDWKBWY8o9PeU1VlnpDsogzCtLkykPAgMB
AAGjggFqMIIBZjASBgNVHRMBAf8ECDAGAQH/AgEMMB0GA1UdDgQWBBS5CcqcHtvTbDprru1U8VuT
BjUuXjCB4QYDVR0jBIHZMIHWgBS5CcqcHtvTbDprru1U8VuTBjUuXqGBsqSBrzCBrDELMAkGA1UE
BhMCRVUxQzBBBgNVBAcTOk1hZHJpZCAoc2VlIGN1cnJlbnQgYWRkcmVzcyBhdCB3d3cuY2FtZXJm
aXJtYS5jb20vYWRkcmVzcykxEjAQBgNVBAUTCUE4Mjc0MzI4NzEbMBkGA1UEChMSQUMgQ2FtZXJm
aXJtYSBTLkEuMScwJQYDVQQDEx5HbG9iYWwgQ2hhbWJlcnNpZ24gUm9vdCAtIDIwMDiCCQDJzdPp
1X0jzjAOBgNVHQ8BAf8EBAMCAQYwPQYDVR0gBDYwNDAyBgRVHSAAMCowKAYIKwYBBQUHAgEWHGh0
dHA6Ly9wb2xpY3kuY2FtZXJmaXJtYS5jb20wDQYJKoZIhvcNAQEFBQADggIBAICIf3DekijZBZRG
/5BXqfEv3xoNa/p8DhxJJHkn2EaqbylZUohwEurdPfWbU1Rv4WCiqAm57OtZfMY18dwY6fFn5a+6
ReAJ3spED8IXDneRRXozX1+WLGiLwUePmJs9wOzL9dWCkoQ10b42OFZyMVtHLaoXpGNR6woBrX/s
dZ7LoR/xfxKxueRkf2fWIyr0uDldmOghp+G9PUIadJpwr2hsUF1Jz//7Dl3mLEfXgTpZALVza2Mg
9jFFCDkO9HB+QHBaP9BrQql0PSgvAm11cpUJjUhjxsYjV5KTXjXBjfkK9yydYhz2rXzdpjEetrHH
foUm+qRqtdpjMNHvkzeyZi99Bffnt0uYlDXA2TopwZ2yUDMdSqlapskD7+3056huirRXhOukP9Du
qqqHW2Pok+JrqNS4cnhrG+055F3Lm6qH1U9OAP7Zap88MQ8oAgF9mOinsKJknnn4SPIVqczmyETr
P3iZ8ntxPjzxmKfFGBI/5rsoM0LpRQp8bfKGeS/Fghl9CYl8slR2iK7ewfPM4W7bMdaTrpmg7yVq
c5iJWzouE4gev8CSlDQb4ye3ix5vQv/n6TebUB0tovkC7stYWDpxvGjjqsGvHCgfotwjZT+B6q6Z
09gwzxMNTxXJhLynSC34MCN32EZLeW32jO06f2ARePTpm67VVMB0gNELQp/B
-----END CERTIFICATE-----
Go Daddy Root Certificate Authority - G2
========================================
-----BEGIN CERTIFICATE-----

View File

@@ -8,7 +8,7 @@
"core"
],
"homepage": "https://getkirby.com",
"version": "3.5.5",
"version": "3.5.6",
"license": "proprietary",
"authors": [
{
@@ -64,7 +64,7 @@
"@analyze",
"@test"
],
"fix": "php-cs-fixer fix --config .php_cs",
"fix": "php-cs-fixer fix",
"test": "phpunit --stderr --coverage-html=tests/coverage",
"zip": "composer archive --format=zip --file=dist"
},

16
kirby/composer.lock generated
View File

@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "ba5945c6fe31aba44aa33539dcc34c83",
"content-hash": "78eb32b81134b851388c57f7f3007b9f",
"packages": [
{
"name": "claviska/simpleimage",
@@ -588,16 +588,16 @@
},
{
"name": "symfony/polyfill-mbstring",
"version": "v1.22.1",
"version": "v1.23.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-mbstring.git",
"reference": "5232de97ee3b75b0360528dae24e73db49566ab1"
"reference": "2df51500adbaebdc4c38dea4c89a2e131c45c8a1"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/5232de97ee3b75b0360528dae24e73db49566ab1",
"reference": "5232de97ee3b75b0360528dae24e73db49566ab1",
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/2df51500adbaebdc4c38dea4c89a2e131c45c8a1",
"reference": "2df51500adbaebdc4c38dea4c89a2e131c45c8a1",
"shasum": ""
},
"require": {
@@ -609,7 +609,7 @@
"type": "library",
"extra": {
"branch-alias": {
"dev-main": "1.22-dev"
"dev-main": "1.23-dev"
},
"thanks": {
"name": "symfony/polyfill",
@@ -648,7 +648,7 @@
"shim"
],
"support": {
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.22.1"
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.23.0"
},
"funding": [
{
@@ -664,7 +664,7 @@
"type": "tidelift"
}
],
"time": "2021-01-22T09:19:47+00:00"
"time": "2021-05-27T09:27:20+00:00"
},
{
"name": "true/punycode",

View File

@@ -27,6 +27,13 @@ return [
'icon' => function ($icon = 'tag') {
return $icon;
},
/**
* Set to `list` to display each tag with 100% width,
* otherwise the tags are displayed inline
*/
'layout' => function (?string $layout = null) {
return $layout;
},
/**
* Minimum number of required entries/tags
*/

View File

@@ -372,9 +372,11 @@
"more": "Още",
"name": "Име",
"next": "Next",
"no": "no",
"off": "off",
"on": "on",
"open": "Отвори",
"open.newWindow": "Open in new window",
"options": "Options",
"options.none": "No options",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Select a file",
"toolbar.button.file.upload": "Upload a file",
"toolbar.button.link": "\u0412\u0440\u044a\u0437\u043a\u0430",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "Подреден списък",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "Списък",
"translation.author": "Kirby екип",
@@ -518,5 +522,6 @@
"view.users": "\u041f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u0438",
"welcome": "Добре дошли",
"year": "Year"
"year": "Year",
"yes": "yes"
}

View File

@@ -372,9 +372,11 @@
"more": "Més",
"name": "Nom",
"next": "Següent",
"no": "no",
"off": "apagat",
"on": "encès",
"open": "Obrir",
"open.newWindow": "Open in new window",
"options": "Opcions",
"options.none": "Sense opcions",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Selecciona un fitxer",
"toolbar.button.file.upload": "Carrega un fitxer",
"toolbar.button.link": "Enlla\u00e7",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "Llista ordenada",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "Llista de vinyetes",
"translation.author": "Equip Kirby",
@@ -518,5 +522,6 @@
"view.users": "Usuaris",
"welcome": "Benvinguda",
"year": "Any"
"year": "Any",
"yes": "yes"
}

View File

@@ -372,9 +372,11 @@
"more": "Více",
"name": "Jméno",
"next": "Další",
"no": "no",
"off": "vypnuto",
"on": "zapnuto",
"open": "Otevřít",
"open.newWindow": "Open in new window",
"options": "Možnosti",
"options.none": "Žádné možnosti",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Vyberte soubor",
"toolbar.button.file.upload": "Nahrajte soubor",
"toolbar.button.link": "Odkaz",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "Číslovaný seznam",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "Odrážkový seznam",
"translation.author": "Kirby tým",
@@ -518,5 +522,6 @@
"view.users": "U\u017eivatel\u00e9",
"welcome": "Vítejte",
"year": "Rok"
"year": "Rok",
"yes": "yes"
}

View File

@@ -372,9 +372,11 @@
"more": "Mere",
"name": "Navn",
"next": "Næste",
"no": "no",
"off": "Sluk",
"on": "Tænd",
"open": "Åben",
"open.newWindow": "Open in new window",
"options": "Indstillinger",
"options.none": "Ingen muligheder",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Vælg en fil",
"toolbar.button.file.upload": "Upload en fil",
"toolbar.button.link": "Link",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "Ordnet liste",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "Punktliste",
"translation.author": "Kirby Team",
@@ -518,5 +522,6 @@
"view.users": "Brugere",
"welcome": "Velkommen",
"year": "År"
"year": "År",
"yes": "yes"
}

View File

@@ -372,9 +372,11 @@
"more": "Mehr",
"name": "Name",
"next": "Nächster Eintrag",
"no": "nein",
"off": "aus",
"on": "an",
"open": "Öffnen",
"open.newWindow": "In neuem Fenster öffnen",
"options": "Optionen",
"options.none": "Keine Optionen",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Datei auswählen",
"toolbar.button.file.upload": "Datei hochladen",
"toolbar.button.link": "Link",
"toolbar.button.strike": "Durchgestrichen",
"toolbar.button.ol": "Geordnete Liste",
"toolbar.button.underline": "Unterstrichen",
"toolbar.button.ul": "Ungeordnete Liste",
"translation.author": "Kirby Team",
@@ -518,5 +522,6 @@
"view.users": "Accounts",
"welcome": "Willkommen",
"year": "Jahr"
"year": "Jahr",
"yes": "ja"
}

View File

@@ -372,9 +372,11 @@
"more": "Περισσότερα",
"name": "Ονομασία",
"next": "Επόμενο",
"no": "no",
"off": "off",
"on": "on",
"open": "Άνοιγμα",
"open.newWindow": "Open in new window",
"options": "Eπιλογές",
"options.none": "No options",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Select a file",
"toolbar.button.file.upload": "Upload a file",
"toolbar.button.link": "\u03a3\u03cd\u03bd\u03b4\u03b5\u03c3\u03bc\u03bf\u03c2",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "Ταξινομημένη λίστα",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "Λίστα κουκκίδων",
"translation.author": "Ομάδα Kirby",
@@ -518,5 +522,6 @@
"view.users": "\u03a7\u03c1\u03ae\u03c3\u03c4\u03b5\u03c2",
"welcome": "Καλώς ήρθατε",
"year": "Έτος"
"year": "Έτος",
"yes": "yes"
}

View File

@@ -372,9 +372,11 @@
"more": "More",
"name": "Name",
"next": "Next",
"no": "no",
"off": "off",
"on": "on",
"open": "Open",
"open.newWindow": "Open in new window",
"options": "Options",
"options.none": "No options",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Select a file",
"toolbar.button.file.upload": "Upload a file",
"toolbar.button.link": "Link",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "Ordered list",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "Bullet list",
"translation.author": "Kirby Team",
@@ -518,5 +522,6 @@
"view.users": "Users",
"welcome": "Welcome",
"year": "Year"
"year": "Year",
"yes": "yes"
}

View File

@@ -372,9 +372,11 @@
"more": "Màs",
"name": "Nombre",
"next": "Siguiente",
"no": "no",
"off": "Apagado",
"on": "Encendido",
"open": "Abrir",
"open.newWindow": "Open in new window",
"options": "Opciones",
"options.none": "No options",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Selecciona un archivo",
"toolbar.button.file.upload": "Sube un archivo",
"toolbar.button.link": "Enlace",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "Lista en orden",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "Lista de viñetas",
"translation.author": "Equipo Kirby",
@@ -518,5 +522,6 @@
"view.users": "Usuarios",
"welcome": "Bienvenido",
"year": "Año"
"year": "Año",
"yes": "yes"
}

View File

@@ -372,9 +372,11 @@
"more": "Más",
"name": "Nombre",
"next": "Siguiente",
"no": "no",
"off": "off",
"on": "on",
"open": "Abrir",
"open.newWindow": "Open in new window",
"options": "Opciones",
"options.none": "No options",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Seleccione un archivo",
"toolbar.button.file.upload": "Sube un archivo",
"toolbar.button.link": "Enlace",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "Lista ordenada",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "Lista de viñetas",
"translation.author": "Turqueso",
@@ -518,5 +522,6 @@
"view.users": "Usuarios",
"welcome": "Bienvenido(a)",
"year": "Año"
"year": "Año",
"yes": "yes"
}

View File

@@ -372,9 +372,11 @@
"more": "بیشتر",
"name": "نام",
"next": "بعدی",
"no": "no",
"off": "off",
"on": "on",
"open": "بازکردن",
"open.newWindow": "Open in new window",
"options": "گزینه‌ها",
"options.none": "No options",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Select a file",
"toolbar.button.file.upload": "Upload a file",
"toolbar.button.link": "\u067e\u06cc\u0648\u0646\u062f",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "لیست مرتب",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "لیست معمولی",
"translation.author": "تیم کربی",
@@ -518,5 +522,6 @@
"view.users": "\u06a9\u0627\u0631\u0628\u0631\u0627\u0646",
"welcome": "خوش آمدید",
"year": "سال"
"year": "سال",
"yes": "yes"
}

View File

@@ -372,9 +372,11 @@
"more": "Lisää",
"name": "Nimi",
"next": "Seuraava",
"no": "no",
"off": "off",
"on": "on",
"open": "Avaa",
"open.newWindow": "Open in new window",
"options": "Asetukset",
"options.none": "No options",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Valitse tiedosto",
"toolbar.button.file.upload": "Lähetä tiedosto",
"toolbar.button.link": "Linkki",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "Järjestetty lista",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "Järjestämätön lista",
"translation.author": "Kirby-tiimi",
@@ -518,5 +522,6 @@
"view.users": "K\u00e4ytt\u00e4j\u00e4t",
"welcome": "Tervetuloa",
"year": "Vuosi"
"year": "Vuosi",
"yes": "yes"
}

View File

@@ -372,9 +372,11 @@
"more": "Plus",
"name": "Nom",
"next": "Suivant",
"no": "non",
"off": "off",
"on": "on",
"open": "Ouvrir",
"open.newWindow": "Ouvrir dans une nouvelle fenêtre",
"options": "Options",
"options.none": "Pas doptions",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Sélectionner un fichier",
"toolbar.button.file.upload": "Transférer un fichier",
"toolbar.button.link": "Lien",
"toolbar.button.strike": "Barré",
"toolbar.button.ol": "Liste ordonnée",
"toolbar.button.underline": "Souligné",
"toolbar.button.ul": "Liste non-ordonnée",
"translation.author": "Kirby Team",
@@ -518,5 +522,6 @@
"view.users": "Utilisateurs",
"welcome": "Bienvenue",
"year": "Année"
"year": "Année",
"yes": "oui"
}

View File

@@ -372,9 +372,11 @@
"more": "Több",
"name": "Név",
"next": "Következő",
"no": "no",
"off": "ki",
"on": "be",
"open": "Megnyitás",
"open.newWindow": "Open in new window",
"options": "Beállítások",
"options.none": "No options",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Válassz egy fájlt",
"toolbar.button.file.upload": "Fájl feltöltése",
"toolbar.button.link": "Link",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "Rendezett lista",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "Rendezetlen lista",
"translation.author": "A Kirby csapata",
@@ -518,5 +522,6 @@
"view.users": "Felhaszn\u00e1l\u00f3k",
"welcome": "Üdvözlünk",
"year": "Év"
"year": "Év",
"yes": "yes"
}

View File

@@ -118,7 +118,7 @@
"error.page.duplicate.permission": "Anda tidak diizinkan menduplikasi \"{slug}\"",
"error.page.notFound": "Halaman \"{slug}\" tidak dapat ditemukan",
"error.page.num.invalid": "Masukkan nomor urut yang valid. Nomor tidak boleh negatif.",
"error.page.slug.invalid": "Please enter a valid URL appendix",
"error.page.slug.invalid": "Masukkan akhiran URL yang valid",
"error.page.slug.maxlength": "Panjang slug harus kurang dari \"{length}\" karakter",
"error.page.sort.permission": "Halaman \"{slug}\" tidak dapat diurutkan",
"error.page.status.invalid": "Atur status halaman yang valid",
@@ -163,7 +163,7 @@
"error.user.password.invalid": "Masukkan sandi yang valid. Sandi setidaknya mengandung 8 karakter.",
"error.user.password.notSame": "Sandi tidak cocok",
"error.user.password.undefined": "Pengguna tidak memiliki sandi",
"error.user.password.wrong": "Wrong password",
"error.user.password.wrong": "Kata sandi salah",
"error.user.role.invalid": "Masukkan peran yang valid",
"error.user.update.permission": "Anda tidak diizinkan memperbaharui pengguna \"{name}\"",
@@ -372,9 +372,11 @@
"more": "Lebih lanjut",
"name": "Nama",
"next": "Selanjutnya",
"no": "tidak",
"off": "mati",
"on": "hidup",
"open": "Buka",
"open.newWindow": "Buka di jendela baru",
"options": "Opsi",
"options.none": "Tidak ada opsi",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Pilih berkas",
"toolbar.button.file.upload": "Unggah berkas",
"toolbar.button.link": "Tautan",
"toolbar.button.strike": "Coret",
"toolbar.button.ol": "Daftar berurut",
"toolbar.button.underline": "Garis bawah",
"toolbar.button.ul": "Daftar tidak berurut",
"translation.author": "Tim Kirby",
@@ -518,5 +522,6 @@
"view.users": "Pengguna",
"welcome": "Selamat datang",
"year": "Tahun"
"year": "Tahun",
"yes": "ya"
}

View File

@@ -372,9 +372,11 @@
"more": "Di più",
"name": "Nome",
"next": "Prossimo",
"no": "no",
"off": "off",
"on": "on",
"open": "Apri",
"open.newWindow": "Open in new window",
"options": "Opzioni",
"options.none": "Nessuna opzione",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Seleziona un file",
"toolbar.button.file.upload": "Carica un file",
"toolbar.button.link": "Link",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "Elenco numerato",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "Elenco puntato",
"translation.author": "Kirby Team, Roman Steiner, Manu Moreale",
@@ -518,5 +522,6 @@
"view.users": "Utenti",
"welcome": "Benvenuto",
"year": "Anno"
"year": "Anno",
"yes": "yes"
}

View File

@@ -372,9 +372,11 @@
"more": "더 보기",
"name": "이름",
"next": "다음",
"no": "no",
"off": "끔",
"on": "켬",
"open": "열기",
"open.newWindow": "Open in new window",
"options": "옵션",
"options.none": "옵션이 없습니다.",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "파일 선택",
"toolbar.button.file.upload": "파일 업로드",
"toolbar.button.link": "링크",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "숫자 목록",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "기호 목록",
"translation.author": "Kirby 팀",
@@ -518,5 +522,6 @@
"view.users": "\uc0ac\uc6a9\uc790",
"welcome": "반갑습니다.",
"year": "년"
"year": "년",
"yes": "yes"
}

View File

@@ -372,9 +372,11 @@
"more": "Daugiau",
"name": "Pavadinimas",
"next": "Toliau",
"no": "no",
"off": "off",
"on": "on",
"open": "Atidaryti",
"open.newWindow": "Open in new window",
"options": "Pasirinkimai",
"options.none": "Nėra pasirinkimų",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Pasirinkite failą",
"toolbar.button.file.upload": "Įkelti failą",
"toolbar.button.link": "Nuoroda",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "Sąrašas su skaičiais",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "Sąrašas su taškais",
"translation.author": "Roman U",
@@ -518,5 +522,6 @@
"view.users": "Vartotojai",
"welcome": "Sveiki",
"year": "Metai"
"year": "Metai",
"yes": "yes"
}

View File

@@ -372,9 +372,11 @@
"more": "Mer",
"name": "Navn",
"next": "Neste",
"no": "no",
"off": "off",
"on": "on",
"open": "Åpne",
"open.newWindow": "Open in new window",
"options": "Alternativer",
"options.none": "No options",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Select a file",
"toolbar.button.file.upload": "Upload a file",
"toolbar.button.link": "Adresse",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "Ordnet liste",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "Punktliste",
"translation.author": "Kirby Team",
@@ -518,5 +522,6 @@
"view.users": "Brukere",
"welcome": "Velkommen",
"year": "År"
"year": "År",
"yes": "yes"
}

View File

@@ -372,9 +372,11 @@
"more": "Meer",
"name": "Naam",
"next": "Volgende",
"no": "no",
"off": "uit",
"on": "aan",
"open": "Open",
"open.newWindow": "Open in new window",
"options": "Opties",
"options.none": "Geen opties beschikbaar",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Selecteer een bestand",
"toolbar.button.file.upload": "Upload bestand",
"toolbar.button.link": "Link",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "Genummerde lijst",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "Opsomming",
"translation.author": "Het team van Kirby",
@@ -518,5 +522,6 @@
"view.users": "Gebruikers",
"welcome": "Welkom",
"year": "Jaar"
"year": "Jaar",
"yes": "yes"
}

View File

@@ -372,9 +372,11 @@
"more": "Więcej",
"name": "Nazwa",
"next": "Następne",
"no": "no",
"off": "wyłączone",
"on": "włączone",
"open": "Otwórz",
"open.newWindow": "Open in new window",
"options": "Opcje",
"options.none": "No options",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Wybierz plik",
"toolbar.button.file.upload": "Prześlij plik",
"toolbar.button.link": "Link",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "Lista numerowana",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "Lista wypunktowana",
"translation.author": "Zespół Kirby",
@@ -518,5 +522,6 @@
"view.users": "U\u017cytkownicy",
"welcome": "Witaj",
"year": "Rok"
"year": "Rok",
"yes": "yes"
}

View File

@@ -372,9 +372,11 @@
"more": "Mais",
"name": "Nome",
"next": "Próximo",
"no": "no",
"off": "off",
"on": "on",
"open": "Abrir",
"open.newWindow": "Open in new window",
"options": "Opções",
"options.none": "No options",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Select a file",
"toolbar.button.file.upload": "Upload a file",
"toolbar.button.link": "Link",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "Lista ordenada",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "Lista não-ordenada",
"translation.author": "Kirby Team",
@@ -518,5 +522,6 @@
"view.users": "Usu\u00e1rios",
"welcome": "Bem-vindo",
"year": "Ano"
"year": "Ano",
"yes": "yes"
}

View File

@@ -372,9 +372,11 @@
"more": "Mais",
"name": "Nome",
"next": "Próximo",
"no": "no",
"off": "off",
"on": "on",
"open": "Abrir",
"open.newWindow": "Open in new window",
"options": "Opções",
"options.none": "Sem opções",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Selecione o arquivo",
"toolbar.button.file.upload": "Carregue o arquivo",
"toolbar.button.link": "Link",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "Lista ordenada",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "Lista não-ordenada",
"translation.author": "Kirby Team",
@@ -518,5 +522,6 @@
"view.users": "Utilizadores",
"welcome": "Bem-vindo",
"year": "Ano"
"year": "Ano",
"yes": "yes"
}

View File

@@ -118,7 +118,7 @@
"error.page.duplicate.permission": "У вас нет права дублировать \"{slug}\"",
"error.page.notFound": "\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u0430",
"error.page.num.invalid": "Пожалуйста, впишите правильное число сортировки. Число не может быть отрицательным.",
"error.page.slug.invalid": "Please enter a valid URL appendix",
"error.page.slug.invalid": "Пожалуйста, введите правильный URL",
"error.page.slug.maxlength": "Длина ссылки (ЧПУ) должна быть короче \"{length}\" символов",
"error.page.sort.permission": "Невозможно сортировать страницу \"{slug}\"",
"error.page.status.invalid": "Пожалуйста, установите верный статус страницы",
@@ -163,7 +163,7 @@
"error.user.password.invalid": "Пожалуйста, введите правильный пароль. Он должен состоять минимум из 8 символов.",
"error.user.password.notSame": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435 \u043f\u0430\u0440\u043e\u043b\u044c",
"error.user.password.undefined": "У пользователя нет пароля",
"error.user.password.wrong": "Wrong password",
"error.user.password.wrong": "Неверный пароль",
"error.user.role.invalid": "Введите правильную роль",
"error.user.update.permission": "У вас нет права обновить пользователя \"{name}\"",
@@ -372,9 +372,11 @@
"more": "Подробнее",
"name": "Название",
"next": "Дальше",
"no": "нет",
"off": "выключено",
"on": "включено",
"open": "Открыть",
"open.newWindow": "Открывать в новом окне",
"options": "Опции",
"options.none": "Нет параметров",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Выбрать файл",
"toolbar.button.file.upload": "Закачать файл",
"toolbar.button.link": "\u0421\u0441\u044b\u043b\u043a\u0430",
"toolbar.button.strike": "Зачёркнутый",
"toolbar.button.ol": "Нумерованный список",
"toolbar.button.underline": "Подчёркнутый",
"toolbar.button.ul": "Маркированный список",
"translation.author": "Команда Kirby",
@@ -518,5 +522,6 @@
"view.users": "\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438",
"welcome": "Добро пожаловать",
"year": "Год"
"year": "Год",
"yes": "да"
}

View File

@@ -372,9 +372,11 @@
"more": "Viac",
"name": "Meno",
"next": "Ďalej",
"no": "no",
"off": "off",
"on": "on",
"open": "Otvoriť",
"open.newWindow": "Open in new window",
"options": "Nastavenia",
"options.none": "No options",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Select a file",
"toolbar.button.file.upload": "Upload a file",
"toolbar.button.link": "Odkaz",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "Číslovaný zoznam",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "Odrážkový zoznam",
"translation.author": "Tím Kirby",
@@ -518,5 +522,6 @@
"view.users": "Užívatelia",
"welcome": "Vitajte",
"year": "Rok"
"year": "Rok",
"yes": "yes"
}

View File

@@ -372,9 +372,11 @@
"more": "Mer",
"name": "Namn",
"next": "Nästa",
"no": "no",
"off": "av",
"on": "på",
"open": "Öppna",
"open.newWindow": "Open in new window",
"options": "Alternativ",
"options.none": "Inga alternativ",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Välj en fil",
"toolbar.button.file.upload": "Ladda upp en fil",
"toolbar.button.link": "L\u00e4nk",
"toolbar.button.strike": "Strike-through",
"toolbar.button.ol": "Sorterad lista",
"toolbar.button.underline": "Underline",
"toolbar.button.ul": "Punktlista",
"translation.author": "Kirby-teamet, Ola Christensson",
@@ -518,5 +522,6 @@
"view.users": "Anv\u00e4ndare",
"welcome": "Välkommen",
"year": "År"
"year": "År",
"yes": "yes"
}

View File

@@ -263,7 +263,7 @@
"field.structure.empty": "Hen\u00fcz bir girdi yok",
"field.users.empty": "Henüz kullanıcı seçilmedi",
"file.blueprint": "Bu dosyanın henüz bir planı yok. Kurulumu <strong>/site/blueprints/{template}.yml</strong>'de tanımlayabilirsiniz.",
"file.blueprint": "Bu dosyanın henüz bir planı yok. Kurulumu <strong>/site/blueprints/file/{template}.yml</strong>'de tanımlayabilirsiniz.",
"file.delete.confirm": "<strong>{filename}</strong> dosyasını silmek istediğinizden emin misiniz?",
"file.sort": "Pozisyon değiştir",
@@ -372,9 +372,11 @@
"more": "Daha Fazla",
"name": "İsim",
"next": "Sonraki",
"no": "hayır",
"off": "kapalı",
"on": "açık",
"open": "Önizleme",
"open.newWindow": "Yeni pencerede aç",
"options": "Seçenekler",
"options.none": "Seçenek yok",
@@ -466,7 +468,9 @@
"toolbar.button.file.select": "Bir dosya seçin",
"toolbar.button.file.upload": "Bir dosya yükleyin",
"toolbar.button.link": "Ba\u011flant\u0131",
"toolbar.button.strike": "Üstü çizili",
"toolbar.button.ol": "Sıralı liste",
"toolbar.button.underline": "Altı çizili",
"toolbar.button.ul": "Madde listesi",
"translation.author": "Kirby Takımı",
@@ -518,5 +522,6 @@
"view.users": "Kullan\u0131c\u0131lar",
"welcome": "Hoşgeldiniz",
"year": "Yıl"
"year": "Yıl",
"yes": "evet"
}

File diff suppressed because one or more lines are too long

View File

@@ -82,6 +82,7 @@ class Auth
/**
* Creates an authentication challenge
* (one-time auth code)
* @since 3.5.0
*
* @param string $email
* @param bool $long If `true`, a long session will be created
@@ -284,6 +285,7 @@ class Auth
/**
* Returns the list of enabled challenges in the
* configured order
* @since 3.5.1
*
* @return array
*/
@@ -406,6 +408,7 @@ class Auth
/**
* Login a user by email, password and auth challenge
* @since 3.5.0
*
* @param string $email
* @param string $password
@@ -442,6 +445,7 @@ class Auth
/**
* Returns the authentication status object
* @since 3.5.1
*
* @param \Kirby\Session\Session|array|null $session
* @param bool $allowImpersonation If set to false, only the actually
@@ -760,6 +764,7 @@ class Auth
* Verifies an authentication code that was
* requested with the `createChallenge()` method;
* if successful, the user is automatically logged in
* @since 3.5.0
*
* @param string $code User-provided auth code to verify
* @return \Kirby\Cms\User User object of the logged-in user

View File

@@ -9,6 +9,7 @@ use Kirby\Toolkit\Properties;
/**
* Information container for the
* authentication status
* @since 3.5.1
*
* @package Kirby Cms
* @author Lukas Bestle <lukas@getkirby.com>

View File

@@ -10,6 +10,7 @@ use Throwable;
* Represents a single block
* which can be inspected further or
* converted to HTML
* @since 3.5.0
*
* @package Kirby Cms
* @author Bastian Allgeier <bastian@getkirby.com>

View File

@@ -2,6 +2,17 @@
namespace Kirby\Cms;
/**
* Converts the data from the old builder and editor fields
* to the format supported by the new block field.
* @since 3.5.0
*
* @package Kirby Cms
* @author Bastian Allgeier <bastian@getkirby.com>
* @link https://getkirby.com
* @copyright Bastian Allgeier GmbH
* @license https://getkirby.com/license
*/
class BlockConverter
{
public static function builderBlock(array $params): array

View File

@@ -13,6 +13,7 @@ use Throwable;
/**
* A collection of blocks
* @since 3.5.0
*
* @package Kirby Cms
* @author Bastian Allgeier <bastian@getkirby.com>

View File

@@ -10,6 +10,7 @@ use Kirby\Toolkit\Controller;
* The Event object is created whenever the `$kirby->trigger()`
* or `$kirby->apply()` methods are called. It collects all
* event information and handles calling the individual hooks.
* @since 3.4.0
*
* @package Kirby Cms
* @author Lukas Bestle <lukas@getkirby.com>,

View File

@@ -8,6 +8,7 @@ use Kirby\Toolkit\Str;
/**
* Represents a single Fieldset
* @since 3.5.0
*
* @package Kirby Cms
* @author Bastian Allgeier <bastian@getkirby.com>

View File

@@ -8,6 +8,7 @@ use Kirby\Toolkit\Str;
/**
* A collection of fieldsets
* @since 3.5.0
*
* @package Kirby Cms
* @author Bastian Allgeier <bastian@getkirby.com>

View File

@@ -10,6 +10,7 @@ namespace Kirby\Cms;
* - a Block in a collection of Blocks
* - a Layout in a collection of Layouts
* - a Column in a collection of Columns
* @since 3.5.0
*
* @package Kirby Cms
* @author Bastian Allgeier <bastian@getkirby.com>

View File

@@ -7,6 +7,7 @@ use Exception;
/**
* A collection of items
* @since 3.5.0
*
* @package Kirby Cms
* @author Bastian Allgeier <bastian@getkirby.com>

View File

@@ -5,6 +5,7 @@ namespace Kirby\Cms;
/**
* Represents a single Layout with
* multiple columns
* @since 3.5.0
*
* @package Kirby Cms
* @author Bastian Allgeier <bastian@getkirby.com>
@@ -77,6 +78,7 @@ class Layout extends Item
/**
* Checks if the layout is empty
* @since 3.5.2
*
* @return bool
*/
@@ -92,6 +94,7 @@ class Layout extends Item
/**
* Checks if the layout is not empty
* @since 3.5.2
*
* @return bool
*/

View File

@@ -7,6 +7,7 @@ use Kirby\Toolkit\Str;
/**
* Represents a single layout column with
* multiple blocks
* @since 3.5.0
*
* @package Kirby Cms
* @author Bastian Allgeier <bastian@getkirby.com>
@@ -56,6 +57,7 @@ class LayoutColumn extends Item
/**
* Checks if the column is empty
* @since 3.5.2
*
* @return bool
*/
@@ -69,6 +71,7 @@ class LayoutColumn extends Item
/**
* Checks if the column is not empty
* @since 3.5.2
*
* @return bool
*/

View File

@@ -4,6 +4,7 @@ namespace Kirby\Cms;
/**
* A collection of layout columns
* @since 3.5.0
*
* @package Kirby Cms
* @author Bastian Allgeier <bastian@getkirby.com>

View File

@@ -4,6 +4,7 @@ namespace Kirby\Cms;
/**
* A collection of layouts
* @since 3.5.0
*
* @package Kirby Cms
* @author Bastian Allgeier <bastian@getkirby.com>

View File

@@ -91,6 +91,7 @@ class Responder
* Setter and getter for the flag that defines
* whether the current response can be cached
* by Kirby's cache
* @since 3.5.5
*
* @param bool|null $cache
* @return bool|$this
@@ -108,6 +109,7 @@ class Responder
/**
* Setter and getter for the cache expiry
* timestamp for Kirby's cache
* @since 3.5.5
*
* @param int|string|null $expires Timestamp, number of minutes or time string to parse
* @param bool $override If `true`, the already defined timestamp will be overridden

View File

@@ -51,7 +51,8 @@ class Db
'user' => Config::get('db.user', 'root'),
'password' => Config::get('db.password', ''),
'database' => Config::get('db.database', ''),
'prefix' => Config::get('db.prefix', '')
'prefix' => Config::get('db.prefix', ''),
'port' => Config::get('db.port', '')
];
$params = $params ?? $defaults;

View File

@@ -9,6 +9,7 @@ use Kirby\Toolkit\F;
* Base handler abstract,
* which needs to be extended to
* create valid sane handlers
* @since 3.5.4
*
* @package Kirby Sane
* @author Lukas Bestle <lukas@getkirby.com>

View File

@@ -10,6 +10,7 @@ use Kirby\Toolkit\F;
* don't contain potentially harmful contents.
* The class comes with handlers for `svg`, `svgz` and `xml`
* files for now, but can be extended and customized.
* @since 3.5.4
*
* @package Kirby Sane
* @author Lukas Bestle <lukas@getkirby.com>

View File

@@ -11,6 +11,7 @@ use Kirby\Toolkit\Str;
/**
* Sane handler for SVG files
* @since 3.5.4
*
* @package Kirby Sane
* @author Bastian Allgeier <bastian@getkirby.com>,

View File

@@ -6,6 +6,7 @@ use Kirby\Exception\InvalidArgumentException;
/**
* Sane handler for gzip-compressed SVGZ files
* @since 3.5.4
*
* @package Kirby Sane
* @author Lukas Bestle <lukas@getkirby.com>

View File

@@ -12,6 +12,7 @@ use Kirby\Toolkit\Str;
/**
* Sane handler for XML files
* @since 3.5.4
*
* @package Kirby Sane
* @author Bastian Allgeier <bastian@getkirby.com>,

View File

@@ -31,6 +31,27 @@ class A
return $array + $append;
}
/**
* Recursively loops through the array and
* resolves any item defined as `Closure`,
* applying the passed parameters
* @since 3.5.6
*
* @param array $array
* @param mixed ...$args Parameters to pass to the closures
* @return array
*/
public static function apply(array $array, ...$args): array
{
array_walk_recursive($array, function (&$item) use ($args) {
if (is_a($item, 'Closure')) {
$item = $item(...$args);
}
});
return $array;
}
/**
* Gets an element of an array by key
*

View File

@@ -1135,14 +1135,17 @@ class Collection extends Iterator implements Countable
}
/**
* Returns an non-associative array
* with all values
* Returns a non-associative array
* with all values. If a mapping Closure is passed,
* all values are processed by the Closure.
*
* @param Closure|null $map
* @return array
*/
public function values(): array
public function values(Closure $map = null): array
{
return array_values($this->data);
$data = $map === null ? $this->data : array_map($map, $this->data);
return array_values($data);
}
/**

View File

@@ -2,10 +2,12 @@
namespace Kirby\Toolkit;
use Kirby\Exception\Exception;
use Kirby\Exception\InvalidArgumentException;
/**
* PHP locale handling
* @since 3.5.0
*
* @package Kirby Toolkit
* @author Lukas Bestle <lukas@getkirby.com>
@@ -15,6 +17,14 @@ use Kirby\Exception\InvalidArgumentException;
*/
class Locale
{
/**
* List of all locale constants supported by PHP
*/
const LOCALE_CONSTANTS = [
'LC_COLLATE', 'LC_CTYPE', 'LC_MONETARY',
'LC_NUMERIC', 'LC_TIME', 'LC_MESSAGES'
];
/**
* Converts a normalized locale array to an array with the
* locale constants replaced with their string representations
@@ -24,20 +34,7 @@ class Locale
*/
public static function export(array $locale): array
{
// list of all possible constant names
$constantNames = [
'LC_ALL', 'LC_COLLATE', 'LC_CTYPE', 'LC_MONETARY',
'LC_NUMERIC', 'LC_TIME', 'LC_MESSAGES'
];
// build an associative array with the locales
// that are actually supported on this system
$constants = [];
foreach ($constantNames as $name) {
if (defined($name) === true) {
$constants[constant($name)] = $name;
}
}
$constants = static::supportedConstants(true);
// replace the keys in the locale data array with the locale names
$return = [];
@@ -55,6 +52,54 @@ class Locale
return $return;
}
/**
* Returns the current locale value for
* a specified or for all locale categories
* @since 3.5.6
*
* @param int|string $category Locale category constant or constant name
* @return array|string Associative array if `LC_ALL` was passed (default), otherwise string
*
* @throws \Kirby\Exception\Exception If the locale cannot be determined
* @throws \Kirby\Exception\InvalidArgumentException If the provided locale category is invalid
*/
public static function get($category = LC_ALL)
{
$normalizedCategory = static::normalizeConstant($category);
if (is_int($normalizedCategory) !== true) {
throw new InvalidArgumentException('Invalid locale category "' . $category . '"');
}
if ($normalizedCategory !== LC_ALL) {
// `setlocale(..., 0)` actually *gets* the locale
$locale = setlocale($normalizedCategory, 0);
if (is_string($locale) !== true) {
throw new Exception('Could not determine locale for category "' . $category . '"');
}
return $locale;
}
// no specific `$category` was passed, make a list of all locales
$array = [];
foreach (static::supportedConstants() as $constant => $name) {
// `setlocale(..., 0)` actually *gets* the locale
$array[$constant] = setlocale($constant, '0');
}
// if all values are the same, we can use `LC_ALL`
// instead of a long array with all constants
if (count(array_unique($array)) === 1) {
return [
LC_ALL => array_shift($array)
];
}
return $array;
}
/**
* Converts a locale string or an array with constant or
* string keys to a normalized constant => value array
@@ -68,11 +113,7 @@ class Locale
// replace string constant keys with the constant values
$convertedLocale = [];
foreach ($locale as $key => $value) {
if (is_string($key) === true && Str::startsWith($key, 'LC_') === true) {
$key = constant($key);
}
$convertedLocale[$key] = $value;
$convertedLocale[static::normalizeConstant($key)] = $value;
}
return $convertedLocale;
@@ -98,4 +139,45 @@ class Locale
setlocale($key, $value);
}
}
/**
* Tries to convert an `LC_*` constant name
* to its constant value
*
* @param int|string $constant
* @return int|string
*/
protected static function normalizeConstant($constant)
{
if (is_string($constant) === true && Str::startsWith($constant, 'LC_') === true) {
return constant($constant);
}
// already an int or we cannot convert it safely
return $constant;
}
/**
* Builds an associative array with the locales
* that are actually supported on this system
*
* @param bool $withAll If set to `true`, `LC_ALL` is returned as well
* @return array
*/
protected static function supportedConstants(bool $withAll = false): array
{
$names = static::LOCALE_CONSTANTS;
if ($withAll === true) {
array_unshift($names, 'LC_ALL');
}
$constants = [];
foreach ($names as $name) {
if (defined($name) === true) {
$constants[constant($name)] = $name;
}
}
return $constants;
}
}

View File

@@ -805,6 +805,7 @@ class Str
/**
* Calculates the similarity between two strings with multibyte support
* @since 3.5.2
*
* @author Based on the work of Antal Áron
* @copyright Original Copyright (c) 2017, Antal Áron

View File

@@ -27,8 +27,8 @@ class InstalledVersions
private static $installed = array (
'root' =>
array (
'pretty_version' => '3.5.5',
'version' => '3.5.5.0',
'pretty_version' => '3.5.6',
'version' => '3.5.6.0',
'aliases' =>
array (
),
@@ -57,8 +57,8 @@ private static $installed = array (
),
'getkirby/cms' =>
array (
'pretty_version' => '3.5.5',
'version' => '3.5.5.0',
'pretty_version' => '3.5.6',
'version' => '3.5.6.0',
'aliases' =>
array (
),
@@ -145,12 +145,12 @@ private static $installed = array (
),
'symfony/polyfill-mbstring' =>
array (
'pretty_version' => 'v1.22.1',
'version' => '1.22.1.0',
'pretty_version' => 'v1.23.0',
'version' => '1.23.0.0',
'aliases' =>
array (
),
'reference' => '5232de97ee3b75b0360528dae24e73db49566ab1',
'reference' => '2df51500adbaebdc4c38dea4c89a2e131c45c8a1',
),
'true/punycode' =>
array (

View File

@@ -612,17 +612,17 @@
},
{
"name": "symfony/polyfill-mbstring",
"version": "v1.22.1",
"version_normalized": "1.22.1.0",
"version": "v1.23.0",
"version_normalized": "1.23.0.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-mbstring.git",
"reference": "5232de97ee3b75b0360528dae24e73db49566ab1"
"reference": "2df51500adbaebdc4c38dea4c89a2e131c45c8a1"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/5232de97ee3b75b0360528dae24e73db49566ab1",
"reference": "5232de97ee3b75b0360528dae24e73db49566ab1",
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/2df51500adbaebdc4c38dea4c89a2e131c45c8a1",
"reference": "2df51500adbaebdc4c38dea4c89a2e131c45c8a1",
"shasum": ""
},
"require": {
@@ -631,11 +631,11 @@
"suggest": {
"ext-mbstring": "For best performance"
},
"time": "2021-01-22T09:19:47+00:00",
"time": "2021-05-27T09:27:20+00:00",
"type": "library",
"extra": {
"branch-alias": {
"dev-main": "1.22-dev"
"dev-main": "1.23-dev"
},
"thanks": {
"name": "symfony/polyfill",
@@ -675,7 +675,7 @@
"shim"
],
"support": {
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.22.1"
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.23.0"
},
"funding": [
{

View File

@@ -1,8 +1,8 @@
<?php return array (
'root' =>
array (
'pretty_version' => '3.5.5',
'version' => '3.5.5.0',
'pretty_version' => '3.5.6',
'version' => '3.5.6.0',
'aliases' =>
array (
),
@@ -31,8 +31,8 @@
),
'getkirby/cms' =>
array (
'pretty_version' => '3.5.5',
'version' => '3.5.5.0',
'pretty_version' => '3.5.6',
'version' => '3.5.6.0',
'aliases' =>
array (
),
@@ -119,12 +119,12 @@
),
'symfony/polyfill-mbstring' =>
array (
'pretty_version' => 'v1.22.1',
'version' => '1.22.1.0',
'pretty_version' => 'v1.23.0',
'version' => '1.23.0.0',
'aliases' =>
array (
),
'reference' => '5232de97ee3b75b0360528dae24e73db49566ab1',
'reference' => '2df51500adbaebdc4c38dea4c89a2e131c45c8a1',
),
'true/punycode' =>
array (

View File

@@ -101,7 +101,7 @@ final class Mbstring
$fromEncoding = 'Windows-1252';
}
if ('UTF-8' !== $fromEncoding) {
$s = iconv($fromEncoding, 'UTF-8//IGNORE', $s);
$s = \iconv($fromEncoding, 'UTF-8//IGNORE', $s);
}
return preg_replace_callback('/[\x80-\xFF]+/', [__CLASS__, 'html_encoding_callback'], $s);
@@ -112,7 +112,7 @@ final class Mbstring
$fromEncoding = 'UTF-8';
}
return iconv($fromEncoding, $toEncoding.'//IGNORE', $s);
return \iconv($fromEncoding, $toEncoding.'//IGNORE', $s);
}
public static function mb_convert_variables($toEncoding, $fromEncoding, &...$vars)
@@ -129,7 +129,7 @@ final class Mbstring
public static function mb_decode_mimeheader($s)
{
return iconv_mime_decode($s, 2, self::$internalEncoding);
return \iconv_mime_decode($s, 2, self::$internalEncoding);
}
public static function mb_encode_mimeheader($s, $charset = null, $transferEncoding = null, $linefeed = null, $indent = null)
@@ -165,10 +165,10 @@ final class Mbstring
if ('UTF-8' === $encoding) {
$encoding = null;
if (!preg_match('//u', $s)) {
$s = @iconv('UTF-8', 'UTF-8//IGNORE', $s);
$s = @\iconv('UTF-8', 'UTF-8//IGNORE', $s);
}
} else {
$s = iconv($encoding, 'UTF-8//IGNORE', $s);
$s = \iconv($encoding, 'UTF-8//IGNORE', $s);
}
$cnt = floor(\count($convmap) / 4) * 4;
@@ -194,7 +194,7 @@ final class Mbstring
return $s;
}
return iconv('UTF-8', $encoding.'//IGNORE', $s);
return \iconv('UTF-8', $encoding.'//IGNORE', $s);
}
public static function mb_encode_numericentity($s, $convmap, $encoding = null, $is_hex = false)
@@ -231,10 +231,10 @@ final class Mbstring
if ('UTF-8' === $encoding) {
$encoding = null;
if (!preg_match('//u', $s)) {
$s = @iconv('UTF-8', 'UTF-8//IGNORE', $s);
$s = @\iconv('UTF-8', 'UTF-8//IGNORE', $s);
}
} else {
$s = iconv($encoding, 'UTF-8//IGNORE', $s);
$s = \iconv($encoding, 'UTF-8//IGNORE', $s);
}
static $ulenMask = ["\xC0" => 2, "\xD0" => 2, "\xE0" => 3, "\xF0" => 4];
@@ -264,7 +264,7 @@ final class Mbstring
return $result;
}
return iconv('UTF-8', $encoding.'//IGNORE', $result);
return \iconv('UTF-8', $encoding.'//IGNORE', $result);
}
public static function mb_convert_case($s, $mode, $encoding = null)
@@ -279,10 +279,10 @@ final class Mbstring
if ('UTF-8' === $encoding) {
$encoding = null;
if (!preg_match('//u', $s)) {
$s = @iconv('UTF-8', 'UTF-8//IGNORE', $s);
$s = @\iconv('UTF-8', 'UTF-8//IGNORE', $s);
}
} else {
$s = iconv($encoding, 'UTF-8//IGNORE', $s);
$s = \iconv($encoding, 'UTF-8//IGNORE', $s);
}
if (\MB_CASE_TITLE == $mode) {
@@ -342,7 +342,7 @@ final class Mbstring
return $s;
}
return iconv('UTF-8', $encoding.'//IGNORE', $s);
return \iconv('UTF-8', $encoding.'//IGNORE', $s);
}
public static function mb_internal_encoding($encoding = null)
@@ -353,7 +353,7 @@ final class Mbstring
$normalizedEncoding = self::getEncoding($encoding);
if ('UTF-8' === $normalizedEncoding || false !== @iconv($normalizedEncoding, $normalizedEncoding, ' ')) {
if ('UTF-8' === $normalizedEncoding || false !== @\iconv($normalizedEncoding, $normalizedEncoding, ' ')) {
self::$internalEncoding = $normalizedEncoding;
return true;
@@ -412,7 +412,7 @@ final class Mbstring
$encoding = self::$internalEncoding;
}
return self::mb_detect_encoding($var, [$encoding]) || false !== @iconv($encoding, $encoding, $var);
return self::mb_detect_encoding($var, [$encoding]) || false !== @\iconv($encoding, $encoding, $var);
}
public static function mb_detect_encoding($str, $encodingList = null, $strict = false)
@@ -487,7 +487,7 @@ final class Mbstring
return \strlen($s);
}
return @iconv_strlen($s, $encoding);
return @\iconv_strlen($s, $encoding);
}
public static function mb_strpos($haystack, $needle, $offset = 0, $encoding = null)
@@ -508,7 +508,7 @@ final class Mbstring
return 0;
}
return iconv_strpos($haystack, $needle, $offset, $encoding);
return \iconv_strpos($haystack, $needle, $offset, $encoding);
}
public static function mb_strrpos($haystack, $needle, $offset = 0, $encoding = null)
@@ -532,7 +532,7 @@ final class Mbstring
}
$pos = '' !== $needle || 80000 > \PHP_VERSION_ID
? iconv_strrpos($haystack, $needle, $encoding)
? \iconv_strrpos($haystack, $needle, $encoding)
: self::mb_strlen($haystack, $encoding);
return false !== $pos ? $offset + $pos : false;
@@ -613,7 +613,7 @@ final class Mbstring
}
if ($start < 0) {
$start = iconv_strlen($s, $encoding) + $start;
$start = \iconv_strlen($s, $encoding) + $start;
if ($start < 0) {
$start = 0;
}
@@ -622,13 +622,13 @@ final class Mbstring
if (null === $length) {
$length = 2147483647;
} elseif ($length < 0) {
$length = iconv_strlen($s, $encoding) + $length - $start;
$length = \iconv_strlen($s, $encoding) + $length - $start;
if ($length < 0) {
return '';
}
}
return (string) iconv_substr($s, $start, $length, $encoding);
return (string) \iconv_substr($s, $start, $length, $encoding);
}
public static function mb_stripos($haystack, $needle, $offset = 0, $encoding = null)
@@ -653,7 +653,7 @@ final class Mbstring
$pos = strrpos($haystack, $needle);
} else {
$needle = self::mb_substr($needle, 0, 1, $encoding);
$pos = iconv_strrpos($haystack, $needle, $encoding);
$pos = \iconv_strrpos($haystack, $needle, $encoding);
}
return self::getSubpart($pos, $part, $haystack, $encoding);
@@ -732,12 +732,12 @@ final class Mbstring
$encoding = self::getEncoding($encoding);
if ('UTF-8' !== $encoding) {
$s = iconv($encoding, 'UTF-8//IGNORE', $s);
$s = \iconv($encoding, 'UTF-8//IGNORE', $s);
}
$s = preg_replace('/[\x{1100}-\x{115F}\x{2329}\x{232A}\x{2E80}-\x{303E}\x{3040}-\x{A4CF}\x{AC00}-\x{D7A3}\x{F900}-\x{FAFF}\x{FE10}-\x{FE19}\x{FE30}-\x{FE6F}\x{FF00}-\x{FF60}\x{FFE0}-\x{FFE6}\x{20000}-\x{2FFFD}\x{30000}-\x{3FFFD}]/u', '', $s, -1, $wide);
return ($wide << 1) + iconv_strlen($s, 'UTF-8');
return ($wide << 1) + \iconv_strlen($s, 'UTF-8');
}
public static function mb_substr_count($haystack, $needle, $encoding = null)

View File

@@ -81,7 +81,7 @@ return array (
'Ī' => 'ī',
'Ĭ' => 'ĭ',
'Į' => 'į',
'İ' => 'i',
'İ' => 'i̇',
'IJ' => 'ij',
'Ĵ' => 'ĵ',
'Ķ' => 'ķ',

View File

@@ -746,41 +746,41 @@ return array (
'ύ' => 'Ύ',
'ὼ' => 'Ὼ',
'ώ' => 'Ώ',
'ᾀ' => '',
'ᾁ' => '',
'ᾂ' => '',
'ᾃ' => '',
'ᾄ' => '',
'ᾅ' => '',
'ᾆ' => '',
'ᾇ' => '',
'ᾐ' => '',
'ᾑ' => '',
'ᾒ' => '',
'ᾓ' => '',
'ᾔ' => '',
'ᾕ' => '',
'ᾖ' => '',
'ᾗ' => '',
'ᾠ' => '',
'ᾡ' => '',
'ᾢ' => '',
'ᾣ' => '',
'ᾤ' => '',
'ᾥ' => '',
'ᾦ' => '',
'ᾧ' => '',
'ᾀ' => 'ἈΙ',
'ᾁ' => 'ἉΙ',
'ᾂ' => 'ἊΙ',
'ᾃ' => 'ἋΙ',
'ᾄ' => 'ἌΙ',
'ᾅ' => 'ἍΙ',
'ᾆ' => 'ἎΙ',
'ᾇ' => 'ἏΙ',
'ᾐ' => 'ἨΙ',
'ᾑ' => 'ἩΙ',
'ᾒ' => 'ἪΙ',
'ᾓ' => 'ἫΙ',
'ᾔ' => 'ἬΙ',
'ᾕ' => 'ἭΙ',
'ᾖ' => 'ἮΙ',
'ᾗ' => 'ἯΙ',
'ᾠ' => 'ὨΙ',
'ᾡ' => 'ὩΙ',
'ᾢ' => 'ὪΙ',
'ᾣ' => 'ὫΙ',
'ᾤ' => 'ὬΙ',
'ᾥ' => 'ὭΙ',
'ᾦ' => 'ὮΙ',
'ᾧ' => 'ὯΙ',
'ᾰ' => 'Ᾰ',
'ᾱ' => 'Ᾱ',
'ᾳ' => '',
'ᾳ' => 'ΑΙ',
'' => 'Ι',
'ῃ' => '',
'ῃ' => 'ΗΙ',
'ῐ' => 'Ῐ',
'ῑ' => 'Ῑ',
'ῠ' => 'Ῠ',
'ῡ' => 'Ῡ',
'ῥ' => 'Ῥ',
'ῳ' => '',
'ῳ' => 'ΩΙ',
'ⅎ' => 'Ⅎ',
'' => '',
'ⅱ' => 'Ⅱ',
@@ -1411,4 +1411,79 @@ return array (
'𞥁' => '𞤟',
'𞥂' => '𞤠',
'𞥃' => '𞤡',
'ß' => 'SS',
'ff' => 'FF',
'fi' => 'FI',
'fl' => 'FL',
'ffi' => 'FFI',
'ffl' => 'FFL',
'ſt' => 'ST',
'st' => 'ST',
'և' => 'ԵՒ',
'ﬓ' => 'ՄՆ',
'ﬔ' => 'ՄԵ',
'ﬕ' => 'ՄԻ',
'ﬖ' => 'ՎՆ',
'ﬗ' => 'ՄԽ',
'ʼn' => 'ʼN',
'ΐ' => 'Ϊ́',
'ΰ' => 'Ϋ́',
'ǰ' => 'J̌',
'ẖ' => 'H̱',
'ẗ' => 'T̈',
'ẘ' => 'W̊',
'ẙ' => 'Y̊',
'ẚ' => 'Aʾ',
'ὐ' => 'Υ̓',
'ὒ' => 'Υ̓̀',
'ὔ' => 'Υ̓́',
'ὖ' => 'Υ̓͂',
'ᾶ' => 'Α͂',
'ῆ' => 'Η͂',
'ῒ' => 'Ϊ̀',
'ΐ' => 'Ϊ́',
'ῖ' => 'Ι͂',
'ῗ' => 'Ϊ͂',
'ῢ' => 'Ϋ̀',
'ΰ' => 'Ϋ́',
'ῤ' => 'Ρ̓',
'ῦ' => 'Υ͂',
'ῧ' => 'Ϋ͂',
'ῶ' => 'Ω͂',
'ᾈ' => 'ἈΙ',
'ᾉ' => 'ἉΙ',
'ᾊ' => 'ἊΙ',
'ᾋ' => 'ἋΙ',
'ᾌ' => 'ἌΙ',
'ᾍ' => 'ἍΙ',
'ᾎ' => 'ἎΙ',
'ᾏ' => 'ἏΙ',
'ᾘ' => 'ἨΙ',
'ᾙ' => 'ἩΙ',
'ᾚ' => 'ἪΙ',
'ᾛ' => 'ἫΙ',
'ᾜ' => 'ἬΙ',
'ᾝ' => 'ἭΙ',
'ᾞ' => 'ἮΙ',
'ᾟ' => 'ἯΙ',
'ᾨ' => 'ὨΙ',
'ᾩ' => 'ὩΙ',
'ᾪ' => 'ὪΙ',
'ᾫ' => 'ὫΙ',
'ᾬ' => 'ὬΙ',
'ᾭ' => 'ὭΙ',
'ᾮ' => 'ὮΙ',
'ᾯ' => 'ὯΙ',
'ᾼ' => 'ΑΙ',
'ῌ' => 'ΗΙ',
'ῼ' => 'ΩΙ',
'ᾲ' => 'ᾺΙ',
'ᾴ' => 'ΆΙ',
'ῂ' => 'ῊΙ',
'ῄ' => 'ΉΙ',
'ῲ' => 'ῺΙ',
'ῴ' => 'ΏΙ',
'ᾷ' => 'Α͂Ι',
'ῇ' => 'Η͂Ι',
'ῷ' => 'Ω͂Ι',
);

View File

@@ -55,7 +55,7 @@ if (!function_exists('mb_detect_order')) {
function mb_detect_order($encoding = null) { return p\Mbstring::mb_detect_order($encoding); }
}
if (!function_exists('mb_parse_str')) {
function mb_parse_str($string, &$result = []) { parse_str($string, $result); }
function mb_parse_str($string, &$result = []) { parse_str($string, $result); return (bool) $result; }
}
if (!function_exists('mb_strlen')) {
function mb_strlen($string, $encoding = null) { return p\Mbstring::mb_strlen($string, $encoding); }

View File

@@ -48,10 +48,10 @@ if (!function_exists('mb_detect_encoding')) {
function mb_detect_encoding(?string $string, array|string|null $encodings = null, ?bool $strict = false): string|false { return p\Mbstring::mb_detect_encoding((string) $string, $encodings, (bool) $strict); }
}
if (!function_exists('mb_detect_order')) {
function mb_detect_order(array|string|null $encoding = null): array|bool { return p\Mbstring::mb_detect_order((string) $encoding); }
function mb_detect_order(array|string|null $encoding = null): array|bool { return p\Mbstring::mb_detect_order($encoding); }
}
if (!function_exists('mb_parse_str')) {
function mb_parse_str(?string $string, &$result = []): bool { parse_str((string) $string, $result); }
function mb_parse_str(?string $string, &$result = []): bool { parse_str((string) $string, $result); return (bool) $result; }
}
if (!function_exists('mb_strlen')) {
function mb_strlen(?string $string, ?string $encoding = null): int { return p\Mbstring::mb_strlen((string) $string, $encoding); }
@@ -78,7 +78,7 @@ if (!function_exists('mb_stristr')) {
function mb_stristr(?string $haystack, ?string $needle, ?bool $before_needle = false, ?string $encoding = null): string|false { return p\Mbstring::mb_stristr((string) $haystack, (string) $needle, (bool) $before_needle, $encoding); }
}
if (!function_exists('mb_strrchr')) {
function mb_strrchr(?string $haystack, ?string $needle, ?bool $before_needle = false, ?string $encoding = null): string|false { return p\Mbstring::mb_strrchr((string) $haystack, (string) $needle, $before_needle, (bool) $encoding); }
function mb_strrchr(?string $haystack, ?string $needle, ?bool $before_needle = false, ?string $encoding = null): string|false { return p\Mbstring::mb_strrchr((string) $haystack, (string) $needle, (bool) $before_needle, $encoding); }
}
if (!function_exists('mb_strrichr')) {
function mb_strrichr(?string $haystack, ?string $needle, ?bool $before_needle = false, ?string $encoding = null): string|false { return p\Mbstring::mb_strrichr((string) $haystack, (string) $needle, (bool) $before_needle, $encoding); }

View File

@@ -28,7 +28,7 @@
"minimum-stability": "dev",
"extra": {
"branch-alias": {
"dev-main": "1.22-dev"
"dev-main": "1.23-dev"
},
"thanks": {
"name": "symfony/polyfill",