updated plugin `WP-WebAuthn` version 1.3.1

This commit is contained in:
KawaiiPunk 2023-10-22 22:21:36 +00:00 committed by Gitium
parent 959829cf69
commit c7746517a0
931 changed files with 5408 additions and 1937 deletions

View File

@ -248,6 +248,10 @@
margin-bottom: 10px!important;
margin-top: 2px!important;
}
.wwa-form-left {
display: inline-flex;
flex-direction: column;
}
@media(max-width: 720px){
.wwa-login-form .button-primary, .wwa-login-form .button-secondary {
padding: 0 14px;

View File

@ -82,4 +82,4 @@ jQuery('#clear_log').click((e) => {
updateLog();
}
})
})
})

View File

@ -1,7 +1,10 @@
'use strict';
document.addEventListener('DOMContentLoaded', () => {
if (document.querySelectorAll('#lostpasswordform, #registerform, .admin-email-confirm-form').length > 0) {
if (document.querySelectorAll('#lostpasswordform, #registerform, .admin-email-confirm-form, #resetpassform').length > 0) {
return;
}
if (document.getElementById('loginform') === null || document.getElementById('loginform').getAttribute('name') !== 'loginform') {
return;
}
window.onload = () => {
@ -53,7 +56,7 @@ document.addEventListener('DOMContentLoaded', () => {
wwa_dom('user_login', (dom) => { dom.focus() }, 'id');
wwa_dom('wp-submit', (dom) => { dom.disabled = true }, 'id');
}
if (document.querySelectorAll('#lostpasswordform, #registerform').length > 0) {
if (document.querySelectorAll('#lostpasswordform, #registerform, .admin-email-confirm-form, #resetpassform').length > 0) {
return;
}
wwa_dom('user_pass', (dom) => { dom.disabled = false }, 'id');
@ -61,9 +64,9 @@ document.addEventListener('DOMContentLoaded', () => {
if (dom.length > 0) {
if (dom[0].getElementsByTagName('input').length > 0) {
// WordPress 5.2-
dom[0].innerHTML = `<span id="wwa-username-label">${php_vars.i18n_9}</span>${dom[0].innerHTML.split('<br>')[1]}`;
dom[0].innerHTML = `<span id="wwa-username-label">${php_vars.email_login === 'true' ? php_vars.i18n_10 : php_vars.i18n_9}</span>${dom[0].innerHTML.split('<br>')[1]}`;
} else {
dom[0].innerText = php_vars.i18n_9;
dom[0].innerText = php_vars.email_login === 'true' ? php_vars.i18n_10 : php_vars.i18n_9;
}
}
}

View File

@ -71,9 +71,26 @@ const wwa_dom = (selector, callback = () => { }, method = 'query') => {
let wwaSupported = true;
document.addEventListener('DOMContentLoaded', () => {
if (document.querySelectorAll('#lostpasswordform, #registerform, .admin-email-confirm-form').length > 0) {
if (document.querySelector('p#nav') && php_vars.password_reset !== 'false') {
const placeholder = document.getElementById('wwa-lost-password-link-placeholder');
if (placeholder) {
const previous = placeholder.previousSibling;
const next = placeholder.nextElementSibling;
if (previous && previous.nodeType === Node.TEXT_NODE && previous.data.trim() === php_vars.separator.trim()) {
previous.remove();
} else if (next && next.nodeType === Node.TEXT_NODE && next.data.trim() === php_vars.separator.trim()) {
next.remove();
}
}
placeholder.remove();
}
if (document.querySelectorAll('#lostpasswordform, #registerform, .admin-email-confirm-form, #resetpassform').length > 0) {
return;
}
if (document.getElementById('loginform') === null || document.getElementById('loginform').getAttribute('name') !== 'loginform') {
return;
}
document.addEventListener('keydown', parseKey, false);
let button_check = document.createElement('button');
button_check.id = 'wp-webauthn-check';
button_check.type = 'button';
@ -125,7 +142,7 @@ document.addEventListener('DOMContentLoaded', () => {
})
window.onresize = function () {
if (document.querySelectorAll('#lostpasswordform, #registerform').length > 0) {
if (document.querySelectorAll('#lostpasswordform, #registerform, .admin-email-confirm-form, #resetpassform').length > 0) {
return;
}
let btnWidth = document.getElementById('wp-submit').clientWidth;
@ -136,11 +153,9 @@ window.onresize = function () {
}
}
document.addEventListener('keydown', parseKey, false);
function parseKey(event) {
if (wwaSupported && document.getElementById('wp-webauthn-check').style.display === 'block') {
if (event.keyCode === 13) {
if (event.keyCode === 13) {
if (wwaSupported && document.getElementById('wp-webauthn-check').style.display === 'block') {
event.preventDefault();
wwa_dom('wp-webauthn-check', (dom) => { dom.click() }, 'id');
}
@ -159,7 +174,6 @@ function base64url2base64(input) {
return input;
}
function arrayToBase64String(a) {
return btoa(String.fromCharCode(...a));
}
@ -179,7 +193,10 @@ function getQueryString(name) {
}
function toggle() {
if (document.querySelectorAll('#lostpasswordform, #registerform').length > 0) {
if (document.querySelectorAll('#lostpasswordform, #registerform, .admin-email-confirm-form, #resetpassform').length > 0) {
return;
}
if (document.getElementById('loginform') === null || document.getElementById('loginform').getAttribute('name') !== 'loginform') {
return;
}
if (wwaSupported) {
@ -229,9 +246,9 @@ function toggle() {
if (inputDom.length > 0) {
if (document.getElementById('wwa-username-label')) {
// WordPress 5.2-
document.getElementById('wwa-username-label').innerText = php_vars.i18n_9;
document.getElementById('wwa-username-label').innerText = php_vars.email_login === 'true' ? php_vars.i18n_10 : php_vars.i18n_9;
} else {
inputDom[0].innerText = php_vars.i18n_9;
inputDom[0].innerText = php_vars.email_login === 'true' ? php_vars.i18n_10 : php_vars.i18n_9;
}
}
}
@ -255,7 +272,7 @@ function wwa_shake(id, a, d) {
}
function check() {
if (document.querySelectorAll('#lostpasswordform, #registerform').length > 0) {
if (document.querySelectorAll('#lostpasswordform, #registerform, .admin-email-confirm-form, #resetpassform').length > 0) {
return;
}
if (wwaSupported) {

View File

@ -12,6 +12,9 @@ window.addEventListener('load', () => {
if (document.getElementById('wp-webauthn-error-container')) {
document.getElementById('wp-webauthn-error-container').insertBefore(document.getElementById('wp-webauthn-error'), null);
}
if (document.getElementById('wp-webauthn-message-container')) {
document.getElementById('wp-webauthn-message-container').insertBefore(document.getElementById('wp-webauthn-message'), null);
}
})
// Update authenticator list
@ -296,6 +299,7 @@ jQuery('#wwa-bind').click((e) => {
// Test WebAuthn
jQuery('#wwa-test, #wwa-test_usernameless').click((e) => {
e.preventDefault();
jQuery('#wwa-test, #wwa-test_usernameless').attr('disabled', 'disabled');
let button_id = e.target.id;
let usernameless = 'false';

View File

@ -1,8 +1,8 @@
# Copyright (C) 2021 Axton
# Copyright (C) 2023 Axton
# This file is distributed under the same license as the WP-WebAuthn plugin.
msgid ""
msgstr ""
"Project-Id-Version: WP-WebAuthn\n"
"Project-Id-Version: WP-WebAuthn 1.3.1\n"
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-webauthn\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -15,6 +15,7 @@ msgstr ""
"X-Poedit-SearchPathExcluded-0: *.js\n"
"X-Poedit-SourceCharset: UTF-8\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Domain: wp-webauthn\n"
#. Plugin Name of the plugin
msgid "WP-WebAuthn"
@ -37,254 +38,312 @@ msgid "https://axton.cc"
msgstr ""
#: wwa-admin-content.php:6
#: wwa-admin-content.php:202
msgid "User verification is disabled by default because some mobile devices do not support it (especially on Android devices). But we <strong>recommend you to enable it</strong> if possible to further secure your login."
msgstr ""
#: wwa-admin-content.php:7
#: wwa-admin-content.php:303
msgid "Log count: "
msgstr ""
#: wwa-admin-content.php:14
#: wwa-admin-content.php:8
#: wwa-profile-content.php:14
#: wwa-shortcodes.php:26
msgid "Loading failed, maybe try refreshing?"
msgstr ""
#: wwa-admin-content.php:16
msgid "PHP extension gmp doesn't seem to exist, rendering WP-WebAuthn unable to function."
msgstr ""
#: wwa-admin-content.php:18
#: wwa-admin-content.php:20
msgid "PHP extension mbstring doesn't seem to exist, rendering WP-WebAuthn unable to function."
msgstr ""
#: wwa-admin-content.php:22
#: wwa-admin-content.php:24
msgid "PHP extension sodium doesn't seem to exist, rendering WP-WebAuthn unable to function."
msgstr ""
#: wwa-admin-content.php:28
msgid "WebAuthn features are restricted to websites in secure contexts. Please make sure your website is served over HTTPS or locally with <code>localhost</code>."
msgstr ""
#: wwa-admin-content.php:87
#: wwa-admin-content.php:127
msgid "Settings saved."
msgstr ""
#: wwa-admin-content.php:89
#: wwa-admin-content.php:129
msgid "Settings NOT saved."
msgstr ""
#: wwa-admin-content.php:104
#: wwa-admin-content.php:144
msgid "Preferred login method"
msgstr ""
#: wwa-admin-content.php:108
#: wwa-admin-content.php:148
msgid "Prefer WebAuthn"
msgstr ""
#: wwa-admin-content.php:109
#: wwa-admin-content.php:149
msgid "Prefer password"
msgstr ""
#: wwa-admin-content.php:110
#: wwa-profile-content.php:56
#: wwa-admin-content.php:150
#: wwa-profile-content.php:81
msgid "WebAuthn Only"
msgstr ""
#: wwa-admin-content.php:112
#: wwa-admin-content.php:152
msgid "When using \"WebAuthn Only\", password login will be completely disabled. Please make sure your browser supports WebAuthn, otherwise you may unable to login.<br>User that doesn't have any registered authenticator (e.g. new user) will unable to login when using \"WebAuthn Only\".<br>When the browser does not support WebAuthn, the login method will default to password if password login is not disabled."
msgstr ""
#: wwa-admin-content.php:116
#: wwa-admin-content.php:156
msgid "Website identifier"
msgstr ""
#: wwa-admin-content.php:119
#: wwa-admin-content.php:159
msgid "This identifier is for identification purpose only and <strong>DOES NOT</strong> affect the authentication process in anyway."
msgstr ""
#: wwa-admin-content.php:123
#: wwa-admin-content.php:163
msgid "Website domain"
msgstr ""
#: wwa-admin-content.php:126
#: wwa-admin-content.php:166
msgid "This field <strong>MUST</strong> be exactly the same with the current domain or parent domain."
msgstr ""
#: wwa-admin-content.php:130
#: wwa-admin-content.php:173
msgid "Allow to remember login"
msgstr ""
#: wwa-admin-content.php:139
#: wwa-admin-content.php:150
#: wwa-admin-content.php:183
#: wwa-admin-content.php:199
#: wwa-profile-content.php:130
#: wwa-admin-content.php:182
#: wwa-admin-content.php:198
#: wwa-admin-content.php:209
#: wwa-admin-content.php:225
#: wwa-admin-content.php:300
#: wwa-profile-content.php:155
#: wwa-shortcodes.php:118
msgid "Enable"
msgstr ""
#: wwa-admin-content.php:140
#: wwa-admin-content.php:151
#: wwa-admin-content.php:184
#: wwa-admin-content.php:200
#: wwa-profile-content.php:131
#: wwa-admin-content.php:183
#: wwa-admin-content.php:199
#: wwa-admin-content.php:210
#: wwa-admin-content.php:226
#: wwa-admin-content.php:301
#: wwa-profile-content.php:156
#: wwa-shortcodes.php:118
msgid "Disable"
msgstr ""
#: wwa-admin-content.php:141
#: wwa-admin-content.php:184
msgid "Show the 'Remember Me' checkbox beside the login form when using WebAuthn."
msgstr ""
#: wwa-admin-content.php:146
#: wwa-admin-content.php:189
msgid "Allow to login with email addresses"
msgstr ""
#: wwa-admin-content.php:200
msgid "Allow to find users via email addresses when logging in.<br><strong>Note that if enabled attackers may be able to brute force the correspondences between email addresses and users.</strong>"
msgstr ""
#: wwa-admin-content.php:205
msgid "Require user verification"
msgstr ""
#: wwa-admin-content.php:152
#: wwa-admin-content.php:211
msgid "User verification can improve security, but is not fully supported by mobile devices. <br> If you cannot register or verify your authenticators, please consider disabling user verification."
msgstr ""
#: wwa-admin-content.php:157
#: wwa-admin-content.php:216
msgid "Allow to login without username"
msgstr ""
#: wwa-admin-content.php:227
msgid "Allow users to register authenticator with usernameless authentication feature and login without username.<br><strong>User verification will be enabled automatically when authenticating with usernameless authentication feature.</strong><br>Some authenticators and some browsers <strong>DO NOT</strong> support this feature."
msgstr ""
#: wwa-admin-content.php:232
msgid "Allow a specific type of authenticator"
msgstr ""
#: wwa-admin-content.php:166
#: wwa-admin-content.php:241
#: wwa-profile-content.php:15
#: wwa-profile-content.php:111
#: wwa-profile-content.php:136
#: wwa-shortcodes.php:33
#: wwa-shortcodes.php:118
msgid "Any"
msgstr ""
#: wwa-admin-content.php:167
#: wwa-profile-content.php:112
#: wwa-shortcodes.php:118
msgid "Platform (e.g. built-in fingerprint sensors)"
#: wwa-admin-content.php:242
msgid "Platform (e.g. Passkey or built-in sensors)"
msgstr ""
#: wwa-admin-content.php:168
#: wwa-profile-content.php:113
#: wwa-admin-content.php:243
#: wwa-profile-content.php:138
#: wwa-shortcodes.php:118
msgid "Roaming (e.g. USB security keys)"
msgstr ""
#: wwa-admin-content.php:170
#: wwa-admin-content.php:245
msgid "If a type is selected, the browser will only prompt for authenticators of selected type when authenticating and user can only register authenticators of selected type."
msgstr ""
#: wwa-admin-content.php:174
msgid "Allow to login without username"
#: wwa-admin-content.php:252
msgid "Disable password reset for"
msgstr ""
#: wwa-admin-content.php:185
msgid "Allow users to register authenticator with usernameless authentication feature and login without username.<br><strong>User verification will be enabled automatically when authenticating with usernameless authentication feature.</strong><br>Some authenticators and some browsers <strong>DO NOT</strong> support this feature."
#: wwa-admin-content.php:261
msgid "Off"
msgstr ""
#: wwa-admin-content.php:190
#: wwa-admin-content.php:262
msgid "Everyone except administrators"
msgstr ""
#: wwa-admin-content.php:263
msgid "Everyone"
msgstr ""
#: wwa-admin-content.php:265
msgid "Disable the \"Set new password\" and \"Forgot password\" features, and remove the \"Forgot password\" link on the login page. This may be useful when enabling \"WebAuthn Only\".<br>If \"Everyone except administrators\" is selected, only administrators with the \"Edit user\" permission will be able to update passwords (for all users)."
msgstr ""
#: wwa-admin-content.php:272
msgid "After User Registration"
msgstr ""
#: wwa-admin-content.php:281
msgid "No action"
msgstr ""
#: wwa-admin-content.php:282
msgid "Log user in and redirect to user's profile"
msgstr ""
#: wwa-admin-content.php:284
msgid "What to do when a new user registered.<br>By default, new users have to login manually after registration. If \"WebAuthn Only\" is enabled, they will not be able to login.<br>When using \"Log user in\", new users will be logged in automatically and redirected to their profile settings so that they can set up WebAuthn authenticators."
msgstr ""
#: wwa-admin-content.php:291
msgid "Logging"
msgstr ""
#: wwa-admin-content.php:202
#: wwa-admin-content.php:303
msgid "Clear log"
msgstr ""
#: wwa-admin-content.php:204
#: wwa-admin-content.php:305
msgid "For debugging only. Enable only when needed.<br><strong>Note: Logs may contain sensitive information.</strong>"
msgstr ""
#: wwa-admin-content.php:213
#: wwa-admin-content.php:314
msgid "Log"
msgstr ""
#: wwa-admin-content.php:215
#: wwa-admin-content.php:316
msgid "Automatic update every 5 seconds."
msgstr ""
#: wwa-admin-content.php:219
#: wwa-admin-content.php:320
msgid "To register a new authenticator or edit your authenticators, please go to <a href=\"%s#wwa-webauthn-start\">your profile</a>."
msgstr ""
#: wwa-functions.php:148
#: wwa-functions.php:159
#: wwa-shortcodes.php:88
msgid "Auth"
msgstr ""
#: wwa-functions.php:149
#: wwa-functions.php:160
#: wwa-shortcodes.php:11
#: wwa-shortcodes.php:85
#: wwa-shortcodes.php:88
msgid "Authenticate with WebAuthn"
msgstr ""
#: wwa-functions.php:150
#: wwa-functions.php:161
#: wwa-shortcodes.php:12
msgid "Hold on..."
msgstr ""
#: wwa-functions.php:151
#: wwa-functions.php:162
#: wwa-shortcodes.php:13
msgid "Please proceed..."
msgstr ""
#: wwa-functions.php:152
#: wwa-functions.php:163
#: wwa-shortcodes.php:14
msgid "Authenticating..."
msgstr ""
#: wwa-functions.php:153
#: wwa-functions.php:164
#: wwa-shortcodes.php:15
msgid "Authenticated"
msgstr ""
#: wwa-functions.php:154
#: wwa-functions.php:165
#: wwa-shortcodes.php:16
msgid "Auth failed"
msgstr ""
#: wwa-functions.php:155
#: wwa-functions.php:166
msgid "It looks like your browser doesn't support WebAuthn, which means you may unable to login."
msgstr ""
#: wwa-functions.php:156
#: wwa-functions.php:167
#: wwa-shortcodes.php:88
msgid "Username"
msgstr ""
#: wwa-functions.php:158
#: wwa-functions.php:169
msgid "<strong>Error</strong>: The username field is empty."
msgstr ""
#: wwa-functions.php:159
#: wwa-functions.php:170
#: wwa-shortcodes.php:42
msgid "Try to enter the username"
msgstr ""
#: wwa-functions.php:176
#: wwa-functions.php:185
msgid "Logging in with password has been disabled by the site manager."
msgstr ""
#: wwa-functions.php:182
#: wwa-functions.php:191
msgid "Logging in with password has been disabled for this account."
msgstr ""
#: wwa-functions.php:220
#: wwa-functions.php:275
msgid "Logging in with password has been disabled for %s but you haven't register any WebAuthn authenticator yet. You may unable to login again once you log out. <a href=\"%s#wwa-webauthn-start\">Register</a>"
msgstr ""
#: wwa-functions.php:220
#: wwa-functions.php:265
#: wwa-functions.php:275
#: wwa-functions.php:320
msgid "the site"
msgstr ""
#: wwa-functions.php:220
#: wwa-functions.php:275
msgid "your account"
msgstr ""
#: wwa-functions.php:265
#: wwa-functions.php:320
msgid "Logging in with password has been disabled for %s but <strong>this account</strong> haven't register any WebAuthn authenticator yet. This user may unable to login."
msgstr ""
#: wwa-functions.php:265
#: wwa-functions.php:320
msgid "this account"
msgstr ""
#: wwa-functions.php:293
#: wwa-functions.php:348
msgid "Settings"
msgstr ""
#: wwa-functions.php:301
#: wwa-functions.php:356
msgid "GitHub"
msgstr ""
#: wwa-functions.php:302
#: wwa-functions.php:357
msgid "Documentation"
msgstr ""
@ -323,11 +382,6 @@ msgstr ""
msgid "Please enter the authenticator identifier"
msgstr ""
#: wwa-profile-content.php:14
#: wwa-shortcodes.php:26
msgid "Loading failed, maybe try refreshing?"
msgstr ""
#: wwa-profile-content.php:16
#: wwa-shortcodes.php:34
msgid "Platform authenticator"
@ -433,129 +487,138 @@ msgstr ""
msgid "The site administrator only allow roaming authenticators currently."
msgstr ""
#: wwa-profile-content.php:50
#: wwa-profile-content.php:63
msgid "You've successfully registered! Now you can register your authenticators below."
msgstr ""
#: wwa-profile-content.php:75
msgid "This site is not correctly configured to use WebAuthn. Please contact the site administrator."
msgstr ""
#: wwa-profile-content.php:60
#: wwa-profile-content.php:85
msgid "Disable password login for this account"
msgstr ""
#: wwa-profile-content.php:62
#: wwa-profile-content.php:87
msgid "When checked, password login will be completely disabled. Please make sure your browser supports WebAuthn and you have a registered authenticator, otherwise you may unable to login."
msgstr ""
#: wwa-profile-content.php:62
#: wwa-profile-content.php:87
msgid "The site administrator has disabled password login for the whole site."
msgstr ""
#: wwa-profile-content.php:66
#: wwa-profile-content.php:91
msgid "Registered WebAuthn Authenticators"
msgstr ""
#: wwa-profile-content.php:71
#: wwa-profile-content.php:86
#: wwa-profile-content.php:96
#: wwa-profile-content.php:111
#: wwa-shortcodes.php:156
#: wwa-shortcodes.php:158
msgid "Identifier"
msgstr ""
#: wwa-profile-content.php:72
#: wwa-profile-content.php:87
#: wwa-profile-content.php:97
#: wwa-profile-content.php:112
#: wwa-shortcodes.php:156
#: wwa-shortcodes.php:158
msgid "Type"
msgstr ""
#: wwa-profile-content.php:73
#: wwa-profile-content.php:88
#: wwa-profile-content.php:98
#: wwa-profile-content.php:113
#: wwa-shortcodes.php:156
#: wwa-shortcodes.php:158
msgctxt "time"
msgid "Registered"
msgstr ""
#: wwa-profile-content.php:74
#: wwa-profile-content.php:89
#: wwa-profile-content.php:99
#: wwa-profile-content.php:114
msgid "Last used"
msgstr ""
#: wwa-profile-content.php:75
#: wwa-profile-content.php:90
#: wwa-profile-content.php:100
#: wwa-profile-content.php:115
#: wwa-shortcodes.php:156
#: wwa-shortcodes.php:158
msgid "Usernameless"
msgstr ""
#: wwa-profile-content.php:76
#: wwa-profile-content.php:91
#: wwa-profile-content.php:101
#: wwa-profile-content.php:116
#: wwa-shortcodes.php:156
#: wwa-shortcodes.php:158
msgid "Action"
msgstr ""
#: wwa-profile-content.php:81
#: wwa-profile-content.php:106
#: wwa-shortcodes.php:157
msgid "Loading..."
msgstr ""
#: wwa-profile-content.php:98
#: wwa-profile-content.php:101
#: wwa-profile-content.php:123
#: wwa-profile-content.php:126
msgid "Register New Authenticator"
msgstr ""
#: wwa-profile-content.php:98
#: wwa-profile-content.php:142
#: wwa-profile-content.php:123
#: wwa-profile-content.php:167
msgid "Verify Authenticator"
msgstr ""
#: wwa-profile-content.php:102
#: wwa-profile-content.php:127
msgid "You are about to associate an authenticator with the current account <strong>%s</strong>.<br>You can register multiple authenticators for an account."
msgstr ""
#: wwa-profile-content.php:105
#: wwa-profile-content.php:130
#: wwa-shortcodes.php:118
msgid "Type of authenticator"
msgstr ""
#: wwa-profile-content.php:115
#: wwa-profile-content.php:137
#: wwa-shortcodes.php:118
msgid "Platform (e.g. built-in fingerprint sensors)"
msgstr ""
#: wwa-profile-content.php:140
#: wwa-shortcodes.php:118
msgid "If a type is selected, the browser will only prompt for authenticators of selected type. <br> Regardless of the type, you can only log in with the very same authenticators you've registered."
msgstr ""
#: wwa-profile-content.php:119
#: wwa-profile-content.php:144
msgid "Authenticator Identifier"
msgstr ""
#: wwa-profile-content.php:122
#: wwa-profile-content.php:147
#: wwa-shortcodes.php:118
msgid "An easily identifiable name for the authenticator. <strong>DOES NOT</strong> affect the authentication process in anyway."
msgstr ""
#: wwa-profile-content.php:127
#: wwa-profile-content.php:152
#: wwa-shortcodes.php:118
msgid "Login without username"
msgstr ""
#: wwa-profile-content.php:132
#: wwa-profile-content.php:157
#: wwa-shortcodes.php:118
msgid "If registered authenticator with this feature, you can login without enter your username.<br>Some authenticators like U2F-only authenticators and some browsers <strong>DO NOT</strong> support this feature.<br>A record will be stored in the authenticator permanently untill you reset it."
msgstr ""
#: wwa-profile-content.php:138
#: wwa-profile-content.php:163
msgid "Start Registration"
msgstr ""
#: wwa-profile-content.php:143
#: wwa-profile-content.php:168
msgid "Click Test Login to verify that the registered authenticators are working."
msgstr ""
#: wwa-profile-content.php:144
#: wwa-profile-content.php:169
#: wwa-shortcodes.php:144
msgid "Test Login"
msgstr ""
#: wwa-profile-content.php:146
#: wwa-profile-content.php:171
#: wwa-shortcodes.php:144
msgid "Test Login (usernameless)"
msgstr ""

View File

@ -0,0 +1,708 @@
msgid ""
msgstr ""
"Project-Id-Version: WP-WebAuthn 1.2.8\n"
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-webauthn\n"
"POT-Creation-Date: 2022-06-08 12:21+0000\n"
"PO-Revision-Date: 2022-06-08 12:56+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: Unknown\n"
"Language: zxx\n"
"Plural-Forms: nplurals=2; plural=n!=1;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Loco-Source-Locale: ca_ES\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: __;_e;_ex:1,2c;_n:1,2;_n_noop:1,2;_nx:1,2,4c;_nx_noop:"
"1,2,3c;_x:1,2c;esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;"
"esc_html_x:1,2c\n"
"X-Poedit-SearchPath-0: .\n"
"X-Poedit-SearchPathExcluded-0: *.js\n"
"X-Poedit-SourceCharset: UTF-8\n"
"X-Domain: wp-webauthn\n"
"\n"
"X-Loco-Parser: loco_parse_po\n"
"X-Generator: Loco https://localise.biz/"
#. Plugin Name of the plugin
msgctxt "WP-WebAuthn"
msgid "WP-WebAuthn"
msgstr "WP-WebAuthn"
#. Plugin URI of the plugin
msgctxt "https://flyhigher.top"
msgid "https://flyhigher.top"
msgstr "https://flyhigher.top"
#. Description of the plugin
msgctxt ""
"WP-WebAuthn et permet iniciar sessió de forma segura al teu lloc de "
"WordPress sense contrasenya."
msgid ""
"WP-WebAuthn allows you to safely login to your WordPress site without "
"password."
msgstr ""
"WP-WebAuthn et permet iniciar sessió de forma segura al teu lloc de "
"WordPress sense contrasenya."
#. Author of the plugin
msgctxt "Axton"
msgid "Axton"
msgstr "Axton"
#. Author URI of the plugin
msgctxt "https://axton.cc"
msgid "https://axton.cc"
msgstr "https://axton.cc"
#: wwa-admin-content.php:6
msgctxt ""
"La verificació d'usuari està desactivada per defecte perquè alguns "
"dispositius mòbils no la suporten (especialment a dispositius Android). Però "
"et <strong>recomanem que l'activis</strong> si és possible per protegir "
"encara més l'inici de sessió."
msgid ""
"User verification is disabled by default because some mobile devices do not "
"support it (especially on Android devices). But we <strong>recommend you to "
"enable it</strong> if possible to further secure your login."
msgstr ""
"La verificació d'usuari està desactivada per defecte perquè alguns "
"dispositius mòbils no la suporten (especialment a dispositius Android). Però "
"et <strong>recomanem que l'activis</strong> si és possible per protegir "
"encara més l'inici de sessió."
#: wwa-admin-content.php:7 wwa-admin-content.php:245
msgid "Log count: "
msgstr "Recompte de registres: "
#: wwa-admin-content.php:8 wwa-profile-content.php:14 wwa-shortcodes.php:26
msgid "Loading failed, maybe try refreshing?"
msgstr "Ha fallat la càrrega, prova de refrescar la pàgina"
#: wwa-admin-content.php:16
msgid ""
"PHP extension gmp doesn't seem to exist, rendering WP-WebAuthn unable to "
"function."
msgstr ""
"L'extensió gmp de PHP sembla que no existeix, WP-WebAuthn no pot funcionar."
#: wwa-admin-content.php:20
msgid ""
"PHP extension mbstring doesn't seem to exist, rendering WP-WebAuthn unable "
"to function."
msgstr ""
"L'extensió mbsting de PHP sembla que no existeix, WP-WebAuthn no pot "
"funcionar."
#: wwa-admin-content.php:24
msgid ""
"PHP extension sodium doesn't seem to exist, rendering WP-WebAuthn unable to "
"function."
msgstr ""
"L'extensió sodium de PHP sembla que no existeix, WP-WebAuthn no pot "
"funcionar."
#: wwa-admin-content.php:28
msgid ""
"WebAuthn features are restricted to websites in secure contexts. Please make "
"sure your website is served over HTTPS or locally with <code>localhost</code>"
"."
msgstr ""
"Les funcionalitats de WebAuthn estan restringides a contextos segurs. Si us "
"plau, comprova que el teu lloc web està servit per HTTPS o localment amb "
"<code>localhost</code>."
#: wwa-admin-content.php:104
msgid "Settings saved."
msgstr "Configuració desada."
#: wwa-admin-content.php:106
msgid "Settings NOT saved."
msgstr "Configuració NO desada."
#: wwa-admin-content.php:121
msgid "Preferred login method"
msgstr "Mètode d'inici de sessió preferit"
#: wwa-admin-content.php:125
msgid "Prefer WebAuthn"
msgstr "Preferir WebAuthn"
#: wwa-admin-content.php:126
msgid "Prefer password"
msgstr "Preferir contrasenya"
#: wwa-admin-content.php:127 wwa-profile-content.php:56
msgid "WebAuthn Only"
msgstr "Només WebAuthn"
#: wwa-admin-content.php:129
msgid ""
"When using \"WebAuthn Only\", password login will be completely disabled. "
"Please make sure your browser supports WebAuthn, otherwise you may unable to "
"login.<br>User that doesn't have any registered authenticator (e.g. new user)"
" will unable to login when using \"WebAuthn Only\".<br>When the browser does "
"not support WebAuthn, the login method will default to password if password "
"login is not disabled."
msgstr ""
"Quan utilitzeu \"Només WebAuthn\", l'inici de sessió amb contrasenya es "
"desactivarà completament. Assegureu-vos que el vostre navegador admeti "
"WebAuthn, en cas contrari és possible que no pugueu iniciar la sessió.<br>"
"L'usuari que no tingui cap autenticador registrat (per exemple, un usuari "
"nou) no podrà iniciar sessió quan utilitzeu \"Només WebAuthn\".<br>Si el "
"navegador no és compatible amb WebAuthn, el mètode d'inici de sessió tindrà "
"la contrasenya per defecte si l'inici de sessió amb contrasenya no està "
"desactivat."
#: wwa-admin-content.php:133
msgid "Website identifier"
msgstr "Identificador del lloc web"
#: wwa-admin-content.php:136
msgid ""
"This identifier is for identification purpose only and <strong>DOES "
"NOT</strong> affect the authentication process in anyway."
msgstr ""
"Aquest identificador és només per a efectes d'identificació i <strong>"
"NO</strong> afecta el procés d'autenticació en cap manera."
#: wwa-admin-content.php:140
msgid "Website domain"
msgstr "Domini del lloc web"
#: wwa-admin-content.php:143
msgid ""
"This field <strong>MUST</strong> be exactly the same with the current domain "
"or parent domain."
msgstr ""
"Aquest camp <strong>HA</strong> de ser exactement el domini actual o el "
"domini arrel."
#: wwa-admin-content.php:150
msgid "Allow to remember login"
msgstr "Permetre recordar la sessió"
#: wwa-admin-content.php:159 wwa-admin-content.php:170
#: wwa-admin-content.php:186 wwa-admin-content.php:242
#: wwa-profile-content.php:130 wwa-shortcodes.php:118
msgid "Enable"
msgstr "Activar"
#: wwa-admin-content.php:160 wwa-admin-content.php:171
#: wwa-admin-content.php:187 wwa-admin-content.php:243
#: wwa-profile-content.php:131 wwa-shortcodes.php:118
msgid "Disable"
msgstr "Desactivar"
#: wwa-admin-content.php:161
msgid ""
"Show the 'Remember Me' checkbox beside the login form when using WebAuthn."
msgstr ""
"Mostrar la casella \"Recorda'm\" al formulari d'inici de sessió quan "
"s'utilitzi WebAuthn."
#: wwa-admin-content.php:166
msgid "Require user verification"
msgstr "Requerir verificació de l'usuari"
#: wwa-admin-content.php:172
msgid ""
"User verification can improve security, but is not fully supported by mobile "
"devices. <br> If you cannot register or verify your authenticators, please "
"consider disabling user verification."
msgstr ""
"La verificació d'usuari pot millorar la seguretat, però no està totalment "
"suportada en alguns dispositius mòbils. <br> Si no pots registrar o "
"verificar els teus autenticadors, considera desactivar la verificació "
"d'usuari."
#: wwa-admin-content.php:177
msgid "Allow to login without username"
msgstr "Permetre iniciar sessió sense un usuari"
#: wwa-admin-content.php:188
msgid ""
"Allow users to register authenticator with usernameless authentication "
"feature and login without username.<br><strong>User verification will be "
"enabled automatically when authenticating with usernameless authentication "
"feature.</strong><br>Some authenticators and some browsers <strong>DO "
"NOT</strong> support this feature."
msgstr ""
"Permet als usuaris registrar un autenticador amb la funcionalitat sense "
"usuari i iniciar sessió sense escriure el nom d'usuari.<br>La verificació "
"d'usuari s'activarà automaticament quan utilitzis aquesta funcionalitat."
"</strong><br>Alguns autenticadors i alguns navegadors <strong>NO</strong> "
"suporten aquesta funció."
#: wwa-admin-content.php:193
msgid "Allow a specific type of authenticator"
msgstr "Permet un tipus d'autenticador específic"
#: wwa-admin-content.php:202 wwa-profile-content.php:15
#: wwa-profile-content.php:111 wwa-shortcodes.php:33 wwa-shortcodes.php:118
msgid "Any"
msgstr "Qualsevol"
#: wwa-admin-content.php:203 wwa-profile-content.php:112 wwa-shortcodes.php:118
msgid "Platform (e.g. built-in fingerprint sensors)"
msgstr "Plataforma (p. ex., sensors d'empremtes digitals integrats)"
#: wwa-admin-content.php:204 wwa-profile-content.php:113 wwa-shortcodes.php:118
msgid "Roaming (e.g. USB security keys)"
msgstr "Itinerància (p. ex., claus de seguretat USB)"
#: wwa-admin-content.php:206
msgid ""
"If a type is selected, the browser will only prompt for authenticators of "
"selected type when authenticating and user can only register authenticators "
"of selected type."
msgstr ""
"Si se selecciona un tipus, el navegador només demanarà un autenticador del "
"tipus seleccionat quan s'autentiqui i l'usuari només pot registrar "
"autenticadors del tipus seleccionat."
#: wwa-admin-content.php:213
msgid "After User Registration"
msgstr "Després del registre d'usuari"
#: wwa-admin-content.php:222
msgid "No action"
msgstr "Cap acció"
#: wwa-admin-content.php:223
msgid "Log user in immediately"
msgstr "Inicieu sessió immediatament a l'usuari"
#: wwa-admin-content.php:224
msgid "Redirect to WP-WebAuthn guide page"
msgstr "Redirigeix a la pàgina de guia de WP-WebAuthn"
#: wwa-admin-content.php:226
msgid ""
"What to do when a new user registered. Useful when \"WebAuthn Only\" is "
"enabled."
msgstr ""
"Què fer quan es registra un nou usuari. Útil quan \"Només WebAuthn\" està "
"habilitat."
#: wwa-admin-content.php:233
msgid "Logging"
msgstr "Enregistrant"
#: wwa-admin-content.php:245
msgid "Clear log"
msgstr "Buidar registre"
#: wwa-admin-content.php:247
msgid ""
"For debugging only. Enable only when needed.<br><strong>Note: Logs may "
"contain sensitive information.</strong>"
msgstr ""
"Només per a la depuració. Activa només quan sigui necessari.<br><strong>Nota:"
" els registres poden contenir informació sensible.</strong>"
#: wwa-admin-content.php:256
msgid "Log"
msgstr "Registre"
#: wwa-admin-content.php:258
msgid "Automatic update every 5 seconds."
msgstr "Actualització automàtica cada 5 segons."
#: wwa-admin-content.php:262
msgid ""
"To register a new authenticator or edit your authenticators, please go to <a "
"href=\"%s#wwa-webauthn-start\">your profile</a>."
msgstr ""
"Per registrar un nou autenticador o editar els vostres autenticadors, aneu a "
"<a href=\"%s#wwa-webauthn-start\">el vostre perfil</a>."
#: wwa-functions.php:148 wwa-shortcodes.php:88
msgid "Auth"
msgstr "Autenticació"
#: wwa-functions.php:149 wwa-shortcodes.php:11 wwa-shortcodes.php:85
#: wwa-shortcodes.php:88
msgid "Authenticate with WebAuthn"
msgstr "Autenticar-se amb WebAuthn"
#: wwa-functions.php:150 wwa-shortcodes.php:12
msgid "Hold on..."
msgstr "Espera..."
#: wwa-functions.php:151 wwa-shortcodes.php:13
msgid "Please proceed..."
msgstr "Si us plau, continueu..."
#: wwa-functions.php:152 wwa-shortcodes.php:14
msgid "Authenticating..."
msgstr "S'està autenticant..."
#: wwa-functions.php:153 wwa-shortcodes.php:15
msgid "Authenticated"
msgstr "Autenticat"
#: wwa-functions.php:154 wwa-shortcodes.php:16
msgid "Auth failed"
msgstr "L'autenticació ha fallat"
#: wwa-functions.php:155
msgid ""
"It looks like your browser doesn't support WebAuthn, which means you may "
"unable to login."
msgstr ""
"Sembla que el vostre navegador no és compatible amb WebAuthn, el que "
"significa que és possible que no pugueu iniciar sessió."
#: wwa-functions.php:156 wwa-shortcodes.php:88
msgid "Username"
msgstr "Nom d'usuari"
#: wwa-functions.php:158
msgid "<strong>Error</strong>: The username field is empty."
msgstr "<strong>Error</strong>: el camp del nom d'usuari està buit."
#: wwa-functions.php:159 wwa-shortcodes.php:42
msgid "Try to enter the username"
msgstr "Intenta introduir el nom d'usuari"
#: wwa-functions.php:174
msgid "Logging in with password has been disabled by the site manager."
msgstr ""
"L'administrador del lloc ha desactivat l'inici de sessió amb contrasenya."
#: wwa-functions.php:180
msgid "Logging in with password has been disabled for this account."
msgstr "S'ha desactivat l'inici de sessió amb contrasenya per a aquest compte."
#: wwa-functions.php:218
msgid ""
"Logging in with password has been disabled for %s but you haven't register "
"any WebAuthn authenticator yet. You may unable to login again once you log "
"out. <a href=\"%s#wwa-webauthn-start\">Register</a>"
msgstr ""
"L'inici de sessió amb contrasenya s'ha desactivat per a %s, però encara no "
"heu registrat cap autenticador WebAuthn. És possible que no pugueu tornar a "
"iniciar sessió un cop tanqueu la sessió. <a href=\"%s#wwa-webauthn-start\">"
"Registreu-vos</a>"
#: wwa-functions.php:218 wwa-functions.php:263
msgid "the site"
msgstr "el lloc web"
#: wwa-functions.php:218
msgid "your account"
msgstr "el teu compte"
#: wwa-functions.php:263
msgid ""
"Logging in with password has been disabled for %s but <strong>this "
"account</strong> haven't register any WebAuthn authenticator yet. This user "
"may unable to login."
msgstr ""
"L'inici de sessió amb contrasenya s'ha desactivat per a %s, però <strong>"
"aquest compte</strong> encara no ha registrat cap autenticador WebAuthn. És "
"possible que aquest usuari no pugui iniciar sessió."
#: wwa-functions.php:263
msgid "this account"
msgstr "aquest compte"
#: wwa-functions.php:291
msgid "Settings"
msgstr "Configuració"
#: wwa-functions.php:299
msgid "GitHub"
msgstr "GitHub"
#: wwa-functions.php:300
msgid "Documentation"
msgstr "Documentació"
#: wwa-profile-content.php:7
msgid "Initializing..."
msgstr "Inicialitzant..."
#: wwa-profile-content.php:8 wwa-shortcodes.php:37
msgid "Please follow instructions to finish registration..."
msgstr "Si us plau, seguiu les instruccions per finalitzar el registre..."
#: wwa-profile-content.php:9 wwa-shortcodes.php:38
msgctxt "action"
msgid "Registered"
msgstr "Registrat"
#: wwa-profile-content.php:10 wwa-shortcodes.php:39
msgid "Registration failed"
msgstr "El registre ha fallat"
#: wwa-profile-content.php:11 wwa-shortcodes.php:40
msgid "Your browser does not support WebAuthn"
msgstr "El vostre navegador no admet WebAuthn"
#: wwa-profile-content.php:12 wwa-shortcodes.php:41
msgid "Registrating..."
msgstr "S'està registrant..."
#: wwa-profile-content.php:13 wwa-shortcodes.php:21
msgid "Please enter the authenticator identifier"
msgstr "Introduïu l'identificador de l'autenticador"
#: wwa-profile-content.php:16 wwa-shortcodes.php:34
msgid "Platform authenticator"
msgstr "Autenticador de plataforma"
#: wwa-profile-content.php:17 wwa-shortcodes.php:35
msgid "Roaming authenticator"
msgstr "Autenticador d'itinerància"
#: wwa-profile-content.php:18 wwa-shortcodes.php:36
msgid "Remove"
msgstr "Eliminar"
#: wwa-profile-content.php:19 wwa-shortcodes.php:22
msgid "Please follow instructions to finish verification..."
msgstr "Si us plau, seguiu les instruccions per acabar la verificació..."
#: wwa-profile-content.php:20 wwa-shortcodes.php:23
msgid "Verifying..."
msgstr "S'està verificant..."
#: wwa-profile-content.php:21 wwa-shortcodes.php:24
msgid "Verification failed"
msgstr "La verificació ha fallat"
#: wwa-profile-content.php:22 wwa-shortcodes.php:25
msgid "Verification passed! You can now log in through WebAuthn"
msgstr "Verificació superada! Ara podeu iniciar sessió mitjançant WebAuthn"
#: wwa-profile-content.php:23 wwa-shortcodes.php:32
msgid "No registered authenticators"
msgstr "No hi ha autenticadors registrats"
#: wwa-profile-content.php:24 wwa-shortcodes.php:27
msgid "Confirm removal of authenticator: "
msgstr "Confirmeu l'eliminació de l'autenticador:"
#: wwa-profile-content.php:25 wwa-shortcodes.php:28
msgid "Removing..."
msgstr "Eliminant..."
#: wwa-profile-content.php:26 wwa-shortcodes.php:29
msgid "Rename"
msgstr "Canvia el nom"
#: wwa-profile-content.php:27 wwa-shortcodes.php:30
msgid "Rename the authenticator"
msgstr "Canvieu el nom de l'autenticador"
#: wwa-profile-content.php:28 wwa-shortcodes.php:31
msgid "Renaming..."
msgstr "S'està canviant el nom..."
#: wwa-profile-content.php:29 wwa-shortcodes.php:10
msgid "Ready"
msgstr "A punt"
#: wwa-profile-content.php:30 wwa-shortcodes.php:17
msgid "No"
msgstr "No"
#: wwa-profile-content.php:31 wwa-shortcodes.php:18
msgid " (Unavailable)"
msgstr "(No disponible)"
#: wwa-profile-content.php:32 wwa-shortcodes.php:19
msgid "The site administrator has disabled usernameless login feature."
msgstr ""
"L'administrador del lloc ha desactivat la funció d'inici de sessió sense nom "
"d'usuari."
#: wwa-profile-content.php:33 wwa-shortcodes.php:43
msgid ""
"After removing this authenticator, you will not be able to login with "
"WebAuthn"
msgstr ""
"Després d'eliminar aquest autenticador, no podreu iniciar sessió amb WebAuthn"
#: wwa-profile-content.php:34 wwa-shortcodes.php:44
msgid " (Disabled)"
msgstr "(Desactivat)"
#: wwa-profile-content.php:35 wwa-shortcodes.php:45
msgid "The site administrator only allow platform authenticators currently."
msgstr ""
"Actualment, l'administrador del lloc només permet autenticadors de "
"plataforma."
#: wwa-profile-content.php:36 wwa-shortcodes.php:46
msgid "The site administrator only allow roaming authenticators currently."
msgstr ""
"Actualment, l'administrador del lloc només permet autenticadors "
"d'itinerància."
#: wwa-profile-content.php:50
msgid ""
"This site is not correctly configured to use WebAuthn. Please contact the "
"site administrator."
msgstr ""
"Aquest lloc no està configurat correctament per utilitzar WebAuthn. Poseu-"
"vos en contacte amb l'administrador del lloc."
#: wwa-profile-content.php:60
msgid "Disable password login for this account"
msgstr "Desactiveu l'inici de sessió amb contrasenya per a aquest compte"
#: wwa-profile-content.php:62
msgid ""
"When checked, password login will be completely disabled. Please make sure "
"your browser supports WebAuthn and you have a registered authenticator, "
"otherwise you may unable to login."
msgstr ""
"Quan estigui marcat, l'inici de sessió amb contrasenya es desactivarà "
"completament. Assegureu-vos que el vostre navegador admet WebAuthn i que "
"teniu un autenticador registrat, en cas contrari, és possible que no pugueu "
"iniciar sessió."
#: wwa-profile-content.php:62
msgid "The site administrator has disabled password login for the whole site."
msgstr ""
"L'administrador del lloc ha desactivat l'inici de sessió amb contrasenya per "
"a tot el lloc."
#: wwa-profile-content.php:66
msgid "Registered WebAuthn Authenticators"
msgstr "Autenticadors WebAuthn registrats"
#: wwa-profile-content.php:71 wwa-profile-content.php:86
#: wwa-shortcodes.php:156 wwa-shortcodes.php:158
msgid "Identifier"
msgstr "Identificador"
#: wwa-profile-content.php:72 wwa-profile-content.php:87
#: wwa-shortcodes.php:156 wwa-shortcodes.php:158
msgid "Type"
msgstr "Tipus"
#: wwa-profile-content.php:73 wwa-profile-content.php:88
#: wwa-shortcodes.php:156 wwa-shortcodes.php:158
msgctxt "time"
msgid "Registered"
msgstr "Registrat"
#: wwa-profile-content.php:74 wwa-profile-content.php:89
msgid "Last used"
msgstr "Darrera utilització"
#: wwa-profile-content.php:75 wwa-profile-content.php:90
#: wwa-shortcodes.php:156 wwa-shortcodes.php:158
msgid "Usernameless"
msgstr "Sense nom d'usuari"
#: wwa-profile-content.php:76 wwa-profile-content.php:91
#: wwa-shortcodes.php:156 wwa-shortcodes.php:158
msgid "Action"
msgstr "Acció"
#: wwa-profile-content.php:81 wwa-shortcodes.php:157
msgid "Loading..."
msgstr "Carregant..."
#: wwa-profile-content.php:98 wwa-profile-content.php:101
msgid "Register New Authenticator"
msgstr "Registrar un nou autenticador"
#: wwa-profile-content.php:98 wwa-profile-content.php:142
msgid "Verify Authenticator"
msgstr "Verificar l'autenticador"
#: wwa-profile-content.php:102
msgid ""
"You are about to associate an authenticator with the current account <strong>"
"%s</strong>.<br>You can register multiple authenticators for an account."
msgstr ""
"Esteu a punt d'associar un autenticador amb el compte actual <strong>"
"%s</strong>.<br>Podeu registrar diversos autenticadors per a un compte."
#: wwa-profile-content.php:105 wwa-shortcodes.php:118
msgid "Type of authenticator"
msgstr "Tipus d'autenticador"
#: wwa-profile-content.php:115 wwa-shortcodes.php:118
msgid ""
"If a type is selected, the browser will only prompt for authenticators of "
"selected type. <br> Regardless of the type, you can only log in with the "
"very same authenticators you've registered."
msgstr ""
"Si se selecciona un tipus, el navegador només demanarà autenticadors del "
"tipus seleccionat. <br> Independentment del tipus, només podeu iniciar "
"sessió amb els mateixos autenticadors que heu registrat."
#: wwa-profile-content.php:119
msgid "Authenticator Identifier"
msgstr "Identificador de l'autenticador"
#: wwa-profile-content.php:122 wwa-shortcodes.php:118
msgid ""
"An easily identifiable name for the authenticator. <strong>DOES NOT</strong> "
"affect the authentication process in anyway."
msgstr ""
"Un nom fàcilment identificable per a l'autenticador. <strong>NO</strong> "
"afecta el procés d'autenticació de cap manera."
#: wwa-profile-content.php:127 wwa-shortcodes.php:118
msgid "Login without username"
msgstr "Inicieu sessió sense nom d'usuari"
#: wwa-profile-content.php:132 wwa-shortcodes.php:118
msgid ""
"If registered authenticator with this feature, you can login without enter "
"your username.<br>Some authenticators like U2F-only authenticators and some "
"browsers <strong>DO NOT</strong> support this feature.<br>A record will be "
"stored in the authenticator permanently untill you reset it."
msgstr ""
"Si teniu un autenticador registrat amb aquesta funció, podeu iniciar sessió "
"sense introduir el vostre nom d'usuari.<br>Alguns autenticadors com ara "
"autenticadors només U2F i alguns navegadors <strong>NO</strong> admeten "
"aquesta funció.<br>S'emmagatzemarà un registre a l'autenticador de manera "
"permanent fins que el reinicieu."
#: wwa-profile-content.php:138
msgid "Start Registration"
msgstr "Inicieu el registre"
#: wwa-profile-content.php:143
msgid ""
"Click Test Login to verify that the registered authenticators are working."
msgstr ""
"Feu clic a Prova l'inici de sessió per verificar que els autenticadors "
"registrats funcionen."
#: wwa-profile-content.php:144 wwa-shortcodes.php:144
msgid "Test Login"
msgstr "Prova l'inici de sessió"
#: wwa-profile-content.php:146 wwa-shortcodes.php:144
msgid "Test Login (usernameless)"
msgstr "Prova l'inici de sessió (sense nom d'usuari)"
#: wwa-shortcodes.php:20
msgid "Error: The username field is empty."
msgstr "Error: el camp del nom d'usuari està buit."
#: wwa-shortcodes.php:88
msgid "Authenticate with password"
msgstr "Autenticar-se amb contrasenya"
#: wwa-shortcodes.php:105 wwa-shortcodes.php:133 wwa-shortcodes.php:166
msgid "You haven't logged in yet."
msgstr "Encara no has iniciat sessió."
#: wwa-shortcodes.php:118
msgid "Authenticator identifier"
msgstr "Identificador de l'autenticador"
#: wwa-shortcodes.php:118
msgid "Start registration"
msgstr "Inicieu el registre"

View File

@ -0,0 +1,697 @@
# Copyright (C) 2022 Axton
# This file is distributed under the same license as the WP-WebAuthn plugin.
msgid ""
msgstr ""
"Project-Id-Version: WP-WebAuthn 1.2.8\n"
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-webauthn\n"
"POT-Creation-Date: \n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: es_ES\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: __;_e;_ex:1,2c;_n:1,2;_n_noop:1,2;_nx:1,2,4c;"
"_nx_noop:1,2,3c;_x:1,2c;esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;"
"esc_html_e;esc_html_x:1,2c\n"
"X-Poedit-SourceCharset: UTF-8\n"
"X-Domain: wp-webauthn\n"
"X-Generator: Poedit 3.0.1\n"
"X-Poedit-SearchPath-0: .\n"
"X-Poedit-SearchPathExcluded-0: *.js\n"
#. Plugin Name of the plugin
msgid "WP-WebAuthn"
msgstr "WP-WebAuthn"
#. Plugin URI of the plugin
msgid "https://flyhigher.top"
msgstr "https://flyhigher.top"
#. Description of the plugin
msgid ""
"WP-WebAuthn allows you to safely login to your WordPress site without "
"password."
msgstr ""
"WP-WebAuthn le permite iniciar sesión de forma segura en su sitio de "
"WordPress sin contraseña."
#. Author of the plugin
msgid "Axton"
msgstr "Axton"
#. Author URI of the plugin
msgid "https://axton.cc"
msgstr "https://axton.cc"
#: wwa-admin-content.php:6
msgid ""
"User verification is disabled by default because some mobile devices do not "
"support it (especially on Android devices). But we <strong>recommend you to "
"enable it</strong> if possible to further secure your login."
msgstr ""
"La verificación del usuario está desactivada por defecto porque algunos "
"dispositivos móviles no la admiten (especialmente en los dispositivos "
"Android). Pero le <strong>recomendamos que lo habilite</strong> si es "
"posible para asegurar aún más su inicio de sesión."
#: wwa-admin-content.php:7 wwa-admin-content.php:245
msgid "Log count: "
msgstr "Cuenta de registro: "
#: wwa-admin-content.php:8 wwa-profile-content.php:14 wwa-shortcodes.php:26
msgid "Loading failed, maybe try refreshing?"
msgstr "La carga ha fallado, ¿intenta refrescar la pestaña?"
#: wwa-admin-content.php:16
msgid ""
"PHP extension gmp doesn't seem to exist, rendering WP-WebAuthn unable to "
"function."
msgstr ""
"La extensión PHP gmp no parece existir, haciendo que WP-WebAuthn no pueda "
"funcionar."
#: wwa-admin-content.php:20
msgid ""
"PHP extension mbstring doesn't seem to exist, rendering WP-WebAuthn unable "
"to function."
msgstr ""
"La extensión PHP mbstring no parece existir, haciendo que WP-WebAuthn no "
"pueda funcionar."
#: wwa-admin-content.php:24
msgid ""
"PHP extension sodium doesn't seem to exist, rendering WP-WebAuthn unable to "
"function."
msgstr ""
"La extensión PHP sodium no parece existir, haciendo que WP-WebAuthn no pueda "
"funcionar."
#: wwa-admin-content.php:28
msgid ""
"WebAuthn features are restricted to websites in secure contexts. Please make "
"sure your website is served over HTTPS or locally with <code>localhost</"
"code>."
msgstr ""
"Las funciones de WebAuthn están restringidas a los sitios web en contextos "
"seguros. Asegúrese de que su sitio web se sirve a través de HTTPS o "
"localmente con <code>localhost</code>."
#: wwa-admin-content.php:104
msgid "Settings saved."
msgstr "Ajustes guardados."
#: wwa-admin-content.php:106
msgid "Settings NOT saved."
msgstr "Ajustes NO guardados."
#: wwa-admin-content.php:121
msgid "Preferred login method"
msgstr "Método de inicio de sesión preferido"
#: wwa-admin-content.php:125
msgid "Prefer WebAuthn"
msgstr "Preferir WebAuthn"
#: wwa-admin-content.php:126
msgid "Prefer password"
msgstr "Preferir contraseña"
#: wwa-admin-content.php:127 wwa-profile-content.php:56
msgid "WebAuthn Only"
msgstr "Sólo WebAuthn"
#: wwa-admin-content.php:129
msgid ""
"When using \"WebAuthn Only\", password login will be completely disabled. "
"Please make sure your browser supports WebAuthn, otherwise you may unable to "
"login.<br>User that doesn't have any registered authenticator (e.g. new "
"user) will unable to login when using \"WebAuthn Only\".<br>When the browser "
"does not support WebAuthn, the login method will default to password if "
"password login is not disabled."
msgstr ""
"Cuando se utiliza “Sólo WebAuthn”, el inicio de sesión con contraseña estará "
"completamente deshabilitado. Por favor, asegúrese de que su navegador es "
"compatible con WebAuthn, de lo contrario no podrá iniciar la sesión.<br>El "
"usuario que no tenga ningún autentificador registrado (por ejemplo, un nuevo "
"usuario) no podrá iniciar sesión cuando utilice “Sólo WebAuthn”.<br>Cuando "
"el navegador no admite WebAuthn, el método de inicio de sesión será por "
"defecto la contraseña si el inicio de sesión con contraseña no está "
"desactivado."
#: wwa-admin-content.php:133
msgid "Website identifier"
msgstr "Identificador del sitio web"
#: wwa-admin-content.php:136
msgid ""
"This identifier is for identification purpose only and <strong>DOES NOT</"
"strong> affect the authentication process in anyway."
msgstr ""
"Este identificador es sólo para fines de identificación y <strong>NO</"
"strong> afecta al proceso de autenticación de ninguna manera."
#: wwa-admin-content.php:140
msgid "Website domain"
msgstr "Dominio del sitio web"
#: wwa-admin-content.php:143
msgid ""
"This field <strong>MUST</strong> be exactly the same with the current domain "
"or parent domain."
msgstr ""
"Este campo <strong>DEBE</strong> ser exactamente el mismo con el dominio "
"actual o el dominio principal."
#: wwa-admin-content.php:150
msgid "Allow to remember login"
msgstr "Permitir recordar el inicio de sesión"
#: wwa-admin-content.php:159 wwa-admin-content.php:170
#: wwa-admin-content.php:186 wwa-admin-content.php:242
#: wwa-profile-content.php:130 wwa-shortcodes.php:118
msgid "Enable"
msgstr "Activar"
#: wwa-admin-content.php:160 wwa-admin-content.php:171
#: wwa-admin-content.php:187 wwa-admin-content.php:243
#: wwa-profile-content.php:131 wwa-shortcodes.php:118
msgid "Disable"
msgstr "Desactivar"
#: wwa-admin-content.php:161
msgid ""
"Show the 'Remember Me' checkbox beside the login form when using WebAuthn."
msgstr ""
"Mostrar la casilla “Recuérdame” al lado del formulario de acceso cuando se "
"utiliza WebAuthn."
#: wwa-admin-content.php:166
msgid "Require user verification"
msgstr "Requerir la verificación del usuario"
#: wwa-admin-content.php:172
msgid ""
"User verification can improve security, but is not fully supported by mobile "
"devices. <br> If you cannot register or verify your authenticators, please "
"consider disabling user verification."
msgstr ""
"La verificación de usuario puede mejorar la seguridad, pero no es totalmente "
"compatible con los dispositivos móviles. <br> Si no puedes registrar o "
"verificar tus autenticadores, considera desactivar la verificación de "
"usuario."
#: wwa-admin-content.php:177
msgid "Allow to login without username"
msgstr "Permitir el acceso sin nombre de usuario"
#: wwa-admin-content.php:188
msgid ""
"Allow users to register authenticator with usernameless authentication "
"feature and login without username.<br><strong>User verification will be "
"enabled automatically when authenticating with usernameless authentication "
"feature.</strong><br>Some authenticators and some browsers <strong>DO NOT</"
"strong> support this feature."
msgstr ""
"Permitir a los usuarios registrar el autentificador con la función de "
"autentificación sin nombre de usuario y conectarse sin nombre de usuario."
"<br><strong>La verificación del usuario se activará automáticamente cuando "
"se autentique con la función de autenticación sin nombre.</"
"strong><br>Algunos autenticadores y algunos navegadores <strong>NO</strong> "
"soportan esta función."
#: wwa-admin-content.php:193
msgid "Allow a specific type of authenticator"
msgstr "Permitir un tipo específico de autentificador"
#: wwa-admin-content.php:202 wwa-profile-content.php:15
#: wwa-profile-content.php:111 wwa-shortcodes.php:33 wwa-shortcodes.php:118
msgid "Any"
msgstr "Cualquier"
#: wwa-admin-content.php:203 wwa-profile-content.php:112 wwa-shortcodes.php:118
msgid "Platform (e.g. built-in fingerprint sensors)"
msgstr "Plataforma (por ejemplo, sensores de huellas dactilares integrados)"
#: wwa-admin-content.php:204 wwa-profile-content.php:113 wwa-shortcodes.php:118
msgid "Roaming (e.g. USB security keys)"
msgstr "Roaming (por ejemplo, llaves de seguridad USB)"
#: wwa-admin-content.php:206
msgid ""
"If a type is selected, the browser will only prompt for authenticators of "
"selected type when authenticating and user can only register authenticators "
"of selected type."
msgstr ""
"Si se selecciona un tipo, el navegador sólo pedirá autenticadores del tipo "
"seleccionado cuando se autentique y el usuario sólo podrá registrar "
"autenticadores del tipo seleccionado."
#: wwa-admin-content.php:213
msgid "After User Registration"
msgstr "Tras el registro del usuario"
#: wwa-admin-content.php:222
msgid "No action"
msgstr "Ninguna acción"
#: wwa-admin-content.php:223
msgid "Log user in immediately"
msgstr "Iniciar la sesión del usuario inmediatamente"
#: wwa-admin-content.php:224
msgid "Redirect to WP-WebAuthn guide page"
msgstr "Redirigir a la página de la guía de WP-WebAuthn"
#: wwa-admin-content.php:226
msgid ""
"What to do when a new user registered. Useful when \"WebAuthn Only\" is "
"enabled."
msgstr ""
"Qué hacer cuando se registra un nuevo usuario. Útil cuando se habilita “Sólo "
"WebAuthn”."
#: wwa-admin-content.php:233
msgid "Logging"
msgstr "Registrando"
#: wwa-admin-content.php:245
msgid "Clear log"
msgstr "Borrar registro"
#: wwa-admin-content.php:247
msgid ""
"For debugging only. Enable only when needed.<br><strong>Note: Logs may "
"contain sensitive information.</strong>"
msgstr ""
"Sólo para depuración. Habilitar sólo cuando sea necesario.<br><strong>Nota: "
"Los registros pueden contener información sensible.</strong>"
#: wwa-admin-content.php:256
msgid "Log"
msgstr "Registro"
#: wwa-admin-content.php:258
msgid "Automatic update every 5 seconds."
msgstr "Actualización automática cada 5 segundos."
#: wwa-admin-content.php:262
msgid ""
"To register a new authenticator or edit your authenticators, please go to <a "
"href=\"%s#wwa-webauthn-start\">your profile</a>."
msgstr ""
"Para registrar un nuevo autentificador o editar sus autentificadores, vaya a "
"<a href=\"%s#wwa-webauthn-start\">su perfil</a>."
#: wwa-functions.php:148 wwa-shortcodes.php:88
msgid "Auth"
msgstr "Auténtico"
#: wwa-functions.php:149 wwa-shortcodes.php:11 wwa-shortcodes.php:85
#: wwa-shortcodes.php:88
msgid "Authenticate with WebAuthn"
msgstr "Autenticación con WebAuthn"
#: wwa-functions.php:150 wwa-shortcodes.php:12
msgid "Hold on..."
msgstr "Espere…"
#: wwa-functions.php:151 wwa-shortcodes.php:13
msgid "Please proceed..."
msgstr "Por favor, proceda…"
#: wwa-functions.php:152 wwa-shortcodes.php:14
msgid "Authenticating..."
msgstr "Autenticación…"
#: wwa-functions.php:153 wwa-shortcodes.php:15
msgid "Authenticated"
msgstr "Autenticado"
#: wwa-functions.php:154 wwa-shortcodes.php:16
msgid "Auth failed"
msgstr "Autorización fallida"
#: wwa-functions.php:155
msgid ""
"It looks like your browser doesn't support WebAuthn, which means you may "
"unable to login."
msgstr ""
"Parece que tu navegador no es compatible con WebAuthn, lo que significa que "
"no puedes iniciar sesión."
#: wwa-functions.php:156 wwa-shortcodes.php:88
msgid "Username"
msgstr "Nombre de usuario"
#: wwa-functions.php:158
msgid "<strong>Error</strong>: The username field is empty."
msgstr "<strong>Error</strong>: El campo del nombre de usuario está vacío."
#: wwa-functions.php:159 wwa-shortcodes.php:42
msgid "Try to enter the username"
msgstr "Intenta introducir el nombre de usuario"
#: wwa-functions.php:174
msgid "Logging in with password has been disabled by the site manager."
msgstr ""
"El administrador del sitio ha desactivado el inicio de sesión con contraseña."
#: wwa-functions.php:180
msgid "Logging in with password has been disabled for this account."
msgstr "Se ha desactivado el inicio de sesión con contraseña para esta cuenta."
#: wwa-functions.php:218
msgid ""
"Logging in with password has been disabled for %s but you haven't register "
"any WebAuthn authenticator yet. You may unable to login again once you log "
"out. <a href=\"%s#wwa-webauthn-start\">Register</a>"
msgstr ""
"El inicio de sesión con contraseña se ha desactivado para %s pero aún no ha "
"registrado ningún autentificador WebAuthn. Es posible que no pueda volver a "
"conectarse una vez que haya cerrado la sesión. <a href=\"%s#wwa-webauthn-"
"start\">Registrar</a>"
#: wwa-functions.php:218 wwa-functions.php:263
msgid "the site"
msgstr "el sitio"
#: wwa-functions.php:218
msgid "your account"
msgstr "su cuenta"
#: wwa-functions.php:263
msgid ""
"Logging in with password has been disabled for %s but <strong>this account</"
"strong> haven't register any WebAuthn authenticator yet. This user may "
"unable to login."
msgstr ""
"El inicio de sesión con contraseña se ha desactivado para %s pero "
"<strong>esta cuenta</strong> aún no ha registrado ningún autentificador "
"WebAuthn. Es posible que este usuario no pueda iniciar sesión."
#: wwa-functions.php:263
msgid "this account"
msgstr "esta cuenta"
#: wwa-functions.php:291
msgid "Settings"
msgstr "Ajustes"
#: wwa-functions.php:299
msgid "GitHub"
msgstr "GitHub"
#: wwa-functions.php:300
msgid "Documentation"
msgstr "Documentación"
#: wwa-profile-content.php:7
msgid "Initializing..."
msgstr "Iniciando…"
#: wwa-profile-content.php:8 wwa-shortcodes.php:37
msgid "Please follow instructions to finish registration..."
msgstr "Por favor, siga las instrucciones para finalizar el registro…"
#: wwa-profile-content.php:9 wwa-shortcodes.php:38
msgctxt "action"
msgid "Registered"
msgstr "Registrado"
#: wwa-profile-content.php:10 wwa-shortcodes.php:39
msgid "Registration failed"
msgstr "Registro fallido"
#: wwa-profile-content.php:11 wwa-shortcodes.php:40
msgid "Your browser does not support WebAuthn"
msgstr "Su navegador no soporta WebAuthn"
#: wwa-profile-content.php:12 wwa-shortcodes.php:41
msgid "Registrating..."
msgstr "Registrándose…"
#: wwa-profile-content.php:13 wwa-shortcodes.php:21
msgid "Please enter the authenticator identifier"
msgstr "Por favor, introduzca el identificador del autentificador"
#: wwa-profile-content.php:16 wwa-shortcodes.php:34
msgid "Platform authenticator"
msgstr "Autentificador de plataforma"
#: wwa-profile-content.php:17 wwa-shortcodes.php:35
msgid "Roaming authenticator"
msgstr "Autentificador itinerante"
#: wwa-profile-content.php:18 wwa-shortcodes.php:36
msgid "Remove"
msgstr "Eliminar"
#: wwa-profile-content.php:19 wwa-shortcodes.php:22
msgid "Please follow instructions to finish verification..."
msgstr "Por favor, siga las instrucciones para terminar la verificación…"
#: wwa-profile-content.php:20 wwa-shortcodes.php:23
msgid "Verifying..."
msgstr "Verificando…"
#: wwa-profile-content.php:21 wwa-shortcodes.php:24
msgid "Verification failed"
msgstr "Verificación fallida"
#: wwa-profile-content.php:22 wwa-shortcodes.php:25
msgid "Verification passed! You can now log in through WebAuthn"
msgstr "¡Verificación superada! Ahora puede conectarse a través de WebAuthn"
#: wwa-profile-content.php:23 wwa-shortcodes.php:32
msgid "No registered authenticators"
msgstr "No hay autentificadores registrados"
#: wwa-profile-content.php:24 wwa-shortcodes.php:27
msgid "Confirm removal of authenticator: "
msgstr "Confirme la retirada del autentificador: "
#: wwa-profile-content.php:25 wwa-shortcodes.php:28
msgid "Removing..."
msgstr "Quitando…"
#: wwa-profile-content.php:26 wwa-shortcodes.php:29
msgid "Rename"
msgstr "Renombrar"
#: wwa-profile-content.php:27 wwa-shortcodes.php:30
msgid "Rename the authenticator"
msgstr "Cambiar el nombre del autentificador"
#: wwa-profile-content.php:28 wwa-shortcodes.php:31
msgid "Renaming..."
msgstr "Renombrar…"
#: wwa-profile-content.php:29 wwa-shortcodes.php:10
msgid "Ready"
msgstr "Listo"
#: wwa-profile-content.php:30 wwa-shortcodes.php:17
msgid "No"
msgstr "No"
#: wwa-profile-content.php:31 wwa-shortcodes.php:18
msgid " (Unavailable)"
msgstr " (No disponible)"
#: wwa-profile-content.php:32 wwa-shortcodes.php:19
msgid "The site administrator has disabled usernameless login feature."
msgstr ""
"El administrador del sitio ha desactivado la función de inicio de sesión sin "
"nombre."
#: wwa-profile-content.php:33 wwa-shortcodes.php:43
msgid ""
"After removing this authenticator, you will not be able to login with "
"WebAuthn"
msgstr ""
"Después de eliminar este autentificador, no podrá iniciar sesión con WebAuthn"
#: wwa-profile-content.php:34 wwa-shortcodes.php:44
msgid " (Disabled)"
msgstr " (Desactivado)"
#: wwa-profile-content.php:35 wwa-shortcodes.php:45
msgid "The site administrator only allow platform authenticators currently."
msgstr ""
"El administrador del sitio sólo permite actualmente autenticadores de "
"plataforma."
#: wwa-profile-content.php:36 wwa-shortcodes.php:46
msgid "The site administrator only allow roaming authenticators currently."
msgstr ""
"El administrador del sitio sólo permite actualmente autenticadores "
"itinerantes."
#: wwa-profile-content.php:50
msgid ""
"This site is not correctly configured to use WebAuthn. Please contact the "
"site administrator."
msgstr ""
"Este sitio no está correctamente configurado para utilizar WebAuthn. Por "
"favor, póngase en contacto con el administrador del sitio."
#: wwa-profile-content.php:60
msgid "Disable password login for this account"
msgstr "Desactivar el inicio de sesión con contraseña para esta cuenta"
#: wwa-profile-content.php:62
msgid ""
"When checked, password login will be completely disabled. Please make sure "
"your browser supports WebAuthn and you have a registered authenticator, "
"otherwise you may unable to login."
msgstr ""
"Cuando se marca, el inicio de sesión con contraseña estará completamente "
"deshabilitado. Asegúrese de que su navegador es compatible con WebAuthn y de "
"que tiene un autentificador registrado; de lo contrario, es posible que no "
"pueda iniciar sesión."
#: wwa-profile-content.php:62
msgid "The site administrator has disabled password login for the whole site."
msgstr ""
"El administrador del sitio ha desactivado el inicio de sesión con contraseña "
"para todo el sitio."
#: wwa-profile-content.php:66
msgid "Registered WebAuthn Authenticators"
msgstr "Autenticadores WebAuthn registrados"
#: wwa-profile-content.php:71 wwa-profile-content.php:86 wwa-shortcodes.php:156
#: wwa-shortcodes.php:158
msgid "Identifier"
msgstr "Identificador"
#: wwa-profile-content.php:72 wwa-profile-content.php:87 wwa-shortcodes.php:156
#: wwa-shortcodes.php:158
msgid "Type"
msgstr "Tipo"
#: wwa-profile-content.php:73 wwa-profile-content.php:88 wwa-shortcodes.php:156
#: wwa-shortcodes.php:158
msgctxt "time"
msgid "Registered"
msgstr "Registrado"
#: wwa-profile-content.php:74 wwa-profile-content.php:89
msgid "Last used"
msgstr "Última vez que se utilizó"
#: wwa-profile-content.php:75 wwa-profile-content.php:90 wwa-shortcodes.php:156
#: wwa-shortcodes.php:158
msgid "Usernameless"
msgstr "Sin nombre de usuario"
#: wwa-profile-content.php:76 wwa-profile-content.php:91 wwa-shortcodes.php:156
#: wwa-shortcodes.php:158
msgid "Action"
msgstr "Ación"
#: wwa-profile-content.php:81 wwa-shortcodes.php:157
msgid "Loading..."
msgstr "Cargando…"
#: wwa-profile-content.php:98 wwa-profile-content.php:101
msgid "Register New Authenticator"
msgstr "Registrar un nuevo autentificador"
#: wwa-profile-content.php:98 wwa-profile-content.php:142
msgid "Verify Authenticator"
msgstr "Verificar Authenticator"
#: wwa-profile-content.php:102
msgid ""
"You are about to associate an authenticator with the current account <strong>"
"%s</strong>.<br>You can register multiple authenticators for an account."
msgstr ""
"Va a asociar un autentificador a la cuenta actual <strong>%s</strong>."
"<br>Puede registrar varios autentificadores para una cuenta."
#: wwa-profile-content.php:105 wwa-shortcodes.php:118
msgid "Type of authenticator"
msgstr "Tipo de autentificador"
#: wwa-profile-content.php:115 wwa-shortcodes.php:118
msgid ""
"If a type is selected, the browser will only prompt for authenticators of "
"selected type. <br> Regardless of the type, you can only log in with the "
"very same authenticators you've registered."
msgstr ""
"Si se selecciona un tipo, el navegador sólo pedirá autentificadores del tipo "
"seleccionado. <br> Independientemente del tipo, sólo puedes iniciar sesión "
"con los mismos autentificadores que hayas registrado."
#: wwa-profile-content.php:119
msgid "Authenticator Identifier"
msgstr "Identificador del autentificador"
#: wwa-profile-content.php:122 wwa-shortcodes.php:118
msgid ""
"An easily identifiable name for the authenticator. <strong>DOES NOT</strong> "
"affect the authentication process in anyway."
msgstr ""
"Un nombre fácilmente identificable para el autentificador. <strong>NO</"
"strong> afecta al proceso de autenticación de ninguna manera."
#: wwa-profile-content.php:127 wwa-shortcodes.php:118
msgid "Login without username"
msgstr "Iniciar sesión sin nombre de usuario"
#: wwa-profile-content.php:132 wwa-shortcodes.php:118
msgid ""
"If registered authenticator with this feature, you can login without enter "
"your username.<br>Some authenticators like U2F-only authenticators and some "
"browsers <strong>DO NOT</strong> support this feature.<br>A record will be "
"stored in the authenticator permanently untill you reset it."
msgstr ""
"Si se registra el autentificador con esta función, puede iniciar la sesión "
"sin introducir su nombre de usuario.<br>Algunos autenticadores, como los "
"autenticadores sólo U2F, y algunos navegadores <strong>NO</strong> admiten "
"esta función.<br>El registro se almacenará en el autentificador de forma "
"permanente hasta que lo restablezca."
#: wwa-profile-content.php:138
msgid "Start Registration"
msgstr "Iniciar el registro"
#: wwa-profile-content.php:143
msgid ""
"Click Test Login to verify that the registered authenticators are working."
msgstr ""
"Haga clic en Probar inicio de sesión para verificar que los autenticadores "
"registrados funcionan."
#: wwa-profile-content.php:144 wwa-shortcodes.php:144
msgid "Test Login"
msgstr "Prueba de inicio de sesión"
#: wwa-profile-content.php:146 wwa-shortcodes.php:144
msgid "Test Login (usernameless)"
msgstr "Prueba de inicio de sesión (sin nombre de usuario)"
#: wwa-shortcodes.php:20
msgid "Error: The username field is empty."
msgstr "Error: El campo del nombre de usuario está vacío."
#: wwa-shortcodes.php:88
msgid "Authenticate with password"
msgstr "Autenticación con contraseña"
#: wwa-shortcodes.php:105 wwa-shortcodes.php:133 wwa-shortcodes.php:166
msgid "You haven't logged in yet."
msgstr "Todavía no te has conectado."
#: wwa-shortcodes.php:118
msgid "Authenticator identifier"
msgstr "Identificador del autentificador"
#: wwa-shortcodes.php:118
msgid "Start registration"
msgstr "Iniciar la registración"

View File

@ -0,0 +1,695 @@
# Copyright (C) 2022 Axton
# This file is distributed under the same license as the WP-WebAuthn plugin.
msgid ""
msgstr ""
"Project-Id-Version: WP-WebAuthn 1.2.8\n"
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-webauthn\n"
"POT-Creation-Date: \n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: it_IT\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: __;_e;_ex:1,2c;_n:1,2;_n_noop:1,2;_nx:1,2,4c;"
"_nx_noop:1,2,3c;_x:1,2c;esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;"
"esc_html_e;esc_html_x:1,2c\n"
"X-Poedit-SourceCharset: UTF-8\n"
"X-Domain: wp-webauthn\n"
"X-Generator: Poedit 3.0.1\n"
"X-Poedit-SearchPath-0: .\n"
"X-Poedit-SearchPathExcluded-0: *.js\n"
#. Plugin Name of the plugin
msgid "WP-WebAuthn"
msgstr "WP-WebAuthn"
#. Plugin URI of the plugin
msgid "https://flyhigher.top"
msgstr "https://flyhigher.top"
#. Description of the plugin
msgid ""
"WP-WebAuthn allows you to safely login to your WordPress site without "
"password."
msgstr ""
"WP-WebAuthn ti permette di accedere in modo sicuro al tuo sito WordPress "
"senza password."
#. Author of the plugin
msgid "Axton"
msgstr "Axton"
#. Author URI of the plugin
msgid "https://axton.cc"
msgstr "https://axton.cc"
#: wwa-admin-content.php:6
msgid ""
"User verification is disabled by default because some mobile devices do not "
"support it (especially on Android devices). But we <strong>recommend you to "
"enable it</strong> if possible to further secure your login."
msgstr ""
"La verifica dellutente è disattivata per impostazione predefinita perché "
"alcuni dispositivi mobili non la supportano (soprattutto quelli Android). "
"Tuttavia, <strong>vi consigliamo di attivarla</strong>, se possibile, per "
"rendere più sicuro il vostro accesso."
#: wwa-admin-content.php:7 wwa-admin-content.php:245
msgid "Log count: "
msgstr "Conteggio dei log: "
#: wwa-admin-content.php:8 wwa-profile-content.php:14 wwa-shortcodes.php:26
msgid "Loading failed, maybe try refreshing?"
msgstr "Caricamento fallito, provare ad aggiornare la scheda?"
#: wwa-admin-content.php:16
msgid ""
"PHP extension gmp doesn't seem to exist, rendering WP-WebAuthn unable to "
"function."
msgstr ""
"Lestensione PHP gmp non sembra esistere, rendendo WP-WebAuthn incapace di "
"funzionare."
#: wwa-admin-content.php:20
msgid ""
"PHP extension mbstring doesn't seem to exist, rendering WP-WebAuthn unable "
"to function."
msgstr ""
"Lestensione PHP mbstring non sembra esistere, rendendo WP-WebAuthn incapace "
"di funzionare."
#: wwa-admin-content.php:24
msgid ""
"PHP extension sodium doesn't seem to exist, rendering WP-WebAuthn unable to "
"function."
msgstr ""
"Lestensione PHP sodium non sembra esistere, rendendo WP-WebAuthn incapace "
"di funzionare."
#: wwa-admin-content.php:28
msgid ""
"WebAuthn features are restricted to websites in secure contexts. Please make "
"sure your website is served over HTTPS or locally with <code>localhost</"
"code>."
msgstr ""
"Le funzioni di WebAuthn sono limitate ai siti web in contesti sicuri. "
"Assicuratevi che il vostro sito web sia servito tramite HTTPS o localmente "
"con <code>localhost</code>."
#: wwa-admin-content.php:104
msgid "Settings saved."
msgstr "Impostazioni salvate."
#: wwa-admin-content.php:106
msgid "Settings NOT saved."
msgstr "Impostazioni NON salvate."
#: wwa-admin-content.php:121
msgid "Preferred login method"
msgstr "Metodo di login preferito"
#: wwa-admin-content.php:125
msgid "Prefer WebAuthn"
msgstr "Preferire WebAuthn"
#: wwa-admin-content.php:126
msgid "Prefer password"
msgstr "Preferire la password"
#: wwa-admin-content.php:127 wwa-profile-content.php:56
msgid "WebAuthn Only"
msgstr "Solo WebAuthn"
#: wwa-admin-content.php:129
msgid ""
"When using \"WebAuthn Only\", password login will be completely disabled. "
"Please make sure your browser supports WebAuthn, otherwise you may unable to "
"login.<br>User that doesn't have any registered authenticator (e.g. new "
"user) will unable to login when using \"WebAuthn Only\".<br>When the browser "
"does not support WebAuthn, the login method will default to password if "
"password login is not disabled."
msgstr ""
"Quando si utilizza “Solo WebAuthn”, il login con password sarà completamente "
"disabilitato. Assicuratevi che il vostro browser supporti WebAuthn, "
"altrimenti potreste non riuscire ad accedere.<br>Gli utenti che non hanno un "
"autenticatore registrato (ad esempio i nuovi utenti) non potranno accedere "
"quando si utilizza “Solo WebAuthn”.<br>Se il browser non supporta WebAuthn, "
"il metodo di accesso verrà impostato di default sulla password se il login "
"con password non è disabilitato."
#: wwa-admin-content.php:133
msgid "Website identifier"
msgstr "Identificatore del sito web"
#: wwa-admin-content.php:136
msgid ""
"This identifier is for identification purpose only and <strong>DOES NOT</"
"strong> affect the authentication process in anyway."
msgstr ""
"Questo identificatore serve solo per lidentificazione e <strong>NON</"
"strong> influisce in alcun modo sul processo di autenticazione."
#: wwa-admin-content.php:140
msgid "Website domain"
msgstr "Dominio del sito web"
#: wwa-admin-content.php:143
msgid ""
"This field <strong>MUST</strong> be exactly the same with the current domain "
"or parent domain."
msgstr ""
"Questo campo <strong>DEVE</strong> essere esattamente lo stesso del dominio "
"corrente o del dominio principale."
#: wwa-admin-content.php:150
msgid "Allow to remember login"
msgstr "Consentire di ricordare il login"
#: wwa-admin-content.php:159 wwa-admin-content.php:170
#: wwa-admin-content.php:186 wwa-admin-content.php:242
#: wwa-profile-content.php:130 wwa-shortcodes.php:118
msgid "Enable"
msgstr "Attiva"
#: wwa-admin-content.php:160 wwa-admin-content.php:171
#: wwa-admin-content.php:187 wwa-admin-content.php:243
#: wwa-profile-content.php:131 wwa-shortcodes.php:118
msgid "Disable"
msgstr "Disattiva"
#: wwa-admin-content.php:161
msgid ""
"Show the 'Remember Me' checkbox beside the login form when using WebAuthn."
msgstr ""
"Mostra la casella di controllo “Ricordami” accanto al modulo di accesso "
"quando si utilizza WebAuthn."
#: wwa-admin-content.php:166
msgid "Require user verification"
msgstr "Richiedere la verifica dellutente"
#: wwa-admin-content.php:172
msgid ""
"User verification can improve security, but is not fully supported by mobile "
"devices. <br> If you cannot register or verify your authenticators, please "
"consider disabling user verification."
msgstr ""
"La verifica dellutente può migliorare la sicurezza, ma non è completamente "
"supportata dai dispositivi mobili. <br> Se non è possibile registrare o "
"verificare gli autenticatori, si consiglia di disattivare la verifica utente."
#: wwa-admin-content.php:177
msgid "Allow to login without username"
msgstr "Consentire il login senza nome utente"
#: wwa-admin-content.php:188
msgid ""
"Allow users to register authenticator with usernameless authentication "
"feature and login without username.<br><strong>User verification will be "
"enabled automatically when authenticating with usernameless authentication "
"feature.</strong><br>Some authenticators and some browsers <strong>DO NOT</"
"strong> support this feature."
msgstr ""
"Consentire agli utenti di registrare lautenticatore con la funzione di "
"autenticazione senza nome utente e di accedere senza nome utente."
"<br><strong>La verifica dellutente viene attivata automaticamente quando ci "
"si autentica con la funzione di autenticazione senza nome.</"
"strong><br>Alcuni autenticatori e alcuni browser <strong>NON</strong> "
"supportano questa funzione."
#: wwa-admin-content.php:193
msgid "Allow a specific type of authenticator"
msgstr "Consentire un tipo specifico di autenticatore"
#: wwa-admin-content.php:202 wwa-profile-content.php:15
#: wwa-profile-content.php:111 wwa-shortcodes.php:33 wwa-shortcodes.php:118
msgid "Any"
msgstr "Qualsiasi"
#: wwa-admin-content.php:203 wwa-profile-content.php:112 wwa-shortcodes.php:118
msgid "Platform (e.g. built-in fingerprint sensors)"
msgstr "Piattaforma (ad es. sensori di impronte digitali integrati)"
#: wwa-admin-content.php:204 wwa-profile-content.php:113 wwa-shortcodes.php:118
msgid "Roaming (e.g. USB security keys)"
msgstr "Roaming (ad es. chiavi di sicurezza USB)"
#: wwa-admin-content.php:206
msgid ""
"If a type is selected, the browser will only prompt for authenticators of "
"selected type when authenticating and user can only register authenticators "
"of selected type."
msgstr ""
"Se si seleziona un tipo, il browser richiederà solo gli autenticatori del "
"tipo selezionato durante lautenticazione e lutente potrà registrare solo "
"gli autenticatori del tipo selezionato."
#: wwa-admin-content.php:213
msgid "After User Registration"
msgstr "Dopo la registrazione dellutente"
#: wwa-admin-content.php:222
msgid "No action"
msgstr "Nessuna azione"
#: wwa-admin-content.php:223
msgid "Log user in immediately"
msgstr "Accesso immediato dellutente"
#: wwa-admin-content.php:224
msgid "Redirect to WP-WebAuthn guide page"
msgstr "Reindirizzamento alla pagina della guida di WP-WebAuthn"
#: wwa-admin-content.php:226
msgid ""
"What to do when a new user registered. Useful when \"WebAuthn Only\" is "
"enabled."
msgstr ""
"Cosa fare quando si registra un nuovo utente. Utile quando è abilitato “Solo "
"WebAuthn”."
#: wwa-admin-content.php:233
msgid "Logging"
msgstr "Logging"
#: wwa-admin-content.php:245
msgid "Clear log"
msgstr "Cancella registro"
#: wwa-admin-content.php:247
msgid ""
"For debugging only. Enable only when needed.<br><strong>Note: Logs may "
"contain sensitive information.</strong>"
msgstr ""
"Solo per il debug. Abilitare solo se necessario.<br><strong>Nota: I registri "
"possono contenere informazioni sensibili.</strong>"
#: wwa-admin-content.php:256
msgid "Log"
msgstr "Log"
#: wwa-admin-content.php:258
msgid "Automatic update every 5 seconds."
msgstr "Aggiornamento automatico ogni 5 secondi."
#: wwa-admin-content.php:262
msgid ""
"To register a new authenticator or edit your authenticators, please go to <a "
"href=\"%s#wwa-webauthn-start\">your profile</a>."
msgstr ""
"Per registrare un nuovo autenticatore o modificare i propri autenticatori, "
"accedere a <a href=\"%s#wwa-webauthn-start\">il proprio profilo</a>."
#: wwa-functions.php:148 wwa-shortcodes.php:88
msgid "Auth"
msgstr "Autorizzazione"
#: wwa-functions.php:149 wwa-shortcodes.php:11 wwa-shortcodes.php:85
#: wwa-shortcodes.php:88
msgid "Authenticate with WebAuthn"
msgstr "Autenticare con WebAuthn"
#: wwa-functions.php:150 wwa-shortcodes.php:12
msgid "Hold on..."
msgstr "Un attimo…"
#: wwa-functions.php:151 wwa-shortcodes.php:13
msgid "Please proceed..."
msgstr "Si prega di procedere…"
#: wwa-functions.php:152 wwa-shortcodes.php:14
msgid "Authenticating..."
msgstr "Autenticazione…"
#: wwa-functions.php:153 wwa-shortcodes.php:15
msgid "Authenticated"
msgstr "Autenticato"
#: wwa-functions.php:154 wwa-shortcodes.php:16
msgid "Auth failed"
msgstr "Autorizzazione non riuscita"
#: wwa-functions.php:155
msgid ""
"It looks like your browser doesn't support WebAuthn, which means you may "
"unable to login."
msgstr ""
"Sembra che il vostro browser non supporti WebAuthn, il che significa che "
"potreste non riuscire ad accedere."
#: wwa-functions.php:156 wwa-shortcodes.php:88
msgid "Username"
msgstr "Nome utente"
#: wwa-functions.php:158
msgid "<strong>Error</strong>: The username field is empty."
msgstr "<strong>Errore</strong>: il campo nome utente è vuoto."
#: wwa-functions.php:159 wwa-shortcodes.php:42
msgid "Try to enter the username"
msgstr "Provare a inserire il nome utente"
#: wwa-functions.php:174
msgid "Logging in with password has been disabled by the site manager."
msgstr "Il login con password è stato disabilitato dal gestore del sito."
#: wwa-functions.php:180
msgid "Logging in with password has been disabled for this account."
msgstr "Laccesso con password è stato disabilitato per questo account."
#: wwa-functions.php:218
msgid ""
"Logging in with password has been disabled for %s but you haven't register "
"any WebAuthn authenticator yet. You may unable to login again once you log "
"out. <a href=\"%s#wwa-webauthn-start\">Register</a>"
msgstr ""
"Laccesso con password è stato disabilitato, ma non è stato ancora "
"registrato alcun autenticatore WebAuthn. È possibile che non si riesca ad "
"accedere nuovamente una volta effettuato il logout. <a href=\"%s#wwa-"
"webauthn-start\">Registrazione</a>"
#: wwa-functions.php:218 wwa-functions.php:263
msgid "the site"
msgstr "il sito"
#: wwa-functions.php:218
msgid "your account"
msgstr "il tuo account"
#: wwa-functions.php:263
msgid ""
"Logging in with password has been disabled for %s but <strong>this account</"
"strong> haven't register any WebAuthn authenticator yet. This user may "
"unable to login."
msgstr ""
"Il login con password è stato disabilitato per %s ma <strong>questo account</"
"strong> non ha ancora registrato alcun autenticatore WebAuthn. Questo utente "
"potrebbe non essere in grado di effettuare il login."
#: wwa-functions.php:263
msgid "this account"
msgstr "questo account"
#: wwa-functions.php:291
msgid "Settings"
msgstr "Impostazioni"
#: wwa-functions.php:299
msgid "GitHub"
msgstr "GitHub"
#: wwa-functions.php:300
msgid "Documentation"
msgstr "Documentazione"
#: wwa-profile-content.php:7
msgid "Initializing..."
msgstr "Inizializzazione…"
#: wwa-profile-content.php:8 wwa-shortcodes.php:37
msgid "Please follow instructions to finish registration..."
msgstr "Seguire le istruzioni per completare la registrazione…"
#: wwa-profile-content.php:9 wwa-shortcodes.php:38
msgctxt "action"
msgid "Registered"
msgstr "Registrato"
#: wwa-profile-content.php:10 wwa-shortcodes.php:39
msgid "Registration failed"
msgstr "Registrazione fallita"
#: wwa-profile-content.php:11 wwa-shortcodes.php:40
msgid "Your browser does not support WebAuthn"
msgstr "Il vostro browser non supporta WebAuthn"
#: wwa-profile-content.php:12 wwa-shortcodes.php:41
msgid "Registrating..."
msgstr "Registrazione…"
#: wwa-profile-content.php:13 wwa-shortcodes.php:21
msgid "Please enter the authenticator identifier"
msgstr "Inserire lidentificativo dellautenticatore"
#: wwa-profile-content.php:16 wwa-shortcodes.php:34
msgid "Platform authenticator"
msgstr "Autenticatore di piattaforma"
#: wwa-profile-content.php:17 wwa-shortcodes.php:35
msgid "Roaming authenticator"
msgstr "Autenticatore di roaming"
#: wwa-profile-content.php:18 wwa-shortcodes.php:36
msgid "Remove"
msgstr "Rimuovi"
#: wwa-profile-content.php:19 wwa-shortcodes.php:22
msgid "Please follow instructions to finish verification..."
msgstr "Seguire le istruzioni per completare la verifica…"
#: wwa-profile-content.php:20 wwa-shortcodes.php:23
msgid "Verifying..."
msgstr "Verificazione…"
#: wwa-profile-content.php:21 wwa-shortcodes.php:24
msgid "Verification failed"
msgstr "Verificazione fallita"
#: wwa-profile-content.php:22 wwa-shortcodes.php:25
msgid "Verification passed! You can now log in through WebAuthn"
msgstr ""
"Verifica approvata! Ora è possibile effettuare laccesso tramite WebAuthn"
#: wwa-profile-content.php:23 wwa-shortcodes.php:32
msgid "No registered authenticators"
msgstr "Nessun autenticatore registrato"
#: wwa-profile-content.php:24 wwa-shortcodes.php:27
msgid "Confirm removal of authenticator: "
msgstr "Confermare la rimozione dellautenticatore: "
#: wwa-profile-content.php:25 wwa-shortcodes.php:28
msgid "Removing..."
msgstr "Rimozione…"
#: wwa-profile-content.php:26 wwa-shortcodes.php:29
msgid "Rename"
msgstr "Rinonima"
#: wwa-profile-content.php:27 wwa-shortcodes.php:30
msgid "Rename the authenticator"
msgstr "Rinominare lautenticatore"
#: wwa-profile-content.php:28 wwa-shortcodes.php:31
msgid "Renaming..."
msgstr "Rinominando…"
#: wwa-profile-content.php:29 wwa-shortcodes.php:10
msgid "Ready"
msgstr "Pronto"
#: wwa-profile-content.php:30 wwa-shortcodes.php:17
msgid "No"
msgstr "No"
#: wwa-profile-content.php:31 wwa-shortcodes.php:18
msgid " (Unavailable)"
msgstr " (Non disponibile)"
#: wwa-profile-content.php:32 wwa-shortcodes.php:19
msgid "The site administrator has disabled usernameless login feature."
msgstr ""
"Lamministratore del sito ha disattivato la funzione di accesso senza nome."
#: wwa-profile-content.php:33 wwa-shortcodes.php:43
msgid ""
"After removing this authenticator, you will not be able to login with "
"WebAuthn"
msgstr ""
"Dopo aver rimosso lautenticatore, non sarà più possibile effettuare il "
"login con WebAuthn"
#: wwa-profile-content.php:34 wwa-shortcodes.php:44
msgid " (Disabled)"
msgstr " (Disabilitato)"
#: wwa-profile-content.php:35 wwa-shortcodes.php:45
msgid "The site administrator only allow platform authenticators currently."
msgstr ""
"Attualmente lamministratore del sito consente solo autenticatori di "
"piattaforma."
#: wwa-profile-content.php:36 wwa-shortcodes.php:46
msgid "The site administrator only allow roaming authenticators currently."
msgstr ""
"Attualmente lamministratore del sito consente solo gli autenticatori in "
"roaming."
#: wwa-profile-content.php:50
msgid ""
"This site is not correctly configured to use WebAuthn. Please contact the "
"site administrator."
msgstr ""
"Questo sito non è configurato correttamente per utilizzare WebAuthn. "
"Contattare lamministratore del sito."
#: wwa-profile-content.php:60
msgid "Disable password login for this account"
msgstr "Disabilita laccesso con password per questo account"
#: wwa-profile-content.php:62
msgid ""
"When checked, password login will be completely disabled. Please make sure "
"your browser supports WebAuthn and you have a registered authenticator, "
"otherwise you may unable to login."
msgstr ""
"Quando è selezionata, la password di accesso sarà completamente "
"disabilitata. Assicuratevi che il vostro browser supporti WebAuthn e che "
"abbiate un autenticatore registrato, altrimenti potreste non riuscire ad "
"accedere."
#: wwa-profile-content.php:62
msgid "The site administrator has disabled password login for the whole site."
msgstr ""
"Lamministratore del sito ha disabilitato il login con password per lintero "
"sito."
#: wwa-profile-content.php:66
msgid "Registered WebAuthn Authenticators"
msgstr "Autenticatori WebAuthn registrati"
#: wwa-profile-content.php:71 wwa-profile-content.php:86 wwa-shortcodes.php:156
#: wwa-shortcodes.php:158
msgid "Identifier"
msgstr "Identificatore"
#: wwa-profile-content.php:72 wwa-profile-content.php:87 wwa-shortcodes.php:156
#: wwa-shortcodes.php:158
msgid "Type"
msgstr "Tipo"
#: wwa-profile-content.php:73 wwa-profile-content.php:88 wwa-shortcodes.php:156
#: wwa-shortcodes.php:158
msgctxt "time"
msgid "Registered"
msgstr "Registrato"
#: wwa-profile-content.php:74 wwa-profile-content.php:89
msgid "Last used"
msgstr "Ultimo utilizzo"
#: wwa-profile-content.php:75 wwa-profile-content.php:90 wwa-shortcodes.php:156
#: wwa-shortcodes.php:158
msgid "Usernameless"
msgstr "Senza nome utente"
#: wwa-profile-content.php:76 wwa-profile-content.php:91 wwa-shortcodes.php:156
#: wwa-shortcodes.php:158
msgid "Action"
msgstr "Azione"
#: wwa-profile-content.php:81 wwa-shortcodes.php:157
msgid "Loading..."
msgstr "Caricamento in corso…"
#: wwa-profile-content.php:98 wwa-profile-content.php:101
msgid "Register New Authenticator"
msgstr "Registrazione di un nuovo autenticatore"
#: wwa-profile-content.php:98 wwa-profile-content.php:142
msgid "Verify Authenticator"
msgstr "Verificare lautenticatore"
#: wwa-profile-content.php:102
msgid ""
"You are about to associate an authenticator with the current account <strong>"
"%s</strong>.<br>You can register multiple authenticators for an account."
msgstr ""
"Si sta per associare un autenticatore allaccount corrente <strong>%s</"
"strong>.<br>È possibile registrare più autenticatori per un account."
#: wwa-profile-content.php:105 wwa-shortcodes.php:118
msgid "Type of authenticator"
msgstr "Tipo di autenticatore"
#: wwa-profile-content.php:115 wwa-shortcodes.php:118
msgid ""
"If a type is selected, the browser will only prompt for authenticators of "
"selected type. <br> Regardless of the type, you can only log in with the "
"very same authenticators you've registered."
msgstr ""
"If a type is selected, the browser will only prompt for authenticators of "
"selected type. <br> Indipendentemente dal tipo, è possibile accedere solo "
"con gli stessi autenticatori registrati."
#: wwa-profile-content.php:119
msgid "Authenticator Identifier"
msgstr "Identificatore dellautenticatore"
#: wwa-profile-content.php:122 wwa-shortcodes.php:118
msgid ""
"An easily identifiable name for the authenticator. <strong>DOES NOT</strong> "
"affect the authentication process in anyway."
msgstr ""
"An easily identifiable name for the authenticator. <strong>NON</strong> "
"influisce in alcun modo sul processo di autenticazione."
#: wwa-profile-content.php:127 wwa-shortcodes.php:118
msgid "Login without username"
msgstr "Accesso senza nome utente"
#: wwa-profile-content.php:132 wwa-shortcodes.php:118
msgid ""
"If registered authenticator with this feature, you can login without enter "
"your username.<br>Some authenticators like U2F-only authenticators and some "
"browsers <strong>DO NOT</strong> support this feature.<br>A record will be "
"stored in the authenticator permanently untill you reset it."
msgstr ""
"If registered authenticator with this feature, you can login without enter "
"your username. <br>Alcuni autenticatori, come gli autenticatori solo U2F e "
"alcuni browser, <strong>NON</strong> supportano questa funzione.<br>Un "
"record sarà memorizzato nellautenticatore in modo permanente fino a quando "
"non lo si resetta."
#: wwa-profile-content.php:138
msgid "Start Registration"
msgstr "Inizia registrazione"
#: wwa-profile-content.php:143
msgid ""
"Click Test Login to verify that the registered authenticators are working."
msgstr ""
"Fare clic su Prova accesso per verificare che gli autenticatori registrati "
"funzionino."
#: wwa-profile-content.php:144 wwa-shortcodes.php:144
msgid "Test Login"
msgstr "Test di accesso"
#: wwa-profile-content.php:146 wwa-shortcodes.php:144
msgid "Test Login (usernameless)"
msgstr "Test di accesso (senza nome utente)"
#: wwa-shortcodes.php:20
msgid "Error: The username field is empty."
msgstr "Errore: Il campo nome utente è vuoto."
#: wwa-shortcodes.php:88
msgid "Authenticate with password"
msgstr "Autenticazione con password"
#: wwa-shortcodes.php:105 wwa-shortcodes.php:133 wwa-shortcodes.php:166
msgid "You haven't logged in yet."
msgstr "Non hai ancora effettuato il login."
#: wwa-shortcodes.php:118
msgid "Authenticator identifier"
msgstr "Identificatore dellautenticatore"
#: wwa-shortcodes.php:118
msgid "Start registration"
msgstr "Avviare la registrazione"

View File

@ -1,21 +1,21 @@
=== WP-WebAuthn ===
Contributors: axton
Donate link: https://flyhigher.top/about
Tags: u2f, fido, fido2, webauthn, login, security, password, authentication
Tags: u2f, fido, fido2, webauthn, passkey, login, security, password, authentication
Requires at least: 5.0
Tested up to: 6.0
Stable tag: 1.2.8
Tested up to: 6.3
Stable tag: 1.3.1
Requires PHP: 7.2
License: GPLv3
License URI: https://www.gnu.org/licenses/gpl-3.0.html
WP-WebAuthn enables passwordless login through FIDO2 and U2F devices like FaceID or Windows Hello for your site.
WP-WebAuthn enables passwordless login through FIDO2 and U2F devices like Passkey, FaceID or Windows Hello for your site.
== Description ==
WebAuthn is a new way for you to authenticate in web. It helps you replace your passwords with devices like USB Keys, fingerprint scanners, Windows Hello compatible cameras, FaceID/TouchID and more. Using WebAuthn, you can login to your a website with a glance or touch.
WebAuthn is a new way for you to authenticate in web. It helps you replace your passwords with devices like Passkeys, USB Keys, fingerprint scanners, Windows Hello compatible cameras, FaceID/TouchID and more. Using WebAuthn, you can login to your a website with a glance or touch.
When using WebAuthn, you just need to click once and perform a simple verification on the authenticator, then you are logged in. **No password needed.**
When using WebAuthn, you just need to click once and perform a simple verification on the authenticator, then you are logged in. **No password needed.** If your device supports Passkey, your authenticator can roam seamlessly across multiple devices for a more convenient login experience.
WP-WebAuthn is a plug-in for WordPress to enable WebAuthn on your site. Just download and install it, and you are in the future of web authentication.
@ -80,6 +80,19 @@ To use FaceID or TouchID, you need to use iOS/iPadOS 14+.
== Changelog ==
= 1.3.1 =
Update: Translations
= 1.3.0 =
Add: Allow to login with email addresses
Add: Disable password reset
Add: After user registration
Add: Spanish-Latam translation (thanks to Eduardo Chongkan), Catalan translation (thanks to Aniol Pagès), Spanish and Italian translations (thanks to AlwaysReading)
Fix: Undefined username in Gutenberg Blocks
Fix: 2FA compatibility
Update: Translations
Update: Third party libraries
= 1.2.8 =
Fix: privilege check for admin panel

View File

@ -1,12 +0,0 @@
<?php
// autoload.php @generated by Composer
if (PHP_VERSION_ID < 50600) {
echo 'Composer 2.3.0 dropped support for autoloading on PHP <5.6 and you are running '.PHP_VERSION.', please upgrade PHP or use Composer 2.2 LTS via "composer self-update --2.2". Aborting.'.PHP_EOL;
exit(1);
}
require_once __DIR__ . '/composer/autoload_real.php';
return ComposerAutoloaderInit8c7684b956de574bcb0eefe2be31e0ab::getLoader();

View File

@ -1,55 +0,0 @@
<?php
// autoload_real.php @generated by Composer
class ComposerAutoloaderInit8c7684b956de574bcb0eefe2be31e0ab
{
private static $loader;
public static function loadClassLoader($class)
{
if ('Composer\Autoload\ClassLoader' === $class) {
require __DIR__ . '/ClassLoader.php';
}
}
/**
* @return \Composer\Autoload\ClassLoader
*/
public static function getLoader()
{
if (null !== self::$loader) {
return self::$loader;
}
spl_autoload_register(array('ComposerAutoloaderInit8c7684b956de574bcb0eefe2be31e0ab', 'loadClassLoader'), true, true);
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
spl_autoload_unregister(array('ComposerAutoloaderInit8c7684b956de574bcb0eefe2be31e0ab', 'loadClassLoader'));
require __DIR__ . '/autoload_static.php';
call_user_func(\Composer\Autoload\ComposerStaticInit8c7684b956de574bcb0eefe2be31e0ab::getInitializer($loader));
$loader->register(true);
$includeFiles = \Composer\Autoload\ComposerStaticInit8c7684b956de574bcb0eefe2be31e0ab::$files;
foreach ($includeFiles as $fileIdentifier => $file) {
composerRequire8c7684b956de574bcb0eefe2be31e0ab($fileIdentifier, $file);
}
return $loader;
}
}
/**
* @param string $fileIdentifier
* @param string $file
* @return void
*/
function composerRequire8c7684b956de574bcb0eefe2be31e0ab($fileIdentifier, $file)
{
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
$GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
require $file;
}
}

View File

@ -1,35 +0,0 @@
name: PHPUnit
on:
push:
branches:
- master
pull_request:
jobs:
phpunit:
name: PHPUnit
runs-on: ubuntu-latest
strategy:
matrix:
php:
- '7.1'
- '7.2'
- '7.3'
- '7.4'
- '8.0'
- '8.1'
steps:
- uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
coverage: none
extensions: gmp, bcmath
tools: composer
- uses: actions/checkout@v2
- name: Setup problem matchers
run: |
echo "::add-matcher::${{ runner.tool_cache }}/php.json"
echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json"
- run: composer install
- run: vendor/bin/phpunit

View File

@ -1,199 +0,0 @@
<?php
/*
* This file is part of the PHPASN1 library.
*
* Copyright © Friedrich Große <friedrich.grosse@gmail.com>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace FG\ASN1;
class OID
{
const RSA_ENCRYPTION = '1.2.840.113549.1.1.1';
const MD5_WITH_RSA_ENCRYPTION = '1.2.840.113549.1.1.4';
const SHA1_WITH_RSA_SIGNATURE = '1.2.840.113549.1.1.5';
const SHA256_WITH_RSA_SIGNATURE = '1.2.840.113549.1.1.11';
const PKCS9_EMAIL = '1.2.840.113549.1.9.1';
const PKCS9_UNSTRUCTURED_NAME = '1.2.840.113549.1.9.2';
const PKCS9_CONTENT_TYPE = '1.2.840.113549.1.9.3';
const PKCS9_MESSAGE_DIGEST = '1.2.840.113549.1.9.4';
const PKCS9_SIGNING_TIME = '1.2.840.113549.1.9.5';
const PKCS9_EXTENSION_REQUEST = '1.2.840.113549.1.9.14';
// certificate extension identifier
const CERT_EXT_SUBJECT_DIRECTORY_ATTR = '2.5.29.9';
const CERT_EXT_SUBJECT_KEY_IDENTIFIER = '2.5.29.14';
const CERT_EXT_KEY_USAGE = '2.5.29.15';
const CERT_EXT_PRIVATE_KEY_USAGE_PERIOD = '2.5.29.16';
const CERT_EXT_SUBJECT_ALT_NAME = '2.5.29.17';
const CERT_EXT_ISSUER_ALT_NAME = '2.5.29.18';
const CERT_EXT_BASIC_CONSTRAINTS = '2.5.29.19';
const CERT_EXT_CRL_NUMBER = '2.5.29.20';
const CERT_EXT_REASON_CODE = '2.5.29.21';
const CERT_EXT_INVALIDITY_DATE = '2.5.29.24';
const CERT_EXT_DELTA_CRL_INDICATOR = '2.5.29.27';
const CERT_EXT_ISSUING_DIST_POINT = '2.5.29.28';
const CERT_EXT_CERT_ISSUER = '2.5.29.29';
const CERT_EXT_NAME_CONSTRAINTS = '2.5.29.30';
const CERT_EXT_CRL_DISTRIBUTION_POINTS = '2.5.29.31';
const CERT_EXT_CERT_POLICIES = '2.5.29.32';
const CERT_EXT_AUTHORITY_KEY_IDENTIFIER = '2.5.29.35';
const CERT_EXT_EXTENDED_KEY_USAGE = '2.5.29.37';
// standard certificate files
const COMMON_NAME = '2.5.4.3';
const SURNAME = '2.5.4.4';
const SERIAL_NUMBER = '2.5.4.5';
const COUNTRY_NAME = '2.5.4.6';
const LOCALITY_NAME = '2.5.4.7';
const STATE_OR_PROVINCE_NAME = '2.5.4.8';
const STREET_ADDRESS = '2.5.4.9';
const ORGANIZATION_NAME = '2.5.4.10';
const OU_NAME = '2.5.4.11';
const TITLE = '2.5.4.12';
const DESCRIPTION = '2.5.4.13';
const POSTAL_ADDRESS = '2.5.4.16';
const POSTAL_CODE = '2.5.4.17';
const AUTHORITY_REVOCATION_LIST = '2.5.4.38';
const AUTHORITY_INFORMATION_ACCESS = '1.3.6.1.5.5.7.1.1';
/**
* Returns the name of the given object identifier.
*
* Some OIDs are saved as class constants in this class.
* If the wanted oidString is not among them, this method will
* query http://oid-info.com for the right name.
* This behavior can be suppressed by setting the second method parameter to false.
*
* @param string $oidString
* @param bool $loadFromWeb
*
* @see self::loadFromWeb($oidString)
*
* @return string
*/
public static function getName($oidString, $loadFromWeb = true)
{
switch ($oidString) {
case self::RSA_ENCRYPTION:
return 'RSA Encryption';
case self::MD5_WITH_RSA_ENCRYPTION:
return 'MD5 with RSA Encryption';
case self::SHA1_WITH_RSA_SIGNATURE:
return 'SHA-1 with RSA Signature';
case self::PKCS9_EMAIL:
return 'PKCS #9 Email Address';
case self::PKCS9_UNSTRUCTURED_NAME:
return 'PKCS #9 Unstructured Name';
case self::PKCS9_CONTENT_TYPE:
return 'PKCS #9 Content Type';
case self::PKCS9_MESSAGE_DIGEST:
return 'PKCS #9 Message Digest';
case self::PKCS9_SIGNING_TIME:
return 'PKCS #9 Signing Time';
case self::COMMON_NAME:
return 'Common Name';
case self::SURNAME:
return 'Surname';
case self::SERIAL_NUMBER:
return 'Serial Number';
case self::COUNTRY_NAME:
return 'Country Name';
case self::LOCALITY_NAME:
return 'Locality Name';
case self::STATE_OR_PROVINCE_NAME:
return 'State or Province Name';
case self::STREET_ADDRESS:
return 'Street Address';
case self::ORGANIZATION_NAME:
return 'Organization Name';
case self::OU_NAME:
return 'Organization Unit Name';
case self::TITLE:
return 'Title';
case self::DESCRIPTION:
return 'Description';
case self::POSTAL_ADDRESS:
return 'Postal Address';
case self::POSTAL_CODE:
return 'Postal Code';
case self::AUTHORITY_REVOCATION_LIST:
return 'Authority Revocation List';
case self::CERT_EXT_SUBJECT_DIRECTORY_ATTR:
return 'Subject directory attributes';
case self::CERT_EXT_SUBJECT_KEY_IDENTIFIER:
return 'Subject key identifier';
case self::CERT_EXT_KEY_USAGE:
return 'Key usage certificate extension';
case self::CERT_EXT_PRIVATE_KEY_USAGE_PERIOD:
return 'Private key usage';
case self::CERT_EXT_SUBJECT_ALT_NAME:
return 'Subject alternative name (SAN)';
case self::CERT_EXT_ISSUER_ALT_NAME:
return 'Issuer alternative name';
case self::CERT_EXT_BASIC_CONSTRAINTS:
return 'Basic constraints';
case self::CERT_EXT_CRL_NUMBER:
return 'CRL number';
case self::CERT_EXT_REASON_CODE:
return 'Reason code';
case self::CERT_EXT_INVALIDITY_DATE:
return 'Invalidity code';
case self::CERT_EXT_DELTA_CRL_INDICATOR:
return 'Delta CRL indicator';
case self::CERT_EXT_ISSUING_DIST_POINT:
return 'Issuing distribution point';
case self::CERT_EXT_CERT_ISSUER:
return 'Certificate issuer';
case self::CERT_EXT_NAME_CONSTRAINTS:
return 'Name constraints';
case self::CERT_EXT_CRL_DISTRIBUTION_POINTS:
return 'CRL distribution points';
case self::CERT_EXT_CERT_POLICIES:
return 'Certificate policies ';
case self::CERT_EXT_AUTHORITY_KEY_IDENTIFIER:
return 'Authority key identifier';
case self::CERT_EXT_EXTENDED_KEY_USAGE:
return 'Extended key usage';
case self::AUTHORITY_INFORMATION_ACCESS:
return 'Certificate Authority Information Access (AIA)';
default:
if ($loadFromWeb) {
return self::loadFromWeb($oidString);
} else {
return $oidString;
}
}
}
public static function loadFromWeb($oidString)
{
$ch = curl_init("http://oid-info.com/get/{$oidString}");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
$contents = curl_exec($ch);
curl_close($ch);
// This pattern needs to be updated as soon as the website layout of oid-info.com changes
preg_match_all('#<tt>(.+)\(\d+\)</tt>#si', $contents, $oidName);
if (empty($oidName[1])) {
return "{$oidString} (unknown)";
}
$oidName = ucfirst(strtolower(preg_replace('/([A-Z][a-z])/', ' $1', $oidName[1][0])));
$oidName = str_replace('-', ' ', $oidName);
return "{$oidName} ({$oidString})";
}
}

View File

@ -1,58 +0,0 @@
<?php
$header = <<<EOF
League.Uri (https://uri.thephpleague.com)
(c) Ignace Nyamagana Butera <nyamsprod@gmail.com>
For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.
EOF;
$finder = PhpCsFixer\Finder::create()
->in(__DIR__.'/src')
->in(__DIR__.'/benchmark')
;
$config = new PhpCsFixer\Config();
return $config
->setRules([
'@PSR2' => true,
'array_syntax' => ['syntax' => 'short'],
'concat_space' => ['spacing' => 'none'],
'header_comment' => [
'comment_type' => 'PHPDoc',
'header' => $header,
'location' => 'after_open',
'separate' => 'both',
],
'new_with_braces' => true,
'no_blank_lines_after_phpdoc' => true,
'no_empty_phpdoc' => true,
'no_empty_comment' => true,
'no_leading_import_slash' => true,
'no_superfluous_phpdoc_tags' => true,
'no_trailing_comma_in_singleline_array' => true,
'no_unused_imports' => true,
'ordered_imports' => ['imports_order' => ['class', 'function', 'const'], 'sort_algorithm' => 'alpha'],
'phpdoc_add_missing_param_annotation' => ['only_untyped' => false],
'phpdoc_align' => true,
'phpdoc_no_empty_return' => true,
'phpdoc_order' => true,
'phpdoc_scalar' => true,
'phpdoc_to_comment' => true,
'phpdoc_summary' => true,
'psr_autoloading' => true,
'return_type_declaration' => ['space_before' => 'none'],
'single_blank_line_before_namespace' => true,
'single_quote' => true,
'space_after_semicolon' => true,
'ternary_operator_spaces' => true,
'trailing_comma_in_multiline' => true,
'trim_array_spaces' => true,
'whitespace_after_comma_in_array' => true,
'yoda_style' => true,
])
->setFinder($finder)
;

View File

@ -1 +0,0 @@
Bonjour le monde!

View File

@ -1,25 +0,0 @@
BEGIN:VCARD
VERSION:3.0
N:Doe;John;;;
FN:John Doe
ORG:Example.com Inc.;
TITLE:Imaginary test person
EMAIL;type=INTERNET;type=WORK;type=pref:johnDoe@example.org
TEL;type=WORK;type=pref:+1 617 555 1212
TEL;type=WORK:+1 (617) 555-1234
TEL;type=CELL:+1 781 555 1212
TEL;type=HOME:+1 202 555 1212
item1.ADR;type=WORK:;;2 Enterprise Avenue;Worktown;NY;01111;USA
item1.X-ABADR:us
item2.ADR;type=HOME;type=pref:;;3 Acacia Avenue;Hoemtown;MA;02222;USA
item2.X-ABADR:us
NOTE:John Doe has a long and varied history\, being documented on more police files that anyone else. Reports of his death are alas numerous.
item3.URL;type=pref:http\://www.example/com/doe
item3.X-ABLabel:_$!<HomePage>!$_
item4.URL:http\://www.example.com/Joe/foaf.df
item4.X-ABLabel:FOAF
item5.X-ABRELATEDNAMES;type=pref:Jane Doe
item5.X-ABLabel:_$!<Friend>!$_
CATEGORIES:Work,Test group
X-ABUID:5AD380FD-B2DE-4261-BA99-DE1D1DB52FBE\:ABPerson
END:VCARD

Binary file not shown.

Before

Width:  |  Height:  |  Size: 119 B

View File

@ -1,65 +0,0 @@
# Change Log
## 1.0.2 - 2015-12-19
### Added
- Request and Response factory binding types to Puli
## 1.0.1 - 2015-12-17
### Added
- Puli configuration and binding types
## 1.0.0 - 2015-12-15
### Added
- Response Factory in order to be reused in Message and Server Message factories
- Request Factory
### Changed
- Message Factory extends Request and Response factories
## 1.0.0-RC1 - 2015-12-14
### Added
- CS check
### Changed
- RuntimeException is thrown when the StreamFactory cannot write to the underlying stream
## 0.3.0 - 2015-11-16
### Removed
- Client Context Factory
- Factory Awares and Templates
## 0.2.0 - 2015-11-16
### Changed
- Reordered the parameters when creating a message to have the protocol last,
as its the least likely to need to be changed.
## 0.1.0 - 2015-06-01
### Added
- Initial release
### Changed
- Helpers are renamed to templates

View File

@ -1,19 +0,0 @@
Copyright (c) 2015 PHP HTTP Team <team@php-http.org>
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is furnished
to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

View File

@ -1,36 +0,0 @@
# PSR-7 Message Factory
[![Latest Version](https://img.shields.io/github/release/php-http/message-factory.svg?style=flat-square)](https://github.com/php-http/message-factory/releases)
[![Software License](https://img.shields.io/badge/license-MIT-brightgreen.svg?style=flat-square)](LICENSE)
[![Total Downloads](https://img.shields.io/packagist/dt/php-http/message-factory.svg?style=flat-square)](https://packagist.org/packages/php-http/message-factory)
**Factory interfaces for PSR-7 HTTP Message.**
## Install
Via Composer
``` bash
$ composer require php-http/message-factory
```
## Documentation
Please see the [official documentation](http://php-http.readthedocs.org/en/latest/message-factory/).
## Contributing
Please see [CONTRIBUTING](CONTRIBUTING.md) and [CONDUCT](CONDUCT.md) for details.
## Security
If you discover any security related issues, please contact us at [security@php-http.org](mailto:security@php-http.org).
## License
The MIT License (MIT). Please see [License File](LICENSE) for more information.

View File

@ -1,27 +0,0 @@
{
"name": "php-http/message-factory",
"description": "Factory interfaces for PSR-7 HTTP Message",
"license": "MIT",
"keywords": ["http", "factory", "message", "stream", "uri"],
"homepage": "http://php-http.org",
"authors": [
{
"name": "Márk Sági-Kazár",
"email": "mark.sagikazar@gmail.com"
}
],
"require": {
"php": ">=5.4",
"psr/http-message": "^1.0"
},
"autoload": {
"psr-4": {
"Http\\Message\\": "src/"
}
},
"extra": {
"branch-alias": {
"dev-master": "1.0-dev"
}
}
}

View File

@ -1,43 +0,0 @@
{
"version": "1.0",
"binding-types": {
"Http\\Message\\MessageFactory": {
"description": "PSR-7 Message Factory",
"parameters": {
"depends": {
"description": "Optional class dependency which can be checked by consumers"
}
}
},
"Http\\Message\\RequestFactory": {
"parameters": {
"depends": {
"description": "Optional class dependency which can be checked by consumers"
}
}
},
"Http\\Message\\ResponseFactory": {
"parameters": {
"depends": {
"description": "Optional class dependency which can be checked by consumers"
}
}
},
"Http\\Message\\StreamFactory": {
"description": "PSR-7 Stream Factory",
"parameters": {
"depends": {
"description": "Optional class dependency which can be checked by consumers"
}
}
},
"Http\\Message\\UriFactory": {
"description": "PSR-7 URI Factory",
"parameters": {
"depends": {
"description": "Optional class dependency which can be checked by consumers"
}
}
}
}
}

View File

@ -1,12 +0,0 @@
<?php
namespace Http\Message;
/**
* Factory for PSR-7 Request and Response.
*
* @author Márk Sági-Kazár <mark.sagikazar@gmail.com>
*/
interface MessageFactory extends RequestFactory, ResponseFactory
{
}

View File

@ -1,34 +0,0 @@
<?php
namespace Http\Message;
use Psr\Http\Message\UriInterface;
use Psr\Http\Message\RequestInterface;
use Psr\Http\Message\StreamInterface;
/**
* Factory for PSR-7 Request.
*
* @author Márk Sági-Kazár <mark.sagikazar@gmail.com>
*/
interface RequestFactory
{
/**
* Creates a new PSR-7 request.
*
* @param string $method
* @param string|UriInterface $uri
* @param array $headers
* @param resource|string|StreamInterface|null $body
* @param string $protocolVersion
*
* @return RequestInterface
*/
public function createRequest(
$method,
$uri,
array $headers = [],
$body = null,
$protocolVersion = '1.1'
);
}

View File

@ -1,35 +0,0 @@
<?php
namespace Http\Message;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\StreamInterface;
/**
* Factory for PSR-7 Response.
*
* This factory contract can be reused in Message and Server Message factories.
*
* @author Márk Sági-Kazár <mark.sagikazar@gmail.com>
*/
interface ResponseFactory
{
/**
* Creates a new PSR-7 response.
*
* @param int $statusCode
* @param string|null $reasonPhrase
* @param array $headers
* @param resource|string|StreamInterface|null $body
* @param string $protocolVersion
*
* @return ResponseInterface
*/
public function createResponse(
$statusCode = 200,
$reasonPhrase = null,
array $headers = [],
$body = null,
$protocolVersion = '1.1'
);
}

View File

@ -1,25 +0,0 @@
<?php
namespace Http\Message;
use Psr\Http\Message\StreamInterface;
/**
* Factory for PSR-7 Stream.
*
* @author Márk Sági-Kazár <mark.sagikazar@gmail.com>
*/
interface StreamFactory
{
/**
* Creates a new PSR-7 stream.
*
* @param string|resource|StreamInterface|null $body
*
* @return StreamInterface
*
* @throws \InvalidArgumentException If the stream body is invalid.
* @throws \RuntimeException If creating the stream from $body fails.
*/
public function createStream($body = null);
}

View File

@ -1,24 +0,0 @@
<?php
namespace Http\Message;
use Psr\Http\Message\UriInterface;
/**
* Factory for PSR-7 URI.
*
* @author Márk Sági-Kazár <mark.sagikazar@gmail.com>
*/
interface UriFactory
{
/**
* Creates an PSR-7 URI.
*
* @param string|UriInterface $uri
*
* @return UriInterface
*
* @throws \InvalidArgumentException If the $uri argument can not be converted into a valid URI.
*/
public function createUri($uri);
}

View File

@ -1,2 +0,0 @@
composer.lock
vendor/

View File

@ -1,7 +0,0 @@
extends: default
reviewers:
-
name: contributors
required: 1
teams:
- http-factory-contributors

View File

@ -1,10 +0,0 @@
HTTP Factories
==============
This repository holds all interfaces related to [PSR-17 (HTTP Message Factories)][psr-17].
Please refer to the specification for a description.
You can find implementations of the specification by looking for packages providing the
[psr/http-factory-implementation](https://packagist.org/providers/psr/http-factory-implementation) virtual package.
[psr-17]: https://www.php-fig.org/psr/psr-17/

View File

@ -1,102 +0,0 @@
{
"name": "ramsey/collection",
"type": "library",
"description": "A PHP library for representing and manipulating collections.",
"keywords": [
"array",
"collection",
"hash",
"map",
"queue",
"set"
],
"license": "MIT",
"authors": [
{
"name": "Ben Ramsey",
"email": "ben@benramsey.com",
"homepage": "https://benramsey.com"
}
],
"require": {
"php": "^7.3 || ^8",
"symfony/polyfill-php81": "^1.23"
},
"require-dev": {
"captainhook/captainhook": "^5.3",
"dealerdirect/phpcodesniffer-composer-installer": "^0.7.0",
"ergebnis/composer-normalize": "^2.6",
"fakerphp/faker": "^1.5",
"hamcrest/hamcrest-php": "^2",
"jangregor/phpstan-prophecy": "^0.8",
"mockery/mockery": "^1.3",
"phpspec/prophecy-phpunit": "^2.0",
"phpstan/extension-installer": "^1",
"phpstan/phpstan": "^0.12.32",
"phpstan/phpstan-mockery": "^0.12.5",
"phpstan/phpstan-phpunit": "^0.12.11",
"phpunit/phpunit": "^8.5 || ^9",
"psy/psysh": "^0.10.4",
"slevomat/coding-standard": "^6.3",
"squizlabs/php_codesniffer": "^3.5",
"vimeo/psalm": "^4.4"
},
"config": {
"sort-packages": true
},
"autoload": {
"psr-4": {
"Ramsey\\Collection\\": "src/"
}
},
"autoload-dev": {
"psr-4": {
"Ramsey\\Console\\": "resources/console/",
"Ramsey\\Collection\\Test\\": "tests/",
"Ramsey\\Test\\Generics\\": "tests/generics/"
},
"files": [
"vendor/hamcrest/hamcrest-php/hamcrest/Hamcrest.php"
]
},
"scripts": {
"post-autoload-dump": "captainhook install --ansi -f -s",
"dev:analyze": [
"@dev:analyze:phpstan",
"@dev:analyze:psalm"
],
"dev:analyze:phpstan": "phpstan --memory-limit=1G analyse",
"dev:analyze:psalm": "psalm --diff --config=psalm.xml",
"dev:build:clean": "git clean -fX build/.",
"dev:build:clear-cache": "git clean -fX build/cache/.",
"dev:lint": "phpcs --cache=build/cache/phpcs.cache",
"dev:lint:fix": "./bin/lint-fix.sh",
"dev:repl": [
"echo ; echo 'Type ./bin/repl to start the REPL.'"
],
"dev:test": "phpunit",
"dev:test:all": [
"@dev:lint",
"@dev:analyze",
"@dev:test"
],
"dev:test:coverage:ci": "phpunit --coverage-clover build/logs/clover.xml",
"dev:test:coverage:html": "phpunit --coverage-html build/coverage",
"test": "@dev:test:all"
},
"scripts-descriptions": {
"dev:analyze": "Performs static analysis on the code base.",
"dev:analyze:phpstan": "Runs the PHPStan static analyzer.",
"dev:analyze:psalm": "Runs the Psalm static analyzer.",
"dev:build:clean": "Removes everything not under version control from the build directory.",
"dev:build:clear-cache": "Removes everything not under version control from build/cache/.",
"dev:lint": "Checks all source code for coding standards issues.",
"dev:lint:fix": "Checks source code for coding standards issues and fixes them, if possible.",
"dev:repl": "Note: Use ./bin/repl to run the REPL.",
"dev:test": "Runs the full unit test suite.",
"dev:test:all": "Runs linting, static analysis, and unit tests.",
"dev:test:coverage:ci": "Runs the unit test suite and generates a Clover coverage report.",
"dev:test:coverage:html": "Runs the unit tests suite and generates an HTML coverage report.",
"test": "Shortcut to run the full test suite."
}
}

View File

@ -1,7 +0,0 @@
<?php
if (\PHP_VERSION_ID < 80000 && \extension_loaded('tokenizer')) {
class PhpToken extends Symfony\Polyfill\Php80\PhpToken
{
}
}

View File

@ -1,11 +0,0 @@
<?php
if (\PHP_VERSION_ID < 80000) {
interface Stringable
{
/**
* @return string
*/
public function __toString();
}
}

View File

@ -1,7 +0,0 @@
<?php
if (\PHP_VERSION_ID < 80000) {
class UnhandledMatchError extends Error
{
}
}

View File

@ -1,7 +0,0 @@
<?php
if (\PHP_VERSION_ID < 80000) {
class ValueError extends Error
{
}
}

View File

@ -1,11 +0,0 @@
<?php
if (\PHP_VERSION_ID < 80100) {
#[Attribute(Attribute::TARGET_METHOD)]
final class ReturnTypeWillChange
{
public function __construct()
{
}
}
}

View File

@ -0,0 +1,25 @@
<?php
// autoload.php @generated by Composer
if (PHP_VERSION_ID < 50600) {
if (!headers_sent()) {
header('HTTP/1.1 500 Internal Server Error');
}
$err = 'Composer 2.3.0 dropped support for autoloading on PHP <5.6 and you are running '.PHP_VERSION.', please upgrade PHP or use Composer 2.2 LTS via "composer self-update --2.2". Aborting.'.PHP_EOL;
if (!ini_get('display_errors')) {
if (PHP_SAPI === 'cli' || PHP_SAPI === 'phpdbg') {
fwrite(STDERR, $err);
} elseif (!headers_sent()) {
echo $err;
}
}
trigger_error(
$err,
E_USER_ERROR
);
}
require_once __DIR__ . '/composer/autoload_real.php';
return ComposerAutoloaderInit09e765e3690d5165ed98a315471eec7d::getLoader();

View File

@ -42,35 +42,37 @@ namespace Composer\Autoload;
*/
class ClassLoader
{
/** @var ?string */
/** @var \Closure(string):void */
private static $includeFile;
/** @var string|null */
private $vendorDir;
// PSR-4
/**
* @var array[]
* @psalm-var array<string, array<string, int>>
* @var array<string, array<string, int>>
*/
private $prefixLengthsPsr4 = array();
/**
* @var array[]
* @psalm-var array<string, array<int, string>>
* @var array<string, list<string>>
*/
private $prefixDirsPsr4 = array();
/**
* @var array[]
* @psalm-var array<string, string>
* @var list<string>
*/
private $fallbackDirsPsr4 = array();
// PSR-0
/**
* @var array[]
* @psalm-var array<string, array<string, string[]>>
* List of PSR-0 prefixes
*
* Structured as array('F (first letter)' => array('Foo\Bar (full prefix)' => array('path', 'path2')))
*
* @var array<string, array<string, list<string>>>
*/
private $prefixesPsr0 = array();
/**
* @var array[]
* @psalm-var array<string, string>
* @var list<string>
*/
private $fallbackDirsPsr0 = array();
@ -78,8 +80,7 @@ class ClassLoader
private $useIncludePath = false;
/**
* @var string[]
* @psalm-var array<string, string>
* @var array<string, string>
*/
private $classMap = array();
@ -87,29 +88,29 @@ class ClassLoader
private $classMapAuthoritative = false;
/**
* @var bool[]
* @psalm-var array<string, bool>
* @var array<string, bool>
*/
private $missingClasses = array();
/** @var ?string */
/** @var string|null */
private $apcuPrefix;
/**
* @var self[]
* @var array<string, self>
*/
private static $registeredLoaders = array();
/**
* @param ?string $vendorDir
* @param string|null $vendorDir
*/
public function __construct($vendorDir = null)
{
$this->vendorDir = $vendorDir;
self::initializeIncludeClosure();
}
/**
* @return string[]
* @return array<string, list<string>>
*/
public function getPrefixes()
{
@ -121,8 +122,7 @@ class ClassLoader
}
/**
* @return array[]
* @psalm-return array<string, array<int, string>>
* @return array<string, list<string>>
*/
public function getPrefixesPsr4()
{
@ -130,8 +130,7 @@ class ClassLoader
}
/**
* @return array[]
* @psalm-return array<string, string>
* @return list<string>
*/
public function getFallbackDirs()
{
@ -139,8 +138,7 @@ class ClassLoader
}
/**
* @return array[]
* @psalm-return array<string, string>
* @return list<string>
*/
public function getFallbackDirsPsr4()
{
@ -148,8 +146,7 @@ class ClassLoader
}
/**
* @return string[] Array of classname => path
* @psalm-return array<string, string>
* @return array<string, string> Array of classname => path
*/
public function getClassMap()
{
@ -157,8 +154,7 @@ class ClassLoader
}
/**
* @param string[] $classMap Class to filename map
* @psalm-param array<string, string> $classMap
* @param array<string, string> $classMap Class to filename map
*
* @return void
*/
@ -175,24 +171,25 @@ class ClassLoader
* Registers a set of PSR-0 directories for a given prefix, either
* appending or prepending to the ones previously set for this prefix.
*
* @param string $prefix The prefix
* @param string[]|string $paths The PSR-0 root directories
* @param bool $prepend Whether to prepend the directories
* @param string $prefix The prefix
* @param list<string>|string $paths The PSR-0 root directories
* @param bool $prepend Whether to prepend the directories
*
* @return void
*/
public function add($prefix, $paths, $prepend = false)
{
$paths = (array) $paths;
if (!$prefix) {
if ($prepend) {
$this->fallbackDirsPsr0 = array_merge(
(array) $paths,
$paths,
$this->fallbackDirsPsr0
);
} else {
$this->fallbackDirsPsr0 = array_merge(
$this->fallbackDirsPsr0,
(array) $paths
$paths
);
}
@ -201,19 +198,19 @@ class ClassLoader
$first = $prefix[0];
if (!isset($this->prefixesPsr0[$first][$prefix])) {
$this->prefixesPsr0[$first][$prefix] = (array) $paths;
$this->prefixesPsr0[$first][$prefix] = $paths;
return;
}
if ($prepend) {
$this->prefixesPsr0[$first][$prefix] = array_merge(
(array) $paths,
$paths,
$this->prefixesPsr0[$first][$prefix]
);
} else {
$this->prefixesPsr0[$first][$prefix] = array_merge(
$this->prefixesPsr0[$first][$prefix],
(array) $paths
$paths
);
}
}
@ -222,9 +219,9 @@ class ClassLoader
* Registers a set of PSR-4 directories for a given namespace, either
* appending or prepending to the ones previously set for this namespace.
*
* @param string $prefix The prefix/namespace, with trailing '\\'
* @param string[]|string $paths The PSR-4 base directories
* @param bool $prepend Whether to prepend the directories
* @param string $prefix The prefix/namespace, with trailing '\\'
* @param list<string>|string $paths The PSR-4 base directories
* @param bool $prepend Whether to prepend the directories
*
* @throws \InvalidArgumentException
*
@ -232,17 +229,18 @@ class ClassLoader
*/
public function addPsr4($prefix, $paths, $prepend = false)
{
$paths = (array) $paths;
if (!$prefix) {
// Register directories for the root namespace.
if ($prepend) {
$this->fallbackDirsPsr4 = array_merge(
(array) $paths,
$paths,
$this->fallbackDirsPsr4
);
} else {
$this->fallbackDirsPsr4 = array_merge(
$this->fallbackDirsPsr4,
(array) $paths
$paths
);
}
} elseif (!isset($this->prefixDirsPsr4[$prefix])) {
@ -252,18 +250,18 @@ class ClassLoader
throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator.");
}
$this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length;
$this->prefixDirsPsr4[$prefix] = (array) $paths;
$this->prefixDirsPsr4[$prefix] = $paths;
} elseif ($prepend) {
// Prepend directories for an already registered namespace.
$this->prefixDirsPsr4[$prefix] = array_merge(
(array) $paths,
$paths,
$this->prefixDirsPsr4[$prefix]
);
} else {
// Append directories for an already registered namespace.
$this->prefixDirsPsr4[$prefix] = array_merge(
$this->prefixDirsPsr4[$prefix],
(array) $paths
$paths
);
}
}
@ -272,8 +270,8 @@ class ClassLoader
* Registers a set of PSR-0 directories for a given prefix,
* replacing any others previously set for this prefix.
*
* @param string $prefix The prefix
* @param string[]|string $paths The PSR-0 base directories
* @param string $prefix The prefix
* @param list<string>|string $paths The PSR-0 base directories
*
* @return void
*/
@ -290,8 +288,8 @@ class ClassLoader
* Registers a set of PSR-4 directories for a given namespace,
* replacing any others previously set for this namespace.
*
* @param string $prefix The prefix/namespace, with trailing '\\'
* @param string[]|string $paths The PSR-4 base directories
* @param string $prefix The prefix/namespace, with trailing '\\'
* @param list<string>|string $paths The PSR-4 base directories
*
* @throws \InvalidArgumentException
*
@ -425,7 +423,8 @@ class ClassLoader
public function loadClass($class)
{
if ($file = $this->findFile($class)) {
includeFile($file);
$includeFile = self::$includeFile;
$includeFile($file);
return true;
}
@ -476,9 +475,9 @@ class ClassLoader
}
/**
* Returns the currently registered loaders indexed by their corresponding vendor directories.
* Returns the currently registered loaders keyed by their corresponding vendor directories.
*
* @return self[]
* @return array<string, self>
*/
public static function getRegisteredLoaders()
{
@ -555,18 +554,26 @@ class ClassLoader
return false;
}
}
/**
* Scope isolated include.
*
* Prevents access to $this/self from included files.
*
* @param string $file
* @return void
* @private
*/
function includeFile($file)
{
include $file;
/**
* @return void
*/
private static function initializeIncludeClosure()
{
if (self::$includeFile !== null) {
return;
}
/**
* Scope isolated include.
*
* Prevents access to $this/self from included files.
*
* @param string $file
* @return void
*/
self::$includeFile = \Closure::bind(static function($file) {
include $file;
}, null, null);
}
}

View File

@ -28,7 +28,7 @@ class InstalledVersions
{
/**
* @var mixed[]|null
* @psalm-var array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}|array{}|null
* @psalm-var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}|array{}|null
*/
private static $installed;
@ -39,7 +39,7 @@ class InstalledVersions
/**
* @var array[]
* @psalm-var array<string, array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}>
* @psalm-var array<string, array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}>
*/
private static $installedByVendor = array();
@ -98,7 +98,7 @@ class InstalledVersions
{
foreach (self::getInstalled() as $installed) {
if (isset($installed['versions'][$packageName])) {
return $includeDevRequirements || empty($installed['versions'][$packageName]['dev_requirement']);
return $includeDevRequirements || !isset($installed['versions'][$packageName]['dev_requirement']) || $installed['versions'][$packageName]['dev_requirement'] === false;
}
}
@ -119,7 +119,7 @@ class InstalledVersions
*/
public static function satisfies(VersionParser $parser, $packageName, $constraint)
{
$constraint = $parser->parseConstraints($constraint);
$constraint = $parser->parseConstraints((string) $constraint);
$provided = $parser->parseConstraints(self::getVersionRanges($packageName));
return $provided->matches($constraint);
@ -243,7 +243,7 @@ class InstalledVersions
/**
* @return array
* @psalm-return array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}
* @psalm-return array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}
*/
public static function getRootPackage()
{
@ -257,7 +257,7 @@ class InstalledVersions
*
* @deprecated Use getAllRawData() instead which returns all datasets for all autoloaders present in the process. getRawData only returns the first dataset loaded, which may not be what you expect.
* @return array[]
* @psalm-return array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}
* @psalm-return array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}
*/
public static function getRawData()
{
@ -280,7 +280,7 @@ class InstalledVersions
* Returns the raw data of all installed.php which are currently loaded for custom implementations
*
* @return array[]
* @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}>
* @psalm-return list<array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}>
*/
public static function getAllRawData()
{
@ -303,7 +303,7 @@ class InstalledVersions
* @param array[] $data A vendor/composer/installed.php data set
* @return void
*
* @psalm-param array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>} $data
* @psalm-param array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $data
*/
public static function reload($data)
{
@ -313,7 +313,7 @@ class InstalledVersions
/**
* @return array[]
* @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}>
* @psalm-return list<array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}>
*/
private static function getInstalled()
{
@ -328,7 +328,9 @@ class InstalledVersions
if (isset(self::$installedByVendor[$vendorDir])) {
$installed[] = self::$installedByVendor[$vendorDir];
} elseif (is_file($vendorDir.'/composer/installed.php')) {
$installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php';
/** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */
$required = require $vendorDir.'/composer/installed.php';
$installed[] = self::$installedByVendor[$vendorDir] = $required;
if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
self::$installed = $installed[count($installed) - 1];
}
@ -340,12 +342,17 @@ class InstalledVersions
// only require the installed.php file if this file is loaded from its dumped location,
// and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
if (substr(__DIR__, -8, 1) !== 'C') {
self::$installed = require __DIR__ . '/installed.php';
/** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */
$required = require __DIR__ . '/installed.php';
self::$installed = $required;
} else {
self::$installed = array();
}
}
$installed[] = self::$installed;
if (self::$installed !== array()) {
$installed[] = self::$installed;
}
return $installed;
}

View File

@ -184,11 +184,6 @@ return array(
'FG\\X509\\SAN\\DNSName' => $vendorDir . '/fgrosse/phpasn1/lib/X509/SAN/DNSName.php',
'FG\\X509\\SAN\\IPAddress' => $vendorDir . '/fgrosse/phpasn1/lib/X509/SAN/IPAddress.php',
'FG\\X509\\SAN\\SubjectAlternativeNames' => $vendorDir . '/fgrosse/phpasn1/lib/X509/SAN/SubjectAlternativeNames.php',
'Http\\Message\\MessageFactory' => $vendorDir . '/php-http/message-factory/src/MessageFactory.php',
'Http\\Message\\RequestFactory' => $vendorDir . '/php-http/message-factory/src/RequestFactory.php',
'Http\\Message\\ResponseFactory' => $vendorDir . '/php-http/message-factory/src/ResponseFactory.php',
'Http\\Message\\StreamFactory' => $vendorDir . '/php-http/message-factory/src/StreamFactory.php',
'Http\\Message\\UriFactory' => $vendorDir . '/php-http/message-factory/src/UriFactory.php',
'Jose\\Component\\Core\\Algorithm' => $vendorDir . '/web-token/jwt-core/Algorithm.php',
'Jose\\Component\\Core\\AlgorithmManager' => $vendorDir . '/web-token/jwt-core/AlgorithmManager.php',
'Jose\\Component\\Core\\AlgorithmManagerFactory' => $vendorDir . '/web-token/jwt-core/AlgorithmManagerFactory.php',
@ -305,6 +300,7 @@ return array(
'Nyholm\\Psr7\\Response' => $vendorDir . '/nyholm/psr7/src/Response.php',
'Nyholm\\Psr7\\ServerRequest' => $vendorDir . '/nyholm/psr7/src/ServerRequest.php',
'Nyholm\\Psr7\\Stream' => $vendorDir . '/nyholm/psr7/src/Stream.php',
'Nyholm\\Psr7\\StreamTrait' => $vendorDir . '/nyholm/psr7/src/StreamTrait.php',
'Nyholm\\Psr7\\UploadedFile' => $vendorDir . '/nyholm/psr7/src/UploadedFile.php',
'Nyholm\\Psr7\\Uri' => $vendorDir . '/nyholm/psr7/src/Uri.php',
'PhpToken' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/PhpToken.php',

View File

@ -25,7 +25,6 @@ return array(
'Jose\\Component\\Signature\\' => array($vendorDir . '/web-token/jwt-signature'),
'Jose\\Component\\KeyManagement\\' => array($vendorDir . '/web-token/jwt-key-mgmt'),
'Jose\\Component\\Core\\' => array($vendorDir . '/web-token/jwt-core'),
'Http\\Message\\' => array($vendorDir . '/php-http/message-factory/src'),
'FG\\' => array($vendorDir . '/fgrosse/phpasn1/lib'),
'Cose\\' => array($vendorDir . '/web-auth/cose-lib/src'),
'CBOR\\' => array($vendorDir . '/spomky-labs/cbor-php/src'),

View File

@ -0,0 +1,48 @@
<?php
// autoload_real.php @generated by Composer
class ComposerAutoloaderInit09e765e3690d5165ed98a315471eec7d
{
private static $loader;
public static function loadClassLoader($class)
{
if ('Composer\Autoload\ClassLoader' === $class) {
require __DIR__ . '/ClassLoader.php';
}
}
/**
* @return \Composer\Autoload\ClassLoader
*/
public static function getLoader()
{
if (null !== self::$loader) {
return self::$loader;
}
spl_autoload_register(array('ComposerAutoloaderInit09e765e3690d5165ed98a315471eec7d', 'loadClassLoader'), true, true);
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
spl_autoload_unregister(array('ComposerAutoloaderInit09e765e3690d5165ed98a315471eec7d', 'loadClassLoader'));
require __DIR__ . '/autoload_static.php';
call_user_func(\Composer\Autoload\ComposerStaticInit09e765e3690d5165ed98a315471eec7d::getInitializer($loader));
$loader->register(true);
$filesToLoad = \Composer\Autoload\ComposerStaticInit09e765e3690d5165ed98a315471eec7d::$files;
$requireFile = \Closure::bind(static function ($fileIdentifier, $file) {
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
$GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
require $file;
}
}, null, null);
foreach ($filesToLoad as $fileIdentifier => $file) {
$requireFile($fileIdentifier, $file);
}
return $loader;
}
}

View File

@ -4,7 +4,7 @@
namespace Composer\Autoload;
class ComposerStaticInit8c7684b956de574bcb0eefe2be31e0ab
class ComposerStaticInit09e765e3690d5165ed98a315471eec7d
{
public static $files = array (
'a4ecaeafb8cfb009ad0e052c90355e98' => __DIR__ . '/..' . '/beberlei/assert/lib/Assert/functions.php',
@ -144,10 +144,6 @@ class ComposerStaticInit8c7684b956de574bcb0eefe2be31e0ab
'Jose\\Component\\KeyManagement\\' => 29,
'Jose\\Component\\Core\\' => 20,
),
'H' =>
array (
'Http\\Message\\' => 13,
),
'F' =>
array (
'FG\\' => 3,
@ -251,10 +247,6 @@ class ComposerStaticInit8c7684b956de574bcb0eefe2be31e0ab
array (
0 => __DIR__ . '/..' . '/web-token/jwt-core',
),
'Http\\Message\\' =>
array (
0 => __DIR__ . '/..' . '/php-http/message-factory/src',
),
'FG\\' =>
array (
0 => __DIR__ . '/..' . '/fgrosse/phpasn1/lib',
@ -460,11 +452,6 @@ class ComposerStaticInit8c7684b956de574bcb0eefe2be31e0ab
'FG\\X509\\SAN\\DNSName' => __DIR__ . '/..' . '/fgrosse/phpasn1/lib/X509/SAN/DNSName.php',
'FG\\X509\\SAN\\IPAddress' => __DIR__ . '/..' . '/fgrosse/phpasn1/lib/X509/SAN/IPAddress.php',
'FG\\X509\\SAN\\SubjectAlternativeNames' => __DIR__ . '/..' . '/fgrosse/phpasn1/lib/X509/SAN/SubjectAlternativeNames.php',
'Http\\Message\\MessageFactory' => __DIR__ . '/..' . '/php-http/message-factory/src/MessageFactory.php',
'Http\\Message\\RequestFactory' => __DIR__ . '/..' . '/php-http/message-factory/src/RequestFactory.php',
'Http\\Message\\ResponseFactory' => __DIR__ . '/..' . '/php-http/message-factory/src/ResponseFactory.php',
'Http\\Message\\StreamFactory' => __DIR__ . '/..' . '/php-http/message-factory/src/StreamFactory.php',
'Http\\Message\\UriFactory' => __DIR__ . '/..' . '/php-http/message-factory/src/UriFactory.php',
'Jose\\Component\\Core\\Algorithm' => __DIR__ . '/..' . '/web-token/jwt-core/Algorithm.php',
'Jose\\Component\\Core\\AlgorithmManager' => __DIR__ . '/..' . '/web-token/jwt-core/AlgorithmManager.php',
'Jose\\Component\\Core\\AlgorithmManagerFactory' => __DIR__ . '/..' . '/web-token/jwt-core/AlgorithmManagerFactory.php',
@ -581,6 +568,7 @@ class ComposerStaticInit8c7684b956de574bcb0eefe2be31e0ab
'Nyholm\\Psr7\\Response' => __DIR__ . '/..' . '/nyholm/psr7/src/Response.php',
'Nyholm\\Psr7\\ServerRequest' => __DIR__ . '/..' . '/nyholm/psr7/src/ServerRequest.php',
'Nyholm\\Psr7\\Stream' => __DIR__ . '/..' . '/nyholm/psr7/src/Stream.php',
'Nyholm\\Psr7\\StreamTrait' => __DIR__ . '/..' . '/nyholm/psr7/src/StreamTrait.php',
'Nyholm\\Psr7\\UploadedFile' => __DIR__ . '/..' . '/nyholm/psr7/src/UploadedFile.php',
'Nyholm\\Psr7\\Uri' => __DIR__ . '/..' . '/nyholm/psr7/src/Uri.php',
'PhpToken' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/PhpToken.php',
@ -951,9 +939,9 @@ class ComposerStaticInit8c7684b956de574bcb0eefe2be31e0ab
public static function getInitializer(ClassLoader $loader)
{
return \Closure::bind(function () use ($loader) {
$loader->prefixLengthsPsr4 = ComposerStaticInit8c7684b956de574bcb0eefe2be31e0ab::$prefixLengthsPsr4;
$loader->prefixDirsPsr4 = ComposerStaticInit8c7684b956de574bcb0eefe2be31e0ab::$prefixDirsPsr4;
$loader->classMap = ComposerStaticInit8c7684b956de574bcb0eefe2be31e0ab::$classMap;
$loader->prefixLengthsPsr4 = ComposerStaticInit09e765e3690d5165ed98a315471eec7d::$prefixLengthsPsr4;
$loader->prefixDirsPsr4 = ComposerStaticInit09e765e3690d5165ed98a315471eec7d::$prefixDirsPsr4;
$loader->classMap = ComposerStaticInit09e765e3690d5165ed98a315471eec7d::$classMap;
}, null, ClassLoader::class);
}

View File

@ -147,17 +147,17 @@
},
{
"name": "fgrosse/phpasn1",
"version": "v2.4.0",
"version_normalized": "2.4.0.0",
"version": "v2.5.0",
"version_normalized": "2.5.0.0",
"source": {
"type": "git",
"url": "https://github.com/fgrosse/PHPASN1.git",
"reference": "eef488991d53e58e60c9554b09b1201ca5ba9296"
"reference": "42060ed45344789fb9f21f9f1864fc47b9e3507b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/fgrosse/PHPASN1/zipball/eef488991d53e58e60c9554b09b1201ca5ba9296",
"reference": "eef488991d53e58e60c9554b09b1201ca5ba9296",
"url": "https://api.github.com/repos/fgrosse/PHPASN1/zipball/42060ed45344789fb9f21f9f1864fc47b9e3507b",
"reference": "42060ed45344789fb9f21f9f1864fc47b9e3507b",
"shasum": "",
"mirrors": [
{
@ -167,11 +167,11 @@
]
},
"require": {
"php": "~7.1.0 || ~7.2.0 || ~7.3.0 || ~7.4.0 || ~8.0.0 || ~8.1.0"
"php": "^7.1 || ^8.0"
},
"require-dev": {
"php-coveralls/php-coveralls": "~2.0",
"phpunit/phpunit": "^6.3 || ^7.0 || ^8.0"
"phpunit/phpunit": "^7.0 || ^8.0 || ^9.0"
},
"suggest": {
"ext-bcmath": "BCmath is the fallback extension for big integer calculations",
@ -179,7 +179,7 @@
"ext-gmp": "GMP is the preferred extension for big integer calculations",
"phpseclib/bcmath_compat": "BCmath polyfill for servers where neither GMP nor BCmath is available"
},
"time": "2021-12-11T12:41:06+00:00",
"time": "2022-12-19T11:08:26+00:00",
"type": "library",
"extra": {
"branch-alias": {
@ -225,23 +225,24 @@
],
"support": {
"issues": "https://github.com/fgrosse/PHPASN1/issues",
"source": "https://github.com/fgrosse/PHPASN1/tree/v2.4.0"
"source": "https://github.com/fgrosse/PHPASN1/tree/v2.5.0"
},
"abandoned": true,
"install-path": "../fgrosse/phpasn1"
},
{
"name": "league/uri",
"version": "6.5.0",
"version_normalized": "6.5.0.0",
"version": "6.7.2",
"version_normalized": "6.7.2.0",
"source": {
"type": "git",
"url": "https://github.com/thephpleague/uri.git",
"reference": "c68ca445abb04817d740ddd6d0b3551826ef0c5a"
"reference": "d3b50812dd51f3fbf176344cc2981db03d10fe06"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/thephpleague/uri/zipball/c68ca445abb04817d740ddd6d0b3551826ef0c5a",
"reference": "c68ca445abb04817d740ddd6d0b3551826ef0c5a",
"url": "https://api.github.com/repos/thephpleague/uri/zipball/d3b50812dd51f3fbf176344cc2981db03d10fe06",
"reference": "d3b50812dd51f3fbf176344cc2981db03d10fe06",
"shasum": "",
"mirrors": [
{
@ -253,18 +254,21 @@
"require": {
"ext-json": "*",
"league/uri-interfaces": "^2.3",
"php": "^7.3 || ^8.0",
"php": "^7.4 || ^8.0",
"psr/http-message": "^1.0"
},
"conflict": {
"league/uri-schemes": "^1.0"
},
"require-dev": {
"friendsofphp/php-cs-fixer": "^2.19 || ^3.0",
"phpstan/phpstan": "^0.12.90",
"phpstan/phpstan-phpunit": "^0.12.22",
"phpstan/phpstan-strict-rules": "^0.12.11",
"phpunit/phpunit": "^8.0 || ^9.0",
"friendsofphp/php-cs-fixer": "^v3.3.2",
"nyholm/psr7": "^1.5",
"php-http/psr7-integration-tests": "^1.1",
"phpstan/phpstan": "^1.2.0",
"phpstan/phpstan-deprecation-rules": "^1.0",
"phpstan/phpstan-phpunit": "^1.0.0",
"phpstan/phpstan-strict-rules": "^1.1.0",
"phpunit/phpunit": "^9.5.10",
"psr/http-factory": "^1.0"
},
"suggest": {
@ -273,7 +277,7 @@
"league/uri-components": "Needed to easily manipulate URI objects",
"psr/http-factory": "Needed to use the URI factory"
},
"time": "2021-08-27T09:54:07+00:00",
"time": "2022-09-13T19:50:42+00:00",
"type": "library",
"extra": {
"branch-alias": {
@ -298,7 +302,7 @@
}
],
"description": "URI manipulation library",
"homepage": "http://uri.thephpleague.com",
"homepage": "https://uri.thephpleague.com",
"keywords": [
"data-uri",
"file-uri",
@ -324,7 +328,7 @@
"docs": "https://uri.thephpleague.com",
"forum": "https://thephpleague.slack.com",
"issues": "https://github.com/thephpleague/uri/issues",
"source": "https://github.com/thephpleague/uri/tree/6.5.0"
"source": "https://github.com/thephpleague/uri/tree/6.7.2"
},
"funding": [
{
@ -416,17 +420,17 @@
},
{
"name": "nyholm/psr7",
"version": "1.5.0",
"version_normalized": "1.5.0.0",
"version": "1.8.0",
"version_normalized": "1.8.0.0",
"source": {
"type": "git",
"url": "https://github.com/Nyholm/psr7.git",
"reference": "1461e07a0f2a975a52082ca3b769ca912b816226"
"reference": "3cb4d163b58589e47b35103e8e5e6a6a475b47be"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/Nyholm/psr7/zipball/1461e07a0f2a975a52082ca3b769ca912b816226",
"reference": "1461e07a0f2a975a52082ca3b769ca912b816226",
"url": "https://api.github.com/repos/Nyholm/psr7/zipball/3cb4d163b58589e47b35103e8e5e6a6a475b47be",
"reference": "3cb4d163b58589e47b35103e8e5e6a6a475b47be",
"shasum": "",
"mirrors": [
{
@ -436,26 +440,27 @@
]
},
"require": {
"php": ">=7.1",
"php-http/message-factory": "^1.0",
"php": ">=7.2",
"psr/http-factory": "^1.0",
"psr/http-message": "^1.0"
"psr/http-message": "^1.1 || ^2.0"
},
"provide": {
"php-http/message-factory-implementation": "1.0",
"psr/http-factory-implementation": "1.0",
"psr/http-message-implementation": "1.0"
},
"require-dev": {
"http-interop/http-factory-tests": "^0.9",
"php-http/message-factory": "^1.0",
"php-http/psr7-integration-tests": "^1.0",
"phpunit/phpunit": "^7.5 || 8.5 || 9.4",
"phpunit/phpunit": "^7.5 || ^8.5 || ^9.4",
"symfony/error-handler": "^4.4"
},
"time": "2022-02-02T18:37:57+00:00",
"time": "2023-05-02T11:26:24+00:00",
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.4-dev"
"dev-master": "1.8-dev"
}
},
"installation-source": "dist",
@ -486,7 +491,7 @@
],
"support": {
"issues": "https://github.com/Nyholm/psr7/issues",
"source": "https://github.com/Nyholm/psr7/tree/1.5.0"
"source": "https://github.com/Nyholm/psr7/tree/1.8.0"
},
"funding": [
{
@ -575,69 +580,6 @@
],
"install-path": "../nyholm/psr7-server"
},
{
"name": "php-http/message-factory",
"version": "v1.0.2",
"version_normalized": "1.0.2.0",
"source": {
"type": "git",
"url": "https://github.com/php-http/message-factory.git",
"reference": "a478cb11f66a6ac48d8954216cfed9aa06a501a1"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/php-http/message-factory/zipball/a478cb11f66a6ac48d8954216cfed9aa06a501a1",
"reference": "a478cb11f66a6ac48d8954216cfed9aa06a501a1",
"shasum": "",
"mirrors": [
{
"url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
"preferred": true
}
]
},
"require": {
"php": ">=5.4",
"psr/http-message": "^1.0"
},
"time": "2015-12-19T14:08:53+00:00",
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.0-dev"
}
},
"installation-source": "dist",
"autoload": {
"psr-4": {
"Http\\Message\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Márk Sági-Kazár",
"email": "mark.sagikazar@gmail.com"
}
],
"description": "Factory interfaces for PSR-7 HTTP Message",
"homepage": "http://php-http.org",
"keywords": [
"factory",
"http",
"message",
"stream",
"uri"
],
"support": {
"issues": "https://github.com/php-http/message-factory/issues",
"source": "https://github.com/php-http/message-factory/tree/master"
},
"install-path": "../php-http/message-factory"
},
{
"name": "psr/http-client",
"version": "1.0.1",
@ -701,17 +643,17 @@
},
{
"name": "psr/http-factory",
"version": "1.0.1",
"version_normalized": "1.0.1.0",
"version": "1.0.2",
"version_normalized": "1.0.2.0",
"source": {
"type": "git",
"url": "https://github.com/php-fig/http-factory.git",
"reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be"
"reference": "e616d01114759c4c489f93b099585439f795fe35"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/php-fig/http-factory/zipball/12ac7fcd07e5b077433f5f2bee95b3a771bf61be",
"reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be",
"url": "https://api.github.com/repos/php-fig/http-factory/zipball/e616d01114759c4c489f93b099585439f795fe35",
"reference": "e616d01114759c4c489f93b099585439f795fe35",
"shasum": "",
"mirrors": [
{
@ -722,9 +664,9 @@
},
"require": {
"php": ">=7.0.0",
"psr/http-message": "^1.0"
"psr/http-message": "^1.0 || ^2.0"
},
"time": "2019-04-30T12:38:16+00:00",
"time": "2023-04-10T20:10:41+00:00",
"type": "library",
"extra": {
"branch-alias": {
@ -744,7 +686,7 @@
"authors": [
{
"name": "PHP-FIG",
"homepage": "http://www.php-fig.org/"
"homepage": "https://www.php-fig.org/"
}
],
"description": "Common interfaces for PSR-7 HTTP message factories",
@ -759,23 +701,23 @@
"response"
],
"support": {
"source": "https://github.com/php-fig/http-factory/tree/master"
"source": "https://github.com/php-fig/http-factory/tree/1.0.2"
},
"install-path": "../psr/http-factory"
},
{
"name": "psr/http-message",
"version": "1.0.1",
"version_normalized": "1.0.1.0",
"version": "1.1",
"version_normalized": "1.1.0.0",
"source": {
"type": "git",
"url": "https://github.com/php-fig/http-message.git",
"reference": "f6561bf28d520154e4b0ec72be95418abe6d9363"
"reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363",
"reference": "f6561bf28d520154e4b0ec72be95418abe6d9363",
"url": "https://api.github.com/repos/php-fig/http-message/zipball/cb6ce4845ce34a8ad9e68117c10ee90a29919eba",
"reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba",
"shasum": "",
"mirrors": [
{
@ -785,13 +727,13 @@
]
},
"require": {
"php": ">=5.3.0"
"php": "^7.2 || ^8.0"
},
"time": "2016-08-06T14:39:51+00:00",
"time": "2023-04-04T09:50:52+00:00",
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.0.x-dev"
"dev-master": "1.1.x-dev"
}
},
"installation-source": "dist",
@ -821,7 +763,7 @@
"response"
],
"support": {
"source": "https://github.com/php-fig/http-message/tree/master"
"source": "https://github.com/php-fig/http-message/tree/1.1"
},
"install-path": "../psr/http-message"
},
@ -886,17 +828,17 @@
},
{
"name": "ramsey/collection",
"version": "1.2.2",
"version_normalized": "1.2.2.0",
"version": "1.3.0",
"version_normalized": "1.3.0.0",
"source": {
"type": "git",
"url": "https://github.com/ramsey/collection.git",
"reference": "cccc74ee5e328031b15640b51056ee8d3bb66c0a"
"reference": "ad7475d1c9e70b190ecffc58f2d989416af339b4"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/ramsey/collection/zipball/cccc74ee5e328031b15640b51056ee8d3bb66c0a",
"reference": "cccc74ee5e328031b15640b51056ee8d3bb66c0a",
"url": "https://api.github.com/repos/ramsey/collection/zipball/ad7475d1c9e70b190ecffc58f2d989416af339b4",
"reference": "ad7475d1c9e70b190ecffc58f2d989416af339b4",
"shasum": "",
"mirrors": [
{
@ -906,30 +848,41 @@
]
},
"require": {
"php": "^7.3 || ^8",
"php": "^7.4 || ^8.0",
"symfony/polyfill-php81": "^1.23"
},
"require-dev": {
"captainhook/captainhook": "^5.3",
"dealerdirect/phpcodesniffer-composer-installer": "^0.7.0",
"ergebnis/composer-normalize": "^2.6",
"fakerphp/faker": "^1.5",
"hamcrest/hamcrest-php": "^2",
"jangregor/phpstan-prophecy": "^0.8",
"mockery/mockery": "^1.3",
"captainhook/plugin-composer": "^5.3",
"ergebnis/composer-normalize": "^2.28.3",
"fakerphp/faker": "^1.21",
"hamcrest/hamcrest-php": "^2.0",
"jangregor/phpstan-prophecy": "^1.0",
"mockery/mockery": "^1.5",
"php-parallel-lint/php-console-highlighter": "^1.0",
"php-parallel-lint/php-parallel-lint": "^1.3",
"phpcsstandards/phpcsutils": "^1.0.0-rc1",
"phpspec/prophecy-phpunit": "^2.0",
"phpstan/extension-installer": "^1",
"phpstan/phpstan": "^0.12.32",
"phpstan/phpstan-mockery": "^0.12.5",
"phpstan/phpstan-phpunit": "^0.12.11",
"phpunit/phpunit": "^8.5 || ^9",
"psy/psysh": "^0.10.4",
"slevomat/coding-standard": "^6.3",
"squizlabs/php_codesniffer": "^3.5",
"vimeo/psalm": "^4.4"
"phpstan/extension-installer": "^1.2",
"phpstan/phpstan": "^1.9",
"phpstan/phpstan-mockery": "^1.1",
"phpstan/phpstan-phpunit": "^1.3",
"phpunit/phpunit": "^9.5",
"psalm/plugin-mockery": "^1.1",
"psalm/plugin-phpunit": "^0.18.4",
"ramsey/coding-standard": "^2.0.3",
"ramsey/conventional-commits": "^1.3",
"vimeo/psalm": "^5.4"
},
"time": "2021-10-10T03:01:02+00:00",
"time": "2022-12-27T19:12:24+00:00",
"type": "library",
"extra": {
"captainhook": {
"force-install": true
},
"ramsey/conventional-commits": {
"configFile": "conventional-commits.json"
}
},
"installation-source": "dist",
"autoload": {
"psr-4": {
@ -958,7 +911,7 @@
],
"support": {
"issues": "https://github.com/ramsey/collection/issues",
"source": "https://github.com/ramsey/collection/tree/1.2.2"
"source": "https://github.com/ramsey/collection/tree/1.3.0"
},
"funding": [
{
@ -1244,17 +1197,17 @@
},
{
"name": "symfony/polyfill-ctype",
"version": "v1.25.0",
"version_normalized": "1.25.0.0",
"version": "v1.27.0",
"version_normalized": "1.27.0.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-ctype.git",
"reference": "30885182c981ab175d4d034db0f6f469898070ab"
"reference": "5bbc823adecdae860bb64756d639ecfec17b050a"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/30885182c981ab175d4d034db0f6f469898070ab",
"reference": "30885182c981ab175d4d034db0f6f469898070ab",
"url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/5bbc823adecdae860bb64756d639ecfec17b050a",
"reference": "5bbc823adecdae860bb64756d639ecfec17b050a",
"shasum": "",
"mirrors": [
{
@ -1272,11 +1225,11 @@
"suggest": {
"ext-ctype": "For best performance"
},
"time": "2021-10-20T20:35:02+00:00",
"time": "2022-11-03T14:55:06+00:00",
"type": "library",
"extra": {
"branch-alias": {
"dev-main": "1.23-dev"
"dev-main": "1.27-dev"
},
"thanks": {
"name": "symfony/polyfill",
@ -1315,7 +1268,7 @@
"portable"
],
"support": {
"source": "https://github.com/symfony/polyfill-ctype/tree/v1.25.0"
"source": "https://github.com/symfony/polyfill-ctype/tree/v1.27.0"
},
"funding": [
{
@ -1335,17 +1288,17 @@
},
{
"name": "symfony/polyfill-php80",
"version": "v1.25.0",
"version_normalized": "1.25.0.0",
"version": "v1.27.0",
"version_normalized": "1.27.0.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php80.git",
"reference": "4407588e0d3f1f52efb65fbe92babe41f37fe50c"
"reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/4407588e0d3f1f52efb65fbe92babe41f37fe50c",
"reference": "4407588e0d3f1f52efb65fbe92babe41f37fe50c",
"url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936",
"reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936",
"shasum": "",
"mirrors": [
{
@ -1357,11 +1310,11 @@
"require": {
"php": ">=7.1"
},
"time": "2022-03-04T08:16:47+00:00",
"time": "2022-11-03T14:55:06+00:00",
"type": "library",
"extra": {
"branch-alias": {
"dev-main": "1.23-dev"
"dev-main": "1.27-dev"
},
"thanks": {
"name": "symfony/polyfill",
@ -1407,7 +1360,7 @@
"shim"
],
"support": {
"source": "https://github.com/symfony/polyfill-php80/tree/v1.25.0"
"source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0"
},
"funding": [
{
@ -1427,17 +1380,17 @@
},
{
"name": "symfony/polyfill-php81",
"version": "v1.25.0",
"version_normalized": "1.25.0.0",
"version": "v1.27.0",
"version_normalized": "1.27.0.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php81.git",
"reference": "5de4ba2d41b15f9bd0e19b2ab9674135813ec98f"
"reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/5de4ba2d41b15f9bd0e19b2ab9674135813ec98f",
"reference": "5de4ba2d41b15f9bd0e19b2ab9674135813ec98f",
"url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/707403074c8ea6e2edaf8794b0157a0bfa52157a",
"reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a",
"shasum": "",
"mirrors": [
{
@ -1449,11 +1402,11 @@
"require": {
"php": ">=7.1"
},
"time": "2021-09-13T13:58:11+00:00",
"time": "2022-11-03T14:55:06+00:00",
"type": "library",
"extra": {
"branch-alias": {
"dev-main": "1.23-dev"
"dev-main": "1.27-dev"
},
"thanks": {
"name": "symfony/polyfill",
@ -1495,7 +1448,7 @@
"shim"
],
"support": {
"source": "https://github.com/symfony/polyfill-php81/tree/v1.25.0"
"source": "https://github.com/symfony/polyfill-php81/tree/v1.27.0"
},
"funding": [
{
@ -1515,17 +1468,17 @@
},
{
"name": "symfony/process",
"version": "v5.4.8",
"version_normalized": "5.4.8.0",
"version": "v5.4.28",
"version_normalized": "5.4.28.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
"reference": "597f3fff8e3e91836bb0bd38f5718b56ddbde2f3"
"reference": "45261e1fccad1b5447a8d7a8e67aa7b4a9798b7b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/process/zipball/597f3fff8e3e91836bb0bd38f5718b56ddbde2f3",
"reference": "597f3fff8e3e91836bb0bd38f5718b56ddbde2f3",
"url": "https://api.github.com/repos/symfony/process/zipball/45261e1fccad1b5447a8d7a8e67aa7b4a9798b7b",
"reference": "45261e1fccad1b5447a8d7a8e67aa7b4a9798b7b",
"shasum": "",
"mirrors": [
{
@ -1538,7 +1491,7 @@
"php": ">=7.2.5",
"symfony/polyfill-php80": "^1.16"
},
"time": "2022-04-08T05:07:18+00:00",
"time": "2023-08-07T10:36:04+00:00",
"type": "library",
"installation-source": "dist",
"autoload": {
@ -1566,7 +1519,7 @@
"description": "Executes commands in sub-processes",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/process/tree/v5.4.8"
"source": "https://github.com/symfony/process/tree/v5.4.28"
},
"funding": [
{

View File

@ -1,112 +1,109 @@
<?php return array(
'root' => array(
'pretty_version' => '1.2.8',
'version' => '1.2.8.0',
'name' => '__root__',
'pretty_version' => '1.3.1',
'version' => '1.3.1.0',
'reference' => '7ba904e1020a15ea593301b05ecfc4d74aa61570',
'type' => 'library',
'install_path' => __DIR__ . '/../../',
'aliases' => array(),
'reference' => '7ee9e75e82e4c783157494b6ea3e4c29b9bc1d3f',
'name' => '__root__',
'dev' => false,
),
'versions' => array(
'__root__' => array(
'pretty_version' => '1.2.8',
'version' => '1.2.8.0',
'pretty_version' => '1.3.1',
'version' => '1.3.1.0',
'reference' => '7ba904e1020a15ea593301b05ecfc4d74aa61570',
'type' => 'library',
'install_path' => __DIR__ . '/../../',
'aliases' => array(),
'reference' => '7ee9e75e82e4c783157494b6ea3e4c29b9bc1d3f',
'dev_requirement' => false,
),
'beberlei/assert' => array(
'pretty_version' => 'v3.3.2',
'version' => '3.3.2.0',
'reference' => 'cb70015c04be1baee6f5f5c953703347c0ac1655',
'type' => 'library',
'install_path' => __DIR__ . '/../beberlei/assert',
'aliases' => array(),
'reference' => 'cb70015c04be1baee6f5f5c953703347c0ac1655',
'dev_requirement' => false,
),
'brick/math' => array(
'pretty_version' => '0.9.3',
'version' => '0.9.3.0',
'reference' => 'ca57d18f028f84f777b2168cd1911b0dee2343ae',
'type' => 'library',
'install_path' => __DIR__ . '/../brick/math',
'aliases' => array(),
'reference' => 'ca57d18f028f84f777b2168cd1911b0dee2343ae',
'dev_requirement' => false,
),
'fgrosse/phpasn1' => array(
'pretty_version' => 'v2.4.0',
'version' => '2.4.0.0',
'pretty_version' => 'v2.5.0',
'version' => '2.5.0.0',
'reference' => '42060ed45344789fb9f21f9f1864fc47b9e3507b',
'type' => 'library',
'install_path' => __DIR__ . '/../fgrosse/phpasn1',
'aliases' => array(),
'reference' => 'eef488991d53e58e60c9554b09b1201ca5ba9296',
'dev_requirement' => false,
),
'league/uri' => array(
'pretty_version' => '6.5.0',
'version' => '6.5.0.0',
'pretty_version' => '6.7.2',
'version' => '6.7.2.0',
'reference' => 'd3b50812dd51f3fbf176344cc2981db03d10fe06',
'type' => 'library',
'install_path' => __DIR__ . '/../league/uri',
'aliases' => array(),
'reference' => 'c68ca445abb04817d740ddd6d0b3551826ef0c5a',
'dev_requirement' => false,
),
'league/uri-interfaces' => array(
'pretty_version' => '2.3.0',
'version' => '2.3.0.0',
'reference' => '00e7e2943f76d8cb50c7dfdc2f6dee356e15e383',
'type' => 'library',
'install_path' => __DIR__ . '/../league/uri-interfaces',
'aliases' => array(),
'reference' => '00e7e2943f76d8cb50c7dfdc2f6dee356e15e383',
'dev_requirement' => false,
),
'nyholm/psr7' => array(
'pretty_version' => '1.5.0',
'version' => '1.5.0.0',
'pretty_version' => '1.8.0',
'version' => '1.8.0.0',
'reference' => '3cb4d163b58589e47b35103e8e5e6a6a475b47be',
'type' => 'library',
'install_path' => __DIR__ . '/../nyholm/psr7',
'aliases' => array(),
'reference' => '1461e07a0f2a975a52082ca3b769ca912b816226',
'dev_requirement' => false,
),
'nyholm/psr7-server' => array(
'pretty_version' => '0.4.2',
'version' => '0.4.2.0',
'reference' => 'aab2962c970a1776447894e4fd3825a3d69dee61',
'type' => 'library',
'install_path' => __DIR__ . '/../nyholm/psr7-server',
'aliases' => array(),
'reference' => 'aab2962c970a1776447894e4fd3825a3d69dee61',
'dev_requirement' => false,
),
'php-http/message-factory' => array(
'pretty_version' => 'v1.0.2',
'version' => '1.0.2.0',
'type' => 'library',
'install_path' => __DIR__ . '/../php-http/message-factory',
'aliases' => array(),
'reference' => 'a478cb11f66a6ac48d8954216cfed9aa06a501a1',
'php-http/message-factory-implementation' => array(
'dev_requirement' => false,
'provided' => array(
0 => '1.0',
),
),
'psr/http-client' => array(
'pretty_version' => '1.0.1',
'version' => '1.0.1.0',
'reference' => '2dfb5f6c5eff0e91e20e913f8c5452ed95b86621',
'type' => 'library',
'install_path' => __DIR__ . '/../psr/http-client',
'aliases' => array(),
'reference' => '2dfb5f6c5eff0e91e20e913f8c5452ed95b86621',
'dev_requirement' => false,
),
'psr/http-factory' => array(
'pretty_version' => '1.0.1',
'version' => '1.0.1.0',
'pretty_version' => '1.0.2',
'version' => '1.0.2.0',
'reference' => 'e616d01114759c4c489f93b099585439f795fe35',
'type' => 'library',
'install_path' => __DIR__ . '/../psr/http-factory',
'aliases' => array(),
'reference' => '12ac7fcd07e5b077433f5f2bee95b3a771bf61be',
'dev_requirement' => false,
),
'psr/http-factory-implementation' => array(
@ -116,12 +113,12 @@
),
),
'psr/http-message' => array(
'pretty_version' => '1.0.1',
'version' => '1.0.1.0',
'pretty_version' => '1.1',
'version' => '1.1.0.0',
'reference' => 'cb6ce4845ce34a8ad9e68117c10ee90a29919eba',
'type' => 'library',
'install_path' => __DIR__ . '/../psr/http-message',
'aliases' => array(),
'reference' => 'f6561bf28d520154e4b0ec72be95418abe6d9363',
'dev_requirement' => false,
),
'psr/http-message-implementation' => array(
@ -133,28 +130,28 @@
'psr/log' => array(
'pretty_version' => '1.1.4',
'version' => '1.1.4.0',
'reference' => 'd49695b909c3b7628b6289db5479a1c204601f11',
'type' => 'library',
'install_path' => __DIR__ . '/../psr/log',
'aliases' => array(),
'reference' => 'd49695b909c3b7628b6289db5479a1c204601f11',
'dev_requirement' => false,
),
'ramsey/collection' => array(
'pretty_version' => '1.2.2',
'version' => '1.2.2.0',
'pretty_version' => '1.3.0',
'version' => '1.3.0.0',
'reference' => 'ad7475d1c9e70b190ecffc58f2d989416af339b4',
'type' => 'library',
'install_path' => __DIR__ . '/../ramsey/collection',
'aliases' => array(),
'reference' => 'cccc74ee5e328031b15640b51056ee8d3bb66c0a',
'dev_requirement' => false,
),
'ramsey/uuid' => array(
'pretty_version' => '4.2.3',
'version' => '4.2.3.0',
'reference' => 'fc9bb7fb5388691fd7373cd44dcb4d63bbcf24df',
'type' => 'library',
'install_path' => __DIR__ . '/../ramsey/uuid',
'aliases' => array(),
'reference' => 'fc9bb7fb5388691fd7373cd44dcb4d63bbcf24df',
'dev_requirement' => false,
),
'rhumsaa/uuid' => array(
@ -166,145 +163,145 @@
'spomky-labs/base64url' => array(
'pretty_version' => 'v2.0.4',
'version' => '2.0.4.0',
'reference' => '7752ce931ec285da4ed1f4c5aa27e45e097be61d',
'type' => 'library',
'install_path' => __DIR__ . '/../spomky-labs/base64url',
'aliases' => array(),
'reference' => '7752ce931ec285da4ed1f4c5aa27e45e097be61d',
'dev_requirement' => false,
),
'spomky-labs/cbor-php' => array(
'pretty_version' => 'v2.1.0',
'version' => '2.1.0.0',
'reference' => '28e2712cfc0b48fae661a48ffc6896d7abe83684',
'type' => 'library',
'install_path' => __DIR__ . '/../spomky-labs/cbor-php',
'aliases' => array(),
'reference' => '28e2712cfc0b48fae661a48ffc6896d7abe83684',
'dev_requirement' => false,
),
'symfony/polyfill-ctype' => array(
'pretty_version' => 'v1.25.0',
'version' => '1.25.0.0',
'pretty_version' => 'v1.27.0',
'version' => '1.27.0.0',
'reference' => '5bbc823adecdae860bb64756d639ecfec17b050a',
'type' => 'library',
'install_path' => __DIR__ . '/../symfony/polyfill-ctype',
'aliases' => array(),
'reference' => '30885182c981ab175d4d034db0f6f469898070ab',
'dev_requirement' => false,
),
'symfony/polyfill-php80' => array(
'pretty_version' => 'v1.25.0',
'version' => '1.25.0.0',
'pretty_version' => 'v1.27.0',
'version' => '1.27.0.0',
'reference' => '7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936',
'type' => 'library',
'install_path' => __DIR__ . '/../symfony/polyfill-php80',
'aliases' => array(),
'reference' => '4407588e0d3f1f52efb65fbe92babe41f37fe50c',
'dev_requirement' => false,
),
'symfony/polyfill-php81' => array(
'pretty_version' => 'v1.25.0',
'version' => '1.25.0.0',
'pretty_version' => 'v1.27.0',
'version' => '1.27.0.0',
'reference' => '707403074c8ea6e2edaf8794b0157a0bfa52157a',
'type' => 'library',
'install_path' => __DIR__ . '/../symfony/polyfill-php81',
'aliases' => array(),
'reference' => '5de4ba2d41b15f9bd0e19b2ab9674135813ec98f',
'dev_requirement' => false,
),
'symfony/process' => array(
'pretty_version' => 'v5.4.8',
'version' => '5.4.8.0',
'pretty_version' => 'v5.4.28',
'version' => '5.4.28.0',
'reference' => '45261e1fccad1b5447a8d7a8e67aa7b4a9798b7b',
'type' => 'library',
'install_path' => __DIR__ . '/../symfony/process',
'aliases' => array(),
'reference' => '597f3fff8e3e91836bb0bd38f5718b56ddbde2f3',
'dev_requirement' => false,
),
'thecodingmachine/safe' => array(
'pretty_version' => 'v1.3.3',
'version' => '1.3.3.0',
'reference' => 'a8ab0876305a4cdaef31b2350fcb9811b5608dbc',
'type' => 'library',
'install_path' => __DIR__ . '/../thecodingmachine/safe',
'aliases' => array(),
'reference' => 'a8ab0876305a4cdaef31b2350fcb9811b5608dbc',
'dev_requirement' => false,
),
'web-auth/cose-lib' => array(
'pretty_version' => 'v3.3.12',
'version' => '3.3.12.0',
'reference' => 'efa6ec2ba4e840bc1316a493973c9916028afeeb',
'type' => 'library',
'install_path' => __DIR__ . '/../web-auth/cose-lib',
'aliases' => array(),
'reference' => 'efa6ec2ba4e840bc1316a493973c9916028afeeb',
'dev_requirement' => false,
),
'web-auth/metadata-service' => array(
'pretty_version' => 'v3.3.12',
'version' => '3.3.12.0',
'reference' => 'ef40d2b7b68c4964247d13fab52e2fa8dbd65246',
'type' => 'library',
'install_path' => __DIR__ . '/../web-auth/metadata-service',
'aliases' => array(),
'reference' => 'ef40d2b7b68c4964247d13fab52e2fa8dbd65246',
'dev_requirement' => false,
),
'web-auth/webauthn-lib' => array(
'pretty_version' => 'v3.3.12',
'version' => '3.3.12.0',
'reference' => '5ef9b21c8e9f8a817e524ac93290d08a9f065b33',
'type' => 'library',
'install_path' => __DIR__ . '/../web-auth/webauthn-lib',
'aliases' => array(),
'reference' => '5ef9b21c8e9f8a817e524ac93290d08a9f065b33',
'dev_requirement' => false,
),
'web-token/jwt-core' => array(
'pretty_version' => 'v2.2.11',
'version' => '2.2.11.0',
'reference' => '53beb6f6c1eec4fa93c1c3e5d9e5701e71fa1678',
'type' => 'library',
'install_path' => __DIR__ . '/../web-token/jwt-core',
'aliases' => array(),
'reference' => '53beb6f6c1eec4fa93c1c3e5d9e5701e71fa1678',
'dev_requirement' => false,
),
'web-token/jwt-key-mgmt' => array(
'pretty_version' => 'v2.2.11',
'version' => '2.2.11.0',
'reference' => '0b116379515700d237b4e5de86879078ccb09d8a',
'type' => 'library',
'install_path' => __DIR__ . '/../web-token/jwt-key-mgmt',
'aliases' => array(),
'reference' => '0b116379515700d237b4e5de86879078ccb09d8a',
'dev_requirement' => false,
),
'web-token/jwt-signature' => array(
'pretty_version' => 'v2.2.11',
'version' => '2.2.11.0',
'reference' => '015b59aaf3b6e8fb9f5bd1338845b7464c7d8103',
'type' => 'library',
'install_path' => __DIR__ . '/../web-token/jwt-signature',
'aliases' => array(),
'reference' => '015b59aaf3b6e8fb9f5bd1338845b7464c7d8103',
'dev_requirement' => false,
),
'web-token/jwt-signature-algorithm-ecdsa' => array(
'pretty_version' => 'v2.2.11',
'version' => '2.2.11.0',
'reference' => '44cbbb4374c51f1cf48b82ae761efbf24e1a8591',
'type' => 'library',
'install_path' => __DIR__ . '/../web-token/jwt-signature-algorithm-ecdsa',
'aliases' => array(),
'reference' => '44cbbb4374c51f1cf48b82ae761efbf24e1a8591',
'dev_requirement' => false,
),
'web-token/jwt-signature-algorithm-eddsa' => array(
'pretty_version' => 'v2.2.11',
'version' => '2.2.11.0',
'reference' => 'b805ecca593c56e60e0463bd2cacc9b1341910f6',
'type' => 'library',
'install_path' => __DIR__ . '/../web-token/jwt-signature-algorithm-eddsa',
'aliases' => array(),
'reference' => 'b805ecca593c56e60e0463bd2cacc9b1341910f6',
'dev_requirement' => false,
),
'web-token/jwt-signature-algorithm-rsa' => array(
'pretty_version' => 'v2.2.11',
'version' => '2.2.11.0',
'reference' => '513ad90eb5ef1886ff176727a769bda4618141b0',
'type' => 'library',
'install_path' => __DIR__ . '/../web-token/jwt-signature-algorithm-rsa',
'aliases' => array(),
'reference' => '513ad90eb5ef1886ff176727a769bda4618141b0',
'dev_requirement' => false,
),
),

View File

@ -1,3 +1,9 @@
#### v2.5.0 (2022-12)
* Support PHP 8.2 [#99](https://github.com/fgrosse/PHPASN1/pull/99)
* PHP 8 compatibility fix for DateTime::getLastErrors [#98](https://github.com/fgrosse/PHPASN1/pull/98)
* Support more OIDs [#95](https://github.com/fgrosse/PHPASN1/pull/95)
* FINAL RELEASE. Library is now no longer actively maintained and marked as archived on GitHub
#### v2.4.0 (2021-12)
* Drop support for PHP 7.0 [#89](https://github.com/fgrosse/PHPASN1/pull/89)

View File

@ -10,6 +10,15 @@ PHPASN1
[![Latest Unstable Version](https://poser.pugx.org/fgrosse/phpasn1/v/unstable.png)](https://packagist.org/packages/fgrosse/phpasn1)
[![License](https://poser.pugx.org/fgrosse/phpasn1/license.png)](https://packagist.org/packages/fgrosse/phpasn1)
---
<h2><span style="color:red">Notice: This library is no longer actively maintained!</span></h2>
If you are currently using PHPASN1, this might not be an immediate problem for you, since this library was always rather stable.
However, you are advised to migrate to alternative packages to ensure that your applications remain functional also with newer PHP versions.
---
A PHP Framework that allows you to encode and decode arbitrary [ASN.1][3] structures
using the [ITU-T X.690 Encoding Rules][4].
This encoding is very frequently used in [X.509 PKI environments][5] or the communication between heterogeneous computer systems.
@ -135,14 +144,7 @@ To see some example usage of the API classes or some generated output check out
### How do I contribute?
If you found an issue or have a question submit a github issue with detailed information.
In case you already know what caused the issue and feel in the mood to fix it, your code contributions are always welcome. Just fork the repository, implement your changes and make sure that you covered everything with tests.
Afterwards submit a pull request via github and be a little patient :) I usually try to comment and/or merge as soon as possible.
#### Mailing list
New features or questions can be discussed in [this google group/mailing list][12].
This project is no longer maintained and thus does not accept any new contributions.
### Thanks

View File

@ -19,10 +19,10 @@
"keywords": [ "x690", "x.690", "x.509", "x509", "asn1", "asn.1", "ber", "der", "binary", "encoding", "decoding" ],
"require": {
"php": "~7.1.0 || ~7.2.0 || ~7.3.0 || ~7.4.0 || ~8.0.0 || ~8.1.0"
"php": "^7.1 || ^8.0"
},
"require-dev": {
"phpunit/phpunit": "^6.3 || ^7.0 || ^8.0",
"phpunit/phpunit": "^7.0 || ^8.0 || ^9.0",
"php-coveralls/php-coveralls": "~2.0"
},
"suggest": {

View File

@ -46,7 +46,7 @@ abstract class AbstractTime extends ASNObject
protected function getLastDateTimeErrors()
{
$messages = '';
$lastErrors = DateTime::getLastErrors();
$lastErrors = DateTime::getLastErrors() ?: ['errors' => []];
foreach ($lastErrors['errors'] as $errorMessage) {
$messages .= "{$errorMessage}, ";
}

Some files were not shown because too many files have changed in this diff Show More