diff --git a/kirby/SECURITY.md b/kirby/SECURITY.md index d3ea685..ae42a38 100755 --- a/kirby/SECURITY.md +++ b/kirby/SECURITY.md @@ -1,16 +1,3 @@ # Security Policy -## Supported Versions - -| Version | Supported | -| ------- | ------------------ | -| 3.2.3+ | :white_check_mark: | -| 2.5.12+ | :white_check_mark: | - -## Security Guide - -Please follow our security guide to keep your Kirby installation safe: https://getkirby.com/docs/guide/security#reporting-security-issues - -## Reporting a Vulnerability - -If you have spotted a vulnerability in Kirby's core or the Panel, please make sure to let us know immediately. We take any report very seriously. You can always write us directly at support@getkirby.com. Please do not write to us publicly, e.g. in the forum. +Please see the [Security Policy on the Kirby website](https://getkirby.com/security) for a list of the currently supported Kirby versions and of past security incidents as well as for information on how to report security vulnerabilities in the Kirby core or in the Panel. diff --git a/kirby/assets/whoops.css b/kirby/assets/whoops.css new file mode 100755 index 0000000..bd35464 --- /dev/null +++ b/kirby/assets/whoops.css @@ -0,0 +1,83 @@ +body { + background: #efefef; + font: normal normal 400 12px/1.5 -apple-system, BlinkMacSystemFont, Segoe UI, + Roboto, Helvetica, Arial, sans-serif; +} + +.left-panel { + background: transparent; +} + +header { + background-color: #313740; +} + +.exc-title-primary { + color: hsl(0, 71%, 55%); +} + +.frame.active { + color: hsl(0, 71%, 55%); + box-shadow: inset -5px 0 0 0 #d16464; +} + +.frame:not(.active):hover { + background: rgba(203, 215, 229, 0.5); +} + +.rightButton { + color: #999; + box-shadow: inset 0 0 0 1px #777; + border-radius: 0; +} + +.rightButton:hover { + box-shadow: inset 0 0 0 1px #555; + color: #777; +} + +.details-heading { + color: #7e9abf; + font-weight: 500; +} + +.frame-code { + background: #000; +} + +pre.code-block, +code.code-block, +.frame-args.code-block, +.frame-args.code-block samp { + background: #16171a; +} + +.linenums li.current { + background: transparent; +} + +.linenums li.current.active { + background: rgba(209, 100, 100, 0.3); +} + +pre .atv, +code .atv, +pre .str, +code .str { + color: #a7bd68; +} + +pre .tag, +code .tag { + color: #d16464; +} + +pre .kwd, +code .kwd { + color: #8abeb7; +} + +pre .atn, +code .atn { + color: #de935f; +} diff --git a/kirby/bootstrap.php b/kirby/bootstrap.php index 0f593d0..83d7f42 100755 --- a/kirby/bootstrap.php +++ b/kirby/bootstrap.php @@ -2,9 +2,12 @@ /** * Validate the PHP version to already - * stop at older versions + * stop at older or too recent versions */ -if (version_compare(phpversion(), '7.1.0', '>=') === false) { +if ( + version_compare(PHP_VERSION, '7.2.0', '>=') === false || + version_compare(PHP_VERSION, '7.5.0', '<') === false +) { die(include __DIR__ . '/views/php.php'); } diff --git a/kirby/cacert.pem b/kirby/cacert.pem new file mode 100755 index 0000000..eb8b0ba --- /dev/null +++ b/kirby/cacert.pem @@ -0,0 +1,3466 @@ +## +## Bundle of CA Root Certificates +## +## Certificate data from Mozilla as of: Wed Jun 24 03:12:10 2020 GMT +## +## This is a bundle of X.509 certificates of public Certificate Authorities +## (CA). These were automatically extracted from Mozilla's root certificates +## file (certdata.txt). This file can be found in the mozilla source tree: +## https://hg.mozilla.org/releases/mozilla-release/raw-file/default/security/nss/lib/ckfw/builtins/certdata.txt +## +## It contains the certificates in PEM format and therefore +## can be directly used with curl / libcurl / php_curl, or with +## an Apache+mod_ssl webserver for SSL client authentication. +## Just configure this file as the SSLCACertificateFile. +## +## Conversion done with mk-ca-bundle.pl version 1.28. +## SHA256: 5796295533cad5a648a20a115b0894dc9b318c41501796e7158e824c323f11c3 +## + + +GlobalSign Root CA +================== +-----BEGIN CERTIFICATE----- +MIIDdTCCAl2gAwIBAgILBAAAAAABFUtaw5QwDQYJKoZIhvcNAQEFBQAwVzELMAkGA1UEBhMCQkUx +GTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYtc2ExEDAOBgNVBAsTB1Jvb3QgQ0ExGzAZBgNVBAMTEkds +b2JhbFNpZ24gUm9vdCBDQTAeFw05ODA5MDExMjAwMDBaFw0yODAxMjgxMjAwMDBaMFcxCzAJBgNV +BAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMRAwDgYDVQQLEwdSb290IENBMRswGQYD +VQQDExJHbG9iYWxTaWduIFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDa +DuaZjc6j40+Kfvvxi4Mla+pIH/EqsLmVEQS98GPR4mdmzxzdzxtIK+6NiY6arymAZavpxy0Sy6sc +THAHoT0KMM0VjU/43dSMUBUc71DuxC73/OlS8pF94G3VNTCOXkNz8kHp1Wrjsok6Vjk4bwY8iGlb +Kk3Fp1S4bInMm/k8yuX9ifUSPJJ4ltbcdG6TRGHRjcdGsnUOhugZitVtbNV4FpWi6cgKOOvyJBNP +c1STE4U6G7weNLWLBYy5d4ux2x8gkasJU26Qzns3dLlwR5EiUWMWea6xrkEmCMgZK9FGqkjWZCrX +gzT/LCrBbBlDSgeF59N89iFo7+ryUp9/k5DPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV +HRMBAf8EBTADAQH/MB0GA1UdDgQWBBRge2YaRQ2XyolQL30EzTSo//z9SzANBgkqhkiG9w0BAQUF +AAOCAQEA1nPnfE920I2/7LqivjTFKDK1fPxsnCwrvQmeU79rXqoRSLblCKOzyj1hTdNGCbM+w6Dj +Y1Ub8rrvrTnhQ7k4o+YviiY776BQVvnGCv04zcQLcFGUl5gE38NflNUVyRRBnMRddWQVDf9VMOyG +j/8N7yy5Y0b2qvzfvGn9LhJIZJrglfCm7ymPAbEVtQwdpf5pLGkkeB6zpxxxYu7KyJesF12KwvhH +hm4qxFYxldBniYUr+WymXUadDKqC5JlR3XC321Y9YeRq4VzW9v493kHMB65jUr9TU/Qr6cf9tveC +X4XSQRjbgbMEHMUfpIBvFSDJ3gyICh3WZlXi/EjJKSZp4A== +-----END CERTIFICATE----- + +GlobalSign Root CA - R2 +======================= +-----BEGIN CERTIFICATE----- +MIIDujCCAqKgAwIBAgILBAAAAAABD4Ym5g0wDQYJKoZIhvcNAQEFBQAwTDEgMB4GA1UECxMXR2xv +YmFsU2lnbiBSb290IENBIC0gUjIxEzARBgNVBAoTCkdsb2JhbFNpZ24xEzARBgNVBAMTCkdsb2Jh +bFNpZ24wHhcNMDYxMjE1MDgwMDAwWhcNMjExMjE1MDgwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxT +aWduIFJvb3QgQ0EgLSBSMjETMBEGA1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2ln +bjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKbPJA6+Lm8omUVCxKs+IVSbC9N/hHD6 +ErPLv4dfxn+G07IwXNb9rfF73OX4YJYJkhD10FPe+3t+c4isUoh7SqbKSaZeqKeMWhG8eoLrvozp +s6yWJQeXSpkqBy+0Hne/ig+1AnwblrjFuTosvNYSuetZfeLQBoZfXklqtTleiDTsvHgMCJiEbKjN +S7SgfQx5TfC4LcshytVsW33hoCmEofnTlEnLJGKRILzdC9XZzPnqJworc5HGnRusyMvo4KD0L5CL +TfuwNhv2GXqF4G3yYROIXJ/gkwpRl4pazq+r1feqCapgvdzZX99yqWATXgAByUr6P6TqBwMhAo6C +ygPCm48CAwEAAaOBnDCBmTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4E +FgQUm+IHV2ccHsBqBt5ZtJot39wZhi4wNgYDVR0fBC8wLTAroCmgJ4YlaHR0cDovL2NybC5nbG9i +YWxzaWduLm5ldC9yb290LXIyLmNybDAfBgNVHSMEGDAWgBSb4gdXZxwewGoG3lm0mi3f3BmGLjAN +BgkqhkiG9w0BAQUFAAOCAQEAmYFThxxol4aR7OBKuEQLq4GsJ0/WwbgcQ3izDJr86iw8bmEbTUsp +9Z8FHSbBuOmDAGJFtqkIk7mpM0sYmsL4h4hO291xNBrBVNpGP+DTKqttVCL1OmLNIG+6KYnX3ZHu +01yiPqFbQfXf5WRDLenVOavSot+3i9DAgBkcRcAtjOj4LaR0VknFBbVPFd5uRHg5h6h+u/N5GJG7 +9G+dwfCMNYxdAfvDbbnvRG15RjF+Cv6pgsH/76tuIMRQyV+dTZsXjAzlAcmgQWpzU/qlULRuJQ/7 +TBj0/VLZjmmx6BEP3ojY+x1J96relc8geMJgEtslQIxq/H5COEBkEveegeGTLg== +-----END CERTIFICATE----- + +Verisign Class 3 Public Primary Certification Authority - G3 +============================================================ +-----BEGIN CERTIFICATE----- +MIIEGjCCAwICEQCbfgZJoz5iudXukEhxKe9XMA0GCSqGSIb3DQEBBQUAMIHKMQswCQYDVQQGEwJV +UzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdv +cmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNl +IG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNh +dGlvbiBBdXRob3JpdHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQsw +CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRy +dXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhv +cml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDMgUHVibGljIFByaW1hcnkg +Q2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +ggEBAMu6nFL8eB8aHm8bN3O9+MlrlBIwT/A2R/XQkQr1F8ilYcEWQE37imGQ5XYgwREGfassbqb1 +EUGO+i2tKmFZpGcmTNDovFJbcCAEWNF6yaRpvIMXZK0Fi7zQWM6NjPXr8EJJC52XJ2cybuGukxUc +cLwgTS8Y3pKI6GyFVxEa6X7jJhFUokWWVYPKMIno3Nij7SqAP395ZVc+FSBmCC+Vk7+qRy+oRpfw +EuL+wgorUeZ25rdGt+INpsyow0xZVYnm6FNcHOqd8GIWC6fJXwzw3sJ2zq/3avL6QaaiMxTJ5Xpj +055iN9WFZZ4O5lMkdBteHRJTW8cs54NJOxWuimi5V5cCAwEAATANBgkqhkiG9w0BAQUFAAOCAQEA +ERSWwauSCPc/L8my/uRan2Te2yFPhpk0djZX3dAVL8WtfxUfN2JzPtTnX84XA9s1+ivbrmAJXx5f +j267Cz3qWhMeDGBvtcC1IyIuBwvLqXTLR7sdwdela8wv0kL9Sd2nic9TutoAWii/gt/4uhMdUIaC +/Y4wjylGsB49Ndo4YhYYSq3mtlFs3q9i6wHQHiT+eo8SGhJouPtmmRQURVyu565pF4ErWjfJXir0 +xuKhXFSbplQAz/DxwceYMBo7Nhbbo27q/a2ywtrvAkcTisDxszGtTxzhT5yvDwyd93gN2PQ1VoDa +t20Xj50egWTh/sVFuq1ruQp6Tk9LhO5L8X3dEQ== +-----END CERTIFICATE----- + +Entrust.net Premium 2048 Secure Server CA +========================================= +-----BEGIN CERTIFICATE----- +MIIEKjCCAxKgAwIBAgIEOGPe+DANBgkqhkiG9w0BAQUFADCBtDEUMBIGA1UEChMLRW50cnVzdC5u +ZXQxQDA+BgNVBAsUN3d3dy5lbnRydXN0Lm5ldC9DUFNfMjA0OCBpbmNvcnAuIGJ5IHJlZi4gKGxp +bWl0cyBsaWFiLikxJTAjBgNVBAsTHChjKSAxOTk5IEVudHJ1c3QubmV0IExpbWl0ZWQxMzAxBgNV +BAMTKkVudHJ1c3QubmV0IENlcnRpZmljYXRpb24gQXV0aG9yaXR5ICgyMDQ4KTAeFw05OTEyMjQx +NzUwNTFaFw0yOTA3MjQxNDE1MTJaMIG0MRQwEgYDVQQKEwtFbnRydXN0Lm5ldDFAMD4GA1UECxQ3 +d3d3LmVudHJ1c3QubmV0L0NQU18yMDQ4IGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxpYWIuKTEl +MCMGA1UECxMcKGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDEzMDEGA1UEAxMqRW50cnVzdC5u +ZXQgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgKDIwNDgpMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A +MIIBCgKCAQEArU1LqRKGsuqjIAcVFmQqK0vRvwtKTY7tgHalZ7d4QMBzQshowNtTK91euHaYNZOL +Gp18EzoOH1u3Hs/lJBQesYGpjX24zGtLA/ECDNyrpUAkAH90lKGdCCmziAv1h3edVc3kw37XamSr +hRSGlVuXMlBvPci6Zgzj/L24ScF2iUkZ/cCovYmjZy/Gn7xxGWC4LeksyZB2ZnuU4q941mVTXTzW +nLLPKQP5L6RQstRIzgUyVYr9smRMDuSYB3Xbf9+5CFVghTAp+XtIpGmG4zU/HoZdenoVve8AjhUi +VBcAkCaTvA5JaJG/+EfTnZVCwQ5N328mz8MYIWJmQ3DW1cAH4QIDAQABo0IwQDAOBgNVHQ8BAf8E +BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUVeSB0RGAvtiJuQijMfmhJAkWuXAwDQYJ +KoZIhvcNAQEFBQADggEBADubj1abMOdTmXx6eadNl9cZlZD7Bh/KM3xGY4+WZiT6QBshJ8rmcnPy +T/4xmf3IDExoU8aAghOY+rat2l098c5u9hURlIIM7j+VrxGrD9cv3h8Dj1csHsm7mhpElesYT6Yf +zX1XEC+bBAlahLVu2B064dae0Wx5XnkcFMXj0EyTO2U87d89vqbllRrDtRnDvV5bu/8j72gZyxKT +J1wDLW8w0B62GqzeWvfRqqgnpv55gcR5mTNXuhKwqeBCbJPKVt7+bYQLCIt+jerXmCHG8+c8eS9e +nNFMFY3h7CI3zJpDC5fcgJCNs2ebb0gIFVbPv/ErfF6adulZkMV8gzURZVE= +-----END CERTIFICATE----- + +Baltimore CyberTrust Root +========================= +-----BEGIN CERTIFICATE----- +MIIDdzCCAl+gAwIBAgIEAgAAuTANBgkqhkiG9w0BAQUFADBaMQswCQYDVQQGEwJJRTESMBAGA1UE +ChMJQmFsdGltb3JlMRMwEQYDVQQLEwpDeWJlclRydXN0MSIwIAYDVQQDExlCYWx0aW1vcmUgQ3li +ZXJUcnVzdCBSb290MB4XDTAwMDUxMjE4NDYwMFoXDTI1MDUxMjIzNTkwMFowWjELMAkGA1UEBhMC +SUUxEjAQBgNVBAoTCUJhbHRpbW9yZTETMBEGA1UECxMKQ3liZXJUcnVzdDEiMCAGA1UEAxMZQmFs +dGltb3JlIEN5YmVyVHJ1c3QgUm9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKME +uyKrmD1X6CZymrV51Cni4eiVgLGw41uOKymaZN+hXe2wCQVt2yguzmKiYv60iNoS6zjrIZ3AQSsB +UnuId9Mcj8e6uYi1agnnc+gRQKfRzMpijS3ljwumUNKoUMMo6vWrJYeKmpYcqWe4PwzV9/lSEy/C +G9VwcPCPwBLKBsua4dnKM3p31vjsufFoREJIE9LAwqSuXmD+tqYF/LTdB1kC1FkYmGP1pWPgkAx9 +XbIGevOF6uvUA65ehD5f/xXtabz5OTZydc93Uk3zyZAsuT3lySNTPx8kmCFcB5kpvcY67Oduhjpr +l3RjM71oGDHweI12v/yejl0qhqdNkNwnGjkCAwEAAaNFMEMwHQYDVR0OBBYEFOWdWTCCR1jMrPoI +VDaGezq1BE3wMBIGA1UdEwEB/wQIMAYBAf8CAQMwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEB +BQUAA4IBAQCFDF2O5G9RaEIFoN27TyclhAO992T9Ldcw46QQF+vaKSm2eT929hkTI7gQCvlYpNRh +cL0EYWoSihfVCr3FvDB81ukMJY2GQE/szKN+OMY3EU/t3WgxjkzSswF07r51XgdIGn9w/xZchMB5 +hbgF/X++ZRGjD8ACtPhSNzkE1akxehi/oCr0Epn3o0WC4zxe9Z2etciefC7IpJ5OCBRLbf1wbWsa +Y71k5h+3zvDyny67G7fyUIhzksLi4xaNmjICq44Y3ekQEe5+NauQrz4wlHrQMz2nZQ/1/I6eYs9H +RCwBXbsdtTLSR9I4LtD+gdwyah617jzV/OeBHRnDJELqYzmp +-----END CERTIFICATE----- + +AddTrust External Root +====================== +-----BEGIN CERTIFICATE----- +MIIENjCCAx6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBvMQswCQYDVQQGEwJTRTEUMBIGA1UEChML +QWRkVHJ1c3QgQUIxJjAkBgNVBAsTHUFkZFRydXN0IEV4dGVybmFsIFRUUCBOZXR3b3JrMSIwIAYD +VQQDExlBZGRUcnVzdCBFeHRlcm5hbCBDQSBSb290MB4XDTAwMDUzMDEwNDgzOFoXDTIwMDUzMDEw +NDgzOFowbzELMAkGA1UEBhMCU0UxFDASBgNVBAoTC0FkZFRydXN0IEFCMSYwJAYDVQQLEx1BZGRU +cnVzdCBFeHRlcm5hbCBUVFAgTmV0d29yazEiMCAGA1UEAxMZQWRkVHJ1c3QgRXh0ZXJuYWwgQ0Eg +Um9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALf3GjPm8gAELTngTlvtH7xsD821 ++iO2zt6bETOXpClMfZOfvUq8k+0DGuOPz+VtUFrWlymUWoCwSXrbLpX9uMq/NzgtHj6RQa1wVsfw +Tz/oMp50ysiQVOnGXw94nZpAPA6sYapeFI+eh6FqUNzXmk6vBbOmcZSccbNQYArHE504B4YCqOmo +aSYYkKtMsE8jqzpPhNjfzp/haW+710LXa0Tkx63ubUFfclpxCDezeWWkWaCUN/cALw3CknLa0Dhy +2xSoRcRdKn23tNbE7qzNE0S3ySvdQwAl+mG5aWpYIxG3pzOPVnVZ9c0p10a3CitlttNCbxWyuHv7 +7+ldU9U0WicCAwEAAaOB3DCB2TAdBgNVHQ4EFgQUrb2YejS0Jvf6xCZU7wO94CTLVBowCwYDVR0P +BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wgZkGA1UdIwSBkTCBjoAUrb2YejS0Jvf6xCZU7wO94CTL +VBqhc6RxMG8xCzAJBgNVBAYTAlNFMRQwEgYDVQQKEwtBZGRUcnVzdCBBQjEmMCQGA1UECxMdQWRk +VHJ1c3QgRXh0ZXJuYWwgVFRQIE5ldHdvcmsxIjAgBgNVBAMTGUFkZFRydXN0IEV4dGVybmFsIENB +IFJvb3SCAQEwDQYJKoZIhvcNAQEFBQADggEBALCb4IUlwtYj4g+WBpKdQZic2YR5gdkeWxQHIzZl +j7DYd7usQWxHYINRsPkyPef89iYTx4AWpb9a/IfPeHmJIZriTAcKhjW88t5RxNKWt9x+Tu5w/Rw5 +6wwCURQtjr0W4MHfRnXnJK3s9EK0hZNwEGe6nQY1ShjTK3rMUUKhemPR5ruhxSvCNr4TDea9Y355 +e6cJDUCrat2PisP29owaQgVR1EX1n6diIWgVIEM8med8vSTYqZEXc4g/VhsxOBi0cQ+azcgOno4u +G+GMmIPLHzHxREzGBHNJdmAPx/i9F4BrLunMTA5amnkPIAou1Z5jJh5VkpTYghdae9C8x49OhgQ= +-----END CERTIFICATE----- + +Entrust Root Certification Authority +==================================== +-----BEGIN CERTIFICATE----- +MIIEkTCCA3mgAwIBAgIERWtQVDANBgkqhkiG9w0BAQUFADCBsDELMAkGA1UEBhMCVVMxFjAUBgNV +BAoTDUVudHJ1c3QsIEluYy4xOTA3BgNVBAsTMHd3dy5lbnRydXN0Lm5ldC9DUFMgaXMgaW5jb3Jw +b3JhdGVkIGJ5IHJlZmVyZW5jZTEfMB0GA1UECxMWKGMpIDIwMDYgRW50cnVzdCwgSW5jLjEtMCsG +A1UEAxMkRW50cnVzdCBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA2MTEyNzIwMjM0 +MloXDTI2MTEyNzIwNTM0MlowgbAxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMu +MTkwNwYDVQQLEzB3d3cuZW50cnVzdC5uZXQvQ1BTIGlzIGluY29ycG9yYXRlZCBieSByZWZlcmVu +Y2UxHzAdBgNVBAsTFihjKSAyMDA2IEVudHJ1c3QsIEluYy4xLTArBgNVBAMTJEVudHJ1c3QgUm9v +dCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB +ALaVtkNC+sZtKm9I35RMOVcF7sN5EUFoNu3s/poBj6E4KPz3EEZmLk0eGrEaTsbRwJWIsMn/MYsz +A9u3g3s+IIRe7bJWKKf44LlAcTfFy0cOlypowCKVYhXbR9n10Cv/gkvJrT7eTNuQgFA/CYqEAOww +Cj0Yzfv9KlmaI5UXLEWeH25DeW0MXJj+SKfFI0dcXv1u5x609mhF0YaDW6KKjbHjKYD+JXGIrb68 +j6xSlkuqUY3kEzEZ6E5Nn9uss2rVvDlUccp6en+Q3X0dgNmBu1kmwhH+5pPi94DkZfs0Nw4pgHBN +rziGLp5/V6+eF67rHMsoIV+2HNjnogQi+dPa2MsCAwEAAaOBsDCBrTAOBgNVHQ8BAf8EBAMCAQYw +DwYDVR0TAQH/BAUwAwEB/zArBgNVHRAEJDAigA8yMDA2MTEyNzIwMjM0MlqBDzIwMjYxMTI3MjA1 +MzQyWjAfBgNVHSMEGDAWgBRokORnpKZTgMeGZqTx90tD+4S9bTAdBgNVHQ4EFgQUaJDkZ6SmU4DH +hmak8fdLQ/uEvW0wHQYJKoZIhvZ9B0EABBAwDhsIVjcuMTo0LjADAgSQMA0GCSqGSIb3DQEBBQUA +A4IBAQCT1DCw1wMgKtD5Y+iRDAUgqV8ZyntyTtSx29CW+1RaGSwMCPeyvIWonX9tO1KzKtvn1ISM +Y/YPyyYBkVBs9F8U4pN0wBOeMDpQ47RgxRzwIkSNcUesyBrJ6ZuaAGAT/3B+XxFNSRuzFVJ7yVTa +v52Vr2ua2J7p8eRDjeIRRDq/r72DQnNSi6q7pynP9WQcCk3RvKqsnyrQ/39/2n3qse0wJcGE2jTS +W3iDVuycNsMm4hH2Z0kdkquM++v/eu6FSqdQgPCnXEqULl8FmTxSQeDNtGPPAUO6nIPcj2A781q0 +tHuu2guQOHXvgR1m0vdXcDazv/wor3ElhVsT/h5/WrQ8 +-----END CERTIFICATE----- + +GeoTrust Global CA +================== +-----BEGIN CERTIFICATE----- +MIIDVDCCAjygAwIBAgIDAjRWMA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNVBAYTAlVTMRYwFAYDVQQK +Ew1HZW9UcnVzdCBJbmMuMRswGQYDVQQDExJHZW9UcnVzdCBHbG9iYWwgQ0EwHhcNMDIwNTIxMDQw +MDAwWhcNMjIwNTIxMDQwMDAwWjBCMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5j +LjEbMBkGA1UEAxMSR2VvVHJ1c3QgR2xvYmFsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB +CgKCAQEA2swYYzD99BcjGlZ+W988bDjkcbd4kdS8odhM+KhDtgPpTSEHCIjaWC9mOSm9BXiLnTjo +BbdqfnGk5sRgprDvgOSJKA+eJdbtg/OtppHHmMlCGDUUna2YRpIuT8rxh0PBFpVXLVDviS2Aelet +8u5fa9IAjbkU+BQVNdnARqN7csiRv8lVK83Qlz6cJmTM386DGXHKTubU1XupGc1V3sjs0l44U+Vc +T4wt/lAjNvxm5suOpDkZALeVAjmRCw7+OC7RHQWa9k0+bw8HHa8sHo9gOeL6NlMTOdReJivbPagU +vTLrGAMoUgRx5aszPeE4uwc2hGKceeoWMPRfwCvocWvk+QIDAQABo1MwUTAPBgNVHRMBAf8EBTAD +AQH/MB0GA1UdDgQWBBTAephojYn7qwVkDBF9qn1luMrMTjAfBgNVHSMEGDAWgBTAephojYn7qwVk +DBF9qn1luMrMTjANBgkqhkiG9w0BAQUFAAOCAQEANeMpauUvXVSOKVCUn5kaFOSPeCpilKInZ57Q +zxpeR+nBsqTP3UEaBU6bS+5Kb1VSsyShNwrrZHYqLizz/Tt1kL/6cdjHPTfStQWVYrmm3ok9Nns4 +d0iXrKYgjy6myQzCsplFAMfOEVEiIuCl6rYVSAlk6l5PdPcFPseKUgzbFbS9bZvlxrFUaKnjaZC2 +mqUPuLk/IH2uSrW4nOQdtqvmlKXBx4Ot2/Unhw4EbNX/3aBd7YdStysVAq45pmp06drE57xNNB6p +XE0zX5IJL4hmXXeXxx12E6nV5fEWCRE11azbJHFwLJhWC9kXtNHjUStedejV0NxPNO3CBWaAocvm +Mw== +-----END CERTIFICATE----- + +GeoTrust Universal CA +===================== +-----BEGIN CERTIFICATE----- +MIIFaDCCA1CgAwIBAgIBATANBgkqhkiG9w0BAQUFADBFMQswCQYDVQQGEwJVUzEWMBQGA1UEChMN +R2VvVHJ1c3QgSW5jLjEeMBwGA1UEAxMVR2VvVHJ1c3QgVW5pdmVyc2FsIENBMB4XDTA0MDMwNDA1 +MDAwMFoXDTI5MDMwNDA1MDAwMFowRTELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IElu +Yy4xHjAcBgNVBAMTFUdlb1RydXN0IFVuaXZlcnNhbCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIP +ADCCAgoCggIBAKYVVaCjxuAfjJ0hUNfBvitbtaSeodlyWL0AG0y/YckUHUWCq8YdgNY96xCcOq9t +JPi8cQGeBvV8Xx7BDlXKg5pZMK4ZyzBIle0iN430SppyZj6tlcDgFgDgEB8rMQ7XlFTTQjOgNB0e +RXbdT8oYN+yFFXoZCPzVx5zw8qkuEKmS5j1YPakWaDwvdSEYfyh3peFhF7em6fgemdtzbvQKoiFs +7tqqhZJmr/Z6a4LauiIINQ/PQvE1+mrufislzDoR5G2vc7J2Ha3QsnhnGqQ5HFELZ1aD/ThdDc7d +8Lsrlh/eezJS/R27tQahsiFepdaVaH/wmZ7cRQg+59IJDTWU3YBOU5fXtQlEIGQWFwMCTFMNaN7V +qnJNk22CDtucvc+081xdVHppCZbW2xHBjXWotM85yM48vCR85mLK4b19p71XZQvk/iXttmkQ3Cga +Rr0BHdCXteGYO8A3ZNY9lO4L4fUorgtWv3GLIylBjobFS1J72HGrH4oVpjuDWtdYAVHGTEHZf9hB +Z3KiKN9gg6meyHv8U3NyWfWTehd2Ds735VzZC1U0oqpbtWpU5xPKV+yXbfReBi9Fi1jUIxaS5BZu +KGNZMN9QAZxjiRqf2xeUgnA3wySemkfWWspOqGmJch+RbNt+nhutxx9z3SxPGWX9f5NAEC7S8O08 +ni4oPmkmM8V7AgMBAAGjYzBhMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFNq7LqqwDLiIJlF0 +XG0D08DYj3rWMB8GA1UdIwQYMBaAFNq7LqqwDLiIJlF0XG0D08DYj3rWMA4GA1UdDwEB/wQEAwIB +hjANBgkqhkiG9w0BAQUFAAOCAgEAMXjmx7XfuJRAyXHEqDXsRh3ChfMoWIawC/yOsjmPRFWrZIRc +aanQmjg8+uUfNeVE44B5lGiku8SfPeE0zTBGi1QrlaXv9z+ZhP015s8xxtxqv6fXIwjhmF7DWgh2 +qaavdy+3YL1ERmrvl/9zlcGO6JP7/TG37FcREUWbMPEaiDnBTzynANXH/KttgCJwpQzgXQQpAvvL +oJHRfNbDflDVnVi+QTjruXU8FdmbyUqDWcDaU/0zuzYYm4UPFd3uLax2k7nZAY1IEKj79TiG8dsK +xr2EoyNB3tZ3b4XUhRxQ4K5RirqNPnbiucon8l+f725ZDQbYKxek0nxru18UGkiPGkzns0ccjkxF +KyDuSN/n3QmOGKjaQI2SJhFTYXNd673nxE0pN2HrrDktZy4W1vUAg4WhzH92xH3kt0tm7wNFYGm2 +DFKWkoRepqO1pD4r2czYG0eq8kTaT/kD6PAUyz/zg97QwVTjt+gKN02LIFkDMBmhLMi9ER/frslK +xfMnZmaGrGiR/9nmUxwPi1xpZQomyB40w11Re9epnAahNt3ViZS82eQtDF4JbAiXfKM9fJP/P6EU +p8+1Xevb2xzEdt+Iub1FBZUbrvxGakyvSOPOrg/SfuvmbJxPgWp6ZKy7PtXny3YuxadIwVyQD8vI +P/rmMuGNG2+k5o7Y+SlIis5z/iw= +-----END CERTIFICATE----- + +GeoTrust Universal CA 2 +======================= +-----BEGIN CERTIFICATE----- +MIIFbDCCA1SgAwIBAgIBATANBgkqhkiG9w0BAQUFADBHMQswCQYDVQQGEwJVUzEWMBQGA1UEChMN +R2VvVHJ1c3QgSW5jLjEgMB4GA1UEAxMXR2VvVHJ1c3QgVW5pdmVyc2FsIENBIDIwHhcNMDQwMzA0 +MDUwMDAwWhcNMjkwMzA0MDUwMDAwWjBHMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3Qg +SW5jLjEgMB4GA1UEAxMXR2VvVHJ1c3QgVW5pdmVyc2FsIENBIDIwggIiMA0GCSqGSIb3DQEBAQUA +A4ICDwAwggIKAoICAQCzVFLByT7y2dyxUxpZKeexw0Uo5dfR7cXFS6GqdHtXr0om/Nj1XqduGdt0 +DE81WzILAePb63p3NeqqWuDW6KFXlPCQo3RWlEQwAx5cTiuFJnSCegx2oG9NzkEtoBUGFF+3Qs17 +j1hhNNwqCPkuwwGmIkQcTAeC5lvO0Ep8BNMZcyfwqph/Lq9O64ceJHdqXbboW0W63MOhBW9Wjo8Q +JqVJwy7XQYci4E+GymC16qFjwAGXEHm9ADwSbSsVsaxLse4YuU6W3Nx2/zu+z18DwPw76L5GG//a +QMJS9/7jOvdqdzXQ2o3rXhhqMcceujwbKNZrVMaqW9eiLBsZzKIC9ptZvTdrhrVtgrrY6slWvKk2 +WP0+GfPtDCapkzj4T8FdIgbQl+rhrcZV4IErKIM6+vR7IVEAvlI4zs1meaj0gVbi0IMJR1FbUGrP +20gaXT73y/Zl92zxlfgCOzJWgjl6W70viRu/obTo/3+NjN8D8WBOWBFM66M/ECuDmgFz2ZRthAAn +ZqzwcEAJQpKtT5MNYQlRJNiS1QuUYbKHsu3/mjX/hVTK7URDrBs8FmtISgocQIgfksILAAX/8sgC +SqSqqcyZlpwvWOB94b67B9xfBHJcMTTD7F8t4D1kkCLm0ey4Lt1ZrtmhN79UNdxzMk+MBB4zsslG +8dhcyFVQyWi9qLo2CQIDAQABo2MwYTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBR281Xh+qQ2 ++/CfXGJx7Tz0RzgQKzAfBgNVHSMEGDAWgBR281Xh+qQ2+/CfXGJx7Tz0RzgQKzAOBgNVHQ8BAf8E +BAMCAYYwDQYJKoZIhvcNAQEFBQADggIBAGbBxiPz2eAubl/oz66wsCVNK/g7WJtAJDday6sWSf+z +dXkzoS9tcBc0kf5nfo/sm+VegqlVHy/c1FEHEv6sFj4sNcZj/NwQ6w2jqtB8zNHQL1EuxBRa3ugZ +4T7GzKQp5y6EqgYweHZUcyiYWTjgAA1i00J9IZ+uPTqM1fp3DRgrFg5fNuH8KrUwJM/gYwx7WBr+ +mbpCErGR9Hxo4sjoryzqyX6uuyo9DRXcNJW2GHSoag/HtPQTxORb7QrSpJdMKu0vbBKJPfEncKpq +A1Ihn0CoZ1Dy81of398j9tx4TuaYT1U6U+Pv8vSfx3zYWK8pIpe44L2RLrB27FcRz+8pRPPphXpg +Y+RdM4kX2TGq2tbzGDVyz4crL2MjhF2EjD9XoIj8mZEoJmmZ1I+XRL6O1UixpCgp8RW04eWe3fiP +pm8m1wk8OhwRDqZsN/etRIcsKMfYdIKz0G9KV7s1KSegi+ghp4dkNl3M2Basx7InQJJVOCiNUW7d +FGdTbHFcJoRNdVq2fmBWqU2t+5sel/MN2dKXVHfaPRK34B7vCAas+YWH6aLcr34YEoP9VhdBLtUp +gn2Z9DH2canPLAEnpQW5qrJITirvn5NSUZU8UnOOVkwXQMAJKOSLakhT2+zNVVXxxvjpoixMptEm +X36vWkzaH6byHCx+rgIW0lbQL1dTR+iS +-----END CERTIFICATE----- + +Comodo AAA Services root +======================== +-----BEGIN CERTIFICATE----- +MIIEMjCCAxqgAwIBAgIBATANBgkqhkiG9w0BAQUFADB7MQswCQYDVQQGEwJHQjEbMBkGA1UECAwS +R3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRowGAYDVQQKDBFDb21vZG8gQ0Eg +TGltaXRlZDEhMB8GA1UEAwwYQUFBIENlcnRpZmljYXRlIFNlcnZpY2VzMB4XDTA0MDEwMTAwMDAw +MFoXDTI4MTIzMTIzNTk1OVowezELMAkGA1UEBhMCR0IxGzAZBgNVBAgMEkdyZWF0ZXIgTWFuY2hl +c3RlcjEQMA4GA1UEBwwHU2FsZm9yZDEaMBgGA1UECgwRQ29tb2RvIENBIExpbWl0ZWQxITAfBgNV +BAMMGEFBQSBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +ggEBAL5AnfRu4ep2hxxNRUSOvkbIgwadwSr+GB+O5AL686tdUIoWMQuaBtDFcCLNSS1UY8y2bmhG +C1Pqy0wkwLxyTurxFa70VJoSCsN6sjNg4tqJVfMiWPPe3M/vg4aijJRPn2jymJBGhCfHdr/jzDUs +i14HZGWCwEiwqJH5YZ92IFCokcdmtet4YgNW8IoaE+oxox6gmf049vYnMlhvB/VruPsUK6+3qszW +Y19zjNoFmag4qMsXeDZRrOme9Hg6jc8P2ULimAyrL58OAd7vn5lJ8S3frHRNG5i1R8XlKdH5kBjH +Ypy+g8cmez6KJcfA3Z3mNWgQIJ2P2N7Sw4ScDV7oL8kCAwEAAaOBwDCBvTAdBgNVHQ4EFgQUoBEK +Iz6W8Qfs4q8p74Klf9AwpLQwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wewYDVR0f +BHQwcjA4oDagNIYyaHR0cDovL2NybC5jb21vZG9jYS5jb20vQUFBQ2VydGlmaWNhdGVTZXJ2aWNl +cy5jcmwwNqA0oDKGMGh0dHA6Ly9jcmwuY29tb2RvLm5ldC9BQUFDZXJ0aWZpY2F0ZVNlcnZpY2Vz +LmNybDANBgkqhkiG9w0BAQUFAAOCAQEACFb8AvCb6P+k+tZ7xkSAzk/ExfYAWMymtrwUSWgEdujm +7l3sAg9g1o1QGE8mTgHj5rCl7r+8dFRBv/38ErjHT1r0iWAFf2C3BUrz9vHCv8S5dIa2LX1rzNLz +Rt0vxuBqw8M0Ayx9lt1awg6nCpnBBYurDC/zXDrPbDdVCYfeU0BsWO/8tqtlbgT2G9w84FoVxp7Z +8VlIMCFlA2zs6SFz7JsDoeA3raAVGI/6ugLOpyypEBMs1OUIJqsil2D4kF501KKaU73yqWjgom7C +12yxow+ev+to51byrvLjKzg6CYG1a4XXvi3tPxq3smPi9WIsgtRqAEFQ8TmDn5XpNpaYbg== +-----END CERTIFICATE----- + +QuoVadis Root CA +================ +-----BEGIN CERTIFICATE----- +MIIF0DCCBLigAwIBAgIEOrZQizANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJCTTEZMBcGA1UE +ChMQUXVvVmFkaXMgTGltaXRlZDElMCMGA1UECxMcUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0 +eTEuMCwGA1UEAxMlUXVvVmFkaXMgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wMTAz +MTkxODMzMzNaFw0yMTAzMTcxODMzMzNaMH8xCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRp +cyBMaW1pdGVkMSUwIwYDVQQLExxSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MS4wLAYDVQQD +EyVRdW9WYWRpcyBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEF +AAOCAQ8AMIIBCgKCAQEAv2G1lVO6V/z68mcLOhrfEYBklbTRvM16z/Ypli4kVEAkOPcahdxYTMuk +J0KX0J+DisPkBgNbAKVRHnAEdOLB1Dqr1607BxgFjv2DrOpm2RgbaIr1VxqYuvXtdj182d6UajtL +F8HVj71lODqV0D1VNk7feVcxKh7YWWVJWCCYfqtffp/p1k3sg3Spx2zY7ilKhSoGFPlU5tPaZQeL +YzcS19Dsw3sgQUSj7cugF+FxZc4dZjH3dgEZyH0DWLaVSR2mEiboxgx24ONmy+pdpibu5cxfvWen +AScOospUxbF6lR1xHkopigPcakXBpBlebzbNw6Kwt/5cOOJSvPhEQ+aQuwIDAQABo4ICUjCCAk4w +PQYIKwYBBQUHAQEEMTAvMC0GCCsGAQUFBzABhiFodHRwczovL29jc3AucXVvdmFkaXNvZmZzaG9y +ZS5jb20wDwYDVR0TAQH/BAUwAwEB/zCCARoGA1UdIASCAREwggENMIIBCQYJKwYBBAG+WAABMIH7 +MIHUBggrBgEFBQcCAjCBxxqBxFJlbGlhbmNlIG9uIHRoZSBRdW9WYWRpcyBSb290IENlcnRpZmlj +YXRlIGJ5IGFueSBwYXJ0eSBhc3N1bWVzIGFjY2VwdGFuY2Ugb2YgdGhlIHRoZW4gYXBwbGljYWJs +ZSBzdGFuZGFyZCB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB1c2UsIGNlcnRpZmljYXRpb24gcHJh +Y3RpY2VzLCBhbmQgdGhlIFF1b1ZhZGlzIENlcnRpZmljYXRlIFBvbGljeS4wIgYIKwYBBQUHAgEW +Fmh0dHA6Ly93d3cucXVvdmFkaXMuYm0wHQYDVR0OBBYEFItLbe3TKbkGGew5Oanwl4Rqy+/fMIGu +BgNVHSMEgaYwgaOAFItLbe3TKbkGGew5Oanwl4Rqy+/foYGEpIGBMH8xCzAJBgNVBAYTAkJNMRkw +FwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMSUwIwYDVQQLExxSb290IENlcnRpZmljYXRpb24gQXV0 +aG9yaXR5MS4wLAYDVQQDEyVRdW9WYWRpcyBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggQ6 +tlCLMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOCAQEAitQUtf70mpKnGdSkfnIYj9lo +fFIk3WdvOXrEql494liwTXCYhGHoG+NpGA7O+0dQoE7/8CQfvbLO9Sf87C9TqnN7Az10buYWnuul +LsS/VidQK2K6vkscPFVcQR0kvoIgR13VRH56FmjffU1RcHhXHTMe/QKZnAzNCgVPx7uOpHX6Sm2x +gI4JVrmcGmD+XcHXetwReNDWXcG31a0ymQM6isxUJTkxgXsTIlG6Rmyhu576BGxJJnSP0nPrzDCi +5upZIof4l/UO/erMkqQWxFIY6iHOsfHmhIHluqmGKPJDWl0Snawe2ajlCmqnf6CHKc/yiU3U7MXi +5nrQNiOKSnQ2+Q== +-----END CERTIFICATE----- + +QuoVadis Root CA 2 +================== +-----BEGIN CERTIFICATE----- +MIIFtzCCA5+gAwIBAgICBQkwDQYJKoZIhvcNAQEFBQAwRTELMAkGA1UEBhMCQk0xGTAXBgNVBAoT +EFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMTElF1b1ZhZGlzIFJvb3QgQ0EgMjAeFw0wNjExMjQx +ODI3MDBaFw0zMTExMjQxODIzMzNaMEUxCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBM +aW1pdGVkMRswGQYDVQQDExJRdW9WYWRpcyBSb290IENBIDIwggIiMA0GCSqGSIb3DQEBAQUAA4IC +DwAwggIKAoICAQCaGMpLlA0ALa8DKYrwD4HIrkwZhR0In6spRIXzL4GtMh6QRr+jhiYaHv5+HBg6 +XJxgFyo6dIMzMH1hVBHL7avg5tKifvVrbxi3Cgst/ek+7wrGsxDp3MJGF/hd/aTa/55JWpzmM+Yk +lvc/ulsrHHo1wtZn/qtmUIttKGAr79dgw8eTvI02kfN/+NsRE8Scd3bBrrcCaoF6qUWD4gXmuVbB +lDePSHFjIuwXZQeVikvfj8ZaCuWw419eaxGrDPmF60Tp+ARz8un+XJiM9XOva7R+zdRcAitMOeGy +lZUtQofX1bOQQ7dsE/He3fbE+Ik/0XX1ksOR1YqI0JDs3G3eicJlcZaLDQP9nL9bFqyS2+r+eXyt +66/3FsvbzSUr5R/7mp/iUcw6UwxI5g69ybR2BlLmEROFcmMDBOAENisgGQLodKcftslWZvB1Jdxn +wQ5hYIizPtGo/KPaHbDRsSNU30R2be1B2MGyIrZTHN81Hdyhdyox5C315eXbyOD/5YDXC2Og/zOh +D7osFRXql7PSorW+8oyWHhqPHWykYTe5hnMz15eWniN9gqRMgeKh0bpnX5UHoycR7hYQe7xFSkyy +BNKr79X9DFHOUGoIMfmR2gyPZFwDwzqLID9ujWc9Otb+fVuIyV77zGHcizN300QyNQliBJIWENie +J0f7OyHj+OsdWwIDAQABo4GwMIGtMA8GA1UdEwEB/wQFMAMBAf8wCwYDVR0PBAQDAgEGMB0GA1Ud +DgQWBBQahGK8SEwzJQTU7tD2A8QZRtGUazBuBgNVHSMEZzBlgBQahGK8SEwzJQTU7tD2A8QZRtGU +a6FJpEcwRTELMAkGA1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMT +ElF1b1ZhZGlzIFJvb3QgQ0EgMoICBQkwDQYJKoZIhvcNAQEFBQADggIBAD4KFk2fBluornFdLwUv +Z+YTRYPENvbzwCYMDbVHZF34tHLJRqUDGCdViXh9duqWNIAXINzng/iN/Ae42l9NLmeyhP3ZRPx3 +UIHmfLTJDQtyU/h2BwdBR5YM++CCJpNVjP4iH2BlfF/nJrP3MpCYUNQ3cVX2kiF495V5+vgtJodm +VjB3pjd4M1IQWK4/YY7yarHvGH5KWWPKjaJW1acvvFYfzznB4vsKqBUsfU16Y8Zsl0Q80m/DShcK ++JDSV6IZUaUtl0HaB0+pUNqQjZRG4T7wlP0QADj1O+hA4bRuVhogzG9Yje0uRY/W6ZM/57Es3zrW +IozchLsib9D45MY56QSIPMO661V6bYCZJPVsAfv4l7CUW+v90m/xd2gNNWQjrLhVoQPRTUIZ3Ph1 +WVaj+ahJefivDrkRoHy3au000LYmYjgahwz46P0u05B/B5EqHdZ+XIWDmbA4CD/pXvk1B+TJYm5X +f6dQlfe6yJvmjqIBxdZmv3lh8zwc4bmCXF2gw+nYSL0ZohEUGW6yhhtoPkg3Goi3XZZenMfvJ2II +4pEZXNLxId26F0KCl3GBUzGpn/Z9Yr9y4aOTHcyKJloJONDO1w2AFrR4pTqHTI2KpdVGl/IsELm8 +VCLAAVBpQ570su9t+Oza8eOx79+Rj1QqCyXBJhnEUhAFZdWCEOrCMc0u +-----END CERTIFICATE----- + +QuoVadis Root CA 3 +================== +-----BEGIN CERTIFICATE----- +MIIGnTCCBIWgAwIBAgICBcYwDQYJKoZIhvcNAQEFBQAwRTELMAkGA1UEBhMCQk0xGTAXBgNVBAoT +EFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMTElF1b1ZhZGlzIFJvb3QgQ0EgMzAeFw0wNjExMjQx +OTExMjNaFw0zMTExMjQxOTA2NDRaMEUxCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBM +aW1pdGVkMRswGQYDVQQDExJRdW9WYWRpcyBSb290IENBIDMwggIiMA0GCSqGSIb3DQEBAQUAA4IC +DwAwggIKAoICAQDMV0IWVJzmmNPTTe7+7cefQzlKZbPoFog02w1ZkXTPkrgEQK0CSzGrvI2RaNgg +DhoB4hp7Thdd4oq3P5kazethq8Jlph+3t723j/z9cI8LoGe+AaJZz3HmDyl2/7FWeUUrH556VOij +KTVopAFPD6QuN+8bv+OPEKhyq1hX51SGyMnzW9os2l2ObjyjPtr7guXd8lyyBTNvijbO0BNO/79K +DDRMpsMhvVAEVeuxu537RR5kFd5VAYwCdrXLoT9CabwvvWhDFlaJKjdhkf2mrk7AyxRllDdLkgbv +BNDInIjbC3uBr7E9KsRlOni27tyAsdLTmZw67mtaa7ONt9XOnMK+pUsvFrGeaDsGb659n/je7Mwp +p5ijJUMv7/FfJuGITfhebtfZFG4ZM2mnO4SJk8RTVROhUXhA+LjJou57ulJCg54U7QVSWllWp5f8 +nT8KKdjcT5EOE7zelaTfi5m+rJsziO+1ga8bxiJTyPbH7pcUsMV8eFLI8M5ud2CEpukqdiDtWAEX +MJPpGovgc2PZapKUSU60rUqFxKMiMPwJ7Wgic6aIDFUhWMXhOp8q3crhkODZc6tsgLjoC2SToJyM +Gf+z0gzskSaHirOi4XCPLArlzW1oUevaPwV/izLmE1xr/l9A4iLItLRkT9a6fUg+qGkM17uGcclz +uD87nSVL2v9A6wIDAQABo4IBlTCCAZEwDwYDVR0TAQH/BAUwAwEB/zCB4QYDVR0gBIHZMIHWMIHT +BgkrBgEEAb5YAAMwgcUwgZMGCCsGAQUFBwICMIGGGoGDQW55IHVzZSBvZiB0aGlzIENlcnRpZmlj +YXRlIGNvbnN0aXR1dGVzIGFjY2VwdGFuY2Ugb2YgdGhlIFF1b1ZhZGlzIFJvb3QgQ0EgMyBDZXJ0 +aWZpY2F0ZSBQb2xpY3kgLyBDZXJ0aWZpY2F0aW9uIFByYWN0aWNlIFN0YXRlbWVudC4wLQYIKwYB +BQUHAgEWIWh0dHA6Ly93d3cucXVvdmFkaXNnbG9iYWwuY29tL2NwczALBgNVHQ8EBAMCAQYwHQYD +VR0OBBYEFPLAE+CCQz777i9nMpY1XNu4ywLQMG4GA1UdIwRnMGWAFPLAE+CCQz777i9nMpY1XNu4 +ywLQoUmkRzBFMQswCQYDVQQGEwJCTTEZMBcGA1UEChMQUXVvVmFkaXMgTGltaXRlZDEbMBkGA1UE +AxMSUXVvVmFkaXMgUm9vdCBDQSAzggIFxjANBgkqhkiG9w0BAQUFAAOCAgEAT62gLEz6wPJv92ZV +qyM07ucp2sNbtrCD2dDQ4iH782CnO11gUyeim/YIIirnv6By5ZwkajGxkHon24QRiSemd1o417+s +hvzuXYO8BsbRd2sPbSQvS3pspweWyuOEn62Iix2rFo1bZhfZFvSLgNLd+LJ2w/w4E6oM3kJpK27z +POuAJ9v1pkQNn1pVWQvVDVJIxa6f8i+AxeoyUDUSly7B4f/xI4hROJ/yZlZ25w9Rl6VSDE1JUZU2 +Pb+iSwwQHYaZTKrzchGT5Or2m9qoXadNt54CrnMAyNojA+j56hl0YgCUyyIgvpSnWbWCar6ZeXqp +8kokUvd0/bpO5qgdAm6xDYBEwa7TIzdfu4V8K5Iu6H6li92Z4b8nby1dqnuH/grdS/yO9SbkbnBC +bjPsMZ57k8HkyWkaPcBrTiJt7qtYTcbQQcEr6k8Sh17rRdhs9ZgC06DYVYoGmRmioHfRMJ6szHXu +g/WwYjnPbFfiTNKRCw51KBuav/0aQ/HKd/s7j2G4aSgWQgRecCocIdiP4b0jWy10QJLZYxkNc91p +vGJHvOB0K7Lrfb5BG7XARsWhIstfTsEokt4YutUqKLsRixeTmJlglFwjz1onl14LBQaTNx47aTbr +qZ5hHY8y2o4M1nQ+ewkk2gF3R8Q7zTSMmfXK4SVhM7JZG+Ju1zdXtg2pEto= +-----END CERTIFICATE----- + +Security Communication Root CA +============================== +-----BEGIN CERTIFICATE----- +MIIDWjCCAkKgAwIBAgIBADANBgkqhkiG9w0BAQUFADBQMQswCQYDVQQGEwJKUDEYMBYGA1UEChMP +U0VDT00gVHJ1c3QubmV0MScwJQYDVQQLEx5TZWN1cml0eSBDb21tdW5pY2F0aW9uIFJvb3RDQTEw +HhcNMDMwOTMwMDQyMDQ5WhcNMjMwOTMwMDQyMDQ5WjBQMQswCQYDVQQGEwJKUDEYMBYGA1UEChMP +U0VDT00gVHJ1c3QubmV0MScwJQYDVQQLEx5TZWN1cml0eSBDb21tdW5pY2F0aW9uIFJvb3RDQTEw +ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCzs/5/022x7xZ8V6UMbXaKL0u/ZPtM7orw +8yl89f/uKuDp6bpbZCKamm8sOiZpUQWZJtzVHGpxxpp9Hp3dfGzGjGdnSj74cbAZJ6kJDKaVv0uM +DPpVmDvY6CKhS3E4eayXkmmziX7qIWgGmBSWh9JhNrxtJ1aeV+7AwFb9Ms+k2Y7CI9eNqPPYJayX +5HA49LY6tJ07lyZDo6G8SVlyTCMwhwFY9k6+HGhWZq/NQV3Is00qVUarH9oe4kA92819uZKAnDfd +DJZkndwi92SL32HeFZRSFaB9UslLqCHJxrHty8OVYNEP8Ktw+N/LTX7s1vqr2b1/VPKl6Xn62dZ2 +JChzAgMBAAGjPzA9MB0GA1UdDgQWBBSgc0mZaNyFW2XjmygvV5+9M7wHSDALBgNVHQ8EBAMCAQYw +DwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAaECpqLvkT115swW1F7NgE+vGkl3g +0dNq/vu+m22/xwVtWSDEHPC32oRYAmP6SBbvT6UL90qY8j+eG61Ha2POCEfrUj94nK9NrvjVT8+a +mCoQQTlSxN3Zmw7vkwGusi7KaEIkQmywszo+zenaSMQVy+n5Bw+SUEmK3TGXX8npN6o7WWWXlDLJ +s58+OmJYxUmtYg5xpTKqL8aJdkNAExNnPaJUJRDL8Try2frbSVa7pv6nQTXD4IhhyYjH3zYQIphZ +6rBK+1YWc26sTfcioU+tHXotRSflMMFe8toTyyVCUZVHA4xsIcx0Qu1T/zOLjw9XARYvz6buyXAi +FL39vmwLAw== +-----END CERTIFICATE----- + +Sonera Class 2 Root CA +====================== +-----BEGIN CERTIFICATE----- +MIIDIDCCAgigAwIBAgIBHTANBgkqhkiG9w0BAQUFADA5MQswCQYDVQQGEwJGSTEPMA0GA1UEChMG +U29uZXJhMRkwFwYDVQQDExBTb25lcmEgQ2xhc3MyIENBMB4XDTAxMDQwNjA3Mjk0MFoXDTIxMDQw +NjA3Mjk0MFowOTELMAkGA1UEBhMCRkkxDzANBgNVBAoTBlNvbmVyYTEZMBcGA1UEAxMQU29uZXJh +IENsYXNzMiBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJAXSjWdyvANlsdE+hY3 +/Ei9vX+ALTU74W+oZ6m/AxxNjG8yR9VBaKQTBME1DJqEQ/xcHf+Js+gXGM2RX/uJ4+q/Tl18GybT +dXnt5oTjV+WtKcT0OijnpXuENmmz/V52vaMtmdOQTiMofRhj8VQ7Jp12W5dCsv+u8E7s3TmVToMG +f+dJQMjFAbJUWmYdPfz56TwKnoG4cPABi+QjVHzIrviQHgCWctRUz2EjvOr7nQKV0ba5cTppCD8P +tOFCx4j1P5iop7oc4HFx71hXgVB6XGt0Rg6DA5jDjqhu8nYybieDwnPz3BjotJPqdURrBGAgcVeH +nfO+oJAjPYok4doh28MCAwEAAaMzMDEwDwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQISqCqWITT +XjwwCwYDVR0PBAQDAgEGMA0GCSqGSIb3DQEBBQUAA4IBAQBazof5FnIVV0sd2ZvnoiYw7JNn39Yt +0jSv9zilzqsWuasvfDXLrNAPtEwr/IDva4yRXzZ299uzGxnq9LIR/WFxRL8oszodv7ND6J+/3DEI +cbCdjdY0RzKQxmUk96BKfARzjzlvF4xytb1LyHr4e4PDKE6cCepnP7JnBBvDFNr450kkkdAdavph +Oe9r5yF1BgfYErQhIHBCcYHaPJo2vqZbDWpsmh+Re/n570K6Tk6ezAyNlNzZRZxe7EJQY670XcSx +EtzKO6gunRRaBXW37Ndj4ro1tgQIkejanZz2ZrUYrAqmVCY0M9IbwdR/GjqOC6oybtv8TyWf2TLH +llpwrN9M +-----END CERTIFICATE----- + +XRamp Global CA Root +==================== +-----BEGIN CERTIFICATE----- +MIIEMDCCAxigAwIBAgIQUJRs7Bjq1ZxN1ZfvdY+grTANBgkqhkiG9w0BAQUFADCBgjELMAkGA1UE +BhMCVVMxHjAcBgNVBAsTFXd3dy54cmFtcHNlY3VyaXR5LmNvbTEkMCIGA1UEChMbWFJhbXAgU2Vj +dXJpdHkgU2VydmljZXMgSW5jMS0wKwYDVQQDEyRYUmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBB +dXRob3JpdHkwHhcNMDQxMTAxMTcxNDA0WhcNMzUwMTAxMDUzNzE5WjCBgjELMAkGA1UEBhMCVVMx +HjAcBgNVBAsTFXd3dy54cmFtcHNlY3VyaXR5LmNvbTEkMCIGA1UEChMbWFJhbXAgU2VjdXJpdHkg +U2VydmljZXMgSW5jMS0wKwYDVQQDEyRYUmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBBdXRob3Jp +dHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCYJB69FbS638eMpSe2OAtp87ZOqCwu +IR1cRN8hXX4jdP5efrRKt6atH67gBhbim1vZZ3RrXYCPKZ2GG9mcDZhtdhAoWORlsH9KmHmf4MMx +foArtYzAQDsRhtDLooY2YKTVMIJt2W7QDxIEM5dfT2Fa8OT5kavnHTu86M/0ay00fOJIYRyO82FE +zG+gSqmUsE3a56k0enI4qEHMPJQRfevIpoy3hsvKMzvZPTeL+3o+hiznc9cKV6xkmxnr9A8ECIqs +AxcZZPRaJSKNNCyy9mgdEm3Tih4U2sSPpuIjhdV6Db1q4Ons7Be7QhtnqiXtRYMh/MHJfNViPvry +xS3T/dRlAgMBAAGjgZ8wgZwwEwYJKwYBBAGCNxQCBAYeBABDAEEwCwYDVR0PBAQDAgGGMA8GA1Ud +EwEB/wQFMAMBAf8wHQYDVR0OBBYEFMZPoj0GY4QJnM5i5ASsjVy16bYbMDYGA1UdHwQvMC0wK6Ap +oCeGJWh0dHA6Ly9jcmwueHJhbXBzZWN1cml0eS5jb20vWEdDQS5jcmwwEAYJKwYBBAGCNxUBBAMC +AQEwDQYJKoZIhvcNAQEFBQADggEBAJEVOQMBG2f7Shz5CmBbodpNl2L5JFMn14JkTpAuw0kbK5rc +/Kh4ZzXxHfARvbdI4xD2Dd8/0sm2qlWkSLoC295ZLhVbO50WfUfXN+pfTXYSNrsf16GBBEYgoyxt +qZ4Bfj8pzgCT3/3JknOJiWSe5yvkHJEs0rnOfc5vMZnT5r7SHpDwCRR5XCOrTdLaIR9NmXmd4c8n +nxCbHIgNsIpkQTG4DmyQJKSbXHGPurt+HBvbaoAPIbzp26a3QPSyi6mx5O+aGtA9aZnuqCij4Tyz +8LIRnM98QObd50N9otg6tamN8jSZxNQQ4Qb9CYQQO+7ETPTsJ3xCwnR8gooJybQDJbw= +-----END CERTIFICATE----- + +Go Daddy Class 2 CA +=================== +-----BEGIN CERTIFICATE----- +MIIEADCCAuigAwIBAgIBADANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEhMB8GA1UEChMY +VGhlIEdvIERhZGR5IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBEYWRkeSBDbGFzcyAyIENlcnRp +ZmljYXRpb24gQXV0aG9yaXR5MB4XDTA0MDYyOTE3MDYyMFoXDTM0MDYyOTE3MDYyMFowYzELMAkG +A1UEBhMCVVMxITAfBgNVBAoTGFRoZSBHbyBEYWRkeSBHcm91cCwgSW5jLjExMC8GA1UECxMoR28g +RGFkZHkgQ2xhc3MgMiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASAwDQYJKoZIhvcNAQEBBQAD +ggENADCCAQgCggEBAN6d1+pXGEmhW+vXX0iG6r7d/+TvZxz0ZWizV3GgXne77ZtJ6XCAPVYYYwhv +2vLM0D9/AlQiVBDYsoHUwHU9S3/Hd8M+eKsaA7Ugay9qK7HFiH7Eux6wwdhFJ2+qN1j3hybX2C32 +qRe3H3I2TqYXP2WYktsqbl2i/ojgC95/5Y0V4evLOtXiEqITLdiOr18SPaAIBQi2XKVlOARFmR6j +YGB0xUGlcmIbYsUfb18aQr4CUWWoriMYavx4A6lNf4DD+qta/KFApMoZFv6yyO9ecw3ud72a9nmY +vLEHZ6IVDd2gWMZEewo+YihfukEHU1jPEX44dMX4/7VpkI+EdOqXG68CAQOjgcAwgb0wHQYDVR0O +BBYEFNLEsNKR1EwRcbNhyz2h/t2oatTjMIGNBgNVHSMEgYUwgYKAFNLEsNKR1EwRcbNhyz2h/t2o +atTjoWekZTBjMQswCQYDVQQGEwJVUzEhMB8GA1UEChMYVGhlIEdvIERhZGR5IEdyb3VwLCBJbmMu +MTEwLwYDVQQLEyhHbyBEYWRkeSBDbGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggEAMAwG +A1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBADJL87LKPpH8EsahB4yOd6AzBhRckB4Y9wim +PQoZ+YeAEW5p5JYXMP80kWNyOO7MHAGjHZQopDH2esRU1/blMVgDoszOYtuURXO1v0XJJLXVggKt +I3lpjbi2Tc7PTMozI+gciKqdi0FuFskg5YmezTvacPd+mSYgFFQlq25zheabIZ0KbIIOqPjCDPoQ +HmyW74cNxA9hi63ugyuV+I6ShHI56yDqg+2DzZduCLzrTia2cyvk0/ZM/iZx4mERdEr/VxqHD3VI +Ls9RaRegAhJhldXRQLIQTO7ErBBDpqWeCtWVYpoNz4iCxTIM5CufReYNnyicsbkqWletNw+vHX/b +vZ8= +-----END CERTIFICATE----- + +Starfield Class 2 CA +==================== +-----BEGIN CERTIFICATE----- +MIIEDzCCAvegAwIBAgIBADANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJVUzElMCMGA1UEChMc +U3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAGA1UECxMpU3RhcmZpZWxkIENsYXNzIDIg +Q2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDQwNjI5MTczOTE2WhcNMzQwNjI5MTczOTE2WjBo +MQswCQYDVQQGEwJVUzElMCMGA1UEChMcU3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAG +A1UECxMpU3RhcmZpZWxkIENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggEgMA0GCSqG +SIb3DQEBAQUAA4IBDQAwggEIAoIBAQC3Msj+6XGmBIWtDBFk385N78gDGIc/oav7PKaf8MOh2tTY +bitTkPskpD6E8J7oX+zlJ0T1KKY/e97gKvDIr1MvnsoFAZMej2YcOadN+lq2cwQlZut3f+dZxkqZ +JRRU6ybH838Z1TBwj6+wRir/resp7defqgSHo9T5iaU0X9tDkYI22WY8sbi5gv2cOj4QyDvvBmVm +epsZGD3/cVE8MC5fvj13c7JdBmzDI1aaK4UmkhynArPkPw2vCHmCuDY96pzTNbO8acr1zJ3o/WSN +F4Azbl5KXZnJHoe0nRrA1W4TNSNe35tfPe/W93bC6j67eA0cQmdrBNj41tpvi/JEoAGrAgEDo4HF +MIHCMB0GA1UdDgQWBBS/X7fRzt0fhvRbVazc1xDCDqmI5zCBkgYDVR0jBIGKMIGHgBS/X7fRzt0f +hvRbVazc1xDCDqmI56FspGowaDELMAkGA1UEBhMCVVMxJTAjBgNVBAoTHFN0YXJmaWVsZCBUZWNo +bm9sb2dpZXMsIEluYy4xMjAwBgNVBAsTKVN0YXJmaWVsZCBDbGFzcyAyIENlcnRpZmljYXRpb24g +QXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAAWdP4id0ckaVaGs +afPzWdqbAYcaT1epoXkJKtv3L7IezMdeatiDh6GX70k1PncGQVhiv45YuApnP+yz3SFmH8lU+nLM +PUxA2IGvd56Deruix/U0F47ZEUD0/CwqTRV/p2JdLiXTAAsgGh1o+Re49L2L7ShZ3U0WixeDyLJl +xy16paq8U4Zt3VekyvggQQto8PT7dL5WXXp59fkdheMtlb71cZBDzI0fmgAKhynpVSJYACPq4xJD +KVtHCN2MQWplBqjlIapBtJUhlbl90TSrE9atvNziPTnNvT51cKEYWQPJIrSPnNVeKtelttQKbfi3 +QBFGmh95DmK/D5fs4C8fF5Q= +-----END CERTIFICATE----- + +Taiwan GRCA +=========== +-----BEGIN CERTIFICATE----- +MIIFcjCCA1qgAwIBAgIQH51ZWtcvwgZEpYAIaeNe9jANBgkqhkiG9w0BAQUFADA/MQswCQYDVQQG +EwJUVzEwMC4GA1UECgwnR292ZXJubWVudCBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4X +DTAyMTIwNTEzMjMzM1oXDTMyMTIwNTEzMjMzM1owPzELMAkGA1UEBhMCVFcxMDAuBgNVBAoMJ0dv +dmVybm1lbnQgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCAiIwDQYJKoZIhvcNAQEBBQAD +ggIPADCCAgoCggIBAJoluOzMonWoe/fOW1mKydGGEghU7Jzy50b2iPN86aXfTEc2pBsBHH8eV4qN +w8XRIePaJD9IK/ufLqGU5ywck9G/GwGHU5nOp/UKIXZ3/6m3xnOUT0b3EEk3+qhZSV1qgQdW8or5 +BtD3cCJNtLdBuTK4sfCxw5w/cP1T3YGq2GN49thTbqGsaoQkclSGxtKyyhwOeYHWtXBiCAEuTk8O +1RGvqa/lmr/czIdtJuTJV6L7lvnM4T9TjGxMfptTCAtsF/tnyMKtsc2AtJfcdgEWFelq16TheEfO +htX7MfP6Mb40qij7cEwdScevLJ1tZqa2jWR+tSBqnTuBto9AAGdLiYa4zGX+FVPpBMHWXx1E1wov +J5pGfaENda1UhhXcSTvxls4Pm6Dso3pdvtUqdULle96ltqqvKKyskKw4t9VoNSZ63Pc78/1Fm9G7 +Q3hub/FCVGqY8A2tl+lSXunVanLeavcbYBT0peS2cWeqH+riTcFCQP5nRhc4L0c/cZyu5SHKYS1t +B6iEfC3uUSXxY5Ce/eFXiGvviiNtsea9P63RPZYLhY3Naye7twWb7LuRqQoHEgKXTiCQ8P8NHuJB +O9NAOueNXdpm5AKwB1KYXA6OM5zCppX7VRluTI6uSw+9wThNXo+EHWbNxWCWtFJaBYmOlXqYwZE8 +lSOyDvR5tMl8wUohAgMBAAGjajBoMB0GA1UdDgQWBBTMzO/MKWCkO7GStjz6MmKPrCUVOzAMBgNV +HRMEBTADAQH/MDkGBGcqBwAEMTAvMC0CAQAwCQYFKw4DAhoFADAHBgVnKgMAAAQUA5vwIhP/lSg2 +09yewDL7MTqKUWUwDQYJKoZIhvcNAQEFBQADggIBAECASvomyc5eMN1PhnR2WPWus4MzeKR6dBcZ +TulStbngCnRiqmjKeKBMmo4sIy7VahIkv9Ro04rQ2JyftB8M3jh+Vzj8jeJPXgyfqzvS/3WXy6Tj +Zwj/5cAWtUgBfen5Cv8b5Wppv3ghqMKnI6mGq3ZW6A4M9hPdKmaKZEk9GhiHkASfQlK3T8v+R0F2 +Ne//AHY2RTKbxkaFXeIksB7jSJaYV0eUVXoPQbFEJPPB/hprv4j9wabak2BegUqZIJxIZhm1AHlU +D7gsL0u8qV1bYH+Mh6XgUmMqvtg7hUAV/h62ZT/FS9p+tXo1KaMuephgIqP0fSdOLeq0dDzpD6Qz +DxARvBMB1uUO07+1EqLhRSPAzAhuYbeJq4PjJB7mXQfnHyA+z2fI56wwbSdLaG5LKlwCCDTb+Hbk +Z6MmnD+iMsJKxYEYMRBWqoTvLQr/uB930r+lWKBi5NdLkXWNiYCYfm3LU05er/ayl4WXudpVBrkk +7tfGOB5jGxI7leFYrPLfhNVfmS8NVVvmONsuP3LpSIXLuykTjx44VbnzssQwmSNOXfJIoRIM3BKQ +CZBUkQM8R+XVyWXgt0t97EfTsws+rZ7QdAAO671RrcDeLMDDav7v3Aun+kbfYNucpllQdSNpc5Oy ++fwC00fmcc4QAu4njIT/rEUNE1yDMuAlpYYsfPQS +-----END CERTIFICATE----- + +DigiCert Assured ID Root CA +=========================== +-----BEGIN CERTIFICATE----- +MIIDtzCCAp+gAwIBAgIQDOfg5RfYRv6P5WD8G/AwOTANBgkqhkiG9w0BAQUFADBlMQswCQYDVQQG +EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMSQw +IgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0EwHhcNMDYxMTEwMDAwMDAwWhcNMzEx +MTEwMDAwMDAwWjBlMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQL +ExB3d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0Ew +ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtDhXO5EOAXLGH87dg+XESpa7cJpSIqvTO +9SA5KFhgDPiA2qkVlTJhPLWxKISKityfCgyDF3qPkKyK53lTXDGEKvYPmDI2dsze3Tyoou9q+yHy +UmHfnyDXH+Kx2f4YZNISW1/5WBg1vEfNoTb5a3/UsDg+wRvDjDPZ2C8Y/igPs6eD1sNuRMBhNZYW +/lmci3Zt1/GiSw0r/wty2p5g0I6QNcZ4VYcgoc/lbQrISXwxmDNsIumH0DJaoroTghHtORedmTpy +oeb6pNnVFzF1roV9Iq4/AUaG9ih5yLHa5FcXxH4cDrC0kqZWs72yl+2qp/C3xag/lRbQ/6GW6whf +GHdPAgMBAAGjYzBhMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRF +66Kv9JLLgjEtUYunpyGd823IDzAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYunpyGd823IDzANBgkq +hkiG9w0BAQUFAAOCAQEAog683+Lt8ONyc3pklL/3cmbYMuRCdWKuh+vy1dneVrOfzM4UKLkNl2Bc +EkxY5NM9g0lFWJc1aRqoR+pWxnmrEthngYTffwk8lOa4JiwgvT2zKIn3X/8i4peEH+ll74fg38Fn +SbNd67IJKusm7Xi+fT8r87cmNW1fiQG2SVufAQWbqz0lwcy2f8Lxb4bG+mRo64EtlOtCt/qMHt1i +8b5QZ7dsvfPxH2sMNgcWfzd8qVttevESRmCD1ycEvkvOl77DZypoEd+A5wwzZr8TDRRu838fYxAe ++o0bJW1sj6W3YQGx0qMmoRBxna3iw/nDmVG3KwcIzi7mULKn+gpFL6Lw8g== +-----END CERTIFICATE----- + +DigiCert Global Root CA +======================= +-----BEGIN CERTIFICATE----- +MIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBhMQswCQYDVQQG +EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMSAw +HgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBDQTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAw +MDAwMDBaMGExCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3 +dy5kaWdpY2VydC5jb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkq +hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsBCSDMAZOn +TjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97nh6Vfe63SKMI2tavegw5 +BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt43C/dxC//AH2hdmoRBBYMql1GNXRor5H +4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7PT19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y +7vrTC0LUq7dBMtoM1O/4gdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQAB +o2MwYTAOBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbRTLtm +8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUwDQYJKoZIhvcNAQEF +BQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/EsrhMAtudXH/vTBH1jLuG2cenTnmCmr +EbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIt +tep3Sp+dWOIrWcBAI+0tKIJFPnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886 +UAb3LujEV0lsYSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk +CAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4= +-----END CERTIFICATE----- + +DigiCert High Assurance EV Root CA +================================== +-----BEGIN CERTIFICATE----- +MIIDxTCCAq2gAwIBAgIQAqxcJmoLQJuPC3nyrkYldzANBgkqhkiG9w0BAQUFADBsMQswCQYDVQQG +EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMSsw +KQYDVQQDEyJEaWdpQ2VydCBIaWdoIEFzc3VyYW5jZSBFViBSb290IENBMB4XDTA2MTExMDAwMDAw +MFoXDTMxMTExMDAwMDAwMFowbDELMAkGA1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0IEluYzEZ +MBcGA1UECxMQd3d3LmRpZ2ljZXJ0LmNvbTErMCkGA1UEAxMiRGlnaUNlcnQgSGlnaCBBc3N1cmFu +Y2UgRVYgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMbM5XPm+9S75S0t +Mqbf5YE/yc0lSbZxKsPVlDRnogocsF9ppkCxxLeyj9CYpKlBWTrT3JTWPNt0OKRKzE0lgvdKpVMS +OO7zSW1xkX5jtqumX8OkhPhPYlG++MXs2ziS4wblCJEMxChBVfvLWokVfnHoNb9Ncgk9vjo4UFt3 +MRuNs8ckRZqnrG0AFFoEt7oT61EKmEFBIk5lYYeBQVCmeVyJ3hlKV9Uu5l0cUyx+mM0aBhakaHPQ +NAQTXKFx01p8VdteZOE3hzBWBOURtCmAEvF5OYiiAhF8J2a3iLd48soKqDirCmTCv2ZdlYTBoSUe +h10aUAsgEsxBu24LUTi4S8sCAwEAAaNjMGEwDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQFMAMB +Af8wHQYDVR0OBBYEFLE+w2kD+L9HAdSYJhoIAu9jZCvDMB8GA1UdIwQYMBaAFLE+w2kD+L9HAdSY +JhoIAu9jZCvDMA0GCSqGSIb3DQEBBQUAA4IBAQAcGgaX3NecnzyIZgYIVyHbIUf4KmeqvxgydkAQ +V8GK83rZEWWONfqe/EW1ntlMMUu4kehDLI6zeM7b41N5cdblIZQB2lWHmiRk9opmzN6cN82oNLFp +myPInngiK3BD41VHMWEZ71jFhS9OMPagMRYjyOfiZRYzy78aG6A9+MpeizGLYAiJLQwGXFK3xPkK +mNEVX58Svnw2Yzi9RKR/5CYrCsSXaQ3pjOLAEFe4yHYSkVXySGnYvCoCWw9E1CAx2/S6cCZdkGCe +vEsXCS+0yx5DaMkHJ8HSXPfqIbloEpw8nL+e/IBcm2PN7EeqJSdnoDfzAIJ9VNep+OkuE6N36B9K +-----END CERTIFICATE----- + +DST Root CA X3 +============== +-----BEGIN CERTIFICATE----- +MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/MSQwIgYDVQQK +ExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMTDkRTVCBSb290IENBIFgzMB4X +DTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVowPzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1 +cmUgVHJ1c3QgQ28uMRcwFQYDVQQDEw5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQAD +ggEPADCCAQoCggEBAN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmT +rE4Orz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEqOLl5CjH9 +UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9bxiqKqy69cK3FCxolkHRy +xXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40d +utolucbY38EVAjqr2m7xPi71XAicPNaDaeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0T +AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQ +MA0GCSqGSIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69ikug +dB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXrAvHRAosZy5Q6XkjE +GB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZzR8srzJmwN0jP41ZL9c8PDHIyh8bw +RLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubS +fZGL+T0yjWW06XyxV3bqxbYoOb8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ +-----END CERTIFICATE----- + +SwissSign Gold CA - G2 +====================== +-----BEGIN CERTIFICATE----- +MIIFujCCA6KgAwIBAgIJALtAHEP1Xk+wMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNVBAYTAkNIMRUw +EwYDVQQKEwxTd2lzc1NpZ24gQUcxHzAdBgNVBAMTFlN3aXNzU2lnbiBHb2xkIENBIC0gRzIwHhcN +MDYxMDI1MDgzMDM1WhcNMzYxMDI1MDgzMDM1WjBFMQswCQYDVQQGEwJDSDEVMBMGA1UEChMMU3dp +c3NTaWduIEFHMR8wHQYDVQQDExZTd2lzc1NpZ24gR29sZCBDQSAtIEcyMIICIjANBgkqhkiG9w0B +AQEFAAOCAg8AMIICCgKCAgEAr+TufoskDhJuqVAtFkQ7kpJcyrhdhJJCEyq8ZVeCQD5XJM1QiyUq +t2/876LQwB8CJEoTlo8jE+YoWACjR8cGp4QjK7u9lit/VcyLwVcfDmJlD909Vopz2q5+bbqBHH5C +jCA12UNNhPqE21Is8w4ndwtrvxEvcnifLtg+5hg3Wipy+dpikJKVyh+c6bM8K8vzARO/Ws/BtQpg +vd21mWRTuKCWs2/iJneRjOBiEAKfNA+k1ZIzUd6+jbqEemA8atufK+ze3gE/bk3lUIbLtK/tREDF +ylqM2tIrfKjuvqblCqoOpd8FUrdVxyJdMmqXl2MT28nbeTZ7hTpKxVKJ+STnnXepgv9VHKVxaSvR +AiTysybUa9oEVeXBCsdtMDeQKuSeFDNeFhdVxVu1yzSJkvGdJo+hB9TGsnhQ2wwMC3wLjEHXuend +jIj3o02yMszYF9rNt85mndT9Xv+9lz4pded+p2JYryU0pUHHPbwNUMoDAw8IWh+Vc3hiv69yFGkO +peUDDniOJihC8AcLYiAQZzlG+qkDzAQ4embvIIO1jEpWjpEA/I5cgt6IoMPiaG59je883WX0XaxR +7ySArqpWl2/5rX3aYT+YdzylkbYcjCbaZaIJbcHiVOO5ykxMgI93e2CaHt+28kgeDrpOVG2Y4OGi +GqJ3UM/EY5LsRxmd6+ZrzsECAwEAAaOBrDCBqTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUw +AwEB/zAdBgNVHQ4EFgQUWyV7lqRlUX64OfPAeGZe6Drn8O4wHwYDVR0jBBgwFoAUWyV7lqRlUX64 +OfPAeGZe6Drn8O4wRgYDVR0gBD8wPTA7BglghXQBWQECAQEwLjAsBggrBgEFBQcCARYgaHR0cDov +L3JlcG9zaXRvcnkuc3dpc3NzaWduLmNvbS8wDQYJKoZIhvcNAQEFBQADggIBACe645R88a7A3hfm +5djV9VSwg/S7zV4Fe0+fdWavPOhWfvxyeDgD2StiGwC5+OlgzczOUYrHUDFu4Up+GC9pWbY9ZIEr +44OE5iKHjn3g7gKZYbge9LgriBIWhMIxkziWMaa5O1M/wySTVltpkuzFwbs4AOPsF6m43Md8AYOf +Mke6UiI0HTJ6CVanfCU2qT1L2sCCbwq7EsiHSycR+R4tx5M/nttfJmtS2S6K8RTGRI0Vqbe/vd6m +Gu6uLftIdxf+u+yvGPUqUfA5hJeVbG4bwyvEdGB5JbAKJ9/fXtI5z0V9QkvfsywexcZdylU6oJxp +mo/a77KwPJ+HbBIrZXAVUjEaJM9vMSNQH4xPjyPDdEFjHFWoFN0+4FFQz/EbMFYOkrCChdiDyyJk +vC24JdVUorgG6q2SpCSgwYa1ShNqR88uC1aVVMvOmttqtKay20EIhid392qgQmwLOM7XdVAyksLf +KzAiSNDVQTglXaTpXZ/GlHXQRf0wl0OPkKsKx4ZzYEppLd6leNcG2mqeSz53OiATIgHQv2ieY2Br +NU0LbbqhPcCT4H8js1WtciVORvnSFu+wZMEBnunKoGqYDs/YYPIvSbjkQuE4NRb0yG5P94FW6Lqj +viOvrv1vA+ACOzB2+httQc8Bsem4yWb02ybzOqR08kkkW8mw0FfB+j564ZfJ +-----END CERTIFICATE----- + +SwissSign Silver CA - G2 +======================== +-----BEGIN CERTIFICATE----- +MIIFvTCCA6WgAwIBAgIITxvUL1S7L0swDQYJKoZIhvcNAQEFBQAwRzELMAkGA1UEBhMCQ0gxFTAT +BgNVBAoTDFN3aXNzU2lnbiBBRzEhMB8GA1UEAxMYU3dpc3NTaWduIFNpbHZlciBDQSAtIEcyMB4X +DTA2MTAyNTA4MzI0NloXDTM2MTAyNTA4MzI0NlowRzELMAkGA1UEBhMCQ0gxFTATBgNVBAoTDFN3 +aXNzU2lnbiBBRzEhMB8GA1UEAxMYU3dpc3NTaWduIFNpbHZlciBDQSAtIEcyMIICIjANBgkqhkiG +9w0BAQEFAAOCAg8AMIICCgKCAgEAxPGHf9N4Mfc4yfjDmUO8x/e8N+dOcbpLj6VzHVxumK4DV644 +N0MvFz0fyM5oEMF4rhkDKxD6LHmD9ui5aLlV8gREpzn5/ASLHvGiTSf5YXu6t+WiE7brYT7QbNHm ++/pe7R20nqA1W6GSy/BJkv6FCgU+5tkL4k+73JU3/JHpMjUi0R86TieFnbAVlDLaYQ1HTWBCrpJH +6INaUFjpiou5XaHc3ZlKHzZnu0jkg7Y360g6rw9njxcH6ATK72oxh9TAtvmUcXtnZLi2kUpCe2Uu +MGoM9ZDulebyzYLs2aFK7PayS+VFheZteJMELpyCbTapxDFkH4aDCyr0NQp4yVXPQbBH6TCfmb5h +qAaEuSh6XzjZG6k4sIN/c8HDO0gqgg8hm7jMqDXDhBuDsz6+pJVpATqJAHgE2cn0mRmrVn5bi4Y5 +FZGkECwJMoBgs5PAKrYYC51+jUnyEEp/+dVGLxmSo5mnJqy7jDzmDrxHB9xzUfFwZC8I+bRHHTBs +ROopN4WSaGa8gzj+ezku01DwH/teYLappvonQfGbGHLy9YR0SslnxFSuSGTfjNFusB3hB48IHpmc +celM2KX3RxIfdNFRnobzwqIjQAtz20um53MGjMGg6cFZrEb65i/4z3GcRm25xBWNOHkDRUjvxF3X +CO6HOSKGsg0PWEP3calILv3q1h8CAwEAAaOBrDCBqTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/ +BAUwAwEB/zAdBgNVHQ4EFgQUF6DNweRBtjpbO8tFnb0cwpj6hlgwHwYDVR0jBBgwFoAUF6DNweRB +tjpbO8tFnb0cwpj6hlgwRgYDVR0gBD8wPTA7BglghXQBWQEDAQEwLjAsBggrBgEFBQcCARYgaHR0 +cDovL3JlcG9zaXRvcnkuc3dpc3NzaWduLmNvbS8wDQYJKoZIhvcNAQEFBQADggIBAHPGgeAn0i0P +4JUw4ppBf1AsX19iYamGamkYDHRJ1l2E6kFSGG9YrVBWIGrGvShpWJHckRE1qTodvBqlYJ7YH39F +kWnZfrt4csEGDyrOj4VwYaygzQu4OSlWhDJOhrs9xCrZ1x9y7v5RoSJBsXECYxqCsGKrXlcSH9/L +3XWgwF15kIwb4FDm3jH+mHtwX6WQ2K34ArZv02DdQEsixT2tOnqfGhpHkXkzuoLcMmkDlm4fS/Bx +/uNncqCxv1yL5PqZIseEuRuNI5c/7SXgz2W79WEE790eslpBIlqhn10s6FvJbakMDHiqYMZWjwFa +DGi8aRl5xB9+lwW/xekkUV7U1UtT7dkjWjYDZaPBA61BMPNGG4WQr2W11bHkFlt4dR2Xem1ZqSqP +e97Dh4kQmUlzeMg9vVE1dCrV8X5pGyq7O70luJpaPXJhkGaH7gzWTdQRdAtq/gsD/KNVV4n+Ssuu +WxcFyPKNIzFTONItaj+CuY0IavdeQXRuwxF+B6wpYJE/OMpXEA29MC/HpeZBoNquBYeaoKRlbEwJ +DIm6uNO5wJOKMPqN5ZprFQFOZ6raYlY+hAhm0sQ2fac+EPyI4NSA5QC9qvNOBqN6avlicuMJT+ub +DgEj8Z+7fNzcbBGXJbLytGMU0gYqZ4yD9c7qB9iaah7s5Aq7KkzrCWA5zspi2C5u +-----END CERTIFICATE----- + +GeoTrust Primary Certification Authority +======================================== +-----BEGIN CERTIFICATE----- +MIIDfDCCAmSgAwIBAgIQGKy1av1pthU6Y2yv2vrEoTANBgkqhkiG9w0BAQUFADBYMQswCQYDVQQG +EwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjExMC8GA1UEAxMoR2VvVHJ1c3QgUHJpbWFyeSBD +ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wNjExMjcwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMFgx +CzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTEwLwYDVQQDEyhHZW9UcnVzdCBQ +cmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB +CgKCAQEAvrgVe//UfH1nrYNke8hCUy3f9oQIIGHWAVlqnEQRr+92/ZV+zmEwu3qDXwK9AWbK7hWN +b6EwnL2hhZ6UOvNWiAAxz9juapYC2e0DjPt1befquFUWBRaa9OBesYjAZIVcFU2Ix7e64HXprQU9 +nceJSOC7KMgD4TCTZF5SwFlwIjVXiIrxlQqD17wxcwE07e9GceBrAqg1cmuXm2bgyxx5X9gaBGge +RwLmnWDiNpcB3841kt++Z8dtd1k7j53WkBWUvEI0EME5+bEnPn7WinXFsq+W06Lem+SYvn3h6YGt +tm/81w7a4DSwDRp35+MImO9Y+pyEtzavwt+s0vQQBnBxNQIDAQABo0IwQDAPBgNVHRMBAf8EBTAD +AQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQULNVQQZcVi/CPNmFbSvtr2ZnJM5IwDQYJKoZI +hvcNAQEFBQADggEBAFpwfyzdtzRP9YZRqSa+S7iq8XEN3GHHoOo0Hnp3DwQ16CePbJC/kRYkRj5K +Ts4rFtULUh38H2eiAkUxT87z+gOneZ1TatnaYzr4gNfTmeGl4b7UVXGYNTq+k+qurUKykG/g/CFN +NWMziUnWm07Kx+dOCQD32sfvmWKZd7aVIl6KoKv0uHiYyjgZmclynnjNS6yvGaBzEi38wkG6gZHa +Floxt/m0cYASSJlyc1pZU8FjUjPtp8nSOQJw+uCxQmYpqptR7TBUIhRf2asdweSU8Pj1K/fqynhG +1riR/aYNKxoUAT6A8EKglQdebc3MS6RFjasS6LPeWuWgfOgPIh1a6Vk= +-----END CERTIFICATE----- + +thawte Primary Root CA +====================== +-----BEGIN CERTIFICATE----- +MIIEIDCCAwigAwIBAgIQNE7VVyDV7exJ9C/ON9srbTANBgkqhkiG9w0BAQUFADCBqTELMAkGA1UE +BhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2 +aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMpIDIwMDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhv +cml6ZWQgdXNlIG9ubHkxHzAdBgNVBAMTFnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwHhcNMDYxMTE3 +MDAwMDAwWhcNMzYwNzE2MjM1OTU5WjCBqTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwg +SW5jLjEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMv +KGMpIDIwMDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxHzAdBgNVBAMT +FnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCs +oPD7gFnUnMekz52hWXMJEEUMDSxuaPFsW0hoSVk3/AszGcJ3f8wQLZU0HObrTQmnHNK4yZc2AreJ +1CRfBsDMRJSUjQJib+ta3RGNKJpchJAQeg29dGYvajig4tVUROsdB58Hum/u6f1OCyn1PoSgAfGc +q/gcfomk6KHYcWUNo1F77rzSImANuVud37r8UVsLr5iy6S7pBOhih94ryNdOwUxkHt3Ph1i6Sk/K +aAcdHJ1KxtUvkcx8cXIcxcBn6zL9yZJclNqFwJu/U30rCfSMnZEfl2pSy94JNqR32HuHUETVPm4p +afs5SSYeCaWAe0At6+gnhcn+Yf1+5nyXHdWdAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYD +VR0PAQH/BAQDAgEGMB0GA1UdDgQWBBR7W0XPr87Lev0xkhpqtvNG61dIUDANBgkqhkiG9w0BAQUF +AAOCAQEAeRHAS7ORtvzw6WfUDW5FvlXok9LOAz/t2iWwHVfLHjp2oEzsUHboZHIMpKnxuIvW1oeE +uzLlQRHAd9mzYJ3rG9XRbkREqaYB7FViHXe4XI5ISXycO1cRrK1zN44veFyQaEfZYGDm/Ac9IiAX +xPcW6cTYcvnIc3zfFi8VqT79aie2oetaupgf1eNNZAqdE8hhuvU5HIe6uL17In/2/qxAeeWsEG89 +jxt5dovEN7MhGITlNgDrYyCZuen+MwS7QcjBAvlEYyCegc5C09Y/LHbTY5xZ3Y+m4Q6gLkH3LpVH +z7z9M/P2C2F+fpErgUfCJzDupxBdN49cOSvkBPB7jVaMaA== +-----END CERTIFICATE----- + +VeriSign Class 3 Public Primary Certification Authority - G5 +============================================================ +-----BEGIN CERTIFICATE----- +MIIE0zCCA7ugAwIBAgIQGNrRniZ96LtKIVjNzGs7SjANBgkqhkiG9w0BAQUFADCByjELMAkGA1UE +BhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBO +ZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVk +IHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRp +ZmljYXRpb24gQXV0aG9yaXR5IC0gRzUwHhcNMDYxMTA4MDAwMDAwWhcNMzYwNzE2MjM1OTU5WjCB +yjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2ln +biBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJpU2lnbiwgSW5jLiAtIEZvciBh +dXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmlt +YXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IC0gRzUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw +ggEKAoIBAQCvJAgIKXo1nmAMqudLO07cfLw8RRy7K+D+KQL5VwijZIUVJ/XxrcgxiV0i6CqqpkKz +j/i5Vbext0uz/o9+B1fs70PbZmIVYc9gDaTY3vjgw2IIPVQT60nKWVSFJuUrjxuf6/WhkcIzSdhD +Y2pSS9KP6HBRTdGJaXvHcPaz3BJ023tdS1bTlr8Vd6Gw9KIl8q8ckmcY5fQGBO+QueQA5N06tRn/ +Arr0PO7gi+s3i+z016zy9vA9r911kTMZHRxAy3QkGSGT2RT+rCpSx4/VBEnkjWNHiDxpg8v+R70r +fk/Fla4OndTRQ8Bnc+MUCH7lP59zuDMKz10/NIeWiu5T6CUVAgMBAAGjgbIwga8wDwYDVR0TAQH/ +BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2gWzBZMFcwVRYJaW1hZ2Uv +Z2lmMCEwHzAHBgUrDgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYjaHR0cDovL2xvZ28udmVy +aXNpZ24uY29tL3ZzbG9nby5naWYwHQYDVR0OBBYEFH/TZafC3ey78DAJ80M5+gKvMzEzMA0GCSqG +SIb3DQEBBQUAA4IBAQCTJEowX2LP2BqYLz3q3JktvXf2pXkiOOzEp6B4Eq1iDkVwZMXnl2YtmAl+ +X6/WzChl8gGqCBpH3vn5fJJaCGkgDdk+bW48DW7Y5gaRQBi5+MHt39tBquCWIMnNZBU4gcmU7qKE +KQsTb47bDN0lAtukixlE0kF6BWlKWE9gyn6CagsCqiUXObXbf+eEZSqVir2G3l6BFoMtEMze/aiC +Km0oHw0LxOXnGiYZ4fQRbxC1lfznQgUy286dUV4otp6F01vvpX1FQHKOtw5rDgb7MzVIcbidJ4vE +ZV8NhnacRHr2lVz2XTIIM6RUthg/aFzyQkqFOFSDX9HoLPKsEdao7WNq +-----END CERTIFICATE----- + +SecureTrust CA +============== +-----BEGIN CERTIFICATE----- +MIIDuDCCAqCgAwIBAgIQDPCOXAgWpa1Cf/DrJxhZ0DANBgkqhkiG9w0BAQUFADBIMQswCQYDVQQG +EwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24xFzAVBgNVBAMTDlNlY3VyZVRy +dXN0IENBMB4XDTA2MTEwNzE5MzExOFoXDTI5MTIzMTE5NDA1NVowSDELMAkGA1UEBhMCVVMxIDAe +BgNVBAoTF1NlY3VyZVRydXN0IENvcnBvcmF0aW9uMRcwFQYDVQQDEw5TZWN1cmVUcnVzdCBDQTCC +ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKukgeWVzfX2FI7CT8rU4niVWJxB4Q2ZQCQX +OZEzZum+4YOvYlyJ0fwkW2Gz4BERQRwdbvC4u/jep4G6pkjGnx29vo6pQT64lO0pGtSO0gMdA+9t +DWccV9cGrcrI9f4Or2YlSASWC12juhbDCE/RRvgUXPLIXgGZbf2IzIaowW8xQmxSPmjL8xk037uH +GFaAJsTQ3MBv396gwpEWoGQRS0S8Hvbn+mPeZqx2pHGj7DaUaHp3pLHnDi+BeuK1cobvomuL8A/b +01k/unK8RCSc43Oz969XL0Imnal0ugBS8kvNU3xHCzaFDmapCJcWNFfBZveA4+1wVMeT4C4oFVmH +ursCAwEAAaOBnTCBmjATBgkrBgEEAYI3FAIEBh4EAEMAQTALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/ +BAUwAwEB/zAdBgNVHQ4EFgQUQjK2FvoE/f5dS3rD/fdMQB1aQ68wNAYDVR0fBC0wKzApoCegJYYj +aHR0cDovL2NybC5zZWN1cmV0cnVzdC5jb20vU1RDQS5jcmwwEAYJKwYBBAGCNxUBBAMCAQAwDQYJ +KoZIhvcNAQEFBQADggEBADDtT0rhWDpSclu1pqNlGKa7UTt36Z3q059c4EVlew3KW+JwULKUBRSu +SceNQQcSc5R+DCMh/bwQf2AQWnL1mA6s7Ll/3XpvXdMc9P+IBWlCqQVxyLesJugutIxq/3HcuLHf +mbx8IVQr5Fiiu1cprp6poxkmD5kuCLDv/WnPmRoJjeOnnyvJNjR7JLN4TJUXpAYmHrZkUjZfYGfZ +nMUFdAvnZyPSCPyI6a6Lf+Ew9Dd+/cYy2i2eRDAwbO4H3tI0/NL/QPZL9GZGBlSm8jIKYyYwa5vR +3ItHuuG51WLQoqD0ZwV4KWMabwTW+MZMo5qxN7SN5ShLHZ4swrhovO0C7jE= +-----END CERTIFICATE----- + +Secure Global CA +================ +-----BEGIN CERTIFICATE----- +MIIDvDCCAqSgAwIBAgIQB1YipOjUiolN9BPI8PjqpTANBgkqhkiG9w0BAQUFADBKMQswCQYDVQQG +EwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24xGTAXBgNVBAMTEFNlY3VyZSBH +bG9iYWwgQ0EwHhcNMDYxMTA3MTk0MjI4WhcNMjkxMjMxMTk1MjA2WjBKMQswCQYDVQQGEwJVUzEg +MB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24xGTAXBgNVBAMTEFNlY3VyZSBHbG9iYWwg +Q0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvNS7YrGxVaQZx5RNoJLNP2MwhR/jx +YDiJiQPpvepeRlMJ3Fz1Wuj3RSoC6zFh1ykzTM7HfAo3fg+6MpjhHZevj8fcyTiW89sa/FHtaMbQ +bqR8JNGuQsiWUGMu4P51/pinX0kuleM5M2SOHqRfkNJnPLLZ/kG5VacJjnIFHovdRIWCQtBJwB1g +8NEXLJXr9qXBkqPFwqcIYA1gBBCWeZ4WNOaptvolRTnIHmX5k/Wq8VLcmZg9pYYaDDUz+kulBAYV +HDGA76oYa8J719rO+TMg1fW9ajMtgQT7sFzUnKPiXB3jqUJ1XnvUd+85VLrJChgbEplJL4hL/VBi +0XPnj3pDAgMBAAGjgZ0wgZowEwYJKwYBBAGCNxQCBAYeBABDAEEwCwYDVR0PBAQDAgGGMA8GA1Ud +EwEB/wQFMAMBAf8wHQYDVR0OBBYEFK9EBMJBfkiD2045AuzshHrmzsmkMDQGA1UdHwQtMCswKaAn +oCWGI2h0dHA6Ly9jcmwuc2VjdXJldHJ1c3QuY29tL1NHQ0EuY3JsMBAGCSsGAQQBgjcVAQQDAgEA +MA0GCSqGSIb3DQEBBQUAA4IBAQBjGghAfaReUw132HquHw0LURYD7xh8yOOvaliTFGCRsoTciE6+ +OYo68+aCiV0BN7OrJKQVDpI1WkpEXk5X+nXOH0jOZvQ8QCaSmGwb7iRGDBezUqXbpZGRzzfTb+cn +CDpOGR86p1hcF895P4vkp9MmI50mD1hp/Ed+stCNi5O/KU9DaXR2Z0vPB4zmAve14bRDtUstFJ/5 +3CYNv6ZHdAbYiNE6KTCEztI5gGIbqMdXSbxqVVFnFUq+NQfk1XWYN3kwFNspnWzFacxHVaIw98xc +f8LDmBxrThaA63p4ZUWiABqvDA1VZDRIuJK58bRQKfJPIx/abKwfROHdI3hRW8cW +-----END CERTIFICATE----- + +COMODO Certification Authority +============================== +-----BEGIN CERTIFICATE----- +MIIEHTCCAwWgAwIBAgIQToEtioJl4AsC7j41AkblPTANBgkqhkiG9w0BAQUFADCBgTELMAkGA1UE +BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgG +A1UEChMRQ09NT0RPIENBIExpbWl0ZWQxJzAlBgNVBAMTHkNPTU9ETyBDZXJ0aWZpY2F0aW9uIEF1 +dGhvcml0eTAeFw0wNjEyMDEwMDAwMDBaFw0yOTEyMzEyMzU5NTlaMIGBMQswCQYDVQQGEwJHQjEb +MBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRowGAYDVQQKExFD +T01PRE8gQ0EgTGltaXRlZDEnMCUGA1UEAxMeQ09NT0RPIENlcnRpZmljYXRpb24gQXV0aG9yaXR5 +MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0ECLi3LjkRv3UcEbVASY06m/weaKXTuH ++7uIzg3jLz8GlvCiKVCZrts7oVewdFFxze1CkU1B/qnI2GqGd0S7WWaXUF601CxwRM/aN5VCaTww +xHGzUvAhTaHYujl8HJ6jJJ3ygxaYqhZ8Q5sVW7euNJH+1GImGEaaP+vB+fGQV+useg2L23IwambV +4EajcNxo2f8ESIl33rXp+2dtQem8Ob0y2WIC8bGoPW43nOIv4tOiJovGuFVDiOEjPqXSJDlqR6sA +1KGzqSX+DT+nHbrTUcELpNqsOO9VUCQFZUaTNE8tja3G1CEZ0o7KBWFxB3NH5YoZEr0ETc5OnKVI +rLsm9wIDAQABo4GOMIGLMB0GA1UdDgQWBBQLWOWLxkwVN6RAqTCpIb5HNlpW/zAOBgNVHQ8BAf8E +BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zBJBgNVHR8EQjBAMD6gPKA6hjhodHRwOi8vY3JsLmNvbW9k +b2NhLmNvbS9DT01PRE9DZXJ0aWZpY2F0aW9uQXV0aG9yaXR5LmNybDANBgkqhkiG9w0BAQUFAAOC +AQEAPpiem/Yb6dc5t3iuHXIYSdOH5EOC6z/JqvWote9VfCFSZfnVDeFs9D6Mk3ORLgLETgdxb8CP +OGEIqB6BCsAvIC9Bi5HcSEW88cbeunZrM8gALTFGTO3nnc+IlP8zwFboJIYmuNg4ON8qa90SzMc/ +RxdMosIGlgnW2/4/PEZB31jiVg88O8EckzXZOFKs7sjsLjBOlDW0JB9LeGna8gI4zJVSk/BwJVmc +IGfE7vmLV2H0knZ9P4SNVbfo5azV8fUZVqZa+5Acr5Pr5RzUZ5ddBA6+C4OmF4O5MBKgxTMVBbkN ++8cFduPYSo38NBejxiEovjBFMR7HeL5YYTisO+IBZQ== +-----END CERTIFICATE----- + +Network Solutions Certificate Authority +======================================= +-----BEGIN CERTIFICATE----- +MIID5jCCAs6gAwIBAgIQV8szb8JcFuZHFhfjkDFo4DANBgkqhkiG9w0BAQUFADBiMQswCQYDVQQG +EwJVUzEhMB8GA1UEChMYTmV0d29yayBTb2x1dGlvbnMgTC5MLkMuMTAwLgYDVQQDEydOZXR3b3Jr +IFNvbHV0aW9ucyBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcNMDYxMjAxMDAwMDAwWhcNMjkxMjMx +MjM1OTU5WjBiMQswCQYDVQQGEwJVUzEhMB8GA1UEChMYTmV0d29yayBTb2x1dGlvbnMgTC5MLkMu +MTAwLgYDVQQDEydOZXR3b3JrIFNvbHV0aW9ucyBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwggEiMA0G +CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDkvH6SMG3G2I4rC7xGzuAnlt7e+foS0zwzc7MEL7xx +jOWftiJgPl9dzgn/ggwbmlFQGiaJ3dVhXRncEg8tCqJDXRfQNJIg6nPPOCwGJgl6cvf6UDL4wpPT +aaIjzkGxzOTVHzbRijr4jGPiFFlp7Q3Tf2vouAPlT2rlmGNpSAW+Lv8ztumXWWn4Zxmuk2GWRBXT +crA/vGp97Eh/jcOrqnErU2lBUzS1sLnFBgrEsEX1QV1uiUV7PTsmjHTC5dLRfbIR1PtYMiKagMnc +/Qzpf14Dl847ABSHJ3A4qY5usyd2mFHgBeMhqxrVhSI8KbWaFsWAqPS7azCPL0YCorEMIuDTAgMB +AAGjgZcwgZQwHQYDVR0OBBYEFCEwyfsA106Y2oeqKtCnLrFAMadMMA4GA1UdDwEB/wQEAwIBBjAP +BgNVHRMBAf8EBTADAQH/MFIGA1UdHwRLMEkwR6BFoEOGQWh0dHA6Ly9jcmwubmV0c29sc3NsLmNv +bS9OZXR3b3JrU29sdXRpb25zQ2VydGlmaWNhdGVBdXRob3JpdHkuY3JsMA0GCSqGSIb3DQEBBQUA +A4IBAQC7rkvnt1frf6ott3NHhWrB5KUd5Oc86fRZZXe1eltajSU24HqXLjjAV2CDmAaDn7l2em5Q +4LqILPxFzBiwmZVRDuwduIj/h1AcgsLj4DKAv6ALR8jDMe+ZZzKATxcheQxpXN5eNK4CtSbqUN9/ +GGUsyfJj4akH/nxxH2szJGoeBfcFaMBqEssuXmHLrijTfsK0ZpEmXzwuJF/LWA/rKOyvEZbz3Htv +wKeI8lN3s2Berq4o2jUsbzRF0ybh3uxbTydrFny9RAQYgrOJeRcQcT16ohZO9QHNpGxlaKFJdlxD +ydi8NmdspZS11My5vWo1ViHe2MPr+8ukYEywVaCge1ey +-----END CERTIFICATE----- + +COMODO ECC Certification Authority +================================== +-----BEGIN CERTIFICATE----- +MIICiTCCAg+gAwIBAgIQH0evqmIAcFBUTAGem2OZKjAKBggqhkjOPQQDAzCBhTELMAkGA1UEBhMC +R0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UE +ChMRQ09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlvbiBB +dXRob3JpdHkwHhcNMDgwMzA2MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCBhTELMAkGA1UEBhMCR0Ix +GzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMR +Q09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlvbiBBdXRo +b3JpdHkwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQDR3svdcmCFYX7deSRFtSrYpn1PlILBs5BAH+X +4QokPB0BBO490o0JlwzgdeT6+3eKKvUDYEs2ixYjFq0JcfRK9ChQtP6IHG4/bC8vCVlbpVsLM5ni +wz2J+Wos77LTBumjQjBAMB0GA1UdDgQWBBR1cacZSBm8nZ3qQUfflMRId5nTeTAOBgNVHQ8BAf8E +BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAKBggqhkjOPQQDAwNoADBlAjEA7wNbeqy3eApyt4jf/7VG +FAkK+qDmfQjGGoe9GKhzvSbKYAydzpmfz1wPMOG+FDHqAjAU9JM8SaczepBGR7NjfRObTrdvGDeA +U/7dIOA1mjbRxwG55tzd8/8dLDoWV9mSOdY= +-----END CERTIFICATE----- + +OISTE WISeKey Global Root GA CA +=============================== +-----BEGIN CERTIFICATE----- +MIID8TCCAtmgAwIBAgIQQT1yx/RrH4FDffHSKFTfmjANBgkqhkiG9w0BAQUFADCBijELMAkGA1UE +BhMCQ0gxEDAOBgNVBAoTB1dJU2VLZXkxGzAZBgNVBAsTEkNvcHlyaWdodCAoYykgMjAwNTEiMCAG +A1UECxMZT0lTVEUgRm91bmRhdGlvbiBFbmRvcnNlZDEoMCYGA1UEAxMfT0lTVEUgV0lTZUtleSBH +bG9iYWwgUm9vdCBHQSBDQTAeFw0wNTEyMTExNjAzNDRaFw0zNzEyMTExNjA5NTFaMIGKMQswCQYD +VQQGEwJDSDEQMA4GA1UEChMHV0lTZUtleTEbMBkGA1UECxMSQ29weXJpZ2h0IChjKSAyMDA1MSIw +IAYDVQQLExlPSVNURSBGb3VuZGF0aW9uIEVuZG9yc2VkMSgwJgYDVQQDEx9PSVNURSBXSVNlS2V5 +IEdsb2JhbCBSb290IEdBIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAy0+zAJs9 +Nt350UlqaxBJH+zYK7LG+DKBKUOVTJoZIyEVRd7jyBxRVVuuk+g3/ytr6dTqvirdqFEr12bDYVxg +Asj1znJ7O7jyTmUIms2kahnBAbtzptf2w93NvKSLtZlhuAGio9RN1AU9ka34tAhxZK9w8RxrfvbD +d50kc3vkDIzh2TbhmYsFmQvtRTEJysIA2/dyoJaqlYfQjse2YXMNdmaM3Bu0Y6Kff5MTMPGhJ9vZ +/yxViJGg4E8HsChWjBgbl0SOid3gF27nKu+POQoxhILYQBRJLnpB5Kf+42TMwVlxSywhp1t94B3R +LoGbw9ho972WG6xwsRYUC9tguSYBBQIDAQABo1EwTzALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/BAUw +AwEB/zAdBgNVHQ4EFgQUswN+rja8sHnR3JQmthG+IbJphpQwEAYJKwYBBAGCNxUBBAMCAQAwDQYJ +KoZIhvcNAQEFBQADggEBAEuh/wuHbrP5wUOxSPMowB0uyQlB+pQAHKSkq0lPjz0e701vvbyk9vIm +MMkQyh2I+3QZH4VFvbBsUfk2ftv1TDI6QU9bR8/oCy22xBmddMVHxjtqD6wU2zz0c5ypBd8A3HR4 ++vg1YFkCExh8vPtNsCBtQ7tgMHpnM1zFmdH4LTlSc/uMqpclXHLZCB6rTjzjgTGfA6b7wP4piFXa +hNVQA7bihKOmNqoROgHhGEvWRGizPflTdISzRpFGlgC3gCy24eMQ4tui5yiPAZZiFj4A4xylNoEY +okxSdsARo27mHbrjWr42U8U+dY+GaSlYU7Wcu2+fXMUY7N0v4ZjJ/L7fCg0= +-----END CERTIFICATE----- + +Certigna +======== +-----BEGIN CERTIFICATE----- +MIIDqDCCApCgAwIBAgIJAP7c4wEPyUj/MA0GCSqGSIb3DQEBBQUAMDQxCzAJBgNVBAYTAkZSMRIw +EAYDVQQKDAlEaGlteW90aXMxETAPBgNVBAMMCENlcnRpZ25hMB4XDTA3MDYyOTE1MTMwNVoXDTI3 +MDYyOTE1MTMwNVowNDELMAkGA1UEBhMCRlIxEjAQBgNVBAoMCURoaW15b3RpczERMA8GA1UEAwwI +Q2VydGlnbmEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDIaPHJ1tazNHUmgh7stL7q +XOEm7RFHYeGifBZ4QCHkYJ5ayGPhxLGWkv8YbWkj4Sti993iNi+RB7lIzw7sebYs5zRLcAglozyH +GxnygQcPOJAZ0xH+hrTy0V4eHpbNgGzOOzGTtvKg0KmVEn2lmsxryIRWijOp5yIVUxbwzBfsV1/p +ogqYCd7jX5xv3EjjhQsVWqa6n6xI4wmy9/Qy3l40vhx4XUJbzg4ij02Q130yGLMLLGq/jj8UEYkg +DncUtT2UCIf3JR7VsmAA7G8qKCVuKj4YYxclPz5EIBb2JsglrgVKtOdjLPOMFlN+XPsRGgjBRmKf +Irjxwo1p3Po6WAbfAgMBAAGjgbwwgbkwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUGu3+QTmQ +tCRZvgHyUtVF9lo53BEwZAYDVR0jBF0wW4AUGu3+QTmQtCRZvgHyUtVF9lo53BGhOKQ2MDQxCzAJ +BgNVBAYTAkZSMRIwEAYDVQQKDAlEaGlteW90aXMxETAPBgNVBAMMCENlcnRpZ25hggkA/tzjAQ/J +SP8wDgYDVR0PAQH/BAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIABzANBgkqhkiG9w0BAQUFAAOCAQEA +hQMeknH2Qq/ho2Ge6/PAD/Kl1NqV5ta+aDY9fm4fTIrv0Q8hbV6lUmPOEvjvKtpv6zf+EwLHyzs+ +ImvaYS5/1HI93TDhHkxAGYwP15zRgzB7mFncfca5DClMoTOi62c6ZYTTluLtdkVwj7Ur3vkj1klu +PBS1xp81HlDQwY9qcEQCYsuuHWhBp6pX6FOqB9IG9tUUBguRA3UsbHK1YZWaDYu5Def131TN3ubY +1gkIl2PlwS6wt0QmwCbAr1UwnjvVNioZBPRcHv/PLLf/0P2HQBHVESO7SMAhqaQoLf0V+LBOK/Qw +WyH8EZE0vkHve52Xdf+XlcCWWC/qu0bXu+TZLg== +-----END CERTIFICATE----- + +Cybertrust Global Root +====================== +-----BEGIN CERTIFICATE----- +MIIDoTCCAomgAwIBAgILBAAAAAABD4WqLUgwDQYJKoZIhvcNAQEFBQAwOzEYMBYGA1UEChMPQ3li +ZXJ0cnVzdCwgSW5jMR8wHQYDVQQDExZDeWJlcnRydXN0IEdsb2JhbCBSb290MB4XDTA2MTIxNTA4 +MDAwMFoXDTIxMTIxNTA4MDAwMFowOzEYMBYGA1UEChMPQ3liZXJ0cnVzdCwgSW5jMR8wHQYDVQQD +ExZDeWJlcnRydXN0IEdsb2JhbCBSb290MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA ++Mi8vRRQZhP/8NN57CPytxrHjoXxEnOmGaoQ25yiZXRadz5RfVb23CO21O1fWLE3TdVJDm71aofW +0ozSJ8bi/zafmGWgE07GKmSb1ZASzxQG9Dvj1Ci+6A74q05IlG2OlTEQXO2iLb3VOm2yHLtgwEZL +AfVJrn5GitB0jaEMAs7u/OePuGtm839EAL9mJRQr3RAwHQeWP032a7iPt3sMpTjr3kfb1V05/Iin +89cqdPHoWqI7n1C6poxFNcJQZZXcY4Lv3b93TZxiyWNzFtApD0mpSPCzqrdsxacwOUBdrsTiXSZT +8M4cIwhhqJQZugRiQOwfOHB3EgZxpzAYXSUnpQIDAQABo4GlMIGiMA4GA1UdDwEB/wQEAwIBBjAP +BgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBS2CHsNesysIEyGVjJez6tuhS1wVzA/BgNVHR8EODA2 +MDSgMqAwhi5odHRwOi8vd3d3Mi5wdWJsaWMtdHJ1c3QuY29tL2NybC9jdC9jdHJvb3QuY3JsMB8G +A1UdIwQYMBaAFLYIew16zKwgTIZWMl7Pq26FLXBXMA0GCSqGSIb3DQEBBQUAA4IBAQBW7wojoFRO +lZfJ+InaRcHUowAl9B8Tq7ejhVhpwjCt2BWKLePJzYFa+HMjWqd8BfP9IjsO0QbE2zZMcwSO5bAi +5MXzLqXZI+O4Tkogp24CJJ8iYGd7ix1yCcUxXOl5n4BHPa2hCwcUPUf/A2kaDAtE52Mlp3+yybh2 +hO0j9n0Hq0V+09+zv+mKts2oomcrUtW3ZfA5TGOgkXmTUg9U3YO7n9GPp1Nzw8v/MOx8BLjYRB+T +X3EJIrduPuocA06dGiBh+4E37F78CkWr1+cXVdCg6mCbpvbjjFspwgZgFJ0tl0ypkxWdYcQBX0jW +WL1WMRJOEcgh4LMRkWXbtKaIOM5V +-----END CERTIFICATE----- + +ePKI Root Certification Authority +================================= +-----BEGIN CERTIFICATE----- +MIIFsDCCA5igAwIBAgIQFci9ZUdcr7iXAF7kBtK8nTANBgkqhkiG9w0BAQUFADBeMQswCQYDVQQG +EwJUVzEjMCEGA1UECgwaQ2h1bmdod2EgVGVsZWNvbSBDby4sIEx0ZC4xKjAoBgNVBAsMIWVQS0kg +Um9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wNDEyMjAwMjMxMjdaFw0zNDEyMjAwMjMx +MjdaMF4xCzAJBgNVBAYTAlRXMSMwIQYDVQQKDBpDaHVuZ2h3YSBUZWxlY29tIENvLiwgTHRkLjEq +MCgGA1UECwwhZVBLSSBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIICIjANBgkqhkiG9w0B +AQEFAAOCAg8AMIICCgKCAgEA4SUP7o3biDN1Z82tH306Tm2d0y8U82N0ywEhajfqhFAHSyZbCUNs +IZ5qyNUD9WBpj8zwIuQf5/dqIjG3LBXy4P4AakP/h2XGtRrBp0xtInAhijHyl3SJCRImHJ7K2RKi +lTza6We/CKBk49ZCt0Xvl/T29de1ShUCWH2YWEtgvM3XDZoTM1PRYfl61dd4s5oz9wCGzh1NlDiv +qOx4UXCKXBCDUSH3ET00hl7lSM2XgYI1TBnsZfZrxQWh7kcT1rMhJ5QQCtkkO7q+RBNGMD+XPNjX +12ruOzjjK9SXDrkb5wdJfzcq+Xd4z1TtW0ado4AOkUPB1ltfFLqfpo0kR0BZv3I4sjZsN/+Z0V0O +WQqraffAsgRFelQArr5T9rXn4fg8ozHSqf4hUmTFpmfwdQcGlBSBVcYn5AGPF8Fqcde+S/uUWH1+ +ETOxQvdibBjWzwloPn9s9h6PYq2lY9sJpx8iQkEeb5mKPtf5P0B6ebClAZLSnT0IFaUQAS2zMnao +lQ2zepr7BxB4EW/hj8e6DyUadCrlHJhBmd8hh+iVBmoKs2pHdmX2Os+PYhcZewoozRrSgx4hxyy/ +vv9haLdnG7t4TY3OZ+XkwY63I2binZB1NJipNiuKmpS5nezMirH4JYlcWrYvjB9teSSnUmjDhDXi +Zo1jDiVN1Rmy5nk3pyKdVDECAwEAAaNqMGgwHQYDVR0OBBYEFB4M97Zn8uGSJglFwFU5Lnc/Qkqi +MAwGA1UdEwQFMAMBAf8wOQYEZyoHAAQxMC8wLQIBADAJBgUrDgMCGgUAMAcGBWcqAwAABBRFsMLH +ClZ87lt4DJX5GFPBphzYEDANBgkqhkiG9w0BAQUFAAOCAgEACbODU1kBPpVJufGBuvl2ICO1J2B0 +1GqZNF5sAFPZn/KmsSQHRGoqxqWOeBLoR9lYGxMqXnmbnwoqZ6YlPwZpVnPDimZI+ymBV3QGypzq +KOg4ZyYr8dW1P2WT+DZdjo2NQCCHGervJ8A9tDkPJXtoUHRVnAxZfVo9QZQlUgjgRywVMRnVvwdV +xrsStZf0X4OFunHB2WyBEXYKCrC/gpf36j36+uwtqSiUO1bd0lEursC9CBWMd1I0ltabrNMdjmEP +NXubrjlpC2JgQCA2j6/7Nu4tCEoduL+bXPjqpRugc6bY+G7gMwRfaKonh+3ZwZCc7b3jajWvY9+r +GNm65ulK6lCKD2GTHuItGeIwlDWSXQ62B68ZgI9HkFFLLk3dheLSClIKF5r8GrBQAuUBo2M3IUxE +xJtRmREOc5wGj1QupyheRDmHVi03vYVElOEMSyycw5KFNGHLD7ibSkNS/jQ6fbjpKdx2qcgw+BRx +gMYeNkh0IkFch4LoGHGLQYlE535YW6i4jRPpp2zDR+2zGp1iro2C6pSe3VkQw63d4k3jMdXH7Ojy +sP6SHhYKGvzZ8/gntsm+HbRsZJB/9OTEW9c3rkIO3aQab3yIVMUWbuF6aC74Or8NpDyJO3inTmOD +BCEIZ43ygknQW/2xzQ+DhNQ+IIX3Sj0rnP0qCglN6oH4EZw= +-----END CERTIFICATE----- + +certSIGN ROOT CA +================ +-----BEGIN CERTIFICATE----- +MIIDODCCAiCgAwIBAgIGIAYFFnACMA0GCSqGSIb3DQEBBQUAMDsxCzAJBgNVBAYTAlJPMREwDwYD +VQQKEwhjZXJ0U0lHTjEZMBcGA1UECxMQY2VydFNJR04gUk9PVCBDQTAeFw0wNjA3MDQxNzIwMDRa +Fw0zMTA3MDQxNzIwMDRaMDsxCzAJBgNVBAYTAlJPMREwDwYDVQQKEwhjZXJ0U0lHTjEZMBcGA1UE +CxMQY2VydFNJR04gUk9PVCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALczuX7I +JUqOtdu0KBuqV5Do0SLTZLrTk+jUrIZhQGpgV2hUhE28alQCBf/fm5oqrl0Hj0rDKH/v+yv6efHH +rfAQUySQi2bJqIirr1qjAOm+ukbuW3N7LBeCgV5iLKECZbO9xSsAfsT8AzNXDe3i+s5dRdY4zTW2 +ssHQnIFKquSyAVwdj1+ZxLGt24gh65AIgoDzMKND5pCCrlUoSe1b16kQOA7+j0xbm0bqQfWwCHTD +0IgztnzXdN/chNFDDnU5oSVAKOp4yw4sLjmdjItuFhwvJoIQ4uNllAoEwF73XVv4EOLQunpL+943 +AAAaWyjj0pxzPjKHmKHJUS/X3qwzs08CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8B +Af8EBAMCAcYwHQYDVR0OBBYEFOCMm9slSbPxfIbWskKHC9BroNnkMA0GCSqGSIb3DQEBBQUAA4IB +AQA+0hyJLjX8+HXd5n9liPRyTMks1zJO890ZeUe9jjtbkw9QSSQTaxQGcu8J06Gh40CEyecYMnQ8 +SG4Pn0vU9x7Tk4ZkVJdjclDVVc/6IJMCopvDI5NOFlV2oHB5bc0hH88vLbwZ44gx+FkagQnIl6Z0 +x2DEW8xXjrJ1/RsCCdtZb3KTafcxQdaIOL+Hsr0Wefmq5L6IJd1hJyMctTEHBDa0GpC9oHRxUIlt +vBTjD4au8as+x6AJzKNI0eDbZOeStc+vckNwi/nDhDwTqn6Sm1dTk/pwwpEOMfmbZ13pljheX7Nz +TogVZ96edhBiIL5VaZVDADlN9u6wWk5JRFRYX0KD +-----END CERTIFICATE----- + +GeoTrust Primary Certification Authority - G3 +============================================= +-----BEGIN CERTIFICATE----- +MIID/jCCAuagAwIBAgIQFaxulBmyeUtB9iepwxgPHzANBgkqhkiG9w0BAQsFADCBmDELMAkGA1UE +BhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xOTA3BgNVBAsTMChjKSAyMDA4IEdlb1RydXN0 +IEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTE2MDQGA1UEAxMtR2VvVHJ1c3QgUHJpbWFy +eSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEczMB4XDTA4MDQwMjAwMDAwMFoXDTM3MTIwMTIz +NTk1OVowgZgxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTkwNwYDVQQLEzAo +YykgMjAwOCBHZW9UcnVzdCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxNjA0BgNVBAMT +LUdlb1RydXN0IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMzCCASIwDQYJKoZI +hvcNAQEBBQADggEPADCCAQoCggEBANziXmJYHTNXOTIz+uvLh4yn1ErdBojqZI4xmKU4kB6Yzy5j +K/BGvESyiaHAKAxJcCGVn2TAppMSAmUmhsalifD614SgcK9PGpc/BkTVyetyEH3kMSj7HGHmKAdE +c5IiaacDiGydY8hS2pgn5whMcD60yRLBxWeDXTPzAxHsatBT4tG6NmCUgLthY2xbF37fQJQeqw3C +IShwiP/WJmxsYAQlTlV+fe+/lEjetx3dcI0FX4ilm/LC7urRQEFtYjgdVgbFA0dRIBn8exALDmKu +dlW/X3e+PkkBUz2YJQN2JFodtNuJ6nnltrM7P7pMKEF/BqxqjsHQ9gUdfeZChuOl1UcCAwEAAaNC +MEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMR5yo6hTgMdHNxr +2zFblD4/MH8tMA0GCSqGSIb3DQEBCwUAA4IBAQAtxRPPVoB7eni9n64smefv2t+UXglpp+duaIy9 +cr5HqQ6XErhK8WTTOd8lNNTBzU6B8A8ExCSzNJbGpqow32hhc9f5joWJ7w5elShKKiePEI4ufIbE +Ap7aDHdlDkQNkv39sxY2+hENHYwOB4lqKVb3cvTdFZx3NWZXqxNT2I7BQMXXExZacse3aQHEerGD +AWh9jUGhlBjBJVz88P6DAod8DQ3PLghcSkANPuyBYeYk28rgDi0Hsj5W3I31QYUHSJsMC8tJP33s +t/3LjWeJGqvtux6jAAgIFyqCXDFdRootD4abdNlF+9RAsXqqaC2Gspki4cErx5z481+oghLrGREt +-----END CERTIFICATE----- + +thawte Primary Root CA - G2 +=========================== +-----BEGIN CERTIFICATE----- +MIICiDCCAg2gAwIBAgIQNfwmXNmET8k9Jj1Xm67XVjAKBggqhkjOPQQDAzCBhDELMAkGA1UEBhMC +VVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjE4MDYGA1UECxMvKGMpIDIwMDcgdGhhd3RlLCBJbmMu +IC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxJDAiBgNVBAMTG3RoYXd0ZSBQcmltYXJ5IFJvb3Qg +Q0EgLSBHMjAeFw0wNzExMDUwMDAwMDBaFw0zODAxMTgyMzU5NTlaMIGEMQswCQYDVQQGEwJVUzEV +MBMGA1UEChMMdGhhd3RlLCBJbmMuMTgwNgYDVQQLEy8oYykgMjAwNyB0aGF3dGUsIEluYy4gLSBG +b3IgYXV0aG9yaXplZCB1c2Ugb25seTEkMCIGA1UEAxMbdGhhd3RlIFByaW1hcnkgUm9vdCBDQSAt +IEcyMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEotWcgnuVnfFSeIf+iha/BebfowJPDQfGAFG6DAJS +LSKkQjnE/o/qycG+1E3/n3qe4rF8mq2nhglzh9HnmuN6papu+7qzcMBniKI11KOasf2twu8x+qi5 +8/sIxpHR+ymVo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQU +mtgAMADna3+FGO6Lts6KDPgR4bswCgYIKoZIzj0EAwMDaQAwZgIxAN344FdHW6fmCsO99YCKlzUN +G4k8VIZ3KMqh9HneteY4sPBlcIx/AlTCv//YoT7ZzwIxAMSNlPzcU9LcnXgWHxUzI1NS41oxXZ3K +rr0TKUQNJ1uo52icEvdYPy5yAlejj6EULg== +-----END CERTIFICATE----- + +thawte Primary Root CA - G3 +=========================== +-----BEGIN CERTIFICATE----- +MIIEKjCCAxKgAwIBAgIQYAGXt0an6rS0mtZLL/eQ+zANBgkqhkiG9w0BAQsFADCBrjELMAkGA1UE +BhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2 +aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMpIDIwMDggdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhv +cml6ZWQgdXNlIG9ubHkxJDAiBgNVBAMTG3RoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EgLSBHMzAeFw0w +ODA0MDIwMDAwMDBaFw0zNzEyMDEyMzU5NTlaMIGuMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMdGhh +d3RlLCBJbmMuMSgwJgYDVQQLEx9DZXJ0aWZpY2F0aW9uIFNlcnZpY2VzIERpdmlzaW9uMTgwNgYD +VQQLEy8oYykgMjAwOCB0aGF3dGUsIEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTEkMCIG +A1UEAxMbdGhhd3RlIFByaW1hcnkgUm9vdCBDQSAtIEczMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A +MIIBCgKCAQEAsr8nLPvb2FvdeHsbnndmgcs+vHyu86YnmjSjaDFxODNi5PNxZnmxqWWjpYvVj2At +P0LMqmsywCPLLEHd5N/8YZzic7IilRFDGF/Eth9XbAoFWCLINkw6fKXRz4aviKdEAhN0cXMKQlkC ++BsUa0Lfb1+6a4KinVvnSr0eAXLbS3ToO39/fR8EtCab4LRarEc9VbjXsCZSKAExQGbY2SS99irY +7CFJXJv2eul/VTV+lmuNk5Mny5K76qxAwJ/C+IDPXfRa3M50hqY+bAtTyr2SzhkGcuYMXDhpxwTW +vGzOW/b3aJzcJRVIiKHpqfiYnODz1TEoYRFsZ5aNOZnLwkUkOQIDAQABo0IwQDAPBgNVHRMBAf8E +BTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUrWyqlGCc7eT/+j4KdCtjA/e2Wb8wDQYJ +KoZIhvcNAQELBQADggEBABpA2JVlrAmSicY59BDlqQ5mU1143vokkbvnRFHfxhY0Cu9qRFHqKweK +A3rD6z8KLFIWoCtDuSWQP3CpMyVtRRooOyfPqsMpQhvfO0zAMzRbQYi/aytlryjvsvXDqmbOe1bu +t8jLZ8HJnBoYuMTDSQPxYA5QzUbF83d597YV4Djbxy8ooAw/dyZ02SUS2jHaGh7cKUGRIjxpp7sC +8rZcJwOJ9Abqm+RyguOhCcHpABnTPtRwa7pxpqpYrvS76Wy274fMm7v/OeZWYdMKp8RcTGB7BXcm +er/YB1IsYvdwY9k5vG8cwnncdimvzsUsZAReiDZuMdRAGmI0Nj81Aa6sY6A= +-----END CERTIFICATE----- + +GeoTrust Primary Certification Authority - G2 +============================================= +-----BEGIN CERTIFICATE----- +MIICrjCCAjWgAwIBAgIQPLL0SAoA4v7rJDteYD7DazAKBggqhkjOPQQDAzCBmDELMAkGA1UEBhMC +VVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xOTA3BgNVBAsTMChjKSAyMDA3IEdlb1RydXN0IElu +Yy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTE2MDQGA1UEAxMtR2VvVHJ1c3QgUHJpbWFyeSBD +ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMB4XDTA3MTEwNTAwMDAwMFoXDTM4MDExODIzNTk1 +OVowgZgxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTkwNwYDVQQLEzAoYykg +MjAwNyBHZW9UcnVzdCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxNjA0BgNVBAMTLUdl +b1RydXN0IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMjB2MBAGByqGSM49AgEG +BSuBBAAiA2IABBWx6P0DFUPlrOuHNxFi79KDNlJ9RVcLSo17VDs6bl8VAsBQps8lL33KSLjHUGMc +KiEIfJo22Av+0SbFWDEwKCXzXV2juLaltJLtbCyf691DiaI8S0iRHVDsJt/WYC69IaNCMEAwDwYD +VR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBVfNVdRVfslsq0DafwBo/q+ +EVXVMAoGCCqGSM49BAMDA2cAMGQCMGSWWaboCd6LuvpaiIjwH5HTRqjySkwCY/tsXzjbLkGTqQ7m +ndwxHLKgpxgceeHHNgIwOlavmnRs9vuD4DPTCF+hnMJbn0bWtsuRBmOiBuczrD6ogRLQy7rQkgu2 +npaqBA+K +-----END CERTIFICATE----- + +VeriSign Universal Root Certification Authority +=============================================== +-----BEGIN CERTIFICATE----- +MIIEuTCCA6GgAwIBAgIQQBrEZCGzEyEDDrvkEhrFHTANBgkqhkiG9w0BAQsFADCBvTELMAkGA1UE +BhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBO +ZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwOCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVk +IHVzZSBvbmx5MTgwNgYDVQQDEy9WZXJpU2lnbiBVbml2ZXJzYWwgUm9vdCBDZXJ0aWZpY2F0aW9u +IEF1dGhvcml0eTAeFw0wODA0MDIwMDAwMDBaFw0zNzEyMDEyMzU5NTlaMIG9MQswCQYDVQQGEwJV +UzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdv +cmsxOjA4BgNVBAsTMShjKSAyMDA4IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNl +IG9ubHkxODA2BgNVBAMTL1ZlcmlTaWduIFVuaXZlcnNhbCBSb290IENlcnRpZmljYXRpb24gQXV0 +aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAx2E3XrEBNNti1xWb/1hajCMj +1mCOkdeQmIN65lgZOIzF9uVkhbSicfvtvbnazU0AtMgtc6XHaXGVHzk8skQHnOgO+k1KxCHfKWGP +MiJhgsWHH26MfF8WIFFE0XBPV+rjHOPMee5Y2A7Cs0WTwCznmhcrewA3ekEzeOEz4vMQGn+HLL72 +9fdC4uW/h2KJXwBL38Xd5HVEMkE6HnFuacsLdUYI0crSK5XQz/u5QGtkjFdN/BMReYTtXlT2NJ8I +AfMQJQYXStrxHXpma5hgZqTZ79IugvHw7wnqRMkVauIDbjPTrJ9VAMf2CGqUuV/c4DPxhGD5WycR +tPwW8rtWaoAljQIDAQABo4GyMIGvMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMG0G +CCsGAQUFBwEMBGEwX6FdoFswWTBXMFUWCWltYWdlL2dpZjAhMB8wBwYFKw4DAhoEFI/l0xqGrI2O +a8PPgGrUSBgsexkuMCUWI2h0dHA6Ly9sb2dvLnZlcmlzaWduLmNvbS92c2xvZ28uZ2lmMB0GA1Ud +DgQWBBS2d/ppSEefUxLVwuoHMnYH0ZcHGTANBgkqhkiG9w0BAQsFAAOCAQEASvj4sAPmLGd75JR3 +Y8xuTPl9Dg3cyLk1uXBPY/ok+myDjEedO2Pzmvl2MpWRsXe8rJq+seQxIcaBlVZaDrHC1LGmWazx +Y8u4TB1ZkErvkBYoH1quEPuBUDgMbMzxPcP1Y+Oz4yHJJDnp/RVmRvQbEdBNc6N9Rvk97ahfYtTx +P/jgdFcrGJ2BtMQo2pSXpXDrrB2+BxHw1dvd5Yzw1TKwg+ZX4o+/vqGqvz0dtdQ46tewXDpPaj+P +wGZsY6rp2aQW9IHRlRQOfc2VNNnSj3BzgXucfr2YYdhFh5iQxeuGMMY1v/D/w1WIg0vvBZIGcfK4 +mJO37M2CYfE45k+XmCpajQ== +-----END CERTIFICATE----- + +VeriSign Class 3 Public Primary Certification Authority - G4 +============================================================ +-----BEGIN CERTIFICATE----- +MIIDhDCCAwqgAwIBAgIQL4D+I4wOIg9IZxIokYesszAKBggqhkjOPQQDAzCByjELMAkGA1UEBhMC +VVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3 +b3JrMTowOAYDVQQLEzEoYykgMjAwNyBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVz +ZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmlj +YXRpb24gQXV0aG9yaXR5IC0gRzQwHhcNMDcxMTA1MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCByjEL +MAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBU +cnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNyBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRo +b3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5 +IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IC0gRzQwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASnVnp8 +Utpkmw4tXNherJI9/gHmGUo9FANL+mAnINmDiWn6VMaaGF5VKmTeBvaNSjutEDxlPZCIBIngMGGz +rl0Bp3vefLK+ymVhAIau2o970ImtTR1ZmkGxvEeA3J5iw/mjgbIwga8wDwYDVR0TAQH/BAUwAwEB +/zAOBgNVHQ8BAf8EBAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2gWzBZMFcwVRYJaW1hZ2UvZ2lmMCEw +HzAHBgUrDgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYjaHR0cDovL2xvZ28udmVyaXNpZ24u +Y29tL3ZzbG9nby5naWYwHQYDVR0OBBYEFLMWkf3upm7ktS5Jj4d4gYDs5bG1MAoGCCqGSM49BAMD +A2gAMGUCMGYhDBgmYFo4e1ZC4Kf8NoRRkSAsdk1DPcQdhCPQrNZ8NQbOzWm9kA3bbEhCHQ6qQgIx +AJw9SDkjOVgaFRJZap7v1VmyHVIsmXHNxynfGyphe3HR3vPA5Q06Sqotp9iGKt0uEA== +-----END CERTIFICATE----- + +NetLock Arany (Class Gold) Főtanúsítvány +======================================== +-----BEGIN CERTIFICATE----- +MIIEFTCCAv2gAwIBAgIGSUEs5AAQMA0GCSqGSIb3DQEBCwUAMIGnMQswCQYDVQQGEwJIVTERMA8G +A1UEBwwIQnVkYXBlc3QxFTATBgNVBAoMDE5ldExvY2sgS2Z0LjE3MDUGA1UECwwuVGFuw7pzw610 +dsOhbnlraWFkw7NrIChDZXJ0aWZpY2F0aW9uIFNlcnZpY2VzKTE1MDMGA1UEAwwsTmV0TG9jayBB +cmFueSAoQ2xhc3MgR29sZCkgRsWRdGFuw7pzw610dsOhbnkwHhcNMDgxMjExMTUwODIxWhcNMjgx +MjA2MTUwODIxWjCBpzELMAkGA1UEBhMCSFUxETAPBgNVBAcMCEJ1ZGFwZXN0MRUwEwYDVQQKDAxO +ZXRMb2NrIEtmdC4xNzA1BgNVBAsMLlRhbsO6c8OtdHbDoW55a2lhZMOzayAoQ2VydGlmaWNhdGlv +biBTZXJ2aWNlcykxNTAzBgNVBAMMLE5ldExvY2sgQXJhbnkgKENsYXNzIEdvbGQpIEbFkXRhbsO6 +c8OtdHbDoW55MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxCRec75LbRTDofTjl5Bu +0jBFHjzuZ9lk4BqKf8owyoPjIMHj9DrTlF8afFttvzBPhCf2nx9JvMaZCpDyD/V/Q4Q3Y1GLeqVw +/HpYzY6b7cNGbIRwXdrzAZAj/E4wqX7hJ2Pn7WQ8oLjJM2P+FpD/sLj916jAwJRDC7bVWaaeVtAk +H3B5r9s5VA1lddkVQZQBr17s9o3x/61k/iCa11zr/qYfCGSji3ZVrR47KGAuhyXoqq8fxmRGILdw +fzzeSNuWU7c5d+Qa4scWhHaXWy+7GRWF+GmF9ZmnqfI0p6m2pgP8b4Y9VHx2BJtr+UBdADTHLpl1 +neWIA6pN+APSQnbAGwIDAKiLo0UwQzASBgNVHRMBAf8ECDAGAQH/AgEEMA4GA1UdDwEB/wQEAwIB +BjAdBgNVHQ4EFgQUzPpnk/C2uNClwB7zU/2MU9+D15YwDQYJKoZIhvcNAQELBQADggEBAKt/7hwW +qZw8UQCgwBEIBaeZ5m8BiFRhbvG5GK1Krf6BQCOUL/t1fC8oS2IkgYIL9WHxHG64YTjrgfpioTta +YtOUZcTh5m2C+C8lcLIhJsFyUR+MLMOEkMNaj7rP9KdlpeuY0fsFskZ1FSNqb4VjMIDw1Z4fKRzC +bLBQWV2QWzuoDTDPv31/zvGdg73JRm4gpvlhUbohL3u+pRVjodSVh/GeufOJ8z2FuLjbvrW5Kfna +NwUASZQDhETnv0Mxz3WLJdH0pmT1kvarBes96aULNmLazAZfNou2XjG4Kvte9nHfRCaexOYNkbQu +dZWAUWpLMKawYqGT8ZvYzsRjdT9ZR7E= +-----END CERTIFICATE----- + +Staat der Nederlanden Root CA - G2 +================================== +-----BEGIN CERTIFICATE----- +MIIFyjCCA7KgAwIBAgIEAJiWjDANBgkqhkiG9w0BAQsFADBaMQswCQYDVQQGEwJOTDEeMBwGA1UE +CgwVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSswKQYDVQQDDCJTdGFhdCBkZXIgTmVkZXJsYW5kZW4g +Um9vdCBDQSAtIEcyMB4XDTA4MDMyNjExMTgxN1oXDTIwMDMyNTExMDMxMFowWjELMAkGA1UEBhMC +TkwxHjAcBgNVBAoMFVN0YWF0IGRlciBOZWRlcmxhbmRlbjErMCkGA1UEAwwiU3RhYXQgZGVyIE5l +ZGVybGFuZGVuIFJvb3QgQ0EgLSBHMjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMVZ +5291qj5LnLW4rJ4L5PnZyqtdj7U5EILXr1HgO+EASGrP2uEGQxGZqhQlEq0i6ABtQ8SpuOUfiUtn +vWFI7/3S4GCI5bkYYCjDdyutsDeqN95kWSpGV+RLufg3fNU254DBtvPUZ5uW6M7XxgpT0GtJlvOj +CwV3SPcl5XCsMBQgJeN/dVrlSPhOewMHBPqCYYdu8DvEpMfQ9XQ+pV0aCPKbJdL2rAQmPlU6Yiil +e7Iwr/g3wtG61jj99O9JMDeZJiFIhQGp5Rbn3JBV3w/oOM2ZNyFPXfUib2rFEhZgF1XyZWampzCR +OME4HYYEhLoaJXhena/MUGDWE4dS7WMfbWV9whUYdMrhfmQpjHLYFhN9C0lK8SgbIHRrxT3dsKpI +CT0ugpTNGmXZK4iambwYfp/ufWZ8Pr2UuIHOzZgweMFvZ9C+X+Bo7d7iscksWXiSqt8rYGPy5V65 +48r6f1CGPqI0GAwJaCgRHOThuVw+R7oyPxjMW4T182t0xHJ04eOLoEq9jWYv6q012iDTiIJh8BIi +trzQ1aTsr1SIJSQ8p22xcik/Plemf1WvbibG/ufMQFxRRIEKeN5KzlW/HdXZt1bv8Hb/C3m1r737 +qWmRRpdogBQ2HbN/uymYNqUg+oJgYjOk7Na6B6duxc8UpufWkjTYgfX8HV2qXB72o007uPc5AgMB +AAGjgZcwgZQwDwYDVR0TAQH/BAUwAwEB/zBSBgNVHSAESzBJMEcGBFUdIAAwPzA9BggrBgEFBQcC +ARYxaHR0cDovL3d3dy5wa2lvdmVyaGVpZC5ubC9wb2xpY2llcy9yb290LXBvbGljeS1HMjAOBgNV +HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJFoMocVHYnitfGsNig0jQt8YojrMA0GCSqGSIb3DQEBCwUA +A4ICAQCoQUpnKpKBglBu4dfYszk78wIVCVBR7y29JHuIhjv5tLySCZa59sCrI2AGeYwRTlHSeYAz ++51IvuxBQ4EffkdAHOV6CMqqi3WtFMTC6GY8ggen5ieCWxjmD27ZUD6KQhgpxrRW/FYQoAUXvQwj +f/ST7ZwaUb7dRUG/kSS0H4zpX897IZmflZ85OkYcbPnNe5yQzSipx6lVu6xiNGI1E0sUOlWDuYaN +kqbG9AclVMwWVxJKgnjIFNkXgiYtXSAfea7+1HAWFpWD2DU5/1JddRwWxRNVz0fMdWVSSt7wsKfk +CpYL+63C4iWEst3kvX5ZbJvw8NjnyvLplzh+ib7M+zkXYT9y2zqR2GUBGR2tUKRXCnxLvJxxcypF +URmFzI79R6d0lR2o0a9OF7FpJsKqeFdbxU2n5Z4FF5TKsl+gSRiNNOkmbEgeqmiSBeGCc1qb3Adb +CG19ndeNIdn8FCCqwkXfP+cAslHkwvgFuXkajDTznlvkN1trSt8sV4pAWja63XVECDdCcAz+3F4h +oKOKwJCcaNpQ5kUQR3i2TtJlycM33+FCY7BXN0Ute4qcvwXqZVUz9zkQxSgqIXobisQk+T8VyJoV +IPVVYpbtbZNQvOSqeK3Zywplh6ZmwcSBo3c6WB4L7oOLnR7SUqTMHW+wmG2UMbX4cQrcufx9MmDm +66+KAQ== +-----END CERTIFICATE----- + +Hongkong Post Root CA 1 +======================= +-----BEGIN CERTIFICATE----- +MIIDMDCCAhigAwIBAgICA+gwDQYJKoZIhvcNAQEFBQAwRzELMAkGA1UEBhMCSEsxFjAUBgNVBAoT +DUhvbmdrb25nIFBvc3QxIDAeBgNVBAMTF0hvbmdrb25nIFBvc3QgUm9vdCBDQSAxMB4XDTAzMDUx +NTA1MTMxNFoXDTIzMDUxNTA0NTIyOVowRzELMAkGA1UEBhMCSEsxFjAUBgNVBAoTDUhvbmdrb25n +IFBvc3QxIDAeBgNVBAMTF0hvbmdrb25nIFBvc3QgUm9vdCBDQSAxMIIBIjANBgkqhkiG9w0BAQEF +AAOCAQ8AMIIBCgKCAQEArP84tulmAknjorThkPlAj3n54r15/gK97iSSHSL22oVyaf7XPwnU3ZG1 +ApzQjVrhVcNQhrkpJsLj2aDxaQMoIIBFIi1WpztUlVYiWR8o3x8gPW2iNr4joLFutbEnPzlTCeqr +auh0ssJlXI6/fMN4hM2eFvz1Lk8gKgifd/PFHsSaUmYeSF7jEAaPIpjhZY4bXSNmO7ilMlHIhqqh +qZ5/dpTCpmy3QfDVyAY45tQM4vM7TG1QjMSDJ8EThFk9nnV0ttgCXjqQesBCNnLsak3c78QA3xMY +V18meMjWCnl3v/evt3a5pQuEF10Q6m/hq5URX208o1xNg1vysxmKgIsLhwIDAQABoyYwJDASBgNV +HRMBAf8ECDAGAQH/AgEDMA4GA1UdDwEB/wQEAwIBxjANBgkqhkiG9w0BAQUFAAOCAQEADkbVPK7i +h9legYsCmEEIjEy82tvuJxuC52pF7BaLT4Wg87JwvVqWuspube5Gi27nKi6Wsxkz67SfqLI37pio +l7Yutmcn1KZJ/RyTZXaeQi/cImyaT/JaFTmxcdcrUehtHJjA2Sr0oYJ71clBoiMBdDhViw+5Lmei +IAQ32pwL0xch4I+XeTRvhEgCIDMb5jREn5Fw9IBehEPCKdJsEhTkYY2sEJCehFC78JZvRZ+K88ps +T/oROhUVRsPNH4NbLUES7VBnQRM9IauUiqpOfMGx+6fWtScvl6tu4B3i0RwsH0Ti/L6RoZz71ilT +c4afU9hDDl3WY4JxHYB0yvbiAmvZWg== +-----END CERTIFICATE----- + +SecureSign RootCA11 +=================== +-----BEGIN CERTIFICATE----- +MIIDbTCCAlWgAwIBAgIBATANBgkqhkiG9w0BAQUFADBYMQswCQYDVQQGEwJKUDErMCkGA1UEChMi +SmFwYW4gQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcywgSW5jLjEcMBoGA1UEAxMTU2VjdXJlU2lnbiBS +b290Q0ExMTAeFw0wOTA0MDgwNDU2NDdaFw0yOTA0MDgwNDU2NDdaMFgxCzAJBgNVBAYTAkpQMSsw +KQYDVQQKEyJKYXBhbiBDZXJ0aWZpY2F0aW9uIFNlcnZpY2VzLCBJbmMuMRwwGgYDVQQDExNTZWN1 +cmVTaWduIFJvb3RDQTExMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA/XeqpRyQBTvL +TJszi1oURaTnkBbR31fSIRCkF/3frNYfp+TbfPfs37gD2pRY/V1yfIw/XwFndBWW4wI8h9uuywGO +wvNmxoVF9ALGOrVisq/6nL+k5tSAMJjzDbaTj6nU2DbysPyKyiyhFTOVMdrAG/LuYpmGYz+/3ZMq +g6h2uRMft85OQoWPIucuGvKVCbIFtUROd6EgvanyTgp9UK31BQ1FT0Zx/Sg+U/sE2C3XZR1KG/rP +O7AxmjVuyIsG0wCR8pQIZUyxNAYAeoni8McDWc/V1uinMrPmmECGxc0nEovMe863ETxiYAcjPitA +bpSACW22s293bzUIUPsCh8U+iQIDAQABo0IwQDAdBgNVHQ4EFgQUW/hNT7KlhtQ60vFjmqC+CfZX +t94wDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAKCh +OBZmLqdWHyGcBvod7bkixTgm2E5P7KN/ed5GIaGHd48HCJqypMWvDzKYC3xmKbabfSVSSUOrTC4r +bnpwrxYO4wJs+0LmGJ1F2FXI6Dvd5+H0LgscNFxsWEr7jIhQX5Ucv+2rIrVls4W6ng+4reV6G4pQ +Oh29Dbx7VFALuUKvVaAYga1lme++5Jy/xIWrQbJUb9wlze144o4MjQlJ3WN7WmmWAiGovVJZ6X01 +y8hSyn+B/tlr0/cR7SXf+Of5pPpyl4RTDaXQMhhRdlkUbA/r7F+AjHVDg8OFmP9Mni0N5HeDk061 +lgeLKBObjBmNQSdJQO7e5iNEOdyhIta6A/I= +-----END CERTIFICATE----- + +Microsec e-Szigno Root CA 2009 +============================== +-----BEGIN CERTIFICATE----- +MIIECjCCAvKgAwIBAgIJAMJ+QwRORz8ZMA0GCSqGSIb3DQEBCwUAMIGCMQswCQYDVQQGEwJIVTER +MA8GA1UEBwwIQnVkYXBlc3QxFjAUBgNVBAoMDU1pY3Jvc2VjIEx0ZC4xJzAlBgNVBAMMHk1pY3Jv +c2VjIGUtU3ppZ25vIFJvb3QgQ0EgMjAwOTEfMB0GCSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5o +dTAeFw0wOTA2MTYxMTMwMThaFw0yOTEyMzAxMTMwMThaMIGCMQswCQYDVQQGEwJIVTERMA8GA1UE +BwwIQnVkYXBlc3QxFjAUBgNVBAoMDU1pY3Jvc2VjIEx0ZC4xJzAlBgNVBAMMHk1pY3Jvc2VjIGUt +U3ppZ25vIFJvb3QgQ0EgMjAwOTEfMB0GCSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5odTCCASIw +DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOn4j/NjrdqG2KfgQvvPkd6mJviZpWNwrZuuyjNA +fW2WbqEORO7hE52UQlKavXWFdCyoDh2Tthi3jCyoz/tccbna7P7ofo/kLx2yqHWH2Leh5TvPmUpG +0IMZfcChEhyVbUr02MelTTMuhTlAdX4UfIASmFDHQWe4oIBhVKZsTh/gnQ4H6cm6M+f+wFUoLAKA +pxn1ntxVUwOXewdI/5n7N4okxFnMUBBjjqqpGrCEGob5X7uxUG6k0QrM1XF+H6cbfPVTbiJfyyvm +1HxdrtbCxkzlBQHZ7Vf8wSN5/PrIJIOV87VqUQHQd9bpEqH5GoP7ghu5sJf0dgYzQ0mg/wu1+rUC +AwEAAaOBgDB+MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBTLD8bf +QkPMPcu1SCOhGnqmKrs0aDAfBgNVHSMEGDAWgBTLD8bfQkPMPcu1SCOhGnqmKrs0aDAbBgNVHREE +FDASgRBpbmZvQGUtc3ppZ25vLmh1MA0GCSqGSIb3DQEBCwUAA4IBAQDJ0Q5eLtXMs3w+y/w9/w0o +lZMEyL/azXm4Q5DwpL7v8u8hmLzU1F0G9u5C7DBsoKqpyvGvivo/C3NqPuouQH4frlRheesuCDfX +I/OMn74dseGkddug4lQUsbocKaQY9hK6ohQU4zE1yED/t+AFdlfBHFny+L/k7SViXITwfn4fs775 +tyERzAMBVnCnEJIeGzSBHq2cGsMEPO0CYdYeBvNfOofyK/FFh+U9rNHHV4S9a67c2Pm2G2JwCz02 +yULyMtd6YebS2z3PyKnJm9zbWETXbzivf3jTo60adbocwTZ8jx5tHMN1Rq41Bab2XD0h7lbwyYIi +LXpUq3DDfSJlgnCW +-----END CERTIFICATE----- + +GlobalSign Root CA - R3 +======================= +-----BEGIN CERTIFICATE----- +MIIDXzCCAkegAwIBAgILBAAAAAABIVhTCKIwDQYJKoZIhvcNAQELBQAwTDEgMB4GA1UECxMXR2xv +YmFsU2lnbiBSb290IENBIC0gUjMxEzARBgNVBAoTCkdsb2JhbFNpZ24xEzARBgNVBAMTCkdsb2Jh +bFNpZ24wHhcNMDkwMzE4MTAwMDAwWhcNMjkwMzE4MTAwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxT +aWduIFJvb3QgQ0EgLSBSMzETMBEGA1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2ln +bjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMwldpB5BngiFvXAg7aEyiie/QV2EcWt +iHL8RgJDx7KKnQRfJMsuS+FggkbhUqsMgUdwbN1k0ev1LKMPgj0MK66X17YUhhB5uzsTgHeMCOFJ +0mpiLx9e+pZo34knlTifBtc+ycsmWQ1z3rDI6SYOgxXG71uL0gRgykmmKPZpO/bLyCiR5Z2KYVc3 +rHQU3HTgOu5yLy6c+9C7v/U9AOEGM+iCK65TpjoWc4zdQQ4gOsC0p6Hpsk+QLjJg6VfLuQSSaGjl +OCZgdbKfd/+RFO+uIEn8rUAVSNECMWEZXriX7613t2Saer9fwRPvm2L7DWzgVGkWqQPabumDk3F2 +xmmFghcCAwEAAaNCMEAwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYE +FI/wS3+oLkUkrk1Q+mOai97i3Ru8MA0GCSqGSIb3DQEBCwUAA4IBAQBLQNvAUKr+yAzv95ZURUm7 +lgAJQayzE4aGKAczymvmdLm6AC2upArT9fHxD4q/c2dKg8dEe3jgr25sbwMpjjM5RcOO5LlXbKr8 +EpbsU8Yt5CRsuZRj+9xTaGdWPoO4zzUhw8lo/s7awlOqzJCK6fBdRoyV3XpYKBovHd7NADdBj+1E +bddTKJd+82cEHhXXipa0095MJ6RMG3NzdvQXmcIfeg7jLQitChws/zyrVQ4PkX4268NXSb7hLi18 +YIvDQVETI53O9zJrlAGomecsMx86OyXShkDOOyyGeMlhLxS67ttVb9+E7gUJTb0o2HLO02JQZR7r +kpeDMdmztcpHWD9f +-----END CERTIFICATE----- + +Autoridad de Certificacion Firmaprofesional CIF A62634068 +========================================================= +-----BEGIN CERTIFICATE----- +MIIGFDCCA/ygAwIBAgIIU+w77vuySF8wDQYJKoZIhvcNAQEFBQAwUTELMAkGA1UEBhMCRVMxQjBA +BgNVBAMMOUF1dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZpcm1hcHJvZmVzaW9uYWwgQ0lGIEE2 +MjYzNDA2ODAeFw0wOTA1MjAwODM4MTVaFw0zMDEyMzEwODM4MTVaMFExCzAJBgNVBAYTAkVTMUIw +QAYDVQQDDDlBdXRvcmlkYWQgZGUgQ2VydGlmaWNhY2lvbiBGaXJtYXByb2Zlc2lvbmFsIENJRiBB +NjI2MzQwNjgwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDKlmuO6vj78aI14H9M2uDD +Utd9thDIAl6zQyrET2qyyhxdKJp4ERppWVevtSBC5IsP5t9bpgOSL/UR5GLXMnE42QQMcas9UX4P +B99jBVzpv5RvwSmCwLTaUbDBPLutN0pcyvFLNg4kq7/DhHf9qFD0sefGL9ItWY16Ck6WaVICqjaY +7Pz6FIMMNx/Jkjd/14Et5cS54D40/mf0PmbR0/RAz15iNA9wBj4gGFrO93IbJWyTdBSTo3OxDqqH +ECNZXyAFGUftaI6SEspd/NYrspI8IM/hX68gvqB2f3bl7BqGYTM+53u0P6APjqK5am+5hyZvQWyI +plD9amML9ZMWGxmPsu2bm8mQ9QEM3xk9Dz44I8kvjwzRAv4bVdZO0I08r0+k8/6vKtMFnXkIoctX +MbScyJCyZ/QYFpM6/EfY0XiWMR+6KwxfXZmtY4laJCB22N/9q06mIqqdXuYnin1oKaPnirjaEbsX +LZmdEyRG98Xi2J+Of8ePdG1asuhy9azuJBCtLxTa/y2aRnFHvkLfuwHb9H/TKI8xWVvTyQKmtFLK +bpf7Q8UIJm+K9Lv9nyiqDdVF8xM6HdjAeI9BZzwelGSuewvF6NkBiDkal4ZkQdU7hwxu+g/GvUgU +vzlN1J5Bto+WHWOWk9mVBngxaJ43BjuAiUVhOSPHG0SjFeUc+JIwuwIDAQABo4HvMIHsMBIGA1Ud +EwEB/wQIMAYBAf8CAQEwDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBRlzeurNR4APn7VdMActHNH +DhpkLzCBpgYDVR0gBIGeMIGbMIGYBgRVHSAAMIGPMC8GCCsGAQUFBwIBFiNodHRwOi8vd3d3LmZp +cm1hcHJvZmVzaW9uYWwuY29tL2NwczBcBggrBgEFBQcCAjBQHk4AUABhAHMAZQBvACAAZABlACAA +bABhACAAQgBvAG4AYQBuAG8AdgBhACAANAA3ACAAQgBhAHIAYwBlAGwAbwBuAGEAIAAwADgAMAAx +ADcwDQYJKoZIhvcNAQEFBQADggIBABd9oPm03cXF661LJLWhAqvdpYhKsg9VSytXjDvlMd3+xDLx +51tkljYyGOylMnfX40S2wBEqgLk9am58m9Ot/MPWo+ZkKXzR4Tgegiv/J2Wv+xYVxC5xhOW1//qk +R71kMrv2JYSiJ0L1ILDCExARzRAVukKQKtJE4ZYm6zFIEv0q2skGz3QeqUvVhyj5eTSSPi5E6PaP +T481PyWzOdxjKpBrIF/EUhJOlywqrJ2X3kjyo2bbwtKDlaZmp54lD+kLM5FlClrD2VQS3a/DTg4f +Jl4N3LON7NWBcN7STyQF82xO9UxJZo3R/9ILJUFI/lGExkKvgATP0H5kSeTy36LssUzAKh3ntLFl +osS88Zj0qnAHY7S42jtM+kAiMFsRpvAFDsYCA0irhpuF3dvd6qJ2gHN99ZwExEWN57kci57q13XR +crHedUTnQn3iV2t93Jm8PYMo6oCTjcVMZcFwgbg4/EMxsvYDNEeyrPsiBsse3RdHHF9mudMaotoR +saS8I8nkvof/uZS2+F0gStRf571oe2XyFR7SOqkt6dhrJKyXWERHrVkY8SFlcN7ONGCoQPHzPKTD +KCOM/iczQ0CgFzzr6juwcqajuUpLXhZI9LK8yIySxZ2frHI2vDSANGupi5LAuBft7HZT9SQBjLMi +6Et8Vcad+qMUu2WFbm5PEn4KPJ2V +-----END CERTIFICATE----- + +Izenpe.com +========== +-----BEGIN CERTIFICATE----- +MIIF8TCCA9mgAwIBAgIQALC3WhZIX7/hy/WL1xnmfTANBgkqhkiG9w0BAQsFADA4MQswCQYDVQQG +EwJFUzEUMBIGA1UECgwLSVpFTlBFIFMuQS4xEzARBgNVBAMMCkl6ZW5wZS5jb20wHhcNMDcxMjEz +MTMwODI4WhcNMzcxMjEzMDgyNzI1WjA4MQswCQYDVQQGEwJFUzEUMBIGA1UECgwLSVpFTlBFIFMu +QS4xEzARBgNVBAMMCkl6ZW5wZS5jb20wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ +03rKDx6sp4boFmVqscIbRTJxldn+EFvMr+eleQGPicPK8lVx93e+d5TzcqQsRNiekpsUOqHnJJAK +ClaOxdgmlOHZSOEtPtoKct2jmRXagaKH9HtuJneJWK3W6wyyQXpzbm3benhB6QiIEn6HLmYRY2xU ++zydcsC8Lv/Ct90NduM61/e0aL6i9eOBbsFGb12N4E3GVFWJGjMxCrFXuaOKmMPsOzTFlUFpfnXC +PCDFYbpRR6AgkJOhkEvzTnyFRVSa0QUmQbC1TR0zvsQDyCV8wXDbO/QJLVQnSKwv4cSsPsjLkkxT +OTcj7NMB+eAJRE1NZMDhDVqHIrytG6P+JrUV86f8hBnp7KGItERphIPzidF0BqnMC9bC3ieFUCbK +F7jJeodWLBoBHmy+E60QrLUk9TiRodZL2vG70t5HtfG8gfZZa88ZU+mNFctKy6lvROUbQc/hhqfK +0GqfvEyNBjNaooXlkDWgYlwWTvDjovoDGrQscbNYLN57C9saD+veIR8GdwYDsMnvmfzAuU8Lhij+ +0rnq49qlw0dpEuDb8PYZi+17cNcC1u2HGCgsBCRMd+RIihrGO5rUD8r6ddIBQFqNeb+Lz0vPqhbB +leStTIo+F5HUsWLlguWABKQDfo2/2n+iD5dPDNMN+9fR5XJ+HMh3/1uaD7euBUbl8agW7EekFwID +AQABo4H2MIHzMIGwBgNVHREEgagwgaWBD2luZm9AaXplbnBlLmNvbaSBkTCBjjFHMEUGA1UECgw+ +SVpFTlBFIFMuQS4gLSBDSUYgQTAxMzM3MjYwLVJNZXJjLlZpdG9yaWEtR2FzdGVpeiBUMTA1NSBG +NjIgUzgxQzBBBgNVBAkMOkF2ZGEgZGVsIE1lZGl0ZXJyYW5lbyBFdG9yYmlkZWEgMTQgLSAwMTAx +MCBWaXRvcmlhLUdhc3RlaXowDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0O +BBYEFB0cZQ6o8iV7tJHP5LGx5r1VdGwFMA0GCSqGSIb3DQEBCwUAA4ICAQB4pgwWSp9MiDrAyw6l +Fn2fuUhfGI8NYjb2zRlrrKvV9pF9rnHzP7MOeIWblaQnIUdCSnxIOvVFfLMMjlF4rJUT3sb9fbga +kEyrkgPH7UIBzg/YsfqikuFgba56awmqxinuaElnMIAkejEWOVt+8Rwu3WwJrfIxwYJOubv5vr8q +hT/AQKM6WfxZSzwoJNu0FXWuDYi6LnPAvViH5ULy617uHjAimcs30cQhbIHsvm0m5hzkQiCeR7Cs +g1lwLDXWrzY0tM07+DKo7+N4ifuNRSzanLh+QBxh5z6ikixL8s36mLYp//Pye6kfLqCTVyvehQP5 +aTfLnnhqBbTFMXiJ7HqnheG5ezzevh55hM6fcA5ZwjUukCox2eRFekGkLhObNA5me0mrZJfQRsN5 +nXJQY6aYWwa9SG3YOYNw6DXwBdGqvOPbyALqfP2C2sJbUjWumDqtujWTI6cfSN01RpiyEGjkpTHC +ClguGYEQyVB1/OpaFs4R1+7vUIgtYf8/QnMFlEPVjjxOAToZpR9GTnfQXeWBIiGH/pR9hNiTrdZo +Q0iy2+tzJOeRf1SktoA+naM8THLCV8Sg1Mw4J87VBp6iSNnpn86CcDaTmjvfliHjWbcM2pE38P1Z +WrOZyGlsQyYBNWNgVYkDOnXYukrZVP/u3oDYLdE41V4tC5h9Pmzb/CaIxw== +-----END CERTIFICATE----- + +Chambers of Commerce Root - 2008 +================================ +-----BEGIN CERTIFICATE----- +MIIHTzCCBTegAwIBAgIJAKPaQn6ksa7aMA0GCSqGSIb3DQEBBQUAMIGuMQswCQYDVQQGEwJFVTFD +MEEGA1UEBxM6TWFkcmlkIChzZWUgY3VycmVudCBhZGRyZXNzIGF0IHd3dy5jYW1lcmZpcm1hLmNv +bS9hZGRyZXNzKTESMBAGA1UEBRMJQTgyNzQzMjg3MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMu +QS4xKTAnBgNVBAMTIENoYW1iZXJzIG9mIENvbW1lcmNlIFJvb3QgLSAyMDA4MB4XDTA4MDgwMTEy +Mjk1MFoXDTM4MDczMTEyMjk1MFowga4xCzAJBgNVBAYTAkVVMUMwQQYDVQQHEzpNYWRyaWQgKHNl +ZSBjdXJyZW50IGFkZHJlc3MgYXQgd3d3LmNhbWVyZmlybWEuY29tL2FkZHJlc3MpMRIwEAYDVQQF +EwlBODI3NDMyODcxGzAZBgNVBAoTEkFDIENhbWVyZmlybWEgUy5BLjEpMCcGA1UEAxMgQ2hhbWJl +cnMgb2YgQ29tbWVyY2UgUm9vdCAtIDIwMDgwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoIC +AQCvAMtwNyuAWko6bHiUfaN/Gh/2NdW928sNRHI+JrKQUrpjOyhYb6WzbZSm891kDFX29ufyIiKA +XuFixrYp4YFs8r/lfTJqVKAyGVn+H4vXPWCGhSRv4xGzdz4gljUha7MI2XAuZPeEklPWDrCQiorj +h40G072QDuKZoRuGDtqaCrsLYVAGUvGef3bsyw/QHg3PmTA9HMRFEFis1tPo1+XqxQEHd9ZR5gN/ +ikilTWh1uem8nk4ZcfUyS5xtYBkL+8ydddy/Js2Pk3g5eXNeJQ7KXOt3EgfLZEFHcpOrUMPrCXZk +NNI5t3YRCQ12RcSprj1qr7V9ZS+UWBDsXHyvfuK2GNnQm05aSd+pZgvMPMZ4fKecHePOjlO+Bd5g +D2vlGts/4+EhySnB8esHnFIbAURRPHsl18TlUlRdJQfKFiC4reRB7noI/plvg6aRArBsNlVq5331 +lubKgdaX8ZSD6e2wsWsSaR6s+12pxZjptFtYer49okQ6Y1nUCyXeG0+95QGezdIp1Z8XGQpvvwyQ +0wlf2eOKNcx5Wk0ZN5K3xMGtr/R5JJqyAQuxr1yW84Ay+1w9mPGgP0revq+ULtlVmhduYJ1jbLhj +ya6BXBg14JC7vjxPNyK5fuvPnnchpj04gftI2jE9K+OJ9dC1vX7gUMQSibMjmhAxhduub+84Mxh2 +EQIDAQABo4IBbDCCAWgwEgYDVR0TAQH/BAgwBgEB/wIBDDAdBgNVHQ4EFgQU+SSsD7K1+HnA+mCI +G8TZTQKeFxkwgeMGA1UdIwSB2zCB2IAU+SSsD7K1+HnA+mCIG8TZTQKeFxmhgbSkgbEwga4xCzAJ +BgNVBAYTAkVVMUMwQQYDVQQHEzpNYWRyaWQgKHNlZSBjdXJyZW50IGFkZHJlc3MgYXQgd3d3LmNh +bWVyZmlybWEuY29tL2FkZHJlc3MpMRIwEAYDVQQFEwlBODI3NDMyODcxGzAZBgNVBAoTEkFDIENh +bWVyZmlybWEgUy5BLjEpMCcGA1UEAxMgQ2hhbWJlcnMgb2YgQ29tbWVyY2UgUm9vdCAtIDIwMDiC +CQCj2kJ+pLGu2jAOBgNVHQ8BAf8EBAMCAQYwPQYDVR0gBDYwNDAyBgRVHSAAMCowKAYIKwYBBQUH +AgEWHGh0dHA6Ly9wb2xpY3kuY2FtZXJmaXJtYS5jb20wDQYJKoZIhvcNAQEFBQADggIBAJASryI1 +wqM58C7e6bXpeHxIvj99RZJe6dqxGfwWPJ+0W2aeaufDuV2I6A+tzyMP3iU6XsxPpcG1Lawk0lgH +3qLPaYRgM+gQDROpI9CF5Y57pp49chNyM/WqfcZjHwj0/gF/JM8rLFQJ3uIrbZLGOU8W6jx+ekbU +RWpGqOt1glanq6B8aBMz9p0w8G8nOSQjKpD9kCk18pPfNKXG9/jvjA9iSnyu0/VU+I22mlaHFoI6 +M6taIgj3grrqLuBHmrS1RaMFO9ncLkVAO+rcf+g769HsJtg1pDDFOqxXnrN2pSB7+R5KBWIBpih1 +YJeSDW4+TTdDDZIVnBgizVGZoCkaPF+KMjNbMMeJL0eYD6MDxvbxrN8y8NmBGuScvfaAFPDRLLmF +9dijscilIeUcE5fuDr3fKanvNFNb0+RqE4QGtjICxFKuItLcsiFCGtpA8CnJ7AoMXOLQusxI0zcK +zBIKinmwPQN/aUv0NCB9szTqjktk9T79syNnFQ0EuPAtwQlRPLJsFfClI9eDdOTlLsn+mCdCxqvG +nrDQWzilm1DefhiYtUU79nm06PcaewaD+9CL2rvHvRirCG88gGtAPxkZumWK5r7VXNM21+9AUiRg +OGcEMeyP84LG3rlV8zsxkVrctQgVrXYlCg17LofiDKYGvCYQbTed7N14jHyAxfDZd0jQ +-----END CERTIFICATE----- + +Global Chambersign Root - 2008 +============================== +-----BEGIN CERTIFICATE----- +MIIHSTCCBTGgAwIBAgIJAMnN0+nVfSPOMA0GCSqGSIb3DQEBBQUAMIGsMQswCQYDVQQGEwJFVTFD +MEEGA1UEBxM6TWFkcmlkIChzZWUgY3VycmVudCBhZGRyZXNzIGF0IHd3dy5jYW1lcmZpcm1hLmNv +bS9hZGRyZXNzKTESMBAGA1UEBRMJQTgyNzQzMjg3MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMu +QS4xJzAlBgNVBAMTHkdsb2JhbCBDaGFtYmVyc2lnbiBSb290IC0gMjAwODAeFw0wODA4MDExMjMx +NDBaFw0zODA3MzExMjMxNDBaMIGsMQswCQYDVQQGEwJFVTFDMEEGA1UEBxM6TWFkcmlkIChzZWUg +Y3VycmVudCBhZGRyZXNzIGF0IHd3dy5jYW1lcmZpcm1hLmNvbS9hZGRyZXNzKTESMBAGA1UEBRMJ +QTgyNzQzMjg3MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMuQS4xJzAlBgNVBAMTHkdsb2JhbCBD +aGFtYmVyc2lnbiBSb290IC0gMjAwODCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMDf +VtPkOpt2RbQT2//BthmLN0EYlVJH6xedKYiONWwGMi5HYvNJBL99RDaxccy9Wglz1dmFRP+RVyXf +XjaOcNFccUMd2drvXNL7G706tcuto8xEpw2uIRU/uXpbknXYpBI4iRmKt4DS4jJvVpyR1ogQC7N0 +ZJJ0YPP2zxhPYLIj0Mc7zmFLmY/CDNBAspjcDahOo7kKrmCgrUVSY7pmvWjg+b4aqIG7HkF4ddPB +/gBVsIdU6CeQNR1MM62X/JcumIS/LMmjv9GYERTtY/jKmIhYF5ntRQOXfjyGHoiMvvKRhI9lNNgA +TH23MRdaKXoKGCQwoze1eqkBfSbW+Q6OWfH9GzO1KTsXO0G2Id3UwD2ln58fQ1DJu7xsepeY7s2M +H/ucUa6LcL0nn3HAa6x9kGbo1106DbDVwo3VyJ2dwW3Q0L9R5OP4wzg2rtandeavhENdk5IMagfe +Ox2YItaswTXbo6Al/3K1dh3ebeksZixShNBFks4c5eUzHdwHU1SjqoI7mjcv3N2gZOnm3b2u/GSF +HTynyQbehP9r6GsaPMWis0L7iwk+XwhSx2LE1AVxv8Rk5Pihg+g+EpuoHtQ2TS9x9o0o9oOpE9Jh +wZG7SMA0j0GMS0zbaRL/UJScIINZc+18ofLx/d33SdNDWKBWY8o9PeU1VlnpDsogzCtLkykPAgMB +AAGjggFqMIIBZjASBgNVHRMBAf8ECDAGAQH/AgEMMB0GA1UdDgQWBBS5CcqcHtvTbDprru1U8VuT +BjUuXjCB4QYDVR0jBIHZMIHWgBS5CcqcHtvTbDprru1U8VuTBjUuXqGBsqSBrzCBrDELMAkGA1UE +BhMCRVUxQzBBBgNVBAcTOk1hZHJpZCAoc2VlIGN1cnJlbnQgYWRkcmVzcyBhdCB3d3cuY2FtZXJm +aXJtYS5jb20vYWRkcmVzcykxEjAQBgNVBAUTCUE4Mjc0MzI4NzEbMBkGA1UEChMSQUMgQ2FtZXJm +aXJtYSBTLkEuMScwJQYDVQQDEx5HbG9iYWwgQ2hhbWJlcnNpZ24gUm9vdCAtIDIwMDiCCQDJzdPp +1X0jzjAOBgNVHQ8BAf8EBAMCAQYwPQYDVR0gBDYwNDAyBgRVHSAAMCowKAYIKwYBBQUHAgEWHGh0 +dHA6Ly9wb2xpY3kuY2FtZXJmaXJtYS5jb20wDQYJKoZIhvcNAQEFBQADggIBAICIf3DekijZBZRG +/5BXqfEv3xoNa/p8DhxJJHkn2EaqbylZUohwEurdPfWbU1Rv4WCiqAm57OtZfMY18dwY6fFn5a+6 +ReAJ3spED8IXDneRRXozX1+WLGiLwUePmJs9wOzL9dWCkoQ10b42OFZyMVtHLaoXpGNR6woBrX/s +dZ7LoR/xfxKxueRkf2fWIyr0uDldmOghp+G9PUIadJpwr2hsUF1Jz//7Dl3mLEfXgTpZALVza2Mg +9jFFCDkO9HB+QHBaP9BrQql0PSgvAm11cpUJjUhjxsYjV5KTXjXBjfkK9yydYhz2rXzdpjEetrHH +foUm+qRqtdpjMNHvkzeyZi99Bffnt0uYlDXA2TopwZ2yUDMdSqlapskD7+3056huirRXhOukP9Du +qqqHW2Pok+JrqNS4cnhrG+055F3Lm6qH1U9OAP7Zap88MQ8oAgF9mOinsKJknnn4SPIVqczmyETr +P3iZ8ntxPjzxmKfFGBI/5rsoM0LpRQp8bfKGeS/Fghl9CYl8slR2iK7ewfPM4W7bMdaTrpmg7yVq +c5iJWzouE4gev8CSlDQb4ye3ix5vQv/n6TebUB0tovkC7stYWDpxvGjjqsGvHCgfotwjZT+B6q6Z +09gwzxMNTxXJhLynSC34MCN32EZLeW32jO06f2ARePTpm67VVMB0gNELQp/B +-----END CERTIFICATE----- + +Go Daddy Root Certificate Authority - G2 +======================================== +-----BEGIN CERTIFICATE----- +MIIDxTCCAq2gAwIBAgIBADANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMCVVMxEDAOBgNVBAgT +B0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxGjAYBgNVBAoTEUdvRGFkZHkuY29tLCBJbmMu +MTEwLwYDVQQDEyhHbyBEYWRkeSBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5 +MDkwMTAwMDAwMFoXDTM3MTIzMTIzNTk1OVowgYMxCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6 +b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMRowGAYDVQQKExFHb0RhZGR5LmNvbSwgSW5jLjExMC8G +A1UEAxMoR28gRGFkZHkgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZI +hvcNAQEBBQADggEPADCCAQoCggEBAL9xYgjx+lk09xvJGKP3gElY6SKDE6bFIEMBO4Tx5oVJnyfq +9oQbTqC023CYxzIBsQU+B07u9PpPL1kwIuerGVZr4oAH/PMWdYA5UXvl+TW2dE6pjYIT5LY/qQOD ++qK+ihVqf94Lw7YZFAXK6sOoBJQ7RnwyDfMAZiLIjWltNowRGLfTshxgtDj6AozO091GB94KPutd +fMh8+7ArU6SSYmlRJQVhGkSBjCypQ5Yj36w6gZoOKcUcqeldHraenjAKOc7xiID7S13MMuyFYkMl +NAJWJwGRtDtwKj9useiciAF9n9T521NtYJ2/LOdYq7hfRvzOxBsDPAnrSTFcaUaz4EcCAwEAAaNC +MEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFDqahQcQZyi27/a9 +BUFuIMGU2g/eMA0GCSqGSIb3DQEBCwUAA4IBAQCZ21151fmXWWcDYfF+OwYxdS2hII5PZYe096ac +vNjpL9DbWu7PdIxztDhC2gV7+AJ1uP2lsdeu9tfeE8tTEH6KRtGX+rcuKxGrkLAngPnon1rpN5+r +5N9ss4UXnT3ZJE95kTXWXwTrgIOrmgIttRD02JDHBHNA7XIloKmf7J6raBKZV8aPEjoJpL1E/QYV +N8Gb5DKj7Tjo2GTzLH4U/ALqn83/B2gX2yKQOC16jdFU8WnjXzPKej17CuPKf1855eJ1usV2GDPO +LPAvTK33sefOT6jEm0pUBsV/fdUID+Ic/n4XuKxe9tQWskMJDE32p2u0mYRlynqI4uJEvlz36hz1 +-----END CERTIFICATE----- + +Starfield Root Certificate Authority - G2 +========================================= +-----BEGIN CERTIFICATE----- +MIID3TCCAsWgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBjzELMAkGA1UEBhMCVVMxEDAOBgNVBAgT +B0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoTHFN0YXJmaWVsZCBUZWNobm9s +b2dpZXMsIEluYy4xMjAwBgNVBAMTKVN0YXJmaWVsZCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0 +eSAtIEcyMB4XDTA5MDkwMTAwMDAwMFoXDTM3MTIzMTIzNTk1OVowgY8xCzAJBgNVBAYTAlVTMRAw +DgYDVQQIEwdBcml6b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFyZmllbGQg +VGVjaG5vbG9naWVzLCBJbmMuMTIwMAYDVQQDEylTdGFyZmllbGQgUm9vdCBDZXJ0aWZpY2F0ZSBB +dXRob3JpdHkgLSBHMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL3twQP89o/8ArFv +W59I2Z154qK3A2FWGMNHttfKPTUuiUP3oWmb3ooa/RMgnLRJdzIpVv257IzdIvpy3Cdhl+72WoTs +bhm5iSzchFvVdPtrX8WJpRBSiUZV9Lh1HOZ/5FSuS/hVclcCGfgXcVnrHigHdMWdSL5stPSksPNk +N3mSwOxGXn/hbVNMYq/NHwtjuzqd+/x5AJhhdM8mgkBj87JyahkNmcrUDnXMN/uLicFZ8WJ/X7Nf +ZTD4p7dNdloedl40wOiWVpmKs/B/pM293DIxfJHP4F8R+GuqSVzRmZTRouNjWwl2tVZi4Ut0HZbU +JtQIBFnQmA4O5t78w+wfkPECAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC +AQYwHQYDVR0OBBYEFHwMMh+n2TB/xH1oo2Kooc6rB1snMA0GCSqGSIb3DQEBCwUAA4IBAQARWfol +TwNvlJk7mh+ChTnUdgWUXuEok21iXQnCoKjUsHU48TRqneSfioYmUeYs0cYtbpUgSpIB7LiKZ3sx +4mcujJUDJi5DnUox9g61DLu34jd/IroAow57UvtruzvE03lRTs2Q9GcHGcg8RnoNAX3FWOdt5oUw +F5okxBDgBPfg8n/Uqgr/Qh037ZTlZFkSIHc40zI+OIF1lnP6aI+xy84fxez6nH7PfrHxBy22/L/K +pL/QlwVKvOoYKAKQvVR4CSFx09F9HdkWsKlhPdAKACL8x3vLCWRFCztAgfd9fDL1mMpYjn0q7pBZ +c2T5NnReJaH1ZgUufzkVqSr7UIuOhWn0 +-----END CERTIFICATE----- + +Starfield Services Root Certificate Authority - G2 +================================================== +-----BEGIN CERTIFICATE----- +MIID7zCCAtegAwIBAgIBADANBgkqhkiG9w0BAQsFADCBmDELMAkGA1UEBhMCVVMxEDAOBgNVBAgT +B0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoTHFN0YXJmaWVsZCBUZWNobm9s +b2dpZXMsIEluYy4xOzA5BgNVBAMTMlN0YXJmaWVsZCBTZXJ2aWNlcyBSb290IENlcnRpZmljYXRl +IEF1dGhvcml0eSAtIEcyMB4XDTA5MDkwMTAwMDAwMFoXDTM3MTIzMTIzNTk1OVowgZgxCzAJBgNV +BAYTAlVTMRAwDgYDVQQIEwdBcml6b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxT +dGFyZmllbGQgVGVjaG5vbG9naWVzLCBJbmMuMTswOQYDVQQDEzJTdGFyZmllbGQgU2VydmljZXMg +Um9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC +AQoCggEBANUMOsQq+U7i9b4Zl1+OiFOxHz/Lz58gE20pOsgPfTz3a3Y4Y9k2YKibXlwAgLIvWX/2 +h/klQ4bnaRtSmpDhcePYLQ1Ob/bISdm28xpWriu2dBTrz/sm4xq6HZYuajtYlIlHVv8loJNwU4Pa +hHQUw2eeBGg6345AWh1KTs9DkTvnVtYAcMtS7nt9rjrnvDH5RfbCYM8TWQIrgMw0R9+53pBlbQLP +LJGmpufehRhJfGZOozptqbXuNC66DQO4M99H67FrjSXZm86B0UVGMpZwh94CDklDhbZsc7tk6mFB +rMnUVN+HL8cisibMn1lUaJ/8viovxFUcdUBgF4UCVTmLfwUCAwEAAaNCMEAwDwYDVR0TAQH/BAUw +AwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJxfAN+qAdcwKziIorhtSpzyEZGDMA0GCSqG +SIb3DQEBCwUAA4IBAQBLNqaEd2ndOxmfZyMIbw5hyf2E3F/YNoHN2BtBLZ9g3ccaaNnRbobhiCPP +E95Dz+I0swSdHynVv/heyNXBve6SbzJ08pGCL72CQnqtKrcgfU28elUSwhXqvfdqlS5sdJ/PHLTy +xQGjhdByPq1zqwubdQxtRbeOlKyWN7Wg0I8VRw7j6IPdj/3vQQF3zCepYoUz8jcI73HPdwbeyBkd +iEDPfUYd/x7H4c7/I9vG+o1VTqkC50cRRj70/b17KSa7qWFiNyi2LSr2EIZkyXCn0q23KXB56jza +YyWf/Wi3MOxw+3WKt21gZ7IeyLnp2KhvAotnDU0mV3HaIPzBSlCNsSi6 +-----END CERTIFICATE----- + +AffirmTrust Commercial +====================== +-----BEGIN CERTIFICATE----- +MIIDTDCCAjSgAwIBAgIId3cGJyapsXwwDQYJKoZIhvcNAQELBQAwRDELMAkGA1UEBhMCVVMxFDAS +BgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVzdCBDb21tZXJjaWFsMB4XDTEw +MDEyOTE0MDYwNloXDTMwMTIzMTE0MDYwNlowRDELMAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmly +bVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVzdCBDb21tZXJjaWFsMIIBIjANBgkqhkiG9w0BAQEF +AAOCAQ8AMIIBCgKCAQEA9htPZwcroRX1BiLLHwGy43NFBkRJLLtJJRTWzsO3qyxPxkEylFf6Eqdb +DuKPHx6GGaeqtS25Xw2Kwq+FNXkyLbscYjfysVtKPcrNcV/pQr6U6Mje+SJIZMblq8Yrba0F8PrV +C8+a5fBQpIs7R6UjW3p6+DM/uO+Zl+MgwdYoic+U+7lF7eNAFxHUdPALMeIrJmqbTFeurCA+ukV6 +BfO9m2kVrn1OIGPENXY6BwLJN/3HR+7o8XYdcxXyl6S1yHp52UKqK39c/s4mT6NmgTWvRLpUHhww +MmWd5jyTXlBOeuM61G7MGvv50jeuJCqrVwMiKA1JdX+3KNp1v47j3A55MQIDAQABo0IwQDAdBgNV +HQ4EFgQUnZPGU4teyq8/nx4P5ZmVvCT2lI8wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC +AQYwDQYJKoZIhvcNAQELBQADggEBAFis9AQOzcAN/wr91LoWXym9e2iZWEnStB03TX8nfUYGXUPG +hi4+c7ImfU+TqbbEKpqrIZcUsd6M06uJFdhrJNTxFq7YpFzUf1GO7RgBsZNjvbz4YYCanrHOQnDi +qX0GJX0nof5v7LMeJNrjS1UaADs1tDvZ110w/YETifLCBivtZ8SOyUOyXGsViQK8YvxO8rUzqrJv +0wqiUOP2O+guRMLbZjipM1ZI8W0bM40NjD9gN53Tym1+NH4Nn3J2ixufcv1SNUFFApYvHLKac0kh +sUlHRUe072o0EclNmsxZt9YCnlpOZbWUrhvfKbAW8b8Angc6F2S1BLUjIZkKlTuXfO8= +-----END CERTIFICATE----- + +AffirmTrust Networking +====================== +-----BEGIN CERTIFICATE----- +MIIDTDCCAjSgAwIBAgIIfE8EORzUmS0wDQYJKoZIhvcNAQEFBQAwRDELMAkGA1UEBhMCVVMxFDAS +BgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVzdCBOZXR3b3JraW5nMB4XDTEw +MDEyOTE0MDgyNFoXDTMwMTIzMTE0MDgyNFowRDELMAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmly +bVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVzdCBOZXR3b3JraW5nMIIBIjANBgkqhkiG9w0BAQEF +AAOCAQ8AMIIBCgKCAQEAtITMMxcua5Rsa2FSoOujz3mUTOWUgJnLVWREZY9nZOIG41w3SfYvm4SE +Hi3yYJ0wTsyEheIszx6e/jarM3c1RNg1lho9Nuh6DtjVR6FqaYvZ/Ls6rnla1fTWcbuakCNrmreI +dIcMHl+5ni36q1Mr3Lt2PpNMCAiMHqIjHNRqrSK6mQEubWXLviRmVSRLQESxG9fhwoXA3hA/Pe24 +/PHxI1Pcv2WXb9n5QHGNfb2V1M6+oF4nI979ptAmDgAp6zxG8D1gvz9Q0twmQVGeFDdCBKNwV6gb +h+0t+nvujArjqWaJGctB+d1ENmHP4ndGyH329JKBNv3bNPFyfvMMFr20FQIDAQABo0IwQDAdBgNV +HQ4EFgQUBx/S55zawm6iQLSwelAQUHTEyL0wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC +AQYwDQYJKoZIhvcNAQEFBQADggEBAIlXshZ6qML91tmbmzTCnLQyFE2npN/svqe++EPbkTfOtDIu +UFUaNU52Q3Eg75N3ThVwLofDwR1t3Mu1J9QsVtFSUzpE0nPIxBsFZVpikpzuQY0x2+c06lkh1QF6 +12S4ZDnNye2v7UsDSKegmQGA3GWjNq5lWUhPgkvIZfFXHeVZLgo/bNjR9eUJtGxUAArgFU2HdW23 +WJZa3W3SAKD0m0i+wzekujbgfIeFlxoVot4uolu9rxj5kFDNcFn4J2dHy8egBzp90SxdbBk6ZrV9 +/ZFvgrG+CJPbFEfxojfHRZ48x3evZKiT3/Zpg4Jg8klCNO1aAFSFHBY2kgxc+qatv9s= +-----END CERTIFICATE----- + +AffirmTrust Premium +=================== +-----BEGIN CERTIFICATE----- +MIIFRjCCAy6gAwIBAgIIbYwURrGmCu4wDQYJKoZIhvcNAQEMBQAwQTELMAkGA1UEBhMCVVMxFDAS +BgNVBAoMC0FmZmlybVRydXN0MRwwGgYDVQQDDBNBZmZpcm1UcnVzdCBQcmVtaXVtMB4XDTEwMDEy +OTE0MTAzNloXDTQwMTIzMTE0MTAzNlowQTELMAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRy +dXN0MRwwGgYDVQQDDBNBZmZpcm1UcnVzdCBQcmVtaXVtMIICIjANBgkqhkiG9w0BAQEFAAOCAg8A +MIICCgKCAgEAxBLfqV/+Qd3d9Z+K4/as4Tx4mrzY8H96oDMq3I0gW64tb+eT2TZwamjPjlGjhVtn +BKAQJG9dKILBl1fYSCkTtuG+kU3fhQxTGJoeJKJPj/CihQvL9Cl/0qRY7iZNyaqoe5rZ+jjeRFcV +5fiMyNlI4g0WJx0eyIOFJbe6qlVBzAMiSy2RjYvmia9mx+n/K+k8rNrSs8PhaJyJ+HoAVt70VZVs ++7pk3WKL3wt3MutizCaam7uqYoNMtAZ6MMgpv+0GTZe5HMQxK9VfvFMSF5yZVylmd2EhMQcuJUmd +GPLu8ytxjLW6OQdJd/zvLpKQBY0tL3d770O/Nbua2Plzpyzy0FfuKE4mX4+QaAkvuPjcBukumj5R +p9EixAqnOEhss/n/fauGV+O61oV4d7pD6kh/9ti+I20ev9E2bFhc8e6kGVQa9QPSdubhjL08s9NI +S+LI+H+SqHZGnEJlPqQewQcDWkYtuJfzt9WyVSHvutxMAJf7FJUnM7/oQ0dG0giZFmA7mn7S5u04 +6uwBHjxIVkkJx0w3AJ6IDsBz4W9m6XJHMD4Q5QsDyZpCAGzFlH5hxIrff4IaC1nEWTJ3s7xgaVY5 +/bQGeyzWZDbZvUjthB9+pSKPKrhC9IK31FOQeE4tGv2Bb0TXOwF0lkLgAOIua+rF7nKsu7/+6qqo ++Nz2snmKtmcCAwEAAaNCMEAwHQYDVR0OBBYEFJ3AZ6YMItkm9UWrpmVSESfYRaxjMA8GA1UdEwEB +/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBDAUAA4ICAQCzV00QYk465KzquByv +MiPIs0laUZx2KI15qldGF9X1Uva3ROgIRL8YhNILgM3FEv0AVQVhh0HctSSePMTYyPtwni94loMg +Nt58D2kTiKV1NpgIpsbfrM7jWNa3Pt668+s0QNiigfV4Py/VpfzZotReBA4Xrf5B8OWycvpEgjNC +6C1Y91aMYj+6QrCcDFx+LmUmXFNPALJ4fqENmS2NuB2OosSw/WDQMKSOyARiqcTtNd56l+0OOF6S +L5Nwpamcb6d9Ex1+xghIsV5n61EIJenmJWtSKZGc0jlzCFfemQa0W50QBuHCAKi4HEoCChTQwUHK ++4w1IX2COPKpVJEZNZOUbWo6xbLQu4mGk+ibyQ86p3q4ofB4Rvr8Ny/lioTz3/4E2aFooC8k4gmV +BtWVyuEklut89pMFu+1z6S3RdTnX5yTb2E5fQ4+e0BQ5v1VwSJlXMbSc7kqYA5YwH2AG7hsj/oFg +IxpHYoWlzBk0gG+zrBrjn/B7SK3VAdlntqlyk+otZrWyuOQ9PLLvTIzq6we/qzWaVYa8GKa1qF60 +g2xraUDTn9zxw2lrueFtCfTxqlB2Cnp9ehehVZZCmTEJ3WARjQUwfuaORtGdFNrHF+QFlozEJLUb +zxQHskD4o55BhrwE0GuWyCqANP2/7waj3VjFhT0+j/6eKeC2uAloGRwYQw== +-----END CERTIFICATE----- + +AffirmTrust Premium ECC +======================= +-----BEGIN CERTIFICATE----- +MIIB/jCCAYWgAwIBAgIIdJclisc/elQwCgYIKoZIzj0EAwMwRTELMAkGA1UEBhMCVVMxFDASBgNV +BAoMC0FmZmlybVRydXN0MSAwHgYDVQQDDBdBZmZpcm1UcnVzdCBQcmVtaXVtIEVDQzAeFw0xMDAx +MjkxNDIwMjRaFw00MDEyMzExNDIwMjRaMEUxCzAJBgNVBAYTAlVTMRQwEgYDVQQKDAtBZmZpcm1U +cnVzdDEgMB4GA1UEAwwXQWZmaXJtVHJ1c3QgUHJlbWl1bSBFQ0MwdjAQBgcqhkjOPQIBBgUrgQQA +IgNiAAQNMF4bFZ0D0KF5Nbc6PJJ6yhUczWLznCZcBz3lVPqj1swS6vQUX+iOGasvLkjmrBhDeKzQ +N8O9ss0s5kfiGuZjuD0uL3jET9v0D6RoTFVya5UdThhClXjMNzyR4ptlKymjQjBAMB0GA1UdDgQW +BBSaryl6wBE1NSZRMADDav5A1a7WPDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAK +BggqhkjOPQQDAwNnADBkAjAXCfOHiFBar8jAQr9HX/VsaobgxCd05DhT1wV/GzTjxi+zygk8N53X +57hG8f2h4nECMEJZh0PUUd+60wkyWs6Iflc9nF9Ca/UHLbXwgpP5WW+uZPpY5Yse42O+tYHNbwKM +eQ== +-----END CERTIFICATE----- + +Certum Trusted Network CA +========================= +-----BEGIN CERTIFICATE----- +MIIDuzCCAqOgAwIBAgIDBETAMA0GCSqGSIb3DQEBBQUAMH4xCzAJBgNVBAYTAlBMMSIwIAYDVQQK +ExlVbml6ZXRvIFRlY2hub2xvZ2llcyBTLkEuMScwJQYDVQQLEx5DZXJ0dW0gQ2VydGlmaWNhdGlv +biBBdXRob3JpdHkxIjAgBgNVBAMTGUNlcnR1bSBUcnVzdGVkIE5ldHdvcmsgQ0EwHhcNMDgxMDIy +MTIwNzM3WhcNMjkxMjMxMTIwNzM3WjB+MQswCQYDVQQGEwJQTDEiMCAGA1UEChMZVW5pemV0byBU +ZWNobm9sb2dpZXMgUy5BLjEnMCUGA1UECxMeQ2VydHVtIENlcnRpZmljYXRpb24gQXV0aG9yaXR5 +MSIwIAYDVQQDExlDZXJ0dW0gVHJ1c3RlZCBOZXR3b3JrIENBMIIBIjANBgkqhkiG9w0BAQEFAAOC +AQ8AMIIBCgKCAQEA4/t9o3K6wvDJFIf1awFO4W5AB7ptJ11/91sts1rHUV+rpDKmYYe2bg+G0jAC +l/jXaVehGDldamR5xgFZrDwxSjh80gTSSyjoIF87B6LMTXPb865Px1bVWqeWifrzq2jUI4ZZJ88J +J7ysbnKDHDBy3+Ci6dLhdHUZvSqeexVUBBvXQzmtVSjF4hq79MDkrjhJM8x2hZ85RdKknvISjFH4 +fOQtf/WsX+sWn7Et0brMkUJ3TCXJkDhv2/DM+44el1k+1WBO5gUo7Ul5E0u6SNsv+XLTOcr+H9g0 +cvW0QM8xAcPs3hEtF10fuFDRXhmnad4HMyjKUJX5p1TLVIZQRan5SQIDAQABo0IwQDAPBgNVHRMB +Af8EBTADAQH/MB0GA1UdDgQWBBQIds3LB/8k9sXN7buQvOKEN0Z19zAOBgNVHQ8BAf8EBAMCAQYw +DQYJKoZIhvcNAQEFBQADggEBAKaorSLOAT2mo/9i0Eidi15ysHhE49wcrwn9I0j6vSrEuVUEtRCj +jSfeC4Jj0O7eDDd5QVsisrCaQVymcODU0HfLI9MA4GxWL+FpDQ3Zqr8hgVDZBqWo/5U30Kr+4rP1 +mS1FhIrlQgnXdAIv94nYmem8J9RHjboNRhx3zxSkHLmkMcScKHQDNP8zGSal6Q10tz6XxnboJ5aj +Zt3hrvJBW8qYVoNzcOSGGtIxQbovvi0TWnZvTuhOgQ4/WwMioBK+ZlgRSssDxLQqKi2WF+A5VLxI +03YnnZotBqbJ7DnSq9ufmgsnAjUpsUCV5/nonFWIGUbWtzT1fs45mtk48VH3Tyw= +-----END CERTIFICATE----- + +TWCA Root Certification Authority +================================= +-----BEGIN CERTIFICATE----- +MIIDezCCAmOgAwIBAgIBATANBgkqhkiG9w0BAQUFADBfMQswCQYDVQQGEwJUVzESMBAGA1UECgwJ +VEFJV0FOLUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFUV0NBIFJvb3QgQ2VydGlmaWNh +dGlvbiBBdXRob3JpdHkwHhcNMDgwODI4MDcyNDMzWhcNMzAxMjMxMTU1OTU5WjBfMQswCQYDVQQG +EwJUVzESMBAGA1UECgwJVEFJV0FOLUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFUV0NB +IFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK +AoIBAQCwfnK4pAOU5qfeCTiRShFAh6d8WWQUe7UREN3+v9XAu1bihSX0NXIP+FPQQeFEAcK0HMMx +QhZHhTMidrIKbw/lJVBPhYa+v5guEGcevhEFhgWQxFnQfHgQsIBct+HHK3XLfJ+utdGdIzdjp9xC +oi2SBBtQwXu4PhvJVgSLL1KbralW6cH/ralYhzC2gfeXRfwZVzsrb+RH9JlF/h3x+JejiB03HFyP +4HYlmlD4oFT/RJB2I9IyxsOrBr/8+7/zrX2SYgJbKdM1o5OaQ2RgXbL6Mv87BK9NQGr5x+PvI/1r +y+UPizgN7gr8/g+YnzAx3WxSZfmLgb4i4RxYA7qRG4kHAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIB +BjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRqOFsmjd6LWvJPelSDGRjjCDWmujANBgkqhkiG +9w0BAQUFAAOCAQEAPNV3PdrfibqHDAhUaiBQkr6wQT25JmSDCi/oQMCXKCeCMErJk/9q56YAf4lC +mtYR5VPOL8zy2gXE/uJQxDqGfczafhAJO5I1KlOy/usrBdlsXebQ79NqZp4VKIV66IIArB6nCWlW +QtNoURi+VJq/REG6Sb4gumlc7rh3zc5sH62Dlhh9DrUUOYTxKOkto557HnpyWoOzeW/vtPzQCqVY +T0bf+215WfKEIlKuD8z7fDvnaspHYcN6+NOSBB+4IIThNlQWx0DeO4pz3N/GCUzf7Nr/1FNCocny +Yh0igzyXxfkZYiesZSLX0zzG5Y6yU8xJzrww/nsOM5D77dIUkR8Hrw== +-----END CERTIFICATE----- + +Security Communication RootCA2 +============================== +-----BEGIN CERTIFICATE----- +MIIDdzCCAl+gAwIBAgIBADANBgkqhkiG9w0BAQsFADBdMQswCQYDVQQGEwJKUDElMCMGA1UEChMc +U0VDT00gVHJ1c3QgU3lzdGVtcyBDTy4sTFRELjEnMCUGA1UECxMeU2VjdXJpdHkgQ29tbXVuaWNh +dGlvbiBSb290Q0EyMB4XDTA5MDUyOTA1MDAzOVoXDTI5MDUyOTA1MDAzOVowXTELMAkGA1UEBhMC +SlAxJTAjBgNVBAoTHFNFQ09NIFRydXN0IFN5c3RlbXMgQ08uLExURC4xJzAlBgNVBAsTHlNlY3Vy +aXR5IENvbW11bmljYXRpb24gUm9vdENBMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB +ANAVOVKxUrO6xVmCxF1SrjpDZYBLx/KWvNs2l9amZIyoXvDjChz335c9S672XewhtUGrzbl+dp++ ++T42NKA7wfYxEUV0kz1XgMX5iZnK5atq1LXaQZAQwdbWQonCv/Q4EpVMVAX3NuRFg3sUZdbcDE3R +3n4MqzvEFb46VqZab3ZpUql6ucjrappdUtAtCms1FgkQhNBqyjoGADdH5H5XTz+L62e4iKrFvlNV +spHEfbmwhRkGeC7bYRr6hfVKkaHnFtWOojnflLhwHyg/i/xAXmODPIMqGplrz95Zajv8bxbXH/1K +EOtOghY6rCcMU/Gt1SSwawNQwS08Ft1ENCcadfsCAwEAAaNCMEAwHQYDVR0OBBYEFAqFqXdlBZh8 +QIH4D5csOPEK7DzPMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEB +CwUAA4IBAQBMOqNErLlFsceTfsgLCkLfZOoc7llsCLqJX2rKSpWeeo8HxdpFcoJxDjrSzG+ntKEj +u/Ykn8sX/oymzsLS28yN/HH8AynBbF0zX2S2ZTuJbxh2ePXcokgfGT+Ok+vx+hfuzU7jBBJV1uXk +3fs+BXziHV7Gp7yXT2g69ekuCkO2r1dcYmh8t/2jioSgrGK+KwmHNPBqAbubKVY8/gA3zyNs8U6q +tnRGEmyR7jTV7JqR50S+kDFy1UkC9gLl9B/rfNmWVan/7Ir5mUf/NVoCqgTLiluHcSmRvaS0eg29 +mvVXIwAHIRc/SjnRBUkLp7Y3gaVdjKozXoEofKd9J+sAro03 +-----END CERTIFICATE----- + +EC-ACC +====== +-----BEGIN CERTIFICATE----- +MIIFVjCCBD6gAwIBAgIQ7is969Qh3hSoYqwE893EATANBgkqhkiG9w0BAQUFADCB8zELMAkGA1UE +BhMCRVMxOzA5BgNVBAoTMkFnZW5jaWEgQ2F0YWxhbmEgZGUgQ2VydGlmaWNhY2lvIChOSUYgUS0w +ODAxMTc2LUkpMSgwJgYDVQQLEx9TZXJ2ZWlzIFB1YmxpY3MgZGUgQ2VydGlmaWNhY2lvMTUwMwYD +VQQLEyxWZWdldSBodHRwczovL3d3dy5jYXRjZXJ0Lm5ldC92ZXJhcnJlbCAoYykwMzE1MDMGA1UE +CxMsSmVyYXJxdWlhIEVudGl0YXRzIGRlIENlcnRpZmljYWNpbyBDYXRhbGFuZXMxDzANBgNVBAMT +BkVDLUFDQzAeFw0wMzAxMDcyMzAwMDBaFw0zMTAxMDcyMjU5NTlaMIHzMQswCQYDVQQGEwJFUzE7 +MDkGA1UEChMyQWdlbmNpYSBDYXRhbGFuYSBkZSBDZXJ0aWZpY2FjaW8gKE5JRiBRLTA4MDExNzYt +SSkxKDAmBgNVBAsTH1NlcnZlaXMgUHVibGljcyBkZSBDZXJ0aWZpY2FjaW8xNTAzBgNVBAsTLFZl +Z2V1IGh0dHBzOi8vd3d3LmNhdGNlcnQubmV0L3ZlcmFycmVsIChjKTAzMTUwMwYDVQQLEyxKZXJh +cnF1aWEgRW50aXRhdHMgZGUgQ2VydGlmaWNhY2lvIENhdGFsYW5lczEPMA0GA1UEAxMGRUMtQUND +MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsyLHT+KXQpWIR4NA9h0X84NzJB5R85iK +w5K4/0CQBXCHYMkAqbWUZRkiFRfCQ2xmRJoNBD45b6VLeqpjt4pEndljkYRm4CgPukLjbo73FCeT +ae6RDqNfDrHrZqJyTxIThmV6PttPB/SnCWDaOkKZx7J/sxaVHMf5NLWUhdWZXqBIoH7nF2W4onW4 +HvPlQn2v7fOKSGRdghST2MDk/7NQcvJ29rNdQlB50JQ+awwAvthrDk4q7D7SzIKiGGUzE3eeml0a +E9jD2z3Il3rucO2n5nzbcc8tlGLfbdb1OL4/pYUKGbio2Al1QnDE6u/LDsg0qBIimAy4E5S2S+zw +0JDnJwIDAQABo4HjMIHgMB0GA1UdEQQWMBSBEmVjX2FjY0BjYXRjZXJ0Lm5ldDAPBgNVHRMBAf8E +BTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUoMOLRKo3pUW/l4Ba0fF4opvpXY0wfwYD +VR0gBHgwdjB0BgsrBgEEAfV4AQMBCjBlMCwGCCsGAQUFBwIBFiBodHRwczovL3d3dy5jYXRjZXJ0 +Lm5ldC92ZXJhcnJlbDA1BggrBgEFBQcCAjApGidWZWdldSBodHRwczovL3d3dy5jYXRjZXJ0Lm5l +dC92ZXJhcnJlbCAwDQYJKoZIhvcNAQEFBQADggEBAKBIW4IB9k1IuDlVNZyAelOZ1Vr/sXE7zDkJ +lF7W2u++AVtd0x7Y/X1PzaBB4DSTv8vihpw3kpBWHNzrKQXlxJ7HNd+KDM3FIUPpqojlNcAZQmNa +Al6kSBg6hW/cnbw/nZzBh7h6YQjpdwt/cKt63dmXLGQehb+8dJahw3oS7AwaboMMPOhyRp/7SNVe +l+axofjk70YllJyJ22k4vuxcDlbHZVHlUIiIv0LVKz3l+bqeLrPK9HOSAgu+TGbrIP65y7WZf+a2 +E/rKS03Z7lNGBjvGTq2TWoF+bCpLagVFjPIhpDGQh2xlnJ2lYJU6Un/10asIbvPuW/mIPX64b24D +5EI= +-----END CERTIFICATE----- + +Hellenic Academic and Research Institutions RootCA 2011 +======================================================= +-----BEGIN CERTIFICATE----- +MIIEMTCCAxmgAwIBAgIBADANBgkqhkiG9w0BAQUFADCBlTELMAkGA1UEBhMCR1IxRDBCBgNVBAoT +O0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1dGlvbnMgQ2VydC4gQXV0aG9y +aXR5MUAwPgYDVQQDEzdIZWxsZW5pYyBBY2FkZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb25z +IFJvb3RDQSAyMDExMB4XDTExMTIwNjEzNDk1MloXDTMxMTIwMTEzNDk1MlowgZUxCzAJBgNVBAYT +AkdSMUQwQgYDVQQKEztIZWxsZW5pYyBBY2FkZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb25z +IENlcnQuIEF1dGhvcml0eTFAMD4GA1UEAxM3SGVsbGVuaWMgQWNhZGVtaWMgYW5kIFJlc2VhcmNo +IEluc3RpdHV0aW9ucyBSb290Q0EgMjAxMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB +AKlTAOMupvaO+mDYLZU++CwqVE7NuYRhlFhPjz2L5EPzdYmNUeTDN9KKiE15HrcS3UN4SoqS5tdI +1Q+kOilENbgH9mgdVc04UfCMJDGFr4PJfel3r+0ae50X+bOdOFAPplp5kYCvN66m0zH7tSYJnTxa +71HFK9+WXesyHgLacEnsbgzImjeN9/E2YEsmLIKe0HjzDQ9jpFEw4fkrJxIH2Oq9GGKYsFk3fb7u +8yBRQlqD75O6aRXxYp2fmTmCobd0LovUxQt7L/DICto9eQqakxylKHJzkUOap9FNhYS5qXSPFEDH +3N6sQWRstBmbAmNtJGSPRLIl6s5ddAxjMlyNh+UCAwEAAaOBiTCBhjAPBgNVHRMBAf8EBTADAQH/ +MAsGA1UdDwQEAwIBBjAdBgNVHQ4EFgQUppFC/RNhSiOeCKQp5dgTBCPuQSUwRwYDVR0eBEAwPqA8 +MAWCAy5ncjAFggMuZXUwBoIELmVkdTAGggQub3JnMAWBAy5ncjAFgQMuZXUwBoEELmVkdTAGgQQu +b3JnMA0GCSqGSIb3DQEBBQUAA4IBAQAf73lB4XtuP7KMhjdCSk4cNx6NZrokgclPEg8hwAOXhiVt +XdMiKahsog2p6z0GW5k6x8zDmjR/qw7IThzh+uTczQ2+vyT+bOdrwg3IBp5OjWEopmr95fZi6hg8 +TqBTnbI6nOulnJEWtk2C4AwFSKls9cz4y51JtPACpf1wA+2KIaWuE4ZJwzNzvoc7dIsXRSZMFpGD +/md9zU1jZ/rzAxKWeAaNsWftjj++n08C9bMJL/NMh98qy5V8AcysNnq/onN694/BtZqhFLKPM58N +7yLcZnuEvUUXBj08yrl3NI/K6s8/MT7jiOOASSXIl7WdmplNsDz4SgCbZN2fOUvRJ9e4 +-----END CERTIFICATE----- + +Actalis Authentication Root CA +============================== +-----BEGIN CERTIFICATE----- +MIIFuzCCA6OgAwIBAgIIVwoRl0LE48wwDQYJKoZIhvcNAQELBQAwazELMAkGA1UEBhMCSVQxDjAM +BgNVBAcMBU1pbGFuMSMwIQYDVQQKDBpBY3RhbGlzIFMucC5BLi8wMzM1ODUyMDk2NzEnMCUGA1UE +AwweQWN0YWxpcyBBdXRoZW50aWNhdGlvbiBSb290IENBMB4XDTExMDkyMjExMjIwMloXDTMwMDky +MjExMjIwMlowazELMAkGA1UEBhMCSVQxDjAMBgNVBAcMBU1pbGFuMSMwIQYDVQQKDBpBY3RhbGlz +IFMucC5BLi8wMzM1ODUyMDk2NzEnMCUGA1UEAwweQWN0YWxpcyBBdXRoZW50aWNhdGlvbiBSb290 +IENBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAp8bEpSmkLO/lGMWwUKNvUTufClrJ +wkg4CsIcoBh/kbWHuUA/3R1oHwiD1S0eiKD4j1aPbZkCkpAW1V8IbInX4ay8IMKx4INRimlNAJZa +by/ARH6jDuSRzVju3PvHHkVH3Se5CAGfpiEd9UEtL0z9KK3giq0itFZljoZUj5NDKd45RnijMCO6 +zfB9E1fAXdKDa0hMxKufgFpbOr3JpyI/gCczWw63igxdBzcIy2zSekciRDXFzMwujt0q7bd9Zg1f +YVEiVRvjRuPjPdA1YprbrxTIW6HMiRvhMCb8oJsfgadHHwTrozmSBp+Z07/T6k9QnBn+locePGX2 +oxgkg4YQ51Q+qDp2JE+BIcXjDwL4k5RHILv+1A7TaLndxHqEguNTVHnd25zS8gebLra8Pu2Fbe8l +EfKXGkJh90qX6IuxEAf6ZYGyojnP9zz/GPvG8VqLWeICrHuS0E4UT1lF9gxeKF+w6D9Fz8+vm2/7 +hNN3WpVvrJSEnu68wEqPSpP4RCHiMUVhUE4Q2OM1fEwZtN4Fv6MGn8i1zeQf1xcGDXqVdFUNaBr8 +EBtiZJ1t4JWgw5QHVw0U5r0F+7if5t+L4sbnfpb2U8WANFAoWPASUHEXMLrmeGO89LKtmyuy/uE5 +jF66CyCU3nuDuP/jVo23Eek7jPKxwV2dpAtMK9myGPW1n0sCAwEAAaNjMGEwHQYDVR0OBBYEFFLY +iDrIn3hm7YnzezhwlMkCAjbQMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUUtiIOsifeGbt +ifN7OHCUyQICNtAwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4ICAQALe3KHwGCmSUyI +WOYdiPcUZEim2FgKDk8TNd81HdTtBjHIgT5q1d07GjLukD0R0i70jsNjLiNmsGe+b7bAEzlgqqI0 +JZN1Ut6nna0Oh4lScWoWPBkdg/iaKWW+9D+a2fDzWochcYBNy+A4mz+7+uAwTc+G02UQGRjRlwKx +K3JCaKygvU5a2hi/a5iB0P2avl4VSM0RFbnAKVy06Ij3Pjaut2L9HmLecHgQHEhb2rykOLpn7VU+ +Xlff1ANATIGk0k9jpwlCCRT8AKnCgHNPLsBA2RF7SOp6AsDT6ygBJlh0wcBzIm2Tlf05fbsq4/aC +4yyXX04fkZT6/iyj2HYauE2yOE+b+h1IYHkm4vP9qdCa6HCPSXrW5b0KDtst842/6+OkfcvHlXHo +2qN8xcL4dJIEG4aspCJTQLas/kx2z/uUMsA1n3Y/buWQbqCmJqK4LL7RK4X9p2jIugErsWx0Hbhz +lefut8cl8ABMALJ+tguLHPPAUJ4lueAI3jZm/zel0btUZCzJJ7VLkn5l/9Mt4blOvH+kQSGQQXem +OR/qnuOf0GZvBeyqdn6/axag67XH/JJULysRJyU3eExRarDzzFhdFPFqSBX/wge2sY0PjlxQRrM9 +vwGYT7JZVEc+NHt4bVaTLnPqZih4zR0Uv6CPLy64Lo7yFIrM6bV8+2ydDKXhlg== +-----END CERTIFICATE----- + +Trustis FPS Root CA +=================== +-----BEGIN CERTIFICATE----- +MIIDZzCCAk+gAwIBAgIQGx+ttiD5JNM2a/fH8YygWTANBgkqhkiG9w0BAQUFADBFMQswCQYDVQQG +EwJHQjEYMBYGA1UEChMPVHJ1c3RpcyBMaW1pdGVkMRwwGgYDVQQLExNUcnVzdGlzIEZQUyBSb290 +IENBMB4XDTAzMTIyMzEyMTQwNloXDTI0MDEyMTExMzY1NFowRTELMAkGA1UEBhMCR0IxGDAWBgNV +BAoTD1RydXN0aXMgTGltaXRlZDEcMBoGA1UECxMTVHJ1c3RpcyBGUFMgUm9vdCBDQTCCASIwDQYJ +KoZIhvcNAQEBBQADggEPADCCAQoCggEBAMVQe547NdDfxIzNjpvto8A2mfRC6qc+gIMPpqdZh8mQ +RUN+AOqGeSoDvT03mYlmt+WKVoaTnGhLaASMk5MCPjDSNzoiYYkchU59j9WvezX2fihHiTHcDnlk +H5nSW7r+f2C/revnPDgpai/lkQtV/+xvWNUtyd5MZnGPDNcE2gfmHhjjvSkCqPoc4Vu5g6hBSLwa +cY3nYuUtsuvffM/bq1rKMfFMIvMFE/eC+XN5DL7XSxzA0RU8k0Fk0ea+IxciAIleH2ulrG6nS4zt +o3Lmr2NNL4XSFDWaLk6M6jKYKIahkQlBOrTh4/L68MkKokHdqeMDx4gVOxzUGpTXn2RZEm0CAwEA +AaNTMFEwDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAWgBS6+nEleYtXQSUhhgtx67JkDoshZzAd +BgNVHQ4EFgQUuvpxJXmLV0ElIYYLceuyZA6LIWcwDQYJKoZIhvcNAQEFBQADggEBAH5Y//01GX2c +GE+esCu8jowU/yyg2kdbw++BLa8F6nRIW/M+TgfHbcWzk88iNVy2P3UnXwmWzaD+vkAMXBJV+JOC +yinpXj9WV4s4NvdFGkwozZ5BuO1WTISkQMi4sKUraXAEasP41BIy+Q7DsdwyhEQsb8tGD+pmQQ9P +8Vilpg0ND2HepZ5dfWWhPBfnqFVO76DH7cZEf1T1o+CP8HxVIo8ptoGj4W1OLBuAZ+ytIJ8MYmHV +l/9D7S3B2l0pKoU/rGXuhg8FjZBf3+6f9L/uHfuY5H+QK4R4EA5sSVPvFVtlRkpdr7r7OnIdzfYl +iB6XzCGcKQENZetX2fNXlrtIzYE= +-----END CERTIFICATE----- + +Buypass Class 2 Root CA +======================= +-----BEGIN CERTIFICATE----- +MIIFWTCCA0GgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBOMQswCQYDVQQGEwJOTzEdMBsGA1UECgwU +QnV5cGFzcyBBUy05ODMxNjMzMjcxIDAeBgNVBAMMF0J1eXBhc3MgQ2xhc3MgMiBSb290IENBMB4X +DTEwMTAyNjA4MzgwM1oXDTQwMTAyNjA4MzgwM1owTjELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1 +eXBhc3MgQVMtOTgzMTYzMzI3MSAwHgYDVQQDDBdCdXlwYXNzIENsYXNzIDIgUm9vdCBDQTCCAiIw +DQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANfHXvfBB9R3+0Mh9PT1aeTuMgHbo4Yf5FkNuud1 +g1Lr6hxhFUi7HQfKjK6w3Jad6sNgkoaCKHOcVgb/S2TwDCo3SbXlzwx87vFKu3MwZfPVL4O2fuPn +9Z6rYPnT8Z2SdIrkHJasW4DptfQxh6NR/Md+oW+OU3fUl8FVM5I+GC911K2GScuVr1QGbNgGE41b +/+EmGVnAJLqBcXmQRFBoJJRfuLMR8SlBYaNByyM21cHxMlAQTn/0hpPshNOOvEu/XAFOBz3cFIqU +CqTqc/sLUegTBxj6DvEr0VQVfTzh97QZQmdiXnfgolXsttlpF9U6r0TtSsWe5HonfOV116rLJeff +awrbD02TTqigzXsu8lkBarcNuAeBfos4GzjmCleZPe4h6KP1DBbdi+w0jpwqHAAVF41og9JwnxgI +zRFo1clrUs3ERo/ctfPYV3Me6ZQ5BL/T3jjetFPsaRyifsSP5BtwrfKi+fv3FmRmaZ9JUaLiFRhn +Bkp/1Wy1TbMz4GHrXb7pmA8y1x1LPC5aAVKRCfLf6o3YBkBjqhHk/sM3nhRSP/TizPJhk9H9Z2vX +Uq6/aKtAQ6BXNVN48FP4YUIHZMbXb5tMOA1jrGKvNouicwoN9SG9dKpN6nIDSdvHXx1iY8f93ZHs +M+71bbRuMGjeyNYmsHVee7QHIJihdjK4TWxPAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYD +VR0OBBYEFMmAd+BikoL1RpzzuvdMw964o605MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsF +AAOCAgEAU18h9bqwOlI5LJKwbADJ784g7wbylp7ppHR/ehb8t/W2+xUbP6umwHJdELFx7rxP462s +A20ucS6vxOOto70MEae0/0qyexAQH6dXQbLArvQsWdZHEIjzIVEpMMpghq9Gqx3tOluwlN5E40EI +osHsHdb9T7bWR9AUC8rmyrV7d35BH16Dx7aMOZawP5aBQW9gkOLo+fsicdl9sz1Gv7SEr5AcD48S +aq/v7h56rgJKihcrdv6sVIkkLE8/trKnToyokZf7KcZ7XC25y2a2t6hbElGFtQl+Ynhw/qlqYLYd +DnkM/crqJIByw5c/8nerQyIKx+u2DISCLIBrQYoIwOula9+ZEsuK1V6ADJHgJgg2SMX6OBE1/yWD +LfJ6v9r9jv6ly0UsH8SIU653DtmadsWOLB2jutXsMq7Aqqz30XpN69QH4kj3Io6wpJ9qzo6ysmD0 +oyLQI+uUWnpp3Q+/QFesa1lQ2aOZ4W7+jQF5JyMV3pKdewlNWudLSDBaGOYKbeaP4NK75t98biGC +wWg5TbSYWGZizEqQXsP6JwSxeRV0mcy+rSDeJmAc61ZRpqPq5KM/p/9h3PFaTWwyI0PurKju7koS +CTxdccK+efrCh2gdC/1cacwG0Jp9VJkqyTkaGa9LKkPzY11aWOIv4x3kqdbQCtCev9eBCfHJxyYN +rJgWVqA= +-----END CERTIFICATE----- + +Buypass Class 3 Root CA +======================= +-----BEGIN CERTIFICATE----- +MIIFWTCCA0GgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBOMQswCQYDVQQGEwJOTzEdMBsGA1UECgwU +QnV5cGFzcyBBUy05ODMxNjMzMjcxIDAeBgNVBAMMF0J1eXBhc3MgQ2xhc3MgMyBSb290IENBMB4X +DTEwMTAyNjA4Mjg1OFoXDTQwMTAyNjA4Mjg1OFowTjELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1 +eXBhc3MgQVMtOTgzMTYzMzI3MSAwHgYDVQQDDBdCdXlwYXNzIENsYXNzIDMgUm9vdCBDQTCCAiIw +DQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAKXaCpUWUOOV8l6ddjEGMnqb8RB2uACatVI2zSRH +sJ8YZLya9vrVediQYkwiL944PdbgqOkcLNt4EemOaFEVcsfzM4fkoF0LXOBXByow9c3EN3coTRiR +5r/VUv1xLXA+58bEiuPwKAv0dpihi4dVsjoT/Lc+JzeOIuOoTyrvYLs9tznDDgFHmV0ST9tD+leh +7fmdvhFHJlsTmKtdFoqwNxxXnUX/iJY2v7vKB3tvh2PX0DJq1l1sDPGzbjniazEuOQAnFN44wOwZ +ZoYS6J1yFhNkUsepNxz9gjDthBgd9K5c/3ATAOux9TN6S9ZV+AWNS2mw9bMoNlwUxFFzTWsL8TQH +2xc519woe2v1n/MuwU8XKhDzzMro6/1rqy6any2CbgTUUgGTLT2G/H783+9CHaZr77kgxve9oKeV +/afmiSTYzIw0bOIjL9kSGiG5VZFvC5F5GQytQIgLcOJ60g7YaEi7ghM5EFjp2CoHxhLbWNvSO1UQ +RwUVZ2J+GGOmRj8JDlQyXr8NYnon74Do29lLBlo3WiXQCBJ31G8JUJc9yB3D34xFMFbG02SrZvPA +Xpacw8Tvw3xrizp5f7NJzz3iiZ+gMEuFuZyUJHmPfWupRWgPK9Dx2hzLabjKSWJtyNBjYt1gD1iq +j6G8BaVmos8bdrKEZLFMOVLAMLrwjEsCsLa3AgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYD +VR0OBBYEFEe4zf/lb+74suwvTg75JbCOPGvDMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsF +AAOCAgEAACAjQTUEkMJAYmDv4jVM1z+s4jSQuKFvdvoWFqRINyzpkMLyPPgKn9iB5btb2iUspKdV +cSQy9sgL8rxq+JOssgfCX5/bzMiKqr5qb+FJEMwx14C7u8jYog5kV+qi9cKpMRXSIGrs/CIBKM+G +uIAeqcwRpTzyFrNHnfzSgCHEy9BHcEGhyoMZCCxt8l13nIoUE9Q2HJLw5QY33KbmkJs4j1xrG0aG +Q0JfPgEHU1RdZX33inOhmlRaHylDFCfChQ+1iHsaO5S3HWCntZznKWlXWpuTekMwGwPXYshApqr8 +ZORK15FTAaggiG6cX0S5y2CBNOxv033aSF/rtJC8LakcC6wc1aJoIIAE1vyxjy+7SjENSoYc6+I2 +KSb12tjE8nVhz36udmNKekBlk4f4HoCMhuWG1o8O/FMsYOgWYRqiPkN7zTlgVGr18okmAWiDSKIz +6MkEkbIRNBE+6tBDGR8Dk5AM/1E9V/RBbuHLoL7ryWPNbczk+DaqaJ3tvV2XcEQNtg413OEMXbug +UZTLfhbrES+jkkXITHHZvMmZUldGL1DPvTVp9D0VzgalLA8+9oG6lLvDu79leNKGef9JOxqDDPDe +eOzI8k1MGt6CKfjBWtrt7uYnXuhF0J0cUahoq0Tj0Itq4/g7u9xN12TyUb7mqqta6THuBrxzvxNi +Cp/HuZc= +-----END CERTIFICATE----- + +T-TeleSec GlobalRoot Class 3 +============================ +-----BEGIN CERTIFICATE----- +MIIDwzCCAqugAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoM +IlQtU3lzdGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBU +cnVzdCBDZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDMwHhcNMDgx +MDAxMTAyOTU2WhcNMzMxMDAxMjM1OTU5WjCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoMIlQtU3lz +dGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBD +ZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDMwggEiMA0GCSqGSIb3 +DQEBAQUAA4IBDwAwggEKAoIBAQC9dZPwYiJvJK7genasfb3ZJNW4t/zN8ELg63iIVl6bmlQdTQyK +9tPPcPRStdiTBONGhnFBSivwKixVA9ZIw+A5OO3yXDw/RLyTPWGrTs0NvvAgJ1gORH8EGoel15YU +NpDQSXuhdfsaa3Ox+M6pCSzyU9XDFES4hqX2iys52qMzVNn6chr3IhUciJFrf2blw2qAsCTz34ZF +iP0Zf3WHHx+xGwpzJFu5ZeAsVMhg02YXP+HMVDNzkQI6pn97djmiH5a2OK61yJN0HZ65tOVgnS9W +0eDrXltMEnAMbEQgqxHY9Bn20pxSN+f6tsIxO0rUFJmtxxr1XV/6B7h8DR/Wgx6zAgMBAAGjQjBA +MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBS1A/d2O2GCahKqGFPr +AyGUv/7OyjANBgkqhkiG9w0BAQsFAAOCAQEAVj3vlNW92nOyWL6ukK2YJ5f+AbGwUgC4TeQbIXQb +fsDuXmkqJa9c1h3a0nnJ85cp4IaH3gRZD/FZ1GSFS5mvJQQeyUapl96Cshtwn5z2r3Ex3XsFpSzT +ucpH9sry9uetuUg/vBa3wW306gmv7PO15wWeph6KU1HWk4HMdJP2udqmJQV0eVp+QD6CSyYRMG7h +P0HHRwA11fXT91Q+gT3aSWqas+8QPebrb9HIIkfLzM8BMZLZGOMivgkeGj5asuRrDFR6fUNOuIml +e9eiPZaGzPImNC1qkp2aGtAw4l1OBLBfiyB+d8E9lYLRRpo7PHi4b6HQDWSieB4pTpPDpFQUWw== +-----END CERTIFICATE----- + +EE Certification Centre Root CA +=============================== +-----BEGIN CERTIFICATE----- +MIIEAzCCAuugAwIBAgIQVID5oHPtPwBMyonY43HmSjANBgkqhkiG9w0BAQUFADB1MQswCQYDVQQG +EwJFRTEiMCAGA1UECgwZQVMgU2VydGlmaXRzZWVyaW1pc2tlc2t1czEoMCYGA1UEAwwfRUUgQ2Vy +dGlmaWNhdGlvbiBDZW50cmUgUm9vdCBDQTEYMBYGCSqGSIb3DQEJARYJcGtpQHNrLmVlMCIYDzIw +MTAxMDMwMTAxMDMwWhgPMjAzMDEyMTcyMzU5NTlaMHUxCzAJBgNVBAYTAkVFMSIwIAYDVQQKDBlB +UyBTZXJ0aWZpdHNlZXJpbWlza2Vza3VzMSgwJgYDVQQDDB9FRSBDZXJ0aWZpY2F0aW9uIENlbnRy +ZSBSb290IENBMRgwFgYJKoZIhvcNAQkBFglwa2lAc2suZWUwggEiMA0GCSqGSIb3DQEBAQUAA4IB +DwAwggEKAoIBAQDIIMDs4MVLqwd4lfNE7vsLDP90jmG7sWLqI9iroWUyeuuOF0+W2Ap7kaJjbMeM +TC55v6kF/GlclY1i+blw7cNRfdCT5mzrMEvhvH2/UpvObntl8jixwKIy72KyaOBhU8E2lf/slLo2 +rpwcpzIP5Xy0xm90/XsY6KxX7QYgSzIwWFv9zajmofxwvI6Sc9uXp3whrj3B9UiHbCe9nyV0gVWw +93X2PaRka9ZP585ArQ/dMtO8ihJTmMmJ+xAdTX7Nfh9WDSFwhfYggx/2uh8Ej+p3iDXE/+pOoYtN +P2MbRMNE1CV2yreN1x5KZmTNXMWcg+HCCIia7E6j8T4cLNlsHaFLAgMBAAGjgYowgYcwDwYDVR0T +AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBLyWj7qVhy/zQas8fElyalL1BSZ +MEUGA1UdJQQ+MDwGCCsGAQUFBwMCBggrBgEFBQcDAQYIKwYBBQUHAwMGCCsGAQUFBwMEBggrBgEF +BQcDCAYIKwYBBQUHAwkwDQYJKoZIhvcNAQEFBQADggEBAHv25MANqhlHt01Xo/6tu7Fq1Q+e2+Rj +xY6hUFaTlrg4wCQiZrxTFGGVv9DHKpY5P30osxBAIWrEr7BSdxjhlthWXePdNl4dp1BUoMUq5KqM +lIpPnTX/dqQGE5Gion0ARD9V04I8GtVbvFZMIi5GQ4okQC3zErg7cBqklrkar4dBGmoYDQZPxz5u +uSlNDUmJEYcyW+ZLBMjkXOZ0c5RdFpgTlf7727FE5TpwrDdr5rMzcijJs1eg9gIWiAYLtqZLICjU +3j2LrTcFU3T+bsy8QxdxXvnFzBqpYe73dgzzcvRyrc9yAjYHR8/vGVCJYMzpJJUPwssd8m92kMfM +dcGWxZ0= +-----END CERTIFICATE----- + +D-TRUST Root Class 3 CA 2 2009 +============================== +-----BEGIN CERTIFICATE----- +MIIEMzCCAxugAwIBAgIDCYPzMA0GCSqGSIb3DQEBCwUAME0xCzAJBgNVBAYTAkRFMRUwEwYDVQQK +DAxELVRydXN0IEdtYkgxJzAlBgNVBAMMHkQtVFJVU1QgUm9vdCBDbGFzcyAzIENBIDIgMjAwOTAe +Fw0wOTExMDUwODM1NThaFw0yOTExMDUwODM1NThaME0xCzAJBgNVBAYTAkRFMRUwEwYDVQQKDAxE +LVRydXN0IEdtYkgxJzAlBgNVBAMMHkQtVFJVU1QgUm9vdCBDbGFzcyAzIENBIDIgMjAwOTCCASIw +DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANOySs96R+91myP6Oi/WUEWJNTrGa9v+2wBoqOAD +ER03UAifTUpolDWzU9GUY6cgVq/eUXjsKj3zSEhQPgrfRlWLJ23DEE0NkVJD2IfgXU42tSHKXzlA +BF9bfsyjxiupQB7ZNoTWSPOSHjRGICTBpFGOShrvUD9pXRl/RcPHAY9RySPocq60vFYJfxLLHLGv +KZAKyVXMD9O0Gu1HNVpK7ZxzBCHQqr0ME7UAyiZsxGsMlFqVlNpQmvH/pStmMaTJOKDfHR+4CS7z +p+hnUquVH+BGPtikw8paxTGA6Eian5Rp/hnd2HN8gcqW3o7tszIFZYQ05ub9VxC1X3a/L7AQDcUC +AwEAAaOCARowggEWMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFP3aFMSfMN4hvR5COfyrYyNJ +4PGEMA4GA1UdDwEB/wQEAwIBBjCB0wYDVR0fBIHLMIHIMIGAoH6gfIZ6bGRhcDovL2RpcmVjdG9y +eS5kLXRydXN0Lm5ldC9DTj1ELVRSVVNUJTIwUm9vdCUyMENsYXNzJTIwMyUyMENBJTIwMiUyMDIw +MDksTz1ELVRydXN0JTIwR21iSCxDPURFP2NlcnRpZmljYXRlcmV2b2NhdGlvbmxpc3QwQ6BBoD+G +PWh0dHA6Ly93d3cuZC10cnVzdC5uZXQvY3JsL2QtdHJ1c3Rfcm9vdF9jbGFzc18zX2NhXzJfMjAw +OS5jcmwwDQYJKoZIhvcNAQELBQADggEBAH+X2zDI36ScfSF6gHDOFBJpiBSVYEQBrLLpME+bUMJm +2H6NMLVwMeniacfzcNsgFYbQDfC+rAF1hM5+n02/t2A7nPPKHeJeaNijnZflQGDSNiH+0LS4F9p0 +o3/U37CYAqxva2ssJSRyoWXuJVrl5jLn8t+rSfrzkGkj2wTZ51xY/GXUl77M/C4KzCUqNQT4YJEV +dT1B/yMfGchs64JTBKbkTCJNjYy6zltz7GRUUG3RnFX7acM2w4y8PIWmawomDeCTmGCufsYkl4ph +X5GOZpIJhzbNi5stPvZR1FDUWSi9g/LMKHtThm3YJohw1+qRzT65ysCQblrGXnRl11z+o+I= +-----END CERTIFICATE----- + +D-TRUST Root Class 3 CA 2 EV 2009 +================================= +-----BEGIN CERTIFICATE----- +MIIEQzCCAyugAwIBAgIDCYP0MA0GCSqGSIb3DQEBCwUAMFAxCzAJBgNVBAYTAkRFMRUwEwYDVQQK +DAxELVRydXN0IEdtYkgxKjAoBgNVBAMMIUQtVFJVU1QgUm9vdCBDbGFzcyAzIENBIDIgRVYgMjAw +OTAeFw0wOTExMDUwODUwNDZaFw0yOTExMDUwODUwNDZaMFAxCzAJBgNVBAYTAkRFMRUwEwYDVQQK +DAxELVRydXN0IEdtYkgxKjAoBgNVBAMMIUQtVFJVU1QgUm9vdCBDbGFzcyAzIENBIDIgRVYgMjAw +OTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJnxhDRwui+3MKCOvXwEz75ivJn9gpfS +egpnljgJ9hBOlSJzmY3aFS3nBfwZcyK3jpgAvDw9rKFs+9Z5JUut8Mxk2og+KbgPCdM03TP1YtHh +zRnp7hhPTFiu4h7WDFsVWtg6uMQYZB7jM7K1iXdODL/ZlGsTl28So/6ZqQTMFexgaDbtCHu39b+T +7WYxg4zGcTSHThfqr4uRjRxWQa4iN1438h3Z0S0NL2lRp75mpoo6Kr3HGrHhFPC+Oh25z1uxav60 +sUYgovseO3Dvk5h9jHOW8sXvhXCtKSb8HgQ+HKDYD8tSg2J87otTlZCpV6LqYQXY+U3EJ/pure35 +11H3a6UCAwEAAaOCASQwggEgMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFNOUikxiEyoZLsyv +cop9NteaHNxnMA4GA1UdDwEB/wQEAwIBBjCB3QYDVR0fBIHVMIHSMIGHoIGEoIGBhn9sZGFwOi8v +ZGlyZWN0b3J5LmQtdHJ1c3QubmV0L0NOPUQtVFJVU1QlMjBSb290JTIwQ2xhc3MlMjAzJTIwQ0El +MjAyJTIwRVYlMjAyMDA5LE89RC1UcnVzdCUyMEdtYkgsQz1ERT9jZXJ0aWZpY2F0ZXJldm9jYXRp +b25saXN0MEagRKBChkBodHRwOi8vd3d3LmQtdHJ1c3QubmV0L2NybC9kLXRydXN0X3Jvb3RfY2xh +c3NfM19jYV8yX2V2XzIwMDkuY3JsMA0GCSqGSIb3DQEBCwUAA4IBAQA07XtaPKSUiO8aEXUHL7P+ +PPoeUSbrh/Yp3uDx1MYkCenBz1UbtDDZzhr+BlGmFaQt77JLvyAoJUnRpjZ3NOhk31KxEcdzes05 +nsKtjHEh8lprr988TlWvsoRlFIm5d8sqMb7Po23Pb0iUMkZv53GMoKaEGTcH8gNFCSuGdXzfX2lX +ANtu2KZyIktQ1HWYVt+3GP9DQ1CuekR78HlR10M9p9OB0/DJT7naxpeG0ILD5EJt/rDiZE4OJudA +NCa1CInXCGNjOCd1HjPqbqjdn5lPdE2BiYBL3ZqXKVwvvoFBuYz/6n1gBp7N1z3TLqMVvKjmJuVv +w9y4AyHqnxbxLFS1 +-----END CERTIFICATE----- + +CA Disig Root R2 +================ +-----BEGIN CERTIFICATE----- +MIIFaTCCA1GgAwIBAgIJAJK4iNuwisFjMA0GCSqGSIb3DQEBCwUAMFIxCzAJBgNVBAYTAlNLMRMw +EQYDVQQHEwpCcmF0aXNsYXZhMRMwEQYDVQQKEwpEaXNpZyBhLnMuMRkwFwYDVQQDExBDQSBEaXNp +ZyBSb290IFIyMB4XDTEyMDcxOTA5MTUzMFoXDTQyMDcxOTA5MTUzMFowUjELMAkGA1UEBhMCU0sx +EzARBgNVBAcTCkJyYXRpc2xhdmExEzARBgNVBAoTCkRpc2lnIGEucy4xGTAXBgNVBAMTEENBIERp +c2lnIFJvb3QgUjIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCio8QACdaFXS1tFPbC +w3OeNcJxVX6B+6tGUODBfEl45qt5WDza/3wcn9iXAng+a0EE6UG9vgMsRfYvZNSrXaNHPWSb6Wia +xswbP7q+sos0Ai6YVRn8jG+qX9pMzk0DIaPY0jSTVpbLTAwAFjxfGs3Ix2ymrdMxp7zo5eFm1tL7 +A7RBZckQrg4FY8aAamkw/dLukO8NJ9+flXP04SXabBbeQTg06ov80egEFGEtQX6sx3dOy1FU+16S +GBsEWmjGycT6txOgmLcRK7fWV8x8nhfRyyX+hk4kLlYMeE2eARKmK6cBZW58Yh2EhN/qwGu1pSqV +g8NTEQxzHQuyRpDRQjrOQG6Vrf/GlK1ul4SOfW+eioANSW1z4nuSHsPzwfPrLgVv2RvPN3YEyLRa +5Beny912H9AZdugsBbPWnDTYltxhh5EF5EQIM8HauQhl1K6yNg3ruji6DOWbnuuNZt2Zz9aJQfYE +koopKW1rOhzndX0CcQ7zwOe9yxndnWCywmZgtrEE7snmhrmaZkCo5xHtgUUDi/ZnWejBBhG93c+A +Ak9lQHhcR1DIm+YfgXvkRKhbhZri3lrVx/k6RGZL5DJUfORsnLMOPReisjQS1n6yqEm70XooQL6i +Fh/f5DcfEXP7kAplQ6INfPgGAVUzfbANuPT1rqVCV3w2EYx7XsQDnYx5nQIDAQABo0IwQDAPBgNV +HRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUtZn4r7CU9eMg1gqtzk5WpC5u +Qu0wDQYJKoZIhvcNAQELBQADggIBACYGXnDnZTPIgm7ZnBc6G3pmsgH2eDtpXi/q/075KMOYKmFM +tCQSin1tERT3nLXK5ryeJ45MGcipvXrA1zYObYVybqjGom32+nNjf7xueQgcnYqfGopTpti72TVV +sRHFqQOzVju5hJMiXn7B9hJSi+osZ7z+Nkz1uM/Rs0mSO9MpDpkblvdhuDvEK7Z4bLQjb/D907Je +dR+Zlais9trhxTF7+9FGs9K8Z7RiVLoJ92Owk6Ka+elSLotgEqv89WBW7xBci8QaQtyDW2QOy7W8 +1k/BfDxujRNt+3vrMNDcTa/F1balTFtxyegxvug4BkihGuLq0t4SOVga/4AOgnXmt8kHbA7v/zjx +mHHEt38OFdAlab0inSvtBfZGR6ztwPDUO+Ls7pZbkBNOHlY667DvlruWIxG68kOGdGSVyCh13x01 +utI3gzhTODY7z2zp+WsO0PsE6E9312UBeIYMej4hYvF/Y3EMyZ9E26gnonW+boE+18DrG5gPcFw0 +sorMwIUY6256s/daoQe/qUKS82Ail+QUoQebTnbAjn39pCXHR+3/H3OszMOl6W8KjptlwlCFtaOg +UxLMVYdh84GuEEZhvUQhuMI9dM9+JDX6HAcOmz0iyu8xL4ysEr3vQCj8KWefshNPZiTEUxnpHikV +7+ZtsH8tZ/3zbBt1RqPlShfppNcL +-----END CERTIFICATE----- + +ACCVRAIZ1 +========= +-----BEGIN CERTIFICATE----- +MIIH0zCCBbugAwIBAgIIXsO3pkN/pOAwDQYJKoZIhvcNAQEFBQAwQjESMBAGA1UEAwwJQUNDVlJB +SVoxMRAwDgYDVQQLDAdQS0lBQ0NWMQ0wCwYDVQQKDARBQ0NWMQswCQYDVQQGEwJFUzAeFw0xMTA1 +MDUwOTM3MzdaFw0zMDEyMzEwOTM3MzdaMEIxEjAQBgNVBAMMCUFDQ1ZSQUlaMTEQMA4GA1UECwwH +UEtJQUNDVjENMAsGA1UECgwEQUNDVjELMAkGA1UEBhMCRVMwggIiMA0GCSqGSIb3DQEBAQUAA4IC +DwAwggIKAoICAQCbqau/YUqXry+XZpp0X9DZlv3P4uRm7x8fRzPCRKPfmt4ftVTdFXxpNRFvu8gM +jmoYHtiP2Ra8EEg2XPBjs5BaXCQ316PWywlxufEBcoSwfdtNgM3802/J+Nq2DoLSRYWoG2ioPej0 +RGy9ocLLA76MPhMAhN9KSMDjIgro6TenGEyxCQ0jVn8ETdkXhBilyNpAlHPrzg5XPAOBOp0KoVdD +aaxXbXmQeOW1tDvYvEyNKKGno6e6Ak4l0Squ7a4DIrhrIA8wKFSVf+DuzgpmndFALW4ir50awQUZ +0m/A8p/4e7MCQvtQqR0tkw8jq8bBD5L/0KIV9VMJcRz/RROE5iZe+OCIHAr8Fraocwa48GOEAqDG +WuzndN9wrqODJerWx5eHk6fGioozl2A3ED6XPm4pFdahD9GILBKfb6qkxkLrQaLjlUPTAYVtjrs7 +8yM2x/474KElB0iryYl0/wiPgL/AlmXz7uxLaL2diMMxs0Dx6M/2OLuc5NF/1OVYm3z61PMOm3WR +5LpSLhl+0fXNWhn8ugb2+1KoS5kE3fj5tItQo05iifCHJPqDQsGH+tUtKSpacXpkatcnYGMN285J +9Y0fkIkyF/hzQ7jSWpOGYdbhdQrqeWZ2iE9x6wQl1gpaepPluUsXQA+xtrn13k/c4LOsOxFwYIRK +Q26ZIMApcQrAZQIDAQABo4ICyzCCAscwfQYIKwYBBQUHAQEEcTBvMEwGCCsGAQUFBzAChkBodHRw +Oi8vd3d3LmFjY3YuZXMvZmlsZWFkbWluL0FyY2hpdm9zL2NlcnRpZmljYWRvcy9yYWl6YWNjdjEu +Y3J0MB8GCCsGAQUFBzABhhNodHRwOi8vb2NzcC5hY2N2LmVzMB0GA1UdDgQWBBTSh7Tj3zcnk1X2 +VuqB5TbMjB4/vTAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFNKHtOPfNyeTVfZW6oHlNsyM +Hj+9MIIBcwYDVR0gBIIBajCCAWYwggFiBgRVHSAAMIIBWDCCASIGCCsGAQUFBwICMIIBFB6CARAA +QQB1AHQAbwByAGkAZABhAGQAIABkAGUAIABDAGUAcgB0AGkAZgBpAGMAYQBjAGkA8wBuACAAUgBh +AO0AegAgAGQAZQAgAGwAYQAgAEEAQwBDAFYAIAAoAEEAZwBlAG4AYwBpAGEAIABkAGUAIABUAGUA +YwBuAG8AbABvAGcA7QBhACAAeQAgAEMAZQByAHQAaQBmAGkAYwBhAGMAaQDzAG4AIABFAGwAZQBj +AHQAcgDzAG4AaQBjAGEALAAgAEMASQBGACAAUQA0ADYAMAAxADEANQA2AEUAKQAuACAAQwBQAFMA +IABlAG4AIABoAHQAdABwADoALwAvAHcAdwB3AC4AYQBjAGMAdgAuAGUAczAwBggrBgEFBQcCARYk +aHR0cDovL3d3dy5hY2N2LmVzL2xlZ2lzbGFjaW9uX2MuaHRtMFUGA1UdHwROMEwwSqBIoEaGRGh0 +dHA6Ly93d3cuYWNjdi5lcy9maWxlYWRtaW4vQXJjaGl2b3MvY2VydGlmaWNhZG9zL3JhaXphY2N2 +MV9kZXIuY3JsMA4GA1UdDwEB/wQEAwIBBjAXBgNVHREEEDAOgQxhY2N2QGFjY3YuZXMwDQYJKoZI +hvcNAQEFBQADggIBAJcxAp/n/UNnSEQU5CmH7UwoZtCPNdpNYbdKl02125DgBS4OxnnQ8pdpD70E +R9m+27Up2pvZrqmZ1dM8MJP1jaGo/AaNRPTKFpV8M9xii6g3+CfYCS0b78gUJyCpZET/LtZ1qmxN +YEAZSUNUY9rizLpm5U9EelvZaoErQNV/+QEnWCzI7UiRfD+mAM/EKXMRNt6GGT6d7hmKG9Ww7Y49 +nCrADdg9ZuM8Db3VlFzi4qc1GwQA9j9ajepDvV+JHanBsMyZ4k0ACtrJJ1vnE5Bc5PUzolVt3OAJ +TS+xJlsndQAJxGJ3KQhfnlmstn6tn1QwIgPBHnFk/vk4CpYY3QIUrCPLBhwepH2NDd4nQeit2hW3 +sCPdK6jT2iWH7ehVRE2I9DZ+hJp4rPcOVkkO1jMl1oRQQmwgEh0q1b688nCBpHBgvgW1m54ERL5h +I6zppSSMEYCUWqKiuUnSwdzRp+0xESyeGabu4VXhwOrPDYTkF7eifKXeVSUG7szAh1xA2syVP1Xg +Nce4hL60Xc16gwFy7ofmXx2utYXGJt/mwZrpHgJHnyqobalbz+xFd3+YJ5oyXSrjhO7FmGYvliAd +3djDJ9ew+f7Zfc3Qn48LFFhRny+Lwzgt3uiP1o2HpPVWQxaZLPSkVrQ0uGE3ycJYgBugl6H8WY3p +EfbRD0tVNEYqi4Y7 +-----END CERTIFICATE----- + +TWCA Global Root CA +=================== +-----BEGIN CERTIFICATE----- +MIIFQTCCAymgAwIBAgICDL4wDQYJKoZIhvcNAQELBQAwUTELMAkGA1UEBhMCVFcxEjAQBgNVBAoT +CVRBSVdBTi1DQTEQMA4GA1UECxMHUm9vdCBDQTEcMBoGA1UEAxMTVFdDQSBHbG9iYWwgUm9vdCBD +QTAeFw0xMjA2MjcwNjI4MzNaFw0zMDEyMzExNTU5NTlaMFExCzAJBgNVBAYTAlRXMRIwEAYDVQQK +EwlUQUlXQU4tQ0ExEDAOBgNVBAsTB1Jvb3QgQ0ExHDAaBgNVBAMTE1RXQ0EgR2xvYmFsIFJvb3Qg +Q0EwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCwBdvI64zEbooh745NnHEKH1Jw7W2C +nJfF10xORUnLQEK1EjRsGcJ0pDFfhQKX7EMzClPSnIyOt7h52yvVavKOZsTuKwEHktSz0ALfUPZV +r2YOy+BHYC8rMjk1Ujoog/h7FsYYuGLWRyWRzvAZEk2tY/XTP3VfKfChMBwqoJimFb3u/Rk28OKR +Q4/6ytYQJ0lM793B8YVwm8rqqFpD/G2Gb3PpN0Wp8DbHzIh1HrtsBv+baz4X7GGqcXzGHaL3SekV +tTzWoWH1EfcFbx39Eb7QMAfCKbAJTibc46KokWofwpFFiFzlmLhxpRUZyXx1EcxwdE8tmx2RRP1W +KKD+u4ZqyPpcC1jcxkt2yKsi2XMPpfRaAok/T54igu6idFMqPVMnaR1sjjIsZAAmY2E2TqNGtz99 +sy2sbZCilaLOz9qC5wc0GZbpuCGqKX6mOL6OKUohZnkfs8O1CWfe1tQHRvMq2uYiN2DLgbYPoA/p +yJV/v1WRBXrPPRXAb94JlAGD1zQbzECl8LibZ9WYkTunhHiVJqRaCPgrdLQABDzfuBSO6N+pjWxn +kjMdwLfS7JLIvgm/LCkFbwJrnu+8vyq8W8BQj0FwcYeyTbcEqYSjMq+u7msXi7Kx/mzhkIyIqJdI +zshNy/MGz19qCkKxHh53L46g5pIOBvwFItIm4TFRfTLcDwIDAQABoyMwITAOBgNVHQ8BAf8EBAMC +AQYwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAgEAXzSBdu+WHdXltdkCY4QWwa6g +cFGn90xHNcgL1yg9iXHZqjNB6hQbbCEAwGxCGX6faVsgQt+i0trEfJdLjbDorMjupWkEmQqSpqsn +LhpNgb+E1HAerUf+/UqdM+DyucRFCCEK2mlpc3INvjT+lIutwx4116KD7+U4x6WFH6vPNOw/KP4M +8VeGTslV9xzU2KV9Bnpv1d8Q34FOIWWxtuEXeZVFBs5fzNxGiWNoRI2T9GRwoD2dKAXDOXC4Ynsg +/eTb6QihuJ49CcdP+yz4k3ZB3lLg4VfSnQO8d57+nile98FRYB/e2guyLXW3Q0iT5/Z5xoRdgFlg +lPx4mI88k1HtQJAH32RjJMtOcQWh15QaiDLxInQirqWm2BJpTGCjAu4r7NRjkgtevi92a6O2JryP +A9gK8kxkRr05YuWW6zRjESjMlfGt7+/cgFhI6Uu46mWs6fyAtbXIRfmswZ/ZuepiiI7E8UuDEq3m +i4TWnsLrgxifarsbJGAzcMzs9zLzXNl5fe+epP7JI8Mk7hWSsT2RTyaGvWZzJBPqpK5jwa19hAM8 +EHiGG3njxPPyBJUgriOCxLM6AGK/5jYk4Ve6xx6QddVfP5VhK8E7zeWzaGHQRiapIVJpLesux+t3 +zqY6tQMzT3bR51xUAV3LePTJDL/PEo4XLSNolOer/qmyKwbQBM0= +-----END CERTIFICATE----- + +TeliaSonera Root CA v1 +====================== +-----BEGIN CERTIFICATE----- +MIIFODCCAyCgAwIBAgIRAJW+FqD3LkbxezmCcvqLzZYwDQYJKoZIhvcNAQEFBQAwNzEUMBIGA1UE +CgwLVGVsaWFTb25lcmExHzAdBgNVBAMMFlRlbGlhU29uZXJhIFJvb3QgQ0EgdjEwHhcNMDcxMDE4 +MTIwMDUwWhcNMzIxMDE4MTIwMDUwWjA3MRQwEgYDVQQKDAtUZWxpYVNvbmVyYTEfMB0GA1UEAwwW +VGVsaWFTb25lcmEgUm9vdCBDQSB2MTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMK+ +6yfwIaPzaSZVfp3FVRaRXP3vIb9TgHot0pGMYzHw7CTww6XScnwQbfQ3t+XmfHnqjLWCi65ItqwA +3GV17CpNX8GH9SBlK4GoRz6JI5UwFpB/6FcHSOcZrr9FZ7E3GwYq/t75rH2D+1665I+XZ75Ljo1k +B1c4VWk0Nj0TSO9P4tNmHqTPGrdeNjPUtAa9GAH9d4RQAEX1jF3oI7x+/jXh7VB7qTCNGdMJjmhn +Xb88lxhTuylixcpecsHHltTbLaC0H2kD7OriUPEMPPCs81Mt8Bz17Ww5OXOAFshSsCPN4D7c3TxH +oLs1iuKYaIu+5b9y7tL6pe0S7fyYGKkmdtwoSxAgHNN/Fnct7W+A90m7UwW7XWjH1Mh1Fj+JWov3 +F0fUTPHSiXk+TT2YqGHeOh7S+F4D4MHJHIzTjU3TlTazN19jY5szFPAtJmtTfImMMsJu7D0hADnJ +oWjiUIMusDor8zagrC/kb2HCUQk5PotTubtn2txTuXZZNp1D5SDgPTJghSJRt8czu90VL6R4pgd7 +gUY2BIbdeTXHlSw7sKMXNeVzH7RcWe/a6hBle3rQf5+ztCo3O3CLm1u5K7fsslESl1MpWtTwEhDc +TwK7EpIvYtQ/aUN8Ddb8WHUBiJ1YFkveupD/RwGJBmr2X7KQarMCpgKIv7NHfirZ1fpoeDVNAgMB +AAGjPzA9MA8GA1UdEwEB/wQFMAMBAf8wCwYDVR0PBAQDAgEGMB0GA1UdDgQWBBTwj1k4ALP1j5qW +DNXr+nuqF+gTEjANBgkqhkiG9w0BAQUFAAOCAgEAvuRcYk4k9AwI//DTDGjkk0kiP0Qnb7tt3oNm +zqjMDfz1mgbldxSR651Be5kqhOX//CHBXfDkH1e3damhXwIm/9fH907eT/j3HEbAek9ALCI18Bmx +0GtnLLCo4MBANzX2hFxc469CeP6nyQ1Q6g2EdvZR74NTxnr/DlZJLo961gzmJ1TjTQpgcmLNkQfW +pb/ImWvtxBnmq0wROMVvMeJuScg/doAmAyYp4Db29iBT4xdwNBedY2gea+zDTYa4EzAvXUYNR0PV +G6pZDrlcjQZIrXSHX8f8MVRBE+LHIQ6e4B4N4cB7Q4WQxYpYxmUKeFfyxiMPAdkgS94P+5KFdSpc +c41teyWRyu5FrgZLAMzTsVlQ2jqIOylDRl6XK1TOU2+NSueW+r9xDkKLfP0ooNBIytrEgUy7onOT +JsjrDNYmiLbAJM+7vVvrdX3pCI6GMyx5dwlppYn8s3CQh3aP0yK7Qs69cwsgJirQmz1wHiRszYd2 +qReWt88NkvuOGKmYSdGe/mBEciG5Ge3C9THxOUiIkCR1VBatzvT4aRRkOfujuLpwQMcnHL/EVlP6 +Y2XQ8xwOFvVrhlhNGNTkDY6lnVuR3HYkUD/GKvvZt5y11ubQ2egZixVxSK236thZiNSQvxaz2ems +WWFUyBy6ysHK4bkgTI86k4mloMy/0/Z1pHWWbVY= +-----END CERTIFICATE----- + +E-Tugra Certification Authority +=============================== +-----BEGIN CERTIFICATE----- +MIIGSzCCBDOgAwIBAgIIamg+nFGby1MwDQYJKoZIhvcNAQELBQAwgbIxCzAJBgNVBAYTAlRSMQ8w +DQYDVQQHDAZBbmthcmExQDA+BgNVBAoMN0UtVHXEn3JhIEVCRyBCaWxpxZ9pbSBUZWtub2xvamls +ZXJpIHZlIEhpem1ldGxlcmkgQS7Fni4xJjAkBgNVBAsMHUUtVHVncmEgU2VydGlmaWthc3lvbiBN +ZXJrZXppMSgwJgYDVQQDDB9FLVR1Z3JhIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTEzMDMw +NTEyMDk0OFoXDTIzMDMwMzEyMDk0OFowgbIxCzAJBgNVBAYTAlRSMQ8wDQYDVQQHDAZBbmthcmEx +QDA+BgNVBAoMN0UtVHXEn3JhIEVCRyBCaWxpxZ9pbSBUZWtub2xvamlsZXJpIHZlIEhpem1ldGxl +cmkgQS7Fni4xJjAkBgNVBAsMHUUtVHVncmEgU2VydGlmaWthc3lvbiBNZXJrZXppMSgwJgYDVQQD +DB9FLVR1Z3JhIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIICIjANBgkqhkiG9w0BAQEFAAOCAg8A +MIICCgKCAgEA4vU/kwVRHoViVF56C/UYB4Oufq9899SKa6VjQzm5S/fDxmSJPZQuVIBSOTkHS0vd +hQd2h8y/L5VMzH2nPbxHD5hw+IyFHnSOkm0bQNGZDbt1bsipa5rAhDGvykPL6ys06I+XawGb1Q5K +CKpbknSFQ9OArqGIW66z6l7LFpp3RMih9lRozt6Plyu6W0ACDGQXwLWTzeHxE2bODHnv0ZEoq1+g +ElIwcxmOj+GMB6LDu0rw6h8VqO4lzKRG+Bsi77MOQ7osJLjFLFzUHPhdZL3Dk14opz8n8Y4e0ypQ +BaNV2cvnOVPAmJ6MVGKLJrD3fY185MaeZkJVgkfnsliNZvcHfC425lAcP9tDJMW/hkd5s3kc91r0 +E+xs+D/iWR+V7kI+ua2oMoVJl0b+SzGPWsutdEcf6ZG33ygEIqDUD13ieU/qbIWGvaimzuT6w+Gz +rt48Ue7LE3wBf4QOXVGUnhMMti6lTPk5cDZvlsouDERVxcr6XQKj39ZkjFqzAQqptQpHF//vkUAq +jqFGOjGY5RH8zLtJVor8udBhmm9lbObDyz51Sf6Pp+KJxWfXnUYTTjF2OySznhFlhqt/7x3U+Lzn +rFpct1pHXFXOVbQicVtbC/DP3KBhZOqp12gKY6fgDT+gr9Oq0n7vUaDmUStVkhUXU8u3Zg5mTPj5 +dUyQ5xJwx0UCAwEAAaNjMGEwHQYDVR0OBBYEFC7j27JJ0JxUeVz6Jyr+zE7S6E5UMA8GA1UdEwEB +/wQFMAMBAf8wHwYDVR0jBBgwFoAULuPbsknQnFR5XPonKv7MTtLoTlQwDgYDVR0PAQH/BAQDAgEG +MA0GCSqGSIb3DQEBCwUAA4ICAQAFNzr0TbdF4kV1JI+2d1LoHNgQk2Xz8lkGpD4eKexd0dCrfOAK +kEh47U6YA5n+KGCRHTAduGN8qOY1tfrTYXbm1gdLymmasoR6d5NFFxWfJNCYExL/u6Au/U5Mh/jO +XKqYGwXgAEZKgoClM4so3O0409/lPun++1ndYYRP0lSWE2ETPo+Aab6TR7U1Q9Jauz1c77NCR807 +VRMGsAnb/WP2OogKmW9+4c4bU2pEZiNRCHu8W1Ki/QY3OEBhj0qWuJA3+GbHeJAAFS6LrVE1Uweo +a2iu+U48BybNCAVwzDk/dr2l02cmAYamU9JgO3xDf1WKvJUawSg5TB9D0pH0clmKuVb8P7Sd2nCc +dlqMQ1DujjByTd//SffGqWfZbawCEeI6FiWnWAjLb1NBnEg4R2gz0dfHj9R0IdTDBZB6/86WiLEV +KV0jq9BgoRJP3vQXzTLlyb/IQ639Lo7xr+L0mPoSHyDYwKcMhcWQ9DstliaxLL5Mq+ux0orJ23gT +Dx4JnW2PAJ8C2sH6H3p6CcRK5ogql5+Ji/03X186zjhZhkuvcQu02PJwT58yE+Owp1fl2tpDy4Q0 +8ijE6m30Ku/Ba3ba+367hTzSU8JNvnHhRdH9I2cNE3X7z2VnIp2usAnRCf8dNL/+I5c30jn6PQ0G +C7TbO6Orb1wdtn7os4I07QZcJA== +-----END CERTIFICATE----- + +T-TeleSec GlobalRoot Class 2 +============================ +-----BEGIN CERTIFICATE----- +MIIDwzCCAqugAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoM +IlQtU3lzdGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBU +cnVzdCBDZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDIwHhcNMDgx +MDAxMTA0MDE0WhcNMzMxMDAxMjM1OTU5WjCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoMIlQtU3lz +dGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBD +ZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDIwggEiMA0GCSqGSIb3 +DQEBAQUAA4IBDwAwggEKAoIBAQCqX9obX+hzkeXaXPSi5kfl82hVYAUdAqSzm1nzHoqvNK38DcLZ +SBnuaY/JIPwhqgcZ7bBcrGXHX+0CfHt8LRvWurmAwhiCFoT6ZrAIxlQjgeTNuUk/9k9uN0goOA/F +vudocP05l03Sx5iRUKrERLMjfTlH6VJi1hKTXrcxlkIF+3anHqP1wvzpesVsqXFP6st4vGCvx970 +2cu+fjOlbpSD8DT6IavqjnKgP6TeMFvvhk1qlVtDRKgQFRzlAVfFmPHmBiiRqiDFt1MmUUOyCxGV +WOHAD3bZwI18gfNycJ5v/hqO2V81xrJvNHy+SE/iWjnX2J14np+GPgNeGYtEotXHAgMBAAGjQjBA +MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBS/WSA2AHmgoCJrjNXy +YdK4LMuCSjANBgkqhkiG9w0BAQsFAAOCAQEAMQOiYQsfdOhyNsZt+U2e+iKo4YFWz827n+qrkRk4 +r6p8FU3ztqONpfSO9kSpp+ghla0+AGIWiPACuvxhI+YzmzB6azZie60EI4RYZeLbK4rnJVM3YlNf +vNoBYimipidx5joifsFvHZVwIEoHNN/q/xWA5brXethbdXwFeilHfkCoMRN3zUA7tFFHei4R40cR +3p1m0IvVVGb6g1XqfMIpiRvpb7PO4gWEyS8+eIVibslfwXhjdFjASBgMmTnrpMwatXlajRWc2BQN +9noHV8cigwUtPJslJj0Ys6lDfMjIq2SPDqO/nBudMNva0Bkuqjzx+zOAduTNrRlPBSeOE6Fuwg== +-----END CERTIFICATE----- + +Atos TrustedRoot 2011 +===================== +-----BEGIN CERTIFICATE----- +MIIDdzCCAl+gAwIBAgIIXDPLYixfszIwDQYJKoZIhvcNAQELBQAwPDEeMBwGA1UEAwwVQXRvcyBU +cnVzdGVkUm9vdCAyMDExMQ0wCwYDVQQKDARBdG9zMQswCQYDVQQGEwJERTAeFw0xMTA3MDcxNDU4 +MzBaFw0zMDEyMzEyMzU5NTlaMDwxHjAcBgNVBAMMFUF0b3MgVHJ1c3RlZFJvb3QgMjAxMTENMAsG +A1UECgwEQXRvczELMAkGA1UEBhMCREUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCV +hTuXbyo7LjvPpvMpNb7PGKw+qtn4TaA+Gke5vJrf8v7MPkfoepbCJI419KkM/IL9bcFyYie96mvr +54rMVD6QUM+A1JX76LWC1BTFtqlVJVfbsVD2sGBkWXppzwO3bw2+yj5vdHLqqjAqc2K+SZFhyBH+ +DgMq92og3AIVDV4VavzjgsG1xZ1kCWyjWZgHJ8cblithdHFsQ/H3NYkQ4J7sVaE3IqKHBAUsR320 +HLliKWYoyrfhk/WklAOZuXCFteZI6o1Q/NnezG8HDt0Lcp2AMBYHlT8oDv3FdU9T1nSatCQujgKR +z3bFmx5VdJx4IbHwLfELn8LVlhgf8FQieowHAgMBAAGjfTB7MB0GA1UdDgQWBBSnpQaxLKYJYO7R +l+lwrrw7GWzbITAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFKelBrEspglg7tGX6XCuvDsZ +bNshMBgGA1UdIAQRMA8wDQYLKwYBBAGwLQMEAQEwDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEB +CwUAA4IBAQAmdzTblEiGKkGdLD4GkGDEjKwLVLgfuXvTBznk+j57sj1O7Z8jvZfza1zv7v1Apt+h +k6EKhqzvINB5Ab149xnYJDE0BAGmuhWawyfc2E8PzBhj/5kPDpFrdRbhIfzYJsdHt6bPWHJxfrrh +TZVHO8mvbaG0weyJ9rQPOLXiZNwlz6bb65pcmaHFCN795trV1lpFDMS3wrUU77QR/w4VtfX128a9 +61qn8FYiqTxlVMYVqL2Gns2Dlmh6cYGJ4Qvh6hEbaAjMaZ7snkGeRDImeuKHCnE96+RapNLbxc3G +3mB/ufNPRJLvKrcYPqcZ2Qt9sTdBQrC6YB3y/gkRsPCHe6ed +-----END CERTIFICATE----- + +QuoVadis Root CA 1 G3 +===================== +-----BEGIN CERTIFICATE----- +MIIFYDCCA0igAwIBAgIUeFhfLq0sGUvjNwc1NBMotZbUZZMwDQYJKoZIhvcNAQELBQAwSDELMAkG +A1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxHjAcBgNVBAMTFVF1b1ZhZGlzIFJv +b3QgQ0EgMSBHMzAeFw0xMjAxMTIxNzI3NDRaFw00MjAxMTIxNzI3NDRaMEgxCzAJBgNVBAYTAkJN +MRkwFwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMR4wHAYDVQQDExVRdW9WYWRpcyBSb290IENBIDEg +RzMwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCgvlAQjunybEC0BJyFuTHK3C3kEakE +PBtVwedYMB0ktMPvhd6MLOHBPd+C5k+tR4ds7FtJwUrVu4/sh6x/gpqG7D0DmVIB0jWerNrwU8lm +PNSsAgHaJNM7qAJGr6Qc4/hzWHa39g6QDbXwz8z6+cZM5cOGMAqNF34168Xfuw6cwI2H44g4hWf6 +Pser4BOcBRiYz5P1sZK0/CPTz9XEJ0ngnjybCKOLXSoh4Pw5qlPafX7PGglTvF0FBM+hSo+LdoIN +ofjSxxR3W5A2B4GbPgb6Ul5jxaYA/qXpUhtStZI5cgMJYr2wYBZupt0lwgNm3fME0UDiTouG9G/l +g6AnhF4EwfWQvTA9xO+oabw4m6SkltFi2mnAAZauy8RRNOoMqv8hjlmPSlzkYZqn0ukqeI1RPToV +7qJZjqlc3sX5kCLliEVx3ZGZbHqfPT2YfF72vhZooF6uCyP8Wg+qInYtyaEQHeTTRCOQiJ/GKubX +9ZqzWB4vMIkIG1SitZgj7Ah3HJVdYdHLiZxfokqRmu8hqkkWCKi9YSgxyXSthfbZxbGL0eUQMk1f +iyA6PEkfM4VZDdvLCXVDaXP7a3F98N/ETH3Goy7IlXnLc6KOTk0k+17kBL5yG6YnLUlamXrXXAkg +t3+UuU/xDRxeiEIbEbfnkduebPRq34wGmAOtzCjvpUfzUwIDAQABo0IwQDAPBgNVHRMBAf8EBTAD +AQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUo5fW816iEOGrRZ88F2Q87gFwnMwwDQYJKoZI +hvcNAQELBQADggIBABj6W3X8PnrHX3fHyt/PX8MSxEBd1DKquGrX1RUVRpgjpeaQWxiZTOOtQqOC +MTaIzen7xASWSIsBx40Bz1szBpZGZnQdT+3Btrm0DWHMY37XLneMlhwqI2hrhVd2cDMT/uFPpiN3 +GPoajOi9ZcnPP/TJF9zrx7zABC4tRi9pZsMbj/7sPtPKlL92CiUNqXsCHKnQO18LwIE6PWThv6ct +Tr1NxNgpxiIY0MWscgKCP6o6ojoilzHdCGPDdRS5YCgtW2jgFqlmgiNR9etT2DGbe+m3nUvriBbP ++V04ikkwj+3x6xn0dxoxGE1nVGwvb2X52z3sIexe9PSLymBlVNFxZPT5pqOBMzYzcfCkeF9OrYMh +3jRJjehZrJ3ydlo28hP0r+AJx2EqbPfgna67hkooby7utHnNkDPDs3b69fBsnQGQ+p6Q9pxyz0fa +wx/kNSBT8lTR32GDpgLiJTjehTItXnOQUl1CxM49S+H5GYQd1aJQzEH7QRTDvdbJWqNjZgKAvQU6 +O0ec7AAmTPWIUb+oI38YB7AL7YsmoWTTYUrrXJ/es69nA7Mf3W1daWhpq1467HxpvMc7hU6eFbm0 +FU/DlXpY18ls6Wy58yljXrQs8C097Vpl4KlbQMJImYFtnh8GKjwStIsPm6Ik8KaN1nrgS7ZklmOV +hMJKzRwuJIczYOXD +-----END CERTIFICATE----- + +QuoVadis Root CA 2 G3 +===================== +-----BEGIN CERTIFICATE----- +MIIFYDCCA0igAwIBAgIURFc0JFuBiZs18s64KztbpybwdSgwDQYJKoZIhvcNAQELBQAwSDELMAkG +A1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxHjAcBgNVBAMTFVF1b1ZhZGlzIFJv +b3QgQ0EgMiBHMzAeFw0xMjAxMTIxODU5MzJaFw00MjAxMTIxODU5MzJaMEgxCzAJBgNVBAYTAkJN +MRkwFwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMR4wHAYDVQQDExVRdW9WYWRpcyBSb290IENBIDIg +RzMwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQChriWyARjcV4g/Ruv5r+LrI3HimtFh +ZiFfqq8nUeVuGxbULX1QsFN3vXg6YOJkApt8hpvWGo6t/x8Vf9WVHhLL5hSEBMHfNrMWn4rjyduY +NM7YMxcoRvynyfDStNVNCXJJ+fKH46nafaF9a7I6JaltUkSs+L5u+9ymc5GQYaYDFCDy54ejiK2t +oIz/pgslUiXnFgHVy7g1gQyjO/Dh4fxaXc6AcW34Sas+O7q414AB+6XrW7PFXmAqMaCvN+ggOp+o +MiwMzAkd056OXbxMmO7FGmh77FOm6RQ1o9/NgJ8MSPsc9PG/Srj61YxxSscfrf5BmrODXfKEVu+l +V0POKa2Mq1W/xPtbAd0jIaFYAI7D0GoT7RPjEiuA3GfmlbLNHiJuKvhB1PLKFAeNilUSxmn1uIZo +L1NesNKqIcGY5jDjZ1XHm26sGahVpkUG0CM62+tlXSoREfA7T8pt9DTEceT/AFr2XK4jYIVz8eQQ +sSWu1ZK7E8EM4DnatDlXtas1qnIhO4M15zHfeiFuuDIIfR0ykRVKYnLP43ehvNURG3YBZwjgQQvD +6xVu+KQZ2aKrr+InUlYrAoosFCT5v0ICvybIxo/gbjh9Uy3l7ZizlWNof/k19N+IxWA1ksB8aRxh +lRbQ694Lrz4EEEVlWFA4r0jyWbYW8jwNkALGcC4BrTwV1wIDAQABo0IwQDAPBgNVHRMBAf8EBTAD +AQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQU7edvdlq/YOxJW8ald7tyFnGbxD0wDQYJKoZI +hvcNAQELBQADggIBAJHfgD9DCX5xwvfrs4iP4VGyvD11+ShdyLyZm3tdquXK4Qr36LLTn91nMX66 +AarHakE7kNQIXLJgapDwyM4DYvmL7ftuKtwGTTwpD4kWilhMSA/ohGHqPHKmd+RCroijQ1h5fq7K +pVMNqT1wvSAZYaRsOPxDMuHBR//47PERIjKWnML2W2mWeyAMQ0GaW/ZZGYjeVYg3UQt4XAoeo0L9 +x52ID8DyeAIkVJOviYeIyUqAHerQbj5hLja7NQ4nlv1mNDthcnPxFlxHBlRJAHpYErAK74X9sbgz +dWqTHBLmYF5vHX/JHyPLhGGfHoJE+V+tYlUkmlKY7VHnoX6XOuYvHxHaU4AshZ6rNRDbIl9qxV6X +U/IyAgkwo1jwDQHVcsaxfGl7w/U2Rcxhbl5MlMVerugOXou/983g7aEOGzPuVBj+D77vfoRrQ+Nw +mNtddbINWQeFFSM51vHfqSYP1kjHs6Yi9TM3WpVHn3u6GBVv/9YUZINJ0gpnIdsPNWNgKCLjsZWD +zYWm3S8P52dSbrsvhXz1SnPnxT7AvSESBT/8twNJAlvIJebiVDj1eYeMHVOyToV7BjjHLPj4sHKN +JeV3UvQDHEimUF+IIDBu8oJDqz2XhOdT+yHBTw8imoa4WSr2Rz0ZiC3oheGe7IUIarFsNMkd7Egr +O3jtZsSOeWmD3n+M +-----END CERTIFICATE----- + +QuoVadis Root CA 3 G3 +===================== +-----BEGIN CERTIFICATE----- +MIIFYDCCA0igAwIBAgIULvWbAiin23r/1aOp7r0DoM8Sah0wDQYJKoZIhvcNAQELBQAwSDELMAkG +A1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxHjAcBgNVBAMTFVF1b1ZhZGlzIFJv +b3QgQ0EgMyBHMzAeFw0xMjAxMTIyMDI2MzJaFw00MjAxMTIyMDI2MzJaMEgxCzAJBgNVBAYTAkJN +MRkwFwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMR4wHAYDVQQDExVRdW9WYWRpcyBSb290IENBIDMg +RzMwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCzyw4QZ47qFJenMioKVjZ/aEzHs286 +IxSR/xl/pcqs7rN2nXrpixurazHb+gtTTK/FpRp5PIpM/6zfJd5O2YIyC0TeytuMrKNuFoM7pmRL +Mon7FhY4futD4tN0SsJiCnMK3UmzV9KwCoWdcTzeo8vAMvMBOSBDGzXRU7Ox7sWTaYI+FrUoRqHe +6okJ7UO4BUaKhvVZR74bbwEhELn9qdIoyhA5CcoTNs+cra1AdHkrAj80//ogaX3T7mH1urPnMNA3 +I4ZyYUUpSFlob3emLoG+B01vr87ERRORFHAGjx+f+IdpsQ7vw4kZ6+ocYfx6bIrc1gMLnia6Et3U +VDmrJqMz6nWB2i3ND0/kA9HvFZcba5DFApCTZgIhsUfei5pKgLlVj7WiL8DWM2fafsSntARE60f7 +5li59wzweyuxwHApw0BiLTtIadwjPEjrewl5qW3aqDCYz4ByA4imW0aucnl8CAMhZa634RylsSqi +Md5mBPfAdOhx3v89WcyWJhKLhZVXGqtrdQtEPREoPHtht+KPZ0/l7DxMYIBpVzgeAVuNVejH38DM +dyM0SXV89pgR6y3e7UEuFAUCf+D+IOs15xGsIs5XPd7JMG0QA4XN8f+MFrXBsj6IbGB/kE+V9/Yt +rQE5BwT6dYB9v0lQ7e/JxHwc64B+27bQ3RP+ydOc17KXqQIDAQABo0IwQDAPBgNVHRMBAf8EBTAD +AQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUxhfQvKjqAkPyGwaZXSuQILnXnOQwDQYJKoZI +hvcNAQELBQADggIBADRh2Va1EodVTd2jNTFGu6QHcrxfYWLopfsLN7E8trP6KZ1/AvWkyaiTt3px +KGmPc+FSkNrVvjrlt3ZqVoAh313m6Tqe5T72omnHKgqwGEfcIHB9UqM+WXzBusnIFUBhynLWcKzS +t/Ac5IYp8M7vaGPQtSCKFWGafoaYtMnCdvvMujAWzKNhxnQT5WvvoxXqA/4Ti2Tk08HS6IT7SdEQ +TXlm66r99I0xHnAUrdzeZxNMgRVhvLfZkXdxGYFgu/BYpbWcC/ePIlUnwEsBbTuZDdQdm2NnL9Du +DcpmvJRPpq3t/O5jrFc/ZSXPsoaP0Aj/uHYUbt7lJ+yreLVTubY/6CD50qi+YUbKh4yE8/nxoGib +Ih6BJpsQBJFxwAYf3KDTuVan45gtf4Od34wrnDKOMpTwATwiKp9Dwi7DmDkHOHv8XgBCH/MyJnmD +hPbl8MFREsALHgQjDFSlTC9JxUrRtm5gDWv8a4uFJGS3iQ6rJUdbPM9+Sb3H6QrG2vd+DhcI00iX +0HGS8A85PjRqHH3Y8iKuu2n0M7SmSFXRDw4m6Oy2Cy2nhTXN/VnIn9HNPlopNLk9hM6xZdRZkZFW +dSHBd575euFgndOtBBj0fOtek49TSiIp+EgrPk2GrFt/ywaZWWDYWGWVjUTR939+J399roD1B0y2 +PpxxVJkES/1Y+Zj0 +-----END CERTIFICATE----- + +DigiCert Assured ID Root G2 +=========================== +-----BEGIN CERTIFICATE----- +MIIDljCCAn6gAwIBAgIQC5McOtY5Z+pnI7/Dr5r0SzANBgkqhkiG9w0BAQsFADBlMQswCQYDVQQG +EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMSQw +IgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgRzIwHhcNMTMwODAxMTIwMDAwWhcNMzgw +MTE1MTIwMDAwWjBlMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQL +ExB3d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgRzIw +ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ5ygvUj82ckmIkzTz+GoeMVSAn61UQbVH +35ao1K+ALbkKz3X9iaV9JPrjIgwrvJUXCzO/GU1BBpAAvQxNEP4HteccbiJVMWWXvdMX0h5i89vq +bFCMP4QMls+3ywPgym2hFEwbid3tALBSfK+RbLE4E9HpEgjAALAcKxHad3A2m67OeYfcgnDmCXRw +VWmvo2ifv922ebPynXApVfSr/5Vh88lAbx3RvpO704gqu52/clpWcTs/1PPRCv4o76Pu2ZmvA9OP +YLfykqGxvYmJHzDNw6YuYjOuFgJ3RFrngQo8p0Quebg/BLxcoIfhG69Rjs3sLPr4/m3wOnyqi+Rn +lTGNAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgGGMB0GA1UdDgQWBBTO +w0q5mVXyuNtgv6l+vVa1lzan1jANBgkqhkiG9w0BAQsFAAOCAQEAyqVVjOPIQW5pJ6d1Ee88hjZv +0p3GeDgdaZaikmkuOGybfQTUiaWxMTeKySHMq2zNixya1r9I0jJmwYrA8y8678Dj1JGG0VDjA9tz +d29KOVPt3ibHtX2vK0LRdWLjSisCx1BL4GnilmwORGYQRI+tBev4eaymG+g3NJ1TyWGqolKvSnAW +hsI6yLETcDbYz+70CjTVW0z9B5yiutkBclzzTcHdDrEcDcRjvq30FPuJ7KJBDkzMyFdA0G4Dqs0M +jomZmWzwPDCvON9vvKO+KSAnq3T/EyJ43pdSVR6DtVQgA+6uwE9W3jfMw3+qBCe703e4YtsXfJwo +IhNzbM8m9Yop5w== +-----END CERTIFICATE----- + +DigiCert Assured ID Root G3 +=========================== +-----BEGIN CERTIFICATE----- +MIICRjCCAc2gAwIBAgIQC6Fa+h3foLVJRK/NJKBs7DAKBggqhkjOPQQDAzBlMQswCQYDVQQGEwJV +UzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMSQwIgYD +VQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgRzMwHhcNMTMwODAxMTIwMDAwWhcNMzgwMTE1 +MTIwMDAwWjBlMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 +d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgRzMwdjAQ +BgcqhkjOPQIBBgUrgQQAIgNiAAQZ57ysRGXtzbg/WPuNsVepRC0FFfLvC/8QdJ+1YlJfZn4f5dwb +RXkLzMZTCp2NXQLZqVneAlr2lSoOjThKiknGvMYDOAdfVdp+CW7if17QRSAPWXYQ1qAk8C3eNvJs +KTmjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgGGMB0GA1UdDgQWBBTL0L2p4ZgF +UaFNN6KDec6NHSrkhDAKBggqhkjOPQQDAwNnADBkAjAlpIFFAmsSS3V0T8gj43DydXLefInwz5Fy +YZ5eEJJZVrmDxxDnOOlYJjZ91eQ0hjkCMHw2U/Aw5WJjOpnitqM7mzT6HtoQknFekROn3aRukswy +1vUhZscv6pZjamVFkpUBtA== +-----END CERTIFICATE----- + +DigiCert Global Root G2 +======================= +-----BEGIN CERTIFICATE----- +MIIDjjCCAnagAwIBAgIQAzrx5qcRqaC7KGSxHQn65TANBgkqhkiG9w0BAQsFADBhMQswCQYDVQQG +EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMSAw +HgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBHMjAeFw0xMzA4MDExMjAwMDBaFw0zODAxMTUx +MjAwMDBaMGExCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3 +dy5kaWdpY2VydC5jb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IEcyMIIBIjANBgkq +hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuzfNNNx7a8myaJCtSnX/RrohCgiN9RlUyfuI2/Ou8jqJ +kTx65qsGGmvPrC3oXgkkRLpimn7Wo6h+4FR1IAWsULecYxpsMNzaHxmx1x7e/dfgy5SDN67sH0NO +3Xss0r0upS/kqbitOtSZpLYl6ZtrAGCSYP9PIUkY92eQq2EGnI/yuum06ZIya7XzV+hdG82MHauV +BJVJ8zUtluNJbd134/tJS7SsVQepj5WztCO7TG1F8PapspUwtP1MVYwnSlcUfIKdzXOS0xZKBgyM +UNGPHgm+F6HmIcr9g+UQvIOlCsRnKPZzFBQ9RnbDhxSJITRNrw9FDKZJobq7nMWxM4MphQIDAQAB +o0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAdBgNVHQ4EFgQUTiJUIBiV5uNu +5g/6+rkS7QYXjzkwDQYJKoZIhvcNAQELBQADggEBAGBnKJRvDkhj6zHd6mcY1Yl9PMWLSn/pvtsr +F9+wX3N3KjITOYFnQoQj8kVnNeyIv/iPsGEMNKSuIEyExtv4NeF22d+mQrvHRAiGfzZ0JFrabA0U +WTW98kndth/Jsw1HKj2ZL7tcu7XUIOGZX1NGFdtom/DzMNU+MeKNhJ7jitralj41E6Vf8PlwUHBH +QRFXGU7Aj64GxJUTFy8bJZ918rGOmaFvE7FBcf6IKshPECBV1/MUReXgRPTqh5Uykw7+U0b6LJ3/ +iyK5S9kJRaTepLiaWN0bfVKfjllDiIGknibVb63dDcY3fe0Dkhvld1927jyNxF1WW6LZZm6zNTfl +MrY= +-----END CERTIFICATE----- + +DigiCert Global Root G3 +======================= +-----BEGIN CERTIFICATE----- +MIICPzCCAcWgAwIBAgIQBVVWvPJepDU1w6QP1atFcjAKBggqhkjOPQQDAzBhMQswCQYDVQQGEwJV +UzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMSAwHgYD +VQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBHMzAeFw0xMzA4MDExMjAwMDBaFw0zODAxMTUxMjAw +MDBaMGExCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5k +aWdpY2VydC5jb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IEczMHYwEAYHKoZIzj0C +AQYFK4EEACIDYgAE3afZu4q4C/sLfyHS8L6+c/MzXRq8NOrexpu80JX28MzQC7phW1FGfp4tn+6O +YwwX7Adw9c+ELkCDnOg/QW07rdOkFFk2eJ0DQ+4QE2xy3q6Ip6FrtUPOZ9wj/wMco+I+o0IwQDAP +BgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAdBgNVHQ4EFgQUs9tIpPmhxdiuNkHMEWNp +Yim8S8YwCgYIKoZIzj0EAwMDaAAwZQIxAK288mw/EkrRLTnDCgmXc/SINoyIJ7vmiI1Qhadj+Z4y +3maTD/HMsQmP3Wyr+mt/oAIwOWZbwmSNuJ5Q3KjVSaLtx9zRSX8XAbjIho9OjIgrqJqpisXRAL34 +VOKa5Vt8sycX +-----END CERTIFICATE----- + +DigiCert Trusted Root G4 +======================== +-----BEGIN CERTIFICATE----- +MIIFkDCCA3igAwIBAgIQBZsbV56OITLiOQe9p3d1XDANBgkqhkiG9w0BAQwFADBiMQswCQYDVQQG +EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMSEw +HwYDVQQDExhEaWdpQ2VydCBUcnVzdGVkIFJvb3QgRzQwHhcNMTMwODAxMTIwMDAwWhcNMzgwMTE1 +MTIwMDAwWjBiMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 +d3cuZGlnaWNlcnQuY29tMSEwHwYDVQQDExhEaWdpQ2VydCBUcnVzdGVkIFJvb3QgRzQwggIiMA0G +CSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC/5pBzaN675F1KPDAiMGkz7MKnJS7JIT3yithZwuEp +pz1Yq3aaza57G4QNxDAf8xukOBbrVsaXbR2rsnnyyhHS5F/WBTxSD1Ifxp4VpX6+n6lXFllVcq9o +k3DCsrp1mWpzMpTREEQQLt+C8weE5nQ7bXHiLQwb7iDVySAdYyktzuxeTsiT+CFhmzTrBcZe7Fsa +vOvJz82sNEBfsXpm7nfISKhmV1efVFiODCu3T6cw2Vbuyntd463JT17lNecxy9qTXtyOj4DatpGY +QJB5w3jHtrHEtWoYOAMQjdjUN6QuBX2I9YI+EJFwq1WCQTLX2wRzKm6RAXwhTNS8rhsDdV14Ztk6 +MUSaM0C/CNdaSaTC5qmgZ92kJ7yhTzm1EVgX9yRcRo9k98FpiHaYdj1ZXUJ2h4mXaXpI8OCiEhtm +mnTK3kse5w5jrubU75KSOp493ADkRSWJtppEGSt+wJS00mFt6zPZxd9LBADMfRyVw4/3IbKyEbe7 +f/LVjHAsQWCqsWMYRJUadmJ+9oCw++hkpjPRiQfhvbfmQ6QYuKZ3AeEPlAwhHbJUKSWJbOUOUlFH +dL4mrLZBdd56rF+NP8m800ERElvlEFDrMcXKchYiCd98THU/Y+whX8QgUWtvsauGi0/C1kVfnSD8 +oR7FwI+isX4KJpn15GkvmB0t9dmpsh3lGwIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud +DwEB/wQEAwIBhjAdBgNVHQ4EFgQU7NfjgtJxXWRM3y5nP+e6mK4cD08wDQYJKoZIhvcNAQEMBQAD +ggIBALth2X2pbL4XxJEbw6GiAI3jZGgPVs93rnD5/ZpKmbnJeFwMDF/k5hQpVgs2SV1EY+CtnJYY +ZhsjDT156W1r1lT40jzBQ0CuHVD1UvyQO7uYmWlrx8GnqGikJ9yd+SeuMIW59mdNOj6PWTkiU0Tr +yF0Dyu1Qen1iIQqAyHNm0aAFYF/opbSnr6j3bTWcfFqK1qI4mfN4i/RN0iAL3gTujJtHgXINwBQy +7zBZLq7gcfJW5GqXb5JQbZaNaHqasjYUegbyJLkJEVDXCLG4iXqEI2FCKeWjzaIgQdfRnGTZ6iah +ixTXTBmyUEFxPT9NcCOGDErcgdLMMpSEDQgJlxxPwO5rIHQw0uA5NBCFIRUBCOhVMt5xSdkoF1BN +5r5N0XWs0Mr7QbhDparTwwVETyw2m+L64kW4I1NsBm9nVX9GtUw/bihaeSbSpKhil9Ie4u1Ki7wb +/UdKDd9nZn6yW0HQO+T0O/QEY+nvwlQAUaCKKsnOeMzV6ocEGLPOr0mIr/OSmbaz5mEP0oUA51Aa +5BuVnRmhuZyxm7EAHu/QD09CbMkKvO5D+jpxpchNJqU1/YldvIViHTLSoCtU7ZpXwdv6EM8Zt4tK +G48BtieVU+i2iW1bvGjUI+iLUaJW+fCmgKDWHrO8Dw9TdSmq6hN35N6MgSGtBxBHEa2HPQfRdbzP +82Z+ +-----END CERTIFICATE----- + +COMODO RSA Certification Authority +================================== +-----BEGIN CERTIFICATE----- +MIIF2DCCA8CgAwIBAgIQTKr5yttjb+Af907YWwOGnTANBgkqhkiG9w0BAQwFADCBhTELMAkGA1UE +BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgG +A1UEChMRQ09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBSU0EgQ2VydGlmaWNhdGlv +biBBdXRob3JpdHkwHhcNMTAwMTE5MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCBhTELMAkGA1UEBhMC +R0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UE +ChMRQ09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBSU0EgQ2VydGlmaWNhdGlvbiBB +dXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCR6FSS0gpWsawNJN3Fz0Rn +dJkrN6N9I3AAcbxT38T6KhKPS38QVr2fcHK3YX/JSw8Xpz3jsARh7v8Rl8f0hj4K+j5c+ZPmNHrZ +FGvnnLOFoIJ6dq9xkNfs/Q36nGz637CC9BR++b7Epi9Pf5l/tfxnQ3K9DADWietrLNPtj5gcFKt+ +5eNu/Nio5JIk2kNrYrhV/erBvGy2i/MOjZrkm2xpmfh4SDBF1a3hDTxFYPwyllEnvGfDyi62a+pG +x8cgoLEfZd5ICLqkTqnyg0Y3hOvozIFIQ2dOciqbXL1MGyiKXCJ7tKuY2e7gUYPDCUZObT6Z+pUX +2nwzV0E8jVHtC7ZcryxjGt9XyD+86V3Em69FmeKjWiS0uqlWPc9vqv9JWL7wqP/0uK3pN/u6uPQL +OvnoQ0IeidiEyxPx2bvhiWC4jChWrBQdnArncevPDt09qZahSL0896+1DSJMwBGB7FY79tOi4lu3 +sgQiUpWAk2nojkxl8ZEDLXB0AuqLZxUpaVICu9ffUGpVRr+goyhhf3DQw6KqLCGqR84onAZFdr+C +GCe01a60y1Dma/RMhnEw6abfFobg2P9A3fvQQoh/ozM6LlweQRGBY84YcWsr7KaKtzFcOmpH4MN5 +WdYgGq/yapiqcrxXStJLnbsQ/LBMQeXtHT1eKJ2czL+zUdqnR+WEUwIDAQABo0IwQDAdBgNVHQ4E +FgQUu69+Aj36pvE8hI6t7jiY7NkyMtQwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8w +DQYJKoZIhvcNAQEMBQADggIBAArx1UaEt65Ru2yyTUEUAJNMnMvlwFTPoCWOAvn9sKIN9SCYPBMt +rFaisNZ+EZLpLrqeLppysb0ZRGxhNaKatBYSaVqM4dc+pBroLwP0rmEdEBsqpIt6xf4FpuHA1sj+ +nq6PK7o9mfjYcwlYRm6mnPTXJ9OV2jeDchzTc+CiR5kDOF3VSXkAKRzH7JsgHAckaVd4sjn8OoSg +tZx8jb8uk2IntznaFxiuvTwJaP+EmzzV1gsD41eeFPfR60/IvYcjt7ZJQ3mFXLrrkguhxuhoqEwW +sRqZCuhTLJK7oQkYdQxlqHvLI7cawiiFwxv/0Cti76R7CZGYZ4wUAc1oBmpjIXUDgIiKboHGhfKp +pC3n9KUkEEeDys30jXlYsQab5xoq2Z0B15R97QNKyvDb6KkBPvVWmckejkk9u+UJueBPSZI9FoJA +zMxZxuY67RIuaTxslbH9qh17f4a+Hg4yRvv7E491f0yLS0Zj/gA0QHDBw7mh3aZw4gSzQbzpgJHq +ZJx64SIDqZxubw5lT2yHh17zbqD5daWbQOhTsiedSrnAdyGN/4fy3ryM7xfft0kL0fJuMAsaDk52 +7RH89elWsn2/x20Kk4yl0MC2Hb46TpSi125sC8KKfPog88Tk5c0NqMuRkrF8hey1FGlmDoLnzc7I +LaZRfyHBNVOFBkpdn627G190 +-----END CERTIFICATE----- + +USERTrust RSA Certification Authority +===================================== +-----BEGIN CERTIFICATE----- +MIIF3jCCA8agAwIBAgIQAf1tMPyjylGoG7xkDjUDLTANBgkqhkiG9w0BAQwFADCBiDELMAkGA1UE +BhMCVVMxEzARBgNVBAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0plcnNleSBDaXR5MR4wHAYDVQQK +ExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNVBAMTJVVTRVJUcnVzdCBSU0EgQ2VydGlmaWNh +dGlvbiBBdXRob3JpdHkwHhcNMTAwMjAxMDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCBiDELMAkGA1UE +BhMCVVMxEzARBgNVBAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0plcnNleSBDaXR5MR4wHAYDVQQK +ExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNVBAMTJVVTRVJUcnVzdCBSU0EgQ2VydGlmaWNh +dGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCAEmUXNg7D2wiz +0KxXDXbtzSfTTK1Qg2HiqiBNCS1kCdzOiZ/MPans9s/B3PHTsdZ7NygRK0faOca8Ohm0X6a9fZ2j +Y0K2dvKpOyuR+OJv0OwWIJAJPuLodMkYtJHUYmTbf6MG8YgYapAiPLz+E/CHFHv25B+O1ORRxhFn +RghRy4YUVD+8M/5+bJz/Fp0YvVGONaanZshyZ9shZrHUm3gDwFA66Mzw3LyeTP6vBZY1H1dat//O ++T23LLb2VN3I5xI6Ta5MirdcmrS3ID3KfyI0rn47aGYBROcBTkZTmzNg95S+UzeQc0PzMsNT79uq +/nROacdrjGCT3sTHDN/hMq7MkztReJVni+49Vv4M0GkPGw/zJSZrM233bkf6c0Plfg6lZrEpfDKE +Y1WJxA3Bk1QwGROs0303p+tdOmw1XNtB1xLaqUkL39iAigmTYo61Zs8liM2EuLE/pDkP2QKe6xJM +lXzzawWpXhaDzLhn4ugTncxbgtNMs+1b/97lc6wjOy0AvzVVdAlJ2ElYGn+SNuZRkg7zJn0cTRe8 +yexDJtC/QV9AqURE9JnnV4eeUB9XVKg+/XRjL7FQZQnmWEIuQxpMtPAlR1n6BB6T1CZGSlCBst6+ +eLf8ZxXhyVeEHg9j1uliutZfVS7qXMYoCAQlObgOK6nyTJccBz8NUvXt7y+CDwIDAQABo0IwQDAd +BgNVHQ4EFgQUU3m/WqorSs9UgOHYm8Cd8rIDZsswDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQF +MAMBAf8wDQYJKoZIhvcNAQEMBQADggIBAFzUfA3P9wF9QZllDHPFUp/L+M+ZBn8b2kMVn54CVVeW +FPFSPCeHlCjtHzoBN6J2/FNQwISbxmtOuowhT6KOVWKR82kV2LyI48SqC/3vqOlLVSoGIG1VeCkZ +7l8wXEskEVX/JJpuXior7gtNn3/3ATiUFJVDBwn7YKnuHKsSjKCaXqeYalltiz8I+8jRRa8YFWSQ +Eg9zKC7F4iRO/Fjs8PRF/iKz6y+O0tlFYQXBl2+odnKPi4w2r78NBc5xjeambx9spnFixdjQg3IM +8WcRiQycE0xyNN+81XHfqnHd4blsjDwSXWXavVcStkNr/+XeTWYRUc+ZruwXtuhxkYzeSf7dNXGi +FSeUHM9h4ya7b6NnJSFd5t0dCy5oGzuCr+yDZ4XUmFF0sbmZgIn/f3gZXHlKYC6SQK5MNyosycdi +yA5d9zZbyuAlJQG03RoHnHcAP9Dc1ew91Pq7P8yF1m9/qS3fuQL39ZeatTXaw2ewh0qpKJ4jjv9c +J2vhsE/zB+4ALtRZh8tSQZXq9EfX7mRBVXyNWQKV3WKdwrnuWih0hKWbt5DHDAff9Yk2dDLWKMGw +sAvgnEzDHNb842m1R0aBL6KCq9NjRHDEjf8tM7qtj3u1cIiuPhnPQCjY/MiQu12ZIvVS5ljFH4gx +Q+6IHdfGjjxDah2nGN59PRbxYvnKkKj9 +-----END CERTIFICATE----- + +USERTrust ECC Certification Authority +===================================== +-----BEGIN CERTIFICATE----- +MIICjzCCAhWgAwIBAgIQXIuZxVqUxdJxVt7NiYDMJjAKBggqhkjOPQQDAzCBiDELMAkGA1UEBhMC +VVMxEzARBgNVBAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0plcnNleSBDaXR5MR4wHAYDVQQKExVU +aGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNVBAMTJVVTRVJUcnVzdCBFQ0MgQ2VydGlmaWNhdGlv +biBBdXRob3JpdHkwHhcNMTAwMjAxMDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCBiDELMAkGA1UEBhMC +VVMxEzARBgNVBAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0plcnNleSBDaXR5MR4wHAYDVQQKExVU +aGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNVBAMTJVVTRVJUcnVzdCBFQ0MgQ2VydGlmaWNhdGlv +biBBdXRob3JpdHkwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQarFRaqfloI+d61SRvU8Za2EurxtW2 +0eZzca7dnNYMYf3boIkDuAUU7FfO7l0/4iGzzvfUinngo4N+LZfQYcTxmdwlkWOrfzCjtHDix6Ez +nPO/LlxTsV+zfTJ/ijTjeXmjQjBAMB0GA1UdDgQWBBQ64QmG1M8ZwpZ2dEl23OA1xmNjmjAOBgNV +HQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAKBggqhkjOPQQDAwNoADBlAjA2Z6EWCNzklwBB +HU6+4WMBzzuqQhFkoJ2UOQIReVx7Hfpkue4WQrO/isIJxOzksU0CMQDpKmFHjFJKS04YcPbWRNZu +9YO6bVi9JNlWSOrvxKJGgYhqOkbRqZtNyWHa0V1Xahg= +-----END CERTIFICATE----- + +GlobalSign ECC Root CA - R4 +=========================== +-----BEGIN CERTIFICATE----- +MIIB4TCCAYegAwIBAgIRKjikHJYKBN5CsiilC+g0mAIwCgYIKoZIzj0EAwIwUDEkMCIGA1UECxMb +R2xvYmFsU2lnbiBFQ0MgUm9vdCBDQSAtIFI0MRMwEQYDVQQKEwpHbG9iYWxTaWduMRMwEQYDVQQD +EwpHbG9iYWxTaWduMB4XDTEyMTExMzAwMDAwMFoXDTM4MDExOTAzMTQwN1owUDEkMCIGA1UECxMb +R2xvYmFsU2lnbiBFQ0MgUm9vdCBDQSAtIFI0MRMwEQYDVQQKEwpHbG9iYWxTaWduMRMwEQYDVQQD +EwpHbG9iYWxTaWduMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEuMZ5049sJQ6fLjkZHAOkrprl +OQcJFspjsbmG+IpXwVfOQvpzofdlQv8ewQCybnMO/8ch5RikqtlxP6jUuc6MHaNCMEAwDgYDVR0P +AQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFFSwe61FuOJAf/sKbvu+M8k8o4TV +MAoGCCqGSM49BAMCA0gAMEUCIQDckqGgE6bPA7DmxCGXkPoUVy0D7O48027KqGx2vKLeuwIgJ6iF +JzWbVsaj8kfSt24bAgAXqmemFZHe+pTsewv4n4Q= +-----END CERTIFICATE----- + +GlobalSign ECC Root CA - R5 +=========================== +-----BEGIN CERTIFICATE----- +MIICHjCCAaSgAwIBAgIRYFlJ4CYuu1X5CneKcflK2GwwCgYIKoZIzj0EAwMwUDEkMCIGA1UECxMb +R2xvYmFsU2lnbiBFQ0MgUm9vdCBDQSAtIFI1MRMwEQYDVQQKEwpHbG9iYWxTaWduMRMwEQYDVQQD +EwpHbG9iYWxTaWduMB4XDTEyMTExMzAwMDAwMFoXDTM4MDExOTAzMTQwN1owUDEkMCIGA1UECxMb +R2xvYmFsU2lnbiBFQ0MgUm9vdCBDQSAtIFI1MRMwEQYDVQQKEwpHbG9iYWxTaWduMRMwEQYDVQQD +EwpHbG9iYWxTaWduMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAER0UOlvt9Xb/pOdEh+J8LttV7HpI6 +SFkc8GIxLcB6KP4ap1yztsyX50XUWPrRd21DosCHZTQKH3rd6zwzocWdTaRvQZU4f8kehOvRnkmS +h5SHDDqFSmafnVmTTZdhBoZKo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAd +BgNVHQ4EFgQUPeYpSJvqB8ohREom3m7e0oPQn1kwCgYIKoZIzj0EAwMDaAAwZQIxAOVpEslu28Yx +uglB4Zf4+/2a4n0Sye18ZNPLBSWLVtmg515dTguDnFt2KaAJJiFqYgIwcdK1j1zqO+F4CYWodZI7 +yFz9SO8NdCKoCOJuxUnOxwy8p2Fp8fc74SrL+SvzZpA3 +-----END CERTIFICATE----- + +Staat der Nederlanden Root CA - G3 +================================== +-----BEGIN CERTIFICATE----- +MIIFdDCCA1ygAwIBAgIEAJiiOTANBgkqhkiG9w0BAQsFADBaMQswCQYDVQQGEwJOTDEeMBwGA1UE +CgwVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSswKQYDVQQDDCJTdGFhdCBkZXIgTmVkZXJsYW5kZW4g +Um9vdCBDQSAtIEczMB4XDTEzMTExNDExMjg0MloXDTI4MTExMzIzMDAwMFowWjELMAkGA1UEBhMC +TkwxHjAcBgNVBAoMFVN0YWF0IGRlciBOZWRlcmxhbmRlbjErMCkGA1UEAwwiU3RhYXQgZGVyIE5l +ZGVybGFuZGVuIFJvb3QgQ0EgLSBHMzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAL4y +olQPcPssXFnrbMSkUeiFKrPMSjTysF/zDsccPVMeiAho2G89rcKezIJnByeHaHE6n3WWIkYFsO2t +x1ueKt6c/DrGlaf1F2cY5y9JCAxcz+bMNO14+1Cx3Gsy8KL+tjzk7FqXxz8ecAgwoNzFs21v0IJy +EavSgWhZghe3eJJg+szeP4TrjTgzkApyI/o1zCZxMdFyKJLZWyNtZrVtB0LrpjPOktvA9mxjeM3K +Tj215VKb8b475lRgsGYeCasH/lSJEULR9yS6YHgamPfJEf0WwTUaVHXvQ9Plrk7O53vDxk5hUUur +mkVLoR9BvUhTFXFkC4az5S6+zqQbwSmEorXLCCN2QyIkHxcE1G6cxvx/K2Ya7Irl1s9N9WMJtxU5 +1nus6+N86U78dULI7ViVDAZCopz35HCz33JvWjdAidiFpNfxC95DGdRKWCyMijmev4SH8RY7Ngzp +07TKbBlBUgmhHbBqv4LvcFEhMtwFdozL92TkA1CvjJFnq8Xy7ljY3r735zHPbMk7ccHViLVlvMDo +FxcHErVc0qsgk7TmgoNwNsXNo42ti+yjwUOH5kPiNL6VizXtBznaqB16nzaeErAMZRKQFWDZJkBE +41ZgpRDUajz9QdwOWke275dhdU/Z/seyHdTtXUmzqWrLZoQT1Vyg3N9udwbRcXXIV2+vD3dbAgMB +AAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBRUrfrHkleu +yjWcLhL75LpdINyUVzANBgkqhkiG9w0BAQsFAAOCAgEAMJmdBTLIXg47mAE6iqTnB/d6+Oea31BD +U5cqPco8R5gu4RV78ZLzYdqQJRZlwJ9UXQ4DO1t3ApyEtg2YXzTdO2PCwyiBwpwpLiniyMMB8jPq +KqrMCQj3ZWfGzd/TtiunvczRDnBfuCPRy5FOCvTIeuXZYzbB1N/8Ipf3YF3qKS9Ysr1YvY2WTxB1 +v0h7PVGHoTx0IsL8B3+A3MSs/mrBcDCw6Y5p4ixpgZQJut3+TcCDjJRYwEYgr5wfAvg1VUkvRtTA +8KCWAg8zxXHzniN9lLf9OtMJgwYh/WA9rjLA0u6NpvDntIJ8CsxwyXmA+P5M9zWEGYox+wrZ13+b +8KKaa8MFSu1BYBQw0aoRQm7TIwIEC8Zl3d1Sd9qBa7Ko+gE4uZbqKmxnl4mUnrzhVNXkanjvSr0r +mj1AfsbAddJu+2gw7OyLnflJNZoaLNmzlTnVHpL3prllL+U9bTpITAjc5CgSKL59NVzq4BZ+Extq +1z7XnvwtdbLBFNUjA9tbbws+eC8N3jONFrdI54OagQ97wUNNVQQXOEpR1VmiiXTTn74eS9fGbbeI +JG9gkaSChVtWQbzQRKtqE77RLFi3EjNYsjdj3BP1lB0/QFH1T/U67cjF68IeHRaVesd+QnGTbksV +tzDfqu1XhUisHWrdOWnk4Xl4vs4Fv6EM94B7IWcnMFk= +-----END CERTIFICATE----- + +Staat der Nederlanden EV Root CA +================================ +-----BEGIN CERTIFICATE----- +MIIFcDCCA1igAwIBAgIEAJiWjTANBgkqhkiG9w0BAQsFADBYMQswCQYDVQQGEwJOTDEeMBwGA1UE +CgwVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSkwJwYDVQQDDCBTdGFhdCBkZXIgTmVkZXJsYW5kZW4g +RVYgUm9vdCBDQTAeFw0xMDEyMDgxMTE5MjlaFw0yMjEyMDgxMTEwMjhaMFgxCzAJBgNVBAYTAk5M +MR4wHAYDVQQKDBVTdGFhdCBkZXIgTmVkZXJsYW5kZW4xKTAnBgNVBAMMIFN0YWF0IGRlciBOZWRl +cmxhbmRlbiBFViBSb290IENBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA48d+ifkk +SzrSM4M1LGns3Amk41GoJSt5uAg94JG6hIXGhaTK5skuU6TJJB79VWZxXSzFYGgEt9nCUiY4iKTW +O0Cmws0/zZiTs1QUWJZV1VD+hq2kY39ch/aO5ieSZxeSAgMs3NZmdO3dZ//BYY1jTw+bbRcwJu+r +0h8QoPnFfxZpgQNH7R5ojXKhTbImxrpsX23Wr9GxE46prfNeaXUmGD5BKyF/7otdBwadQ8QpCiv8 +Kj6GyzyDOvnJDdrFmeK8eEEzduG/L13lpJhQDBXd4Pqcfzho0LKmeqfRMb1+ilgnQ7O6M5HTp5gV +XJrm0w912fxBmJc+qiXbj5IusHsMX/FjqTf5m3VpTCgmJdrV8hJwRVXj33NeN/UhbJCONVrJ0yPr +08C+eKxCKFhmpUZtcALXEPlLVPxdhkqHz3/KRawRWrUgUY0viEeXOcDPusBCAUCZSCELa6fS/ZbV +0b5GnUngC6agIk440ME8MLxwjyx1zNDFjFE7PZQIZCZhfbnDZY8UnCHQqv0XcgOPvZuM5l5Tnrmd +74K74bzickFbIZTTRTeU0d8JOV3nI6qaHcptqAqGhYqCvkIH1vI4gnPah1vlPNOePqc7nvQDs/nx +fRN0Av+7oeX6AHkcpmZBiFxgV6YuCcS6/ZrPpx9Aw7vMWgpVSzs4dlG4Y4uElBbmVvMCAwEAAaNC +MEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFP6rAJCYniT8qcwa +ivsnuL8wbqg7MA0GCSqGSIb3DQEBCwUAA4ICAQDPdyxuVr5Os7aEAJSrR8kN0nbHhp8dB9O2tLsI +eK9p0gtJ3jPFrK3CiAJ9Brc1AsFgyb/E6JTe1NOpEyVa/m6irn0F3H3zbPB+po3u2dfOWBfoqSmu +c0iH55vKbimhZF8ZE/euBhD/UcabTVUlT5OZEAFTdfETzsemQUHSv4ilf0X8rLiltTMMgsT7B/Zq +5SWEXwbKwYY5EdtYzXc7LMJMD16a4/CrPmEbUCTCwPTxGfARKbalGAKb12NMcIxHowNDXLldRqAN +b/9Zjr7dn3LDWyvfjFvO5QxGbJKyCqNMVEIYFRIYvdr8unRu/8G2oGTYqV9Vrp9canaW2HNnh/tN +f1zuacpzEPuKqf2evTY4SUmH9A4U8OmHuD+nT3pajnnUk+S7aFKErGzp85hwVXIy+TSrK0m1zSBi +5Dp6Z2Orltxtrpfs/J92VoguZs9btsmksNcFuuEnL5O7Jiqik7Ab846+HUCjuTaPPoIaGl6I6lD4 +WeKDRikL40Rc4ZW2aZCaFG+XroHPaO+Zmr615+F/+PoTRxZMzG0IQOeLeG9QgkRQP2YGiqtDhFZK +DyAthg710tvSeopLzaXoTvFeJiUBWSOgftL2fiFX1ye8FVdMpEbB4IMeDExNH08GGeL5qPQ6gqGy +eUN51q1veieQA6TqJIc/2b3Z6fJfUEkc7uzXLg== +-----END CERTIFICATE----- + +IdenTrust Commercial Root CA 1 +============================== +-----BEGIN CERTIFICATE----- +MIIFYDCCA0igAwIBAgIQCgFCgAAAAUUjyES1AAAAAjANBgkqhkiG9w0BAQsFADBKMQswCQYDVQQG +EwJVUzESMBAGA1UEChMJSWRlblRydXN0MScwJQYDVQQDEx5JZGVuVHJ1c3QgQ29tbWVyY2lhbCBS +b290IENBIDEwHhcNMTQwMTE2MTgxMjIzWhcNMzQwMTE2MTgxMjIzWjBKMQswCQYDVQQGEwJVUzES +MBAGA1UEChMJSWRlblRydXN0MScwJQYDVQQDEx5JZGVuVHJ1c3QgQ29tbWVyY2lhbCBSb290IENB +IDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCnUBneP5k91DNG8W9RYYKyqU+PZ4ld +hNlT3Qwo2dfw/66VQ3KZ+bVdfIrBQuExUHTRgQ18zZshq0PirK1ehm7zCYofWjK9ouuU+ehcCuz/ +mNKvcbO0U59Oh++SvL3sTzIwiEsXXlfEU8L2ApeN2WIrvyQfYo3fw7gpS0l4PJNgiCL8mdo2yMKi +1CxUAGc1bnO/AljwpN3lsKImesrgNqUZFvX9t++uP0D1bVoE/c40yiTcdCMbXTMTEl3EASX2MN0C +XZ/g1Ue9tOsbobtJSdifWwLziuQkkORiT0/Br4sOdBeo0XKIanoBScy0RnnGF7HamB4HWfp1IYVl +3ZBWzvurpWCdxJ35UrCLvYf5jysjCiN2O/cz4ckA82n5S6LgTrx+kzmEB/dEcH7+B1rlsazRGMzy +NeVJSQjKVsk9+w8YfYs7wRPCTY/JTw436R+hDmrfYi7LNQZReSzIJTj0+kuniVyc0uMNOYZKdHzV +WYfCP04MXFL0PfdSgvHqo6z9STQaKPNBiDoT7uje/5kdX7rL6B7yuVBgwDHTc+XvvqDtMwt0viAg +xGds8AgDelWAf0ZOlqf0Hj7h9tgJ4TNkK2PXMl6f+cB7D3hvl7yTmvmcEpB4eoCHFddydJxVdHix +uuFucAS6T6C6aMN7/zHwcz09lCqxC0EOoP5NiGVreTO01wIDAQABo0IwQDAOBgNVHQ8BAf8EBAMC +AQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU7UQZwNPwBovupHu+QucmVMiONnYwDQYJKoZI +hvcNAQELBQADggIBAA2ukDL2pkt8RHYZYR4nKM1eVO8lvOMIkPkp165oCOGUAFjvLi5+U1KMtlwH +6oi6mYtQlNeCgN9hCQCTrQ0U5s7B8jeUeLBfnLOic7iPBZM4zY0+sLj7wM+x8uwtLRvM7Kqas6pg +ghstO8OEPVeKlh6cdbjTMM1gCIOQ045U8U1mwF10A0Cj7oV+wh93nAbowacYXVKV7cndJZ5t+qnt +ozo00Fl72u1Q8zW/7esUTTHHYPTa8Yec4kjixsU3+wYQ+nVZZjFHKdp2mhzpgq7vmrlR94gjmmmV +YjzlVYA211QC//G5Xc7UI2/YRYRKW2XviQzdFKcgyxilJbQN+QHwotL0AMh0jqEqSI5l2xPE4iUX +feu+h1sXIFRRk0pTAwvsXcoz7WL9RccvW9xYoIA55vrX/hMUpu09lEpCdNTDd1lzzY9GvlU47/ro +kTLql1gEIt44w8y8bckzOmoKaT+gyOpyj4xjhiO9bTyWnpXgSUyqorkqG5w2gXjtw+hG4iZZRHUe +2XWJUc0QhJ1hYMtd+ZciTY6Y5uN/9lu7rs3KSoFrXgvzUeF0K+l+J6fZmUlO+KWA2yUPHGNiiskz +Z2s8EIPGrd6ozRaOjfAHN3Gf8qv8QfXBi+wAN10J5U6A7/qxXDgGpRtK4dw4LTzcqx+QGtVKnO7R +cGzM7vRX+Bi6hG6H +-----END CERTIFICATE----- + +IdenTrust Public Sector Root CA 1 +================================= +-----BEGIN CERTIFICATE----- +MIIFZjCCA06gAwIBAgIQCgFCgAAAAUUjz0Z8AAAAAjANBgkqhkiG9w0BAQsFADBNMQswCQYDVQQG +EwJVUzESMBAGA1UEChMJSWRlblRydXN0MSowKAYDVQQDEyFJZGVuVHJ1c3QgUHVibGljIFNlY3Rv +ciBSb290IENBIDEwHhcNMTQwMTE2MTc1MzMyWhcNMzQwMTE2MTc1MzMyWjBNMQswCQYDVQQGEwJV +UzESMBAGA1UEChMJSWRlblRydXN0MSowKAYDVQQDEyFJZGVuVHJ1c3QgUHVibGljIFNlY3RvciBS +b290IENBIDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC2IpT8pEiv6EdrCvsnduTy +P4o7ekosMSqMjbCpwzFrqHd2hCa2rIFCDQjrVVi7evi8ZX3yoG2LqEfpYnYeEe4IFNGyRBb06tD6 +Hi9e28tzQa68ALBKK0CyrOE7S8ItneShm+waOh7wCLPQ5CQ1B5+ctMlSbdsHyo+1W/CD80/HLaXI +rcuVIKQxKFdYWuSNG5qrng0M8gozOSI5Cpcu81N3uURF/YTLNiCBWS2ab21ISGHKTN9T0a9SvESf +qy9rg3LvdYDaBjMbXcjaY8ZNzaxmMc3R3j6HEDbhuaR672BQssvKplbgN6+rNBM5Jeg5ZuSYeqoS +mJxZZoY+rfGwyj4GD3vwEUs3oERte8uojHH01bWRNszwFcYr3lEXsZdMUD2xlVl8BX0tIdUAvwFn +ol57plzy9yLxkA2T26pEUWbMfXYD62qoKjgZl3YNa4ph+bz27nb9cCvdKTz4Ch5bQhyLVi9VGxyh +LrXHFub4qjySjmm2AcG1hp2JDws4lFTo6tyePSW8Uybt1as5qsVATFSrsrTZ2fjXctscvG29ZV/v +iDUqZi/u9rNl8DONfJhBaUYPQxxp+pu10GFqzcpL2UyQRqsVWaFHVCkugyhfHMKiq3IXAAaOReyL +4jM9f9oZRORicsPfIsbyVtTdX5Vy7W1f90gDW/3FKqD2cyOEEBsB5wIDAQABo0IwQDAOBgNVHQ8B +Af8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU43HgntinQtnbcZFrlJPrw6PRFKMw +DQYJKoZIhvcNAQELBQADggIBAEf63QqwEZE4rU1d9+UOl1QZgkiHVIyqZJnYWv6IAcVYpZmxI1Qj +t2odIFflAWJBF9MJ23XLblSQdf4an4EKwt3X9wnQW3IV5B4Jaj0z8yGa5hV+rVHVDRDtfULAj+7A +mgjVQdZcDiFpboBhDhXAuM/FSRJSzL46zNQuOAXeNf0fb7iAaJg9TaDKQGXSc3z1i9kKlT/YPyNt +GtEqJBnZhbMX73huqVjRI9PHE+1yJX9dsXNw0H8GlwmEKYBhHfpe/3OsoOOJuBxxFcbeMX8S3OFt +m6/n6J91eEyrRjuazr8FGF1NFTwWmhlQBJqymm9li1JfPFgEKCXAZmExfrngdbkaqIHWchezxQMx +NRF4eKLg6TCMf4DfWN88uieW4oA0beOY02QnrEh+KHdcxiVhJfiFDGX6xDIvpZgF5PgLZxYWxoK4 +Mhn5+bl53B/N66+rDt0b20XkeucC4pVd/GnwU2lhlXV5C15V5jgclKlZM57IcXR5f1GJtshquDDI +ajjDbp7hNxbqBWJMWxJH7ae0s1hWx0nzfxJoCTFx8G34Tkf71oXuxVhAGaQdp/lLQzfcaFpPz+vC +ZHTetBXZ9FRUGi8c15dxVJCO2SCdUyt/q4/i6jC8UDfv8Ue1fXwsBOxonbRJRBD0ckscZOf85muQ +3Wl9af0AVqW3rLatt8o+Ae+c +-----END CERTIFICATE----- + +Entrust Root Certification Authority - G2 +========================================= +-----BEGIN CERTIFICATE----- +MIIEPjCCAyagAwIBAgIESlOMKDANBgkqhkiG9w0BAQsFADCBvjELMAkGA1UEBhMCVVMxFjAUBgNV +BAoTDUVudHJ1c3QsIEluYy4xKDAmBgNVBAsTH1NlZSB3d3cuZW50cnVzdC5uZXQvbGVnYWwtdGVy +bXMxOTA3BgNVBAsTMChjKSAyMDA5IEVudHJ1c3QsIEluYy4gLSBmb3IgYXV0aG9yaXplZCB1c2Ug +b25seTEyMDAGA1UEAxMpRW50cnVzdCBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IC0gRzIw +HhcNMDkwNzA3MTcyNTU0WhcNMzAxMjA3MTc1NTU0WjCBvjELMAkGA1UEBhMCVVMxFjAUBgNVBAoT +DUVudHJ1c3QsIEluYy4xKDAmBgNVBAsTH1NlZSB3d3cuZW50cnVzdC5uZXQvbGVnYWwtdGVybXMx +OTA3BgNVBAsTMChjKSAyMDA5IEVudHJ1c3QsIEluYy4gLSBmb3IgYXV0aG9yaXplZCB1c2Ugb25s +eTEyMDAGA1UEAxMpRW50cnVzdCBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IC0gRzIwggEi +MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC6hLZy254Ma+KZ6TABp3bqMriVQRrJ2mFOWHLP +/vaCeb9zYQYKpSfYs1/TRU4cctZOMvJyig/3gxnQaoCAAEUesMfnmr8SVycco2gvCoe9amsOXmXz +HHfV1IWNcCG0szLni6LVhjkCsbjSR87kyUnEO6fe+1R9V77w6G7CebI6C1XiUJgWMhNcL3hWwcKU +s/Ja5CeanyTXxuzQmyWC48zCxEXFjJd6BmsqEZ+pCm5IO2/b1BEZQvePB7/1U1+cPvQXLOZprE4y +TGJ36rfo5bs0vBmLrpxR57d+tVOxMyLlbc9wPBr64ptntoP0jaWvYkxN4FisZDQSA/i2jZRjJKRx +AgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRqciZ6 +0B7vfec7aVHUbI2fkBJmqzANBgkqhkiG9w0BAQsFAAOCAQEAeZ8dlsa2eT8ijYfThwMEYGprmi5Z +iXMRrEPR9RP/jTkrwPK9T3CMqS/qF8QLVJ7UG5aYMzyorWKiAHarWWluBh1+xLlEjZivEtRh2woZ +Rkfz6/djwUAFQKXSt/S1mja/qYh2iARVBCuch38aNzx+LaUa2NSJXsq9rD1s2G2v1fN2D807iDgi +nWyTmsQ9v4IbZT+mD12q/OWyFcq1rca8PdCE6OoGcrBNOTJ4vz4RnAuknZoh8/CbCzB428Hch0P+ +vGOaysXCHMnHjf87ElgI5rY97HosTvuDls4MPGmHVHOkc8KT/1EQrBVUAdj8BbGJoX90g5pJ19xO +e4pIb4tF9g== +-----END CERTIFICATE----- + +Entrust Root Certification Authority - EC1 +========================================== +-----BEGIN CERTIFICATE----- +MIIC+TCCAoCgAwIBAgINAKaLeSkAAAAAUNCR+TAKBggqhkjOPQQDAzCBvzELMAkGA1UEBhMCVVMx +FjAUBgNVBAoTDUVudHJ1c3QsIEluYy4xKDAmBgNVBAsTH1NlZSB3d3cuZW50cnVzdC5uZXQvbGVn +YWwtdGVybXMxOTA3BgNVBAsTMChjKSAyMDEyIEVudHJ1c3QsIEluYy4gLSBmb3IgYXV0aG9yaXpl +ZCB1c2Ugb25seTEzMDEGA1UEAxMqRW50cnVzdCBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5 +IC0gRUMxMB4XDTEyMTIxODE1MjUzNloXDTM3MTIxODE1NTUzNlowgb8xCzAJBgNVBAYTAlVTMRYw +FAYDVQQKEw1FbnRydXN0LCBJbmMuMSgwJgYDVQQLEx9TZWUgd3d3LmVudHJ1c3QubmV0L2xlZ2Fs +LXRlcm1zMTkwNwYDVQQLEzAoYykgMjAxMiBFbnRydXN0LCBJbmMuIC0gZm9yIGF1dGhvcml6ZWQg +dXNlIG9ubHkxMzAxBgNVBAMTKkVudHJ1c3QgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAt +IEVDMTB2MBAGByqGSM49AgEGBSuBBAAiA2IABIQTydC6bUF74mzQ61VfZgIaJPRbiWlH47jCffHy +AsWfoPZb1YsGGYZPUxBtByQnoaD41UcZYUx9ypMn6nQM72+WCf5j7HBdNq1nd67JnXxVRDqiY1Ef +9eNi1KlHBz7MIKNCMEAwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYE +FLdj5xrdjekIplWDpOBqUEFlEUJJMAoGCCqGSM49BAMDA2cAMGQCMGF52OVCR98crlOZF7ZvHH3h +vxGU0QOIdeSNiaSKd0bebWHvAvX7td/M/k7//qnmpwIwW5nXhTcGtXsI/esni0qU+eH6p44mCOh8 +kmhtc9hvJqwhAriZtyZBWyVgrtBIGu4G +-----END CERTIFICATE----- + +CFCA EV ROOT +============ +-----BEGIN CERTIFICATE----- +MIIFjTCCA3WgAwIBAgIEGErM1jANBgkqhkiG9w0BAQsFADBWMQswCQYDVQQGEwJDTjEwMC4GA1UE +CgwnQ2hpbmEgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MRUwEwYDVQQDDAxDRkNB +IEVWIFJPT1QwHhcNMTIwODA4MDMwNzAxWhcNMjkxMjMxMDMwNzAxWjBWMQswCQYDVQQGEwJDTjEw +MC4GA1UECgwnQ2hpbmEgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MRUwEwYDVQQD +DAxDRkNBIEVWIFJPT1QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDXXWvNED8fBVnV +BU03sQ7smCuOFR36k0sXgiFxEFLXUWRwFsJVaU2OFW2fvwwbwuCjZ9YMrM8irq93VCpLTIpTUnrD +7i7es3ElweldPe6hL6P3KjzJIx1qqx2hp/Hz7KDVRM8Vz3IvHWOX6Jn5/ZOkVIBMUtRSqy5J35DN +uF++P96hyk0g1CXohClTt7GIH//62pCfCqktQT+x8Rgp7hZZLDRJGqgG16iI0gNyejLi6mhNbiyW +ZXvKWfry4t3uMCz7zEasxGPrb382KzRzEpR/38wmnvFyXVBlWY9ps4deMm/DGIq1lY+wejfeWkU7 +xzbh72fROdOXW3NiGUgthxwG+3SYIElz8AXSG7Ggo7cbcNOIabla1jj0Ytwli3i/+Oh+uFzJlU9f +py25IGvPa931DfSCt/SyZi4QKPaXWnuWFo8BGS1sbn85WAZkgwGDg8NNkt0yxoekN+kWzqotaK8K +gWU6cMGbrU1tVMoqLUuFG7OA5nBFDWteNfB/O7ic5ARwiRIlk9oKmSJgamNgTnYGmE69g60dWIol +hdLHZR4tjsbftsbhf4oEIRUpdPA+nJCdDC7xij5aqgwJHsfVPKPtl8MeNPo4+QgO48BdK4PRVmrJ +tqhUUy54Mmc9gn900PvhtgVguXDbjgv5E1hvcWAQUhC5wUEJ73IfZzF4/5YFjQIDAQABo2MwYTAf +BgNVHSMEGDAWgBTj/i39KNALtbq2osS/BqoFjJP7LzAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB +/wQEAwIBBjAdBgNVHQ4EFgQU4/4t/SjQC7W6tqLEvwaqBYyT+y8wDQYJKoZIhvcNAQELBQADggIB +ACXGumvrh8vegjmWPfBEp2uEcwPenStPuiB/vHiyz5ewG5zz13ku9Ui20vsXiObTej/tUxPQ4i9q +ecsAIyjmHjdXNYmEwnZPNDatZ8POQQaIxffu2Bq41gt/UP+TqhdLjOztUmCypAbqTuv0axn96/Ua +4CUqmtzHQTb3yHQFhDmVOdYLO6Qn+gjYXB74BGBSESgoA//vU2YApUo0FmZ8/Qmkrp5nGm9BC2sG +E5uPhnEFtC+NiWYzKXZUmhH4J/qyP5Hgzg0b8zAarb8iXRvTvyUFTeGSGn+ZnzxEk8rUQElsgIfX +BDrDMlI1Dlb4pd19xIsNER9Tyx6yF7Zod1rg1MvIB671Oi6ON7fQAUtDKXeMOZePglr4UeWJoBjn +aH9dCi77o0cOPaYjesYBx4/IXr9tgFa+iiS6M+qf4TIRnvHST4D2G0CvOJ4RUHlzEhLN5mydLIhy +PDCBBpEi6lmt2hkuIsKNuYyH4Ga8cyNfIWRjgEj1oDwYPZTISEEdQLpe/v5WOaHIz16eGWRGENoX +kbcFgKyLmZJ956LYBws2J+dIeWCKw9cTXPhyQN9Ky8+ZAAoACxGV2lZFA4gKn2fQ1XmxqI1AbQ3C +ekD6819kR5LLU7m7Wc5P/dAVUwHY3+vZ5nbv0CO7O6l5s9UCKc2Jo5YPSjXnTkLAdc0Hz+Ys63su +-----END CERTIFICATE----- + +OISTE WISeKey Global Root GB CA +=============================== +-----BEGIN CERTIFICATE----- +MIIDtTCCAp2gAwIBAgIQdrEgUnTwhYdGs/gjGvbCwDANBgkqhkiG9w0BAQsFADBtMQswCQYDVQQG +EwJDSDEQMA4GA1UEChMHV0lTZUtleTEiMCAGA1UECxMZT0lTVEUgRm91bmRhdGlvbiBFbmRvcnNl +ZDEoMCYGA1UEAxMfT0lTVEUgV0lTZUtleSBHbG9iYWwgUm9vdCBHQiBDQTAeFw0xNDEyMDExNTAw +MzJaFw0zOTEyMDExNTEwMzFaMG0xCzAJBgNVBAYTAkNIMRAwDgYDVQQKEwdXSVNlS2V5MSIwIAYD +VQQLExlPSVNURSBGb3VuZGF0aW9uIEVuZG9yc2VkMSgwJgYDVQQDEx9PSVNURSBXSVNlS2V5IEds +b2JhbCBSb290IEdCIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2Be3HEokKtaX +scriHvt9OO+Y9bI5mE4nuBFde9IllIiCFSZqGzG7qFshISvYD06fWvGxWuR51jIjK+FTzJlFXHtP +rby/h0oLS5daqPZI7H17Dc0hBt+eFf1Biki3IPShehtX1F1Q/7pn2COZH8g/497/b1t3sWtuuMlk +9+HKQUYOKXHQuSP8yYFfTvdv37+ErXNku7dCjmn21HYdfp2nuFeKUWdy19SouJVUQHMD9ur06/4o +Qnc/nSMbsrY9gBQHTC5P99UKFg29ZkM3fiNDecNAhvVMKdqOmq0NpQSHiB6F4+lT1ZvIiwNjeOvg +GUpuuy9rM2RYk61pv48b74JIxwIDAQABo1EwTzALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB +/zAdBgNVHQ4EFgQUNQ/INmNe4qPs+TtmFc5RUuORmj0wEAYJKwYBBAGCNxUBBAMCAQAwDQYJKoZI +hvcNAQELBQADggEBAEBM+4eymYGQfp3FsLAmzYh7KzKNbrghcViXfa43FK8+5/ea4n32cZiZBKpD +dHij40lhPnOMTZTg+XHEthYOU3gf1qKHLwI5gSk8rxWYITD+KJAAjNHhy/peyP34EEY7onhCkRd0 +VQreUGdNZtGn//3ZwLWoo4rOZvUPQ82nK1d7Y0Zqqi5S2PTt4W2tKZB4SLrhI6qjiey1q5bAtEui +HZeeevJuQHHfaPFlTc58Bd9TZaml8LGXBHAVRgOY1NK/VLSgWH1Sb9pWJmLU2NuJMW8c8CLC02Ic +Nc1MaRVUGpCY3useX8p3x8uOPUNpnJpY0CQ73xtAln41rYHHTnG6iBM= +-----END CERTIFICATE----- + +SZAFIR ROOT CA2 +=============== +-----BEGIN CERTIFICATE----- +MIIDcjCCAlqgAwIBAgIUPopdB+xV0jLVt+O2XwHrLdzk1uQwDQYJKoZIhvcNAQELBQAwUTELMAkG +A1UEBhMCUEwxKDAmBgNVBAoMH0tyYWpvd2EgSXpiYSBSb3psaWN6ZW5pb3dhIFMuQS4xGDAWBgNV +BAMMD1NaQUZJUiBST09UIENBMjAeFw0xNTEwMTkwNzQzMzBaFw0zNTEwMTkwNzQzMzBaMFExCzAJ +BgNVBAYTAlBMMSgwJgYDVQQKDB9LcmFqb3dhIEl6YmEgUm96bGljemVuaW93YSBTLkEuMRgwFgYD +VQQDDA9TWkFGSVIgUk9PVCBDQTIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC3vD5Q +qEvNQLXOYeeWyrSh2gwisPq1e3YAd4wLz32ohswmUeQgPYUM1ljj5/QqGJ3a0a4m7utT3PSQ1hNK +DJA8w/Ta0o4NkjrcsbH/ON7Dui1fgLkCvUqdGw+0w8LBZwPd3BucPbOw3gAeqDRHu5rr/gsUvTaE +2g0gv/pby6kWIK05YO4vdbbnl5z5Pv1+TW9NL++IDWr63fE9biCloBK0TXC5ztdyO4mTp4CEHCdJ +ckm1/zuVnsHMyAHs6A6KCpbns6aH5db5BSsNl0BwPLqsdVqc1U2dAgrSS5tmS0YHF2Wtn2yIANwi +ieDhZNRnvDF5YTy7ykHNXGoAyDw4jlivAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0P +AQH/BAQDAgEGMB0GA1UdDgQWBBQuFqlKGLXLzPVvUPMjX/hd56zwyDANBgkqhkiG9w0BAQsFAAOC +AQEAtXP4A9xZWx126aMqe5Aosk3AM0+qmrHUuOQn/6mWmc5G4G18TKI4pAZw8PRBEew/R40/cof5 +O/2kbytTAOD/OblqBw7rHRz2onKQy4I9EYKL0rufKq8h5mOGnXkZ7/e7DDWQw4rtTw/1zBLZpD67 +oPwglV9PJi8RI4NOdQcPv5vRtB3pEAT+ymCPoky4rc/hkA/NrgrHXXu3UNLUYfrVFdvXn4dRVOul +4+vJhaAlIDf7js4MNIThPIGyd05DpYhfhmehPea0XGG2Ptv+tyjFogeutcrKjSoS75ftwjCkySp6 ++/NNIxuZMzSgLvWpCz/UXeHPhJ/iGcJfitYgHuNztw== +-----END CERTIFICATE----- + +Certum Trusted Network CA 2 +=========================== +-----BEGIN CERTIFICATE----- +MIIF0jCCA7qgAwIBAgIQIdbQSk8lD8kyN/yqXhKN6TANBgkqhkiG9w0BAQ0FADCBgDELMAkGA1UE +BhMCUEwxIjAgBgNVBAoTGVVuaXpldG8gVGVjaG5vbG9naWVzIFMuQS4xJzAlBgNVBAsTHkNlcnR1 +bSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEkMCIGA1UEAxMbQ2VydHVtIFRydXN0ZWQgTmV0d29y +ayBDQSAyMCIYDzIwMTExMDA2MDgzOTU2WhgPMjA0NjEwMDYwODM5NTZaMIGAMQswCQYDVQQGEwJQ +TDEiMCAGA1UEChMZVW5pemV0byBUZWNobm9sb2dpZXMgUy5BLjEnMCUGA1UECxMeQ2VydHVtIENl +cnRpZmljYXRpb24gQXV0aG9yaXR5MSQwIgYDVQQDExtDZXJ0dW0gVHJ1c3RlZCBOZXR3b3JrIENB +IDIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC9+Xj45tWADGSdhhuWZGc/IjoedQF9 +7/tcZ4zJzFxrqZHmuULlIEub2pt7uZld2ZuAS9eEQCsn0+i6MLs+CRqnSZXvK0AkwpfHp+6bJe+o +CgCXhVqqndwpyeI1B+twTUrWwbNWuKFBOJvR+zF/j+Bf4bE/D44WSWDXBo0Y+aomEKsq09DRZ40b +Rr5HMNUuctHFY9rnY3lEfktjJImGLjQ/KUxSiyqnwOKRKIm5wFv5HdnnJ63/mgKXwcZQkpsCLL2p +uTRZCr+ESv/f/rOf69me4Jgj7KZrdxYq28ytOxykh9xGc14ZYmhFV+SQgkK7QtbwYeDBoz1mo130 +GO6IyY0XRSmZMnUCMe4pJshrAua1YkV/NxVaI2iJ1D7eTiew8EAMvE0Xy02isx7QBlrd9pPPV3WZ +9fqGGmd4s7+W/jTcvedSVuWz5XV710GRBdxdaeOVDUO5/IOWOZV7bIBaTxNyxtd9KXpEulKkKtVB +Rgkg/iKgtlswjbyJDNXXcPiHUv3a76xRLgezTv7QCdpw75j6VuZt27VXS9zlLCUVyJ4ueE742pye +hizKV/Ma5ciSixqClnrDvFASadgOWkaLOusm+iPJtrCBvkIApPjW/jAux9JG9uWOdf3yzLnQh1vM +BhBgu4M1t15n3kfsmUjxpKEV/q2MYo45VU85FrmxY53/twIDAQABo0IwQDAPBgNVHRMBAf8EBTAD +AQH/MB0GA1UdDgQWBBS2oVQ5AsOgP46KvPrU+Bym0ToO/TAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZI +hvcNAQENBQADggIBAHGlDs7k6b8/ONWJWsQCYftMxRQXLYtPU2sQF/xlhMcQSZDe28cmk4gmb3DW +Al45oPePq5a1pRNcgRRtDoGCERuKTsZPpd1iHkTfCVn0W3cLN+mLIMb4Ck4uWBzrM9DPhmDJ2vuA +L55MYIR4PSFk1vtBHxgP58l1cb29XN40hz5BsA72udY/CROWFC/emh1auVbONTqwX3BNXuMp8SMo +clm2q8KMZiYcdywmdjWLKKdpoPk79SPdhRB0yZADVpHnr7pH1BKXESLjokmUbOe3lEu6LaTaM4tM +pkT/WjzGHWTYtTHkpjx6qFcL2+1hGsvxznN3Y6SHb0xRONbkX8eftoEq5IVIeVheO/jbAoJnwTnb +w3RLPTYe+SmTiGhbqEQZIfCn6IENLOiTNrQ3ssqwGyZ6miUfmpqAnksqP/ujmv5zMnHCnsZy4Ypo +J/HkD7TETKVhk/iXEAcqMCWpuchxuO9ozC1+9eB+D4Kob7a6bINDd82Kkhehnlt4Fj1F4jNy3eFm +ypnTycUm/Q1oBEauttmbjL4ZvrHG8hnjXALKLNhvSgfZyTXaQHXyxKcZb55CEJh15pWLYLztxRLX +is7VmFxWlgPF7ncGNf/P5O4/E2Hu29othfDNrp2yGAlFw5Khchf8R7agCyzxxN5DaAhqXzvwdmP7 +zAYspsbiDrW5viSP +-----END CERTIFICATE----- + +Hellenic Academic and Research Institutions RootCA 2015 +======================================================= +-----BEGIN CERTIFICATE----- +MIIGCzCCA/OgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBpjELMAkGA1UEBhMCR1IxDzANBgNVBAcT +BkF0aGVuczFEMEIGA1UEChM7SGVsbGVuaWMgQWNhZGVtaWMgYW5kIFJlc2VhcmNoIEluc3RpdHV0 +aW9ucyBDZXJ0LiBBdXRob3JpdHkxQDA+BgNVBAMTN0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNl +YXJjaCBJbnN0aXR1dGlvbnMgUm9vdENBIDIwMTUwHhcNMTUwNzA3MTAxMTIxWhcNNDAwNjMwMTAx +MTIxWjCBpjELMAkGA1UEBhMCR1IxDzANBgNVBAcTBkF0aGVuczFEMEIGA1UEChM7SGVsbGVuaWMg +QWNhZGVtaWMgYW5kIFJlc2VhcmNoIEluc3RpdHV0aW9ucyBDZXJ0LiBBdXRob3JpdHkxQDA+BgNV +BAMTN0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1dGlvbnMgUm9vdENBIDIw +MTUwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDC+Kk/G4n8PDwEXT2QNrCROnk8Zlrv +bTkBSRq0t89/TSNTt5AA4xMqKKYx8ZEA4yjsriFBzh/a/X0SWwGDD7mwX5nh8hKDgE0GPt+sr+eh +iGsxr/CL0BgzuNtFajT0AoAkKAoCFZVedioNmToUW/bLy1O8E00BiDeUJRtCvCLYjqOWXjrZMts+ +6PAQZe104S+nfK8nNLspfZu2zwnI5dMK/IhlZXQK3HMcXM1AsRzUtoSMTFDPaI6oWa7CJ06CojXd +FPQf/7J31Ycvqm59JCfnxssm5uX+Zwdj2EUN3TpZZTlYepKZcj2chF6IIbjV9Cz82XBST3i4vTwr +i5WY9bPRaM8gFH5MXF/ni+X1NYEZN9cRCLdmvtNKzoNXADrDgfgXy5I2XdGj2HUb4Ysn6npIQf1F +GQatJ5lOwXBH3bWfgVMS5bGMSF0xQxfjjMZ6Y5ZLKTBOhE5iGV48zpeQpX8B653g+IuJ3SWYPZK2 +fu/Z8VFRfS0myGlZYeCsargqNhEEelC9MoS+L9xy1dcdFkfkR2YgP/SWxa+OAXqlD3pk9Q0Yh9mu +iNX6hME6wGkoLfINaFGq46V3xqSQDqE3izEjR8EJCOtu93ib14L8hCCZSRm2Ekax+0VVFqmjZayc +Bw/qa9wfLgZy7IaIEuQt218FL+TwA9MmM+eAws1CoRc0CwIDAQABo0IwQDAPBgNVHRMBAf8EBTAD +AQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUcRVnyMjJvXVdctA4GGqd83EkVAswDQYJKoZI +hvcNAQELBQADggIBAHW7bVRLqhBYRjTyYtcWNl0IXtVsyIe9tC5G8jH4fOpCtZMWVdyhDBKg2mF+ +D1hYc2Ryx+hFjtyp8iY/xnmMsVMIM4GwVhO+5lFc2JsKT0ucVlMC6U/2DWDqTUJV6HwbISHTGzrM +d/K4kPFox/la/vot9L/J9UUbzjgQKjeKeaO04wlshYaT/4mWJ3iBj2fjRnRUjtkNaeJK9E10A/+y +d+2VZ5fkscWrv2oj6NSU4kQoYsRL4vDY4ilrGnB+JGGTe08DMiUNRSQrlrRGar9KC/eaj8GsGsVn +82800vpzY4zvFrCopEYq+OsS7HK07/grfoxSwIuEVPkvPuNVqNxmsdnhX9izjFk0WaSrT2y7Hxjb +davYy5LNlDhhDgcGH0tGEPEVvo2FXDtKK4F5D7Rpn0lQl033DlZdwJVqwjbDG2jJ9SrcR5q+ss7F +Jej6A7na+RZukYT1HCjI/CbM1xyQVqdfbzoEvM14iQuODy+jqk+iGxI9FghAD/FGTNeqewjBCvVt +J94Cj8rDtSvK6evIIVM4pcw72Hc3MKJP2W/R8kCtQXoXxdZKNYm3QdV8hn9VTYNKpXMgwDqvkPGa +JI7ZjnHKe7iG2rKPmT4dEw0SEe7Uq/DpFXYC5ODfqiAeW2GFZECpkJcNrVPSWh2HagCXZWK0vm9q +p/UsQu0yrbYhnr68 +-----END CERTIFICATE----- + +Hellenic Academic and Research Institutions ECC RootCA 2015 +=========================================================== +-----BEGIN CERTIFICATE----- +MIICwzCCAkqgAwIBAgIBADAKBggqhkjOPQQDAjCBqjELMAkGA1UEBhMCR1IxDzANBgNVBAcTBkF0 +aGVuczFEMEIGA1UEChM7SGVsbGVuaWMgQWNhZGVtaWMgYW5kIFJlc2VhcmNoIEluc3RpdHV0aW9u +cyBDZXJ0LiBBdXRob3JpdHkxRDBCBgNVBAMTO0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJj +aCBJbnN0aXR1dGlvbnMgRUNDIFJvb3RDQSAyMDE1MB4XDTE1MDcwNzEwMzcxMloXDTQwMDYzMDEw +MzcxMlowgaoxCzAJBgNVBAYTAkdSMQ8wDQYDVQQHEwZBdGhlbnMxRDBCBgNVBAoTO0hlbGxlbmlj +IEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1dGlvbnMgQ2VydC4gQXV0aG9yaXR5MUQwQgYD +VQQDEztIZWxsZW5pYyBBY2FkZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb25zIEVDQyBSb290 +Q0EgMjAxNTB2MBAGByqGSM49AgEGBSuBBAAiA2IABJKgQehLgoRc4vgxEZmGZE4JJS+dQS8KrjVP +dJWyUWRrjWvmP3CV8AVER6ZyOFB2lQJajq4onvktTpnvLEhvTCUp6NFxW98dwXU3tNf6e3pCnGoK +Vlp8aQuqgAkkbH7BRqNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0O +BBYEFLQiC4KZJAEOnLvkDv2/+5cgk5kqMAoGCCqGSM49BAMCA2cAMGQCMGfOFmI4oqxiRaeplSTA +GiecMjvAwNW6qef4BENThe5SId6d9SWDPp5YSy/XZxMOIQIwBeF1Ad5o7SofTUwJCA3sS61kFyjn +dc5FZXIhF8siQQ6ME5g4mlRtm8rifOoCWCKR +-----END CERTIFICATE----- + +ISRG Root X1 +============ +-----BEGIN CERTIFICATE----- +MIIFazCCA1OgAwIBAgIRAIIQz7DSQONZRGPgu2OCiwAwDQYJKoZIhvcNAQELBQAwTzELMAkGA1UE +BhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2VhcmNoIEdyb3VwMRUwEwYDVQQD +EwxJU1JHIFJvb3QgWDEwHhcNMTUwNjA0MTEwNDM4WhcNMzUwNjA0MTEwNDM4WjBPMQswCQYDVQQG +EwJVUzEpMCcGA1UEChMgSW50ZXJuZXQgU2VjdXJpdHkgUmVzZWFyY2ggR3JvdXAxFTATBgNVBAMT +DElTUkcgUm9vdCBYMTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAK3oJHP0FDfzm54r +Vygch77ct984kIxuPOZXoHj3dcKi/vVqbvYATyjb3miGbESTtrFj/RQSa78f0uoxmyF+0TM8ukj1 +3Xnfs7j/EvEhmkvBioZxaUpmZmyPfjxwv60pIgbz5MDmgK7iS4+3mX6UA5/TR5d8mUgjU+g4rk8K +b4Mu0UlXjIB0ttov0DiNewNwIRt18jA8+o+u3dpjq+sWT8KOEUt+zwvo/7V3LvSye0rgTBIlDHCN +Aymg4VMk7BPZ7hm/ELNKjD+Jo2FR3qyHB5T0Y3HsLuJvW5iB4YlcNHlsdu87kGJ55tukmi8mxdAQ +4Q7e2RCOFvu396j3x+UCB5iPNgiV5+I3lg02dZ77DnKxHZu8A/lJBdiB3QW0KtZB6awBdpUKD9jf +1b0SHzUvKBds0pjBqAlkd25HN7rOrFleaJ1/ctaJxQZBKT5ZPt0m9STJEadao0xAH0ahmbWnOlFu +hjuefXKnEgV4We0+UXgVCwOPjdAvBbI+e0ocS3MFEvzG6uBQE3xDk3SzynTnjh8BCNAw1FtxNrQH +usEwMFxIt4I7mKZ9YIqioymCzLq9gwQbooMDQaHWBfEbwrbwqHyGO0aoSCqI3Haadr8faqU9GY/r +OPNk3sgrDQoo//fb4hVC1CLQJ13hef4Y53CIrU7m2Ys6xt0nUW7/vGT1M0NPAgMBAAGjQjBAMA4G +A1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBR5tFnme7bl5AFzgAiIyBpY +9umbbjANBgkqhkiG9w0BAQsFAAOCAgEAVR9YqbyyqFDQDLHYGmkgJykIrGF1XIpu+ILlaS/V9lZL +ubhzEFnTIZd+50xx+7LSYK05qAvqFyFWhfFQDlnrzuBZ6brJFe+GnY+EgPbk6ZGQ3BebYhtF8GaV +0nxvwuo77x/Py9auJ/GpsMiu/X1+mvoiBOv/2X/qkSsisRcOj/KKNFtY2PwByVS5uCbMiogziUwt +hDyC3+6WVwW6LLv3xLfHTjuCvjHIInNzktHCgKQ5ORAzI4JMPJ+GslWYHb4phowim57iaztXOoJw +TdwJx4nLCgdNbOhdjsnvzqvHu7UrTkXWStAmzOVyyghqpZXjFaH3pO3JLF+l+/+sKAIuvtd7u+Nx +e5AW0wdeRlN8NwdCjNPElpzVmbUq4JUagEiuTDkHzsxHpFKVK7q4+63SM1N95R1NbdWhscdCb+ZA +JzVcoyi3B43njTOQ5yOf+1CceWxG1bQVs5ZufpsMljq4Ui0/1lvh+wjChP4kqKOJ2qxq4RgqsahD +YVvTH9w7jXbyLeiNdd8XM2w9U/t7y0Ff/9yi0GE44Za4rF2LN9d11TPAmRGunUHBcnWEvgJBQl9n +JEiU0Zsnvgc/ubhPgXRR4Xq37Z0j4r7g1SgEEzwxA57demyPxgcYxn/eR44/KJ4EBs+lVDR3veyJ +m+kXQ99b21/+jh5Xos1AnX5iItreGCc= +-----END CERTIFICATE----- + +AC RAIZ FNMT-RCM +================ +-----BEGIN CERTIFICATE----- +MIIFgzCCA2ugAwIBAgIPXZONMGc2yAYdGsdUhGkHMA0GCSqGSIb3DQEBCwUAMDsxCzAJBgNVBAYT +AkVTMREwDwYDVQQKDAhGTk1ULVJDTTEZMBcGA1UECwwQQUMgUkFJWiBGTk1ULVJDTTAeFw0wODEw +MjkxNTU5NTZaFw0zMDAxMDEwMDAwMDBaMDsxCzAJBgNVBAYTAkVTMREwDwYDVQQKDAhGTk1ULVJD +TTEZMBcGA1UECwwQQUMgUkFJWiBGTk1ULVJDTTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoC +ggIBALpxgHpMhm5/yBNtwMZ9HACXjywMI7sQmkCpGreHiPibVmr75nuOi5KOpyVdWRHbNi63URcf +qQgfBBckWKo3Shjf5TnUV/3XwSyRAZHiItQDwFj8d0fsjz50Q7qsNI1NOHZnjrDIbzAzWHFctPVr +btQBULgTfmxKo0nRIBnuvMApGGWn3v7v3QqQIecaZ5JCEJhfTzC8PhxFtBDXaEAUwED653cXeuYL +j2VbPNmaUtu1vZ5Gzz3rkQUCwJaydkxNEJY7kvqcfw+Z374jNUUeAlz+taibmSXaXvMiwzn15Cou +08YfxGyqxRxqAQVKL9LFwag0Jl1mpdICIfkYtwb1TplvqKtMUejPUBjFd8g5CSxJkjKZqLsXF3mw +WsXmo8RZZUc1g16p6DULmbvkzSDGm0oGObVo/CK67lWMK07q87Hj/LaZmtVC+nFNCM+HHmpxffnT +tOmlcYF7wk5HlqX2doWjKI/pgG6BU6VtX7hI+cL5NqYuSf+4lsKMB7ObiFj86xsc3i1w4peSMKGJ +47xVqCfWS+2QrYv6YyVZLag13cqXM7zlzced0ezvXg5KkAYmY6252TUtB7p2ZSysV4999AeU14EC +ll2jB0nVetBX+RvnU0Z1qrB5QstocQjpYL05ac70r8NWQMetUqIJ5G+GR4of6ygnXYMgrwTJbFaa +i0b1AgMBAAGjgYMwgYAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYE +FPd9xf3E6Jobd2Sn9R2gzL+HYJptMD4GA1UdIAQ3MDUwMwYEVR0gADArMCkGCCsGAQUFBwIBFh1o +dHRwOi8vd3d3LmNlcnQuZm5tdC5lcy9kcGNzLzANBgkqhkiG9w0BAQsFAAOCAgEAB5BK3/MjTvDD +nFFlm5wioooMhfNzKWtN/gHiqQxjAb8EZ6WdmF/9ARP67Jpi6Yb+tmLSbkyU+8B1RXxlDPiyN8+s +D8+Nb/kZ94/sHvJwnvDKuO+3/3Y3dlv2bojzr2IyIpMNOmqOFGYMLVN0V2Ue1bLdI4E7pWYjJ2cJ +j+F3qkPNZVEI7VFY/uY5+ctHhKQV8Xa7pO6kO8Rf77IzlhEYt8llvhjho6Tc+hj507wTmzl6NLrT +Qfv6MooqtyuGC2mDOL7Nii4LcK2NJpLuHvUBKwrZ1pebbuCoGRw6IYsMHkCtA+fdZn71uSANA+iW ++YJF1DngoABd15jmfZ5nc8OaKveri6E6FO80vFIOiZiaBECEHX5FaZNXzuvO+FB8TxxuBEOb+dY7 +Ixjp6o7RTUaN8Tvkasq6+yO3m/qZASlaWFot4/nUbQ4mrcFuNLwy+AwF+mWj2zs3gyLp1txyM/1d +8iC9djwj2ij3+RvrWWTV3F9yfiD8zYm1kGdNYno/Tq0dwzn+evQoFt9B9kiABdcPUXmsEKvU7ANm +5mqwujGSQkBqvjrTcuFqN1W8rB2Vt2lh8kORdOag0wokRqEIr9baRRmW1FMdW4R58MD3R++Lj8UG +rp1MYp3/RgT408m2ECVAdf4WqslKYIYvuu8wd+RU4riEmViAqhOLUTpPSPaLtrM= +-----END CERTIFICATE----- + +Amazon Root CA 1 +================ +-----BEGIN CERTIFICATE----- +MIIDQTCCAimgAwIBAgITBmyfz5m/jAo54vB4ikPmljZbyjANBgkqhkiG9w0BAQsFADA5MQswCQYD +VQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6b24gUm9vdCBDQSAxMB4XDTE1 +MDUyNjAwMDAwMFoXDTM4MDExNzAwMDAwMFowOTELMAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpv +bjEZMBcGA1UEAxMQQW1hem9uIFJvb3QgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +ggEBALJ4gHHKeNXjca9HgFB0fW7Y14h29Jlo91ghYPl0hAEvrAIthtOgQ3pOsqTQNroBvo3bSMgH +FzZM9O6II8c+6zf1tRn4SWiw3te5djgdYZ6k/oI2peVKVuRF4fn9tBb6dNqcmzU5L/qwIFAGbHrQ +gLKm+a/sRxmPUDgH3KKHOVj4utWp+UhnMJbulHheb4mjUcAwhmahRWa6VOujw5H5SNz/0egwLX0t +dHA114gk957EWW67c4cX8jJGKLhD+rcdqsq08p8kDi1L93FcXmn/6pUCyziKrlA4b9v7LWIbxcce +VOF34GfID5yHI9Y/QCB/IIDEgEw+OyQmjgSubJrIqg0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB +/zAOBgNVHQ8BAf8EBAMCAYYwHQYDVR0OBBYEFIQYzIU07LwMlJQuCFmcx7IQTgoIMA0GCSqGSIb3 +DQEBCwUAA4IBAQCY8jdaQZChGsV2USggNiMOruYou6r4lK5IpDB/G/wkjUu0yKGX9rbxenDIU5PM +CCjjmCXPI6T53iHTfIUJrU6adTrCC2qJeHZERxhlbI1Bjjt/msv0tadQ1wUsN+gDS63pYaACbvXy +8MWy7Vu33PqUXHeeE6V/Uq2V8viTO96LXFvKWlJbYK8U90vvo/ufQJVtMVT8QtPHRh8jrdkPSHCa +2XV4cdFyQzR1bldZwgJcJmApzyMZFo6IQ6XU5MsI+yMRQ+hDKXJioaldXgjUkK642M4UwtBV8ob2 +xJNDd2ZhwLnoQdeXeGADbkpyrqXRfboQnoZsG4q5WTP468SQvvG5 +-----END CERTIFICATE----- + +Amazon Root CA 2 +================ +-----BEGIN CERTIFICATE----- +MIIFQTCCAymgAwIBAgITBmyf0pY1hp8KD+WGePhbJruKNzANBgkqhkiG9w0BAQwFADA5MQswCQYD +VQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6b24gUm9vdCBDQSAyMB4XDTE1 +MDUyNjAwMDAwMFoXDTQwMDUyNjAwMDAwMFowOTELMAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpv +bjEZMBcGA1UEAxMQQW1hem9uIFJvb3QgQ0EgMjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoC +ggIBAK2Wny2cSkxKgXlRmeyKy2tgURO8TW0G/LAIjd0ZEGrHJgw12MBvIITplLGbhQPDW9tK6Mj4 +kHbZW0/jTOgGNk3Mmqw9DJArktQGGWCsN0R5hYGCrVo34A3MnaZMUnbqQ523BNFQ9lXg1dKmSYXp +N+nKfq5clU1Imj+uIFptiJXZNLhSGkOQsL9sBbm2eLfq0OQ6PBJTYv9K8nu+NQWpEjTj82R0Yiw9 +AElaKP4yRLuH3WUnAnE72kr3H9rN9yFVkE8P7K6C4Z9r2UXTu/Bfh+08LDmG2j/e7HJV63mjrdvd +fLC6HM783k81ds8P+HgfajZRRidhW+mez/CiVX18JYpvL7TFz4QuK/0NURBs+18bvBt+xa47mAEx +kv8LV/SasrlX6avvDXbR8O70zoan4G7ptGmh32n2M8ZpLpcTnqWHsFcQgTfJU7O7f/aS0ZzQGPSS +btqDT6ZjmUyl+17vIWR6IF9sZIUVyzfpYgwLKhbcAS4y2j5L9Z469hdAlO+ekQiG+r5jqFoz7Mt0 +Q5X5bGlSNscpb/xVA1wf+5+9R+vnSUeVC06JIglJ4PVhHvG/LopyboBZ/1c6+XUyo05f7O0oYtlN +c/LMgRdg7c3r3NunysV+Ar3yVAhU/bQtCSwXVEqY0VThUWcI0u1ufm8/0i2BWSlmy5A5lREedCf+ +3euvAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgGGMB0GA1UdDgQWBBSw +DPBMMPQFWAJI/TPlUq9LhONmUjANBgkqhkiG9w0BAQwFAAOCAgEAqqiAjw54o+Ci1M3m9Zh6O+oA +A7CXDpO8Wqj2LIxyh6mx/H9z/WNxeKWHWc8w4Q0QshNabYL1auaAn6AFC2jkR2vHat+2/XcycuUY ++gn0oJMsXdKMdYV2ZZAMA3m3MSNjrXiDCYZohMr/+c8mmpJ5581LxedhpxfL86kSk5Nrp+gvU5LE +YFiwzAJRGFuFjWJZY7attN6a+yb3ACfAXVU3dJnJUH/jWS5E4ywl7uxMMne0nxrpS10gxdr9HIcW +xkPo1LsmmkVwXqkLN1PiRnsn/eBG8om3zEK2yygmbtmlyTrIQRNg91CMFa6ybRoVGld45pIq2WWQ +gj9sAq+uEjonljYE1x2igGOpm/HlurR8FLBOybEfdF849lHqm/osohHUqS0nGkWxr7JOcQ3AWEbW +aQbLU8uz/mtBzUF+fUwPfHJ5elnNXkoOrJupmHN5fLT0zLm4BwyydFy4x2+IoZCn9Kr5v2c69BoV +Yh63n749sSmvZ6ES8lgQGVMDMBu4Gon2nL2XA46jCfMdiyHxtN/kHNGfZQIG6lzWE7OE76KlXIx3 +KadowGuuQNKotOrN8I1LOJwZmhsoVLiJkO/KdYE+HvJkJMcYr07/R54H9jVlpNMKVv/1F2Rs76gi +JUmTtt8AF9pYfl3uxRuw0dFfIRDH+fO6AgonB8Xx1sfT4PsJYGw= +-----END CERTIFICATE----- + +Amazon Root CA 3 +================ +-----BEGIN CERTIFICATE----- +MIIBtjCCAVugAwIBAgITBmyf1XSXNmY/Owua2eiedgPySjAKBggqhkjOPQQDAjA5MQswCQYDVQQG +EwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6b24gUm9vdCBDQSAzMB4XDTE1MDUy +NjAwMDAwMFoXDTQwMDUyNjAwMDAwMFowOTELMAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZ +MBcGA1UEAxMQQW1hem9uIFJvb3QgQ0EgMzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABCmXp8ZB +f8ANm+gBG1bG8lKlui2yEujSLtf6ycXYqm0fc4E7O5hrOXwzpcVOho6AF2hiRVd9RFgdszflZwjr +Zt6jQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgGGMB0GA1UdDgQWBBSrttvXBp43 +rDCGB5Fwx5zEGbF4wDAKBggqhkjOPQQDAgNJADBGAiEA4IWSoxe3jfkrBqWTrBqYaGFy+uGh0Psc +eGCmQ5nFuMQCIQCcAu/xlJyzlvnrxir4tiz+OpAUFteMYyRIHN8wfdVoOw== +-----END CERTIFICATE----- + +Amazon Root CA 4 +================ +-----BEGIN CERTIFICATE----- +MIIB8jCCAXigAwIBAgITBmyf18G7EEwpQ+Vxe3ssyBrBDjAKBggqhkjOPQQDAzA5MQswCQYDVQQG +EwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6b24gUm9vdCBDQSA0MB4XDTE1MDUy +NjAwMDAwMFoXDTQwMDUyNjAwMDAwMFowOTELMAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZ +MBcGA1UEAxMQQW1hem9uIFJvb3QgQ0EgNDB2MBAGByqGSM49AgEGBSuBBAAiA2IABNKrijdPo1MN +/sGKe0uoe0ZLY7Bi9i0b2whxIdIA6GO9mif78DluXeo9pcmBqqNbIJhFXRbb/egQbeOc4OO9X4Ri +83BkM6DLJC9wuoihKqB1+IGuYgbEgds5bimwHvouXKNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNV +HQ8BAf8EBAMCAYYwHQYDVR0OBBYEFNPsxzplbszh2naaVvuc84ZtV+WBMAoGCCqGSM49BAMDA2gA +MGUCMDqLIfG9fhGt0O9Yli/W651+kI0rz2ZVwyzjKKlwCkcO8DdZEv8tmZQoTipPNU0zWgIxAOp1 +AE47xDqUEpHJWEadIRNyp4iciuRMStuW1KyLa2tJElMzrdfkviT8tQp21KW8EA== +-----END CERTIFICATE----- + +LuxTrust Global Root 2 +====================== +-----BEGIN CERTIFICATE----- +MIIFwzCCA6ugAwIBAgIUCn6m30tEntpqJIWe5rgV0xZ/u7EwDQYJKoZIhvcNAQELBQAwRjELMAkG +A1UEBhMCTFUxFjAUBgNVBAoMDUx1eFRydXN0IFMuQS4xHzAdBgNVBAMMFkx1eFRydXN0IEdsb2Jh +bCBSb290IDIwHhcNMTUwMzA1MTMyMTU3WhcNMzUwMzA1MTMyMTU3WjBGMQswCQYDVQQGEwJMVTEW +MBQGA1UECgwNTHV4VHJ1c3QgUy5BLjEfMB0GA1UEAwwWTHV4VHJ1c3QgR2xvYmFsIFJvb3QgMjCC +AiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANeFl78RmOnwYoNMPIf5U2o3C/IPPIfOb9wm +Kb3FibrJgz337spbxm1Jc7TJRqMbNBM/wYlFV/TZsfs2ZUv7COJIcRHIbjuend+JZTemhfY7RBi2 +xjcwYkSSl2l9QjAk5A0MiWtj3sXh306pFGxT4GHO9hcvHTy95iJMHZP1EMShduxq3sVs35a0VkBC +wGKSMKEtFZSg0iAGCW5qbeXrt77U8PEVfIvmTroTzEsnXpk8F12PgX8zPU/TPxvsXD/wPEx1bvKm +1Z3aLQdjAsZy6ZS8TEmVT4hSyNvoaYL4zDRbIvCGp4m9SAptZoFtyMhk+wHh9OHe2Z7d21vUKpkm +FRseTJIpgp7VkoGSQXAZ96Tlk0u8d2cx3Rz9MXANF5kM+Qw5GSoXtTBxVdUPrljhPS80m8+f9niF +wpN6cj5mj5wWEWCPnolvZ77gR1o7DJpni89Gxq44o/KnvObWhWszJHAiS8sIm7vI+AIpHb4gDEa/ +a4ebsypmQjVGbKq6rfmYe+lQVRQxv7HaLe2ArWgk+2mr2HETMOZns4dA/Yl+8kPREd8vZS9kzl8U +ubG/Mb2HeFpZZYiq/FkySIbWTLkpS5XTdvN3JW1CHDiDTf2jX5t/Lax5Gw5CMZdjpPuKadUiDTSQ +MC6otOBttpSsvItO13D8xTiOZCXhTTmQzsmHhFhxAgMBAAGjgagwgaUwDwYDVR0TAQH/BAUwAwEB +/zBCBgNVHSAEOzA5MDcGByuBKwEBAQowLDAqBggrBgEFBQcCARYeaHR0cHM6Ly9yZXBvc2l0b3J5 +Lmx1eHRydXN0Lmx1MA4GA1UdDwEB/wQEAwIBBjAfBgNVHSMEGDAWgBT/GCh2+UgFLKGu8SsbK7JT ++Et8szAdBgNVHQ4EFgQU/xgodvlIBSyhrvErGyuyU/hLfLMwDQYJKoZIhvcNAQELBQADggIBAGoZ +FO1uecEsh9QNcH7X9njJCwROxLHOk3D+sFTAMs2ZMGQXvw/l4jP9BzZAcg4atmpZ1gDlaCDdLnIN +H2pkMSCEfUmmWjfrRcmF9dTHF5kH5ptV5AzoqbTOjFu1EVzPig4N1qx3gf4ynCSecs5U89BvolbW +7MM3LGVYvlcAGvI1+ut7MV3CwRI9loGIlonBWVx65n9wNOeD4rHh4bhY79SV5GCc8JaXcozrhAIu +ZY+kt9J/Z93I055cqqmkoCUUBpvsT34tC38ddfEz2O3OuHVtPlu5mB0xDVbYQw8wkbIEa91WvpWA +VWe+2M2D2RjuLg+GLZKecBPs3lHJQ3gCpU3I+V/EkVhGFndadKpAvAefMLmx9xIX3eP/JEAdemrR +TxgKqpAd60Ae36EeRJIQmvKN4dFLRp7oRUKX6kWZ8+xm1QL68qZKJKrezrnK+T+Tb/mjuuqlPpmt +/f97mfVl7vBZKGfXkJWkE4SphMHozs51k2MavDzq1WQfLSoSOcbDWjLtR5EWDrw4wVDej8oqkDQc +7kGUnF4ZLvhFSZl0kbAEb+MEWrGrKqv+x9CWttrhSmQGbmBNvUJO/3jaJMobtNeWOWyu8Q6qp31I +iyBMz2TWuJdGsE7RKlY6oJO9r4Ak4Ap+58rVyuiFVdw2KuGUaJPHZnJED4AhMmwlxyOAgwrr +-----END CERTIFICATE----- + +TUBITAK Kamu SM SSL Kok Sertifikasi - Surum 1 +============================================= +-----BEGIN CERTIFICATE----- +MIIEYzCCA0ugAwIBAgIBATANBgkqhkiG9w0BAQsFADCB0jELMAkGA1UEBhMCVFIxGDAWBgNVBAcT +D0dlYnplIC0gS29jYWVsaTFCMEAGA1UEChM5VHVya2l5ZSBCaWxpbXNlbCB2ZSBUZWtub2xvamlr +IEFyYXN0aXJtYSBLdXJ1bXUgLSBUVUJJVEFLMS0wKwYDVQQLEyRLYW11IFNlcnRpZmlrYXN5b24g +TWVya2V6aSAtIEthbXUgU00xNjA0BgNVBAMTLVRVQklUQUsgS2FtdSBTTSBTU0wgS29rIFNlcnRp +ZmlrYXNpIC0gU3VydW0gMTAeFw0xMzExMjUwODI1NTVaFw00MzEwMjUwODI1NTVaMIHSMQswCQYD +VQQGEwJUUjEYMBYGA1UEBxMPR2ViemUgLSBLb2NhZWxpMUIwQAYDVQQKEzlUdXJraXllIEJpbGlt +c2VsIHZlIFRla25vbG9qaWsgQXJhc3Rpcm1hIEt1cnVtdSAtIFRVQklUQUsxLTArBgNVBAsTJEth +bXUgU2VydGlmaWthc3lvbiBNZXJrZXppIC0gS2FtdSBTTTE2MDQGA1UEAxMtVFVCSVRBSyBLYW11 +IFNNIFNTTCBLb2sgU2VydGlmaWthc2kgLSBTdXJ1bSAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A +MIIBCgKCAQEAr3UwM6q7a9OZLBI3hNmNe5eA027n/5tQlT6QlVZC1xl8JoSNkvoBHToP4mQ4t4y8 +6Ij5iySrLqP1N+RAjhgleYN1Hzv/bKjFxlb4tO2KRKOrbEz8HdDc72i9z+SqzvBV96I01INrN3wc +wv61A+xXzry0tcXtAA9TNypN9E8Mg/uGz8v+jE69h/mniyFXnHrfA2eJLJ2XYacQuFWQfw4tJzh0 +3+f92k4S400VIgLI4OD8D62K18lUUMw7D8oWgITQUVbDjlZ/iSIzL+aFCr2lqBs23tPcLG07xxO9 +WSMs5uWk99gL7eqQQESolbuT1dCANLZGeA4fAJNG4e7p+exPFwIDAQABo0IwQDAdBgNVHQ4EFgQU +ZT/HiobGPN08VFw1+DrtUgxHV8gwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJ +KoZIhvcNAQELBQADggEBACo/4fEyjq7hmFxLXs9rHmoJ0iKpEsdeV31zVmSAhHqT5Am5EM2fKifh +AHe+SMg1qIGf5LgsyX8OsNJLN13qudULXjS99HMpw+0mFZx+CFOKWI3QSyjfwbPfIPP54+M638yc +lNhOT8NrF7f3cuitZjO1JVOr4PhMqZ398g26rrnZqsZr+ZO7rqu4lzwDGrpDxpa5RXI4s6ehlj2R +e37AIVNMh+3yC1SVUZPVIqUNivGTDj5UDrDYyU7c8jEyVupk+eq1nRZmQnLzf9OxMUP8pI4X8W0j +q5Rm+K37DwhuJi1/FwcJsoz7UMCflo3Ptv0AnVoUmr8CRPXBwp8iXqIPoeM= +-----END CERTIFICATE----- + +GDCA TrustAUTH R5 ROOT +====================== +-----BEGIN CERTIFICATE----- +MIIFiDCCA3CgAwIBAgIIfQmX/vBH6nowDQYJKoZIhvcNAQELBQAwYjELMAkGA1UEBhMCQ04xMjAw +BgNVBAoMKUdVQU5HIERPTkcgQ0VSVElGSUNBVEUgQVVUSE9SSVRZIENPLixMVEQuMR8wHQYDVQQD +DBZHRENBIFRydXN0QVVUSCBSNSBST09UMB4XDTE0MTEyNjA1MTMxNVoXDTQwMTIzMTE1NTk1OVow +YjELMAkGA1UEBhMCQ04xMjAwBgNVBAoMKUdVQU5HIERPTkcgQ0VSVElGSUNBVEUgQVVUSE9SSVRZ +IENPLixMVEQuMR8wHQYDVQQDDBZHRENBIFRydXN0QVVUSCBSNSBST09UMIICIjANBgkqhkiG9w0B +AQEFAAOCAg8AMIICCgKCAgEA2aMW8Mh0dHeb7zMNOwZ+Vfy1YI92hhJCfVZmPoiC7XJjDp6L3TQs +AlFRwxn9WVSEyfFrs0yw6ehGXTjGoqcuEVe6ghWinI9tsJlKCvLriXBjTnnEt1u9ol2x8kECK62p +OqPseQrsXzrj/e+APK00mxqriCZ7VqKChh/rNYmDf1+uKU49tm7srsHwJ5uu4/Ts765/94Y9cnrr +pftZTqfrlYwiOXnhLQiPzLyRuEH3FMEjqcOtmkVEs7LXLM3GKeJQEK5cy4KOFxg2fZfmiJqwTTQJ +9Cy5WmYqsBebnh52nUpmMUHfP/vFBu8btn4aRjb3ZGM74zkYI+dndRTVdVeSN72+ahsmUPI2JgaQ +xXABZG12ZuGR224HwGGALrIuL4xwp9E7PLOR5G62xDtw8mySlwnNR30YwPO7ng/Wi64HtloPzgsM +R6flPri9fcebNaBhlzpBdRfMK5Z3KpIhHtmVdiBnaM8Nvd/WHwlqmuLMc3GkL30SgLdTMEZeS1SZ +D2fJpcjyIMGC7J0R38IC+xo70e0gmu9lZJIQDSri3nDxGGeCjGHeuLzRL5z7D9Ar7Rt2ueQ5Vfj4 +oR24qoAATILnsn8JuLwwoC8N9VKejveSswoAHQBUlwbgsQfZxw9cZX08bVlX5O2ljelAU58VS6Bx +9hoh49pwBiFYFIeFd3mqgnkCAwEAAaNCMEAwHQYDVR0OBBYEFOLJQJ9NzuiaoXzPDj9lxSmIahlR +MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEBCwUAA4ICAQDRSVfg +p8xoWLoBDysZzY2wYUWsEe1jUGn4H3++Fo/9nesLqjJHdtJnJO29fDMylyrHBYZmDRd9FBUb1Ov9 +H5r2XpdptxolpAqzkT9fNqyL7FeoPueBihhXOYV0GkLH6VsTX4/5COmSdI31R9KrO9b7eGZONn35 +6ZLpBN79SWP8bfsUcZNnL0dKt7n/HipzcEYwv1ryL3ml4Y0M2fmyYzeMN2WFcGpcWwlyua1jPLHd ++PwyvzeG5LuOmCd+uh8W4XAR8gPfJWIyJyYYMoSf/wA6E7qaTfRPuBRwIrHKK5DOKcFw9C+df/KQ +HtZa37dG/OaG+svgIHZ6uqbL9XzeYqWxi+7egmaKTjowHz+Ay60nugxe19CxVsp3cbK1daFQqUBD +F8Io2c9Si1vIY9RCPqAzekYu9wogRlR+ak8x8YF+QnQ4ZXMn7sZ8uI7XpTrXmKGcjBBV09tL7ECQ +8s1uV9JiDnxXk7Gnbc2dg7sq5+W2O3FYrf3RRbxake5TFW/TRQl1brqQXR4EzzffHqhmsYzmIGrv +/EhOdJhCrylvLmrH+33RZjEizIYAfmaDDEL0vTSSwxrqT8p+ck0LcIymSLumoRT2+1hEmRSuqguT +aaApJUqlyyvdimYHFngVV3Eb7PVHhPOeMTd61X8kreS8/f3MboPoDKi3QWwH3b08hpcv0g== +-----END CERTIFICATE----- + +TrustCor RootCert CA-1 +====================== +-----BEGIN CERTIFICATE----- +MIIEMDCCAxigAwIBAgIJANqb7HHzA7AZMA0GCSqGSIb3DQEBCwUAMIGkMQswCQYDVQQGEwJQQTEP +MA0GA1UECAwGUGFuYW1hMRQwEgYDVQQHDAtQYW5hbWEgQ2l0eTEkMCIGA1UECgwbVHJ1c3RDb3Ig +U3lzdGVtcyBTLiBkZSBSLkwuMScwJQYDVQQLDB5UcnVzdENvciBDZXJ0aWZpY2F0ZSBBdXRob3Jp +dHkxHzAdBgNVBAMMFlRydXN0Q29yIFJvb3RDZXJ0IENBLTEwHhcNMTYwMjA0MTIzMjE2WhcNMjkx +MjMxMTcyMzE2WjCBpDELMAkGA1UEBhMCUEExDzANBgNVBAgMBlBhbmFtYTEUMBIGA1UEBwwLUGFu +YW1hIENpdHkxJDAiBgNVBAoMG1RydXN0Q29yIFN5c3RlbXMgUy4gZGUgUi5MLjEnMCUGA1UECwwe +VHJ1c3RDb3IgQ2VydGlmaWNhdGUgQXV0aG9yaXR5MR8wHQYDVQQDDBZUcnVzdENvciBSb290Q2Vy +dCBDQS0xMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAv463leLCJhJrMxnHQFgKq1mq +jQCj/IDHUHuO1CAmujIS2CNUSSUQIpidRtLByZ5OGy4sDjjzGiVoHKZaBeYei0i/mJZ0PmnK6bV4 +pQa81QBeCQryJ3pS/C3Vseq0iWEk8xoT26nPUu0MJLq5nux+AHT6k61sKZKuUbS701e/s/OojZz0 +JEsq1pme9J7+wH5COucLlVPat2gOkEz7cD+PSiyU8ybdY2mplNgQTsVHCJCZGxdNuWxu72CVEY4h +gLW9oHPY0LJ3xEXqWib7ZnZ2+AYfYW0PVcWDtxBWcgYHpfOxGgMFZA6dWorWhnAbJN7+KIor0Gqw +/Hqi3LJ5DotlDwIDAQABo2MwYTAdBgNVHQ4EFgQU7mtJPHo/DeOxCbeKyKsZn3MzUOcwHwYDVR0j +BBgwFoAU7mtJPHo/DeOxCbeKyKsZn3MzUOcwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC +AYYwDQYJKoZIhvcNAQELBQADggEBACUY1JGPE+6PHh0RU9otRCkZoB5rMZ5NDp6tPVxBb5UrJKF5 +mDo4Nvu7Zp5I/5CQ7z3UuJu0h3U/IJvOcs+hVcFNZKIZBqEHMwwLKeXx6quj7LUKdJDHfXLy11yf +ke+Ri7fc7Waiz45mO7yfOgLgJ90WmMCV1Aqk5IGadZQ1nJBfiDcGrVmVCrDRZ9MZyonnMlo2HD6C +qFqTvsbQZJG2z9m2GM/bftJlo6bEjhcxwft+dtvTheNYsnd6djtsL1Ac59v2Z3kf9YKVmgenFK+P +3CghZwnS1k1aHBkcjndcw5QkPTJrS37UeJSDvjdNzl/HHk484IkzlQsPpTLWPFp5LBk= +-----END CERTIFICATE----- + +TrustCor RootCert CA-2 +====================== +-----BEGIN CERTIFICATE----- +MIIGLzCCBBegAwIBAgIIJaHfyjPLWQIwDQYJKoZIhvcNAQELBQAwgaQxCzAJBgNVBAYTAlBBMQ8w +DQYDVQQIDAZQYW5hbWExFDASBgNVBAcMC1BhbmFtYSBDaXR5MSQwIgYDVQQKDBtUcnVzdENvciBT +eXN0ZW1zIFMuIGRlIFIuTC4xJzAlBgNVBAsMHlRydXN0Q29yIENlcnRpZmljYXRlIEF1dGhvcml0 +eTEfMB0GA1UEAwwWVHJ1c3RDb3IgUm9vdENlcnQgQ0EtMjAeFw0xNjAyMDQxMjMyMjNaFw0zNDEy +MzExNzI2MzlaMIGkMQswCQYDVQQGEwJQQTEPMA0GA1UECAwGUGFuYW1hMRQwEgYDVQQHDAtQYW5h +bWEgQ2l0eTEkMCIGA1UECgwbVHJ1c3RDb3IgU3lzdGVtcyBTLiBkZSBSLkwuMScwJQYDVQQLDB5U +cnVzdENvciBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkxHzAdBgNVBAMMFlRydXN0Q29yIFJvb3RDZXJ0 +IENBLTIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCnIG7CKqJiJJWQdsg4foDSq8Gb +ZQWU9MEKENUCrO2fk8eHyLAnK0IMPQo+QVqedd2NyuCb7GgypGmSaIwLgQ5WoD4a3SwlFIIvl9Nk +RvRUqdw6VC0xK5mC8tkq1+9xALgxpL56JAfDQiDyitSSBBtlVkxs1Pu2YVpHI7TYabS3OtB0PAx1 +oYxOdqHp2yqlO/rOsP9+aij9JxzIsekp8VduZLTQwRVtDr4uDkbIXvRR/u8OYzo7cbrPb1nKDOOb +XUm4TOJXsZiKQlecdu/vvdFoqNL0Cbt3Nb4lggjEFixEIFapRBF37120Hapeaz6LMvYHL1cEksr1 +/p3C6eizjkxLAjHZ5DxIgif3GIJ2SDpxsROhOdUuxTTCHWKF3wP+TfSvPd9cW436cOGlfifHhi5q +jxLGhF5DUVCcGZt45vz27Ud+ez1m7xMTiF88oWP7+ayHNZ/zgp6kPwqcMWmLmaSISo5uZk3vFsQP +eSghYA2FFn3XVDjxklb9tTNMg9zXEJ9L/cb4Qr26fHMC4P99zVvh1Kxhe1fVSntb1IVYJ12/+Ctg +rKAmrhQhJ8Z3mjOAPF5GP/fDsaOGM8boXg25NSyqRsGFAnWAoOsk+xWq5Gd/bnc/9ASKL3x74xdh +8N0JqSDIvgmk0H5Ew7IwSjiqqewYmgeCK9u4nBit2uBGF6zPXQIDAQABo2MwYTAdBgNVHQ4EFgQU +2f4hQG6UnrybPZx9mCAZ5YwwYrIwHwYDVR0jBBgwFoAU2f4hQG6UnrybPZx9mCAZ5YwwYrIwDwYD +VR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAYYwDQYJKoZIhvcNAQELBQADggIBAJ5Fngw7tu/h +Osh80QA9z+LqBrWyOrsGS2h60COXdKcs8AjYeVrXWoSK2BKaG9l9XE1wxaX5q+WjiYndAfrs3fnp +kpfbsEZC89NiqpX+MWcUaViQCqoL7jcjx1BRtPV+nuN79+TMQjItSQzL/0kMmx40/W5ulop5A7Zv +2wnL/V9lFDfhOPXzYRZY5LVtDQsEGz9QLX+zx3oaFoBg+Iof6Rsqxvm6ARppv9JYx1RXCI/hOWB3 +S6xZhBqI8d3LT3jX5+EzLfzuQfogsL7L9ziUwOHQhQ+77Sxzq+3+knYaZH9bDTMJBzN7Bj8RpFxw +PIXAz+OQqIN3+tvmxYxoZxBnpVIt8MSZj3+/0WvitUfW2dCFmU2Umw9Lje4AWkcdEQOsQRivh7dv +DDqPys/cA8GiCcjl/YBeyGBCARsaU1q7N6a3vLqE6R5sGtRk2tRD/pOLS/IseRYQ1JMLiI+h2IYU +RpFHmygk71dSTlxCnKr3Sewn6EAes6aJInKc9Q0ztFijMDvd1GpUk74aTfOTlPf8hAs/hCBcNANE +xdqtvArBAs8e5ZTZ845b2EzwnexhF7sUMlQMAimTHpKG9n/v55IFDlndmQguLvqcAFLTxWYp5KeX +RKQOKIETNcX2b2TmQcTVL8w0RSXPQQCWPUouwpaYT05KnJe32x+SMsj/D1Fu1uwJ +-----END CERTIFICATE----- + +TrustCor ECA-1 +============== +-----BEGIN CERTIFICATE----- +MIIEIDCCAwigAwIBAgIJAISCLF8cYtBAMA0GCSqGSIb3DQEBCwUAMIGcMQswCQYDVQQGEwJQQTEP +MA0GA1UECAwGUGFuYW1hMRQwEgYDVQQHDAtQYW5hbWEgQ2l0eTEkMCIGA1UECgwbVHJ1c3RDb3Ig +U3lzdGVtcyBTLiBkZSBSLkwuMScwJQYDVQQLDB5UcnVzdENvciBDZXJ0aWZpY2F0ZSBBdXRob3Jp +dHkxFzAVBgNVBAMMDlRydXN0Q29yIEVDQS0xMB4XDTE2MDIwNDEyMzIzM1oXDTI5MTIzMTE3Mjgw +N1owgZwxCzAJBgNVBAYTAlBBMQ8wDQYDVQQIDAZQYW5hbWExFDASBgNVBAcMC1BhbmFtYSBDaXR5 +MSQwIgYDVQQKDBtUcnVzdENvciBTeXN0ZW1zIFMuIGRlIFIuTC4xJzAlBgNVBAsMHlRydXN0Q29y +IENlcnRpZmljYXRlIEF1dGhvcml0eTEXMBUGA1UEAwwOVHJ1c3RDb3IgRUNBLTEwggEiMA0GCSqG +SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDPj+ARtZ+odnbb3w9U73NjKYKtR8aja+3+XzP4Q1HpGjOR +MRegdMTUpwHmspI+ap3tDvl0mEDTPwOABoJA6LHip1GnHYMma6ve+heRK9jGrB6xnhkB1Zem6g23 +xFUfJ3zSCNV2HykVh0A53ThFEXXQmqc04L/NyFIduUd+Dbi7xgz2c1cWWn5DkR9VOsZtRASqnKmc +p0yJF4OuowReUoCLHhIlERnXDH19MURB6tuvsBzvgdAsxZohmz3tQjtQJvLsznFhBmIhVE5/wZ0+ +fyCMgMsq2JdiyIMzkX2woloPV+g7zPIlstR8L+xNxqE6FXrntl019fZISjZFZtS6mFjBAgMBAAGj +YzBhMB0GA1UdDgQWBBREnkj1zG1I1KBLf/5ZJC+Dl5mahjAfBgNVHSMEGDAWgBREnkj1zG1I1KBL +f/5ZJC+Dl5mahjAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG9w0BAQsF +AAOCAQEABT41XBVwm8nHc2FvcivUwo/yQ10CzsSUuZQRg2dd4mdsdXa/uwyqNsatR5Nj3B5+1t4u +/ukZMjgDfxT2AHMsWbEhBuH7rBiVDKP/mZb3Kyeb1STMHd3BOuCYRLDE5D53sXOpZCz2HAF8P11F +hcCF5yWPldwX8zyfGm6wyuMdKulMY/okYWLW2n62HGz1Ah3UKt1VkOsqEUc8Ll50soIipX1TH0Xs +J5F95yIW6MBoNtjG8U+ARDL54dHRHareqKucBK+tIA5kmE2la8BIWJZpTdwHjFGTot+fDz2LYLSC +jaoITmJF4PkL0uDgPFveXHEnJcLmA4GLEFPjx1WitJ/X5g== +-----END CERTIFICATE----- + +SSL.com Root Certification Authority RSA +======================================== +-----BEGIN CERTIFICATE----- +MIIF3TCCA8WgAwIBAgIIeyyb0xaAMpkwDQYJKoZIhvcNAQELBQAwfDELMAkGA1UEBhMCVVMxDjAM +BgNVBAgMBVRleGFzMRAwDgYDVQQHDAdIb3VzdG9uMRgwFgYDVQQKDA9TU0wgQ29ycG9yYXRpb24x +MTAvBgNVBAMMKFNTTC5jb20gUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSBSU0EwHhcNMTYw +MjEyMTczOTM5WhcNNDEwMjEyMTczOTM5WjB8MQswCQYDVQQGEwJVUzEOMAwGA1UECAwFVGV4YXMx +EDAOBgNVBAcMB0hvdXN0b24xGDAWBgNVBAoMD1NTTCBDb3Jwb3JhdGlvbjExMC8GA1UEAwwoU1NM +LmNvbSBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFJTQTCCAiIwDQYJKoZIhvcNAQEBBQAD +ggIPADCCAgoCggIBAPkP3aMrfcvQKv7sZ4Wm5y4bunfh4/WvpOz6Sl2RxFdHaxh3a3by/ZPkPQ/C +Fp4LZsNWlJ4Xg4XOVu/yFv0AYvUiCVToZRdOQbngT0aXqhvIuG5iXmmxX9sqAn78bMrzQdjt0Oj8 +P2FI7bADFB0QDksZ4LtO7IZl/zbzXmcCC52GVWH9ejjt/uIZALdvoVBidXQ8oPrIJZK0bnoix/ge +oeOy3ZExqysdBP+lSgQ36YWkMyv94tZVNHwZpEpox7Ko07fKoZOI68GXvIz5HdkihCR0xwQ9aqkp +k8zruFvh/l8lqjRYyMEjVJ0bmBHDOJx+PYZspQ9AhnwC9FwCTyjLrnGfDzrIM/4RJTXq/LrFYD3Z +fBjVsqnTdXgDciLKOsMf7yzlLqn6niy2UUb9rwPW6mBo6oUWNmuF6R7As93EJNyAKoFBbZQ+yODJ +gUEAnl6/f8UImKIYLEJAs/lvOCdLToD0PYFH4Ih86hzOtXVcUS4cK38acijnALXRdMbX5J+tB5O2 +UzU1/Dfkw/ZdFr4hc96SCvigY2q8lpJqPvi8ZVWb3vUNiSYE/CUapiVpy8JtynziWV+XrOvvLsi8 +1xtZPCvM8hnIk2snYxnP/Okm+Mpxm3+T/jRnhE6Z6/yzeAkzcLpmpnbtG3PrGqUNxCITIJRWCk4s +bE6x/c+cCbqiM+2HAgMBAAGjYzBhMB0GA1UdDgQWBBTdBAkHovV6fVJTEpKV7jiAJQ2mWTAPBgNV +HRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFN0ECQei9Xp9UlMSkpXuOIAlDaZZMA4GA1UdDwEB/wQE +AwIBhjANBgkqhkiG9w0BAQsFAAOCAgEAIBgRlCn7Jp0cHh5wYfGVcpNxJK1ok1iOMq8bs3AD/CUr +dIWQPXhq9LmLpZc7tRiRux6n+UBbkflVma8eEdBcHadm47GUBwwyOabqG7B52B2ccETjit3E+ZUf +ijhDPwGFpUenPUayvOUiaPd7nNgsPgohyC0zrL/FgZkxdMF1ccW+sfAjRfSda/wZY52jvATGGAsl +u1OJD7OAUN5F7kR/q5R4ZJjT9ijdh9hwZXT7DrkT66cPYakylszeu+1jTBi7qUD3oFRuIIhxdRjq +erQ0cuAjJ3dctpDqhiVAq+8zD8ufgr6iIPv2tS0a5sKFsXQP+8hlAqRSAUfdSSLBv9jra6x+3uxj +MxW3IwiPxg+NQVrdjsW5j+VFP3jbutIbQLH+cU0/4IGiul607BXgk90IH37hVZkLId6Tngr75qNJ +vTYw/ud3sqB1l7UtgYgXZSD32pAAn8lSzDLKNXz1PQ/YK9f1JmzJBjSWFupwWRoyeXkLtoh/D1JI +Pb9s2KJELtFOt3JY04kTlf5Eq/jXixtunLwsoFvVagCvXzfh1foQC5ichucmj87w7G6KVwuA406y +wKBjYZC6VWg3dGq2ktufoYYitmUnDuy2n0Jg5GfCtdpBC8TTi2EbvPofkSvXRAdeuims2cXp71NI +WuuA8ShYIc2wBlX7Jz9TkHCpBB5XJ7k= +-----END CERTIFICATE----- + +SSL.com Root Certification Authority ECC +======================================== +-----BEGIN CERTIFICATE----- +MIICjTCCAhSgAwIBAgIIdebfy8FoW6gwCgYIKoZIzj0EAwIwfDELMAkGA1UEBhMCVVMxDjAMBgNV +BAgMBVRleGFzMRAwDgYDVQQHDAdIb3VzdG9uMRgwFgYDVQQKDA9TU0wgQ29ycG9yYXRpb24xMTAv +BgNVBAMMKFNTTC5jb20gUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSBFQ0MwHhcNMTYwMjEy +MTgxNDAzWhcNNDEwMjEyMTgxNDAzWjB8MQswCQYDVQQGEwJVUzEOMAwGA1UECAwFVGV4YXMxEDAO +BgNVBAcMB0hvdXN0b24xGDAWBgNVBAoMD1NTTCBDb3Jwb3JhdGlvbjExMC8GA1UEAwwoU1NMLmNv +bSBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IEVDQzB2MBAGByqGSM49AgEGBSuBBAAiA2IA +BEVuqVDEpiM2nl8ojRfLliJkP9x6jh3MCLOicSS6jkm5BBtHllirLZXI7Z4INcgn64mMU1jrYor+ +8FsPazFSY0E7ic3s7LaNGdM0B9y7xgZ/wkWV7Mt/qCPgCemB+vNH06NjMGEwHQYDVR0OBBYEFILR +hXMw5zUE044CkvvlpNHEIejNMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUgtGFczDnNQTT +jgKS++Wk0cQh6M0wDgYDVR0PAQH/BAQDAgGGMAoGCCqGSM49BAMCA2cAMGQCMG/n61kRpGDPYbCW +e+0F+S8Tkdzt5fxQaxFGRrMcIQBiu77D5+jNB5n5DQtdcj7EqgIwH7y6C+IwJPt8bYBVCpk+gA0z +5Wajs6O7pdWLjwkspl1+4vAHCGht0nxpbl/f5Wpl +-----END CERTIFICATE----- + +SSL.com EV Root Certification Authority RSA R2 +============================================== +-----BEGIN CERTIFICATE----- +MIIF6zCCA9OgAwIBAgIIVrYpzTS8ePYwDQYJKoZIhvcNAQELBQAwgYIxCzAJBgNVBAYTAlVTMQ4w +DAYDVQQIDAVUZXhhczEQMA4GA1UEBwwHSG91c3RvbjEYMBYGA1UECgwPU1NMIENvcnBvcmF0aW9u +MTcwNQYDVQQDDC5TU0wuY29tIEVWIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgUlNBIFIy +MB4XDTE3MDUzMTE4MTQzN1oXDTQyMDUzMDE4MTQzN1owgYIxCzAJBgNVBAYTAlVTMQ4wDAYDVQQI +DAVUZXhhczEQMA4GA1UEBwwHSG91c3RvbjEYMBYGA1UECgwPU1NMIENvcnBvcmF0aW9uMTcwNQYD +VQQDDC5TU0wuY29tIEVWIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgUlNBIFIyMIICIjAN +BgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAjzZlQOHWTcDXtOlG2mvqM0fNTPl9fb69LT3w23jh +hqXZuglXaO1XPqDQCEGD5yhBJB/jchXQARr7XnAjssufOePPxU7Gkm0mxnu7s9onnQqG6YE3Bf7w +cXHswxzpY6IXFJ3vG2fThVUCAtZJycxa4bH3bzKfydQ7iEGonL3Lq9ttewkfokxykNorCPzPPFTO +Zw+oz12WGQvE43LrrdF9HSfvkusQv1vrO6/PgN3B0pYEW3p+pKk8OHakYo6gOV7qd89dAFmPZiw+ +B6KjBSYRaZfqhbcPlgtLyEDhULouisv3D5oi53+aNxPN8k0TayHRwMwi8qFG9kRpnMphNQcAb9Zh +CBHqurj26bNg5U257J8UZslXWNvNh2n4ioYSA0e/ZhN2rHd9NCSFg83XqpyQGp8hLH94t2S42Oim +9HizVcuE0jLEeK6jj2HdzghTreyI/BXkmg3mnxp3zkyPuBQVPWKchjgGAGYS5Fl2WlPAApiiECto +RHuOec4zSnaqW4EWG7WK2NAAe15itAnWhmMOpgWVSbooi4iTsjQc2KRVbrcc0N6ZVTsj9CLg+Slm +JuwgUHfbSguPvuUCYHBBXtSuUDkiFCbLsjtzdFVHB3mBOagwE0TlBIqulhMlQg+5U8Sb/M3kHN48 ++qvWBkofZ6aYMBzdLNvcGJVXZsb/XItW9XcCAwEAAaNjMGEwDwYDVR0TAQH/BAUwAwEB/zAfBgNV +HSMEGDAWgBT5YLvU49U09rj1BoAlp3PbRmmonjAdBgNVHQ4EFgQU+WC71OPVNPa49QaAJadz20Zp +qJ4wDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEBCwUAA4ICAQBWs47LCp1Jjr+kxJG7ZhcFUZh1 +++VQLHqe8RT6q9OKPv+RKY9ji9i0qVQBDb6Thi/5Sm3HXvVX+cpVHBK+Rw82xd9qt9t1wkclf7nx +Y/hoLVUE0fKNsKTPvDxeH3jnpaAgcLAExbf3cqfeIg29MyVGjGSSJuM+LmOW2puMPfgYCdcDzH2G +guDKBAdRUNf/ktUM79qGn5nX67evaOI5JpS6aLe/g9Pqemc9YmeuJeVy6OLk7K4S9ksrPJ/psEDz +OFSz/bdoyNrGj1E8svuR3Bznm53htw1yj+KkxKl4+esUrMZDBcJlOSgYAsOCsp0FvmXtll9ldDz7 +CTUue5wT/RsPXcdtgTpWD8w74a8CLyKsRspGPKAcTNZEtF4uXBVmCeEmKf7GUmG6sXP/wwyc5Wxq +lD8UykAWlYTzWamsX0xhk23RO8yilQwipmdnRC652dKKQbNmC1r7fSOl8hqw/96bg5Qu0T/fkreR +rwU7ZcegbLHNYhLDkBvjJc40vG93drEQw/cFGsDWr3RiSBd3kmmQYRzelYB0VI8YHMPzA9C/pEN1 +hlMYegouCRw2n5H9gooiS9EOUCXdywMMF8mDAAhONU2Ki+3wApRmLER/y5UnlhetCTCstnEXbosX +9hwJ1C07mKVx01QT2WDz9UtmT/rx7iASjbSsV7FFY6GsdqnC+w== +-----END CERTIFICATE----- + +SSL.com EV Root Certification Authority ECC +=========================================== +-----BEGIN CERTIFICATE----- +MIIClDCCAhqgAwIBAgIILCmcWxbtBZUwCgYIKoZIzj0EAwIwfzELMAkGA1UEBhMCVVMxDjAMBgNV +BAgMBVRleGFzMRAwDgYDVQQHDAdIb3VzdG9uMRgwFgYDVQQKDA9TU0wgQ29ycG9yYXRpb24xNDAy +BgNVBAMMK1NTTC5jb20gRVYgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSBFQ0MwHhcNMTYw +MjEyMTgxNTIzWhcNNDEwMjEyMTgxNTIzWjB/MQswCQYDVQQGEwJVUzEOMAwGA1UECAwFVGV4YXMx +EDAOBgNVBAcMB0hvdXN0b24xGDAWBgNVBAoMD1NTTCBDb3Jwb3JhdGlvbjE0MDIGA1UEAwwrU1NM +LmNvbSBFViBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IEVDQzB2MBAGByqGSM49AgEGBSuB +BAAiA2IABKoSR5CYG/vvw0AHgyBO8TCCogbR8pKGYfL2IWjKAMTH6kMAVIbc/R/fALhBYlzccBYy +3h+Z1MzFB8gIH2EWB1E9fVwHU+M1OIzfzZ/ZLg1KthkuWnBaBu2+8KGwytAJKaNjMGEwHQYDVR0O +BBYEFFvKXuXe0oGqzagtZFG22XKbl+ZPMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUW8pe +5d7SgarNqC1kUbbZcpuX5k8wDgYDVR0PAQH/BAQDAgGGMAoGCCqGSM49BAMCA2gAMGUCMQCK5kCJ +N+vp1RPZytRrJPOwPYdGWBrssd9v+1a6cGvHOMzosYxPD/fxZ3YOg9AeUY8CMD32IygmTMZgh5Mm +m7I1HrrW9zzRHM76JTymGoEVW/MSD2zuZYrJh6j5B+BimoxcSg== +-----END CERTIFICATE----- + +GlobalSign Root CA - R6 +======================= +-----BEGIN CERTIFICATE----- +MIIFgzCCA2ugAwIBAgIORea7A4Mzw4VlSOb/RVEwDQYJKoZIhvcNAQEMBQAwTDEgMB4GA1UECxMX +R2xvYmFsU2lnbiBSb290IENBIC0gUjYxEzARBgNVBAoTCkdsb2JhbFNpZ24xEzARBgNVBAMTCkds +b2JhbFNpZ24wHhcNMTQxMjEwMDAwMDAwWhcNMzQxMjEwMDAwMDAwWjBMMSAwHgYDVQQLExdHbG9i +YWxTaWduIFJvb3QgQ0EgLSBSNjETMBEGA1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFs +U2lnbjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAJUH6HPKZvnsFMp7PPcNCPG0RQss +grRIxutbPK6DuEGSMxSkb3/pKszGsIhrxbaJ0cay/xTOURQh7ErdG1rG1ofuTToVBu1kZguSgMpE +3nOUTvOniX9PeGMIyBJQbUJmL025eShNUhqKGoC3GYEOfsSKvGRMIRxDaNc9PIrFsmbVkJq3MQbF +vuJtMgamHvm566qjuL++gmNQ0PAYid/kD3n16qIfKtJwLnvnvJO7bVPiSHyMEAc4/2ayd2F+4OqM +PKq0pPbzlUoSB239jLKJz9CgYXfIWHSw1CM69106yqLbnQneXUQtkPGBzVeS+n68UARjNN9rkxi+ +azayOeSsJDa38O+2HBNXk7besvjihbdzorg1qkXy4J02oW9UivFyVm4uiMVRQkQVlO6jxTiWm05O +WgtH8wY2SXcwvHE35absIQh1/OZhFj931dmRl4QKbNQCTXTAFO39OfuD8l4UoQSwC+n+7o/hbguy +CLNhZglqsQY6ZZZZwPA1/cnaKI0aEYdwgQqomnUdnjqGBQCe24DWJfncBZ4nWUx2OVvq+aWh2IMP +0f/fMBH5hc8zSPXKbWQULHpYT9NLCEnFlWQaYw55PfWzjMpYrZxCRXluDocZXFSxZba/jJvcE+kN +b7gu3GduyYsRtYQUigAZcIN5kZeR1BonvzceMgfYFGM8KEyvAgMBAAGjYzBhMA4GA1UdDwEB/wQE +AwIBBjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBSubAWjkxPioufi1xzWx/B/yGdToDAfBgNV +HSMEGDAWgBSubAWjkxPioufi1xzWx/B/yGdToDANBgkqhkiG9w0BAQwFAAOCAgEAgyXt6NH9lVLN +nsAEoJFp5lzQhN7craJP6Ed41mWYqVuoPId8AorRbrcWc+ZfwFSY1XS+wc3iEZGtIxg93eFyRJa0 +lV7Ae46ZeBZDE1ZXs6KzO7V33EByrKPrmzU+sQghoefEQzd5Mr6155wsTLxDKZmOMNOsIeDjHfrY +BzN2VAAiKrlNIC5waNrlU/yDXNOd8v9EDERm8tLjvUYAGm0CuiVdjaExUd1URhxN25mW7xocBFym +Fe944Hn+Xds+qkxV/ZoVqW/hpvvfcDDpw+5CRu3CkwWJ+n1jez/QcYF8AOiYrg54NMMl+68KnyBr +3TsTjxKM4kEaSHpzoHdpx7Zcf4LIHv5YGygrqGytXm3ABdJ7t+uA/iU3/gKbaKxCXcPu9czc8FB1 +0jZpnOZ7BN9uBmm23goJSFmH63sUYHpkqmlD75HHTOwY3WzvUy2MmeFe8nI+z1TIvWfspA9MRf/T +uTAjB0yPEL+GltmZWrSZVxykzLsViVO6LAUP5MSeGbEYNNVMnbrt9x+vJJUEeKgDu+6B5dpffItK +oZB0JaezPkvILFa9x8jvOOJckvB595yEunQtYQEgfn7R8k8HWV+LLUNS60YMlOH1Zkd5d9VUWx+t +JDfLRVpOoERIyNiwmcUVhAn21klJwGW45hpxbqCo8YLoRT5s1gLXCmeDBVrJpBA= +-----END CERTIFICATE----- + +OISTE WISeKey Global Root GC CA +=============================== +-----BEGIN CERTIFICATE----- +MIICaTCCAe+gAwIBAgIQISpWDK7aDKtARb8roi066jAKBggqhkjOPQQDAzBtMQswCQYDVQQGEwJD +SDEQMA4GA1UEChMHV0lTZUtleTEiMCAGA1UECxMZT0lTVEUgRm91bmRhdGlvbiBFbmRvcnNlZDEo +MCYGA1UEAxMfT0lTVEUgV0lTZUtleSBHbG9iYWwgUm9vdCBHQyBDQTAeFw0xNzA1MDkwOTQ4MzRa +Fw00MjA1MDkwOTU4MzNaMG0xCzAJBgNVBAYTAkNIMRAwDgYDVQQKEwdXSVNlS2V5MSIwIAYDVQQL +ExlPSVNURSBGb3VuZGF0aW9uIEVuZG9yc2VkMSgwJgYDVQQDEx9PSVNURSBXSVNlS2V5IEdsb2Jh +bCBSb290IEdDIENBMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAETOlQwMYPchi82PG6s4nieUqjFqdr +VCTbUf/q9Akkwwsin8tqJ4KBDdLArzHkdIJuyiXZjHWd8dvQmqJLIX4Wp2OQ0jnUsYd4XxiWD1Ab +NTcPasbc2RNNpI6QN+a9WzGRo1QwUjAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAd +BgNVHQ4EFgQUSIcUrOPDnpBgOtfKie7TrYy0UGYwEAYJKwYBBAGCNxUBBAMCAQAwCgYIKoZIzj0E +AwMDaAAwZQIwJsdpW9zV57LnyAyMjMPdeYwbY9XJUpROTYJKcx6ygISpJcBMWm1JKWB4E+J+SOtk +AjEA2zQgMgj/mkkCtojeFK9dbJlxjRo/i9fgojaGHAeCOnZT/cKi7e97sIBPWA9LUzm9 +-----END CERTIFICATE----- + +GTS Root R1 +=========== +-----BEGIN CERTIFICATE----- +MIIFWjCCA0KgAwIBAgIQbkepxUtHDA3sM9CJuRz04TANBgkqhkiG9w0BAQwFADBHMQswCQYDVQQG +EwJVUzEiMCAGA1UEChMZR29vZ2xlIFRydXN0IFNlcnZpY2VzIExMQzEUMBIGA1UEAxMLR1RTIFJv +b3QgUjEwHhcNMTYwNjIyMDAwMDAwWhcNMzYwNjIyMDAwMDAwWjBHMQswCQYDVQQGEwJVUzEiMCAG +A1UEChMZR29vZ2xlIFRydXN0IFNlcnZpY2VzIExMQzEUMBIGA1UEAxMLR1RTIFJvb3QgUjEwggIi +MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC2EQKLHuOhd5s73L+UPreVp0A8of2C+X0yBoJx +9vaMf/vo27xqLpeXo4xL+Sv2sfnOhB2x+cWX3u+58qPpvBKJXqeqUqv4IyfLpLGcY9vXmX7wCl7r +aKb0xlpHDU0QM+NOsROjyBhsS+z8CZDfnWQpJSMHobTSPS5g4M/SCYe7zUjwTcLCeoiKu7rPWRnW +r4+wB7CeMfGCwcDfLqZtbBkOtdh+JhpFAz2weaSUKK0PfyblqAj+lug8aJRT7oM6iCsVlgmy4HqM +LnXWnOunVmSPlk9orj2XwoSPwLxAwAtcvfaHszVsrBhQf4TgTM2S0yDpM7xSma8ytSmzJSq0SPly +4cpk9+aCEI3oncKKiPo4Zor8Y/kB+Xj9e1x3+naH+uzfsQ55lVe0vSbv1gHR6xYKu44LtcXFilWr +06zqkUspzBmkMiVOKvFlRNACzqrOSbTqn3yDsEB750Orp2yjj32JgfpMpf/VjsPOS+C12LOORc92 +wO1AK/1TD7Cn1TsNsYqiA94xrcx36m97PtbfkSIS5r762DL8EGMUUXLeXdYWk70paDPvOmbsB4om +3xPXV2V4J95eSRQAogB/mqghtqmxlbCluQ0WEdrHbEg8QOB+DVrNVjzRlwW5y0vtOUucxD/SVRNu +JLDWcfr0wbrM7Rv1/oFB2ACYPTrIrnqYNxgFlQIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYD +VR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU5K8rJnEaK0gnhS9SZizv8IkTcT4wDQYJKoZIhvcNAQEM +BQADggIBADiWCu49tJYeX++dnAsznyvgyv3SjgofQXSlfKqE1OXyHuY3UjKcC9FhHb8owbZEKTV1 +d5iyfNm9dKyKaOOpMQkpAWBz40d8U6iQSifvS9efk+eCNs6aaAyC58/UEBZvXw6ZXPYfcX3v73sv +fuo21pdwCxXu11xWajOl40k4DLh9+42FpLFZXvRq4d2h9mREruZRgyFmxhE+885H7pwoHyXa/6xm +ld01D1zvICxi/ZG6qcz8WpyTgYMpl0p8WnK0OdC3d8t5/Wk6kjftbjhlRn7pYL15iJdfOBL07q9b +gsiG1eGZbYwE8na6SfZu6W0eX6DvJ4J2QPim01hcDyxC2kLGe4g0x8HYRZvBPsVhHdljUEn2NIVq +4BjFbkerQUIpm/ZgDdIx02OYI5NaAIFItO/Nis3Jz5nu2Z6qNuFoS3FJFDYoOj0dzpqPJeaAcWEr +tXvM+SUWgeExX6GjfhaknBZqlxi9dnKlC54dNuYvoS++cJEPqOba+MSSQGwlfnuzCdyyF62ARPBo +pY+Udf90WuioAnwMCeKpSwughQtiue+hMZL77/ZRBIls6Kl0obsXs7X9SQ98POyDGCBDTtWTurQ0 +sR8WNh8M5mQ5Fkzc4P4dyKliPUDqysU0ArSuiYgzNdwsE3PYJ/HQcu51OyLemGhmW/HGY0dVHLql +CFF1pkgl +-----END CERTIFICATE----- + +GTS Root R2 +=========== +-----BEGIN CERTIFICATE----- +MIIFWjCCA0KgAwIBAgIQbkepxlqz5yDFMJo/aFLybzANBgkqhkiG9w0BAQwFADBHMQswCQYDVQQG +EwJVUzEiMCAGA1UEChMZR29vZ2xlIFRydXN0IFNlcnZpY2VzIExMQzEUMBIGA1UEAxMLR1RTIFJv +b3QgUjIwHhcNMTYwNjIyMDAwMDAwWhcNMzYwNjIyMDAwMDAwWjBHMQswCQYDVQQGEwJVUzEiMCAG +A1UEChMZR29vZ2xlIFRydXN0IFNlcnZpY2VzIExMQzEUMBIGA1UEAxMLR1RTIFJvb3QgUjIwggIi +MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDO3v2m++zsFDQ8BwZabFn3GTXd98GdVarTzTuk +k3LvCvptnfbwhYBboUhSnznFt+4orO/LdmgUud+tAWyZH8QiHZ/+cnfgLFuv5AS/T3KgGjSY6Dlo +7JUle3ah5mm5hRm9iYz+re026nO8/4Piy33B0s5Ks40FnotJk9/BW9BuXvAuMC6C/Pq8tBcKSOWI +m8Wba96wyrQD8Nr0kLhlZPdcTK3ofmZemde4wj7I0BOdre7kRXuJVfeKH2JShBKzwkCX44ofR5Gm +dFrS+LFjKBC4swm4VndAoiaYecb+3yXuPuWgf9RhD1FLPD+M2uFwdNjCaKH5wQzpoeJ/u1U8dgbu +ak7MkogwTZq9TwtImoS1mKPV+3PBV2HdKFZ1E66HjucMUQkQdYhMvI35ezzUIkgfKtzra7tEscsz +cTJGr61K8YzodDqs5xoic4DSMPclQsciOzsSrZYuxsN2B6ogtzVJV+mSSeh2FnIxZyuWfoqjx5RW +Ir9qS34BIbIjMt/kmkRtWVtd9QCgHJvGeJeNkP+byKq0rxFROV7Z+2et1VsRnTKaG73Vululycsl +aVNVJ1zgyjbLiGH7HrfQy+4W+9OmTN6SpdTi3/UGVN4unUu0kzCqgc7dGtxRcw1PcOnlthYhGXmy +5okLdWTK1au8CcEYof/UVKGFPP0UJAOyh9OktwIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYD +VR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUu//KjiOfT5nK2+JopqUVJxce2Q4wDQYJKoZIhvcNAQEM +BQADggIBALZp8KZ3/p7uC4Gt4cCpx/k1HUCCq+YEtN/L9x0Pg/B+E02NjO7jMyLDOfxA325BS0JT +vhaI8dI4XsRomRyYUpOM52jtG2pzegVATX9lO9ZY8c6DR2Dj/5epnGB3GFW1fgiTz9D2PGcDFWEJ ++YF59exTpJ/JjwGLc8R3dtyDovUMSRqodt6Sm2T4syzFJ9MHwAiApJiS4wGWAqoC7o87xdFtCjMw +c3i5T1QWvwsHoaRc5svJXISPD+AVdyx+Jn7axEvbpxZ3B7DNdehyQtaVhJ2Gg/LkkM0JR9SLA3Da +WsYDQvTtN6LwG1BUSw7YhN4ZKJmBR64JGz9I0cNv4rBgF/XuIwKl2gBbbZCr7qLpGzvpx0QnRY5r +n/WkhLx3+WuXrD5RRaIRpsyF7gpo8j5QOHokYh4XIDdtak23CZvJ/KRY9bb7nE4Yu5UC56Gtmwfu +Nmsk0jmGwZODUNKBRqhfYlcsu2xkiAhu7xNUX90txGdj08+JN7+dIPT7eoOboB6BAFDC5AwiWVIQ +7UNWhwD4FFKnHYuTjKJNRn8nxnGbJN7k2oaLDX5rIMHAnuFl2GqjpuiFizoHCBy69Y9Vmhh1fuXs +gWbRIXOhNUQLgD1bnF5vKheW0YMjiGZt5obicDIvUiLnyOd/xCxgXS/Dr55FBcOEArf9LAhST4Ld +o/DUhgkC +-----END CERTIFICATE----- + +GTS Root R3 +=========== +-----BEGIN CERTIFICATE----- +MIICDDCCAZGgAwIBAgIQbkepx2ypcyRAiQ8DVd2NHTAKBggqhkjOPQQDAzBHMQswCQYDVQQGEwJV +UzEiMCAGA1UEChMZR29vZ2xlIFRydXN0IFNlcnZpY2VzIExMQzEUMBIGA1UEAxMLR1RTIFJvb3Qg +UjMwHhcNMTYwNjIyMDAwMDAwWhcNMzYwNjIyMDAwMDAwWjBHMQswCQYDVQQGEwJVUzEiMCAGA1UE +ChMZR29vZ2xlIFRydXN0IFNlcnZpY2VzIExMQzEUMBIGA1UEAxMLR1RTIFJvb3QgUjMwdjAQBgcq +hkjOPQIBBgUrgQQAIgNiAAQfTzOHMymKoYTey8chWEGJ6ladK0uFxh1MJ7x/JlFyb+Kf1qPKzEUU +Rout736GjOyxfi//qXGdGIRFBEFVbivqJn+7kAHjSxm65FSWRQmx1WyRRK2EE46ajA2ADDL24Cej +QjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTB8Sa6oC2uhYHP +0/EqEr24Cmf9vDAKBggqhkjOPQQDAwNpADBmAjEAgFukfCPAlaUs3L6JbyO5o91lAFJekazInXJ0 +glMLfalAvWhgxeG4VDvBNhcl2MG9AjEAnjWSdIUlUfUk7GRSJFClH9voy8l27OyCbvWFGFPouOOa +KaqW04MjyaR7YbPMAuhd +-----END CERTIFICATE----- + +GTS Root R4 +=========== +-----BEGIN CERTIFICATE----- +MIICCjCCAZGgAwIBAgIQbkepyIuUtui7OyrYorLBmTAKBggqhkjOPQQDAzBHMQswCQYDVQQGEwJV +UzEiMCAGA1UEChMZR29vZ2xlIFRydXN0IFNlcnZpY2VzIExMQzEUMBIGA1UEAxMLR1RTIFJvb3Qg +UjQwHhcNMTYwNjIyMDAwMDAwWhcNMzYwNjIyMDAwMDAwWjBHMQswCQYDVQQGEwJVUzEiMCAGA1UE +ChMZR29vZ2xlIFRydXN0IFNlcnZpY2VzIExMQzEUMBIGA1UEAxMLR1RTIFJvb3QgUjQwdjAQBgcq +hkjOPQIBBgUrgQQAIgNiAATzdHOnaItgrkO4NcWBMHtLSZ37wWHO5t5GvWvVYRg1rkDdc/eJkTBa +6zzuhXyiQHY7qca4R9gq55KRanPpsXI5nymfopjTX15YhmUPoYRlBtHci8nHc8iMai/lxKvRHYqj +QjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBSATNbrdP9JNqPV +2Py1PsVq8JQdjDAKBggqhkjOPQQDAwNnADBkAjBqUFJ0CMRw3J5QdCHojXohw0+WbhXRIjVhLfoI +N+4Zba3bssx9BzT1YBkstTTZbyACMANxsbqjYAuG7ZoIapVon+Kz4ZNkfF6Tpt95LY2F45TPI11x +zPKwTdb+mciUqXWi4w== +-----END CERTIFICATE----- + +UCA Global G2 Root +================== +-----BEGIN CERTIFICATE----- +MIIFRjCCAy6gAwIBAgIQXd+x2lqj7V2+WmUgZQOQ7zANBgkqhkiG9w0BAQsFADA9MQswCQYDVQQG +EwJDTjERMA8GA1UECgwIVW5pVHJ1c3QxGzAZBgNVBAMMElVDQSBHbG9iYWwgRzIgUm9vdDAeFw0x +NjAzMTEwMDAwMDBaFw00MDEyMzEwMDAwMDBaMD0xCzAJBgNVBAYTAkNOMREwDwYDVQQKDAhVbmlU +cnVzdDEbMBkGA1UEAwwSVUNBIEdsb2JhbCBHMiBSb290MIICIjANBgkqhkiG9w0BAQEFAAOCAg8A +MIICCgKCAgEAxeYrb3zvJgUno4Ek2m/LAfmZmqkywiKHYUGRO8vDaBsGxUypK8FnFyIdK+35KYmT +oni9kmugow2ifsqTs6bRjDXVdfkX9s9FxeV67HeToI8jrg4aA3++1NDtLnurRiNb/yzmVHqUwCoV +8MmNsHo7JOHXaOIxPAYzRrZUEaalLyJUKlgNAQLx+hVRZ2zA+te2G3/RVogvGjqNO7uCEeBHANBS +h6v7hn4PJGtAnTRnvI3HLYZveT6OqTwXS3+wmeOwcWDcC/Vkw85DvG1xudLeJ1uK6NjGruFZfc8o +LTW4lVYa8bJYS7cSN8h8s+1LgOGN+jIjtm+3SJUIsUROhYw6AlQgL9+/V087OpAh18EmNVQg7Mc/ +R+zvWr9LesGtOxdQXGLYD0tK3Cv6brxzks3sx1DoQZbXqX5t2Okdj4q1uViSukqSKwxW/YDrCPBe +KW4bHAyvj5OJrdu9o54hyokZ7N+1wxrrFv54NkzWbtA+FxyQF2smuvt6L78RHBgOLXMDj6DlNaBa +4kx1HXHhOThTeEDMg5PXCp6dW4+K5OXgSORIskfNTip1KnvyIvbJvgmRlld6iIis7nCs+dwp4wwc +OxJORNanTrAmyPPZGpeRaOrvjUYG0lZFWJo8DA+DuAUlwznPO6Q0ibd5Ei9Hxeepl2n8pndntd97 +8XplFeRhVmUCAwEAAaNCMEAwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0O +BBYEFIHEjMz15DD/pQwIX4wVZyF0Ad/fMA0GCSqGSIb3DQEBCwUAA4ICAQATZSL1jiutROTL/7lo +5sOASD0Ee/ojL3rtNtqyzm325p7lX1iPyzcyochltq44PTUbPrw7tgTQvPlJ9Zv3hcU2tsu8+Mg5 +1eRfB70VVJd0ysrtT7q6ZHafgbiERUlMjW+i67HM0cOU2kTC5uLqGOiiHycFutfl1qnN3e92mI0A +Ds0b+gO3joBYDic/UvuUospeZcnWhNq5NXHzJsBPd+aBJ9J3O5oUb3n09tDh05S60FdRvScFDcH9 +yBIw7m+NESsIndTUv4BFFJqIRNow6rSn4+7vW4LVPtateJLbXDzz2K36uGt/xDYotgIVilQsnLAX +c47QN6MUPJiVAAwpBVueSUmxX8fjy88nZY41F7dXyDDZQVu5FLbowg+UMaeUmMxq67XhJ/UQqAHo +jhJi6IjMtX9Gl8CbEGY4GjZGXyJoPd/JxhMnq1MGrKI8hgZlb7F+sSlEmqO6SWkoaY/X5V+tBIZk +bxqgDMUIYs6Ao9Dz7GjevjPHF1t/gMRMTLGmhIrDO7gJzRSBuhjjVFc2/tsvfEehOjPI+Vg7RE+x +ygKJBJYoaMVLuCaJu9YzL1DV/pqJuhgyklTGW+Cd+V7lDSKb9triyCGyYiGqhkCyLmTTX8jjfhFn +RR8F/uOi77Oos/N9j/gMHyIfLXC0uAE0djAA5SN4p1bXUB+K+wb1whnw0A== +-----END CERTIFICATE----- + +UCA Extended Validation Root +============================ +-----BEGIN CERTIFICATE----- +MIIFWjCCA0KgAwIBAgIQT9Irj/VkyDOeTzRYZiNwYDANBgkqhkiG9w0BAQsFADBHMQswCQYDVQQG +EwJDTjERMA8GA1UECgwIVW5pVHJ1c3QxJTAjBgNVBAMMHFVDQSBFeHRlbmRlZCBWYWxpZGF0aW9u +IFJvb3QwHhcNMTUwMzEzMDAwMDAwWhcNMzgxMjMxMDAwMDAwWjBHMQswCQYDVQQGEwJDTjERMA8G +A1UECgwIVW5pVHJ1c3QxJTAjBgNVBAMMHFVDQSBFeHRlbmRlZCBWYWxpZGF0aW9uIFJvb3QwggIi +MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCpCQcoEwKwmeBkqh5DFnpzsZGgdT6o+uM4AHrs +iWogD4vFsJszA1qGxliG1cGFu0/GnEBNyr7uaZa4rYEwmnySBesFK5pI0Lh2PpbIILvSsPGP2KxF +Rv+qZ2C0d35qHzwaUnoEPQc8hQ2E0B92CvdqFN9y4zR8V05WAT558aopO2z6+I9tTcg1367r3CTu +eUWnhbYFiN6IXSV8l2RnCdm/WhUFhvMJHuxYMjMR83dksHYf5BA1FxvyDrFspCqjc/wJHx4yGVMR +59mzLC52LqGj3n5qiAno8geK+LLNEOfic0CTuwjRP+H8C5SzJe98ptfRr5//lpr1kXuYC3fUfugH +0mK1lTnj8/FtDw5lhIpjVMWAtuCeS31HJqcBCF3RiJ7XwzJE+oJKCmhUfzhTA8ykADNkUVkLo4KR +el7sFsLzKuZi2irbWWIQJUoqgQtHB0MGcIfS+pMRKXpITeuUx3BNr2fVUbGAIAEBtHoIppB/TuDv +B0GHr2qlXov7z1CymlSvw4m6WC31MJixNnI5fkkE/SmnTHnkBVfblLkWU41Gsx2VYVdWf6/wFlth +WG82UBEL2KwrlRYaDh8IzTY0ZRBiZtWAXxQgXy0MoHgKaNYs1+lvK9JKBZP8nm9rZ/+I8U6laUpS +NwXqxhaN0sSZ0YIrO7o1dfdRUVjzyAfd5LQDfwIDAQABo0IwQDAdBgNVHQ4EFgQU2XQ65DA9DfcS +3H5aBZ8eNJr34RQwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAYYwDQYJKoZIhvcNAQEL +BQADggIBADaNl8xCFWQpN5smLNb7rhVpLGsaGvdftvkHTFnq88nIua7Mui563MD1sC3AO6+fcAUR +ap8lTwEpcOPlDOHqWnzcSbvBHiqB9RZLcpHIojG5qtr8nR/zXUACE/xOHAbKsxSQVBcZEhrxH9cM +aVr2cXj0lH2RC47skFSOvG+hTKv8dGT9cZr4QQehzZHkPJrgmzI5c6sq1WnIeJEmMX3ixzDx/BR4 +dxIOE/TdFpS/S2d7cFOFyrC78zhNLJA5wA3CXWvp4uXViI3WLL+rG761KIcSF3Ru/H38j9CHJrAb ++7lsq+KePRXBOy5nAliRn+/4Qh8st2j1da3Ptfb/EX3C8CSlrdP6oDyp+l3cpaDvRKS+1ujl5BOW +F3sGPjLtx7dCvHaj2GU4Kzg1USEODm8uNBNA4StnDG1KQTAYI1oyVZnJF+A83vbsea0rWBmirSwi +GpWOvpaQXUJXxPkUAzUrHC1RVwinOt4/5Mi0A3PCwSaAuwtCH60NryZy2sy+s6ODWA2CxR9GUeOc +GMyNm43sSet1UNWMKFnKdDTajAshqx7qG+XH/RU+wBeq+yNuJkbL+vmxcmtpzyKEC2IPrNkZAJSi +djzULZrtBJ4tBmIQN1IchXIbJ+XMxjHsN+xjWZsLHXbMfjKaiJUINlK73nZfdklJrX+9ZSCyycEr +dhh2n1ax +-----END CERTIFICATE----- + +Certigna Root CA +================ +-----BEGIN CERTIFICATE----- +MIIGWzCCBEOgAwIBAgIRAMrpG4nxVQMNo+ZBbcTjpuEwDQYJKoZIhvcNAQELBQAwWjELMAkGA1UE +BhMCRlIxEjAQBgNVBAoMCURoaW15b3RpczEcMBoGA1UECwwTMDAwMiA0ODE0NjMwODEwMDAzNjEZ +MBcGA1UEAwwQQ2VydGlnbmEgUm9vdCBDQTAeFw0xMzEwMDEwODMyMjdaFw0zMzEwMDEwODMyMjda +MFoxCzAJBgNVBAYTAkZSMRIwEAYDVQQKDAlEaGlteW90aXMxHDAaBgNVBAsMEzAwMDIgNDgxNDYz +MDgxMDAwMzYxGTAXBgNVBAMMEENlcnRpZ25hIFJvb3QgQ0EwggIiMA0GCSqGSIb3DQEBAQUAA4IC +DwAwggIKAoICAQDNGDllGlmx6mQWDoyUJJV8g9PFOSbcDO8WV43X2KyjQn+Cyu3NW9sOty3tRQgX +stmzy9YXUnIo245Onoq2C/mehJpNdt4iKVzSs9IGPjA5qXSjklYcoW9MCiBtnyN6tMbaLOQdLNyz +KNAT8kxOAkmhVECe5uUFoC2EyP+YbNDrihqECB63aCPuI9Vwzm1RaRDuoXrC0SIxwoKF0vJVdlB8 +JXrJhFwLrN1CTivngqIkicuQstDuI7pmTLtipPlTWmR7fJj6o0ieD5Wupxj0auwuA0Wv8HT4Ks16 +XdG+RCYyKfHx9WzMfgIhC59vpD++nVPiz32pLHxYGpfhPTc3GGYo0kDFUYqMwy3OU4gkWGQwFsWq +4NYKpkDfePb1BHxpE4S80dGnBs8B92jAqFe7OmGtBIyT46388NtEbVncSVmurJqZNjBBe3YzIoej +wpKGbvlw7q6Hh5UbxHq9MfPU0uWZ/75I7HX1eBYdpnDBfzwboZL7z8g81sWTCo/1VTp2lc5ZmIoJ +lXcymoO6LAQ6l73UL77XbJuiyn1tJslV1c/DeVIICZkHJC1kJWumIWmbat10TWuXekG9qxf5kBdI +jzb5LdXF2+6qhUVB+s06RbFo5jZMm5BX7CO5hwjCxAnxl4YqKE3idMDaxIzb3+KhF1nOJFl0Mdp/ +/TBt2dzhauH8XwIDAQABo4IBGjCCARYwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYw +HQYDVR0OBBYEFBiHVuBud+4kNTxOc5of1uHieX4rMB8GA1UdIwQYMBaAFBiHVuBud+4kNTxOc5of +1uHieX4rMEQGA1UdIAQ9MDswOQYEVR0gADAxMC8GCCsGAQUFBwIBFiNodHRwczovL3d3d3cuY2Vy +dGlnbmEuZnIvYXV0b3JpdGVzLzBtBgNVHR8EZjBkMC+gLaArhilodHRwOi8vY3JsLmNlcnRpZ25h +LmZyL2NlcnRpZ25hcm9vdGNhLmNybDAxoC+gLYYraHR0cDovL2NybC5kaGlteW90aXMuY29tL2Nl +cnRpZ25hcm9vdGNhLmNybDANBgkqhkiG9w0BAQsFAAOCAgEAlLieT/DjlQgi581oQfccVdV8AOIt +OoldaDgvUSILSo3L6btdPrtcPbEo/uRTVRPPoZAbAh1fZkYJMyjhDSSXcNMQH+pkV5a7XdrnxIxP +TGRGHVyH41neQtGbqH6mid2PHMkwgu07nM3A6RngatgCdTer9zQoKJHyBApPNeNgJgH60BGM+RFq +7q89w1DTj18zeTyGqHNFkIwgtnJzFyO+B2XleJINugHA64wcZr+shncBlA2c5uk5jR+mUYyZDDl3 +4bSb+hxnV29qao6pK0xXeXpXIs/NX2NGjVxZOob4Mkdio2cNGJHc+6Zr9UhhcyNZjgKnvETq9Emd +8VRY+WCv2hikLyhF3HqgiIZd8zvn/yk1gPxkQ5Tm4xxvvq0OKmOZK8l+hfZx6AYDlf7ej0gcWtSS +6Cvu5zHbugRqh5jnxV/vfaci9wHYTfmJ0A6aBVmknpjZbyvKcL5kwlWj9Omvw5Ip3IgWJJk8jSaY +tlu3zM63Nwf9JtmYhST/WSMDmu2dnajkXjjO11INb9I/bbEFa0nOipFGc/T2L/Coc3cOZayhjWZS +aX5LaAzHHjcng6WMxwLkFM1JAbBzs/3GkDpv0mztO+7skb6iQ12LAEpmJURw3kAP+HwV96LOPNde +E4yBFxgX0b3xdxA61GU5wSesVywlVP+i2k+KYTlerj1KjL0= +-----END CERTIFICATE----- + +emSign Root CA - G1 +=================== +-----BEGIN CERTIFICATE----- +MIIDlDCCAnygAwIBAgIKMfXkYgxsWO3W2DANBgkqhkiG9w0BAQsFADBnMQswCQYDVQQGEwJJTjET +MBEGA1UECxMKZW1TaWduIFBLSTElMCMGA1UEChMcZU11ZGhyYSBUZWNobm9sb2dpZXMgTGltaXRl +ZDEcMBoGA1UEAxMTZW1TaWduIFJvb3QgQ0EgLSBHMTAeFw0xODAyMTgxODMwMDBaFw00MzAyMTgx +ODMwMDBaMGcxCzAJBgNVBAYTAklOMRMwEQYDVQQLEwplbVNpZ24gUEtJMSUwIwYDVQQKExxlTXVk +aHJhIFRlY2hub2xvZ2llcyBMaW1pdGVkMRwwGgYDVQQDExNlbVNpZ24gUm9vdCBDQSAtIEcxMIIB +IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAk0u76WaK7p1b1TST0Bsew+eeuGQzf2N4aLTN +LnF115sgxk0pvLZoYIr3IZpWNVrzdr3YzZr/k1ZLpVkGoZM0Kd0WNHVO8oG0x5ZOrRkVUkr+PHB1 +cM2vK6sVmjM8qrOLqs1D/fXqcP/tzxE7lM5OMhbTI0Aqd7OvPAEsbO2ZLIvZTmmYsvePQbAyeGHW +DV/D+qJAkh1cF+ZwPjXnorfCYuKrpDhMtTk1b+oDafo6VGiFbdbyL0NVHpENDtjVaqSW0RM8LHhQ +6DqS0hdW5TUaQBw+jSztOd9C4INBdN+jzcKGYEho42kLVACL5HZpIQ15TjQIXhTCzLG3rdd8cIrH +hQIDAQABo0IwQDAdBgNVHQ4EFgQU++8Nhp6w492pufEhF38+/PB3KxowDgYDVR0PAQH/BAQDAgEG +MA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAFn/8oz1h31xPaOfG1vR2vjTnGs2 +vZupYeveFix0PZ7mddrXuqe8QhfnPZHr5X3dPpzxz5KsbEjMwiI/aTvFthUvozXGaCocV685743Q +NcMYDHsAVhzNixl03r4PEuDQqqE/AjSxcM6dGNYIAwlG7mDgfrbESQRRfXBgvKqy/3lyeqYdPV8q ++Mri/Tm3R7nrft8EI6/6nAYH6ftjk4BAtcZsCjEozgyfz7MjNYBBjWzEN3uBL4ChQEKF6dk4jeih +U80Bv2noWgbyRQuQ+q7hv53yrlc8pa6yVvSLZUDp/TGBLPQ5Cdjua6e0ph0VpZj3AYHYhX3zUVxx +iN66zB+Afko= +-----END CERTIFICATE----- + +emSign ECC Root CA - G3 +======================= +-----BEGIN CERTIFICATE----- +MIICTjCCAdOgAwIBAgIKPPYHqWhwDtqLhDAKBggqhkjOPQQDAzBrMQswCQYDVQQGEwJJTjETMBEG +A1UECxMKZW1TaWduIFBLSTElMCMGA1UEChMcZU11ZGhyYSBUZWNobm9sb2dpZXMgTGltaXRlZDEg +MB4GA1UEAxMXZW1TaWduIEVDQyBSb290IENBIC0gRzMwHhcNMTgwMjE4MTgzMDAwWhcNNDMwMjE4 +MTgzMDAwWjBrMQswCQYDVQQGEwJJTjETMBEGA1UECxMKZW1TaWduIFBLSTElMCMGA1UEChMcZU11 +ZGhyYSBUZWNobm9sb2dpZXMgTGltaXRlZDEgMB4GA1UEAxMXZW1TaWduIEVDQyBSb290IENBIC0g +RzMwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQjpQy4LRL1KPOxst3iAhKAnjlfSU2fySU0WXTsuwYc +58Byr+iuL+FBVIcUqEqy6HyC5ltqtdyzdc6LBtCGI79G1Y4PPwT01xySfvalY8L1X44uT6EYGQIr +MgqCZH0Wk9GjQjBAMB0GA1UdDgQWBBR8XQKEE9TMipuBzhccLikenEhjQjAOBgNVHQ8BAf8EBAMC +AQYwDwYDVR0TAQH/BAUwAwEB/zAKBggqhkjOPQQDAwNpADBmAjEAvvNhzwIQHWSVB7gYboiFBS+D +CBeQyh+KTOgNG3qxrdWBCUfvO6wIBHxcmbHtRwfSAjEAnbpV/KlK6O3t5nYBQnvI+GDZjVGLVTv7 +jHvrZQnD+JbNR6iC8hZVdyR+EhCVBCyj +-----END CERTIFICATE----- + +emSign Root CA - C1 +=================== +-----BEGIN CERTIFICATE----- +MIIDczCCAlugAwIBAgILAK7PALrEzzL4Q7IwDQYJKoZIhvcNAQELBQAwVjELMAkGA1UEBhMCVVMx +EzARBgNVBAsTCmVtU2lnbiBQS0kxFDASBgNVBAoTC2VNdWRocmEgSW5jMRwwGgYDVQQDExNlbVNp +Z24gUm9vdCBDQSAtIEMxMB4XDTE4MDIxODE4MzAwMFoXDTQzMDIxODE4MzAwMFowVjELMAkGA1UE +BhMCVVMxEzARBgNVBAsTCmVtU2lnbiBQS0kxFDASBgNVBAoTC2VNdWRocmEgSW5jMRwwGgYDVQQD +ExNlbVNpZ24gUm9vdCBDQSAtIEMxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAz+up +ufGZBczYKCFK83M0UYRWEPWgTywS4/oTmifQz/l5GnRfHXk5/Fv4cI7gklL35CX5VIPZHdPIWoU/ +Xse2B+4+wM6ar6xWQio5JXDWv7V7Nq2s9nPczdcdioOl+yuQFTdrHCZH3DspVpNqs8FqOp099cGX +OFgFixwR4+S0uF2FHYP+eF8LRWgYSKVGczQ7/g/IdrvHGPMF0Ybzhe3nudkyrVWIzqa2kbBPrH4V +I5b2P/AgNBbeCsbEBEV5f6f9vtKppa+cxSMq9zwhbL2vj07FOrLzNBL834AaSaTUqZX3noleooms +lMuoaJuvimUnzYnu3Yy1aylwQ6BpC+S5DwIDAQABo0IwQDAdBgNVHQ4EFgQU/qHgcB4qAzlSWkK+ +XJGFehiqTbUwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQAD +ggEBAMJKVvoVIXsoounlHfv4LcQ5lkFMOycsxGwYFYDGrK9HWS8mC+M2sO87/kOXSTKZEhVb3xEp +/6tT+LvBeA+snFOvV71ojD1pM/CjoCNjO2RnIkSt1XHLVip4kqNPEjE2NuLe/gDEo2APJ62gsIq1 +NnpSob0n9CAnYuhNlCQT5AoE6TyrLshDCUrGYQTlSTR+08TI9Q/Aqum6VF7zYytPT1DU/rl7mYw9 +wC68AivTxEDkigcxHpvOJpkT+xHqmiIMERnHXhuBUDDIlhJu58tBf5E7oke3VIAb3ADMmpDqw8NQ +BmIMMMAVSKeoWXzhriKi4gp6D/piq1JM4fHfyr6DDUI= +-----END CERTIFICATE----- + +emSign ECC Root CA - C3 +======================= +-----BEGIN CERTIFICATE----- +MIICKzCCAbGgAwIBAgIKe3G2gla4EnycqDAKBggqhkjOPQQDAzBaMQswCQYDVQQGEwJVUzETMBEG +A1UECxMKZW1TaWduIFBLSTEUMBIGA1UEChMLZU11ZGhyYSBJbmMxIDAeBgNVBAMTF2VtU2lnbiBF +Q0MgUm9vdCBDQSAtIEMzMB4XDTE4MDIxODE4MzAwMFoXDTQzMDIxODE4MzAwMFowWjELMAkGA1UE +BhMCVVMxEzARBgNVBAsTCmVtU2lnbiBQS0kxFDASBgNVBAoTC2VNdWRocmEgSW5jMSAwHgYDVQQD +ExdlbVNpZ24gRUNDIFJvb3QgQ0EgLSBDMzB2MBAGByqGSM49AgEGBSuBBAAiA2IABP2lYa57JhAd +6bciMK4G9IGzsUJxlTm801Ljr6/58pc1kjZGDoeVjbk5Wum739D+yAdBPLtVb4OjavtisIGJAnB9 +SMVK4+kiVCJNk7tCDK93nCOmfddhEc5lx/h//vXyqaNCMEAwHQYDVR0OBBYEFPtaSNCAIEDyqOkA +B2kZd6fmw/TPMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MAoGCCqGSM49BAMDA2gA +MGUCMQC02C8Cif22TGK6Q04ThHK1rt0c3ta13FaPWEBaLd4gTCKDypOofu4SQMfWh0/434UCMBwU +ZOR8loMRnLDRWmFLpg9J0wD8ofzkpf9/rdcw0Md3f76BB1UwUCAU9Vc4CqgxUQ== +-----END CERTIFICATE----- + +Hongkong Post Root CA 3 +======================= +-----BEGIN CERTIFICATE----- +MIIFzzCCA7egAwIBAgIUCBZfikyl7ADJk0DfxMauI7gcWqQwDQYJKoZIhvcNAQELBQAwbzELMAkG +A1UEBhMCSEsxEjAQBgNVBAgTCUhvbmcgS29uZzESMBAGA1UEBxMJSG9uZyBLb25nMRYwFAYDVQQK +Ew1Ib25na29uZyBQb3N0MSAwHgYDVQQDExdIb25na29uZyBQb3N0IFJvb3QgQ0EgMzAeFw0xNzA2 +MDMwMjI5NDZaFw00MjA2MDMwMjI5NDZaMG8xCzAJBgNVBAYTAkhLMRIwEAYDVQQIEwlIb25nIEtv +bmcxEjAQBgNVBAcTCUhvbmcgS29uZzEWMBQGA1UEChMNSG9uZ2tvbmcgUG9zdDEgMB4GA1UEAxMX +SG9uZ2tvbmcgUG9zdCBSb290IENBIDMwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCz +iNfqzg8gTr7m1gNt7ln8wlffKWihgw4+aMdoWJwcYEuJQwy51BWy7sFOdem1p+/l6TWZ5Mwc50tf +jTMwIDNT2aa71T4Tjukfh0mtUC1Qyhi+AViiE3CWu4mIVoBc+L0sPOFMV4i707mV78vH9toxdCim +5lSJ9UExyuUmGs2C4HDaOym71QP1mbpV9WTRYA6ziUm4ii8F0oRFKHyPaFASePwLtVPLwpgchKOe +sL4jpNrcyCse2m5FHomY2vkALgbpDDtw1VAliJnLzXNg99X/NWfFobxeq81KuEXryGgeDQ0URhLj +0mRiikKYvLTGCAj4/ahMZJx2Ab0vqWwzD9g/KLg8aQFChn5pwckGyuV6RmXpwtZQQS4/t+TtbNe/ +JgERohYpSms0BpDsE9K2+2p20jzt8NYt3eEV7KObLyzJPivkaTv/ciWxNoZbx39ri1UbSsUgYT2u +y1DhCDq+sI9jQVMwCFk8mB13umOResoQUGC/8Ne8lYePl8X+l2oBlKN8W4UdKjk60FSh0Tlxnf0h ++bV78OLgAo9uliQlLKAeLKjEiafv7ZkGL7YKTE/bosw3Gq9HhS2KX8Q0NEwA/RiTZxPRN+ZItIsG +xVd7GYYKecsAyVKvQv83j+GjHno9UKtjBucVtT+2RTeUN7F+8kjDf8V1/peNRY8apxpyKBpADwID +AQABo2MwYTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAfBgNVHSMEGDAWgBQXnc0e +i9Y5K3DTXNSguB+wAPzFYTAdBgNVHQ4EFgQUF53NHovWOStw01zUoLgfsAD8xWEwDQYJKoZIhvcN +AQELBQADggIBAFbVe27mIgHSQpsY1Q7XZiNc4/6gx5LS6ZStS6LG7BJ8dNVI0lkUmcDrudHr9Egw +W62nV3OZqdPlt9EuWSRY3GguLmLYauRwCy0gUCCkMpXRAJi70/33MvJJrsZ64Ee+bs7Lo3I6LWld +y8joRTnU+kLBEUx3XZL7av9YROXrgZ6voJmtvqkBZss4HTzfQx/0TW60uhdG/H39h4F5ag0zD/ov ++BS5gLNdTaqX4fnkGMX41TiMJjz98iji7lpJiCzfeT2OnpA8vUFKOt1b9pq0zj8lMH8yfaIDlNDc +eqFS3m6TjRgm/VWsvY+b0s+v54Ysyx8Jb6NvqYTUc79NoXQbTiNg8swOqn+knEwlqLJmOzj/2ZQw +9nKEvmhVEA/GcywWaZMH/rFF7buiVWqw2rVKAiUnhde3t4ZEFolsgCs+l6mc1X5VTMbeRRAc6uk7 +nwNT7u56AQIWeNTowr5GdogTPyK7SBIdUgC0An4hGh6cJfTzPV4e0hz5sy229zdcxsshTrD3mUcY +hcErulWuBurQB7Lcq9CClnXO0lD+mefPL5/ndtFhKvshuzHQqp9HpLIiyhY6UFfEW0NnxWViA0kB +60PZ2Pierc+xYw5F9KBaLJstxabArahH9CdMOA0uG0k7UvToiIMrVCjU8jVStDKDYmlkDJGcn5fq +dBb9HxEGmpv0 +-----END CERTIFICATE----- + +Entrust Root Certification Authority - G4 +========================================= +-----BEGIN CERTIFICATE----- +MIIGSzCCBDOgAwIBAgIRANm1Q3+vqTkPAAAAAFVlrVgwDQYJKoZIhvcNAQELBQAwgb4xCzAJBgNV +BAYTAlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMuMSgwJgYDVQQLEx9TZWUgd3d3LmVudHJ1c3Qu +bmV0L2xlZ2FsLXRlcm1zMTkwNwYDVQQLEzAoYykgMjAxNSBFbnRydXN0LCBJbmMuIC0gZm9yIGF1 +dGhvcml6ZWQgdXNlIG9ubHkxMjAwBgNVBAMTKUVudHJ1c3QgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1 +dGhvcml0eSAtIEc0MB4XDTE1MDUyNzExMTExNloXDTM3MTIyNzExNDExNlowgb4xCzAJBgNVBAYT +AlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMuMSgwJgYDVQQLEx9TZWUgd3d3LmVudHJ1c3QubmV0 +L2xlZ2FsLXRlcm1zMTkwNwYDVQQLEzAoYykgMjAxNSBFbnRydXN0LCBJbmMuIC0gZm9yIGF1dGhv +cml6ZWQgdXNlIG9ubHkxMjAwBgNVBAMTKUVudHJ1c3QgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhv +cml0eSAtIEc0MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAsewsQu7i0TD/pZJH4i3D +umSXbcr3DbVZwbPLqGgZ2K+EbTBwXX7zLtJTmeH+H17ZSK9dE43b/2MzTdMAArzE+NEGCJR5WIoV +3imz/f3ET+iq4qA7ec2/a0My3dl0ELn39GjUu9CH1apLiipvKgS1sqbHoHrmSKvS0VnM1n4j5pds +8ELl3FFLFUHtSUrJ3hCX1nbB76W1NhSXNdh4IjVS70O92yfbYVaCNNzLiGAMC1rlLAHGVK/XqsEQ +e9IFWrhAnoanw5CGAlZSCXqc0ieCU0plUmr1POeo8pyvi73TDtTUXm6Hnmo9RR3RXRv06QqsYJn7 +ibT/mCzPfB3pAqoEmh643IhuJbNsZvc8kPNXwbMv9W3y+8qh+CmdRouzavbmZwe+LGcKKh9asj5X +xNMhIWNlUpEbsZmOeX7m640A2Vqq6nPopIICR5b+W45UYaPrL0swsIsjdXJ8ITzI9vF01Bx7owVV +7rtNOzK+mndmnqxpkCIHH2E6lr7lmk/MBTwoWdPBDFSoWWG9yHJM6Nyfh3+9nEg2XpWjDrk4JFX8 +dWbrAuMINClKxuMrLzOg2qOGpRKX/YAr2hRC45K9PvJdXmd0LhyIRyk0X+IyqJwlN4y6mACXi0mW +Hv0liqzc2thddG5msP9E36EYxr5ILzeUePiVSj9/E15dWf10hkNjc0kCAwEAAaNCMEAwDwYDVR0T +AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJ84xFYjwznooHFs6FRM5Og6sb9n +MA0GCSqGSIb3DQEBCwUAA4ICAQAS5UKme4sPDORGpbZgQIeMJX6tuGguW8ZAdjwD+MlZ9POrYs4Q +jbRaZIxowLByQzTSGwv2LFPSypBLhmb8qoMi9IsabyZIrHZ3CL/FmFz0Jomee8O5ZDIBf9PD3Vht +7LGrhFV0d4QEJ1JrhkzO3bll/9bGXp+aEJlLdWr+aumXIOTkdnrG0CSqkM0gkLpHZPt/B7NTeLUK +YvJzQ85BK4FqLoUWlFPUa19yIqtRLULVAJyZv967lDtX/Zr1hstWO1uIAeV8KEsD+UmDfLJ/fOPt +jqF/YFOOVZ1QNBIPt5d7bIdKROf1beyAN/BYGW5KaHbwH5Lk6rWS02FREAutp9lfx1/cH6NcjKF+ +m7ee01ZvZl4HliDtC3T7Zk6LERXpgUl+b7DUUH8i119lAg2m9IUe2K4GS0qn0jFmwvjO5QimpAKW +RGhXxNUzzxkvFMSUHHuk2fCfDrGA4tGeEWSpiBE6doLlYsKA2KSD7ZPvfC+QsDJMlhVoSFLUmQjA +JOgc47OlIQ6SwJAfzyBfyjs4x7dtOvPmRLgOMWuIjnDrnBdSqEGULoe256YSxXXfW8AKbnuk5F6G ++TaU33fD6Q3AOfF5u0aOq0NZJ7cguyPpVkAh7DE9ZapD8j3fcEThuk0mEDuYn/PIjhs4ViFqUZPT +kcpG2om3PVODLAgfi49T3f+sHw== +-----END CERTIFICATE----- diff --git a/kirby/composer.json b/kirby/composer.json index 909bad1..3b47f6a 100755 --- a/kirby/composer.json +++ b/kirby/composer.json @@ -1,7 +1,7 @@ { "name": "getkirby/cms", "description": "The Kirby 3 core", - "version": "3.3.6", + "version": "3.4.0", "license": "proprietary", "keywords": ["kirby", "cms", "core"], "homepage": "https://getkirby.com", @@ -20,17 +20,17 @@ "source": "https://github.com/getkirby/kirby" }, "require": { - "php": ">=7.1.0", + "php": ">=7.2.0 <7.5.0", "ext-mbstring": "*", "ext-ctype": "*", "getkirby/composer-installer": "^1.0", - "mustangostang/spyc": "0.6.2", + "mustangostang/spyc": "0.6.3", "michelf/php-smartypants": "1.8.1", - "claviska/simpleimage": "3.3.3", - "phpmailer/phpmailer": "6.0.7", - "filp/whoops": "2.3.1", + "claviska/simpleimage": "3.3.4", + "phpmailer/phpmailer": "6.1.6", + "filp/whoops": "2.7.2", "true/punycode": "2.1.1", - "laminas/laminas-escaper": "2.6.0" + "laminas/laminas-escaper": "2.6.1" }, "autoload": { "files": ["config/setup.php"], @@ -41,10 +41,11 @@ }, "scripts": { "analyze": "phpstan analyse", - "test": "phpunit --stderr --coverage-html=tests/coverage", - "zip": "composer archive --format=zip --file=dist", "build": "./scripts/build", - "fix": "php-cs-fixer fix --config .php_cs" + "fix": "php-cs-fixer fix --config .php_cs", + "post-update-cmd": "curl -o cacert.pem https://curl.haxx.se/ca/cacert.pem", + "test": "phpunit --stderr --coverage-html=tests/coverage", + "zip": "composer archive --format=zip --file=dist" }, "config": { "optimize-autoloader": true diff --git a/kirby/composer.lock b/kirby/composer.lock index 13c6eef..dc380d5 100755 --- a/kirby/composer.lock +++ b/kirby/composer.lock @@ -4,20 +4,20 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "957cce44d582e1e5af20616ff45b9c12", + "content-hash": "8ec61411e7f3b3a717572d0847654a96", "packages": [ { "name": "claviska/simpleimage", - "version": "3.3.3", + "version": "3.3.4", "source": { "type": "git", "url": "https://github.com/claviska/SimpleImage.git", - "reference": "31ba5b8358e1663a2813e2ada7242fa8d97a96dc" + "reference": "3786d80af8e6d05e5e42f0350e5e5da5b92041a0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/claviska/SimpleImage/zipball/31ba5b8358e1663a2813e2ada7242fa8d97a96dc", - "reference": "31ba5b8358e1663a2813e2ada7242fa8d97a96dc", + "url": "https://api.github.com/repos/claviska/SimpleImage/zipball/3786d80af8e6d05e5e42f0350e5e5da5b92041a0", + "reference": "3786d80af8e6d05e5e42f0350e5e5da5b92041a0", "shasum": "" }, "require": { @@ -43,20 +43,20 @@ } ], "description": "A PHP class that makes working with images as simple as possible.", - "time": "2017-09-12T09:03:56+00:00" + "time": "2019-09-26T01:22:02+00:00" }, { "name": "filp/whoops", - "version": "2.3.1", + "version": "2.7.2", "source": { "type": "git", "url": "https://github.com/filp/whoops.git", - "reference": "bc0fd11bc455cc20ee4b5edabc63ebbf859324c7" + "reference": "17d0d3f266c8f925ebd035cd36f83cf802b47d4a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/filp/whoops/zipball/bc0fd11bc455cc20ee4b5edabc63ebbf859324c7", - "reference": "bc0fd11bc455cc20ee4b5edabc63ebbf859324c7", + "url": "https://api.github.com/repos/filp/whoops/zipball/17d0d3f266c8f925ebd035cd36f83cf802b47d4a", + "reference": "17d0d3f266c8f925ebd035cd36f83cf802b47d4a", "shasum": "" }, "require": { @@ -65,8 +65,8 @@ }, "require-dev": { "mockery/mockery": "^0.9 || ^1.0", - "phpunit/phpunit": "^4.8.35 || ^5.7", - "symfony/var-dumper": "^2.6 || ^3.0 || ^4.0" + "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0", + "symfony/var-dumper": "^2.6 || ^3.0 || ^4.0 || ^5.0" }, "suggest": { "symfony/var-dumper": "Pretty print complex values better with var-dumper available", @@ -75,7 +75,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.2-dev" + "dev-master": "2.6-dev" } }, "autoload": { @@ -104,7 +104,7 @@ "throwable", "whoops" ], - "time": "2018-10-23T09:00:00+00:00" + "time": "2020-05-05T12:28:07+00:00" }, { "name": "getkirby/composer-installer", @@ -146,16 +146,16 @@ }, { "name": "laminas/laminas-escaper", - "version": "2.6.0", + "version": "2.6.1", "source": { "type": "git", "url": "https://github.com/laminas/laminas-escaper.git", - "reference": "72d3a14647f6234cdd9386d6de821a98e539af91" + "reference": "25f2a053eadfa92ddacb609dcbbc39362610da70" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-escaper/zipball/72d3a14647f6234cdd9386d6de821a98e539af91", - "reference": "72d3a14647f6234cdd9386d6de821a98e539af91", + "url": "https://api.github.com/repos/laminas/laminas-escaper/zipball/25f2a053eadfa92ddacb609dcbbc39362610da70", + "reference": "25f2a053eadfa92ddacb609dcbbc39362610da70", "shasum": "" }, "require": { @@ -191,20 +191,20 @@ "escaper", "laminas" ], - "time": "2019-12-31T16:43:29+00:00" + "time": "2019-12-31T16:43:30+00:00" }, { "name": "laminas/laminas-zendframework-bridge", - "version": "1.0.3", + "version": "1.0.4", "source": { "type": "git", "url": "https://github.com/laminas/laminas-zendframework-bridge.git", - "reference": "bfbbdb6c998d50dbf69d2187cb78a5f1fa36e1e9" + "reference": "fcd87520e4943d968557803919523772475e8ea3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-zendframework-bridge/zipball/bfbbdb6c998d50dbf69d2187cb78a5f1fa36e1e9", - "reference": "bfbbdb6c998d50dbf69d2187cb78a5f1fa36e1e9", + "url": "https://api.github.com/repos/laminas/laminas-zendframework-bridge/zipball/fcd87520e4943d968557803919523772475e8ea3", + "reference": "fcd87520e4943d968557803919523772475e8ea3", "shasum": "" }, "require": { @@ -243,7 +243,7 @@ "laminas", "zf" ], - "time": "2020-04-03T16:01:00+00:00" + "time": "2020-05-20T16:45:56+00:00" }, { "name": "league/color-extractor", @@ -351,16 +351,16 @@ }, { "name": "mustangostang/spyc", - "version": "0.6.2", + "version": "0.6.3", "source": { "type": "git", - "url": "https://github.com/mustangostang/spyc.git", - "reference": "23c35ae854d835f2d7bcc3e3ad743d7e57a8c14d" + "url": "git@github.com:mustangostang/spyc.git", + "reference": "4627c838b16550b666d15aeae1e5289dd5b77da0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mustangostang/spyc/zipball/23c35ae854d835f2d7bcc3e3ad743d7e57a8c14d", - "reference": "23c35ae854d835f2d7bcc3e3ad743d7e57a8c14d", + "url": "https://api.github.com/repos/mustangostang/spyc/zipball/4627c838b16550b666d15aeae1e5289dd5b77da0", + "reference": "4627c838b16550b666d15aeae1e5289dd5b77da0", "shasum": "" }, "require": { @@ -397,20 +397,20 @@ "yaml", "yml" ], - "time": "2017-02-24T16:06:33+00:00" + "time": "2019-09-10T13:16:29+00:00" }, { "name": "phpmailer/phpmailer", - "version": "v6.0.7", + "version": "v6.1.6", "source": { "type": "git", "url": "https://github.com/PHPMailer/PHPMailer.git", - "reference": "0c41a36d4508d470e376498c1c0c527aa36a2d59" + "reference": "c2796cb1cb99d7717290b48c4e6f32cb6c60b7b3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPMailer/PHPMailer/zipball/0c41a36d4508d470e376498c1c0c527aa36a2d59", - "reference": "0c41a36d4508d470e376498c1c0c527aa36a2d59", + "url": "https://api.github.com/repos/PHPMailer/PHPMailer/zipball/c2796cb1cb99d7717290b48c4e6f32cb6c60b7b3", + "reference": "c2796cb1cb99d7717290b48c4e6f32cb6c60b7b3", "shasum": "" }, "require": { @@ -419,13 +419,9 @@ "php": ">=5.5.0" }, "require-dev": { - "doctrine/annotations": "1.2.*", + "doctrine/annotations": "^1.2", "friendsofphp/php-cs-fixer": "^2.2", - "phpdocumentor/phpdocumentor": "2.*", - "phpunit/phpunit": "^4.8 || ^5.7", - "zendframework/zend-eventmanager": "3.0.*", - "zendframework/zend-i18n": "2.7.3", - "zendframework/zend-serializer": "2.7.*" + "phpunit/phpunit": "^4.8 || ^5.7" }, "suggest": { "ext-mbstring": "Needed to send email in multibyte encoding charset", @@ -443,17 +439,17 @@ }, "notification-url": "https://packagist.org/downloads/", "license": [ - "LGPL-2.1" + "LGPL-2.1-only" ], "authors": [ - { - "name": "Jim Jagielski", - "email": "jimjag@gmail.com" - }, { "name": "Marcus Bointon", "email": "phpmailer@synchromedia.co.uk" }, + { + "name": "Jim Jagielski", + "email": "jimjag@gmail.com" + }, { "name": "Andy Prevost", "email": "codeworxtech@users.sourceforge.net" @@ -463,7 +459,7 @@ } ], "description": "PHPMailer is a full-featured email creation and transfer class for PHP", - "time": "2019-02-01T15:04:28+00:00" + "time": "2020-05-27T12:24:03+00:00" }, { "name": "psr/log", @@ -514,16 +510,16 @@ }, { "name": "symfony/polyfill-mbstring", - "version": "v1.15.0", + "version": "v1.17.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "81ffd3a9c6d707be22e3012b827de1c9775fc5ac" + "reference": "7110338d81ce1cbc3e273136e4574663627037a7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/81ffd3a9c6d707be22e3012b827de1c9775fc5ac", - "reference": "81ffd3a9c6d707be22e3012b827de1c9775fc5ac", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/7110338d81ce1cbc3e273136e4574663627037a7", + "reference": "7110338d81ce1cbc3e273136e4574663627037a7", "shasum": "" }, "require": { @@ -535,7 +531,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.15-dev" + "dev-master": "1.17-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" } }, "autoload": { @@ -569,7 +569,7 @@ "portable", "shim" ], - "time": "2020-03-09T19:04:49+00:00" + "time": "2020-06-06T08:46:27+00:00" }, { "name": "true/punycode", @@ -625,7 +625,7 @@ "prefer-stable": false, "prefer-lowest": false, "platform": { - "php": ">=7.1.0", + "php": ">=7.2.0 <7.5.0", "ext-mbstring": "*", "ext-ctype": "*" }, diff --git a/kirby/config/api/authentication.php b/kirby/config/api/authentication.php index 509a346..8dd5f33 100755 --- a/kirby/config/api/authentication.php +++ b/kirby/config/api/authentication.php @@ -3,15 +3,16 @@ use Kirby\Exception\PermissionException; return function () { - $auth = $this->kirby()->auth(); + $auth = $this->kirby()->auth(); + $allowImpersonation = $this->kirby()->option('api.allowImpersonation') ?? false; // csrf token check - if ($auth->type() === 'session' && $auth->csrf() === false) { + if ($auth->type($allowImpersonation) === 'session' && $auth->csrf() === false) { throw new PermissionException('Unauthenticated'); } // get user from session or basic auth - if ($user = $auth->user()) { + if ($user = $auth->user(null, $allowImpersonation)) { if ($user->role()->permissions()->for('access', 'panel') === false) { throw new PermissionException(['key' => 'access.panel']); } diff --git a/kirby/config/api/models/System.php b/kirby/config/api/models/System.php index 72fbd6e..6e74756 100755 --- a/kirby/config/api/models/System.php +++ b/kirby/config/api/models/System.php @@ -71,7 +71,13 @@ return [ return $this->user(); }, 'version' => function () { - return $this->kirby()->version(); + $user = $this->user(); + + if ($user && $user->role()->permissions()->for('access', 'settings') === true) { + return $this->kirby()->version(); + } else { + return null; + } } ], 'type' => 'Kirby\Cms\System', diff --git a/kirby/config/api/models/User.php b/kirby/config/api/models/User.php index f0c6b19..c4faab6 100755 --- a/kirby/config/api/models/User.php +++ b/kirby/config/api/models/User.php @@ -50,6 +50,9 @@ return [ 'role' => function (User $user) { return $user->role(); }, + 'roles' => function (User $user) { + return $user->roles(); + }, 'username' => function (User $user) { return $user->username(); } diff --git a/kirby/config/api/routes/files.php b/kirby/config/api/routes/files.php index 8c5414e..4935d44 100755 --- a/kirby/config/api/routes/files.php +++ b/kirby/config/api/routes/files.php @@ -103,5 +103,21 @@ return [ return $this->file($path, $filename)->changeName($this->requestBody('name')); } ], + [ + 'pattern' => 'files/search', + 'method' => 'GET|POST', + 'action' => function () { + $files = $this + ->site() + ->index(true) + ->filterBy('isReadable', true) + ->files(); + if ($this->requestMethod() === 'GET') { + return $files->search($this->requestQuery('q')); + } else { + return $files->query($this->requestBody()); + } + } + ], ]; diff --git a/kirby/config/api/routes/users.php b/kirby/config/api/routes/users.php index 318a571..97572ea 100755 --- a/kirby/config/api/routes/users.php +++ b/kirby/config/api/routes/users.php @@ -119,6 +119,12 @@ return [ return $this->user($id)->changeRole($this->requestBody('role')); } ], + [ + 'pattern' => 'users/(:any)/roles', + 'action' => function (string $id) { + return $this->user($id)->roles(); + } + ], [ 'pattern' => 'users/(:any)/sections/(:any)', 'method' => 'GET', diff --git a/kirby/config/components.php b/kirby/config/components.php index 776e7ed..81db04e 100755 --- a/kirby/config/components.php +++ b/kirby/config/components.php @@ -1,17 +1,21 @@ parse($text, $inline); }, + /** + * Add your own search engine + * + * @param \Kirby\Cms\App $kirby Kirby instance + * @param \Kirby\Cms\Collection $collection Collection of searchable models + * @param string $query + * @param mixed $params + * @return \Kirby\Cms\Collection|bool + */ + 'search' => function (App $kirby, Collection $collection, string $query = null, $params = []) { + if (empty(trim($query)) === true) { + return $collection->limit(0); + } + + if (is_string($params) === true) { + $params = ['fields' => Str::split($params, '|')]; + } + + $defaults = [ + 'fields' => [], + 'minlength' => 2, + 'score' => [], + 'words' => false, + ]; + + $options = array_merge($defaults, $params); + $collection = clone $collection; + $searchwords = preg_replace('/(\s)/u', ',', $query); + $searchwords = Str::split($searchwords, ',', $options['minlength']); + $lowerQuery = mb_strtolower($query); + + if (empty($options['stopwords']) === false) { + $searchwords = array_diff($searchwords, $options['stopwords']); + } + + $searchwords = array_map(function ($value) use ($options) { + return $options['words'] ? '\b' . preg_quote($value) . '\b' : preg_quote($value); + }, $searchwords); + + $preg = '!(' . implode('|', $searchwords) . ')!i'; + $results = $collection->filter(function ($item) use ($query, $preg, $options, $lowerQuery) { + $data = $item->content()->toArray(); + $keys = array_keys($data); + $keys[] = 'id'; + + if (is_a($item, 'Kirby\Cms\User') === true) { + $keys[] = 'name'; + $keys[] = 'email'; + $keys[] = 'role'; + } elseif (is_a($item, 'Kirby\Cms\Page') === true) { + // apply the default score for pages + $options['score'] = array_merge([ + 'id' => 64, + 'title' => 64, + ], $options['score']); + } + + if (empty($options['fields']) === false) { + $fields = array_map('strtolower', $options['fields']); + $keys = array_intersect($keys, $fields); + } + + $item->searchHits = 0; + $item->searchScore = 0; + + foreach ($keys as $key) { + $score = $options['score'][$key] ?? 1; + $value = $data[$key] ?? (string)$item->$key(); + + $lowerValue = mb_strtolower($value); + + // check for exact matches + if ($lowerQuery == $lowerValue) { + $item->searchScore += 16 * $score; + $item->searchHits += 1; + + // check for exact beginning matches + } elseif (Str::startsWith($lowerValue, $lowerQuery) === true) { + $item->searchScore += 8 * $score; + $item->searchHits += 1; + + // check for exact query matches + } elseif ($matches = preg_match_all('!' . preg_quote($query) . '!i', $value, $r)) { + $item->searchScore += 2 * $score; + $item->searchHits += $matches; + } + + // check for any match + if ($matches = preg_match_all($preg, $value, $r)) { + $item->searchHits += $matches; + $item->searchScore += $matches * $score; + } + } + + return $item->searchHits > 0 ? true : false; + }); + + return $results->sortBy('searchScore', 'desc'); + }, + /** * Add your own SmartyPants parser * @@ -221,12 +325,51 @@ return [ * * @param \Kirby\Cms\App $kirby Kirby instance * @param string $path URL path - * @param array|null $options Array of options for the Uri class - * @param Closure $originalHandler Callback function to the original URL handler with `$path` and `$options` as parameters + * @param array|string|null $options Array of options for the Uri class + * @param Closure $originalHandler Deprecated: Callback function to the original URL handler with `$path` and `$options` as parameters + * Use `$kirby->nativeComponent('url')` inside your URL component instead. * @return string */ - 'url' => function (App $kirby, string $path = null, $options = [], Closure $originalHandler): string { - return $originalHandler($path, $options); + 'url' => function (App $kirby, string $path = null, $options = null, Closure $originalHandler = null): string { + $language = null; + + // get language from simple string option + if (is_string($options) === true) { + $language = $options; + $options = null; + } + + // get language from array + if (is_array($options) === true && isset($options['language']) === true) { + $language = $options['language']; + unset($options['language']); + } + + // get a language url for the linked page, if the page can be found + if ($kirby->multilang() === true) { + $parts = Str::split($path, '#'); + + if ($page = page($parts[0] ?? null)) { + $path = $page->url($language); + + if (isset($parts[1]) === true) { + $path .= '#' . $parts[1]; + } + } + } + + // keep relative urls + if (substr($path, 0, 2) === './' || substr($path, 0, 3) === '../') { + return $path; + } + + $url = Url::makeAbsolute($path, $kirby->url()); + + if ($options === null) { + return $url; + } + + return (new Uri($url, $options))->toString(); }, ]; diff --git a/kirby/config/fields/files.php b/kirby/config/fields/files.php index 9ecb0c1..e4cb1f4 100755 --- a/kirby/config/fields/files.php +++ b/kirby/config/fields/files.php @@ -1,6 +1,6 @@ function ($value = null) { $files = []; - foreach (Yaml::decode($value) as $id) { + foreach (Data::decode($value, 'yaml') as $id) { if (is_array($id) === true) { $id = $id['id'] ?? null; } diff --git a/kirby/config/fields/multiselect.php b/kirby/config/fields/multiselect.php index 122d0c2..4ed2422 100755 --- a/kirby/config/fields/multiselect.php +++ b/kirby/config/fields/multiselect.php @@ -3,12 +3,10 @@ return [ 'extends' => 'tags', 'props' => [ - /** * Unset inherited props */ 'accept' => null, - /** * Custom icon to replace the arrow down. */ @@ -17,8 +15,10 @@ return [ }, /** * Enable/disable the search in the dropdown + * Also limit displayed items (display: 20) + * and set minimum number of characters to search (min: 3) */ - 'search' => function (bool $search = true) { + 'search' => function ($search = true) { return $search; }, /** diff --git a/kirby/config/fields/pages.php b/kirby/config/fields/pages.php index 9b4a3c2..471f8b1 100755 --- a/kirby/config/fields/pages.php +++ b/kirby/config/fields/pages.php @@ -1,6 +1,6 @@ function (bool $duplicate = true) { + return $duplicate; + }, + /** * The placeholder text if no items have been added yet */ @@ -62,6 +70,12 @@ return [ 'min' => function (int $min = null) { return $min; }, + /** + * Toggles adding to the top or bottom of the list + */ + 'prepend' => function (bool $prepend = null) { + return $prepend; + }, /** * Toggles drag & drop sorting */ @@ -131,7 +145,7 @@ return [ ], 'methods' => [ 'rows' => function ($value) { - $rows = Yaml::decode($value); + $rows = Data::decode($value, 'yaml'); $value = []; foreach ($rows as $index => $row) { diff --git a/kirby/config/fields/users.php b/kirby/config/fields/users.php index bc96bd4..6da224a 100755 --- a/kirby/config/fields/users.php +++ b/kirby/config/fields/users.php @@ -1,6 +1,6 @@ function (Field $field, string $method = ',') { switch ($method) { case 'yaml': - return Yaml::decode($field->value); case 'json': - return Json::decode($field->value); + return Data::decode($field->value, $method); default: return $field->split($method); } @@ -216,7 +212,7 @@ return function (App $app) { */ 'toStructure' => function (Field $field) { try { - return new Structure(Yaml::decode($field->value), $field->parent()); + return new Structure(Data::decode($field->value, 'yaml'), $field->parent()); } catch (Exception $e) { if ($field->parent() === null) { $message = 'Invalid structure data for "' . $field->key() . '" field'; @@ -287,6 +283,17 @@ return function (App $app) { // manipulators + /** + * Applies the callback function to the field + * @since 3.4.0 + * + * @param \Kirby\Cms\Field $field + * @param Closure $callback + */ + 'callback' => function (Field $field, Closure $callback) { + return $callback($field); + }, + /** * Escapes the field value to be safely used in HTML * templates without the risk of XSS attacks @@ -309,7 +316,7 @@ return function (App $app) { * @param string $rep * @return \Kirby\Cms\Field */ - 'excerpt' => function (Field $field, int $chars = 0, bool $strip = true, string $rep = '…') { + 'excerpt' => function (Field $field, int $chars = 0, bool $strip = true, string $rep = ' …') { $field->value = Str::excerpt($field->kirbytext()->value(), $chars, $strip, $rep); return $field; }, @@ -326,14 +333,20 @@ return function (App $app) { }, /** - * Converts all line breaks in the field content to `
` tags. + * Strips all block-level HTML elements from the field value, + * it can be safely placed inside of other inline elements + * without the risk of breaking the HTML structure. * @since 3.3.0 * * @param \Kirby\Cms\Field $field * @return \Kirby\Cms\Field */ - 'nl2br' => function (Field $field) { - $field->value = nl2br($field->value, false); + 'inline' => function (Field $field) { + // List of valid inline elements taken from: https://developer.mozilla.org/de/docs/Web/HTML/Inline_elemente + // Obsolete elements, script tags, image maps and form elements have + // been excluded for safety reasons and as they are most likely not + // needed in most cases. + $field->value = strip_tags($field->value, '
'); return $field; }, @@ -384,24 +397,6 @@ return function (App $app) { return $field; }, - /** - * Strips all block-level HTML elements from the field value, - * it can be safely placed inside of other inline elements - * without the risk of breaking the HTML structure. - * @since 3.3.0 - * - * @param \Kirby\Cms\Field $field - * @return \Kirby\Cms\Field - */ - 'inline' => function (Field $field) { - // List of valid inline elements taken from: https://developer.mozilla.org/de/docs/Web/HTML/Inline_elemente - // Obsolete elements, script tags, image maps and form elements have - // been excluded for safety reasons and as they are most likely not - // needed in most cases. - $field->value = strip_tags($field->value, '

'); - return $field; - }, - /** * Converts the field content to lowercase * @@ -425,13 +420,55 @@ return function (App $app) { }, /** - * Converts the field content to valid XML + * Converts all line breaks in the field content to `
` tags. + * @since 3.3.0 * * @param \Kirby\Cms\Field $field * @return \Kirby\Cms\Field */ - 'xml' => function (Field $field) { - $field->value = Xml::encode($field->value); + 'nl2br' => function (Field $field) { + $field->value = nl2br($field->value, false); + return $field; + }, + + /** + * Uses the field value as Kirby query + * + * @param \Kirby\Cms\Field $field + * @param string|null $expect + * @return mixed + */ + 'query' => function (Field $field, string $expect = null) use ($app) { + if ($parent = $field->parent()) { + return $parent->query($field->value, $expect); + } + + return Str::query($field->value, [ + 'kirby' => $app, + 'site' => $app->site(), + 'page' => $app->page() + ]); + }, + + /** + * It parses any queries found in the field value. + * + * @param \Kirby\Cms\Field $field + * @param array $data + * @param string $fallback Fallback for tokens in the template that cannot be replaced + * @return \Kirby\Cms\Field + */ + 'replace' => function (Field $field, array $data = [], string $fallback = '') use ($app) { + if ($parent = $field->parent()) { + $field->value = $field->parent()->toString($field->value, $data, $fallback); + } else { + $field->value = Str::template($field->value, array_replace([ + 'kirby' => $app, + 'site' => $app->site(), + 'page' => $app->page() + ], $data), $fallback); + } + return $field; }, @@ -475,7 +512,7 @@ return function (App $app) { * Splits the field content into an array * * @param \Kirby\Cms\Field $field - * @return \Kirby\cms\Field + * @return array */ 'split' => function (Field $field, $separator = ',') { return Str::split((string)$field->value, $separator); @@ -504,6 +541,17 @@ return function (App $app) { return $field; }, + /** + * Converts the field content to valid XML + * + * @param \Kirby\Cms\Field $field + * @return \Kirby\Cms\Field + */ + 'xml' => function (Field $field) { + $field->value = Xml::encode($field->value); + return $field; + }, + // aliases /** diff --git a/kirby/config/sections/files.php b/kirby/config/sections/files.php index 1d15ca8..378b9f8 100755 --- a/kirby/config/sections/files.php +++ b/kirby/config/sections/files.php @@ -83,6 +83,9 @@ return [ 'files' => function () { $files = $this->parent->files()->template($this->template); + // filter out all protected files + $files = $files->filterBy('isReadable', true); + if ($this->sortBy) { $files = $files->sortBy(...$files::sortArgs($this->sortBy)); } elseif ($this->sortable === true) { @@ -96,8 +99,9 @@ return [ // apply the default pagination $files = $files->paginate([ - 'page' => $this->page, - 'limit' => $this->limit + 'page' => $this->page, + 'limit' => $this->limit, + 'method' => 'none' // the page is manually provided ]); return $files; @@ -219,6 +223,7 @@ return [ 'errors' => $this->errors, 'options' => [ 'accept' => $this->accept, + 'apiUrl' => $this->parent->apiUrl(true), 'empty' => $this->empty, 'headline' => $this->headline, 'help' => $this->help, diff --git a/kirby/config/sections/pages.php b/kirby/config/sections/pages.php index 9fd99e3..db51d99 100755 --- a/kirby/config/sections/pages.php +++ b/kirby/config/sections/pages.php @@ -17,10 +17,11 @@ return [ ], 'props' => [ /** - * Optional array of templates that should only be allowed to add. + * Optional array of templates that should only be allowed to add + * or `false` to completely disable page creation */ - 'create' => function ($add = null) { - return $add; + 'create' => function ($create = null) { + return $create; }, /** * Enables/disables reverse sorting @@ -135,8 +136,9 @@ return [ // pagination $pages = $pages->paginate([ - 'page' => $this->page, - 'limit' => $this->limit + 'page' => $this->page, + 'limit' => $this->limit, + 'method' => 'none' // the page is manually provided ]); return $pages; diff --git a/kirby/i18n/rules/ja.json b/kirby/i18n/rules/ja.json index dd0c615..b313813 100755 --- a/kirby/i18n/rules/ja.json +++ b/kirby/i18n/rules/ja.json @@ -60,6 +60,7 @@ "ワ": "wa", "が": "ga", "ざ": "za", + "ザ": "za", "だ": "da", "ば": "ba", "ぱ": "pa", @@ -111,6 +112,9 @@ "づ": "dzu", "ぶ": "bu", "ぷ": "pu", + "プ": "pu", + "ズ": "zu", + "グ": "gu", "え": "e", "エ": "e", @@ -161,6 +165,8 @@ "ご": "go", "ぞ": "zo", "ど": "do", + "ド": "do", "ぼ": "bo", + "ポ": "po", "ぽ": "po" } diff --git a/kirby/i18n/translations/bg.json b/kirby/i18n/translations/bg.json index e76e81c..314c13c 100755 --- a/kirby/i18n/translations/bg.json +++ b/kirby/i18n/translations/bg.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "Профилната снимка не може да се качи", "error.avatar.delete.fail": "Профилната снимка не може да бъде изтрита", - "error.avatar.dimensions.invalid": - "Моля запазете ширината и височината на профилната снимка под 3000 пиксела", - "error.avatar.mime.forbidden": - "Профилната снимка трябва да бъде в JPEG или PNG формат", + "error.avatar.dimensions.invalid": "Моля запазете ширината и височината на профилната снимка под 3000 пиксела", + "error.avatar.mime.forbidden": "Профилната снимка трябва да бъде в JPEG или PNG формат", "error.blueprint.notFound": "Образецът \"{name}\" не може да бъде зареден", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Невалиден конвертор \"{converter}\"", "error.file.changeName.empty": "The name must not be empty", - "error.file.changeName.permission": - "Не можете да смените името на \"{filename}\"", + "error.file.changeName.permission": "Не можете да смените името на \"{filename}\"", "error.file.duplicate": "Файл с име \"{filename}\" вече съществува", - "error.file.extension.forbidden": - "Файловото разширение \"{extension}\" не е позволено", - "error.file.extension.missing": - "Липсва файлово разширение за файла \"{filename}\"", + "error.file.extension.forbidden": "Файловото разширение \"{extension}\" не е позволено", + "error.file.extension.missing": "Липсва файлово разширение за файла \"{filename}\"", "error.file.maxheight": "The height of the image must not exceed {height} pixels", "error.file.maxsize": "The file is too large", "error.file.maxwidth": "The width of the image must not exceed {width} pixels", - "error.file.mime.differs": - "Каченият файл трябва да бъде от същия mime тип \"{mime}\"", + "error.file.mime.differs": "Каченият файл трябва да бъде от същия mime тип \"{mime}\"", "error.file.mime.forbidden": "The media type \"{mime}\" is not allowed", "error.file.mime.invalid": "Invalid mime type: {mime}", - "error.file.mime.missing": - "The media type for \"{filename}\" cannot be detected", + "error.file.mime.missing": "The media type for \"{filename}\" cannot be detected", "error.file.minheight": "The height of the image must be at least {height} pixels", "error.file.minsize": "The file is too small", "error.file.minwidth": "The width of the image must be at least {width} pixels", @@ -90,111 +83,77 @@ "error.license.email": "Моля въведете валиден email адрес", "error.license.verification": "The license could not be verified", - "error.page.changeSlug.permission": - "Не можете да смените URL на \"{slug}\"", - "error.page.changeStatus.incomplete": - "Страницата съдържа грешки и не може да бъде публикувана", - "error.page.changeStatus.permission": - "Статусът на страницата не може да бъде променен", - "error.page.changeStatus.toDraft.invalid": - "Страницата \"{slug}\" не може да бъде променена в чернова", - "error.page.changeTemplate.invalid": - "Темплейтът за страница \"{slug}\" не може да бъде променен", - "error.page.changeTemplate.permission": - "Нямате права за да промените шаблона за \"{slug}\"", + "error.page.changeSlug.permission": "Не можете да смените URL на \"{slug}\"", + "error.page.changeStatus.incomplete": "Страницата съдържа грешки и не може да бъде публикувана", + "error.page.changeStatus.permission": "Статусът на страницата не може да бъде променен", + "error.page.changeStatus.toDraft.invalid": "Страницата \"{slug}\" не може да бъде променена в чернова", + "error.page.changeTemplate.invalid": "Темплейтът за страница \"{slug}\" не може да бъде променен", + "error.page.changeTemplate.permission": "Нямате права за да промените шаблона за \"{slug}\"", "error.page.changeTitle.empty": "Заглавието е задължително", - "error.page.changeTitle.permission": - "Не можете да промените заглавието на \"{slug}\"", + "error.page.changeTitle.permission": "Не можете да промените заглавието на \"{slug}\"", "error.page.create.permission": "Не можете да създадете \"{slug}\"", "error.page.delete": "Страницата \"{slug}\" не може да бъде изтрита", "error.page.delete.confirm": "Моля въведете името на страницата, за да потвърдите", - "error.page.delete.hasChildren": - "Страницата има подстраници и не може да бъде изтрита", + "error.page.delete.hasChildren": "Страницата има подстраници и не може да бъде изтрита", "error.page.delete.permission": "Не можете да изтриете \"{slug}\"", - "error.page.draft.duplicate": - "Вече съществува чернова с URL-добавка \"{slug}\"", - "error.page.duplicate": - "Страница с URL-добавка \"{slug}\" вече съществува", + "error.page.draft.duplicate": "Вече съществува чернова с URL-добавка \"{slug}\"", + "error.page.duplicate": "Страница с URL-добавка \"{slug}\" вече съществува", "error.page.duplicate.permission": "You are not allowed to duplicate \"{slug}\"", "error.page.notFound": "Страницата \"{slug}\" не може да бъде намерена", - "error.page.num.invalid": - "Моля въведете валидно число за сортиране. Числата не трябва да са негативни.", + "error.page.num.invalid": "Моля въведете валидно число за сортиране. Числата не трябва да са негативни.", "error.page.slug.invalid": "Моля въведете валиден URL префикс", "error.page.sort.permission": "Страницата \"{slug}\" не може да бъде сортирана", "error.page.status.invalid": "Моля изберете валиден статус на страницата", "error.page.undefined": "\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0442\u0430 \u043d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u0430", "error.page.update.permission": "Не можете да обновите \"{slug}\"", - "error.section.files.max.plural": - "Не можете да добавяте повече от {max} файлa в секция \"{section}\"", - "error.section.files.max.singular": - "Не можете да добавяте повече от един файл в секция \"{section}\"", - "error.section.files.min.plural": - "The \"{section}\" section requires at least {min} files", - "error.section.files.min.singular": - "The \"{section}\" section requires at least one file", + "error.section.files.max.plural": "Не можете да добавяте повече от {max} файлa в секция \"{section}\"", + "error.section.files.max.singular": "Не можете да добавяте повече от един файл в секция \"{section}\"", + "error.section.files.min.plural": "The \"{section}\" section requires at least {min} files", + "error.section.files.min.singular": "The \"{section}\" section requires at least one file", - "error.section.pages.max.plural": - "Не можете да добавяте повече от {max} страници в секция \"{section}\"", - "error.section.pages.max.singular": - "Не можете да добавяте повече от една страница в секция \"{section}\"", - "error.section.pages.min.plural": - "The \"{section}\" section requires at least {min} pages", - "error.section.pages.min.singular": - "The \"{section}\" section requires at least one page", + "error.section.pages.max.plural": "Не можете да добавяте повече от {max} страници в секция \"{section}\"", + "error.section.pages.max.singular": "Не можете да добавяте повече от една страница в секция \"{section}\"", + "error.section.pages.min.plural": "The \"{section}\" section requires at least {min} pages", + "error.section.pages.min.singular": "The \"{section}\" section requires at least one page", "error.section.notLoaded": "Секция \"{name}\" не може да бъде заредена", "error.section.type.invalid": "Типът \"{type}\" на секция не е валиден", "error.site.changeTitle.empty": "Заглавието е задължително", - "error.site.changeTitle.permission": - "Не може да променяте заглавието на сайта", + "error.site.changeTitle.permission": "Не може да променяте заглавието на сайта", "error.site.update.permission": "Нямате права за да обновите сайта", "error.template.default.notFound": "Стандартният шаблон не съществува", - "error.user.changeEmail.permission": - "Нямате права да промените имейла на този потребител \"{name}\"", - "error.user.changeLanguage.permission": - "Нямате права да промените езика за този потребител \"{name}\"", - "error.user.changeName.permission": - "Нямате права да промените името на този потребител \"{name}\"", - "error.user.changePassword.permission": - "Нямате права да промените паролата за този потребител \"{name}\"", - "error.user.changeRole.lastAdmin": - "Ролята на последния администратор не може да бъде променена", - "error.user.changeRole.permission": - "Нямате права да промените ролята на този потребител \"{name}\"", - "error.user.changeRole.toAdmin": - "You are not allowed to promote someone to the admin role", + "error.user.changeEmail.permission": "Нямате права да промените имейла на този потребител \"{name}\"", + "error.user.changeLanguage.permission": "Нямате права да промените езика за този потребител \"{name}\"", + "error.user.changeName.permission": "Нямате права да промените името на този потребител \"{name}\"", + "error.user.changePassword.permission": "Нямате права да промените паролата за този потребител \"{name}\"", + "error.user.changeRole.lastAdmin": "Ролята на последния администратор не може да бъде променена", + "error.user.changeRole.permission": "Нямате права да промените ролята на този потребител \"{name}\"", + "error.user.changeRole.toAdmin": "You are not allowed to promote someone to the admin role", "error.user.create.permission": "Нямате права да създадете този потребител", "error.user.delete": "\u041f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u044f\u0442 \u043d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0438\u0437\u0442\u0440\u0438\u0442", "error.user.delete.lastAdmin": "\u041d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0434\u0430 \u0438\u0437\u0442\u0440\u0438\u0435\u0442\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u044f \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440", "error.user.delete.lastUser": "Последният потребител не може да бъде изтрит", - "error.user.delete.permission": - "\u041d\u0435 \u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u0435\u043d\u043e \u0434\u0430 \u0438\u0437\u0442\u0440\u0438\u0432\u0430\u0442\u0435 \u0442\u043e\u0437\u0438 \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b", - "error.user.duplicate": - "Потребител с имейл \"{email}\" вече съществува", + "error.user.delete.permission": "\u041d\u0435 \u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u0435\u043d\u043e \u0434\u0430 \u0438\u0437\u0442\u0440\u0438\u0432\u0430\u0442\u0435 \u0442\u043e\u0437\u0438 \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b", + "error.user.duplicate": "Потребител с имейл \"{email}\" вече съществува", "error.user.email.invalid": "Моля въведете валиден email адрес", "error.user.language.invalid": "Моля въведете валиден език", "error.user.notFound": "\u041f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u044f\u0442 \u043d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u043d\u0430\u043c\u0435\u0440\u0435\u043d.", - "error.user.password.invalid": - "Моля въведете валидна парола. Тя трабва да съдържа поне 8 символа.", + "error.user.password.invalid": "Моля въведете валидна парола. Тя трабва да съдържа поне 8 символа.", "error.user.password.notSame": "\u041c\u043e\u043b\u044f, \u043f\u043e\u0442\u0432\u044a\u0440\u0434\u0435\u0442\u0435 \u043f\u0430\u0440\u043e\u043b\u0430\u0442\u0430", "error.user.password.undefined": "Потребителят няма парола", "error.user.role.invalid": "Моля въведете валидна роля", - "error.user.update.permission": - "Нямате права да обновите този потребител \"{name}\"", + "error.user.update.permission": "Нямате права да обновите този потребител \"{name}\"", "error.validation.accepted": "Моля потвърдете", "error.validation.alpha": "Моля въвдете символи измежду a-z", - "error.validation.alphanum": - "Моля въвдете символи измежду a-z или цифри 0-9", - "error.validation.between": - "Моля въведете стойност между \"{min}\" и \"{max}\"", + "error.validation.alphanum": "Моля въвдете символи измежду a-z или цифри 0-9", + "error.validation.between": "Моля въведете стойност между \"{min}\" и \"{max}\"", "error.validation.boolean": "Моля потвърдете или откажете", - "error.validation.contains": - "Моля въведете стойност, която съдържа \"{needle}\"", + "error.validation.contains": "Моля въведете стойност, която съдържа \"{needle}\"", "error.validation.date": "Моля въведете валидна дата", "error.validation.date.after": "Please enter a date after {date}", "error.validation.date.before": "Please enter a date before {date}", @@ -210,18 +169,14 @@ "error.validation.less": "Моля въведете стойност по-ниска от {max}", "error.validation.match": "Стойността не съвпада с очаквания модел", "error.validation.max": "Please enter a value equal to or lower than {max}", - "error.validation.maxlength": - "Моля въведете по-къса стойност. (макс. {max} символа)", + "error.validation.maxlength": "Моля въведете по-къса стойност. (макс. {max} символа)", "error.validation.maxwords": "Моля въведете не повече от {max} дума(и)", "error.validation.min": "Please enter a value equal to or greater than {min}", - "error.validation.minlength": - "Моля въведете по-дълга стойност. (мин. {min} символа)", + "error.validation.minlength": "Моля въведете по-дълга стойност. (мин. {min} символа)", "error.validation.minwords": "Моля въведете поне {min} дума(и).", "error.validation.more": "Моля въведете стойност по-висока от {min}", - "error.validation.notcontains": - "Моля въведете стойност, която не съдържа \"{needle}\"", - "error.validation.notin": - "Моля не въвеждайте нито едно от следните: ({notIn})", + "error.validation.notcontains": "Моля въведете стойност, която не съдържа \"{needle}\"", + "error.validation.notin": "Моля не въвеждайте нито едно от следните: ({notIn})", "error.validation.option": "Моля изберете валидна опция", "error.validation.num": "Моля въведете валидно число", "error.validation.required": "Моля въведете нещо", @@ -238,8 +193,7 @@ "field.structure.empty": "Все още няма статии", "field.users.empty": "Все още не са избрани потребители", - "file.delete.confirm": - "Сигурни ли сте, че искате да изтриете
{filename}?", + "file.delete.confirm": "Сигурни ли сте, че искате да изтриете
{filename}?", "files": "Файлове", "files.empty": "Няма файлове", @@ -251,29 +205,22 @@ "installation": "Инсталация", "installation.completed": "The panel has been installed", "installation.disabled": "The panel installer is disabled on public servers by default. Please run the installer on a local machine or enable it with the panel.install option.", - "installation.issues.accounts": - "Папката /site/accounts не съществува или не позволява запис", - "installation.issues.content": - "Папката /content и всички файлове в нея трябва да позволяват запис", + "installation.issues.accounts": "Папката /site/accounts не съществува или не позволява запис", + "installation.issues.content": "Папката /content и всички файлове в нея трябва да позволяват запис", "installation.issues.curl": "Изисква се CURL разширението", "installation.issues.headline": "Панелът не може да бъде инсталиран", - "installation.issues.mbstring": - "Изисква се разширението MB String", - "installation.issues.media": - "Папката /media не съществува или няма права за запис", + "installation.issues.mbstring": "Изисква се разширението MB String", + "installation.issues.media": "Папката /media не съществува или няма права за запис", "installation.issues.php": "Бъдете сигурни, че използвате PHP 7+", - "installation.issues.server": - "Kirby изисква Apache, Nginx или Caddy", + "installation.issues.server": "Kirby изисква Apache, Nginx или Caddy", "installation.issues.sessions": "The /site/sessions folder does not exist or is not writable", "language": "\u0415\u0437\u0438\u043a", "language.code": "Код", "language.convert": "Направи по подразбиране", - "language.convert.confirm": - "

Сигурни ли сте, че искате да зададете {name} за език по подразбиране? Действието не може да бъде отменено.

В случай, че в {name} има непреведено съдържание, то части от сайта ви могат да останат празни.

", + "language.convert.confirm": "

Сигурни ли сте, че искате да зададете {name} за език по подразбиране? Действието не може да бъде отменено.

В случай, че в {name} има непреведено съдържание, то части от сайта ви могат да останат празни.

", "language.create": "Добавете нов език", - "language.delete.confirm": - "Сигурни ли сте, че искате да изтриете език {name}, включително всички негови преводи? Действието не може да бъде отменено!", + "language.delete.confirm": "Сигурни ли сте, че искате да изтриете език {name}, включително всички негови преводи? Действието не може да бъде отменено!", "language.deleted": "Езикът беше изтрит", "language.direction": "Посока на четене", "language.direction.ltr": "Отляво надясно", @@ -292,8 +239,7 @@ "license": "\u041b\u0438\u0446\u0435\u043d\u0437 \u0437\u0430 Kirby", "license.buy": "Купи лиценз", "license.register": "Регистрирай", - "license.register.help": - "You received your license code after the purchase via email. Please copy and paste it to register.", + "license.register.help": "You received your license code after the purchase via email. Please copy and paste it to register.", "license.register.label": "Please enter your license code", "license.register.success": "Thank you for supporting Kirby", "license.unregistered": "Това е нерегистрирана демо версия на Kirby", @@ -325,7 +271,7 @@ "months.april": "\u0410\u043f\u0440\u0438\u043b", "months.august": "\u0410\u0432\u0433\u0443\u0441\u0442", "months.december": "\u0414\u0435\u043a\u0435\u043c\u0432\u0440\u0438", - "months.february": "\u0424\u0435\u0432\u0440\u0443\u0430\u0440\u0438", + "months.february": "Февруари", "months.january": "\u042f\u043d\u0443\u0430\u0440\u0438", "months.july": "\u042e\u043b\u0438", "months.june": "\u042e\u043d\u0438", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Моля изберете позиция", "page.changeStatus.select": "Изберете нов статус", "page.changeTemplate": "Промени шаблон", - "page.delete.confirm": - "Сигурни ли сте, че искате да изтриете {title}?", - "page.delete.confirm.subpages": - "Тази страница има подстраници.
Всички подстраници също ще бъдат изтрити.", + "page.delete.confirm": "Сигурни ли сте, че искате да изтриете {title}?", + "page.delete.confirm.subpages": "Тази страница има подстраници.
Всички подстраници също ще бъдат изтрити.", "page.delete.confirm.title": "Въведи заглавие на страница за да потвърдиш", "page.draft.create": "Създай чернова", "page.duplicate.appendix": "Копирай", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Copy pages", "page.status": "Status", "page.status.draft": "Чернова", - "page.status.draft.description": - "Страницата е в режим на чернова и е видима само за оторизирани редактори", + "page.status.draft.description": "The page is in draft mode and only visible for logged in editors or via secret link", "page.status.listed": "Публично", "page.status.listed.description": "Страницата е публична за всички", "page.status.unlisted": "Скрит", @@ -388,6 +331,7 @@ "replace": "\u0417\u0430\u043c\u0435\u0441\u0442\u0438", "retry": "\u041e\u043f\u0438\u0442\u0430\u0439 \u043f\u0430\u043a", "revert": "\u041e\u0442\u043c\u0435\u043d\u0438", + "revert.confirm": "Do you really want to delete all unsaved changes?", "role": "\u0420\u043e\u043b\u044f", "role.admin.description": "The admin has all rights", @@ -451,8 +395,7 @@ "url.placeholder": "https://example.com", "user": "Потребител", - "user.blueprint": - "Можете да дефинирате допълнителни секции и полета на форми за тази потребителска роля в /site/blueprints/users/{role}.yml", + "user.blueprint": "Можете да дефинирате допълнителни секции и полета на форми за тази потребителска роля в /site/blueprints/users/{role}.yml", "user.changeEmail": "Промени email", "user.changeLanguage": "Промени език", "user.changeName": "Преименувай този потребител", @@ -463,8 +406,7 @@ "user.changeRole.select": "Изберете нова роля", "user.create": "Добавете нов потребител", "user.delete": "Изтрийте потребителя", - "user.delete.confirm": - "Сигурни ли сте, че искате да изтриете
{email}?", + "user.delete.confirm": "Сигурни ли сте, че искате да изтриете
{email}?", "users": "Потребители", diff --git a/kirby/i18n/translations/ca.json b/kirby/i18n/translations/ca.json index 433bee5..7e7c411 100755 --- a/kirby/i18n/translations/ca.json +++ b/kirby/i18n/translations/ca.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "No s'ha pogut carregar la imatge del perfil", "error.avatar.delete.fail": "La imatge del perfil no s'ha pogut eliminar", - "error.avatar.dimensions.invalid": - "Mantingueu l'amplada i l'alçada de la imatge de perfil de menys de 3000 píxels", - "error.avatar.mime.forbidden": - "La imatge del perfil ha de ser fitxers JPEG o PNG", + "error.avatar.dimensions.invalid": "Mantingueu l'amplada i l'alçada de la imatge de perfil de menys de 3000 píxels", + "error.avatar.mime.forbidden": "La imatge del perfil ha de ser fitxers JPEG o PNG", "error.blueprint.notFound": "No s'ha potgut carregar el blueprint \"{name}\"", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Convertidor no vàlid \"{converter}\"", "error.file.changeName.empty": "El nom no pot estar buit", - "error.file.changeName.permission": - "No tens permís per canviar el nom de \"{filename}\"", + "error.file.changeName.permission": "No tens permís per canviar el nom de \"{filename}\"", "error.file.duplicate": "Ja existeix un fitxer amb el nom \"{filename}\"", - "error.file.extension.forbidden": - "L'extensió de l'arxiu \"{extension}\" no està permesa", - "error.file.extension.missing": - "Falta l'extensió de l'arxiu \"{filename}\"", + "error.file.extension.forbidden": "L'extensió de l'arxiu \"{extension}\" no està permesa", + "error.file.extension.missing": "Falta l'extensió de l'arxiu \"{filename}\"", "error.file.maxheight": "L'alçada de la imatge no ha de ser superior a {height} píxels", "error.file.maxsize": "El fitxer és massa gran", "error.file.maxwidth": "L'amplada de la imatge no ha de ser superior a {width} píxels", - "error.file.mime.differs": - "L'arxiu carregat ha ha de ser del mateix tipus de mime \"{mime}\"", + "error.file.mime.differs": "L'arxiu carregat ha ha de ser del mateix tipus de mime \"{mime}\"", "error.file.mime.forbidden": "El tipus de mitjà \"{mime}\" no està permès", "error.file.mime.invalid": "Mime type no vàlid: {mime}", - "error.file.mime.missing": - "El tipus de suport per a \"{filename}\" no es pot detectar", + "error.file.mime.missing": "El tipus de suport per a \"{filename}\" no es pot detectar", "error.file.minheight": "L'alçada de la imatge ha de ser com a mínim de {height} píxels", "error.file.minsize": "El fitxer és massa petit", "error.file.minwidth": "L'amplada de la imatge ha de ser com a mínim de {width} píxels", @@ -90,111 +83,77 @@ "error.license.email": "Si us plau, introdueix una adreça de correu electrònic vàlida", "error.license.verification": "No s’ha pogut verificar la llicència", - "error.page.changeSlug.permission": - "No teniu permís per canviar l'apèndix d'URL per a \"{slug}\"", - "error.page.changeStatus.incomplete": - "La pàgina té errors i no es pot publicar", - "error.page.changeStatus.permission": - "No es pot canviar l'estat d'aquesta pàgina", - "error.page.changeStatus.toDraft.invalid": - "La pàgina \"{slug}\" no es pot convertir en un esborrany", - "error.page.changeTemplate.invalid": - "La plantilla per a la pàgina \"{slug}\" no es pot canviar", - "error.page.changeTemplate.permission": - "No tens permís per canviar la plantilla per \"{slug}\"", + "error.page.changeSlug.permission": "No teniu permís per canviar l'apèndix d'URL per a \"{slug}\"", + "error.page.changeStatus.incomplete": "La pàgina té errors i no es pot publicar", + "error.page.changeStatus.permission": "No es pot canviar l'estat d'aquesta pàgina", + "error.page.changeStatus.toDraft.invalid": "La pàgina \"{slug}\" no es pot convertir en un esborrany", + "error.page.changeTemplate.invalid": "La plantilla per a la pàgina \"{slug}\" no es pot canviar", + "error.page.changeTemplate.permission": "No tens permís per canviar la plantilla per \"{slug}\"", "error.page.changeTitle.empty": "El títol no pot estar buit", - "error.page.changeTitle.permission": - "No tens permís per canviar el títol de \"{slug}\"", + "error.page.changeTitle.permission": "No tens permís per canviar el títol de \"{slug}\"", "error.page.create.permission": "No tens permís per crear \"{slug}\"", "error.page.delete": "La pàgina \"{slug}\" no es pot esborrar", "error.page.delete.confirm": "Si us plau, introdueix el títol de la pàgina per confirmar", - "error.page.delete.hasChildren": - "La pàgina té subpàgines i no es pot esborrar", + "error.page.delete.hasChildren": "La pàgina té subpàgines i no es pot esborrar", "error.page.delete.permission": "No tens permís per esborrar \"{slug}\"", - "error.page.draft.duplicate": - "Ja existeix un esborrany de pàgina amb l'apèndix d'URL \"{slug}\"", - "error.page.duplicate": - "Ja existeix una pàgina amb l'apèndix d'URL \"{slug}\"", + "error.page.draft.duplicate": "Ja existeix un esborrany de pàgina amb l'apèndix d'URL \"{slug}\"", + "error.page.duplicate": "Ja existeix una pàgina amb l'apèndix d'URL \"{slug}\"", "error.page.duplicate.permission": "No tens permís per duplicar \"{slug}\"", "error.page.notFound": "La pàgina \"{slug}\" no s'ha trobat", - "error.page.num.invalid": - "Si us plau, introdueix un número d 'ordenació vàlid. Els números no poden ser negatius.", + "error.page.num.invalid": "Si us plau, introdueix un número d 'ordenació vàlid. Els números no poden ser negatius.", "error.page.slug.invalid": "Introduïu un prefix d'URL vàlid", "error.page.sort.permission": "La pàgina \"{slug}\" no es pot ordenar", "error.page.status.invalid": "Si us plau, estableix un estat de pàgina vàlid", "error.page.undefined": "La p\u00e0gina no s'ha trobat", "error.page.update.permission": "No tens permís per actualitzar \"{slug}\"", - "error.section.files.max.plural": - "No has d'afegir més de {max} fitxers a la secció \"{section}\"", - "error.section.files.max.singular": - "No podeu afegir més d'un fitxer a la secció \"{section}\"", - "error.section.files.min.plural": - "La secció \"{section}\" requereix almenys {min} fitxer", - "error.section.files.min.singular": - "La secció \"{section}\" requereix almenys un fitxer", + "error.section.files.max.plural": "No has d'afegir més de {max} fitxers a la secció \"{section}\"", + "error.section.files.max.singular": "No podeu afegir més d'un fitxer a la secció \"{section}\"", + "error.section.files.min.plural": "La secció \"{section}\" requereix almenys {min} fitxer", + "error.section.files.min.singular": "La secció \"{section}\" requereix almenys un fitxer", - "error.section.pages.max.plural": - "No heu d'afegir més de {max} pàgines a la secció \"{section}\"", - "error.section.pages.max.singular": - "No podeu afegir més d'una pàgina a la secció \"{section}\"", - "error.section.pages.min.plural": - "La secció \"{section}\" requereix almenys {min} pàgines", - "error.section.pages.min.singular": - "La secció \"{section}\" requereix almenys una pàgina", + "error.section.pages.max.plural": "No heu d'afegir més de {max} pàgines a la secció \"{section}\"", + "error.section.pages.max.singular": "No podeu afegir més d'una pàgina a la secció \"{section}\"", + "error.section.pages.min.plural": "La secció \"{section}\" requereix almenys {min} pàgines", + "error.section.pages.min.singular": "La secció \"{section}\" requereix almenys una pàgina", "error.section.notLoaded": "No s'ha pogut carregar la secció \"{name}\"", "error.section.type.invalid": "La secció tipus \"{type}\" no és vàlida", "error.site.changeTitle.empty": "El títol no pot estar buit", - "error.site.changeTitle.permission": - "No tens permís per canviar el títol del lloc web", + "error.site.changeTitle.permission": "No tens permís per canviar el títol del lloc web", "error.site.update.permission": "No tens permís per actualitzar el lloc web", "error.template.default.notFound": "La plantilla predeterminada no existeix", - "error.user.changeEmail.permission": - "No tens permís per canviar el correu electrònic per a l'usuari \"{name}\"", - "error.user.changeLanguage.permission": - "No tens permís per canviar l'idioma de l'usuari \"{name}\"", - "error.user.changeName.permission": - "No tens permís per canviar el nom de l'usuari \"{name}\"", - "error.user.changePassword.permission": - "No tens permís per canviar la contrasenya de l'usuari \"{name}\"", - "error.user.changeRole.lastAdmin": - "El rol del darrer administrador no es pot canviar", - "error.user.changeRole.permission": - "No tens permís per canviar el rol de l'usuari \"{name}\"", - "error.user.changeRole.toAdmin": - "No tens permís per promocionar algú al rol d’administrador", + "error.user.changeEmail.permission": "No tens permís per canviar el correu electrònic per a l'usuari \"{name}\"", + "error.user.changeLanguage.permission": "No tens permís per canviar l'idioma de l'usuari \"{name}\"", + "error.user.changeName.permission": "No tens permís per canviar el nom de l'usuari \"{name}\"", + "error.user.changePassword.permission": "No tens permís per canviar la contrasenya de l'usuari \"{name}\"", + "error.user.changeRole.lastAdmin": "El rol del darrer administrador no es pot canviar", + "error.user.changeRole.permission": "No tens permís per canviar el rol de l'usuari \"{name}\"", + "error.user.changeRole.toAdmin": "No tens permís per promocionar algú al rol d’administrador", "error.user.create.permission": "No tens permís per crear aquest usuari", "error.user.delete": "L'usuari \"{name}\" no es pot eliminar", "error.user.delete.lastAdmin": "No es pot eliminar l'\u00faltim administrador", "error.user.delete.lastUser": "El darrer usuari no es pot eliminar", - "error.user.delete.permission": - "No pots eliminar l'usuari \"{name}\"", - "error.user.duplicate": - "Ja existeix un usuari amb l'adreça electrònica \"{email}\"", + "error.user.delete.permission": "No pots eliminar l'usuari \"{name}\"", + "error.user.duplicate": "Ja existeix un usuari amb l'adreça electrònica \"{email}\"", "error.user.email.invalid": "Si us plau, introdueix una adreça de correu electrònic vàlida", "error.user.language.invalid": "Introduïu un idioma vàlid", "error.user.notFound": "L'usuari \"{name}\" no s'ha trobat", - "error.user.password.invalid": - "Introduïu una contrasenya vàlida. Les contrasenyes han de tenir com a mínim 8 caràcters.", + "error.user.password.invalid": "Introduïu una contrasenya vàlida. Les contrasenyes han de tenir com a mínim 8 caràcters.", "error.user.password.notSame": "Les contrasenyes no coincideixen", "error.user.password.undefined": "L'usuari no té una contrasenya", "error.user.role.invalid": "Si us plau, introdueix un rol vàlid", - "error.user.update.permission": - "No tens permís per actualitzar l'usuari \"{name}\"", + "error.user.update.permission": "No tens permís per actualitzar l'usuari \"{name}\"", "error.validation.accepted": "Si us plau confirma", "error.validation.alpha": "Si us plau, introdueix únicament caràcters entre a-z", - "error.validation.alphanum": - "Si us plau, introdueix únicament caràcters entre a-z o números de 0-9", - "error.validation.between": - "Introdueix un valor entre \"{min}\" i \"{max}\"", + "error.validation.alphanum": "Si us plau, introdueix únicament caràcters entre a-z o números de 0-9", + "error.validation.between": "Introdueix un valor entre \"{min}\" i \"{max}\"", "error.validation.boolean": "Si us plau confirma o denega", - "error.validation.contains": - "Si us plau, introduïu un valor que contingui \"{needle}\"", + "error.validation.contains": "Si us plau, introduïu un valor que contingui \"{needle}\"", "error.validation.date": "Si us plau, introdueix una data vàlida", "error.validation.date.after": "Introdueix una data posterior {date}", "error.validation.date.before": "Introdueix una data anterior {date}", @@ -210,18 +169,14 @@ "error.validation.less": "Si us plau, introduïu un valor inferior a {max}", "error.validation.match": "El valor no coincideix amb el patró esperat", "error.validation.max": "Si us plau, introduïu un valor igual o inferior a {max}", - "error.validation.maxlength": - "Si us plau, introduïu un valor més curt. (màxim {max} caràcters)", + "error.validation.maxlength": "Si us plau, introduïu un valor més curt. (màxim {max} caràcters)", "error.validation.maxwords": "Si us plau, introduïu no més de {max} paraula(es)", "error.validation.min": "Si us plau, introduïu un valor igual o superior a {min}", - "error.validation.minlength": - "Si us plau, introduïu un valor més llarg. (min. {min} caràcters)", + "error.validation.minlength": "Si us plau, introduïu un valor més llarg. (min. {min} caràcters)", "error.validation.minwords": "Si us plau, introduïu almenys {min} paraula(es)", "error.validation.more": "Si us plau, introduïu un valor més gran que {min}", - "error.validation.notcontains": - "Introduïu un valor que no contingui \"{needle}\"", - "error.validation.notin": - "Si us plau, no introduïu cap d'aquests elements: ({notIn})", + "error.validation.notcontains": "Introduïu un valor que no contingui \"{needle}\"", + "error.validation.notin": "Si us plau, no introduïu cap d'aquests elements: ({notIn})", "error.validation.option": "Si us plau, seleccioneu una opció vàlida", "error.validation.num": "Si us plau, introduïu un número vàlid", "error.validation.required": "Si us plau, introduïu alguna cosa", @@ -238,8 +193,7 @@ "field.structure.empty": "Encara no hi ha entrades.", "field.users.empty": "Encara no s'ha seleccionat cap usuari", - "file.delete.confirm": - "Esteu segurs d'eliminar
{filename}?", + "file.delete.confirm": "Esteu segurs d'eliminar
{filename}?", "files": "Arxius", "files.empty": "Encara no hi ha fitxers", @@ -251,29 +205,22 @@ "installation": "Instal·lació", "installation.completed": "S'ha instal·lat el panell", "installation.disabled": "L'instal·lador del panell està desactivat per defecte als servidors públics. Si us plau, executeu l'instal·lador en una màquina local o habiliteu-lo amb l'opció panel.install", - "installation.issues.accounts": - "La carpeta /site/accounts no existeix o no es pot escriure", - "installation.issues.content": - "La carpeta /content no existeix o no es pot escriure", + "installation.issues.accounts": "La carpeta /site/accounts no existeix o no es pot escriure", + "installation.issues.content": "La carpeta /content no existeix o no es pot escriure", "installation.issues.curl": "Es requereix l'extensió CURL", "installation.issues.headline": "El panell no es pot instal·lar", - "installation.issues.mbstring": - "Es requereix l'extensió de MB String", - "installation.issues.media": - "La carpeta /media no existeix o no es pot escriure", + "installation.issues.mbstring": "Es requereix l'extensió de MB String", + "installation.issues.media": "La carpeta /media no existeix o no es pot escriure", "installation.issues.php": "Assegureu-vos d'utilitzar PHP 7+", - "installation.issues.server": - "Kirby requereix Apache, Nginx o Caddy", + "installation.issues.server": "Kirby requereix Apache, Nginx o Caddy", "installation.issues.sessions": "La carpeta /site/sessions no existeix o no es pot escriure", "language": "Idioma", "language.code": "Codi", "language.convert": "Fer per defecte", - "language.convert.confirm": - "

Segur que voleu convertir {name} a l'idioma predeterminat? Això no es pot desfer.

Si {name} té contingut no traduït, ja no podreu tornar enrere i algunes parts del vostre lloc poden quedar buides.

", + "language.convert.confirm": "

Segur que voleu convertir {name} a l'idioma predeterminat? Això no es pot desfer.

Si {name} té contingut no traduït, ja no podreu tornar enrere i algunes parts del vostre lloc poden quedar buides.

", "language.create": "Afegir un nou idioma", - "language.delete.confirm": - "Segur que voleu eliminar l'idioma {name} incloent totes les traduccions? Això no es pot desfer!", + "language.delete.confirm": "Segur que voleu eliminar l'idioma {name} incloent totes les traduccions? Això no es pot desfer!", "language.deleted": "S'ha suprimit l'idioma", "language.direction": "Direcció de lectura", "language.direction.ltr": "Esquerra a dreta", @@ -292,8 +239,7 @@ "license": "Llic\u00e8ncia Kirby", "license.buy": "Comprar una llicència", "license.register": "Registrar", - "license.register.help": - "Heu rebut el codi de la vostra llicència després de la compra, per correu electrònic. Copieu-lo i enganxeu-lo per registrar-vos.", + "license.register.help": "Heu rebut el codi de la vostra llicència després de la compra, per correu electrònic. Copieu-lo i enganxeu-lo per registrar-vos.", "license.register.label": "Si us plau, introdueixi el seu codi de llicència", "license.register.success": "Gràcies per donar suport a Kirby", "license.unregistered": "Aquesta és una demo no registrada de Kirby", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Si us plau, seleccioneu una posició", "page.changeStatus.select": "Seleccioneu un nou estat", "page.changeTemplate": "Canviar la plantilla", - "page.delete.confirm": - "Segur que voleu eliminar {title}?", - "page.delete.confirm.subpages": - "Aquesta pàgina té subpàgines.
Totes les subpàgines també s'eliminaran.", + "page.delete.confirm": "Segur que voleu eliminar {title}?", + "page.delete.confirm.subpages": "Aquesta pàgina té subpàgines.
Totes les subpàgines també s'eliminaran.", "page.delete.confirm.title": "Introduïu el títol de la pàgina per confirmar", "page.draft.create": "Crear un esborrany", "page.duplicate.appendix": "Copiar", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Copiar pàgines", "page.status": "Estat", "page.status.draft": "Esborrany", - "page.status.draft.description": - "La pàgina està en mode d'esborrany i només és visible per als editors registrats", + "page.status.draft.description": "La pàgina està en mode d'esborrany i només és visible per als editors registrats o a través d'un enllaç secret", "page.status.listed": "Públic", "page.status.listed.description": "La pàgina és pública per a tothom", "page.status.unlisted": "Sense classificar", @@ -388,6 +331,7 @@ "replace": "Reempla\u00e7ar", "retry": "Reintentar", "revert": "Revertir", + "revert.confirm": "Segur que voleu eliminar tots els canvis pendents desar?", "role": "Rol", "role.admin.description": "L’administrador té tots els permisos", @@ -451,8 +395,7 @@ "url.placeholder": "https://example.com", "user": "Usuari", - "user.blueprint": - "Podeu definir seccions addicionals i camps de formulari per a aquest rol d'usuari a /site/blueprints/users/{role}.yml", + "user.blueprint": "Podeu definir seccions addicionals i camps de formulari per a aquest rol d'usuari a /site/blueprints/users/{role}.yml", "user.changeEmail": "Canviar e-mail", "user.changeLanguage": "Canviar idioma", "user.changeName": "Canviar el nom d'aquest usuari", @@ -463,8 +406,7 @@ "user.changeRole.select": "Seleccionar un nou rol", "user.create": "Afegir un nou usuari", "user.delete": "Eliminar aquest usuari", - "user.delete.confirm": - "Segur que voleu eliminar
{email}?", + "user.delete.confirm": "Segur que voleu eliminar
{email}?", "users": "Usuaris", diff --git a/kirby/i18n/translations/cs.json b/kirby/i18n/translations/cs.json index e9b2213..0973103 100755 --- a/kirby/i18n/translations/cs.json +++ b/kirby/i18n/translations/cs.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "Nebylo možné nahrát profilový obrázek", "error.avatar.delete.fail": "Nebylo mo\u017en\u00e9 smazat profilov\u00fd obr\u00e1zek", - "error.avatar.dimensions.invalid": - "Šířka a výška obrázku musí být pod 3000 pixelů", - "error.avatar.mime.forbidden": - "Profilový obrázek musí být ve formátu JPEG nebo PNG", + "error.avatar.dimensions.invalid": "Šířka a výška obrázku musí být pod 3000 pixelů", + "error.avatar.mime.forbidden": "Profilový obrázek musí být ve formátu JPEG nebo PNG", "error.blueprint.notFound": "Nelze načíst blueprint \"{name}\" ", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Neplatný konvertor \"{converter}\"", "error.file.changeName.empty": "Toto jméno nesmí být prázdné", - "error.file.changeName.permission": - "Nemáte povoleno změnit jméno souboru \"{filename}\"", + "error.file.changeName.permission": "Nemáte povoleno změnit jméno souboru \"{filename}\"", "error.file.duplicate": "Soubor s názvem \"{filename}\" již existuje", - "error.file.extension.forbidden": - "Přípona souboru \"{extension}\" není povolena", - "error.file.extension.missing": - "Nem\u016f\u017eete nahr\u00e1t soubor bez p\u0159\u00edpony", + "error.file.extension.forbidden": "Přípona souboru \"{extension}\" není povolena", + "error.file.extension.missing": "Nem\u016f\u017eete nahr\u00e1t soubor bez p\u0159\u00edpony", "error.file.maxheight": "Výška obrázku nesmí přesáhnout {height} pixelů", "error.file.maxsize": "Soubor je příliš velký", "error.file.maxwidth": "Šířka obrázku nesmí přesáhnout {width} pixelů", - "error.file.mime.differs": - "Nahraný soubor musí být stejného typu \"{mime}\"", + "error.file.mime.differs": "Nahraný soubor musí být stejného typu \"{mime}\"", "error.file.mime.forbidden": "Soubor typu \"{mime}\" není povolený", "error.file.mime.invalid": "Neplatný MIME typ: {mime}", - "error.file.mime.missing": - "Nelze rozeznat mime typ souboru \"{filename}\"", + "error.file.mime.missing": "Nelze rozeznat mime typ souboru \"{filename}\"", "error.file.minheight": "Výška obrázku musí být alespoň {height} pixelů", "error.file.minsize": "Soubor je příliš malý", "error.file.minwidth": "Šířka obrázku musí být alespoň {width} pixelů", @@ -90,111 +83,77 @@ "error.license.email": "Zadejte prosím platnou emailovou adresu", "error.license.verification": "Licenci nelze ověřit", - "error.page.changeSlug.permission": - "Nem\u016f\u017eete zm\u011bnit URL t\u00e9to str\u00e1nky", - "error.page.changeStatus.incomplete": - "Stránka obsahuje chyby a nemohla být zveřejněna", - "error.page.changeStatus.permission": - "Status této stránky nelze změnit", - "error.page.changeStatus.toDraft.invalid": - "Stránka \"{slug}\" nemůže být převedena na koncept", - "error.page.changeTemplate.invalid": - "Šablonu stránky \"{slug}\" nelze změnit", - "error.page.changeTemplate.permission": - "Nemáte dovoleno změnit šablonu stránky \"{slug}\"", + "error.page.changeSlug.permission": "Nem\u016f\u017eete zm\u011bnit URL t\u00e9to str\u00e1nky", + "error.page.changeStatus.incomplete": "Stránka obsahuje chyby a nemohla být zveřejněna", + "error.page.changeStatus.permission": "Status této stránky nelze změnit", + "error.page.changeStatus.toDraft.invalid": "Stránka \"{slug}\" nemůže být převedena na koncept", + "error.page.changeTemplate.invalid": "Šablonu stránky \"{slug}\" nelze změnit", + "error.page.changeTemplate.permission": "Nemáte dovoleno změnit šablonu stránky \"{slug}\"", "error.page.changeTitle.empty": "Titulek nesmí být prázdný", - "error.page.changeTitle.permission": - "Nemáte dovoleno změnit titulek stránky \"{slug}\"", + "error.page.changeTitle.permission": "Nemáte dovoleno změnit titulek stránky \"{slug}\"", "error.page.create.permission": "Nemáte dovoleno vytvořit \"{slug}\"", "error.page.delete": "Stránku \"{slug}\" nelze vymazat", "error.page.delete.confirm": "Pro potvrzení prosím zadejte titulek stránky", - "error.page.delete.hasChildren": - "Stránka má podstránky, nemůže být vymazána", + "error.page.delete.hasChildren": "Stránka má podstránky, nemůže být vymazána", "error.page.delete.permission": "Nemáte dovoleno odstranit \"{slug}\"", - "error.page.draft.duplicate": - "Koncept stránky, který obsahuje v adrese URL \"{slug}\" již existuje ", - "error.page.duplicate": - "Stránka, která v adrese URL obsahuje \"{slug}\" již existuje", + "error.page.draft.duplicate": "Koncept stránky, který obsahuje v adrese URL \"{slug}\" již existuje ", + "error.page.duplicate": "Stránka, která v adrese URL obsahuje \"{slug}\" již existuje", "error.page.duplicate.permission": "Nemáte dovoleno duplikovat \"{slug}\"", "error.page.notFound": "Str\u00e1nku se nepoda\u0159ilo nal\u00e9zt.", - "error.page.num.invalid": - "Zadejte prosím platné pořadové číslo. Čísla nesmí být záporná.", + "error.page.num.invalid": "Zadejte prosím platné pořadové číslo. Čísla nesmí být záporná.", "error.page.slug.invalid": "Zadejte prosím platnou předponu URL", "error.page.sort.permission": "Stránce \"{slug}\" nelze změnit pořadí", "error.page.status.invalid": "Nastavte prosím platný status stránky", "error.page.undefined": "Str\u00e1nku se nepoda\u0159ilo nal\u00e9zt.", "error.page.update.permission": "Nemáte dovoleno upravit \"{slug}\"", - "error.section.files.max.plural": - "Sekce \"{section}\" nesmí obsahovat více jak {max} souborů", - "error.section.files.max.singular": - "Sekce \"{section}\" může obsahovat nejvýše jeden soubor", - "error.section.files.min.plural": - "Sekce \"{section}\" vyžaduje nejméně {min} souborů", - "error.section.files.min.singular": - "Sekce \"{section}\" vyžaduje alespoň jeden soubor", + "error.section.files.max.plural": "Sekce \"{section}\" nesmí obsahovat více jak {max} souborů", + "error.section.files.max.singular": "Sekce \"{section}\" může obsahovat nejvýše jeden soubor", + "error.section.files.min.plural": "Sekce \"{section}\" vyžaduje nejméně {min} souborů", + "error.section.files.min.singular": "Sekce \"{section}\" vyžaduje alespoň jeden soubor", - "error.section.pages.max.plural": - "Sekce \"{section}\" nesmí obsahovat více jak {max} stránek", - "error.section.pages.max.singular": - "Sekce \"{section}\" může obsahovat nejvýše jednu stránku", - "error.section.pages.min.plural": - "Sekce \"{section}\" vyžaduje alespoň {min} stránek", - "error.section.pages.min.singular": - "Sekce \"{section}\" vyžaduje alespoň jednu stránku", + "error.section.pages.max.plural": "Sekce \"{section}\" nesmí obsahovat více jak {max} stránek", + "error.section.pages.max.singular": "Sekce \"{section}\" může obsahovat nejvýše jednu stránku", + "error.section.pages.min.plural": "Sekce \"{section}\" vyžaduje alespoň {min} stránek", + "error.section.pages.min.singular": "Sekce \"{section}\" vyžaduje alespoň jednu stránku", "error.section.notLoaded": "Nelze načíst sekci \"{name}\"", "error.section.type.invalid": "Typ sekce \"{type}\" není platný", "error.site.changeTitle.empty": "Titulek nesmí být prázdný", - "error.site.changeTitle.permission": - "Nemáte dovoleno změnit titulek stránky", + "error.site.changeTitle.permission": "Nemáte dovoleno změnit titulek stránky", "error.site.update.permission": "Nemáte dovoleno upravit stránku", "error.template.default.notFound": "Výchozí šablona neexistuje", - "error.user.changeEmail.permission": - "Nemáte dovoleno měnit email uživatele \"{name}\"", - "error.user.changeLanguage.permission": - "Nemáte dovoleno změnit jazyk uživatele \"{name}\"", - "error.user.changeName.permission": - "Nemáte dovoleno změnit jméno uživatele \"{name}\"", - "error.user.changePassword.permission": - "Nemáte dovoleno změnit heslo uživatele \"{name}\"", - "error.user.changeRole.lastAdmin": - "Role posledního administrátora nemůže být změněna", - "error.user.changeRole.permission": - "Nemáte dovoleno změnit roli uživatele \"{name}\"", - "error.user.changeRole.toAdmin": - "Nemáte dovoleno povýšit uživatele do role administrátora.", + "error.user.changeEmail.permission": "Nemáte dovoleno měnit email uživatele \"{name}\"", + "error.user.changeLanguage.permission": "Nemáte dovoleno změnit jazyk uživatele \"{name}\"", + "error.user.changeName.permission": "Nemáte dovoleno změnit jméno uživatele \"{name}\"", + "error.user.changePassword.permission": "Nemáte dovoleno změnit heslo uživatele \"{name}\"", + "error.user.changeRole.lastAdmin": "Role posledního administrátora nemůže být změněna", + "error.user.changeRole.permission": "Nemáte dovoleno změnit roli uživatele \"{name}\"", + "error.user.changeRole.toAdmin": "Nemáte dovoleno povýšit uživatele do role administrátora.", "error.user.create.permission": "Nemáte dovoleno vytvořit tohoto uživatele", "error.user.delete": "U\u017eivatel nemohl b\u00fdt smaz\u00e1n", "error.user.delete.lastAdmin": "Nem\u016f\u017eete smazat posledn\u00edho administr\u00e1tora", "error.user.delete.lastUser": "Poslední uživatel nemůže být smazán", - "error.user.delete.permission": - "Nem\u00e1te dovoleno smazat tohoto u\u017eivatele", - "error.user.duplicate": - "Uživatel s emailovou adresou \"{email}\" již existuje", + "error.user.delete.permission": "Nem\u00e1te dovoleno smazat tohoto u\u017eivatele", + "error.user.duplicate": "Uživatel s emailovou adresou \"{email}\" již existuje", "error.user.email.invalid": "Zadejte prosím platnou emailovou adresu", "error.user.language.invalid": "Zadejte prosím platný jazyk", "error.user.notFound": "U\u017eivatele se nepoda\u0159ilo nal\u00e9zt", - "error.user.password.invalid": - "Zadejte prosím platné heslo. Heslo musí být dlouhé alespoň 8 znaků.", + "error.user.password.invalid": "Zadejte prosím platné heslo. Heslo musí být dlouhé alespoň 8 znaků.", "error.user.password.notSame": "Pros\u00edm potvr\u010fte heslo", "error.user.password.undefined": "Uživatel nemá nastavené heslo.", "error.user.role.invalid": "Zadejte prosím platnou roli", - "error.user.update.permission": - "Nemáte dovoleno upravit uživatele \"{name}\"", + "error.user.update.permission": "Nemáte dovoleno upravit uživatele \"{name}\"", "error.validation.accepted": "Potvrďte prosím", "error.validation.alpha": "Zadávejte prosím pouze znaky v rozmezí a-z", - "error.validation.alphanum": - "Zadávejte prosím pouze znaky v rozmezí a-z nebo čísla v rozmezí 0-9", - "error.validation.between": - "Zadejte prosím hodnotu mez \"{min}\" a \"{max}\"", + "error.validation.alphanum": "Zadávejte prosím pouze znaky v rozmezí a-z nebo čísla v rozmezí 0-9", + "error.validation.between": "Zadejte prosím hodnotu mez \"{min}\" a \"{max}\"", "error.validation.boolean": "Potvrďte prosím, nebo odmítněte", - "error.validation.contains": - "Zadejte prosím hodnotu, která obsahuje \"{needle}\"", + "error.validation.contains": "Zadejte prosím hodnotu, která obsahuje \"{needle}\"", "error.validation.date": "Zadejte prosím platné datum", "error.validation.date.after": "Zadejte prosím datum po {date}", "error.validation.date.before": "Zadejte prosím datum před {date}", @@ -210,18 +169,14 @@ "error.validation.less": "Zadejte prosím hodnotu menší než {max}", "error.validation.match": "Hodnota neodpovídá očekávanému vzoru", "error.validation.max": "Zadejte prosím hodnotu rovnou, nebo menší než {max}", - "error.validation.maxlength": - "Zadaná hodnota je příliš dlouhá. (Povoleno nejvýše {max} znaků)", + "error.validation.maxlength": "Zadaná hodnota je příliš dlouhá. (Povoleno nejvýše {max} znaků)", "error.validation.maxwords": "Nezadávejte prosím více jak {max} slov", "error.validation.min": "Zadejte prosím hodnotu rovnou, nebo větší než {min}", - "error.validation.minlength": - "Zadaná hodnota je příliš krátká. (Požadováno nejméně {min} znaků)", + "error.validation.minlength": "Zadaná hodnota je příliš krátká. (Požadováno nejméně {min} znaků)", "error.validation.minwords": "Zadejte prosím alespoň {min} slov", "error.validation.more": "Zadejte prosím hodnotu větší než {min}", - "error.validation.notcontains": - "Zadejte prosím hodnotu, která neobsahuje \"{needle}\"", - "error.validation.notin": - "Nezadávejte prosím žádnou z následujíích hodnot: ({notIn})", + "error.validation.notcontains": "Zadejte prosím hodnotu, která neobsahuje \"{needle}\"", + "error.validation.notin": "Nezadávejte prosím žádnou z následujíích hodnot: ({notIn})", "error.validation.option": "Vyberte prosím platnou možnost", "error.validation.num": "Zadejte prosím platné číslo", "error.validation.required": "Zadejte prosím jakoukoli hodnotu", @@ -238,8 +193,7 @@ "field.structure.empty": "Zat\u00edm nejsou \u017e\u00e1dn\u00e9 z\u00e1znamy.", "field.users.empty": "Nebyli zatím vybráni žádní uživatelé", - "file.delete.confirm": - "Opravdu chcete smazat tento soubor?", + "file.delete.confirm": "Opravdu chcete smazat tento soubor?", "files": "Soubory", "files.empty": "Zatím žádné soubory", @@ -251,29 +205,22 @@ "installation": "Instalace", "installation.completed": "Panel byl nainstalován", "installation.disabled": "Instalátor panelu je ve výchozím nastavení na veřejných serverech zakázán. Spusťte prosím instalátor na lokálním počítači nebo jej povolte prostřednictvím panel.install.", - "installation.issues.accounts": - "\/site\/accounts nen\u00ed zapisovateln\u00e9", - "installation.issues.content": - "Slo\u017eka content a v\u0161echny soubory a slo\u017eky v n\u00ed mus\u00ed b\u00fdt zapisovateln\u00e9.", + "installation.issues.accounts": "\/site\/accounts nen\u00ed zapisovateln\u00e9", + "installation.issues.content": "Slo\u017eka content a v\u0161echny soubory a slo\u017eky v n\u00ed mus\u00ed b\u00fdt zapisovateln\u00e9.", "installation.issues.curl": "Je vyžadováno rozšířeníCURL", "installation.issues.headline": "Panel nelze nainstalovat", - "installation.issues.mbstring": - "Je vyžadováno rozšířeníMB String", - "installation.issues.media": - "Složka/media neexistuje, nebo nemá povolený zápis", + "installation.issues.mbstring": "Je vyžadováno rozšířeníMB String", + "installation.issues.media": "Složka/media neexistuje, nebo nemá povolený zápis", "installation.issues.php": "Ujistěte se, že používátePHP 7+", - "installation.issues.server": - "Kirby vyžadujeApache, Nginx neboCaddy", + "installation.issues.server": "Kirby vyžadujeApache, Nginx neboCaddy", "installation.issues.sessions": "Složka/site/sessions neexistuje, nebo nemá povolený zápis", "language": "Jazyk", "language.code": "Kód", "language.convert": "Nastavte výchozí možnost", - "language.convert.confirm": - "

Opravdu chcete převést{name} na výchozí jazyk? Tuto volbu nelze vzít zpátky.

Pokud {name} obsahuje nepřeložený text, nebude již k dispozici záložní varianta a části stránky mohou zůstat prázdné.

", + "language.convert.confirm": "

Opravdu chcete převést{name} na výchozí jazyk? Tuto volbu nelze vzít zpátky.

Pokud {name} obsahuje nepřeložený text, nebude již k dispozici záložní varianta a části stránky mohou zůstat prázdné.

", "language.create": "Přidat nový jazyk", - "language.delete.confirm": - "Opravdu chcete smazat jazyk {name} včetně všech překladů? Tuto volbu nelze vzít zpátky!", + "language.delete.confirm": "Opravdu chcete smazat jazyk {name} včetně všech překladů? Tuto volbu nelze vzít zpátky!", "language.deleted": "Jazyk byl smazán", "language.direction": "Směr čtení", "language.direction.ltr": "Zleva doprava", @@ -292,8 +239,7 @@ "license": "Kirby licence", "license.buy": "Zakoupit licenci", "license.register": "Registrovat", - "license.register.help": - "Licenční kód jste po zakoupení obdrželi na email. Vložte prosím kód a zaregistrujte Vaší kopii.", + "license.register.help": "Licenční kód jste po zakoupení obdrželi na email. Vložte prosím kód a zaregistrujte Vaší kopii.", "license.register.label": "Zadejte prosím licenční kód", "license.register.success": "Děkujeme Vám za podporu Kirby", "license.unregistered": "Toto je neregistrovaná kopie Kirby", @@ -325,7 +271,7 @@ "months.april": "Duben", "months.august": "Srpen", "months.december": "Prosinec", - "months.february": "\u00danor", + "months.february": "Únor", "months.january": "Leden", "months.july": "\u010cervenec", "months.june": "\u010cerven", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Vyberte prosím pozici", "page.changeStatus.select": "Vybrat nový status", "page.changeTemplate": "Změnit šablonu", - "page.delete.confirm": - "Opravdu chcete smazat tuto str\u00e1nku?", - "page.delete.confirm.subpages": - "Tato stránka má podstránky.
Všechny podstránky budou vymazány.", + "page.delete.confirm": "Opravdu chcete smazat tuto str\u00e1nku?", + "page.delete.confirm.subpages": "Tato stránka má podstránky.
Všechny podstránky budou vymazány.", "page.delete.confirm.title": "Pro potvrzení zadejte titulek stránky", "page.draft.create": "Vytvořit koncept", "page.duplicate.appendix": "Kopírovat", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Kopírovat stránky", "page.status": "Stav", "page.status.draft": "Koncept", - "page.status.draft.description": - "Stránka je ve stavu konceptu a je viditelná pouze pro přihlášené editory", + "page.status.draft.description": "The page is in draft mode and only visible for logged in editors or via secret link", "page.status.listed": "Veřejná", "page.status.listed.description": "Stránka je zveřejněná pro všechny", "page.status.unlisted": "Neveřejná", @@ -388,6 +331,7 @@ "replace": "Nahradit", "retry": "Zkusit znovu", "revert": "Zahodit", + "revert.confirm": "Do you really want to delete all unsaved changes?", "role": "Role", "role.admin.description": "Administrátor má všechna práva", @@ -451,8 +395,7 @@ "url.placeholder": "https://example.com", "user": "Uživatel", - "user.blueprint": - "Pro tuto uživatelskou roli můžete definovat další sekce a pole v /site/blueprints/users/{role}.yml", + "user.blueprint": "Pro tuto uživatelskou roli můžete definovat další sekce a pole v /site/blueprints/users/{role}.yml", "user.changeEmail": "Změnit email", "user.changeLanguage": "Změnit jazyk", "user.changeName": "Přejmenovat tohoto uživatele", @@ -463,8 +406,7 @@ "user.changeRole.select": "Vybrat novou roli", "user.create": "Přidat nového uživatele", "user.delete": "Smazat tohoto uživatele", - "user.delete.confirm": - "Opravdu chcete smazat tohoto u\u017eivatele?", + "user.delete.confirm": "Opravdu chcete smazat tohoto u\u017eivatele?", "users": "Uživatelé", diff --git a/kirby/i18n/translations/da.json b/kirby/i18n/translations/da.json index 719cc6d..0207d6a 100755 --- a/kirby/i18n/translations/da.json +++ b/kirby/i18n/translations/da.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "Profilbilledet kunne blev ikke uploadet ", "error.avatar.delete.fail": "Profilbilledet kunne ikke slettes", - "error.avatar.dimensions.invalid": - "Hold venligst bredte og højde på billedet under 3000 pixels", - "error.avatar.mime.forbidden": - "Uacceptabel fil-type", + "error.avatar.dimensions.invalid": "Hold venligst bredte og højde på billedet under 3000 pixels", + "error.avatar.mime.forbidden": "Uacceptabel fil-type", "error.blueprint.notFound": "Blueprint \"{name}\" kunne ikke indlæses", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Ugyldig converter \"{converter}\"", "error.file.changeName.empty": "Navn kan ikke efterlades tomt", - "error.file.changeName.permission": - "Du har ikke tilladelse til at ændre navnet på filen \"{filename}\"", + "error.file.changeName.permission": "Du har ikke tilladelse til at ændre navnet på filen \"{filename}\"", "error.file.duplicate": "En fil med navnet \"{filename}\" eksisterer allerede", - "error.file.extension.forbidden": - "Uacceptabel fil-endelse", - "error.file.extension.missing": - "Du kan ikke uploade filer uden fil-endelse", + "error.file.extension.forbidden": "Uacceptabel fil-endelse", + "error.file.extension.missing": "Du kan ikke uploade filer uden fil-endelse", "error.file.maxheight": "Højden på billedet af billedet må ikke være større end {height} pixels", "error.file.maxsize": "Filen er for stor", "error.file.maxwidth": "Bredden af billedet må ikke være større end {width} pixels", - "error.file.mime.differs": - "Den uploadede fil skal være af samme mime type \"{mime}\"", + "error.file.mime.differs": "Den uploadede fil skal være af samme mime type \"{mime}\"", "error.file.mime.forbidden": "Media typen \"{mime}\" er ikke tilladt", "error.file.mime.invalid": "Ugyldig mime type: {mime}", - "error.file.mime.missing": - "Media typen for \"{filename}\" kan ikke bestemmes", + "error.file.mime.missing": "Media typen for \"{filename}\" kan ikke bestemmes", "error.file.minheight": "Højden af billedet skal mindst være {height} pixels", "error.file.minsize": "Filen er for lille", "error.file.minwidth": "Bredden af billedet skal mindst være {width} pixels", @@ -90,111 +83,77 @@ "error.license.email": "Indtast venligst en gyldig email adresse", "error.license.verification": "Licensen kunne ikke verificeres", - "error.page.changeSlug.permission": - "Du kan ikke \u00e6ndre denne sides URL", - "error.page.changeStatus.incomplete": - "Siden indeholder fejl og kan derfor ikke udgives", - "error.page.changeStatus.permission": - "Status for denne side kan ikke ændres", - "error.page.changeStatus.toDraft.invalid": - "Siden \"{slug}\" kan ikke konverteres om til en kladde", - "error.page.changeTemplate.invalid": - "Skabelonen for siden \"{slug}\" kan ikke ændres", - "error.page.changeTemplate.permission": - "Du har ikke tilladelse til at ændre skabelonen for \"{slug}\"", + "error.page.changeSlug.permission": "Du kan ikke \u00e6ndre denne sides URL", + "error.page.changeStatus.incomplete": "Siden indeholder fejl og kan derfor ikke udgives", + "error.page.changeStatus.permission": "Status for denne side kan ikke ændres", + "error.page.changeStatus.toDraft.invalid": "Siden \"{slug}\" kan ikke konverteres om til en kladde", + "error.page.changeTemplate.invalid": "Skabelonen for siden \"{slug}\" kan ikke ændres", + "error.page.changeTemplate.permission": "Du har ikke tilladelse til at ændre skabelonen for \"{slug}\"", "error.page.changeTitle.empty": "Titlen kan ikke være tom", - "error.page.changeTitle.permission": - "Du har ikke tilladelse til at ændre titlen for \"{slug}\"", + "error.page.changeTitle.permission": "Du har ikke tilladelse til at ændre titlen for \"{slug}\"", "error.page.create.permission": "Du har ikke tilladelse til at oprette \"{slug}\"", "error.page.delete": "Siden \"{slug}\" kan ikke slettes", "error.page.delete.confirm": "Indtast venligst sidens titel for at bekræfte", - "error.page.delete.hasChildren": - "Siden har unsersider og kan derfor ikke slettes", + "error.page.delete.hasChildren": "Siden har unsersider og kan derfor ikke slettes", "error.page.delete.permission": "Du har ikke tilladelse til at slette \"{slug}\"", - "error.page.draft.duplicate": - "En sidekladde med URL-endelsen \"{slug}\" eksisterer allerede", - "error.page.duplicate": - "En side med URL-endelsen \"{slug}\" eksisterer allerede", + "error.page.draft.duplicate": "En sidekladde med URL-endelsen \"{slug}\" eksisterer allerede", + "error.page.duplicate": "En side med URL-endelsen \"{slug}\" eksisterer allerede", "error.page.duplicate.permission": "Du har ikke mulighed for at duplikere \"{slug}\"", "error.page.notFound": "Siden kunne ikke findes", - "error.page.num.invalid": - "Indtast venligst et gyldigt sorteringsnummer. Nummeret kan ikke være negativt.", + "error.page.num.invalid": "Indtast venligst et gyldigt sorteringsnummer. Nummeret kan ikke være negativt.", "error.page.slug.invalid": "Indtast venligst en gyldig URL prefix", "error.page.sort.permission": "Siden \"{slug}\" kan ikke sorteres", "error.page.status.invalid": "Sæt venligst en gyldig status for siden", "error.page.undefined": "Siden kunne ikke findes", "error.page.update.permission": "Du har ikke tilladelse til at opdatere \"{slug}\"", - "error.section.files.max.plural": - "Du kan ikk tilføje mere end {max} filer til \"{section}\" sektionen", - "error.section.files.max.singular": - "Du kan ikke tilføje mere end en fil til \"{section}\" sektionen", - "error.section.files.min.plural": - "Sektionen \"{section}\" kræver mindst {min} filer", - "error.section.files.min.singular": - "Sektionen \"{section}\" kræver mindst en fil", + "error.section.files.max.plural": "Du kan ikk tilføje mere end {max} filer til \"{section}\" sektionen", + "error.section.files.max.singular": "Du kan ikke tilføje mere end en fil til \"{section}\" sektionen", + "error.section.files.min.plural": "Sektionen \"{section}\" kræver mindst {min} filer", + "error.section.files.min.singular": "Sektionen \"{section}\" kræver mindst en fil", - "error.section.pages.max.plural": - "Du kan ikke tilføje flere end {max} sider til \"{section}\" sektionen", - "error.section.pages.max.singular": - "Du kan ikke tilføje mere end een side til \"{section}\" sektionen", - "error.section.pages.min.plural": - "Sektionen \"{section}\" kræver mindst {min} sider", - "error.section.pages.min.singular": - "Sektionen \"{section}\" kræver mindst en side", + "error.section.pages.max.plural": "Du kan ikke tilføje flere end {max} sider til \"{section}\" sektionen", + "error.section.pages.max.singular": "Du kan ikke tilføje mere end een side til \"{section}\" sektionen", + "error.section.pages.min.plural": "Sektionen \"{section}\" kræver mindst {min} sider", + "error.section.pages.min.singular": "Sektionen \"{section}\" kræver mindst en side", "error.section.notLoaded": "Sektionen \"{section}\" kunne ikke indlæses", "error.section.type.invalid": "Sektionstypen \"{type}\" er ikke gyldig", "error.site.changeTitle.empty": "Titlen kan ikke være tom", - "error.site.changeTitle.permission": - "Du har ikke tilladelse til at ændre titlen på sitet", + "error.site.changeTitle.permission": "Du har ikke tilladelse til at ændre titlen på sitet", "error.site.update.permission": "Du har ikke tilladelse til at opdatere sitet", "error.template.default.notFound": "Standardskabelonen eksisterer ikke", - "error.user.changeEmail.permission": - "Du har ikke tilladelse til at ændre emailen for brugeren \"{name}\"", - "error.user.changeLanguage.permission": - "Du har ikke tilladelse til at ændre sproget for brugeren \"{name}\"", - "error.user.changeName.permission": - "Du har ikke tilladelse til at ændre navn på brugeren \"{name}\"", - "error.user.changePassword.permission": - "Du har ikke tilladelse til at ændre adgangskoden for brugeren \"{name}\"", - "error.user.changeRole.lastAdmin": - "Rollen for den sidste admin kan ikke ændres", - "error.user.changeRole.permission": - "Du har ikke tilladelse til at ændre rollen for brugeren \"{name}\"", - "error.user.changeRole.toAdmin": - "Du har ikke tilladelse til at tildele nogen admin rollen", + "error.user.changeEmail.permission": "Du har ikke tilladelse til at ændre emailen for brugeren \"{name}\"", + "error.user.changeLanguage.permission": "Du har ikke tilladelse til at ændre sproget for brugeren \"{name}\"", + "error.user.changeName.permission": "Du har ikke tilladelse til at ændre navn på brugeren \"{name}\"", + "error.user.changePassword.permission": "Du har ikke tilladelse til at ændre adgangskoden for brugeren \"{name}\"", + "error.user.changeRole.lastAdmin": "Rollen for den sidste admin kan ikke ændres", + "error.user.changeRole.permission": "Du har ikke tilladelse til at ændre rollen for brugeren \"{name}\"", + "error.user.changeRole.toAdmin": "Du har ikke tilladelse til at tildele nogen admin rollen", "error.user.create.permission": "Du har ikke tilladelse til at oprette denne bruger", "error.user.delete": "Brugeren kunne ikke slettes", "error.user.delete.lastAdmin": "Du kan ikke slette den sidste admin", "error.user.delete.lastUser": "Den sidste bruger kan ikke slettes", - "error.user.delete.permission": - "Du har ikke tilladelse til at slette denne bruger", - "error.user.duplicate": - "En bruger med email adresse \"{email}\" eksisterer allerede", + "error.user.delete.permission": "Du har ikke tilladelse til at slette denne bruger", + "error.user.duplicate": "En bruger med email adresse \"{email}\" eksisterer allerede", "error.user.email.invalid": "Indtast venligst en gyldig email adresse", "error.user.language.invalid": "Indtast venligst et gyldigt sprog", "error.user.notFound": "Brugeren kunne ikke findes", - "error.user.password.invalid": - "Indtast venligst en gyldig adgangskode. Adgangskoder skal minimum være 8 tegn lange.", + "error.user.password.invalid": "Indtast venligst en gyldig adgangskode. Adgangskoder skal minimum være 8 tegn lange.", "error.user.password.notSame": "Bekr\u00e6ft venligst adgangskoden", "error.user.password.undefined": "Brugeren har ikke en adgangskode", "error.user.role.invalid": "Indtast venligst en gyldig rolle", - "error.user.update.permission": - "Du har ikke tilladelse til at opdatere brugeren \"{name}\"", + "error.user.update.permission": "Du har ikke tilladelse til at opdatere brugeren \"{name}\"", "error.validation.accepted": "Bekræft venligst", "error.validation.alpha": "Indtast venligst kun bogstaver imellem a-z", - "error.validation.alphanum": - "Indtast venligst kun bogstaver og tal imellem a-z eller 0-9", - "error.validation.between": - "Indtast venligst en værdi imellem \"{min}\" og \"{max}\"", + "error.validation.alphanum": "Indtast venligst kun bogstaver og tal imellem a-z eller 0-9", + "error.validation.between": "Indtast venligst en værdi imellem \"{min}\" og \"{max}\"", "error.validation.boolean": "Venligst bekræft eller afvis", - "error.validation.contains": - "Indtast venligst en værdi der indeholder \"{needle}\"", + "error.validation.contains": "Indtast venligst en værdi der indeholder \"{needle}\"", "error.validation.date": "Indtast venligst en gyldig dato", "error.validation.date.after": "Indtast venligst en dato efter {date}", "error.validation.date.before": "Indtast venligst en dato før {date}", @@ -210,18 +169,14 @@ "error.validation.less": "Indtast venligst en værdi mindre end {max}", "error.validation.match": "Værdien matcher ikke det forventede mønster", "error.validation.max": "Indtast venligst en værdi lig med eller lavere end {max}", - "error.validation.maxlength": - "Indtast venligst en kortere værdi. (maks. {max} karakterer)", + "error.validation.maxlength": "Indtast venligst en kortere værdi. (maks. {max} karakterer)", "error.validation.maxwords": "Indtast ikke flere end {max} ord", "error.validation.min": "Indtast en værdi lig med eller højere end {min}", - "error.validation.minlength": - "Indtast venligst en længere værdi. (min. {min} karakterer)", + "error.validation.minlength": "Indtast venligst en længere værdi. (min. {min} karakterer)", "error.validation.minwords": "Indtast venligst mindst {min} ord", "error.validation.more": "Indtast venligst en værdi større end {min}", - "error.validation.notcontains": - "Indtast venligst en værdi der ikke indeholder \"{needle}\"", - "error.validation.notin": - "Indtast venligst ikke nogen af følgende: ({notIn})", + "error.validation.notcontains": "Indtast venligst en værdi der ikke indeholder \"{needle}\"", + "error.validation.notin": "Indtast venligst ikke nogen af følgende: ({notIn})", "error.validation.option": "Vælg venligst en gyldig mulighed", "error.validation.num": "Indtast venligst et gyldigt nummer", "error.validation.required": "Indtast venligst noget", @@ -238,8 +193,7 @@ "field.structure.empty": "Ingen indtastninger endnu.", "field.users.empty": "Ingen brugere er valgt", - "file.delete.confirm": - "\u00d8nsker du virkelig at slette denne fil?", + "file.delete.confirm": "\u00d8nsker du virkelig at slette denne fil?", "files": "Filer", "files.empty": "Ingen filer endnu", @@ -251,29 +205,22 @@ "installation": "Installation", "installation.completed": "Panelet er blevet installeret", "installation.disabled": "Panel installationen er deaktiveret på offentlige servere som standard. Kør venligst installationen på en lokal maskine eller aktiver det med panel.install panel.install muligheden.", - "installation.issues.accounts": - "\/site\/accounts er ikke skrivbar", - "installation.issues.content": - "Content mappen samt alle underliggende filer og mapper skal v\u00e6re skrivbare.", + "installation.issues.accounts": "\/site\/accounts er ikke skrivbar", + "installation.issues.content": "Content mappen samt alle underliggende filer og mapper skal v\u00e6re skrivbare.", "installation.issues.curl": "CURL extension er påkrævet", "installation.issues.headline": "Panelet kan ikke installeres", - "installation.issues.mbstring": - "MB String extension er påkrævet", - "installation.issues.media": - "/media mappen eksisterer ikke eller er ikke skrivbar", + "installation.issues.mbstring": "MB String extension er påkrævet", + "installation.issues.media": "/media mappen eksisterer ikke eller er ikke skrivbar", "installation.issues.php": "Sikre dig at der benyttes PHP 7+", - "installation.issues.server": - "Kirby kræver Apache, Nginx eller Caddy", + "installation.issues.server": "Kirby kræver Apache, Nginx eller Caddy", "installation.issues.sessions": "/site/sessions mappen eksisterer ikke eller er ikke skrivbar", "language": "Sprog", "language.code": "Kode", "language.convert": "Gør standard", - "language.convert.confirm": - "

Ønsker du virkelig at konvertere {name} til standardsproget? Dette kan ikke fortrydes.

Hvis {name} har uoversat indhold, vil der ikke længere være et gyldigt tilbagefald og dele af dit website vil måske fremstå tomt.

", + "language.convert.confirm": "

Ønsker du virkelig at konvertere {name} til standardsproget? Dette kan ikke fortrydes.

Hvis {name} har uoversat indhold, vil der ikke længere være et gyldigt tilbagefald og dele af dit website vil måske fremstå tomt.

", "language.create": "Tilføj nyt sprog", - "language.delete.confirm": - "Ønsker du virkelig at slette sproget {name} inklusiv alle oversættelser? Kan ikke fortrydes!", + "language.delete.confirm": "Ønsker du virkelig at slette sproget {name} inklusiv alle oversættelser? Kan ikke fortrydes!", "language.deleted": "Sproget er blevet slettet", "language.direction": "Læseretning", "language.direction.ltr": "Venstre mod højre", @@ -292,8 +239,7 @@ "license": "Kirby licens", "license.buy": "Køb en licens", "license.register": "Registrer", - "license.register.help": - "Du modtog din licenskode efter købet via email. Venligst kopier og indsæt den for at registrere.", + "license.register.help": "Du modtog din licenskode efter købet via email. Venligst kopier og indsæt den for at registrere.", "license.register.label": "Indtast venligst din licenskode", "license.register.success": "Tak for din støtte af Kirby", "license.unregistered": "Dette er en uregistreret demo af Kirby", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Vælg venligst position", "page.changeStatus.select": "Vælg en ny status", "page.changeTemplate": "Skift skabelon", - "page.delete.confirm": - "\u00d8nsker du virkelig at slette denne side?", - "page.delete.confirm.subpages": - "Denne side har undersider.
Alle undersider vil også blive slettet.", + "page.delete.confirm": "\u00d8nsker du virkelig at slette denne side?", + "page.delete.confirm.subpages": "Denne side har undersider.
Alle undersider vil også blive slettet.", "page.delete.confirm.title": "Indtast sidens titel for at bekræfte", "page.draft.create": "Opret kladde", "page.duplicate.appendix": "Kopier", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Kopier sider", "page.status": "Status", "page.status.draft": "Kladde", - "page.status.draft.description": - "Siden er i kladdetilstand og kun synlig for redaktører der er logget ind", + "page.status.draft.description": "The page is in draft mode and only visible for logged in editors or via secret link", "page.status.listed": "Offentlig", "page.status.listed.description": "Siden er offentlig for enhver", "page.status.unlisted": "Ulistede", @@ -388,6 +331,7 @@ "replace": "Erstat", "retry": "Pr\u00f8v igen", "revert": "Kass\u00e9r", + "revert.confirm": "Do you really want to delete all unsaved changes?", "role": "Rolle", "role.admin.description": "Admin har alle rettigheder", @@ -451,8 +395,7 @@ "url.placeholder": "https://example.com", "user": "Bruger", - "user.blueprint": - "Du kan definere yderligere sektioner og formular felter for denne brugerrolle i /site/blueprints/users/{role}.yml", + "user.blueprint": "Du kan definere yderligere sektioner og formular felter for denne brugerrolle i /site/blueprints/users/{role}.yml", "user.changeEmail": "Skift email", "user.changeLanguage": "Skift sprog", "user.changeName": "Omdøb denne bruger", @@ -463,8 +406,7 @@ "user.changeRole.select": "Vælg en ny rolle", "user.create": "Tilføj en ny bruger", "user.delete": "Slet denne bruger", - "user.delete.confirm": - "\u00d8nsker du virkelig at slette denne bruger?", + "user.delete.confirm": "\u00d8nsker du virkelig at slette denne bruger?", "users": "Brugere", diff --git a/kirby/i18n/translations/de.json b/kirby/i18n/translations/de.json index a2e3b3c..63f0129 100755 --- a/kirby/i18n/translations/de.json +++ b/kirby/i18n/translations/de.json @@ -31,7 +31,7 @@ "dialog.files.empty": "Keine verfügbaren Dateien", "dialog.pages.empty": "Keine verfügbaren Seiten", - "dialog.users.empty": "Keine verfügbaren Benutzer", + "dialog.users.empty": "Keine verfügbaren Benutzer*innen", "email": "E-Mail", "email.placeholder": "mail@beispiel.de", @@ -42,10 +42,8 @@ "error.avatar.create.fail": "Das Profilbild konnte nicht hochgeladen werden", "error.avatar.delete.fail": "Das Profilbild konnte nicht gel\u00f6scht werden", - "error.avatar.dimensions.invalid": - "Bitte lade ein Profilbild hoch, das nicht breiter oder höher als 3000 Pixel ist.", - "error.avatar.mime.forbidden": - "Das Profilbild muss vom Format JPEG oder PNG sein", + "error.avatar.dimensions.invalid": "Bitte lade ein Profilbild hoch, das nicht breiter oder höher als 3000 Pixel ist.", + "error.avatar.mime.forbidden": "Das Profilbild muss vom Format JPEG oder PNG sein", "error.blueprint.notFound": "Das Blueprint \"{name}\" konnte nicht geladen werden.", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Ungültiger Konverter: \"{converter}\"", "error.file.changeName.empty": "Bitte gib einen Namen an", - "error.file.changeName.permission": - "Du darfst den Dateinamen von \"{filename}\" nicht ändern", + "error.file.changeName.permission": "Du darfst den Dateinamen von \"{filename}\" nicht ändern", "error.file.duplicate": "Eine Datei mit dem Dateinamen \"{filename}\" besteht bereits", - "error.file.extension.forbidden": - "Verbotene Dateiendung \"{extension}\"", - "error.file.extension.missing": - "Du kannst keine Dateien ohne Dateiendung hochladen", + "error.file.extension.forbidden": "Verbotene Dateiendung \"{extension}\"", + "error.file.extension.missing": "Du kannst keine Dateien ohne Dateiendung hochladen", "error.file.maxheight": "Die Bildhöhe darf {height} Pixel nicht überschreiten", "error.file.maxsize": "Die Datei ist zu groß", "error.file.maxwidth": "Die Bildbreite darf {height} Pixel nicht überschreiten", - "error.file.mime.differs": - "Die Datei muss den Medientyp \"{mime}\" haben.", + "error.file.mime.differs": "Die Datei muss den Medientyp \"{mime}\" haben.", "error.file.mime.forbidden": "Der Medientyp \"{mime}\" ist nicht erlaubt", "error.file.mime.invalid": "Ungültiger Dateityp: {mime}", - "error.file.mime.missing": - "Der Medientyp für \"{filename}\" konnte nicht erkannt werden", + "error.file.mime.missing": "Der Medientyp für \"{filename}\" konnte nicht erkannt werden", "error.file.minheight": "Die Bildhöhe muss mindestens {height} Pixel betragen", "error.file.minsize": "Die Datei ist zu klein", "error.file.minwidth": "Die Bildbreite muss mindestens {height} Pixel betragen", @@ -90,111 +83,77 @@ "error.license.email": "Bitte gib eine gültige E-Mailadresse an", "error.license.verification": "Die Lizenz konnte nicht verifiziert werden", - "error.page.changeSlug.permission": - "Du darfst die URL der Seite \"{slug}\" nicht ändern", - "error.page.changeStatus.incomplete": - "Die Seite ist nicht vollständig und kann daher nicht veröffentlicht werden", - "error.page.changeStatus.permission": - "Der Status der Seite kann nicht geändert werden", - "error.page.changeStatus.toDraft.invalid": - "Die Seite \"{slug}\" kann nicht in einen Entwurf umgewandelt werden", - "error.page.changeTemplate.invalid": - "Die Vorlage für die Seite \"{slug}\" kann nicht geändert werden", - "error.page.changeTemplate.permission": - "Du kannst die Vorlage für die Seite \"{slug}\" nicht ändern", + "error.page.changeSlug.permission": "Du darfst die URL der Seite \"{slug}\" nicht ändern", + "error.page.changeStatus.incomplete": "Die Seite ist nicht vollständig und kann daher nicht veröffentlicht werden", + "error.page.changeStatus.permission": "Der Status der Seite kann nicht geändert werden", + "error.page.changeStatus.toDraft.invalid": "Die Seite \"{slug}\" kann nicht in einen Entwurf umgewandelt werden", + "error.page.changeTemplate.invalid": "Die Vorlage für die Seite \"{slug}\" kann nicht geändert werden", + "error.page.changeTemplate.permission": "Du kannst die Vorlage für die Seite \"{slug}\" nicht ändern", "error.page.changeTitle.empty": "Bitte gib einen Titel an", - "error.page.changeTitle.permission": - "Du kannst den Titel für die Seite \"{slug}\" nicht ändern", + "error.page.changeTitle.permission": "Du kannst den Titel für die Seite \"{slug}\" nicht ändern", "error.page.create.permission": "Du kannst die Seite \"{slug}\" nicht anlegen", "error.page.delete": "Die Seite \"{slug}\" kann nicht gelöscht werden", "error.page.delete.confirm": "Bitte gib zur Bestätigung den Seitentitel ein", - "error.page.delete.hasChildren": - "Die Seite hat Unterseiten und kann nicht gelöscht werden", + "error.page.delete.hasChildren": "Die Seite hat Unterseiten und kann nicht gelöscht werden", "error.page.delete.permission": "Du kannst die Seite \"{slug}\" nicht löschen", - "error.page.draft.duplicate": - "Ein Entwurf mit dem URL-Kürzel \"{slug}\" besteht bereits", - "error.page.duplicate": - "Eine Seite mit dem URL-Kürzel \"{slug}\" besteht bereits", + "error.page.draft.duplicate": "Ein Entwurf mit dem URL-Kürzel \"{slug}\" besteht bereits", + "error.page.duplicate": "Eine Seite mit dem URL-Kürzel \"{slug}\" besteht bereits", "error.page.duplicate.permission": "Du kannst die Seite \"{slug}\" nicht duplizieren", "error.page.notFound": "Die Seite \"{slug}\" konnte nicht gefunden werden", - "error.page.num.invalid": - "Bitte gib eine gültige Sortierungszahl an. Negative Zahlen sind nicht erlaubt.", + "error.page.num.invalid": "Bitte gib eine gültige Sortierungszahl an. Negative Zahlen sind nicht erlaubt.", "error.page.slug.invalid": "Bitte gib ein gültiges URL-Kürzel an", "error.page.sort.permission": "Die Seite \"{slug}\" kann nicht umsortiert werden", "error.page.status.invalid": "Bitte gib einen gültigen Seitenstatus an", "error.page.undefined": "Die Seite konnte nicht gefunden werden", "error.page.update.permission": "Du kannst die Seite \"{slug}\" nicht editieren", - "error.section.files.max.plural": - "Bitte füge nicht mehr als {max} Dateien zum Bereich \"{section}\" hinzu", - "error.section.files.max.singular": - "Bitte füge nicht mehr als eine Datei zum Bereich \"{section}\" hinzu", - "error.section.files.min.plural": - "Der Bereich \"{section}\" benötigt mindestens {min} Dateien", - "error.section.files.min.singular": - "Der Bereich \"{section}\" benötigt mindestens eine Datei", + "error.section.files.max.plural": "Bitte füge nicht mehr als {max} Dateien zum Bereich \"{section}\" hinzu", + "error.section.files.max.singular": "Bitte füge nicht mehr als eine Datei zum Bereich \"{section}\" hinzu", + "error.section.files.min.plural": "Der Bereich \"{section}\" benötigt mindestens {min} Dateien", + "error.section.files.min.singular": "Der Bereich \"{section}\" benötigt mindestens eine Datei", - "error.section.pages.max.plural": - "Bitte füge nicht mehr als {max} Seiten zum Bereich \"{section}\" hinzu", - "error.section.pages.max.singular": - "Bitte füge nicht mehr als eine Seite zum Bereich \"{section}\" hinzu", - "error.section.pages.min.plural": - "Der Bereich \"{section}\" benötigt mindestens {min} Seiten", - "error.section.pages.min.singular": - "Der Bereich \"{section}\" benötigt mindestens eine Seite", + "error.section.pages.max.plural": "Bitte füge nicht mehr als {max} Seiten zum Bereich \"{section}\" hinzu", + "error.section.pages.max.singular": "Bitte füge nicht mehr als eine Seite zum Bereich \"{section}\" hinzu", + "error.section.pages.min.plural": "Der Bereich \"{section}\" benötigt mindestens {min} Seiten", + "error.section.pages.min.singular": "Der Bereich \"{section}\" benötigt mindestens eine Seite", "error.section.notLoaded": "Der Bereich \"{name}\" konnte nicht geladen werden", "error.section.type.invalid": "Der Bereichstyp \"{type}\" ist nicht gültig", "error.site.changeTitle.empty": "Bitte gib einen Titel an", - "error.site.changeTitle.permission": - "Du kannst den Titel der Seite nicht ändern", + "error.site.changeTitle.permission": "Du kannst den Titel der Seite nicht ändern", "error.site.update.permission": "Du darfst die Seite nicht editieren", "error.template.default.notFound": "Die \"Default\"-Vorlage existiert nicht", - "error.user.changeEmail.permission": - "Du kannst die E-Mailadresse für den Benutzer \"{name}\" nicht ändern", - "error.user.changeLanguage.permission": - "Du kannst die Sprache für den Benutzer \"{name}\" nicht ändern", - "error.user.changeName.permission": - "Du kannst den Namen für den Benutzer \"{name}\" nicht ändern", - "error.user.changePassword.permission": - "Du kannst das Passwort für den Benutzer \"{name}\" nicht ändern", - "error.user.changeRole.lastAdmin": - "Die Rolle des letzten Administrators kann nicht geändert werden", - "error.user.changeRole.permission": - "Du kannst die Rolle für den Benutzer \"{name}\" nicht ändern", - "error.user.changeRole.toAdmin": - "Du darfst die Admin Rolle nicht an andere Benutzer vergeben", + "error.user.changeEmail.permission": "Du kannst die E-Mailadresse für den Benutzer \"{name}\" nicht ändern", + "error.user.changeLanguage.permission": "Du kannst die Sprache für den Benutzer \"{name}\" nicht ändern", + "error.user.changeName.permission": "Du kannst den Namen für den Benutzer \"{name}\" nicht ändern", + "error.user.changePassword.permission": "Du kannst das Passwort für den Benutzer \"{name}\" nicht ändern", + "error.user.changeRole.lastAdmin": "Die Rolle des letzten Administrators kann nicht geändert werden", + "error.user.changeRole.permission": "Du kannst die Rolle für den Benutzer \"{name}\" nicht ändern", + "error.user.changeRole.toAdmin": "Du darfst die Admin Rolle nicht an andere Benutzer*innen vergeben", "error.user.create.permission": "Du kannst diesen Benutzer nicht anlegen", "error.user.delete": "Der Benutzer \"{name}\" konnte nicht gelöscht werden", "error.user.delete.lastAdmin": "Du kannst den letzten Admin nicht l\u00f6schen", "error.user.delete.lastUser": "Der letzte Benutzer kann nicht gelöscht werden", - "error.user.delete.permission": - "Du darfst den Benutzer \"{name}\" nicht löschen", - "error.user.duplicate": - "Ein Benutzer mit der E-Mailadresse \"{email}\" besteht bereits", + "error.user.delete.permission": "Du darfst den Benutzer \"{name}\" nicht löschen", + "error.user.duplicate": "Ein Benutzer mit der E-Mailadresse \"{email}\" besteht bereits", "error.user.email.invalid": "Bitte gib eine gültige E-Mailadresse an", "error.user.language.invalid": "Bitte gib eine gültige Sprache an", "error.user.notFound": "Der Benutzer \"{name}\" wurde nicht gefunden", - "error.user.password.invalid": - "Bitte gib ein gültiges Passwort ein. Passwörter müssen mindestens 8 Zeichen lang sein.", + "error.user.password.invalid": "Bitte gib ein gültiges Passwort ein. Passwörter müssen mindestens 8 Zeichen lang sein.", "error.user.password.notSame": "Die Passwörter stimmen nicht überein", "error.user.password.undefined": "Der Benutzer hat kein Passwort", "error.user.role.invalid": "Bitte gib eine gültige Rolle an", - "error.user.update.permission": - "Du darfst den den Benutzer \"{name}\" nicht editieren", + "error.user.update.permission": "Du darfst den den Benutzer \"{name}\" nicht editieren", "error.validation.accepted": "Bitte bestätige", "error.validation.alpha": "Bitte gib nur Zeichen zwischen A und Z ein", - "error.validation.alphanum": - "Bitte gib nur Zeichen zwischen A und Z und Zahlen zwischen 0 und 9 ein", - "error.validation.between": - "Bitte gib einen Wert zwischen \"{min}\" und \"{max}\" ein", + "error.validation.alphanum": "Bitte gib nur Zeichen zwischen A und Z und Zahlen zwischen 0 und 9 ein", + "error.validation.between": "Bitte gib einen Wert zwischen \"{min}\" und \"{max}\" ein", "error.validation.boolean": "Bitte bestätige oder lehne ab", - "error.validation.contains": - "Bitte gib einen Wert ein, der \"{needle}\" enthält", + "error.validation.contains": "Bitte gib einen Wert ein, der \"{needle}\" enthält", "error.validation.date": "Bitte gib ein gültiges Datum ein", "error.validation.date.after": "Bitte gib ein Datum nach dem {date} ein", "error.validation.date.before": "Bitte gib ein Datum vor dem {date} ein", @@ -210,18 +169,14 @@ "error.validation.less": "Bitte gib einen Wert kleiner als {max} ein", "error.validation.match": "Der Wert entspricht nicht dem erwarteten Muster", "error.validation.max": "Bitte gib einen Wert ein, der nicht größer als {max} ist", - "error.validation.maxlength": - "Bitte gib einen kürzeren Text ein (max. {max} Zeichen)", + "error.validation.maxlength": "Bitte gib einen kürzeren Text ein (max. {max} Zeichen)", "error.validation.maxwords": "Bitte nutze nicht mehr als {max} Wort(e)", "error.validation.min": "Bitte gib einen Wert ein, der nicht kleiner als {min} ist", - "error.validation.minlength": - "Bitte gib einen längeren Text ein. (min. {min} Zeichen)", + "error.validation.minlength": "Bitte gib einen längeren Text ein. (min. {min} Zeichen)", "error.validation.minwords": "Bitte nutze mindestens {min} Wort(e)", "error.validation.more": "Bitte gib einen größeren Wert als {min} ein", - "error.validation.notcontains": - "Bitte gib einen Wert ein, der nicht \"{needle}\" enthält", - "error.validation.notin": - "Bitte gib keinen der folgenden Werte ein: ({notIn})", + "error.validation.notcontains": "Bitte gib einen Wert ein, der nicht \"{needle}\" enthält", + "error.validation.notin": "Bitte gib keinen der folgenden Werte ein: ({notIn})", "error.validation.option": "Bitte wähle eine gültige Option aus", "error.validation.num": "Bitte gib eine gültige Zahl an", "error.validation.required": "Bitte gib etwas ein", @@ -238,8 +193,7 @@ "field.structure.empty": "Es bestehen keine Eintr\u00e4ge.", "field.users.empty": "Keine Benutzer ausgewählt", - "file.delete.confirm": - "Willst du die Datei {filename}
wirklich löschen?", + "file.delete.confirm": "Willst du die Datei {filename}
wirklich löschen?", "files": "Dateien", "files.empty": "Keine Dateien", @@ -251,29 +205,22 @@ "installation": "Installation", "installation.completed": "Das Panel wurde installiert", "installation.disabled": "Die Panel-Installation ist auf öffentlichen Servern automatisch deaktiviert. Bitte installiere das Panel auf einem lokalen Server oder aktiviere die Installation gezielt mit der panel.install Option. ", - "installation.issues.accounts": - "/site/accounts ist nicht beschreibbar", - "installation.issues.content": - "/content existiert nicht oder ist nicht beschreibbar", + "installation.issues.accounts": "/site/accounts ist nicht beschreibbar", + "installation.issues.content": "/content existiert nicht oder ist nicht beschreibbar", "installation.issues.curl": "Die CURL Erweiterung wird benötigt", "installation.issues.headline": "Das Panel kann nicht installiert werden", - "installation.issues.mbstring": - "Die MB String Erweiterung wird benötigt", - "installation.issues.media": - "Der /media Ordner ist nicht beschreibbar", + "installation.issues.mbstring": "Die MB String Erweiterung wird benötigt", + "installation.issues.media": "Der /media Ordner ist nicht beschreibbar", "installation.issues.php": "Bitte verwende PHP 7+", - "installation.issues.server": - "Kirby benötigt Apache, Nginx or Caddy", + "installation.issues.server": "Kirby benötigt Apache, Nginx or Caddy", "installation.issues.sessions": "/site/sessions ist nicht beschreibbar", "language": "Sprache", "language.code": "Code", "language.convert": "Als Standard auswählen", - "language.convert.confirm": - "

Willst du {name} wirklich in die Standardsprache umwandeln? Dieser Schritt kann nicht rückgängig gemacht werden.

Wenn {name} unübersetzte Felder hat, gibt es keine gültigen Standardwerte für diese Felder und Inhalte könnten verloren gehen.

", + "language.convert.confirm": "

Willst du {name} wirklich in die Standardsprache umwandeln? Dieser Schritt kann nicht rückgängig gemacht werden.

Wenn {name} unübersetzte Felder hat, gibt es keine gültigen Standardwerte für diese Felder und Inhalte könnten verloren gehen.

", "language.create": "Neue Sprache anlegen", - "language.delete.confirm": - "Willst du {name} inklusive aller Übersetzungen wirklich löschen? Dieser Schritt kann nicht rückgängig gemacht werden!", + "language.delete.confirm": "Willst du {name} inklusive aller Übersetzungen wirklich löschen? Dieser Schritt kann nicht rückgängig gemacht werden!", "language.deleted": "Die Sprache wurde gelöscht", "language.direction": "Leserichtung", "language.direction.ltr": "Von links nach rechts", @@ -292,8 +239,7 @@ "license": "Lizenz", "license.buy": "Kaufe eine Lizenz", "license.register": "Registrieren", - "license.register.help": - "Den Lizenzcode findest du in der Bestätigungsmail zu deinem Kauf. Bitte kopiere und füge ihn ein, um Kirby zu registrieren.", + "license.register.help": "Den Lizenzcode findest du in der Bestätigungsmail zu deinem Kauf. Bitte kopiere und füge ihn ein, um Kirby zu registrieren.", "license.register.label": "Bitte gib deinen Lizenzcode ein", "license.register.success": "Vielen Dank für deine Unterstützung", "license.unregistered": "Dies ist eine unregistrierte Kirby-Demo", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Bitte wähle eine Position aus", "page.changeStatus.select": "Wähle einen neuen Status aus", "page.changeTemplate": "Vorlage ändern", - "page.delete.confirm": - "Willst du die Seite {title} wirklich löschen?", - "page.delete.confirm.subpages": - "Diese Seite hat Unterseiten.
Alle Unterseiten werden ebenfalls gelöscht.", + "page.delete.confirm": "Willst du die Seite {title} wirklich löschen?", + "page.delete.confirm.subpages": "Diese Seite hat Unterseiten.
Alle Unterseiten werden ebenfalls gelöscht.", "page.delete.confirm.title": "Gib zur Bestätigung den Seitentitel ein", "page.draft.create": "Entwurf anlegen", "page.duplicate.appendix": "Kopie", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Seiten kopieren", "page.status": "Status", "page.status.draft": "Entwurf", - "page.status.draft.description": - "Die Seite ist im Entwurfsmodus und ist nur für angemeldete Benutzer sichtbar", + "page.status.draft.description": "Die Seite ist im Entwurfsmodus und ist nur für angemeldete Benutzer*innen oder über den geheimen Link sichtbar", "page.status.listed": "Öffentlich", "page.status.listed.description": "Die Seite ist öffentlich für alle Besucher", "page.status.unlisted": "Ungelistet", @@ -388,10 +331,11 @@ "replace": "Ersetzen", "retry": "Wiederholen", "revert": "Verwerfen", + "revert.confirm": "Willst du wirklich alle ungespeicherten Änderungen verwerfen? ", "role": "Rolle", - "role.admin.description": "Administratoren haben alle Rechte", - "role.admin.title": "Administrator", + "role.admin.description": "Administrator*innen haben alle Rechte", + "role.admin.title": "Administrator*in", "role.all": "Alle", "role.empty": "Keine Benutzer mit dieser Rolle", "role.description.placeholder": "Keine Beschreibung", @@ -451,8 +395,7 @@ "url.placeholder": "https://beispiel.de", "user": "Benutzer", - "user.blueprint": - "Du kannst zusätzliche Felder und Bereiche für diese Benutzerrolle in /site/blueprints/users/{role}.yml anlegen", + "user.blueprint": "Du kannst zusätzliche Felder und Bereiche für diese Benutzerrolle in /site/blueprints/users/{role}.yml anlegen", "user.changeEmail": "E-Mail ändern", "user.changeLanguage": "Sprache ändern", "user.changeName": "Benutzer umbenennen", @@ -463,8 +406,7 @@ "user.changeRole.select": "Neue Rolle auswählen", "user.create": "Neuen Benutzer anlegen", "user.delete": "Benutzer löschen", - "user.delete.confirm": - "Willst du den Benutzer
{email} wirklich löschen?", + "user.delete.confirm": "Willst du den Benutzer
{email} wirklich löschen?", "users": "Benutzer", diff --git a/kirby/i18n/translations/el.json b/kirby/i18n/translations/el.json index d7b08eb..143bb15 100755 --- a/kirby/i18n/translations/el.json +++ b/kirby/i18n/translations/el.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "Δεν ήταν δυνατή η μεταφόρτωση της εικόνας προφίλ", "error.avatar.delete.fail": "Δεν ήταν δυνατή η διαγραφή της εικόνας προφίλ", - "error.avatar.dimensions.invalid": - "Διατηρήστε το πλάτος και το ύψος της εικόνας προφίλ κάτω από 3000 εικονοστοιχεία", - "error.avatar.mime.forbidden": - "\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 \u03b1\u03c1\u03c7\u03b5\u03af\u03bf\u03c5", + "error.avatar.dimensions.invalid": "Διατηρήστε το πλάτος και το ύψος της εικόνας προφίλ κάτω από 3000 εικονοστοιχεία", + "error.avatar.mime.forbidden": "\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 \u03b1\u03c1\u03c7\u03b5\u03af\u03bf\u03c5", "error.blueprint.notFound": "Δεν ήταν δυνατή η φόρτωση του προσχεδίου \"{name}\"", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Μη έγκυρος μετατροπέας \"{converter}\"", "error.file.changeName.empty": "The name must not be empty", - "error.file.changeName.permission": - "Δεν επιτρέπεται να αλλάξετε το όνομα του \"{filename}\"", + "error.file.changeName.permission": "Δεν επιτρέπεται να αλλάξετε το όνομα του \"{filename}\"", "error.file.duplicate": "Ένα αρχείο με το όνομα \"{filename}\" υπάρχει ήδη", - "error.file.extension.forbidden": - "\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b5\u03c0\u03ad\u03ba\u03c4\u03b1\u03c3\u03b7 \u03b1\u03c1\u03c7\u03b5\u03af\u03bf\u03c5", - "error.file.extension.missing": - "Λείπει η επέκταση για το \"{filename}\"", + "error.file.extension.forbidden": "\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b5\u03c0\u03ad\u03ba\u03c4\u03b1\u03c3\u03b7 \u03b1\u03c1\u03c7\u03b5\u03af\u03bf\u03c5", + "error.file.extension.missing": "Λείπει η επέκταση για το \"{filename}\"", "error.file.maxheight": "The height of the image must not exceed {height} pixels", "error.file.maxsize": "The file is too large", "error.file.maxwidth": "The width of the image must not exceed {width} pixels", - "error.file.mime.differs": - "Το αρχείο πρέπει να είναι του ίδιου τύπου mime \"{mime}\"", + "error.file.mime.differs": "Το αρχείο πρέπει να είναι του ίδιου τύπου mime \"{mime}\"", "error.file.mime.forbidden": "Ο τύπος μέσου \"{mime}\" δεν επιτρέπεται", "error.file.mime.invalid": "Invalid mime type: {mime}", - "error.file.mime.missing": - "Δεν είναι δυνατό να εντοπιστεί ο τύπος μέσου για το \"{filename}\"", + "error.file.mime.missing": "Δεν είναι δυνατό να εντοπιστεί ο τύπος μέσου για το \"{filename}\"", "error.file.minheight": "The height of the image must be at least {height} pixels", "error.file.minsize": "The file is too small", "error.file.minwidth": "The width of the image must be at least {width} pixels", @@ -90,111 +83,77 @@ "error.license.email": "Παρακαλώ εισάγετε μια έγκυρη διεύθυνση ηλεκτρονικού ταχυδρομείου", "error.license.verification": "The license could not be verified", - "error.page.changeSlug.permission": - "Δεν επιτρέπεται να αλλάξετε το URL της σελίδας \"{slug}\"", - "error.page.changeStatus.incomplete": - "Δεν ήταν δυνατή η δημοσίευση της σελίδας καθώς περιέχει σφάλματα", - "error.page.changeStatus.permission": - "Δεν είναι δυνατή η αλλαγή κατάστασης για αυτή τη σελίδα", - "error.page.changeStatus.toDraft.invalid": - "Δεν είναι δυνατή η μετατροπή της σελίδας \"{slug}\" σε προσχέδιο", - "error.page.changeTemplate.invalid": - "Δεν είναι δυνατή η αλλαγή προτύπου για τη σελίδα \"{slug}\"", - "error.page.changeTemplate.permission": - "Δεν επιτρέπεται να αλλάξετε το πρότυπο για τη σελίδα \"{slug}\"", + "error.page.changeSlug.permission": "Δεν επιτρέπεται να αλλάξετε το URL της σελίδας \"{slug}\"", + "error.page.changeStatus.incomplete": "Δεν ήταν δυνατή η δημοσίευση της σελίδας καθώς περιέχει σφάλματα", + "error.page.changeStatus.permission": "Δεν είναι δυνατή η αλλαγή κατάστασης για αυτή τη σελίδα", + "error.page.changeStatus.toDraft.invalid": "Δεν είναι δυνατή η μετατροπή της σελίδας \"{slug}\" σε προσχέδιο", + "error.page.changeTemplate.invalid": "Δεν είναι δυνατή η αλλαγή προτύπου για τη σελίδα \"{slug}\"", + "error.page.changeTemplate.permission": "Δεν επιτρέπεται να αλλάξετε το πρότυπο για τη σελίδα \"{slug}\"", "error.page.changeTitle.empty": "Ο τίτλος δεν μπορεί να είναι κενός", - "error.page.changeTitle.permission": - "Δεν επιτρέπεται να αλλάξετε τον τίτλο για τη σελίδα \"{slug}\"", + "error.page.changeTitle.permission": "Δεν επιτρέπεται να αλλάξετε τον τίτλο για τη σελίδα \"{slug}\"", "error.page.create.permission": "Δεν επιτρέπεται να δημιουργήσετε τη σελίδα \"{slug}\"", "error.page.delete": "Δεν είναι δυνατή η διαγραφή της σελίδας \"{slug}\"", "error.page.delete.confirm": "Παρακαλώ εισάγετε τον τίτλο της σελίδας για επιβεβαίωση", - "error.page.delete.hasChildren": - "Δεν είναι δυνατή η διαγραφή της σελίδας καθώς περιέχει υποσελίδες", + "error.page.delete.hasChildren": "Δεν είναι δυνατή η διαγραφή της σελίδας καθώς περιέχει υποσελίδες", "error.page.delete.permission": "Δεν επιτρέπεται η διαγραφή της σελίδας \"{slug}\"", - "error.page.draft.duplicate": - "Υπάρχει ήδη ένα προσχέδιο σελίδας με την διεύθυνση URL \"{slug}\"", - "error.page.duplicate": - "Υπάρχει ήδη μια σελίδα με την διεύθυνση URL \"{slug}\"", + "error.page.draft.duplicate": "Υπάρχει ήδη ένα προσχέδιο σελίδας με την διεύθυνση URL \"{slug}\"", + "error.page.duplicate": "Υπάρχει ήδη μια σελίδα με την διεύθυνση URL \"{slug}\"", "error.page.duplicate.permission": "You are not allowed to duplicate \"{slug}\"", "error.page.notFound": "Δεν ήταν δυνατή η εύρεση της σελίδας \"{slug}\"", - "error.page.num.invalid": - "Παρακαλώ εισάγετε έναν έγκυρο αριθμό ταξινόμησης. Οι αριθμοί δεν μπορεί να είναι αρνητικοί.", + "error.page.num.invalid": "Παρακαλώ εισάγετε έναν έγκυρο αριθμό ταξινόμησης. Οι αριθμοί δεν μπορεί να είναι αρνητικοί.", "error.page.slug.invalid": "Παρακαλώ εισάγετε ένα έγκυρο πρόθεμα διεύθυνσης URL", "error.page.sort.permission": "Δεν είναι δυνατή η ταξινόμηση της σελίδας \"{slug}\"", "error.page.status.invalid": "Ορίστε μια έγκυρη κατάσταση σελίδας", "error.page.undefined": "Δεν ήταν δυνατή η εύρεση της σελίδας", "error.page.update.permission": "Δεν επιτρέπεται η ενημέρωση της σελίδας \"{slug}\"", - "error.section.files.max.plural": - "Δεν πρέπει να προσθέσετε περισσότερα από {max} αρχεία στην ενότητα \"{section}\"", - "error.section.files.max.singular": - "Δεν πρέπει να προσθέσετε περισσότερα από ένα αρχεία στην ενότητα \"{section}\"", - "error.section.files.min.plural": - "The \"{section}\" section requires at least {min} files", - "error.section.files.min.singular": - "The \"{section}\" section requires at least one file", + "error.section.files.max.plural": "Δεν πρέπει να προσθέσετε περισσότερα από {max} αρχεία στην ενότητα \"{section}\"", + "error.section.files.max.singular": "Δεν πρέπει να προσθέσετε περισσότερα από ένα αρχεία στην ενότητα \"{section}\"", + "error.section.files.min.plural": "The \"{section}\" section requires at least {min} files", + "error.section.files.min.singular": "The \"{section}\" section requires at least one file", - "error.section.pages.max.plural": - "Δεν μπορείτε να προσθέσετε περισσότερες από {max} σελίδες στην ενότητα \"{section}\"", - "error.section.pages.max.singular": - "Δεν μπορείτε να προσθέσετε περισσότερες από μία σελίδες στην ενότητα \"{section}\"", - "error.section.pages.min.plural": - "The \"{section}\" section requires at least {min} pages", - "error.section.pages.min.singular": - "The \"{section}\" section requires at least one page", + "error.section.pages.max.plural": "Δεν μπορείτε να προσθέσετε περισσότερες από {max} σελίδες στην ενότητα \"{section}\"", + "error.section.pages.max.singular": "Δεν μπορείτε να προσθέσετε περισσότερες από μία σελίδες στην ενότητα \"{section}\"", + "error.section.pages.min.plural": "The \"{section}\" section requires at least {min} pages", + "error.section.pages.min.singular": "The \"{section}\" section requires at least one page", "error.section.notLoaded": "Δεν ήταν δυνατή η φόρτωση της ενότητας \"{name}\"", "error.section.type.invalid": "Ο τύπος ενότητας \"{type}\" δεν είναι έγκυρος", "error.site.changeTitle.empty": "Ο τίτλος δεν μπορεί να είναι κενός", - "error.site.changeTitle.permission": - "Δεν επιτρέπεται να αλλάξετε τον τίτλο του ιστότοπου", + "error.site.changeTitle.permission": "Δεν επιτρέπεται να αλλάξετε τον τίτλο του ιστότοπου", "error.site.update.permission": "Δεν επιτρέπεται η ενημέρωση του ιστότοπου", "error.template.default.notFound": "Το προεπιλεγμένο πρότυπο δεν υπάρχει", - "error.user.changeEmail.permission": - "Δεν επιτρέπεται να αλλάξετε τη διεύθινση ηλεκτρονικού ταχυδρομείου για τον χρήστη \"{name}\"", - "error.user.changeLanguage.permission": - "Δεν επιτρέπεται να αλλάξετε τη γλώσσα για τον χρήστη \"{name}\"", - "error.user.changeName.permission": - "Δεν επιτρέπεται να αλλάξετε το όνομα του χρήστη \"{name}", - "error.user.changePassword.permission": - "Δεν επιτρέπεται να αλλάξετε τον κωδικό πρόσβασης για τον χρήστη \"{name}\"", - "error.user.changeRole.lastAdmin": - "Ο ρόλος του τελευταίου διαχειριστή δεν μπορεί να αλλάξει", - "error.user.changeRole.permission": - "Δεν επιτρέπεται να αλλάξετε το ρόλο του χρήστη \"{name}\"", - "error.user.changeRole.toAdmin": - "You are not allowed to promote someone to the admin role", + "error.user.changeEmail.permission": "Δεν επιτρέπεται να αλλάξετε τη διεύθινση ηλεκτρονικού ταχυδρομείου για τον χρήστη \"{name}\"", + "error.user.changeLanguage.permission": "Δεν επιτρέπεται να αλλάξετε τη γλώσσα για τον χρήστη \"{name}\"", + "error.user.changeName.permission": "Δεν επιτρέπεται να αλλάξετε το όνομα του χρήστη \"{name}", + "error.user.changePassword.permission": "Δεν επιτρέπεται να αλλάξετε τον κωδικό πρόσβασης για τον χρήστη \"{name}\"", + "error.user.changeRole.lastAdmin": "Ο ρόλος του τελευταίου διαχειριστή δεν μπορεί να αλλάξει", + "error.user.changeRole.permission": "Δεν επιτρέπεται να αλλάξετε το ρόλο του χρήστη \"{name}\"", + "error.user.changeRole.toAdmin": "You are not allowed to promote someone to the admin role", "error.user.create.permission": "Δεν επιτρέπεται η δημιουργία αυτού του χρήστη", "error.user.delete": "\u039f \u03c7\u03c1\u03ae\u03c3\u03c4\u03b7\u03c2 \u03b4\u03b5\u03bd \u03bc\u03c0\u03bf\u03c1\u03bf\u03cd\u03c3\u03b5 \u03bd\u03b1 \u03b4\u03b9\u03b1\u03b3\u03c1\u03b1\u03c6\u03b5\u03af", "error.user.delete.lastAdmin": "Δεν είναι δυνατή η διαγραφή του τελευταίου διαχειριστή", "error.user.delete.lastUser": "Δεν είναι δυνατή η διαγραφή του τελευταίου χρήστη", - "error.user.delete.permission": - "Δεν επιτρέπεται να διαγράψετ τον χρήστη \"{name}\"", - "error.user.duplicate": - "Ένας χρήστης με τη διεύθυνση ηλεκτρονικού ταχυδρομείου \"{email}\" υπάρχει ήδη", + "error.user.delete.permission": "Δεν επιτρέπεται να διαγράψετ τον χρήστη \"{name}\"", + "error.user.duplicate": "Ένας χρήστης με τη διεύθυνση ηλεκτρονικού ταχυδρομείου \"{email}\" υπάρχει ήδη", "error.user.email.invalid": "Παρακαλώ εισάγετε μια έγκυρη διεύθυνση ηλεκτρονικού ταχυδρομείου", "error.user.language.invalid": "Παρακαλώ εισαγάγετε μια έγκυρη γλώσσα", "error.user.notFound": "Δεν είναι δυνατή η εύρεση του χρήστη \"{name}\"", - "error.user.password.invalid": - "Παρακαλώ εισάγετε έναν έγκυρο κωδικό πρόσβασης. Οι κωδικοί πρόσβασης πρέπει να έχουν μήκος τουλάχιστον 8 χαρακτήρων.", + "error.user.password.invalid": "Παρακαλώ εισάγετε έναν έγκυρο κωδικό πρόσβασης. Οι κωδικοί πρόσβασης πρέπει να έχουν μήκος τουλάχιστον 8 χαρακτήρων.", "error.user.password.notSame": "\u03a0\u03b1\u03c1\u03b1\u03ba\u03b1\u03bb\u03bf\u03cd\u03bc\u03b5 \u03b5\u03c0\u03b9\u03b2\u03b5\u03b2\u03b1\u03b9\u03ce\u03c3\u03c4\u03b5 \u03c4\u03bf\u03bd \u039a\u03c9\u03b4\u03b9\u03ba\u03cc \u03a0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7\u03c2", "error.user.password.undefined": "Ο χρήστης δεν έχει κωδικό πρόσβασης", "error.user.role.invalid": "Παρακαλώ εισαγάγετε έναν έγκυρο ρόλο", - "error.user.update.permission": - "Δεν επιτρέπεται η ενημέρωση του χρήστη \"{name}\"", + "error.user.update.permission": "Δεν επιτρέπεται η ενημέρωση του χρήστη \"{name}\"", "error.validation.accepted": "Παρακαλώ επιβεβαιώστε", "error.validation.alpha": "Παρακαλώ εισάγετε μόνο χαρακτήρες μεταξύ των a-z", - "error.validation.alphanum": - "Παρακαλώ εισάγετε μόνο χαρακτήρες μεταξύ των a-z ή αριθμούς απο το 0 έως το 9", - "error.validation.between": - "Παρακαλώ εισάγετε μια τιμή μεταξύ \"{min}\" και \"{max}\"", + "error.validation.alphanum": "Παρακαλώ εισάγετε μόνο χαρακτήρες μεταξύ των a-z ή αριθμούς απο το 0 έως το 9", + "error.validation.between": "Παρακαλώ εισάγετε μια τιμή μεταξύ \"{min}\" και \"{max}\"", "error.validation.boolean": "Παρακαλώ επιβεβαιώστε ή αρνηθείτε", - "error.validation.contains": - "Παρακαλώ καταχωρίστε μια τιμή που περιέχει \"{needle}\"", + "error.validation.contains": "Παρακαλώ καταχωρίστε μια τιμή που περιέχει \"{needle}\"", "error.validation.date": "Παρακαλώ εισάγετε μία έγκυρη ημερομηνία", "error.validation.date.after": "Please enter a date after {date}", "error.validation.date.before": "Please enter a date before {date}", @@ -210,18 +169,14 @@ "error.validation.less": "Παρακαλώ εισάγετε μια τιμή μικρότερη από {max}", "error.validation.match": "Η τιμή δεν ταιριάζει με το αναμενόμενο πρότυπο", "error.validation.max": "Παρακαλώ εισάγετε μια τιμή ίση ή μικρότερη από {max}", - "error.validation.maxlength": - "Παρακαλώ εισάγετε μια μικρότερη τιμή. (max. {max} χαρακτήρες)", + "error.validation.maxlength": "Παρακαλώ εισάγετε μια μικρότερη τιμή. (max. {max} χαρακτήρες)", "error.validation.maxwords": "Παρακαλώ εισάγετε το πολύ {max} λέξεις", "error.validation.min": "Παρακαλώ εισάγετε μια τιμή ίση ή μεγαλύτερη από {min}", - "error.validation.minlength": - "Παρακαλώ εισάγετε μεγαλύτερη τιμή. (τουλάχιστον {min} χαρακτήρες)", + "error.validation.minlength": "Παρακαλώ εισάγετε μεγαλύτερη τιμή. (τουλάχιστον {min} χαρακτήρες)", "error.validation.minwords": "Παρακαλώ εισάγετε τουλάχιστον {min} λέξεις", "error.validation.more": "Παρακαλώ εισάγετε τουλάχιστον {min} λέξεις", - "error.validation.notcontains": - "Παρακαλώ εισάγετε μια τιμή που δεν περιέχει \"{needle}\"", - "error.validation.notin": - "Παρακαλώ μην εισάγετε κανένα από τα παρακάτω: ({notIn})", + "error.validation.notcontains": "Παρακαλώ εισάγετε μια τιμή που δεν περιέχει \"{needle}\"", + "error.validation.notin": "Παρακαλώ μην εισάγετε κανένα από τα παρακάτω: ({notIn})", "error.validation.option": "Παρακαλώ κάντε μια έγκυρη επιλογή", "error.validation.num": "Παρακαλώ εισάγετε έναν έγκυρο αριθμό", "error.validation.required": "Παρακαλώ εισάγετε κάτι", @@ -238,8 +193,7 @@ "field.structure.empty": "\u0394\u03b5\u03bd \u03c5\u03c0\u03ac\u03c1\u03c7\u03bf\u03c5\u03bd \u03b1\u03ba\u03cc\u03bc\u03b7 \u03ba\u03b1\u03c4\u03b1\u03c7\u03c9\u03c1\u03af\u03c3\u03b5\u03b9\u03c2.", "field.users.empty": "Δεν έχουν επιλεγεί ακόμη χρήστες", - "file.delete.confirm": - "\u0398\u03ad\u03bb\u03b5\u03c4\u03b5 \u03c3\u03af\u03b3\u03bf\u03c5\u03c1\u03b1 \u03bd\u03b1 \u03b4\u03b9\u03b1\u03b3\u03c1\u03ac\u03c8\u03b5\u03c4\u03b5 \u03b1\u03c5\u03c4\u03cc \u03c4\u03bf \u03b1\u03c1\u03c7\u03b5\u03af\u03bf;", + "file.delete.confirm": "\u0398\u03ad\u03bb\u03b5\u03c4\u03b5 \u03c3\u03af\u03b3\u03bf\u03c5\u03c1\u03b1 \u03bd\u03b1 \u03b4\u03b9\u03b1\u03b3\u03c1\u03ac\u03c8\u03b5\u03c4\u03b5 \u03b1\u03c5\u03c4\u03cc \u03c4\u03bf \u03b1\u03c1\u03c7\u03b5\u03af\u03bf;", "files": "Αρχεία", "files.empty": "Δεν υπάρχουν ακόμα αρχεία", @@ -251,29 +205,22 @@ "installation": "Εγκατάσταση", "installation.completed": "Ο πίνακας ελέγχου έχει εγκατασταθεί", "installation.disabled": "Η εγκατάσταση του πίνακα ελέγχου είναι απενεργοποιημένη για δημόσιους διακομιστές από προεπιλογή. Εκτελέστε την εγκατάσταση σε ένα τοπικό μηχάνημα ή ενεργοποιήστε την με την επιλογή panel.install.", - "installation.issues.accounts": - "\u039f \u03c6\u03ac\u03ba\u03b5\u03bb\u03bf\u03c2 \/site\/accounts \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b5\u03b3\u03b3\u03c1\u03ac\u03c8\u03b9\u03bc\u03bf\u03c2", - "installation.issues.content": - "\u039f \u03c6\u03ac\u03ba\u03b5\u03bb\u03bf\u03c2 content \u03ba\u03b1\u03b9 \u03cc\u03bb\u03bf\u03b9 \u03bf\u03b9 \u03c5\u03c0\u03bf\u03c6\u03ac\u03ba\u03b5\u03bb\u03bf\u03b9 \u03c0\u03c1\u03ad\u03c0\u03b5\u03b9 \u03bd\u03b1 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b5\u03b3\u03b3\u03c1\u03ac\u03c8\u03b9\u03bc\u03bf\u03b9.", + "installation.issues.accounts": "\u039f \u03c6\u03ac\u03ba\u03b5\u03bb\u03bf\u03c2 \/site\/accounts \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b5\u03b3\u03b3\u03c1\u03ac\u03c8\u03b9\u03bc\u03bf\u03c2", + "installation.issues.content": "\u039f \u03c6\u03ac\u03ba\u03b5\u03bb\u03bf\u03c2 content \u03ba\u03b1\u03b9 \u03cc\u03bb\u03bf\u03b9 \u03bf\u03b9 \u03c5\u03c0\u03bf\u03c6\u03ac\u03ba\u03b5\u03bb\u03bf\u03b9 \u03c0\u03c1\u03ad\u03c0\u03b5\u03b9 \u03bd\u03b1 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b5\u03b3\u03b3\u03c1\u03ac\u03c8\u03b9\u03bc\u03bf\u03b9.", "installation.issues.curl": "Απαιτείται η επέκταση CURL", "installation.issues.headline": "Ο πίνακας ελέγχου δεν μπορεί να εγκατασταθεί", - "installation.issues.mbstring": - "Απαιτείται η επέκταση MB String ", - "installation.issues.media": - "Ο φάκελος /media δεν υπάρχει ή δεν είναι εγγράψιμος", + "installation.issues.mbstring": "Απαιτείται η επέκταση MB String ", + "installation.issues.media": "Ο φάκελος /media δεν υπάρχει ή δεν είναι εγγράψιμος", "installation.issues.php": "Βεβαιωθείτε ότι χρησιμοποιήτε PHP 7+", - "installation.issues.server": - "To Kirby απαιτεί Apache, Nginx ή Caddy", + "installation.issues.server": "To Kirby απαιτεί Apache, Nginx ή Caddy", "installation.issues.sessions": "Ο φάκελος /site/sessions δεν υπάρχει ή δεν είναι εγγράψιμος", "language": "\u0393\u03bb\u03ce\u03c3\u03c3\u03b1", "language.code": "Κώδικας", "language.convert": "Χρήση ως προεπιλογή", - "language.convert.confirm": - "

Θέλετε πραγματικά να μετατρέψετε τη {name} στην προεπιλεγμένη γλώσσα; Αυτό δεν μπορεί να ανακληθεί.

Αν το {name} χει μη μεταφρασμένο περιεχόμενο, δεν θα υπάρχει πλέον έγκυρη εναλλακτική λύση και τμήματα του ιστότοπού σας ενδέχεται να είναι κενά.

", + "language.convert.confirm": "

Θέλετε πραγματικά να μετατρέψετε τη {name} στην προεπιλεγμένη γλώσσα; Αυτό δεν μπορεί να ανακληθεί.

Αν το {name} χει μη μεταφρασμένο περιεχόμενο, δεν θα υπάρχει πλέον έγκυρη εναλλακτική λύση και τμήματα του ιστότοπού σας ενδέχεται να είναι κενά.

", "language.create": "Προσθέστε μια νέα γλώσσα", - "language.delete.confirm": - "Θέλετε πραγματικά να διαγράψετε τη γλώσσα {name} συμπεριλαμβανομένων όλων των μεταφράσεων; Αυτό δεν μπορεί να αναιρεθεί!", + "language.delete.confirm": "Θέλετε πραγματικά να διαγράψετε τη γλώσσα {name} συμπεριλαμβανομένων όλων των μεταφράσεων; Αυτό δεν μπορεί να αναιρεθεί!", "language.deleted": "Η γλώσσα έχει διαγραφεί", "language.direction": "Κατεύθυνση ανάγνωσης", "language.direction.ltr": "Αριστερά προς τα δεξιά", @@ -292,8 +239,7 @@ "license": "\u0386\u03b4\u03b5\u03b9\u03b1 \u03a7\u03c1\u03ae\u03c3\u03b7\u03c2 \u03c4\u03bf\u03c5 Kirby", "license.buy": "Αγοράστε μια άδεια", "license.register": "Εγγραφή", - "license.register.help": - "Έχετε λάβει τον κωδικό άδειας χρήσης μετά την αγορά μέσω ηλεκτρονικού ταχυδρομείου. Παρακαλώ αντιγράψτε και επικολλήστε τον για να εγγραφείτε.", + "license.register.help": "Έχετε λάβει τον κωδικό άδειας χρήσης μετά την αγορά μέσω ηλεκτρονικού ταχυδρομείου. Παρακαλώ αντιγράψτε και επικολλήστε τον για να εγγραφείτε.", "license.register.label": "Παρακαλώ εισαγάγετε τον κωδικό άδειας χρήσης", "license.register.success": "Σας ευχαριστούμε για την υποστήριξη του Kirby", "license.unregistered": "Αυτό είναι ένα μη καταχωρημένο demo του Kirby", @@ -325,7 +271,7 @@ "months.april": "\u0391\u03c0\u03c1\u03af\u03bb\u03b9\u03bf\u03c2", "months.august": "\u0391\u03cd\u03b3\u03bf\u03c5\u03c3\u03c4\u03bf\u03c2", "months.december": "\u0394\u03b5\u03ba\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2", - "months.february": "\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03ac\u03c1\u03b9\u03bf\u03c2", + "months.february": "Φεβρουάριος", "months.january": "\u0399\u03b1\u03bd\u03bf\u03c5\u03ac\u03c1\u03b9\u03bf\u03c2", "months.july": "\u0399\u03bf\u03cd\u03bb\u03b9\u03bf\u03c2", "months.june": "\u0399\u03bf\u03cd\u03bd\u03b9\u03bf\u03c2", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Επιλέξτε μια θέση", "page.changeStatus.select": "Επιλέξτε μια νέα κατάσταση", "page.changeTemplate": "Αλλαγή προτύπου", - "page.delete.confirm": - "\u0398\u03ad\u03bb\u03b5\u03c4\u03b5 \u03c3\u03af\u03b3\u03bf\u03c5\u03c1\u03b1 \u03bd\u03b1 \u03b4\u03b9\u03b1\u03b3\u03c1\u03ac\u03c8\u03b5\u03c4\u03b5 \u03b1\u03c5\u03c4\u03ae\u03bd \u03c4\u03b7 \u03c3\u03b5\u03bb\u03af\u03b4\u03b1;", - "page.delete.confirm.subpages": - "Αυτή η σελίδα έχει υποσελίδες.
Όλες οι υποσελίδες θα διαγραφούν επίσης.", + "page.delete.confirm": "\u0398\u03ad\u03bb\u03b5\u03c4\u03b5 \u03c3\u03af\u03b3\u03bf\u03c5\u03c1\u03b1 \u03bd\u03b1 \u03b4\u03b9\u03b1\u03b3\u03c1\u03ac\u03c8\u03b5\u03c4\u03b5 \u03b1\u03c5\u03c4\u03ae\u03bd \u03c4\u03b7 \u03c3\u03b5\u03bb\u03af\u03b4\u03b1;", + "page.delete.confirm.subpages": "Αυτή η σελίδα έχει υποσελίδες.
Όλες οι υποσελίδες θα διαγραφούν επίσης.", "page.delete.confirm.title": "Εισάγετε τον τίτλο της σελίδας για επιβεβαίωση", "page.draft.create": "Δημιουργία προσχεδίου", "page.duplicate.appendix": "Αντιγραφή", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Copy pages", "page.status": "Kατάσταση", "page.status.draft": "Προσχέδιο", - "page.status.draft.description": - "Η σελίδα είναι σε κατάσταση προσχεδίου και είναι ορατή μόνο για συνδεδεμένους συντάκτες", + "page.status.draft.description": "The page is in draft mode and only visible for logged in editors or via secret link", "page.status.listed": "Δημοσιευμένο", "page.status.listed.description": "Αυτή η σελίδα είναι δημοσιευμένη για οποιονδήποτε", "page.status.unlisted": "Μη καταχωρημένο", @@ -388,6 +331,7 @@ "replace": "\u0391\u03bd\u03c4\u03b9\u03ba\u03b1\u03c4\u03ac\u03c3\u03c4\u03b1\u03c3\u03b7", "retry": "\u0395\u03c0\u03b1\u03bd\u03ac\u03bb\u03b7\u03c8\u03b7", "revert": "\u0391\u03b3\u03bd\u03cc\u03b7\u03c3\u03b7", + "revert.confirm": "Do you really want to delete all unsaved changes?", "role": "\u03a1\u03cc\u03bb\u03bf\u03c2", "role.admin.description": "The admin has all rights", @@ -451,8 +395,7 @@ "url.placeholder": "https://example.com", "user": "Χρήστης", - "user.blueprint": - "Μπορείτε να ορίσετε επιπλέον τμήματα και πεδία φόρμας για αυτόν τον ρόλο χρήστη στο /site/blueprints/users/{role}.yml", + "user.blueprint": "Μπορείτε να ορίσετε επιπλέον τμήματα και πεδία φόρμας για αυτόν τον ρόλο χρήστη στο /site/blueprints/users/{role}.yml", "user.changeEmail": "Αλλαγή διεύθινσης ηλεκτρονικού ταχυδρομείου", "user.changeLanguage": "Αλλαγή γλώσσας", "user.changeName": "Μετονομασία χρήστη", @@ -463,8 +406,7 @@ "user.changeRole.select": "Επιλογή νέου ρόλου", "user.create": "Προσθήκη νέου χρήστη", "user.delete": "Διαγραφή χρήστη", - "user.delete.confirm": - "\u0398\u03ad\u03bb\u03b5\u03c4\u03b5 \u03c3\u03af\u03b3\u03bf\u03c5\u03c1\u03b1 \u03bd\u03b1 \u03b4\u03b9\u03b1\u03b3\u03c1\u03ac\u03c8\u03b5\u03c4\u03b5 \u03b1\u03c5\u03c4\u03cc\u03bd \u03c4\u03bf\u03bd \u03c7\u03c1\u03ae\u03c3\u03c4\u03b7;", + "user.delete.confirm": "\u0398\u03ad\u03bb\u03b5\u03c4\u03b5 \u03c3\u03af\u03b3\u03bf\u03c5\u03c1\u03b1 \u03bd\u03b1 \u03b4\u03b9\u03b1\u03b3\u03c1\u03ac\u03c8\u03b5\u03c4\u03b5 \u03b1\u03c5\u03c4\u03cc\u03bd \u03c4\u03bf\u03bd \u03c7\u03c1\u03ae\u03c3\u03c4\u03b7;", "users": "Χρήστες", diff --git a/kirby/i18n/translations/en.json b/kirby/i18n/translations/en.json index 173dc0c..b594305 100755 --- a/kirby/i18n/translations/en.json +++ b/kirby/i18n/translations/en.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "The profile picture could not be uploaded", "error.avatar.delete.fail": "The profile picture could not be deleted", - "error.avatar.dimensions.invalid": - "Please keep the width and height of the profile picture under 3000 pixels", - "error.avatar.mime.forbidden": - "The profile picture must be JPEG or PNG files", + "error.avatar.dimensions.invalid": "Please keep the width and height of the profile picture under 3000 pixels", + "error.avatar.mime.forbidden": "The profile picture must be JPEG or PNG files", "error.blueprint.notFound": "The blueprint \"{name}\" could not be loaded", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Invalid converter \"{converter}\"", "error.file.changeName.empty": "The name must not be empty", - "error.file.changeName.permission": - "You are not allowed to change the name of \"{filename}\"", + "error.file.changeName.permission": "You are not allowed to change the name of \"{filename}\"", "error.file.duplicate": "A file with the name \"{filename}\" already exists", - "error.file.extension.forbidden": - "The extension \"{extension}\" is not allowed", - "error.file.extension.missing": - "The extensions for \"{filename}\" is missing", + "error.file.extension.forbidden": "The extension \"{extension}\" is not allowed", + "error.file.extension.missing": "The extensions for \"{filename}\" is missing", "error.file.maxheight": "The height of the image must not exceed {height} pixels", "error.file.maxsize": "The file is too large", "error.file.maxwidth": "The width of the image must not exceed {width} pixels", - "error.file.mime.differs": - "The uploaded file must be of the same mime type \"{mime}\"", + "error.file.mime.differs": "The uploaded file must be of the same mime type \"{mime}\"", "error.file.mime.forbidden": "The media type \"{mime}\" is not allowed", "error.file.mime.invalid": "Invalid mime type: {mime}", - "error.file.mime.missing": - "The media type for \"{filename}\" cannot be detected", + "error.file.mime.missing": "The media type for \"{filename}\" cannot be detected", "error.file.minheight": "The height of the image must be at least {height} pixels", "error.file.minsize": "The file is too small", "error.file.minwidth": "The width of the image must be at least {width} pixels", @@ -90,111 +83,77 @@ "error.license.email": "Please enter a valid email address", "error.license.verification": "The license could not be verified", - "error.page.changeSlug.permission": - "You are not allowed to change the URL appendix for \"{slug}\"", - "error.page.changeStatus.incomplete": - "The page has errors and cannot be published", - "error.page.changeStatus.permission": - "The status for this page cannot be changed", - "error.page.changeStatus.toDraft.invalid": - "The page \"{slug}\" cannot be converted to a draft", - "error.page.changeTemplate.invalid": - "The template for the page \"{slug}\" cannot be changed", - "error.page.changeTemplate.permission": - "You are not allowed to change the template for \"{slug}\"", + "error.page.changeSlug.permission": "You are not allowed to change the URL appendix for \"{slug}\"", + "error.page.changeStatus.incomplete": "The page has errors and cannot be published", + "error.page.changeStatus.permission": "The status for this page cannot be changed", + "error.page.changeStatus.toDraft.invalid": "The page \"{slug}\" cannot be converted to a draft", + "error.page.changeTemplate.invalid": "The template for the page \"{slug}\" cannot be changed", + "error.page.changeTemplate.permission": "You are not allowed to change the template for \"{slug}\"", "error.page.changeTitle.empty": "The title must not be empty", - "error.page.changeTitle.permission": - "You are not allowed to change the title for \"{slug}\"", + "error.page.changeTitle.permission": "You are not allowed to change the title for \"{slug}\"", "error.page.create.permission": "You are not allowed to create \"{slug}\"", "error.page.delete": "The page \"{slug}\" cannot be deleted", "error.page.delete.confirm": "Please enter the page title to confirm", - "error.page.delete.hasChildren": - "The page has subpages and cannot be deleted", + "error.page.delete.hasChildren": "The page has subpages and cannot be deleted", "error.page.delete.permission": "You are not allowed to delete \"{slug}\"", - "error.page.draft.duplicate": - "A page draft with the URL appendix \"{slug}\" already exists", - "error.page.duplicate": - "A page with the URL appendix \"{slug}\" already exists", + "error.page.draft.duplicate": "A page draft with the URL appendix \"{slug}\" already exists", + "error.page.duplicate": "A page with the URL appendix \"{slug}\" already exists", "error.page.duplicate.permission": "You are not allowed to duplicate \"{slug}\"", "error.page.notFound": "The page \"{slug}\" cannot be found", - "error.page.num.invalid": - "Please enter a valid sorting number. Numbers must not be negative.", + "error.page.num.invalid": "Please enter a valid sorting number. Numbers must not be negative.", "error.page.slug.invalid": "Please enter a valid URL prefix", "error.page.sort.permission": "The page \"{slug}\" cannot be sorted", "error.page.status.invalid": "Please set a valid page status", "error.page.undefined": "The page cannot be found", "error.page.update.permission": "You are not allowed to update \"{slug}\"", - "error.section.files.max.plural": - "You must not add more than {max} files to the \"{section}\" section", - "error.section.files.max.singular": - "You must not add more than one file to the \"{section}\" section", - "error.section.files.min.plural": - "The \"{section}\" section requires at least {min} files", - "error.section.files.min.singular": - "The \"{section}\" section requires at least one file", + "error.section.files.max.plural": "You must not add more than {max} files to the \"{section}\" section", + "error.section.files.max.singular": "You must not add more than one file to the \"{section}\" section", + "error.section.files.min.plural": "The \"{section}\" section requires at least {min} files", + "error.section.files.min.singular": "The \"{section}\" section requires at least one file", - "error.section.pages.max.plural": - "You must not add more than {max} pages to the \"{section}\" section", - "error.section.pages.max.singular": - "You must not add more than one page to the \"{section}\" section", - "error.section.pages.min.plural": - "The \"{section}\" section requires at least {min} pages", - "error.section.pages.min.singular": - "The \"{section}\" section requires at least one page", + "error.section.pages.max.plural": "You must not add more than {max} pages to the \"{section}\" section", + "error.section.pages.max.singular": "You must not add more than one page to the \"{section}\" section", + "error.section.pages.min.plural": "The \"{section}\" section requires at least {min} pages", + "error.section.pages.min.singular": "The \"{section}\" section requires at least one page", "error.section.notLoaded": "The section \"{name}\" could not be loaded", "error.section.type.invalid": "The section type \"{type}\" is not valid", "error.site.changeTitle.empty": "The title must not be empty", - "error.site.changeTitle.permission": - "You are not allowed to change the title of the site", + "error.site.changeTitle.permission": "You are not allowed to change the title of the site", "error.site.update.permission": "You are not allowed to update the site", "error.template.default.notFound": "The default template does not exist", - "error.user.changeEmail.permission": - "You are not allowed to change the email for the user \"{name}\"", - "error.user.changeLanguage.permission": - "You are not allowed to change the language for the user \"{name}\"", - "error.user.changeName.permission": - "You are not allowed to change the name for the user \"{name}\"", - "error.user.changePassword.permission": - "You are not allowed to change the password for the user \"{name}\"", - "error.user.changeRole.lastAdmin": - "The role for the last admin cannot be changed", - "error.user.changeRole.permission": - "You are not allowed to change the role for the user \"{name}\"", - "error.user.changeRole.toAdmin": - "You are not allowed to promote someone to the admin role", + "error.user.changeEmail.permission": "You are not allowed to change the email for the user \"{name}\"", + "error.user.changeLanguage.permission": "You are not allowed to change the language for the user \"{name}\"", + "error.user.changeName.permission": "You are not allowed to change the name for the user \"{name}\"", + "error.user.changePassword.permission": "You are not allowed to change the password for the user \"{name}\"", + "error.user.changeRole.lastAdmin": "The role for the last admin cannot be changed", + "error.user.changeRole.permission": "You are not allowed to change the role for the user \"{name}\"", + "error.user.changeRole.toAdmin": "You are not allowed to promote someone to the admin role", "error.user.create.permission": "You are not allowed to create this user", "error.user.delete": "The user \"{name}\" cannot be deleted", "error.user.delete.lastAdmin": "The last admin cannot be deleted", "error.user.delete.lastUser": "The last user cannot be deleted", - "error.user.delete.permission": - "You are not allowed to delete the user \"{name}\"", - "error.user.duplicate": - "A user with the email address \"{email}\" already exists", + "error.user.delete.permission": "You are not allowed to delete the user \"{name}\"", + "error.user.duplicate": "A user with the email address \"{email}\" already exists", "error.user.email.invalid": "Please enter a valid email address", "error.user.language.invalid": "Please enter a valid language", "error.user.notFound": "The user \"{name}\" cannot be found", - "error.user.password.invalid": - "Please enter a valid password. Passwords must be at least 8 characters long.", + "error.user.password.invalid": "Please enter a valid password. Passwords must be at least 8 characters long.", "error.user.password.notSame": "The passwords do not match", "error.user.password.undefined": "The user does not have a password", "error.user.role.invalid": "Please enter a valid role", - "error.user.update.permission": - "You are not allowed to update the user \"{name}\"", + "error.user.update.permission": "You are not allowed to update the user \"{name}\"", "error.validation.accepted": "Please confirm", "error.validation.alpha": "Please only enter characters between a-z", - "error.validation.alphanum": - "Please only enter characters between a-z or numerals 0-9", - "error.validation.between": - "Please enter a value between \"{min}\" and \"{max}\"", + "error.validation.alphanum": "Please only enter characters between a-z or numerals 0-9", + "error.validation.between": "Please enter a value between \"{min}\" and \"{max}\"", "error.validation.boolean": "Please confirm or deny", - "error.validation.contains": - "Please enter a value that contains \"{needle}\"", + "error.validation.contains": "Please enter a value that contains \"{needle}\"", "error.validation.date": "Please enter a valid date", "error.validation.date.after": "Please enter a date after {date}", "error.validation.date.before": "Please enter a date before {date}", @@ -210,18 +169,14 @@ "error.validation.less": "Please enter a value lower than {max}", "error.validation.match": "The value does not match the expected pattern", "error.validation.max": "Please enter a value equal to or lower than {max}", - "error.validation.maxlength": - "Please enter a shorter value. (max. {max} characters)", + "error.validation.maxlength": "Please enter a shorter value. (max. {max} characters)", "error.validation.maxwords": "Please enter no more than {max} word(s)", "error.validation.min": "Please enter a value equal to or greater than {min}", - "error.validation.minlength": - "Please enter a longer value. (min. {min} characters)", + "error.validation.minlength": "Please enter a longer value. (min. {min} characters)", "error.validation.minwords": "Please enter at least {min} word(s)", "error.validation.more": "Please enter a greater value than {min}", - "error.validation.notcontains": - "Please enter a value that does not contain \"{needle}\"", - "error.validation.notin": - "Please don't enter any of the following: ({notIn})", + "error.validation.notcontains": "Please enter a value that does not contain \"{needle}\"", + "error.validation.notin": "Please don't enter any of the following: ({notIn})", "error.validation.option": "Please select a valid option", "error.validation.num": "Please enter a valid number", "error.validation.required": "Please enter something", @@ -238,8 +193,7 @@ "field.structure.empty": "No entries yet", "field.users.empty": "No users selected yet", - "file.delete.confirm": - "Do you really want to delete
{filename}?", + "file.delete.confirm": "Do you really want to delete
{filename}?", "files": "Files", "files.empty": "No files yet", @@ -251,29 +205,22 @@ "installation": "Installation", "installation.completed": "The panel has been installed", "installation.disabled": "The panel installer is disabled on public servers by default. Please run the installer on a local machine or enable it with the panel.install option.", - "installation.issues.accounts": - "The /site/accounts folder does not exist or is not writable", - "installation.issues.content": - "The /content folder does not exist or is not writable", + "installation.issues.accounts": "The /site/accounts folder does not exist or is not writable", + "installation.issues.content": "The /content folder does not exist or is not writable", "installation.issues.curl": "The CURL extension is required", "installation.issues.headline": "The panel cannot be installed", - "installation.issues.mbstring": - "The MB String extension is required", - "installation.issues.media": - "The /media folder does not exist or is not writable", + "installation.issues.mbstring": "The MB String extension is required", + "installation.issues.media": "The /media folder does not exist or is not writable", "installation.issues.php": "Make sure to use PHP 7+", - "installation.issues.server": - "Kirby requires Apache, Nginx or Caddy", + "installation.issues.server": "Kirby requires Apache, Nginx or Caddy", "installation.issues.sessions": "The /site/sessions folder does not exist or is not writable", "language": "Language", "language.code": "Code", "language.convert": "Make default", - "language.convert.confirm": - "

Do you really want to convert {name} to the default language? This cannot be undone.

If {name} has untranslated content, there will no longer be a valid fallback and parts of your site might be empty.

", + "language.convert.confirm": "

Do you really want to convert {name} to the default language? This cannot be undone.

If {name} has untranslated content, there will no longer be a valid fallback and parts of your site might be empty.

", "language.create": "Add a new language", - "language.delete.confirm": - "Do you really want to delete the language {name} including all translations? This cannot be undone!", + "language.delete.confirm": "Do you really want to delete the language {name} including all translations? This cannot be undone!", "language.deleted": "The language has been deleted", "language.direction": "Reading direction", "language.direction.ltr": "Left to right", @@ -292,8 +239,7 @@ "license": "License", "license.buy": "Buy a license", "license.register": "Register", - "license.register.help": - "You received your license code after the purchase via email. Please copy and paste it to register.", + "license.register.help": "You received your license code after the purchase via email. Please copy and paste it to register.", "license.register.label": "Please enter your license code", "license.register.success": "Thank you for supporting Kirby", "license.unregistered": "This is an unregistered demo of Kirby", @@ -342,6 +288,7 @@ "on": "on", "open": "Open", "options": "Options", + "options.none": "No options", "orientation": "Orientation", "orientation.landscape": "Landscape", @@ -354,10 +301,8 @@ "page.changeStatus.position": "Please select a position", "page.changeStatus.select": "Select a new status", "page.changeTemplate": "Change template", - "page.delete.confirm": - "Do you really want to delete {title}?", - "page.delete.confirm.subpages": - "This page has subpages.
All subpages will be deleted as well.", + "page.delete.confirm": "Do you really want to delete {title}?", + "page.delete.confirm.subpages": "This page has subpages.
All subpages will be deleted as well.", "page.delete.confirm.title": "Enter the page title to confirm", "page.draft.create": "Create draft", "page.duplicate.appendix": "Copy", @@ -365,8 +310,7 @@ "page.duplicate.pages": "Copy pages", "page.status": "Status", "page.status.draft": "Draft", - "page.status.draft.description": - "The page is in draft mode and only visible for logged in editors", + "page.status.draft.description": "The page is in draft mode and only visible for logged in editors or via secret link", "page.status.listed": "Public", "page.status.listed.description": "The page is public for anyone", "page.status.unlisted": "Unlisted", @@ -388,6 +332,7 @@ "replace": "Replace", "retry": "Try again", "revert": "Revert", + "revert.confirm": "Do you really want to delete all unsaved changes?", "role": "Role", "role.admin.description": "The admin has all rights", @@ -400,6 +345,9 @@ "save": "Save", "search": "Search", + "search.min": "Enter {min} characters to search", + "search.all": "Show all", + "search.results.none": "No results", "section.required": "The section is required", @@ -451,8 +399,7 @@ "url.placeholder": "https://example.com", "user": "User", - "user.blueprint": - "You can define additional sections and form fields for this user role in /site/blueprints/users/{role}.yml", + "user.blueprint": "You can define additional sections and form fields for this user role in /site/blueprints/users/{role}.yml", "user.changeEmail": "Change email", "user.changeLanguage": "Change language", "user.changeName": "Rename this user", @@ -463,8 +410,7 @@ "user.changeRole.select": "Select a new role", "user.create": "Add a new user", "user.delete": "Delete this user", - "user.delete.confirm": - "Do you really want to delete
{email}?", + "user.delete.confirm": "Do you really want to delete
{email}?", "users": "Users", diff --git a/kirby/i18n/translations/es_419.json b/kirby/i18n/translations/es_419.json index 0d476b7..c302395 100755 --- a/kirby/i18n/translations/es_419.json +++ b/kirby/i18n/translations/es_419.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "No se pudo subir la foto de perfil.", "error.avatar.delete.fail": "No se pudo eliminar la foto de perfil.", - "error.avatar.dimensions.invalid": - "Por favor, mantén el ancho y la altura de la imagen de perfil por debajo de 3000 pixeles.", - "error.avatar.mime.forbidden": - "La foto de perfil debe de ser un archivo JPG o PNG.", + "error.avatar.dimensions.invalid": "Por favor, mantén el ancho y la altura de la imagen de perfil por debajo de 3000 pixeles.", + "error.avatar.mime.forbidden": "La foto de perfil debe de ser un archivo JPG o PNG.", "error.blueprint.notFound": "El blueprint \"{name}\" no se pudo cargar.", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Convertidor inválido \"{converter}\"", "error.file.changeName.empty": "El nombre no debe estar vacío", - "error.file.changeName.permission": - "No tienes permitido cambiar el nombre de \"{filename}\"", + "error.file.changeName.permission": "No tienes permitido cambiar el nombre de \"{filename}\"", "error.file.duplicate": "Ya existe un archivo con el nombre \"{filename}\".", - "error.file.extension.forbidden": - "La extensión \"{extension}\" no está permitida.", - "error.file.extension.missing": - "Falta la extensión para \"{filename}\".", + "error.file.extension.forbidden": "La extensión \"{extension}\" no está permitida.", + "error.file.extension.missing": "Falta la extensión para \"{filename}\".", "error.file.maxheight": "La altura de la imagen no debe exceder {height} pixeles", "error.file.maxsize": "El archivo es muy grande", "error.file.maxwidth": "El ancho de la imagen no debe exceder {width} pixeles", - "error.file.mime.differs": - "El archivo cargado debe ser del mismo tipo mime \"{mime}\".", + "error.file.mime.differs": "El archivo cargado debe ser del mismo tipo mime \"{mime}\".", "error.file.mime.forbidden": "El tipo de medios \"{mime}\" no está permitido.", "error.file.mime.invalid": "Tipo invalido de mime: {mime}", - "error.file.mime.missing": - "No se puede detectar el tipo de medio para \"{filename}\".", + "error.file.mime.missing": "No se puede detectar el tipo de medio para \"{filename}\".", "error.file.minheight": "La altura de la imagen debe ser de al menos {height} pixeles", "error.file.minsize": "El archivo es muy pequeño", "error.file.minwidth": "El ancho de la imagen debe ser de al menos {width} pixeles", @@ -90,111 +83,77 @@ "error.license.email": "Por favor ingresa un correo electrónico valido", "error.license.verification": "La licencia no pude ser verificada", - "error.page.changeSlug.permission": - "No está permitido cambiar el apéndice de URL para \"{slug}\".", - "error.page.changeStatus.incomplete": - "La página tiene errores y no puede ser publicada.", - "error.page.changeStatus.permission": - "El estado de esta página no se puede cambiar.", - "error.page.changeStatus.toDraft.invalid": - "La página \"{slug}\" no se puede convertir en un borrador", - "error.page.changeTemplate.invalid": - "La plantilla para la página \"{slug}\" no se puede cambiar", - "error.page.changeTemplate.permission": - "No está permitido cambiar la plantilla para \"{slug}\"", + "error.page.changeSlug.permission": "No está permitido cambiar el apéndice de URL para \"{slug}\".", + "error.page.changeStatus.incomplete": "La página tiene errores y no puede ser publicada.", + "error.page.changeStatus.permission": "El estado de esta página no se puede cambiar.", + "error.page.changeStatus.toDraft.invalid": "La página \"{slug}\" no se puede convertir en un borrador", + "error.page.changeTemplate.invalid": "La plantilla para la página \"{slug}\" no se puede cambiar", + "error.page.changeTemplate.permission": "No está permitido cambiar la plantilla para \"{slug}\"", "error.page.changeTitle.empty": "El título no debe estar vacío.", - "error.page.changeTitle.permission": - "No tienes permiso para cambiar el título de \"{slug}\"", + "error.page.changeTitle.permission": "No tienes permiso para cambiar el título de \"{slug}\"", "error.page.create.permission": "No tienes permiso para crear \"{slug}\"", "error.page.delete": "La página \"{slug}\" no se puede eliminar", "error.page.delete.confirm": "Por favor, introduce el título de la página para confirmar", - "error.page.delete.hasChildren": - "La página tiene subpáginas y no se puede eliminar", + "error.page.delete.hasChildren": "La página tiene subpáginas y no se puede eliminar", "error.page.delete.permission": "No tienes permiso para borrar \"{slug}\"", - "error.page.draft.duplicate": - "Ya existe un borrador de página con el apéndice de URL \"{slug}\"", - "error.page.duplicate": - "Ya existe una página con el apéndice de URL \"{slug}\"", + "error.page.draft.duplicate": "Ya existe un borrador de página con el apéndice de URL \"{slug}\"", + "error.page.duplicate": "Ya existe una página con el apéndice de URL \"{slug}\"", "error.page.duplicate.permission": "No tienes permitido duplicar \"{slug}\"", "error.page.notFound": "La página \"{slug}\" no se encuentra", - "error.page.num.invalid": - "Por favor, introduce un número de posición válido. Los números no deben ser negativos.", + "error.page.num.invalid": "Por favor, introduce un número de posición válido. Los números no deben ser negativos.", "error.page.slug.invalid": "Por favor ingresa un prefijo de URL válido", "error.page.sort.permission": "La página \"{slug}\" no se puede ordenar", "error.page.status.invalid": "Por favor, establece una estado de página válido", "error.page.undefined": "La p\u00e1gina no fue encontrada", "error.page.update.permission": "No tienes permiso para actualizar \"{slug}\"", - "error.section.files.max.plural": - "No debes agregar más de {max} archivos a la sección \"{section}\"", - "error.section.files.max.singular": - "No debes agregar más de un archivo a la sección \"{section}\"", - "error.section.files.min.plural": - "La sección \"{section}\" requiere al menos {min} archivos", - "error.section.files.min.singular": - "La sección \"{section}\" requiere al menos un archivo", + "error.section.files.max.plural": "No debes agregar más de {max} archivos a la sección \"{section}\"", + "error.section.files.max.singular": "No debes agregar más de un archivo a la sección \"{section}\"", + "error.section.files.min.plural": "La sección \"{section}\" requiere al menos {min} archivos", + "error.section.files.min.singular": "La sección \"{section}\" requiere al menos un archivo", - "error.section.pages.max.plural": - "No debes agregar más de {max} páginas a la sección \"{section}\"", - "error.section.pages.max.singular": - "No debes agregar más de una página a la sección \"{section}\"", - "error.section.pages.min.plural": - "La sección \"{section}\" requiere al menos {min} páginas", - "error.section.pages.min.singular": - "La sección \"{section}\" requiere al menos una página", + "error.section.pages.max.plural": "No debes agregar más de {max} páginas a la sección \"{section}\"", + "error.section.pages.max.singular": "No debes agregar más de una página a la sección \"{section}\"", + "error.section.pages.min.plural": "La sección \"{section}\" requiere al menos {min} páginas", + "error.section.pages.min.singular": "La sección \"{section}\" requiere al menos una página", "error.section.notLoaded": "La sección \"{name}\" no se pudo cargar", "error.section.type.invalid": "La sección \"{type}\" no es valida", "error.site.changeTitle.empty": "El título no debe estar vacío.", - "error.site.changeTitle.permission": - "No tienes permiso para cambiar el título del sitio", + "error.site.changeTitle.permission": "No tienes permiso para cambiar el título del sitio", "error.site.update.permission": "No tienes permiso de actualizar el sitio", "error.template.default.notFound": "La plantilla predeterminada no existe", - "error.user.changeEmail.permission": - "No tienes permiso para cambiar el email del usuario \"{name}\"", - "error.user.changeLanguage.permission": - "No tienes permiso para cambiar el idioma del usuario \"{name}\"", - "error.user.changeName.permission": - "No tienes permiso para cambiar el nombre del usuario \"{name}\"", - "error.user.changePassword.permission": - "No tienes permiso para cambiar la contraseña del usuario \"{name}\"", - "error.user.changeRole.lastAdmin": - "El rol del último administrador no puede ser cambiado", - "error.user.changeRole.permission": - "No tienes permiso para cambiar el rol del usuario \"{name}\"", - "error.user.changeRole.toAdmin": - "No tienes permitido promover a alguien al rol de admin", + "error.user.changeEmail.permission": "No tienes permiso para cambiar el email del usuario \"{name}\"", + "error.user.changeLanguage.permission": "No tienes permiso para cambiar el idioma del usuario \"{name}\"", + "error.user.changeName.permission": "No tienes permiso para cambiar el nombre del usuario \"{name}\"", + "error.user.changePassword.permission": "No tienes permiso para cambiar la contraseña del usuario \"{name}\"", + "error.user.changeRole.lastAdmin": "El rol del último administrador no puede ser cambiado", + "error.user.changeRole.permission": "No tienes permiso para cambiar el rol del usuario \"{name}\"", + "error.user.changeRole.toAdmin": "No tienes permitido promover a alguien al rol de admin", "error.user.create.permission": "No tienes permiso de crear este usuario", "error.user.delete": "El ususario no pudo ser eliminado", "error.user.delete.lastAdmin": "Usted no puede borrar el \u00faltimo administrador", "error.user.delete.lastUser": "El último usuario no puede ser borrado", - "error.user.delete.permission": - "Usted no tiene permitido borrar este usuario", - "error.user.duplicate": - "Ya existe un usuario con el email \"{email}\"", + "error.user.delete.permission": "Usted no tiene permitido borrar este usuario", + "error.user.duplicate": "Ya existe un usuario con el email \"{email}\"", "error.user.email.invalid": "Por favor ingresa un correo electrónico valido", "error.user.language.invalid": "Por favor ingresa un idioma valido", "error.user.notFound": "El usuario no pudo ser encontrado", - "error.user.password.invalid": - "Por favor ingresa una contraseña valida. Las contraseñas deben tener al menos 8 caracteres de largo.", + "error.user.password.invalid": "Por favor ingresa una contraseña valida. Las contraseñas deben tener al menos 8 caracteres de largo.", "error.user.password.notSame": "Por favor confirma la contrase\u00f1a", "error.user.password.undefined": "El usuario no tiene contraseña", "error.user.role.invalid": "Por favor ingresa un rol valido", - "error.user.update.permission": - "No tienes permiso para actualizar al usuario \"{name}\"", + "error.user.update.permission": "No tienes permiso para actualizar al usuario \"{name}\"", "error.validation.accepted": "Por favor, confirma", "error.validation.alpha": "Por favor ingrese solo caracteres entre a-z", - "error.validation.alphanum": - "Por favor ingrese solo caracteres entre a-z o números entre 0-9", - "error.validation.between": - "Por favor ingrese valores entre \"{min}\" y \"{max}\"", + "error.validation.alphanum": "Por favor ingrese solo caracteres entre a-z o números entre 0-9", + "error.validation.between": "Por favor ingrese valores entre \"{min}\" y \"{max}\"", "error.validation.boolean": "Por favor confirme o niegue", - "error.validation.contains": - "Por favor ingrese valores que contengan \"{needle}\"", + "error.validation.contains": "Por favor ingrese valores que contengan \"{needle}\"", "error.validation.date": "Por favor ingresa una fecha válida", "error.validation.date.after": "Por favor introduce una fecha posterior a {date}", "error.validation.date.before": "Por favor introduce una fecha anterior a {date}", @@ -210,18 +169,14 @@ "error.validation.less": "Por favor ingresa un valor menor a {max}", "error.validation.match": "El valor no coincide con el patrón esperado", "error.validation.max": "Por favor ingresa un valor menor o igual a {max}", - "error.validation.maxlength": - "Por favor ingresa un valor mas corto. (max. {max} caracteres)", + "error.validation.maxlength": "Por favor ingresa un valor mas corto. (max. {max} caracteres)", "error.validation.maxwords": "Por favor ingresa no mas de {max} palabra(s)", "error.validation.min": "Por favor ingresa un valor mayor o igual a {min}", - "error.validation.minlength": - "Por favor ingresa un valor mas largo. (min. {min} caracteres)", + "error.validation.minlength": "Por favor ingresa un valor mas largo. (min. {min} caracteres)", "error.validation.minwords": "Por favor ingresa al menos {min} palabra(s)", "error.validation.more": "Por favor ingresa un valor mayor a {min}", - "error.validation.notcontains": - "Por favor ingresa un valor que no contenga \"{needle}\"", - "error.validation.notin": - "Por favor no ingreses ninguno de las siguientes: ({notIn})", + "error.validation.notcontains": "Por favor ingresa un valor que no contenga \"{needle}\"", + "error.validation.notin": "Por favor no ingreses ninguno de las siguientes: ({notIn})", "error.validation.option": "Por favor selecciona una de las opciones válidas", "error.validation.num": "Por favor ingresa un numero válido", "error.validation.required": "Por favor ingresa algo", @@ -238,8 +193,7 @@ "field.structure.empty": "A\u00fan no existen entradas.", "field.users.empty": "Aún no ha seleccionado ningún usuario", - "file.delete.confirm": - "\u00bfEst\u00e1s seguro que deseas eliminar este archivo?", + "file.delete.confirm": "\u00bfEst\u00e1s seguro que deseas eliminar este archivo?", "files": "Archivos", "files.empty": "Aún no existen archivos", @@ -251,29 +205,22 @@ "installation": "Instalación", "installation.completed": "El panel ha sido instalado.", "installation.disabled": "El instalador del panel está deshabilitado en servidores públicos por defecto. Ejecute el instalador en una máquina local o habilítelo con la opción panel.install.", - "installation.issues.accounts": - "La carpeta /site/accounts no existe o no posee permisos de escritura.", - "installation.issues.content": - "La carpeta /content no existe o no posee permisos de escritura.", + "installation.issues.accounts": "La carpeta /site/accounts no existe o no posee permisos de escritura.", + "installation.issues.content": "La carpeta /content no existe o no posee permisos de escritura.", "installation.issues.curl": "Se requiere la extensión CURL.", "installation.issues.headline": "El panel no puede ser instalado.", - "installation.issues.mbstring": - "Se requiere la extensión MB String.", - "installation.issues.media": - "La carpeta /media no existe o no posee permisos de escritura.", + "installation.issues.mbstring": "Se requiere la extensión MB String.", + "installation.issues.media": "La carpeta /media no existe o no posee permisos de escritura.", "installation.issues.php": "Asegurese de estar usando PHP 7+", - "installation.issues.server": - "Kirby requiere Apache, Nginx, Caddy", + "installation.issues.server": "Kirby requiere Apache, Nginx, Caddy", "installation.issues.sessions": "La carpeta /site/sessions no existe o no posee permisos de escritura.", "language": "Idioma", "language.code": "Código", "language.convert": "Hacer por defecto", - "language.convert.confirm": - "

Realmente deseas convertir {name} al idioma por defecto? Esta acción no se puede deshacer.

Si {name} tiene contenido sin traducir, no habrá vuelta atras y tu sitio puede quedar con partes sin contenido.

", + "language.convert.confirm": "

Realmente deseas convertir {name} al idioma por defecto? Esta acción no se puede deshacer.

Si {name} tiene contenido sin traducir, no habrá vuelta atras y tu sitio puede quedar con partes sin contenido.

", "language.create": "Añadir nuevo idioma", - "language.delete.confirm": - "

", + "language.delete.confirm": "

", "language.deleted": "El idioma ha sido borrado", "language.direction": "Dirección de lectura", "language.direction.ltr": "De Izquierda a derecha", @@ -292,8 +239,7 @@ "license": "Licencia", "license.buy": "Comprar una licencia", "license.register": "Registrar", - "license.register.help": - "Recibió su código de licencia después de la compra por correo electrónico. Por favor copie y pegue para registrarse.", + "license.register.help": "Recibió su código de licencia después de la compra por correo electrónico. Por favor copie y pegue para registrarse.", "license.register.label": "Por favor, ingresa tu código de licencia", "license.register.success": "Gracias por apoyar a Kirby", "license.unregistered": "Este es un demo no registrado de Kirby", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Por favor selecciona una posición", "page.changeStatus.select": "Selecciona un nuevo estado", "page.changeTemplate": "Cambiar plantilla", - "page.delete.confirm": - "¿Estás seguro que deseas eliminar {title}?", - "page.delete.confirm.subpages": - "Esta página tiene subpáginas.
Todas las súbpaginas serán eliminadas también.", + "page.delete.confirm": "¿Estás seguro que deseas eliminar {title}?", + "page.delete.confirm.subpages": "Esta página tiene subpáginas.
Todas las súbpaginas serán eliminadas también.", "page.delete.confirm.title": "Introduce el título de la página para confirmar", "page.draft.create": "Crear borrador", "page.duplicate.appendix": "Copiar", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Copiar páginas", "page.status": "Estado", "page.status.draft": "Borrador", - "page.status.draft.description": - "La página está en modo de borrador y sólo es visible para los editores registrados", + "page.status.draft.description": "The page is in draft mode and only visible for logged in editors or via secret link", "page.status.listed": "Pública", "page.status.listed.description": "La página es pública para cualquiera", "page.status.unlisted": "No publicada", @@ -388,6 +331,7 @@ "replace": "Reemplazar", "retry": "Reintentar", "revert": "Revertir", + "revert.confirm": "Do you really want to delete all unsaved changes?", "role": "Rol", "role.admin.description": "El administrador tiene todos los derechos", @@ -451,8 +395,7 @@ "url.placeholder": "https://ejemplo.com", "user": "Usuario", - "user.blueprint": - "Puedes definir secciones adicionales y campos de formulario para este rol de usuario en /site/blueprints/users/{role}.yml", + "user.blueprint": "Puedes definir secciones adicionales y campos de formulario para este rol de usuario en /site/blueprints/users/{role}.yml", "user.changeEmail": "Cambiar correo electrónico", "user.changeLanguage": "Cambiar idioma", "user.changeName": "Renombrar este usuario", @@ -463,8 +406,7 @@ "user.changeRole.select": "Selecciona un nuevo rol", "user.create": "Agregar un nuevo usuario", "user.delete": "Eliminar este usuario", - "user.delete.confirm": - "¿Estás seguro que deseas eliminar
{email}?", + "user.delete.confirm": "¿Estás seguro que deseas eliminar
{email}?", "users": "Usuarios", diff --git a/kirby/i18n/translations/es_ES.json b/kirby/i18n/translations/es_ES.json index f73a36a..593f5b6 100755 --- a/kirby/i18n/translations/es_ES.json +++ b/kirby/i18n/translations/es_ES.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "No se pudo subir la foto de perfil.", "error.avatar.delete.fail": "No se pudo borrar la foto de perfil", - "error.avatar.dimensions.invalid": - "Por favor, mantenga el ancho y la altura de la imagen de perfil debajo de 3000 píxeles", - "error.avatar.mime.forbidden": - "La imagen del perfil debe ser JPEG o PNG.", + "error.avatar.dimensions.invalid": "Por favor, mantenga el ancho y la altura de la imagen de perfil debajo de 3000 píxeles", + "error.avatar.mime.forbidden": "La imagen del perfil debe ser JPEG o PNG.", "error.blueprint.notFound": "El blueprint \"{name}\" no pudo ser cargado", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Convertidor \"{converter}\" inválido", "error.file.changeName.empty": "The name must not be empty", - "error.file.changeName.permission": - "No tienes permitido cambiar el nombre de \"{filename}\"", + "error.file.changeName.permission": "No tienes permitido cambiar el nombre de \"{filename}\"", "error.file.duplicate": "Ya existe un archivo con el nombre \"{filename}\"", - "error.file.extension.forbidden": - "La extensión \"{extension}\" no está permitida", - "error.file.extension.missing": - "Falta la extensión para \"{filename}\"", + "error.file.extension.forbidden": "La extensión \"{extension}\" no está permitida", + "error.file.extension.missing": "Falta la extensión para \"{filename}\"", "error.file.maxheight": "The height of the image must not exceed {height} pixels", "error.file.maxsize": "The file is too large", "error.file.maxwidth": "The width of the image must not exceed {width} pixels", - "error.file.mime.differs": - "El archivo cargado debe ser del mismo tipo mime \"{mime}\"", + "error.file.mime.differs": "El archivo cargado debe ser del mismo tipo mime \"{mime}\"", "error.file.mime.forbidden": "Los medios tipo \"{mime}\" no están permitidos", "error.file.mime.invalid": "Invalid mime type: {mime}", - "error.file.mime.missing": - "El tipo de medio para \"{filename}\" no pudo ser detectado", + "error.file.mime.missing": "El tipo de medio para \"{filename}\" no pudo ser detectado", "error.file.minheight": "The height of the image must be at least {height} pixels", "error.file.minsize": "The file is too small", "error.file.minwidth": "The width of the image must be at least {width} pixels", @@ -90,111 +83,77 @@ "error.license.email": "Por favor, introduce un correo electrónico válido", "error.license.verification": "The license could not be verified", - "error.page.changeSlug.permission": - "No está permitido cambiar el apéndice de URL para \"{slug}\"", - "error.page.changeStatus.incomplete": - "La página tiene errores y no puede ser publicada.", - "error.page.changeStatus.permission": - "El estado de esta página no se puede cambiar", - "error.page.changeStatus.toDraft.invalid": - "La página \"{slug}\" no se puede convertir a borrador", - "error.page.changeTemplate.invalid": - "La plantilla para la página \"{slug}\" no se puede cambiar", - "error.page.changeTemplate.permission": - "No tienes permitido cambiar la plantilla para \"{slug}\"", + "error.page.changeSlug.permission": "No está permitido cambiar el apéndice de URL para \"{slug}\"", + "error.page.changeStatus.incomplete": "La página tiene errores y no puede ser publicada.", + "error.page.changeStatus.permission": "El estado de esta página no se puede cambiar", + "error.page.changeStatus.toDraft.invalid": "La página \"{slug}\" no se puede convertir a borrador", + "error.page.changeTemplate.invalid": "La plantilla para la página \"{slug}\" no se puede cambiar", + "error.page.changeTemplate.permission": "No tienes permitido cambiar la plantilla para \"{slug}\"", "error.page.changeTitle.empty": "El título no debe estar vacío.", - "error.page.changeTitle.permission": - "No tienes permitido cambiar el título por \"{slug}\"", + "error.page.changeTitle.permission": "No tienes permitido cambiar el título por \"{slug}\"", "error.page.create.permission": "No tienes permitido crear \"{slug}\"", "error.page.delete": "La página \"{slug}\" no puede ser eliminada", "error.page.delete.confirm": "Por favor, introduzca el título de la página para confirmar", - "error.page.delete.hasChildren": - "La página tiene subpáginas y no se puede eliminar", + "error.page.delete.hasChildren": "La página tiene subpáginas y no se puede eliminar", "error.page.delete.permission": "No tienes permiso de eliminar \"{slug}\"", - "error.page.draft.duplicate": - "Un borrador de página con el apéndice de URL \"{slug}\" ya existe", - "error.page.duplicate": - "Una página con el apéndice de URL. \"{slug}\" ya existe", + "error.page.draft.duplicate": "Un borrador de página con el apéndice de URL \"{slug}\" ya existe", + "error.page.duplicate": "Una página con el apéndice de URL. \"{slug}\" ya existe", "error.page.duplicate.permission": "You are not allowed to duplicate \"{slug}\"", "error.page.notFound": "La página \"{slug}\" no puede ser encontrada", - "error.page.num.invalid": - "Por favor, introduzca un número válido. Estos no deben ser negativos.", + "error.page.num.invalid": "Por favor, introduzca un número válido. Estos no deben ser negativos.", "error.page.slug.invalid": "Por favor ingrese un prefijo de URL válido", "error.page.sort.permission": "La página \"{slug}\" no se puede ordenar", "error.page.status.invalid": "Por favor, establezca un estado de página válido", "error.page.undefined": "La página no se puede encontrar", "error.page.update.permission": "No tienes permitido actualizar \"{slug}\"", - "error.section.files.max.plural": - "No debes agregar más de {max} archivos a la sección \"{section}\"", - "error.section.files.max.singular": - "No debes agregar más de 1 archivo a la sección \"{section}\"", - "error.section.files.min.plural": - "La sección \"{section}\" requiere al menos {min} archivos", - "error.section.files.min.singular": - "La sección \"{section}\" requiere al menos un archivo", + "error.section.files.max.plural": "No debes agregar más de {max} archivos a la sección \"{section}\"", + "error.section.files.max.singular": "No debes agregar más de 1 archivo a la sección \"{section}\"", + "error.section.files.min.plural": "La sección \"{section}\" requiere al menos {min} archivos", + "error.section.files.min.singular": "La sección \"{section}\" requiere al menos un archivo", - "error.section.pages.max.plural": - "No debe agregar más de {max} páginas a la sección \"{section}\"", - "error.section.pages.max.singular": - "No debe agregar más de una página a la sección \"{section}\"", - "error.section.pages.min.plural": - "La sección \"{section}\" requiere al menos {min} páginas", - "error.section.pages.min.singular": - "La sección \"{section}\" requiere al menos una página", + "error.section.pages.max.plural": "No debe agregar más de {max} páginas a la sección \"{section}\"", + "error.section.pages.max.singular": "No debe agregar más de una página a la sección \"{section}\"", + "error.section.pages.min.plural": "La sección \"{section}\" requiere al menos {min} páginas", + "error.section.pages.min.singular": "La sección \"{section}\" requiere al menos una página", "error.section.notLoaded": "La sección \"{name}\" no pudo ser cargada", "error.section.type.invalid": "El sección tipo \"{tipo}\" no es válido", "error.site.changeTitle.empty": "El título no debe estar vacío.", - "error.site.changeTitle.permission": - "No está permitido cambiar el título del sitio", + "error.site.changeTitle.permission": "No está permitido cambiar el título del sitio", "error.site.update.permission": "No tienes permitido actualizar el sitio", "error.template.default.notFound": "La plantilla por defecto no existe", - "error.user.changeEmail.permission": - "No tienes permitido cambiar el correo electrónico para el usuario \"{name}\"", - "error.user.changeLanguage.permission": - "No tienes permitido cambiar el idioma para el usuario \"{name}\"", - "error.user.changeName.permission": - "No tienes permitido cambiar el nombre del usuario \"{name}\"", - "error.user.changePassword.permission": - "No tienes permitido cambiar la contraseña del usuario \"{name}\"", - "error.user.changeRole.lastAdmin": - "El rol para el último administrador no puede ser cambiado", - "error.user.changeRole.permission": - "No tienes permitido cambiar el rol del usuario \"{name}\"", - "error.user.changeRole.toAdmin": - "You are not allowed to promote someone to the admin role", + "error.user.changeEmail.permission": "No tienes permitido cambiar el correo electrónico para el usuario \"{name}\"", + "error.user.changeLanguage.permission": "No tienes permitido cambiar el idioma para el usuario \"{name}\"", + "error.user.changeName.permission": "No tienes permitido cambiar el nombre del usuario \"{name}\"", + "error.user.changePassword.permission": "No tienes permitido cambiar la contraseña del usuario \"{name}\"", + "error.user.changeRole.lastAdmin": "El rol para el último administrador no puede ser cambiado", + "error.user.changeRole.permission": "No tienes permitido cambiar el rol del usuario \"{name}\"", + "error.user.changeRole.toAdmin": "You are not allowed to promote someone to the admin role", "error.user.create.permission": "No tienes permiso para crear este usuario", "error.user.delete": "El usuario \"{name}\" no puede ser eliminado", "error.user.delete.lastAdmin": "El último administrador no puede ser eliminado", "error.user.delete.lastUser": "El último usuario no puede ser eliminado", - "error.user.delete.permission": - "No tienes permitido eliminar el usuario \"{name}\"", - "error.user.duplicate": - "Un usuario con la dirección de correo electrónico \"{email}\" ya existe", + "error.user.delete.permission": "No tienes permitido eliminar el usuario \"{name}\"", + "error.user.duplicate": "Un usuario con la dirección de correo electrónico \"{email}\" ya existe", "error.user.email.invalid": "Por favor, introduce una dirección de correo electrónico válida", "error.user.language.invalid": "Por favor ingrese un idioma válido", "error.user.notFound": "El usuario \"{name}\" no pudo ser encontrado", - "error.user.password.invalid": - "Por favor introduce una contraseña válida. Las contraseñas deben tener al menos 8 caracteres de largo.", + "error.user.password.invalid": "Por favor introduce una contraseña válida. Las contraseñas deben tener al menos 8 caracteres de largo.", "error.user.password.notSame": "Las contraseñas no coinciden", "error.user.password.undefined": "El usuario no tiene contraseña", "error.user.role.invalid": "Por favor ingrese un rol válido", - "error.user.update.permission": - "No tienes permitido actualizar al usuario \"{name}\"", + "error.user.update.permission": "No tienes permitido actualizar al usuario \"{name}\"", "error.validation.accepted": "Por favor, confirma", "error.validation.alpha": "Por favor solo ingresa caracteres entre a-z", - "error.validation.alphanum": - "Por favor solo ingrese caracteres entre a-z o numerales 0-9", - "error.validation.between": - "Por favor, introduzca un valor entre \"{min}\" y \"{max}\"", + "error.validation.alphanum": "Por favor solo ingrese caracteres entre a-z o numerales 0-9", + "error.validation.between": "Por favor, introduzca un valor entre \"{min}\" y \"{max}\"", "error.validation.boolean": "Por favor confirme o rechace", - "error.validation.contains": - "Por favor ingrese un valor que contenga \"{needle}\"", + "error.validation.contains": "Por favor ingrese un valor que contenga \"{needle}\"", "error.validation.date": "Por favor introduzca una fecha valida", "error.validation.date.after": "Please enter a date after {date}", "error.validation.date.before": "Please enter a date before {date}", @@ -210,18 +169,14 @@ "error.validation.less": "Por favor, introduzca un valor inferior a {max}", "error.validation.match": "El valor no coincide con el patrón esperado", "error.validation.max": "Por favor, introduzca un valor igual o inferior a {max}", - "error.validation.maxlength": - "Por favor, introduzca un valor más corto. (max. {max} caracteres)", + "error.validation.maxlength": "Por favor, introduzca un valor más corto. (max. {max} caracteres)", "error.validation.maxwords": "Por favor ingrese no más de {max} palabra(s)", "error.validation.min": "Por favor, introduzca un valor igual o mayor a {min}", - "error.validation.minlength": - "Por favor, introduzca un valor más largo. (min. {min} caracteres)", + "error.validation.minlength": "Por favor, introduzca un valor más largo. (min. {min} caracteres)", "error.validation.minwords": "Por favor ingrese al menos {min} palabra(s)", "error.validation.more": "Por favor, introduzca un valor mayor a {min}", - "error.validation.notcontains": - "Por favor ingrese un valor que no contenga \"{needle}\"", - "error.validation.notin": - "Por favor, no ingrese ninguno de los siguientes: ({notIn})", + "error.validation.notcontains": "Por favor ingrese un valor que no contenga \"{needle}\"", + "error.validation.notin": "Por favor, no ingrese ninguno de los siguientes: ({notIn})", "error.validation.option": "Por favor seleccione una opción válida", "error.validation.num": "Por favor ingrese un número valido", "error.validation.required": "Por favor ingrese algo", @@ -238,8 +193,7 @@ "field.structure.empty": "Aún no hay entradas", "field.users.empty": "Aún no hay usuarios seleccionados", - "file.delete.confirm": - "¿Realmente quieres eliminar
{filename}?", + "file.delete.confirm": "¿Realmente quieres eliminar
{filename}?", "files": "Archivos", "files.empty": "Aún no hay archivos", @@ -251,29 +205,22 @@ "installation": "Instalación", "installation.completed": "El panel ha sido instalado", "installation.disabled": "El instalador del panel está deshabilitado en servidores públicos por defecto. Ejecute el instalador en una máquina local o habilítelo con la opción panel.install.", - "installation.issues.accounts": - "La carpeta /site/accounts no existe o no se puede escribir", - "installation.issues.content": - "La carpeta /content no existe o no se puede escribir", + "installation.issues.accounts": "La carpeta /site/accounts no existe o no se puede escribir", + "installation.issues.content": "La carpeta /content no existe o no se puede escribir", "installation.issues.curl": "La extensión CURL es requerida", "installation.issues.headline": "No se pudo instalar el panel", - "installation.issues.mbstring": - "La extension MB String es requerida", - "installation.issues.media": - "La carpeta /media no existe o no se puede escribir", + "installation.issues.mbstring": "La extension MB String es requerida", + "installation.issues.media": "La carpeta /media no existe o no se puede escribir", "installation.issues.php": "Asegúrate de usar PHP 7+", - "installation.issues.server": - "Kirby requiere Apache, Nginx o Caddy", + "installation.issues.server": "Kirby requiere Apache, Nginx o Caddy", "installation.issues.sessions": "La carpeta /site/sessions no existe o no se puede escribir", "language": "Idioma", "language.code": "Código", "language.convert": "Hacer por defecto", - "language.convert.confirm": - "{name}
al idioma por defecto? Esto no se puede deshacer.

Si {name} tiene contenido sin traducir, ya no habrá un respaldo válido y algunas partes de su sitio podrían estar vacías.

", + "language.convert.confirm": "{name}
al idioma por defecto? Esto no se puede deshacer.

Si {name} tiene contenido sin traducir, ya no habrá un respaldo válido y algunas partes de su sitio podrían estar vacías.

", "language.create": "Añadir un nuevo idioma", - "language.delete.confirm": - "¿De verdad quieres eliminar el idioma {name} incluyendo todas las traducciones? ¡Esto no se puede deshacer!", + "language.delete.confirm": "¿De verdad quieres eliminar el idioma {name} incluyendo todas las traducciones? ¡Esto no se puede deshacer!", "language.deleted": "El idioma ha sido eliminado", "language.direction": "Leyendo dirección", "language.direction.ltr": "De izquierda a derecha", @@ -292,8 +239,7 @@ "license": "Licencia", "license.buy": "Comprar una licencia", "license.register": "Registro", - "license.register.help": - "Recibió su código de licencia después de la compra por correo electrónico. Por favor copie y pegue para registrarse.", + "license.register.help": "Recibió su código de licencia después de la compra por correo electrónico. Por favor copie y pegue para registrarse.", "license.register.label": "Por favor ingrese su código de licencia", "license.register.success": "Gracias por apoyar a Kirby", "license.unregistered": "Esta es una demo no registrada de Kirby", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Por favor seleccione una posición", "page.changeStatus.select": "Seleccione un nuevo estado", "page.changeTemplate": "Cambiar plantilla", - "page.delete.confirm": - "¿Realmente quieres eliminar {title}?", - "page.delete.confirm.subpages": - "Esta página tiene subpáginas.
Todas las subpáginas también serán eliminadas.", + "page.delete.confirm": "¿Realmente quieres eliminar {title}?", + "page.delete.confirm.subpages": "Esta página tiene subpáginas.
Todas las subpáginas también serán eliminadas.", "page.delete.confirm.title": "Introduzca el título de la página para confirmar", "page.draft.create": "Crear borrador", "page.duplicate.appendix": "Copiar", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Copy pages", "page.status": "Estado", "page.status.draft": "Borrador", - "page.status.draft.description": - "La página está en modo borrador y solo está visible para los editores registrados", + "page.status.draft.description": "The page is in draft mode and only visible for logged in editors or via secret link", "page.status.listed": "Publica", "page.status.listed.description": "La página es pública para cualquiera", "page.status.unlisted": "Sin publicar", @@ -388,6 +331,7 @@ "replace": "Remplazar", "retry": "Inténtalo de nuevo", "revert": "Revertir", + "revert.confirm": "Do you really want to delete all unsaved changes?", "role": "Rol", "role.admin.description": "The admin has all rights", @@ -451,8 +395,7 @@ "url.placeholder": "https://ejemplo.com", "user": "Usuario", - "user.blueprint": - "Puede definir secciones adicionales y campos de formulario para este rol de usuario en /site/blueprints/users/{role}.yml", + "user.blueprint": "Puede definir secciones adicionales y campos de formulario para este rol de usuario en /site/blueprints/users/{role}.yml", "user.changeEmail": "Cambiar correo electrónico", "user.changeLanguage": "Cambiar idioma", "user.changeName": "Renombrar a este usuario", @@ -463,8 +406,7 @@ "user.changeRole.select": "Seleccione un nuevo rol", "user.create": "Añadir un nuevo usuario", "user.delete": "Eliminar este usuario", - "user.delete.confirm": - "¿Realmente quieres eliminar
{email}?", + "user.delete.confirm": "¿Realmente quieres eliminar
{email}?", "users": "Usuarios", diff --git a/kirby/i18n/translations/fa.json b/kirby/i18n/translations/fa.json index 7e2dcda..f4c5f04 100755 --- a/kirby/i18n/translations/fa.json +++ b/kirby/i18n/translations/fa.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "بارگزاری تصویر پروفایل موفق نبود", "error.avatar.delete.fail": "\u062a\u0635\u0648\u06cc\u0631 \u067e\u0631\u0648\u0641\u0627\u06cc\u0644 \u0631\u0627 \u0646\u0645\u06cc\u062a\u0648\u0627\u0646 \u062d\u0630\u0641 \u06a9\u0631\u062f", - "error.avatar.dimensions.invalid": - "لطفا طول و عرض تصویر پروفایل را زیر 3000 پیکسل انتخاب کنید", - "error.avatar.mime.forbidden": - "تصویر پروفایل باید از نوع JPEG یا PNG باشد", + "error.avatar.dimensions.invalid": "لطفا طول و عرض تصویر پروفایل را زیر 3000 پیکسل انتخاب کنید", + "error.avatar.mime.forbidden": "تصویر پروفایل باید از نوع JPEG یا PNG باشد", "error.blueprint.notFound": "بلوپرینت با نام «{name}» قابل بارگذاری نیست", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "مبدل «{converter}» نامعتبر است", "error.file.changeName.empty": "The name must not be empty", - "error.file.changeName.permission": - "شما اجازه تنغییر نام فایل «{filename}» را ندارید", + "error.file.changeName.permission": "شما اجازه تنغییر نام فایل «{filename}» را ندارید", "error.file.duplicate": "فایلی هم نام با «{filename}» هم اکنون موجود است", - "error.file.extension.forbidden": - "پسوند فایل «{extension}» غیرمجاز است", - "error.file.extension.missing": - "\u0634\u0645\u0627 \u0646\u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u0641\u0627\u06cc\u0644\u200c\u0647\u0627\u06cc \u0628\u062f\u0648\u0646 \u067e\u0633\u0648\u0646\u062f \u0631\u0627 \u0622\u067e\u0644\u0648\u062f \u06a9\u0646\u06cc\u062f", + "error.file.extension.forbidden": "پسوند فایل «{extension}» غیرمجاز است", + "error.file.extension.missing": "\u0634\u0645\u0627 \u0646\u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u0641\u0627\u06cc\u0644\u200c\u0647\u0627\u06cc \u0628\u062f\u0648\u0646 \u067e\u0633\u0648\u0646\u062f \u0631\u0627 \u0622\u067e\u0644\u0648\u062f \u06a9\u0646\u06cc\u062f", "error.file.maxheight": "The height of the image must not exceed {height} pixels", "error.file.maxsize": "The file is too large", "error.file.maxwidth": "The width of the image must not exceed {width} pixels", - "error.file.mime.differs": - "فایل آپلود شده باید از همان نوع باشد «{mime}»", + "error.file.mime.differs": "فایل آپلود شده باید از همان نوع باشد «{mime}»", "error.file.mime.forbidden": "فرمت فایل «{mime}» غیرمجاز است", "error.file.mime.invalid": "Invalid mime type: {mime}", - "error.file.mime.missing": - "فرمت فایل «{filename}» قابل شناسایی نیست", + "error.file.mime.missing": "فرمت فایل «{filename}» قابل شناسایی نیست", "error.file.minheight": "The height of the image must be at least {height} pixels", "error.file.minsize": "The file is too small", "error.file.minwidth": "The width of the image must be at least {width} pixels", @@ -90,111 +83,77 @@ "error.license.email": "لطفا ایمیل صحیحی وارد کنید", "error.license.verification": "The license could not be verified", - "error.page.changeSlug.permission": - "شما امکان تغییر پسوند Url صفحه «{slug}» را ندارید", - "error.page.changeStatus.incomplete": - "صفحه حاوی خطا است و قابل انتشار نیست", - "error.page.changeStatus.permission": - "وضعیت صفحه جاری قابل تغییر نیست", - "error.page.changeStatus.toDraft.invalid": - "صفحه «{slug}» قابل تبدیل به پیش نویس نیست", - "error.page.changeTemplate.invalid": - "قالب صفحه «{slug}» قابل تغییر نیست", - "error.page.changeTemplate.permission": - "شما اجازه تغییر قالب «{slug}» را ندارید", + "error.page.changeSlug.permission": "شما امکان تغییر پسوند Url صفحه «{slug}» را ندارید", + "error.page.changeStatus.incomplete": "صفحه حاوی خطا است و قابل انتشار نیست", + "error.page.changeStatus.permission": "وضعیت صفحه جاری قابل تغییر نیست", + "error.page.changeStatus.toDraft.invalid": "صفحه «{slug}» قابل تبدیل به پیش نویس نیست", + "error.page.changeTemplate.invalid": "قالب صفحه «{slug}» قابل تغییر نیست", + "error.page.changeTemplate.permission": "شما اجازه تغییر قالب «{slug}» را ندارید", "error.page.changeTitle.empty": "عنوان اجباری است", - "error.page.changeTitle.permission": - "شما اجازه تغییر عنوان «{slug}» را ندارید", + "error.page.changeTitle.permission": "شما اجازه تغییر عنوان «{slug}» را ندارید", "error.page.create.permission": "شما اجازه ایجاد «{slug}» را ندارید", "error.page.delete": "حذف صفحه «{slug}» ممکن نیست", "error.page.delete.confirm": "جهت ادامه عنوان صفحه را وارد کنید", - "error.page.delete.hasChildren": - "این صفحه جاوی زیرصفحه است و نمی تواند حذف شود", + "error.page.delete.hasChildren": "این صفحه جاوی زیرصفحه است و نمی تواند حذف شود", "error.page.delete.permission": "شما اجازه حذف «{slug}» را ندارید", - "error.page.draft.duplicate": - "صفحه پیش‌نویسی با پسوند Url مشابه «{slug}» هم اکنون موجود است", - "error.page.duplicate": - "صفحه‌ای با آدرس Url مشابه «{slug}» هم اکنون موجود است", + "error.page.draft.duplicate": "صفحه پیش‌نویسی با پسوند Url مشابه «{slug}» هم اکنون موجود است", + "error.page.duplicate": "صفحه‌ای با آدرس Url مشابه «{slug}» هم اکنون موجود است", "error.page.duplicate.permission": "You are not allowed to duplicate \"{slug}\"", "error.page.notFound": "صفحه مورد نظر با آدرس «{slug}» پیدا نشد.", - "error.page.num.invalid": - "لطفا شماره ترتیب را بدرستی وارد نمایید. اعداد نباید منفی باشند.", + "error.page.num.invalid": "لطفا شماره ترتیب را بدرستی وارد نمایید. اعداد نباید منفی باشند.", "error.page.slug.invalid": "لطفا یک پیشوند Url صحیح وارد کنید", "error.page.sort.permission": "امکان مرتب‌سازی «{slug}» نیست", "error.page.status.invalid": "لطفا وضعیت صحیحی برای صفحه انتخاب کنید", "error.page.undefined": "صفحه مورد نظر پیدا نشد", "error.page.update.permission": "شما اجازه بروزرسانی «{slug}» را ندارید", - "error.section.files.max.plural": - "نباید بیش از {max} فایل به بخش «{section}» اضافه کنید", - "error.section.files.max.singular": - "نباید بیش از یک فایل به بخش «{section}» اضافه کنید", - "error.section.files.min.plural": - "The \"{section}\" section requires at least {min} files", - "error.section.files.min.singular": - "The \"{section}\" section requires at least one file", + "error.section.files.max.plural": "نباید بیش از {max} فایل به بخش «{section}» اضافه کنید", + "error.section.files.max.singular": "نباید بیش از یک فایل به بخش «{section}» اضافه کنید", + "error.section.files.min.plural": "The \"{section}\" section requires at least {min} files", + "error.section.files.min.singular": "The \"{section}\" section requires at least one file", - "error.section.pages.max.plural": - "نباید بیش از {max} صفحه به بخش «{section}» اضافه کنید", - "error.section.pages.max.singular": - "نباید بیش از یک صفحه به بخش «{section}» اضافه کنید", - "error.section.pages.min.plural": - "The \"{section}\" section requires at least {min} pages", - "error.section.pages.min.singular": - "The \"{section}\" section requires at least one page", + "error.section.pages.max.plural": "نباید بیش از {max} صفحه به بخش «{section}» اضافه کنید", + "error.section.pages.max.singular": "نباید بیش از یک صفحه به بخش «{section}» اضافه کنید", + "error.section.pages.min.plural": "The \"{section}\" section requires at least {min} pages", + "error.section.pages.min.singular": "The \"{section}\" section requires at least one page", "error.section.notLoaded": "بخش «{name}» قابل بارکذاری نیست", "error.section.type.invalid": "نوع بخش «{type}» غیرمجاز است", "error.site.changeTitle.empty": "عنوان اجباری است", - "error.site.changeTitle.permission": - "شما اجازه تغییر عنوان سایت را ندارید", + "error.site.changeTitle.permission": "شما اجازه تغییر عنوان سایت را ندارید", "error.site.update.permission": "شما اجازه بروزرسانی سایت را ندارید", "error.template.default.notFound": "قالب پیش فرض موجود نیست", - "error.user.changeEmail.permission": - "شما اجازه تغییر ایمیل کاربر «{name}» را ندارید", - "error.user.changeLanguage.permission": - "شما اجازه تغییر زبان برای کاربر «{name}» را ندارید", - "error.user.changeName.permission": - "شما اجازه تنغییر نام کاربر «{name}» را ندارید", - "error.user.changePassword.permission": - "شما اجازه تغییر رمز عبور کاربر «{name}» را ندارید", - "error.user.changeRole.lastAdmin": - "نقش آخرین مدیر سیستم قابل تغییر نیست", - "error.user.changeRole.permission": - "شما اجازه تغییر نقش کاربر «{name}» را ندارید", - "error.user.changeRole.toAdmin": - "You are not allowed to promote someone to the admin role", + "error.user.changeEmail.permission": "شما اجازه تغییر ایمیل کاربر «{name}» را ندارید", + "error.user.changeLanguage.permission": "شما اجازه تغییر زبان برای کاربر «{name}» را ندارید", + "error.user.changeName.permission": "شما اجازه تنغییر نام کاربر «{name}» را ندارید", + "error.user.changePassword.permission": "شما اجازه تغییر رمز عبور کاربر «{name}» را ندارید", + "error.user.changeRole.lastAdmin": "نقش آخرین مدیر سیستم قابل تغییر نیست", + "error.user.changeRole.permission": "شما اجازه تغییر نقش کاربر «{name}» را ندارید", + "error.user.changeRole.toAdmin": "You are not allowed to promote someone to the admin role", "error.user.create.permission": "شما اجازه ایجاد این کاربر را ندارید", "error.user.delete": "کاربر «{name}» نمی تواند حذف شود", "error.user.delete.lastAdmin": "\u062d\u0630\u0641 \u0622\u062e\u0631\u06cc\u0646 \u0645\u062f\u06cc\u0631 \u0633\u06cc\u0633\u062a\u0645 \u0645\u0645\u06a9\u0646 \u0646\u06cc\u0633\u062a", "error.user.delete.lastUser": "حذف آخرین کاربر ممکن نیست", - "error.user.delete.permission": - "شما اجازه حذف کاربر «{name}» را ندارید", - "error.user.duplicate": - "کاربری با ایمیل «{email}» هم اکنون موجود است", + "error.user.delete.permission": "شما اجازه حذف کاربر «{name}» را ندارید", + "error.user.duplicate": "کاربری با ایمیل «{email}» هم اکنون موجود است", "error.user.email.invalid": "لطفا یک ایمیل معتبر وارد کنید", "error.user.language.invalid": "لطفا زبان معتبری انتخاب کنید", "error.user.notFound": "کاربر «{name}» پیدا نشد", - "error.user.password.invalid": - "لطفا گذرواژه صحیحی با حداقل طول 8 حرف وارد کنید. ", + "error.user.password.invalid": "لطفا گذرواژه صحیحی با حداقل طول 8 حرف وارد کنید. ", "error.user.password.notSame": "\u0644\u0637\u0641\u0627 \u062a\u06a9\u0631\u0627\u0631 \u06af\u0630\u0631\u0648\u0627\u0698\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u0646\u0645\u0627\u06cc\u06cc\u062f", "error.user.password.undefined": "کاربر فاقد گذرواژه است", "error.user.role.invalid": "لطفا نقش صحیحی وارد نمایید", - "error.user.update.permission": - "شما اجازه بروزرسانی کاربر «{name}» را ندارید", + "error.user.update.permission": "شما اجازه بروزرسانی کاربر «{name}» را ندارید", "error.validation.accepted": "لطفا تایید کنید", "error.validation.alpha": "لطفا تنها از بین حروف a-z انتخاب کنید", - "error.validation.alphanum": - "لطفا تنها از بین حروف a-z و اعداد 0-9 انتخاب کنید", - "error.validation.between": - "لطفا مقداری مابین «{min}» و «{max}» وارد کنید", + "error.validation.alphanum": "لطفا تنها از بین حروف a-z و اعداد 0-9 انتخاب کنید", + "error.validation.between": "لطفا مقداری مابین «{min}» و «{max}» وارد کنید", "error.validation.boolean": "لطفا تایید یا رد کنید", - "error.validation.contains": - "لطفا مقداری شامل «{needle}» وارد کنید", + "error.validation.contains": "لطفا مقداری شامل «{needle}» وارد کنید", "error.validation.date": "لطفا تاریخ معتبری وارد کنید", "error.validation.date.after": "Please enter a date after {date}", "error.validation.date.before": "Please enter a date before {date}", @@ -210,18 +169,14 @@ "error.validation.less": "لطفا مقداری کمتر از {max} وارد کنید", "error.validation.match": "مقدار وارد شده با الگوی مورد نظر همخوانی ندارد", "error.validation.max": "لطفا مقداری کوچکتر یا مساوی {min} وارد کنید", - "error.validation.maxlength": - "لطفا عبارت کوتاه‌تری وارد کنید. (حداکثر {max} حرف)", + "error.validation.maxlength": "لطفا عبارت کوتاه‌تری وارد کنید. (حداکثر {max} حرف)", "error.validation.maxwords": "لطفا بیش از {max} کلمه وارد نکنید", "error.validation.min": "لطفا مقداری بزرگتر یا مساوی با {min} وارد کنید", - "error.validation.minlength": - "لطفا عبارتی طولانی‌تری وارد کنید. (حداقل {min} حرف)", + "error.validation.minlength": "لطفا عبارتی طولانی‌تری وارد کنید. (حداقل {min} حرف)", "error.validation.minwords": "لطفا حداقل {min} کلمه وارد کنید", "error.validation.more": "لطفا مقداری بیش از {min} وارد کنید", - "error.validation.notcontains": - "لطفا مقداری فاقد «{needle}» وارد کنید", - "error.validation.notin": - "لطفا از مقادیر روبرو استفاده نکنید: ({notin})", + "error.validation.notcontains": "لطفا مقداری فاقد «{needle}» وارد کنید", + "error.validation.notin": "لطفا از مقادیر روبرو استفاده نکنید: ({notin})", "error.validation.option": "لطفا گزینه معتبری انتخاب کنید", "error.validation.num": "لطفا عدد صحیحی وارد کنید", "error.validation.required": "لطفا مقداری وارد کنید", @@ -238,8 +193,7 @@ "field.structure.empty": "\u0645\u0648\u0631\u062f\u06cc \u0648\u062c\u0648\u062f \u0646\u062f\u0627\u0631\u062f.", "field.users.empty": "کاربری انتخاب نشده است", - "file.delete.confirm": - "آیا واقعا می خواهید این فایل را حذف کنید؟
{filename}", + "file.delete.confirm": "آیا واقعا می خواهید این فایل را حذف کنید؟
{filename}", "files": "فایل‌ها", "files.empty": "فایلی موجود نیست", @@ -251,29 +205,22 @@ "installation": "نصب و راه اندازی", "installation.completed": "پنل کاربری نصب شد", "installation.disabled": "نصب کننده پانل کاربری بصورت پیش‌فرض در سرورهای عمومی غیرفعال است. لطفا نصب را روی یک ماشین محلی اجرا کنید یا آن را با استفاده از panel.install فعال کنید.", - "installation.issues.accounts": - "پوشه /site/accounts موجود نیست یا قابل نوشتن نیست.", - "installation.issues.content": - "پوشه /content موجود نیست یا قابل نوشتن نیست", + "installation.issues.accounts": "پوشه /site/accounts موجود نیست یا قابل نوشتن نیست.", + "installation.issues.content": "پوشه /content موجود نیست یا قابل نوشتن نیست", "installation.issues.curl": "افزونه CURL مورد نیاز است", "installation.issues.headline": "نصب پانل کاربری ممکن نیست", - "installation.issues.mbstring": - "افزونه MB String مورد نیاز است", - "installation.issues.media": - "پوشه /media موجود نیست یا قابل نوشتن نیست", + "installation.issues.mbstring": "افزونه MB String مورد نیاز است", + "installation.issues.media": "پوشه /media موجود نیست یا قابل نوشتن نیست", "installation.issues.php": "لطفا از پی‌اچ‌پی 7 یا بالاتر استفاده کنید", - "installation.issues.server": - "کربی نیاز به Apache، Nginx یا Caddy دارد", + "installation.issues.server": "کربی نیاز به Apache، Nginx یا Caddy دارد", "installation.issues.sessions": "پوشه /site/sessions وجود ندارد یا قابل نوشتن نیست", "language": "\u0632\u0628\u0627\u0646", "language.code": "کد", "language.convert": "پیش‌فرض شود", - "language.convert.confirm": - "

آیا واقعا میخواهید {name} را به زبان پیشفرض تبدیل کنید؟ این عمل برگشت ناپذیر است.

اگر {name} دارای محتوای غیر ترجمه شده باشد، جایگزین معتبر دیگری نخواهد بود و ممکن است بخش‌هایی از سایت شما خالی باشد.

", + "language.convert.confirm": "

آیا واقعا میخواهید {name} را به زبان پیشفرض تبدیل کنید؟ این عمل برگشت ناپذیر است.

اگر {name} دارای محتوای غیر ترجمه شده باشد، جایگزین معتبر دیگری نخواهد بود و ممکن است بخش‌هایی از سایت شما خالی باشد.

", "language.create": "افزودن زبان جدید", - "language.delete.confirm": - "آیا واقعا میخواهید زبان {name} را به همراه تمام ترجمه‌ها حذف کنید؟ این عمل قابل بازگشت نخواهد بود!", + "language.delete.confirm": "آیا واقعا میخواهید زبان {name} را به همراه تمام ترجمه‌ها حذف کنید؟ این عمل قابل بازگشت نخواهد بود!", "language.deleted": "زبان مورد نظر حذف شد", "language.direction": "rtl", "language.direction.ltr": "چپ به راست", @@ -292,8 +239,7 @@ "license": "\u0645\u062c\u0648\u0632", "license.buy": "خرید مجوز", "license.register": "ثبت", - "license.register.help": - "پس از خرید از طریق ایمیل، کد مجوز خود را دریافت کردید. لطفا برای ثبت‌نام آن را کپی و اینجا پیست کنید.", + "license.register.help": "پس از خرید از طریق ایمیل، کد مجوز خود را دریافت کردید. لطفا برای ثبت‌نام آن را کپی و اینجا پیست کنید.", "license.register.label": "لطفا کد مجوز خود را وارد کنید", "license.register.success": "با تشکر از شما برای حمایت از کربی", "license.unregistered": "این یک نسخه آزمایشی ثبت نشده از کربی است", @@ -325,7 +271,7 @@ "months.april": "\u0622\u0648\u0631\u06cc\u0644", "months.august": "\u0627\u0648\u062a", "months.december": "\u062f\u0633\u0627\u0645\u0628\u0631", - "months.february": "\u0641\u0648\u0631\u06cc\u0647", + "months.february": "فوریه", "months.january": "\u0698\u0627\u0646\u0648\u06cc\u0647", "months.july": "\u0698\u0648\u0626\u06cc\u0647", "months.june": "\u0698\u0648\u0626\u0646", @@ -354,10 +300,8 @@ "page.changeStatus.position": "لطفا یک موقعیت را انتخاب کنید", "page.changeStatus.select": "یک وضعیت جدید را انتخاب کنید", "page.changeTemplate": "تغییر قالب", - "page.delete.confirm": - "صفحه {title} حذف شود؟", - "page.delete.confirm.subpages": - "این صفحه دارای زیرصفحه است.
تمام زیر صفحات نیز حذف خواهد شد.", + "page.delete.confirm": "صفحه {title} حذف شود؟", + "page.delete.confirm.subpages": "این صفحه دارای زیرصفحه است.
تمام زیر صفحات نیز حذف خواهد شد.", "page.delete.confirm.title": "جهت ادامه عنوان صفحه را وارد کنید", "page.draft.create": "ایجاد پیش‌نویس", "page.duplicate.appendix": "کپی", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Copy pages", "page.status": "وضعیت", "page.status.draft": "پیش‌نویس", - "page.status.draft.description": - "این صفحه در حالت پیش‌نویس است و تنها برای ویرایشگران وارد شده قابل مشاهده است", + "page.status.draft.description": "The page is in draft mode and only visible for logged in editors or via secret link", "page.status.listed": "عمومی", "page.status.listed.description": "این صفحه برای عموم قابل مشاهده است", "page.status.unlisted": "فهرست نشده", @@ -388,6 +331,7 @@ "replace": "\u062c\u0627\u06cc\u06af\u0632\u06cc\u0646\u06cc", "retry": "\u062a\u0644\u0627\u0634 \u0645\u062c\u062f\u062f", "revert": "بازگرداندن تغییرات", + "revert.confirm": "Do you really want to delete all unsaved changes?", "role": "\u0646\u0642\u0634", "role.admin.description": "The admin has all rights", @@ -451,8 +395,7 @@ "url.placeholder": "https://example.com", "user": "کاربر", - "user.blueprint": - "شما می توانید قسمت‌های اضافی و فیلدهای فرم را برای این نقش کاربر در /site/blueprints/users/{role}.yml تعریف کنید", + "user.blueprint": "شما می توانید قسمت‌های اضافی و فیلدهای فرم را برای این نقش کاربر در /site/blueprints/users/{role}.yml تعریف کنید", "user.changeEmail": "تغییر ایمیل", "user.changeLanguage": "تغییر زبان", "user.changeName": "تغییر نام این کاربر", @@ -463,8 +406,7 @@ "user.changeRole.select": "یک نقش جدید را انتخاب کنید", "user.create": "افزودن کاربر جدید", "user.delete": "حذف کاربر جاری", - "user.delete.confirm": - "آیا واقعا میخواهید {email} را حذف کنید؟", + "user.delete.confirm": "آیا واقعا میخواهید {email} را حذف کنید؟", "users": "کاربران", diff --git a/kirby/i18n/translations/fi.json b/kirby/i18n/translations/fi.json index a9794ac..80d27ff 100755 --- a/kirby/i18n/translations/fi.json +++ b/kirby/i18n/translations/fi.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "Profiilikuvaa ei voitu lähettää", "error.avatar.delete.fail": "Profiilikuvaa ei voitu poistaa", - "error.avatar.dimensions.invalid": - "Profiilikuvan leveys ja korkeus voivat olla enintään 3000 pikseliä", - "error.avatar.mime.forbidden": - "Profiilikuvan täytyy olla joko JPEG- tai PNG-formaatissa", + "error.avatar.dimensions.invalid": "Profiilikuvan leveys ja korkeus voivat olla enintään 3000 pikseliä", + "error.avatar.mime.forbidden": "Profiilikuvan täytyy olla joko JPEG- tai PNG-formaatissa", "error.blueprint.notFound": "Kaavaa \"{name}\" ei voitu ladata", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Muunnin \"{converter}\" ei kelpaa", "error.file.changeName.empty": "Nimi ei voi olla tyhjä", - "error.file.changeName.permission": - "Sinulla ei ole oikeutta muuttaa tiedoston \"{filename}\" nimeä", + "error.file.changeName.permission": "Sinulla ei ole oikeutta muuttaa tiedoston \"{filename}\" nimeä", "error.file.duplicate": "Tiedosto nimellä \"{filename}\" on jo olemassa", - "error.file.extension.forbidden": - "Tiedostopääte \"{extension}\" ei ole sallittu", - "error.file.extension.missing": - "Tiedoston \"{filename}\" tiedostopääte puuttuu", + "error.file.extension.forbidden": "Tiedostopääte \"{extension}\" ei ole sallittu", + "error.file.extension.missing": "Tiedoston \"{filename}\" tiedostopääte puuttuu", "error.file.maxheight": "The height of the image must not exceed {height} pixels", "error.file.maxsize": "The file is too large", "error.file.maxwidth": "The width of the image must not exceed {width} pixels", - "error.file.mime.differs": - "Lähetetyllä tiedostolla täytyy olla sama mime-tyyppi \"{mime}\"", + "error.file.mime.differs": "Lähetetyllä tiedostolla täytyy olla sama mime-tyyppi \"{mime}\"", "error.file.mime.forbidden": "Median tyyppi \"{mime}\" ei ole sallittu", "error.file.mime.invalid": "Invalid mime type: {mime}", - "error.file.mime.missing": - "Tiedoston \"{filename}\" mediatyyppiä ei voida tunnistaa", + "error.file.mime.missing": "Tiedoston \"{filename}\" mediatyyppiä ei voida tunnistaa", "error.file.minheight": "The height of the image must be at least {height} pixels", "error.file.minsize": "The file is too small", "error.file.minwidth": "The width of the image must be at least {width} pixels", @@ -90,111 +83,77 @@ "error.license.email": "Anna kelpaava sähköpostiosoite", "error.license.verification": "Lisenssiä ei voitu vahvistaa", - "error.page.changeSlug.permission": - "Sinulla ei ole oikeutta muuttaa URL-liitettä sivulle \"{slug}\"", - "error.page.changeStatus.incomplete": - "Sivulla on virheitä eikä sitä voitu julkaista", - "error.page.changeStatus.permission": - "Tämän sivun tilaa ei voi muuttaa", - "error.page.changeStatus.toDraft.invalid": - "Sivua \"{slug}\" ei voi muuttaa luonnokseksi", - "error.page.changeTemplate.invalid": - "Sivun \"{slug}\" pohjaa ei voi muuttaa", - "error.page.changeTemplate.permission": - "Sinulla ei ole oikeutta muuttaa sivun \"{slug}\" sivupohjaa", + "error.page.changeSlug.permission": "Sinulla ei ole oikeutta muuttaa URL-liitettä sivulle \"{slug}\"", + "error.page.changeStatus.incomplete": "Sivulla on virheitä eikä sitä voitu julkaista", + "error.page.changeStatus.permission": "Tämän sivun tilaa ei voi muuttaa", + "error.page.changeStatus.toDraft.invalid": "Sivua \"{slug}\" ei voi muuttaa luonnokseksi", + "error.page.changeTemplate.invalid": "Sivun \"{slug}\" pohjaa ei voi muuttaa", + "error.page.changeTemplate.permission": "Sinulla ei ole oikeutta muuttaa sivun \"{slug}\" sivupohjaa", "error.page.changeTitle.empty": "Nimi ei voi olla tyhjä", - "error.page.changeTitle.permission": - "Sinulla ei ole oikeutta muuttaa sivun \"{slug}\" nimeä", + "error.page.changeTitle.permission": "Sinulla ei ole oikeutta muuttaa sivun \"{slug}\" nimeä", "error.page.create.permission": "Sinulla ei ole oikeutta luoda sivua \"{slug}\"", "error.page.delete": "Sivua \"{slug}\" ei voi poistaa", "error.page.delete.confirm": "Anna vahvistuksena sivun nimi", - "error.page.delete.hasChildren": - "Sivu sisältää alasivuja eikä sitä voida poistaa", + "error.page.delete.hasChildren": "Sivu sisältää alasivuja eikä sitä voida poistaa", "error.page.delete.permission": "Sinulla ei ole oikeutta poistaa sivua \"{slug}\"", - "error.page.draft.duplicate": - "Sivuluonnos URL-liitteellä \"{slug}\" on jo olemassa", - "error.page.duplicate": - "Sivu URL-liitteellä \"{slug}\" on jo olemassa", + "error.page.draft.duplicate": "Sivuluonnos URL-liitteellä \"{slug}\" on jo olemassa", + "error.page.duplicate": "Sivu URL-liitteellä \"{slug}\" on jo olemassa", "error.page.duplicate.permission": "Sinulla ei ole oikeutta kahdentaa sivua \"{slug}\"", "error.page.notFound": "Sivua \"{slug}\" ei löytynyt", - "error.page.num.invalid": - "Anna kelpaava järjestysnumero. Numero ei voi olla negatiivinen.", + "error.page.num.invalid": "Anna kelpaava järjestysnumero. Numero ei voi olla negatiivinen.", "error.page.slug.invalid": "Anna kelpaava URL-etuliite", "error.page.sort.permission": "Sivua \"{slug}\" ei voi järjestellä", "error.page.status.invalid": "Aseta kelvollinen sivun tila", "error.page.undefined": "Sivua ei l\u00f6ytynyt", "error.page.update.permission": "Sinulla ei ole oikeutta päivittää sivua \"{slug}\"", - "error.section.files.max.plural": - "Et voi lisätä enemmän kuin {max} tiedostoa osioon \"{section}\"", - "error.section.files.max.singular": - "Et voi lisätä enempää kuin yhden tiedoston osioon \"{section}\"", - "error.section.files.min.plural": - "Osio \"{section}\" vaatii ainakin {min} tiedostoa", - "error.section.files.min.singular": - "Osio \"{section}\" vaatii ainakin yhden sivun", + "error.section.files.max.plural": "Et voi lisätä enemmän kuin {max} tiedostoa osioon \"{section}\"", + "error.section.files.max.singular": "Et voi lisätä enempää kuin yhden tiedoston osioon \"{section}\"", + "error.section.files.min.plural": "Osio \"{section}\" vaatii ainakin {min} tiedostoa", + "error.section.files.min.singular": "Osio \"{section}\" vaatii ainakin yhden sivun", - "error.section.pages.max.plural": - "Et voi lisätä enemmän kuin {max} sivua osioon \"{section}\"", - "error.section.pages.max.singular": - "Et voi lisätä enempää kuin yhden sivun osioon \"{section}\"", - "error.section.pages.min.plural": - "Osio \"{section}\" vaatii ainakin {min} sivua", - "error.section.pages.min.singular": - "Osio \"{section}\" vaatii ainakin yhden sivun", + "error.section.pages.max.plural": "Et voi lisätä enemmän kuin {max} sivua osioon \"{section}\"", + "error.section.pages.max.singular": "Et voi lisätä enempää kuin yhden sivun osioon \"{section}\"", + "error.section.pages.min.plural": "Osio \"{section}\" vaatii ainakin {min} sivua", + "error.section.pages.min.singular": "Osio \"{section}\" vaatii ainakin yhden sivun", "error.section.notLoaded": "Osiota \"{name}\" ei voitu ladata", "error.section.type.invalid": "Osion tyyppi \"{type}\" ei ole kelvollinen", "error.site.changeTitle.empty": "Nimi ei voi olla tyhjä", - "error.site.changeTitle.permission": - "Sinulla ei ole oikeutta päivittää sivuston nimeä", + "error.site.changeTitle.permission": "Sinulla ei ole oikeutta päivittää sivuston nimeä", "error.site.update.permission": "Sinulla ei ole oikeutta päivittää sivuston tietoja", "error.template.default.notFound": "Oletussivupohjaa ei ole määritetty", - "error.user.changeEmail.permission": - "Sinulla ei ole oikeutta vaihtaa käyttäjän \"{name}\" sähköpostiosoitetta", - "error.user.changeLanguage.permission": - "Sinulla ei ole oikeutta vaihtaa käyttäjän \"{name}\" kieltä", - "error.user.changeName.permission": - "Sinulla ei ole oikeutta vaihtaa käyttäjän \"{name}\" nimeä", - "error.user.changePassword.permission": - "Sinulla ei ole oikeutta vaihtaa käyttäjän \"{name}\" salasanaa", - "error.user.changeRole.lastAdmin": - "Ainoan pääkäyttäjän roolia ei voi muuttaa", - "error.user.changeRole.permission": - "Sinulla ei ole oikeutta vaihtaa käyttäjän \"{name}\" käyttäjätasoa", - "error.user.changeRole.toAdmin": - "Sinulla ei ole oikeutta vaihtaa käyttäjätasoa pääkäyttäjäksi", + "error.user.changeEmail.permission": "Sinulla ei ole oikeutta vaihtaa käyttäjän \"{name}\" sähköpostiosoitetta", + "error.user.changeLanguage.permission": "Sinulla ei ole oikeutta vaihtaa käyttäjän \"{name}\" kieltä", + "error.user.changeName.permission": "Sinulla ei ole oikeutta vaihtaa käyttäjän \"{name}\" nimeä", + "error.user.changePassword.permission": "Sinulla ei ole oikeutta vaihtaa käyttäjän \"{name}\" salasanaa", + "error.user.changeRole.lastAdmin": "Ainoan pääkäyttäjän roolia ei voi muuttaa", + "error.user.changeRole.permission": "Sinulla ei ole oikeutta vaihtaa käyttäjän \"{name}\" käyttäjätasoa", + "error.user.changeRole.toAdmin": "Sinulla ei ole oikeutta vaihtaa käyttäjätasoa pääkäyttäjäksi", "error.user.create.permission": "Sinulla ei ole oikeutta luoda tätä käyttäjää", "error.user.delete": "Käyttäjää \"{name}\" ei voi poistaa", "error.user.delete.lastAdmin": "Ainoaa pääkäyttäjää ei voi poistaa", "error.user.delete.lastUser": "Ainoaa käyttäjää ei voi poistaa", - "error.user.delete.permission": - "Sinulla ei ole oikeutta poistaa käyttäjää \"{name}\"", - "error.user.duplicate": - "Käyttäjä, jonka sähköpostiosoite on \"{name}\", on jo olemassa", + "error.user.delete.permission": "Sinulla ei ole oikeutta poistaa käyttäjää \"{name}\"", + "error.user.duplicate": "Käyttäjä, jonka sähköpostiosoite on \"{name}\", on jo olemassa", "error.user.email.invalid": "Anna kelpaava sähköpostiosoite", "error.user.language.invalid": "Anna kelpaava kieli", "error.user.notFound": "K\u00e4ytt\u00e4j\u00e4\u00e4 ei l\u00f6ytynyt", - "error.user.password.invalid": - "Anna kelpaava salasana. Salasanan täytyy olla ainakin 8 merkkiä pitkä.", + "error.user.password.invalid": "Anna kelpaava salasana. Salasanan täytyy olla ainakin 8 merkkiä pitkä.", "error.user.password.notSame": "Salasanat eivät täsmää", "error.user.password.undefined": "Käyttäjällä ei ole salasanaa", "error.user.role.invalid": "Anna kelpaava käyttäjätaso", - "error.user.update.permission": - "Sinulla ei ole oikeutta päivittää käyttäjää \"{name}\"", + "error.user.update.permission": "Sinulla ei ole oikeutta päivittää käyttäjää \"{name}\"", "error.validation.accepted": "Ole hyvä ja vahvista", "error.validation.alpha": "Anna vain merkkejä väliltä a-z", - "error.validation.alphanum": - "Anna vain merkkejä väliltä a-z tai/ja numeroita väliltä 0-9", - "error.validation.between": - "Anna arvo väliltä \"{min}\" ja \"{max}\"", + "error.validation.alphanum": "Anna vain merkkejä väliltä a-z tai/ja numeroita väliltä 0-9", + "error.validation.between": "Anna arvo väliltä \"{min}\" ja \"{max}\"", "error.validation.boolean": "Vahvista tai peruuta", - "error.validation.contains": - "Anna arvo joka sisältää \"{needle}\"", + "error.validation.contains": "Anna arvo joka sisältää \"{needle}\"", "error.validation.date": "Anna kelpaava päivämäärä", "error.validation.date.after": "Anna päivämäärä {date} jälkeen", "error.validation.date.before": "Anna päivämäärä ennen {date}", @@ -210,18 +169,14 @@ "error.validation.less": "Anna arvo joka on pienempi kuin {max}", "error.validation.match": "Arvo ei vastaa vaadittua kaavaa", "error.validation.max": "Anna arvo joka on enintään {max}", - "error.validation.maxlength": - "Anna lyhyempi arvo. (enintään {max} merkkiä)", + "error.validation.maxlength": "Anna lyhyempi arvo. (enintään {max} merkkiä)", "error.validation.maxwords": "Anna korkeintaan {max} sana(a)", "error.validation.min": "Anna arvo joka on vähintään {min}", - "error.validation.minlength": - "Anna pidempi arvo. (vähintään {min} merkkiä)", + "error.validation.minlength": "Anna pidempi arvo. (vähintään {min} merkkiä)", "error.validation.minwords": "Anna vähintään {min} sana(a)", "error.validation.more": "Anna suurempi arvo kuin {min}", - "error.validation.notcontains": - "Anna arvo joka ei sisällä \"{needle}\"", - "error.validation.notin": - "Arvo ei voi sisältää mitään seuraavista: ({notIn})", + "error.validation.notcontains": "Anna arvo joka ei sisällä \"{needle}\"", + "error.validation.notin": "Arvo ei voi sisältää mitään seuraavista: ({notIn})", "error.validation.option": "Valitse kelpaava vaihtoehto", "error.validation.num": "Anna kelpaava numero", "error.validation.required": "Arvo ei voi olla tyhjä", @@ -238,8 +193,7 @@ "field.structure.empty": "Rivejä ei ole vielä lisätty", "field.users.empty": "Käyttäjiä ei ole vielä valittu", - "file.delete.confirm": - "Haluatko varmasti poistaa tiedoston
{filename}?", + "file.delete.confirm": "Haluatko varmasti poistaa tiedoston
{filename}?", "files": "Tiedostot", "files.empty": "Tiedostoja ei ole vielä lisätty", @@ -251,29 +205,22 @@ "installation": "Asennus", "installation.completed": "Paneeli on asennettu", "installation.disabled": "Paneelin asennus on oletuksena poissa käytöstä julkisilla palvelimilla. Aja asennus paikallisella koneella, tai ota paneeli käyttöön panel.install-optiolla.", - "installation.issues.accounts": - "/site/accounts -kansio ei ole olemassa tai siihen ei voi kirjoittaa", - "installation.issues.content": - "/content -kansio ei ole olemassa tai siihen ei voi kirjoittaa", + "installation.issues.accounts": "/site/accounts -kansio ei ole olemassa tai siihen ei voi kirjoittaa", + "installation.issues.content": "/content -kansio ei ole olemassa tai siihen ei voi kirjoittaa", "installation.issues.curl": "CURL-laajennos on pakollinen", "installation.issues.headline": "Paneelia ei voida asentaa", - "installation.issues.mbstring": - "MB String-laajennos on pakollinen", - "installation.issues.media": - "/media -kansio ei ole olemassa tai siihen ei voi kirjoittaa", + "installation.issues.mbstring": "MB String-laajennos on pakollinen", + "installation.issues.media": "/media -kansio ei ole olemassa tai siihen ei voi kirjoittaa", "installation.issues.php": "Varmista että PHP 7+ on käytössä", - "installation.issues.server": - "Kirby tarvitsee jonkun seuraavista: Apache, Nginx tai Caddy", + "installation.issues.server": "Kirby tarvitsee jonkun seuraavista: Apache, Nginx tai Caddy", "installation.issues.sessions": "/site/sessions -kansio ei ole olemassa tai siihen ei voi kirjoittaa", "language": "Kieli", "language.code": "Tunniste", "language.convert": "Muuta oletukseksi", - "language.convert.confirm": - "

Haluatko varmasti muuttaa kielen {name} oletuskieleksi? Tätä muutosta ei voi peruuttaa.

Jos{name} sisältää kääntämättömiä kohtia, varakäännöstä ei enää ole näille kohdille ja sivustosi saattaa olla osittain tyhjä.

", + "language.convert.confirm": "

Haluatko varmasti muuttaa kielen {name} oletuskieleksi? Tätä muutosta ei voi peruuttaa.

Jos{name} sisältää kääntämättömiä kohtia, varakäännöstä ei enää ole näille kohdille ja sivustosi saattaa olla osittain tyhjä.

", "language.create": "Lisää uusi kieli", - "language.delete.confirm": - "Haluatko varmasti poistaa kielen {name}, mukaanlukien kaikki käännökset? Tätä toimintoa ei voi peruuttaa!", + "language.delete.confirm": "Haluatko varmasti poistaa kielen {name}, mukaanlukien kaikki käännökset? Tätä toimintoa ei voi peruuttaa!", "language.deleted": "Kieli on poistettu", "language.direction": "Lukusuunta", "language.direction.ltr": "Vasemmalta oikealle", @@ -292,8 +239,7 @@ "license": "Lisenssi", "license.buy": "Osta lisenssi", "license.register": "Rekisteröi", - "license.register.help": - "Lisenssiavain on lähetetty oston jälkeen sähköpostiisi. Kopioi ja liitä avain tähän.", + "license.register.help": "Lisenssiavain on lähetetty oston jälkeen sähköpostiisi. Kopioi ja liitä avain tähän.", "license.register.label": "Anna lisenssiavain", "license.register.success": "Kiitos kun tuet Kirbyä", "license.unregistered": "Tämä on rekisteröimätön demo Kirbystä", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Valitse järjestyspaikka", "page.changeStatus.select": "Valitse uusi tila", "page.changeTemplate": "Vaihda sivupohja", - "page.delete.confirm": - "Haluatko varmasti poistaa sivun {title}?", - "page.delete.confirm.subpages": - "Tällä sivulla on alasivuja.
Myös kaikki alasivut poistetaan.", + "page.delete.confirm": "Haluatko varmasti poistaa sivun {title}?", + "page.delete.confirm.subpages": "Tällä sivulla on alasivuja.
Myös kaikki alasivut poistetaan.", "page.delete.confirm.title": "Anna vahvistuksena sivun nimi", "page.draft.create": "Uusi luonnos", "page.duplicate.appendix": "Kopioi", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Copy pages", "page.status": "Tila", "page.status.draft": "Luonnos", - "page.status.draft.description": - "Sivu on luonnostilassa ja näkyy vain kirjautuneille muokkaajille", + "page.status.draft.description": "The page is in draft mode and only visible for logged in editors or via secret link", "page.status.listed": "Julkinen", "page.status.listed.description": "Sivu on julkinen kaikille", "page.status.unlisted": "Listaamaton", @@ -388,6 +331,7 @@ "replace": "Korvaa", "retry": "Yrit\u00e4 uudelleen", "revert": "Palauta", + "revert.confirm": "Do you really want to delete all unsaved changes?", "role": "K\u00e4ytt\u00e4j\u00e4taso", "role.admin.description": "Pääkäyttäjällä on kaikki oikeudet", @@ -451,8 +395,7 @@ "url.placeholder": "https://esimerkki.fi", "user": "Käyttäjä", - "user.blueprint": - "Voit määrittää lisää osioita ja lomakekenttiä tälle käyttäjälle kaavassa /site/blueprints/users/{role}.yml", + "user.blueprint": "Voit määrittää lisää osioita ja lomakekenttiä tälle käyttäjälle kaavassa /site/blueprints/users/{role}.yml", "user.changeEmail": "Muuta sähköpostiosoite", "user.changeLanguage": "Vaihda kieli", "user.changeName": "Nimeä uudelleen", @@ -463,8 +406,7 @@ "user.changeRole.select": "Valitse uusi käyttäjätaso", "user.create": "Lisää uusi käyttäjä", "user.delete": "Poista tämä käyttäjä", - "user.delete.confirm": - "Haluatko varmsti poistaa käyttäjän
{email}?", + "user.delete.confirm": "Haluatko varmsti poistaa käyttäjän
{email}?", "users": "Käyttäjät", diff --git a/kirby/i18n/translations/fr.json b/kirby/i18n/translations/fr.json index 3c76d1c..61eacc9 100755 --- a/kirby/i18n/translations/fr.json +++ b/kirby/i18n/translations/fr.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "L’image du profil n’a pu être transférée", "error.avatar.delete.fail": "L’image du profil n’a pu être supprimée", - "error.avatar.dimensions.invalid": - "Veuillez choisir une image de profil de largeur et hauteur inférieures à 3000 pixels", - "error.avatar.mime.forbidden": - "L'image du profil utilisateur doit être un fichier JPEG ou PNG", + "error.avatar.dimensions.invalid": "Veuillez choisir une image de profil de largeur et hauteur inférieures à 3000 pixels", + "error.avatar.mime.forbidden": "L'image du profil utilisateur doit être un fichier JPEG ou PNG", "error.blueprint.notFound": "Le blueprint « {name} » n’a pu être chargé", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Convertisseur « {converter} » incorrect", "error.file.changeName.empty": "Le nom ne peut être vide", - "error.file.changeName.permission": - "Vous n’êtes pas autorisé à modifier le nom de « {filename} »", + "error.file.changeName.permission": "Vous n’êtes pas autorisé à modifier le nom de « {filename} »", "error.file.duplicate": "Un fichier nommé « {filename} » existe déjà", - "error.file.extension.forbidden": - "L’extension « {extension} » n’est pas autorisée", - "error.file.extension.missing": - "L’extension pour « {filename} » est manquante", + "error.file.extension.forbidden": "L’extension « {extension} » n’est pas autorisée", + "error.file.extension.missing": "L’extension pour « {filename} » est manquante", "error.file.maxheight": "La hauteur de l'image ne doit pas excéder {height} pixels", "error.file.maxsize": "Le fichier est trop volumineux", "error.file.maxwidth": "La largeur de l'image ne doit pas excéder {width} pixels", - "error.file.mime.differs": - "Le fichier transféré doit être du même type de média « {mime} »", + "error.file.mime.differs": "Le fichier transféré doit être du même type de média « {mime} »", "error.file.mime.forbidden": "Le type de média « {mime} » n’est pas autorisé", "error.file.mime.invalid": "Type de média invalide : {mime}", - "error.file.mime.missing": - "Le type de média de « {filename} » n’a pu être détecté", + "error.file.mime.missing": "Le type de média de « {filename} » n’a pu être détecté", "error.file.minheight": "La hauteur de l'image doit être au moins {height} pixels", "error.file.minsize": "Le fichier n'est pas assez volumineux", "error.file.minwidth": "La largeur de l'image doit être au moins {width} pixels", @@ -90,111 +83,77 @@ "error.license.email": "Veuillez saisir un courriel valide", "error.license.verification": "La licence n’a pu être vérifiée", - "error.page.changeSlug.permission": - "Vous n’êtes pas autorisé à modifier l’identifiant d’URL pour « {slug} »", - "error.page.changeStatus.incomplete": - "La page comporte des erreurs et ne peut pas être publiée", - "error.page.changeStatus.permission": - "Le statut de cette page ne peut être modifié", - "error.page.changeStatus.toDraft.invalid": - "La page « {slug} » ne peut être convertie en brouillon", - "error.page.changeTemplate.invalid": - "Le modèle de la page « {slug} » ne peut être changé", - "error.page.changeTemplate.permission": - "Vous n’êtes pas autorisé à changer le modèle de « {slug} »", + "error.page.changeSlug.permission": "Vous n’êtes pas autorisé à modifier l’identifiant d’URL pour « {slug} »", + "error.page.changeStatus.incomplete": "La page comporte des erreurs et ne peut pas être publiée", + "error.page.changeStatus.permission": "Le statut de cette page ne peut être modifié", + "error.page.changeStatus.toDraft.invalid": "La page « {slug} » ne peut être convertie en brouillon", + "error.page.changeTemplate.invalid": "Le modèle de la page « {slug} » ne peut être changé", + "error.page.changeTemplate.permission": "Vous n’êtes pas autorisé à changer le modèle de « {slug} »", "error.page.changeTitle.empty": "Le titre ne peut être vide", - "error.page.changeTitle.permission": - "Vous n’êtes pas autorisé à modifier le titre de « {slug} »", + "error.page.changeTitle.permission": "Vous n’êtes pas autorisé à modifier le titre de « {slug} »", "error.page.create.permission": "Vous n’êtes pas autorisé à créer « {slug} »", "error.page.delete": "La page « {slug} » ne peut être supprimée", "error.page.delete.confirm": "Veuillez saisir le titre de la page pour confirmer", - "error.page.delete.hasChildren": - "La page comporte des sous-pages et ne peut pas être supprimée", + "error.page.delete.hasChildren": "La page comporte des sous-pages et ne peut pas être supprimée", "error.page.delete.permission": "Vous n’êtes pas autorisé à supprimer « {slug} »", - "error.page.draft.duplicate": - "Un brouillon avec l’identifiant d’URL « {slug} » existe déjà", - "error.page.duplicate": - "Une page avec l’identifiant d’URL « {slug} » existe déjà", + "error.page.draft.duplicate": "Un brouillon avec l’identifiant d’URL « {slug} » existe déjà", + "error.page.duplicate": "Une page avec l’identifiant d’URL « {slug} » existe déjà", "error.page.duplicate.permission": "Vous n'êtes pas autorisé à dupliquer « {slug} »", "error.page.notFound": "La page « {slug} » n’a pu être trouvée", - "error.page.num.invalid": - "Veuillez saisir un numéro de position valide. Les numéros ne doivent pas être négatifs.", + "error.page.num.invalid": "Veuillez saisir un numéro de position valide. Les numéros ne doivent pas être négatifs.", "error.page.slug.invalid": "Veuillez saisir un préfixe d’URL valide", "error.page.sort.permission": "La page « {slug} » ne peut être réordonnée", "error.page.status.invalid": "Veuillez choisir un statut de page valide", "error.page.undefined": "La page n’a pu être trouvée", "error.page.update.permission": "Vous n’êtes pas autorisé à modifier « {slug} »", - "error.section.files.max.plural": - "Vous ne pouvez ajouter plus de {max} fichier(s) à la section « {section} »", - "error.section.files.max.singular": - "Vous ne pouvez ajouter plus d’un fichier à la section « {section} »", - "error.section.files.min.plural": - "La section « {section}\" » requiert au moins {min} fichiers", - "error.section.files.min.singular": - "La section « {section}\" » requiert au moins un fichier", + "error.section.files.max.plural": "Vous ne pouvez ajouter plus de {max} fichier(s) à la section « {section} »", + "error.section.files.max.singular": "Vous ne pouvez ajouter plus d’un fichier à la section « {section} »", + "error.section.files.min.plural": "La section « {section}\" » requiert au moins {min} fichiers", + "error.section.files.min.singular": "La section « {section}\" » requiert au moins un fichier", - "error.section.pages.max.plural": - "Vous ne pouvez ajouter plus de {max} pages à la section « {section} »", - "error.section.pages.max.singular": - "Vous ne pouvez ajouter plus d’une page à la section « {section} »", - "error.section.pages.min.plural": - "La section « {section}\" » requiert au moins {min} pages", - "error.section.pages.min.singular": - "La section « {section}\" » requiert au moins une page", + "error.section.pages.max.plural": "Vous ne pouvez ajouter plus de {max} pages à la section « {section} »", + "error.section.pages.max.singular": "Vous ne pouvez ajouter plus d’une page à la section « {section} »", + "error.section.pages.min.plural": "La section « {section}\" » requiert au moins {min} pages", + "error.section.pages.min.singular": "La section « {section}\" » requiert au moins une page", "error.section.notLoaded": "La section « {name} » n’a pu être chargée", "error.section.type.invalid": "Le type de section « {type} » est incorrect", "error.site.changeTitle.empty": "Le titre ne peut être vide", - "error.site.changeTitle.permission": - "Vous n’êtes pas autorisé à modifier le titre du site", + "error.site.changeTitle.permission": "Vous n’êtes pas autorisé à modifier le titre du site", "error.site.update.permission": "Vous n’êtes pas autorisé à modifier le contenu global du site", "error.template.default.notFound": "Le modèle par défaut n’existe pas", - "error.user.changeEmail.permission": - "Vous n’êtes pas autorisé à modifier le courriel de l’utilisateur « {name} »", - "error.user.changeLanguage.permission": - "Vous n’êtes pas autorisé à changer la langue de l’utilisateur « {name} »", - "error.user.changeName.permission": - "Vous n’êtes pas autorisé à modifier le nom de l’utilisateur « {name} »", - "error.user.changePassword.permission": - "Vous n’êtes pas autorisé à changer le mot de passe de l’utilisateur « {name} »", - "error.user.changeRole.lastAdmin": - "Le rôle du dernier administrateur ne peut être modifié", - "error.user.changeRole.permission": - "Vous n’êtes pas autorisé à changer le rôle de l’utilisateur « {name} »", - "error.user.changeRole.toAdmin": - "Vous n’êtes pas autorisé à attribuer le rôle d’administrateur aux utilisateurs", + "error.user.changeEmail.permission": "Vous n’êtes pas autorisé à modifier le courriel de l’utilisateur « {name} »", + "error.user.changeLanguage.permission": "Vous n’êtes pas autorisé à changer la langue de l’utilisateur « {name} »", + "error.user.changeName.permission": "Vous n’êtes pas autorisé à modifier le nom de l’utilisateur « {name} »", + "error.user.changePassword.permission": "Vous n’êtes pas autorisé à changer le mot de passe de l’utilisateur « {name} »", + "error.user.changeRole.lastAdmin": "Le rôle du dernier administrateur ne peut être modifié", + "error.user.changeRole.permission": "Vous n’êtes pas autorisé à changer le rôle de l’utilisateur « {name} »", + "error.user.changeRole.toAdmin": "Vous n’êtes pas autorisé à attribuer le rôle d’administrateur aux utilisateurs", "error.user.create.permission": "Vous n’êtes pas autorisé à créer cet utilisateur", "error.user.delete": "L’utilisateur « {name} » ne peut être supprimé", "error.user.delete.lastAdmin": "Le dernier administrateur ne peut être supprimé", "error.user.delete.lastUser": "Le dernier utilisateur ne peut être supprimé", - "error.user.delete.permission": - "Vous n’êtes pas autorisé à supprimer l’utilisateur « {name} »", - "error.user.duplicate": - "Un utilisateur avec le courriel « {email} » existe déjà", + "error.user.delete.permission": "Vous n’êtes pas autorisé à supprimer l’utilisateur « {name} »", + "error.user.duplicate": "Un utilisateur avec le courriel « {email} » existe déjà", "error.user.email.invalid": "Veuillez saisir un courriel valide", "error.user.language.invalid": "Veuillez saisir une langue valide", "error.user.notFound": "L’utilisateur « {name} » n’a pu être trouvé", - "error.user.password.invalid": - "Veuillez saisir un mot de passe valide. Les mots de passe doivent comporter au moins 8 caractères.", + "error.user.password.invalid": "Veuillez saisir un mot de passe valide. Les mots de passe doivent comporter au moins 8 caractères.", "error.user.password.notSame": "Les mots de passe ne sont pas identiques", "error.user.password.undefined": "Cet utilisateur n’a pas de mot de passe", "error.user.role.invalid": "Veuillez saisir un rôle valide", - "error.user.update.permission": - "Vous n’êtes pas autorisé à modifier l’utilisateur « {name} »", + "error.user.update.permission": "Vous n’êtes pas autorisé à modifier l’utilisateur « {name} »", "error.validation.accepted": "Veuillez confirmer", "error.validation.alpha": "Veuillez saisir uniquement des caractères alphabétiques minuscules", - "error.validation.alphanum": - "Veuillez ne saisir que des minuscules de a à z et des chiffres de 0 à 9", - "error.validation.between": - "Veuillez saisir une valeur entre « {min} » et « {max} »", + "error.validation.alphanum": "Veuillez ne saisir que des minuscules de a à z et des chiffres de 0 à 9", + "error.validation.between": "Veuillez saisir une valeur entre « {min} » et « {max} »", "error.validation.boolean": "Veuillez confirmer ou refuser", - "error.validation.contains": - "Veuillez saisir une valeur contenant « {needle} »", + "error.validation.contains": "Veuillez saisir une valeur contenant « {needle} »", "error.validation.date": "Veuillez saisir une date valide", "error.validation.date.after": "Veuillez saisir une date après {date}", "error.validation.date.before": "Veuillez saisir une date avant {date}", @@ -210,18 +169,14 @@ "error.validation.less": "Veuillez saisir une valeur inférieure à {max}", "error.validation.match": "La valeur ne correspond pas au modèle attendu", "error.validation.max": "Veuillez saisir une valeur inférieure ou égale à {max}", - "error.validation.maxlength": - "Veuillez saisir une valeur plus courte (max. {max} caractères)", + "error.validation.maxlength": "Veuillez saisir une valeur plus courte (max. {max} caractères)", "error.validation.maxwords": "Veuillez ne pas saisir plus de {max} mot(s)", "error.validation.min": "Veuillez saisir une valeur supérieure ou égale à {min}", - "error.validation.minlength": - "Veuillez saisir une valeur plus longue (min. {min} caractères)", + "error.validation.minlength": "Veuillez saisir une valeur plus longue (min. {min} caractères)", "error.validation.minwords": "Veuillez saisir au moins {min} mot(s)", "error.validation.more": "Veuillez saisir une valeur supérieure à {min}", - "error.validation.notcontains": - "Veuillez saisir une valeur ne contenant pas « {needle} »", - "error.validation.notin": - "Veuillez ne saisir aucun des éléments suivants: ({notIn})", + "error.validation.notcontains": "Veuillez saisir une valeur ne contenant pas « {needle} »", + "error.validation.notin": "Veuillez ne saisir aucun des éléments suivants: ({notIn})", "error.validation.option": "Veuillez sélectionner une option valide", "error.validation.num": "Veuillez saisir un nombre valide", "error.validation.required": "Veuillez saisir quelque chose", @@ -238,8 +193,7 @@ "field.structure.empty": "Pas encore d’entrée", "field.users.empty": "Pas encore d’utilisateur sélectionné", - "file.delete.confirm": - "Voulez-vous vraiment supprimer
{filename} ?", + "file.delete.confirm": "Voulez-vous vraiment supprimer
{filename} ?", "files": "Fichiers", "files.empty": "Pas encore de fichier", @@ -251,29 +205,22 @@ "installation": "Installation", "installation.completed": "Le Panel a été installé", "installation.disabled": "L'installation du Panel est désactivée par défaut sur les serveurs publics. Veuillez lancer l'installation sur un serveur local, ou activez-la avec l'option panel.install.", - "installation.issues.accounts": - "Le dossier /site/accounts n’existe pas ou n’est pas accessible en écriture", - "installation.issues.content": - "Le dossier /content n’existe pas ou n’est pas accessible en écriture", + "installation.issues.accounts": "Le dossier /site/accounts n’existe pas ou n’est pas accessible en écriture", + "installation.issues.content": "Le dossier /content n’existe pas ou n’est pas accessible en écriture", "installation.issues.curl": "L’extension CURL est requise", "installation.issues.headline": "Le Panel ne peut être installé", - "installation.issues.mbstring": - "L’extension MB String est requise", - "installation.issues.media": - "Le dossier /media n’existe pas ou n’est pas accessible en écriture", + "installation.issues.mbstring": "L’extension MB String est requise", + "installation.issues.media": "Le dossier /media n’existe pas ou n’est pas accessible en écriture", "installation.issues.php": "Veuillez utiliser PHP 7+", - "installation.issues.server": - "Kirby requiert Apache, Nginx ou Caddy", + "installation.issues.server": "Kirby requiert Apache, Nginx ou Caddy", "installation.issues.sessions": "Le dossier /site/sessions n’existe pas ou n’est pas accessible en écriture", "language": "Langue", "language.code": "Code", "language.convert": "Choisir comme langue par défaut", - "language.convert.confirm": - "

Souhaitez-vous vraiment convertir {name} vers la langue par défaut ? Cette action ne peut pas être annulée.

Si {name} a un contenu non traduit, il n’y aura plus de solution de secours possible et certaines parties de votre site pourraient être vides.

", + "language.convert.confirm": "

Souhaitez-vous vraiment convertir {name} vers la langue par défaut ? Cette action ne peut pas être annulée.

Si {name} a un contenu non traduit, il n’y aura plus de solution de secours possible et certaines parties de votre site pourraient être vides.

", "language.create": "Ajouter une nouvelle langue", - "language.delete.confirm": - "Voulez-vous vraiment supprimer la langue {name}, ainsi que toutes ses traductions ? Cette action ne peut être annulée !", + "language.delete.confirm": "Voulez-vous vraiment supprimer la langue {name}, ainsi que toutes ses traductions ? Cette action ne peut être annulée !", "language.deleted": "La langue a été supprimée", "language.direction": "Sens de lecture", "language.direction.ltr": "De gauche à droite", @@ -292,8 +239,7 @@ "license": "Licence", "license.buy": "Acheter une licence", "license.register": "S’enregistrer", - "license.register.help": - "Vous avez reçu votre numéro de licence par courriel après l'achat. Veuillez le copier et le coller ici pour l'enregistrer.", + "license.register.help": "Vous avez reçu votre numéro de licence par courriel après l'achat. Veuillez le copier et le coller ici pour l'enregistrer.", "license.register.label": "Veuillez saisir votre numéro de licence", "license.register.success": "Merci pour votre soutien à Kirby", "license.unregistered": "Ceci est une démo non enregistrée de Kirby", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Veuillez sélectionner une position", "page.changeStatus.select": "Sélectionner un nouveau statut", "page.changeTemplate": "Changer de modèle", - "page.delete.confirm": - "Voulez-vous vraiment supprimer {title} ?", - "page.delete.confirm.subpages": - "Cette page contient des sous-pages.
Toutes les sous-pages seront également supprimées.", + "page.delete.confirm": "Voulez-vous vraiment supprimer {title} ?", + "page.delete.confirm.subpages": "Cette page contient des sous-pages.
Toutes les sous-pages seront également supprimées.", "page.delete.confirm.title": "Veuillez saisir le titre de la page pour confirmer", "page.draft.create": "Créer un brouillon", "page.duplicate.appendix": "Copier", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Copier les pages", "page.status": "Statut", "page.status.draft": "Brouillon", - "page.status.draft.description": - "La page est en mode brouillon et n’est visible que par les éditeurs connectés", + "page.status.draft.description": "Cette page est un brouillon et n’est visible que pour les éditeurs connectés ou par un lien secret", "page.status.listed": "Public", "page.status.listed.description": "La page est publique pour tout le monde", "page.status.unlisted": "Non listé", @@ -388,6 +331,7 @@ "replace": "Remplacer", "retry": "Essayer à nouveau", "revert": "Revenir", + "revert.confirm": "Voulez-vous vraiment supprimer toutes les modifications non-enregistrées ?", "role": "Rôle", "role.admin.description": "L’administrateur dispose de tous les droits", @@ -451,8 +395,7 @@ "url.placeholder": "https://example.com", "user": "Utilisateur", - "user.blueprint": - "Vous pouvez définir des sections et des champs de formulaire supplémentaires pour ce rôle d’utilisateur dans /site/blueprints/users/{role}.yml", + "user.blueprint": "Vous pouvez définir des sections et des champs de formulaire supplémentaires pour ce rôle d’utilisateur dans /site/blueprints/users/{role}.yml", "user.changeEmail": "Modifier le courriel", "user.changeLanguage": "Modifier la langue", "user.changeName": "Renommer cet utilisateur", @@ -463,8 +406,7 @@ "user.changeRole.select": "Sélectionner un nouveau rôle", "user.create": "Ajouter un nouvel utilisateur", "user.delete": "Supprimer cet utilisateur", - "user.delete.confirm": - "Voulez-vous vraiment supprimer
{email}?", + "user.delete.confirm": "Voulez-vous vraiment supprimer
{email}?", "users": "Utilisateurs", diff --git a/kirby/i18n/translations/hu.json b/kirby/i18n/translations/hu.json index 2526278..291d307 100755 --- a/kirby/i18n/translations/hu.json +++ b/kirby/i18n/translations/hu.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "A profilkép feltöltése nem sikerült", "error.avatar.delete.fail": "A profilkép nem törölhető", - "error.avatar.dimensions.invalid": - "A profilkép maximális szélessége és magassága 3000 pixel lehet", - "error.avatar.mime.forbidden": - "A profilkép formátuma csak JPEG vagy PNG lehet", + "error.avatar.dimensions.invalid": "A profilkép maximális szélessége és magassága 3000 pixel lehet", + "error.avatar.mime.forbidden": "A profilkép formátuma csak JPEG vagy PNG lehet", "error.blueprint.notFound": "A \"{name}\" oldalsablon nem tölthető be", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Érvénytelen konverter: \"{converter}\"", "error.file.changeName.empty": "The name must not be empty", - "error.file.changeName.permission": - "Nincs jogosultságod megváltoztatni a \"{filename}\" fájl nevét", + "error.file.changeName.permission": "Nincs jogosultságod megváltoztatni a \"{filename}\" fájl nevét", "error.file.duplicate": "Már létezik \"{filename}\" nevű fájl", - "error.file.extension.forbidden": - "Tiltott kiterjeszt\u00e9s\u0171 f\u00e1jl", - "error.file.extension.missing": - "Kiterjeszt\u00e9s n\u00e9lk\u00fcli f\u00e1jl nem t\u00f6lthet\u0151 fel", + "error.file.extension.forbidden": "Tiltott kiterjeszt\u00e9s\u0171 f\u00e1jl", + "error.file.extension.missing": "Kiterjeszt\u00e9s n\u00e9lk\u00fcli f\u00e1jl nem t\u00f6lthet\u0151 fel", "error.file.maxheight": "The height of the image must not exceed {height} pixels", "error.file.maxsize": "The file is too large", "error.file.maxwidth": "The width of the image must not exceed {width} pixels", - "error.file.mime.differs": - "A feltöltött fájlnak azonos \"{mime}\" típusúnak kell lennie", + "error.file.mime.differs": "A feltöltött fájlnak azonos \"{mime}\" típusúnak kell lennie", "error.file.mime.forbidden": "A \"{mime}\" típusú médiafájlok nem engedélyezettek", "error.file.mime.invalid": "Invalid mime type: {mime}", - "error.file.mime.missing": - "A \"{filename}\" fájl típusa nem állapítható meg", + "error.file.mime.missing": "A \"{filename}\" fájl típusa nem állapítható meg", "error.file.minheight": "The height of the image must be at least {height} pixels", "error.file.minsize": "The file is too small", "error.file.minwidth": "The width of the image must be at least {width} pixels", @@ -90,111 +83,77 @@ "error.license.email": "Kérlek adj meg egy valós email-címet", "error.license.verification": "A licensz nem ellenőrizhető", - "error.page.changeSlug.permission": - "Nem változtathatod meg az URL-előtagot: \"{slug}\"", - "error.page.changeStatus.incomplete": - "Az oldal hibákat tartalmaz és nem publikálható", - "error.page.changeStatus.permission": - "Az oldal státusza nem változtatható meg", - "error.page.changeStatus.toDraft.invalid": - "A(z) \"{slug}\" oldalt nem lehet piszkozattá alakítani", - "error.page.changeTemplate.invalid": - "A \"{slug}\" oldal sablonját nem lehet megváltoztatni", - "error.page.changeTemplate.permission": - "Nincs jogosultságod megváltoztatni a sablont ehhez: \"{slug}\"", + "error.page.changeSlug.permission": "Nem változtathatod meg az URL-előtagot: \"{slug}\"", + "error.page.changeStatus.incomplete": "Az oldal hibákat tartalmaz és nem publikálható", + "error.page.changeStatus.permission": "Az oldal státusza nem változtatható meg", + "error.page.changeStatus.toDraft.invalid": "A(z) \"{slug}\" oldalt nem lehet piszkozattá alakítani", + "error.page.changeTemplate.invalid": "A \"{slug}\" oldal sablonját nem lehet megváltoztatni", + "error.page.changeTemplate.permission": "Nincs jogosultságod megváltoztatni a sablont ehhez: \"{slug}\"", "error.page.changeTitle.empty": "A cím nem lehet üres", - "error.page.changeTitle.permission": - "Nincs jogosultságod megváltoztatni a címet: \"{slug}\"", + "error.page.changeTitle.permission": "Nincs jogosultságod megváltoztatni a címet: \"{slug}\"", "error.page.create.permission": "Nincs jogosultságod az oldal létrehozásához: \"{slug}\"", "error.page.delete": "A(z) \"{slug}\" oldal nem törölhető", "error.page.delete.confirm": "Megerősítéshez add meg az oldal címét", - "error.page.delete.hasChildren": - "Az oldalnak vannak aloldalai és nem törölhető", + "error.page.delete.hasChildren": "Az oldalnak vannak aloldalai és nem törölhető", "error.page.delete.permission": "Nincs jogosultságod a(z) \"{slug}\" oldal törléséhez", - "error.page.draft.duplicate": - "Van már egy másik oldal ezzel az URL-lel: \"{slug}\"", - "error.page.duplicate": - "Van már egy másik oldal ezzel az URL-lel: \"{slug}\"", + "error.page.draft.duplicate": "Van már egy másik oldal ezzel az URL-lel: \"{slug}\"", + "error.page.duplicate": "Van már egy másik oldal ezzel az URL-lel: \"{slug}\"", "error.page.duplicate.permission": "Nincs engedélyed a(z) \"{slug}\" másolat keszítéséhez", "error.page.notFound": "Az oldal nem tal\u00e1lhat\u00f3", - "error.page.num.invalid": - "Kérlek megfelelő oldalszámozást adj meg. Negatív szám itt nem használható.", + "error.page.num.invalid": "Kérlek megfelelő oldalszámozást adj meg. Negatív szám itt nem használható.", "error.page.slug.invalid": "Kérlek megfelelő URL-előtagot adj meg", "error.page.sort.permission": "A(z) \"{slug}\" oldal nem illeszthető a sorrendbe", "error.page.status.invalid": "Kérlek add meg a megfelelő oldalstátuszt", "error.page.undefined": "Az oldal nem tal\u00e1lhat\u00f3", "error.page.update.permission": "Nincs jogosultságod a(z) \"{slug}\" oldal frissítéséhez", - "error.section.files.max.plural": - "Maximum {max} fájlt adhatsz hozzá a(z) \"{section}\" szekcióhoz", - "error.section.files.max.singular": - "Nem adhatsz hozzá egynél több fájlt a(z) \"{section}\" szekcióhoz", - "error.section.files.min.plural": - "A \"{section}\" szakasz legalább {min} fájlt igényel", - "error.section.files.min.singular": - "A \"{section}\" szakasz legalább egy fájlt igényel", + "error.section.files.max.plural": "Maximum {max} fájlt adhatsz hozzá a(z) \"{section}\" szekcióhoz", + "error.section.files.max.singular": "Nem adhatsz hozzá egynél több fájlt a(z) \"{section}\" szekcióhoz", + "error.section.files.min.plural": "A \"{section}\" szakasz legalább {min} fájlt igényel", + "error.section.files.min.singular": "A \"{section}\" szakasz legalább egy fájlt igényel", - "error.section.pages.max.plural": - "Maximum {max} oldalt adhatsz hozzá a(z) \"{section}\" szekcióhoz", - "error.section.pages.max.singular": - "Nem adhatsz hozzá egynél több oldalt a(z) \"{section}\" szekcióhoz", - "error.section.pages.min.plural": - "A \"{section}\" szakasz legalább {min} oldalt igényel", - "error.section.pages.min.singular": - "A \"{section}\" szakasz legalább egy oldalt igényel", + "error.section.pages.max.plural": "Maximum {max} oldalt adhatsz hozzá a(z) \"{section}\" szekcióhoz", + "error.section.pages.max.singular": "Nem adhatsz hozzá egynél több oldalt a(z) \"{section}\" szekcióhoz", + "error.section.pages.min.plural": "A \"{section}\" szakasz legalább {min} oldalt igényel", + "error.section.pages.min.singular": "A \"{section}\" szakasz legalább egy oldalt igényel", "error.section.notLoaded": "A(z) \"{name}\" szekció nem tölthető be", "error.section.type.invalid": "A szekció típusa (\"{type}\") nem megfelelő", "error.site.changeTitle.empty": "A cím nem lehet üres", - "error.site.changeTitle.permission": - "Nincs jogosultságod megváltoztatni az honlap címét", + "error.site.changeTitle.permission": "Nincs jogosultságod megváltoztatni az honlap címét", "error.site.update.permission": "Nincs jogosultságod frissíteni a honlapot", "error.template.default.notFound": "Az alapértelmezett sablon nem létezik", - "error.user.changeEmail.permission": - "Nincs jogosultságod megváltoztatni \"{name}\" felhasználó email-címét", - "error.user.changeLanguage.permission": - "Nincs jogosultságod megváltoztatni \"{name}\" felhasználó nyelvi beállításait", - "error.user.changeName.permission": - "Nincs jogosultságod megváltoztatni \"{name}\" felhasználó nevét", - "error.user.changePassword.permission": - "Nincs jogosultságod megváltoztatni \"{name}\" felhasználó jelszavát", - "error.user.changeRole.lastAdmin": - "Az egyedüli adminisztrátor szerepkörét nem lehet megváltoztatni", - "error.user.changeRole.permission": - "Nincs jogosultságod megváltoztatni \"{name}\" felhasználó szerepkörét", - "error.user.changeRole.toAdmin": - "You are not allowed to promote someone to the admin role", + "error.user.changeEmail.permission": "Nincs jogosultságod megváltoztatni \"{name}\" felhasználó email-címét", + "error.user.changeLanguage.permission": "Nincs jogosultságod megváltoztatni \"{name}\" felhasználó nyelvi beállításait", + "error.user.changeName.permission": "Nincs jogosultságod megváltoztatni \"{name}\" felhasználó nevét", + "error.user.changePassword.permission": "Nincs jogosultságod megváltoztatni \"{name}\" felhasználó jelszavát", + "error.user.changeRole.lastAdmin": "Az egyedüli adminisztrátor szerepkörét nem lehet megváltoztatni", + "error.user.changeRole.permission": "Nincs jogosultságod megváltoztatni \"{name}\" felhasználó szerepkörét", + "error.user.changeRole.toAdmin": "You are not allowed to promote someone to the admin role", "error.user.create.permission": "Nincs jogosultságod létrehozni ezt a felhasználót", "error.user.delete": "A felhaszn\u00e1l\u00f3 nem t\u00f6r\u00f6lhet\u0151", "error.user.delete.lastAdmin": "Nem t\u00f6r\u00f6lheted az egyetlen adminisztr\u00e1tort", "error.user.delete.lastUser": "Nem törölheted az egyetlen felhasználót", - "error.user.delete.permission": - "Nincs jogosults\u00e1god t\u00f6r\u00f6lni ezt a felhaszn\u00e1l\u00f3t", - "error.user.duplicate": - "Már létezik felhasználó \"{email}\" email-címmel", + "error.user.delete.permission": "Nincs jogosults\u00e1god t\u00f6r\u00f6lni ezt a felhaszn\u00e1l\u00f3t", + "error.user.duplicate": "Már létezik felhasználó \"{email}\" email-címmel", "error.user.email.invalid": "Kérlek adj meg egy valós email-címet", "error.user.language.invalid": "Kérlek add meg a megfelelő nyelvi beállítást", "error.user.notFound": "A felhaszn\u00e1l\u00f3 nem tal\u00e1lhat\u00f3", - "error.user.password.invalid": - "Kérlek adj meg egy megfelelő jelszót. A jelszónak legalább 8 karakter hosszúságúnak kell lennie.", + "error.user.password.invalid": "Kérlek adj meg egy megfelelő jelszót. A jelszónak legalább 8 karakter hosszúságúnak kell lennie.", "error.user.password.notSame": "K\u00e9rlek er\u0151s\u00edtsd meg a jelsz\u00f3t", "error.user.password.undefined": "A felhasználónak nincs jelszó megadva", "error.user.role.invalid": "Kérlek adj meg egy megfelelő szerepkört", - "error.user.update.permission": - "Nincs jogosultságod frissíteni \"{name}\" felhasználó adatait", + "error.user.update.permission": "Nincs jogosultságod frissíteni \"{name}\" felhasználó adatait", "error.validation.accepted": "Kérlek erősítsd meg", "error.validation.alpha": "Kérlek csak kis betűket használj (a-z)", - "error.validation.alphanum": - "Kérlek csak kis betűket és számjegyeket használj (a-z, 0-9)", - "error.validation.between": - "Kérlek egy \"{min}\" és \"{max}\" közötti értéket adj meg", + "error.validation.alphanum": "Kérlek csak kis betűket és számjegyeket használj (a-z, 0-9)", + "error.validation.between": "Kérlek egy \"{min}\" és \"{max}\" közötti értéket adj meg", "error.validation.boolean": "Kérlek erősítsd meg vagy vesd el", - "error.validation.contains": - "Kérlek olyan értéket adj meg, amely tartalmazza ezt: \"{needle}\"", + "error.validation.contains": "Kérlek olyan értéket adj meg, amely tartalmazza ezt: \"{needle}\"", "error.validation.date": "Kérlek megfelelő dátumot adj meg", "error.validation.date.after": "Please enter a date after {date}", "error.validation.date.before": "Please enter a date before {date}", @@ -210,18 +169,14 @@ "error.validation.less": "A megadott érték kevesebb legyen, mint {max}", "error.validation.match": "A megadott érték nem felel meg az elvárt struktúrának", "error.validation.max": "A megadott érték egyenlő vagy kevesebb legyen, mint {max}", - "error.validation.maxlength": - "Kérlek rövidebb értéket adj meg (legfeljebb {max} karakter)", + "error.validation.maxlength": "Kérlek rövidebb értéket adj meg (legfeljebb {max} karakter)", "error.validation.maxwords": "Kérlek ide legfeljebb {max} szót írj", "error.validation.min": "A megadott érték egyenlő vagy nagyobb legyen, mint {min}", - "error.validation.minlength": - "Kérlek hosszabb értéket adj meg (legalább {min} karakter)", + "error.validation.minlength": "Kérlek hosszabb értéket adj meg (legalább {min} karakter)", "error.validation.minwords": "Kérlek ide legalább {min} szót írj", "error.validation.more": "A megadott érték legyen nagyobb, mint {min} ", - "error.validation.notcontains": - "Kérlek olyan értéket adj meg, amely nem tartalmazza ezt: \"{needle}\" ", - "error.validation.notin": - "Kérlek egyiket se használd az alábbiak közül: ({notIn})", + "error.validation.notcontains": "Kérlek olyan értéket adj meg, amely nem tartalmazza ezt: \"{needle}\" ", + "error.validation.notin": "Kérlek egyiket se használd az alábbiak közül: ({notIn})", "error.validation.option": "Kérlek válassz egy megfelelő opciót", "error.validation.num": "Kérlek adj meg egy megfelelő számot", "error.validation.required": "Kérlek írj be valamit", @@ -238,8 +193,7 @@ "field.structure.empty": "Nincs m\u00e9g bejegyz\u00e9s", "field.users.empty": "Nincs felhasználó kiválasztva", - "file.delete.confirm": - "Biztos törölni akarod ezt a fájlt:
{filename}?", + "file.delete.confirm": "Biztos törölni akarod ezt a fájlt:
{filename}?", "files": "Fájlok", "files.empty": "Még nincsenek fájlok", @@ -251,29 +205,22 @@ "installation": "Telepítés", "installation.completed": "A panel sikeresen telepítve", "installation.disabled": "A panel telepítője alapértelmezés szerint le van tiltva a nyilvános szervereken. Kérlek, futtassd a telepítőt egy helyi gépen vagy engedélyezze a panel.install opcióval.", - "installation.issues.accounts": - "A /site/accounts mappa nem létezik, vagy nem írható", - "installation.issues.content": - "A /content mappa nem létezik vagy nem írható", + "installation.issues.accounts": "A /site/accounts mappa nem létezik, vagy nem írható", + "installation.issues.content": "A /content mappa nem létezik vagy nem írható", "installation.issues.curl": "A CURL bővítmény engedélyezése szükséges", "installation.issues.headline": "A panel telepítése sikertelen", - "installation.issues.mbstring": - "Az MB String bővítmény engedélyezése szükséges", - "installation.issues.media": - "A /media mappa nem létezik vagy nem írható", + "installation.issues.mbstring": "Az MB String bővítmény engedélyezése szükséges", + "installation.issues.media": "A /media mappa nem létezik vagy nem írható", "installation.issues.php": "Bizonyosodj meg róla, hogy az általad használt PHP-verzió PHP 7+", - "installation.issues.server": - "A Kirby az alábbi szervereken futtatható: Apache, Nginx vagy Caddy", + "installation.issues.server": "A Kirby az alábbi szervereken futtatható: Apache, Nginx vagy Caddy", "installation.issues.sessions": "A /site/sessions könyvtár nem létezik vagy nem írható", "language": "Nyelv", "language.code": "Kód", "language.convert": "Alapértelmezettnek jelölés", - "language.convert.confirm": - "

Tényleg az alaőértelmezett nyelvre szeretnéd konvertálni ezt: {name}? Ez a művelet nem vonható vissza.

Ha{name} olyat is tartalmaz, amelynek nincs megfelelő fordítása, a honlapod egyes részei az új alapértelmezett nyelv hiányosságai miatt üresek maradhatnak.

", + "language.convert.confirm": "

Tényleg az alaőértelmezett nyelvre szeretnéd konvertálni ezt: {name}? Ez a művelet nem vonható vissza.

Ha{name} olyat is tartalmaz, amelynek nincs megfelelő fordítása, a honlapod egyes részei az új alapértelmezett nyelv hiányosságai miatt üresek maradhatnak.

", "language.create": "Új nyelv hozzáadása", - "language.delete.confirm": - "Tényleg törölni szeretnéd a(z) {name} nyelvet, annak minden fordításával együtt? Ez a művelet nem vonható vissza!", + "language.delete.confirm": "Tényleg törölni szeretnéd a(z) {name} nyelvet, annak minden fordításával együtt? Ez a művelet nem vonható vissza!", "language.deleted": "A nyelv törölve lett", "language.direction": "Olvasási irány", "language.direction.ltr": "Balról jobbra", @@ -292,8 +239,7 @@ "license": "Kirby licenc", "license.buy": "Licenc vásárlása", "license.register": "Regisztráció", - "license.register.help": - "A vásárlás után emailben küldjük el a licenc-kódot. Regisztrációhoz másold ide a kapott kódot.", + "license.register.help": "A vásárlás után emailben küldjük el a licenc-kódot. Regisztrációhoz másold ide a kapott kódot.", "license.register.label": "Kérlek írd be a licenc-kódot", "license.register.success": "Köszönjük, hogy támogatod a Kirby-t", "license.unregistered": "Jelenleg a Kirby nem regisztrált próbaverzióját használod", @@ -325,7 +271,7 @@ "months.april": "\u00e1prilis", "months.august": "augusztus", "months.december": "december", - "months.february": "febru\u00e1r", + "months.february": "február", "months.january": "janu\u00e1r", "months.july": "j\u00falius", "months.june": "j\u00fanius", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Kérlek válaszd ki a pozíciót", "page.changeStatus.select": "Új állapot kiválasztása", "page.changeTemplate": "Sablon módosítása", - "page.delete.confirm": - "Biztos vagy benne, hogy törlöd az alábbi oldalt: {title}?", - "page.delete.confirm.subpages": - "Ehhez az oldalhoz aloldalak tartoznak.
Az oldal törlésekor a hozzá tartozó aloldalak is törlődnek.", + "page.delete.confirm": "Biztos vagy benne, hogy törlöd az alábbi oldalt: {title}?", + "page.delete.confirm.subpages": "Ehhez az oldalhoz aloldalak tartoznak.
Az oldal törlésekor a hozzá tartozó aloldalak is törlődnek.", "page.delete.confirm.title": "Megerősítéshez add meg az oldal címét", "page.draft.create": "Piszkozat létrehozása", "page.duplicate.appendix": "Másol", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Oldalak másolása", "page.status": "Állapot", "page.status.draft": "Piszkozat", - "page.status.draft.description": - "Az oldal jelenleg piszkozat státuszban van és csak bejelentkezett szerkesztők számára látható", + "page.status.draft.description": "The page is in draft mode and only visible for logged in editors or via secret link", "page.status.listed": "Publikus", "page.status.listed.description": "Az oldal mindenki számára elérhető", "page.status.unlisted": "Nem listázott", @@ -388,6 +331,7 @@ "replace": "Cser\u00e9l", "retry": "Próbáld újra", "revert": "Visszavon\u00e1s", + "revert.confirm": "Do you really want to delete all unsaved changes?", "role": "Szerepkör", "role.admin.description": "Az adminisztrátornak minden joga van", @@ -451,8 +395,7 @@ "url.placeholder": "https://pelda.hu", "user": "Felhasználó", - "user.blueprint": - "Ehhez a szerepkörhöz további szekciókat és mezőket vehetsz fel a /site/blueprints/users/{role}.yml fájlban", + "user.blueprint": "Ehhez a szerepkörhöz további szekciókat és mezőket vehetsz fel a /site/blueprints/users/{role}.yml fájlban", "user.changeEmail": "Email módosítása", "user.changeLanguage": "Nyelv módosítása", "user.changeName": "Felhasználó átnevezése", @@ -463,8 +406,7 @@ "user.changeRole.select": "Új szerepkör kiválasztása", "user.create": "Új felhasználó hozzáadása", "user.delete": "Felhasználó törlése", - "user.delete.confirm": - "Biztos törlöd ezt a felhasználót:
{email}?", + "user.delete.confirm": "Biztos törlöd ezt a felhasználót:
{email}?", "users": "Felhasználók", diff --git a/kirby/i18n/translations/id.json b/kirby/i18n/translations/id.json index 01a783a..cf0c20d 100755 --- a/kirby/i18n/translations/id.json +++ b/kirby/i18n/translations/id.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "Gambar profil tidak dapat diunggah", "error.avatar.delete.fail": "Gambar profil tidak dapat dihapus", - "error.avatar.dimensions.invalid": - "Pastikan lebar dan tinggi gambar profil di bawah 3000 piksel", - "error.avatar.mime.forbidden": - "Gambar profil harus berupa berkas JPEG atau PNG", + "error.avatar.dimensions.invalid": "Pastikan lebar dan tinggi gambar profil di bawah 3000 piksel", + "error.avatar.mime.forbidden": "Gambar profil harus berupa berkas JPEG atau PNG", "error.blueprint.notFound": "Cetak biru \"{name}\" tidak dapat dimuat", @@ -54,28 +52,23 @@ "error.field.converter.invalid": "Konverter \"{converter}\" tidak valid", "error.file.changeName.empty": "Nama harus diisi", - "error.file.changeName.permission": - "Anda tidak diizinkan mengubah nama berkas \"{filename}\"", + "error.file.changeName.permission": "Anda tidak diizinkan mengubah nama berkas \"{filename}\"", "error.file.duplicate": "Berkas dengan nama \"{filename}\" sudah ada", - "error.file.extension.forbidden": - "Ekstensi \"{extension}\" tidak diizinkan", - "error.file.extension.missing": - "Berkas \"{filename}\" harus memiliki ekstensi", - "error.file.maxheight": "The height of the image must not exceed {height} pixels", - "error.file.maxsize": "The file is too large", - "error.file.maxwidth": "The width of the image must not exceed {width} pixels", - "error.file.mime.differs": - "Berkas yang diunggah harus memiliki tipe mime sama \"{mime}\"", + "error.file.extension.forbidden": "Ekstensi \"{extension}\" tidak diizinkan", + "error.file.extension.missing": "Berkas \"{filename}\" harus memiliki ekstensi", + "error.file.maxheight": "Tinggi gambar tidak boleh melebihi {height} piksel", + "error.file.maxsize": "Berkas terlalu besar", + "error.file.maxwidth": "Lebar gambar tidak boleh melebihi {width} piksel", + "error.file.mime.differs": "Berkas yang diunggah harus memiliki tipe mime sama \"{mime}\"", "error.file.mime.forbidden": "Media dengan tipe mime \"{mime}\" tidak diizinkan", - "error.file.mime.invalid": "Invalid mime type: {mime}", - "error.file.mime.missing": - "Tipe media untuk \"{filename}\" tidak dapat dideteksi", - "error.file.minheight": "The height of the image must be at least {height} pixels", - "error.file.minsize": "The file is too small", - "error.file.minwidth": "The width of the image must be at least {width} pixels", + "error.file.mime.invalid": "Tipe mime tidak valid: {mime}", + "error.file.mime.missing": "Tipe media untuk \"{filename}\" tidak dapat dideteksi", + "error.file.minheight": "Tinggi gambar setidaknya {height} piksel", + "error.file.minsize": "Berkas terlalu kecil", + "error.file.minwidth": "Lebar gambar setidaknya {width} piksel", "error.file.name.missing": "Nama berkas harus diisi", "error.file.notFound": "Berkas \"{filename}\" tidak dapat ditemukan", - "error.file.orientation": "The orientation of the image must be \"{orientation}\"", + "error.file.orientation": "Orientasi gambar harus \"{orientation}\"", "error.file.type.forbidden": "Anda tidak diizinkan mengunggah berkas dengan tipe {type}", "error.file.undefined": "Berkas tidak dapat ditemukan", @@ -90,111 +83,77 @@ "error.license.email": "Masukkan surel yang valid", "error.license.verification": "Lisensi tidak dapat diverifikasi", - "error.page.changeSlug.permission": - "Anda tidak diizinkan mengubah akhiran URL untuk \"{slug}\"", - "error.page.changeStatus.incomplete": - "Halaman memiliki kesalahan dan tidak dapat diterbitkan", - "error.page.changeStatus.permission": - "Status halaman ini tidak dapat diubah", - "error.page.changeStatus.toDraft.invalid": - "Halaman \"{slug}\" tidak dapat dikonversi menjadi draf", - "error.page.changeTemplate.invalid": - "Templat untuk halaman \"{slug}\" tidak dapat diubah", - "error.page.changeTemplate.permission": - "Anda tidak diizinkan mengubah templat dari \"{slug}\"", + "error.page.changeSlug.permission": "Anda tidak diizinkan mengubah akhiran URL untuk \"{slug}\"", + "error.page.changeStatus.incomplete": "Halaman memiliki kesalahan dan tidak dapat diterbitkan", + "error.page.changeStatus.permission": "Status halaman ini tidak dapat diubah", + "error.page.changeStatus.toDraft.invalid": "Halaman \"{slug}\" tidak dapat dikonversi menjadi draf", + "error.page.changeTemplate.invalid": "Templat untuk halaman \"{slug}\" tidak dapat diubah", + "error.page.changeTemplate.permission": "Anda tidak diizinkan mengubah templat dari \"{slug}\"", "error.page.changeTitle.empty": "Judul harus diisi", - "error.page.changeTitle.permission": - "Anda tidak diizinkan mengubah judul dari \"{slug}\"", + "error.page.changeTitle.permission": "Anda tidak diizinkan mengubah judul dari \"{slug}\"", "error.page.create.permission": "Anda tidak diizinkan membuat \"{slug}\"", "error.page.delete": "Halaman \"{slug}\" tidak dapat dihapus", "error.page.delete.confirm": "Masukkan judul halaman untuk mengonfirmasi", - "error.page.delete.hasChildren": - "Halaman ini memiliki sub-halaman dan tidak dapat dihapus", + "error.page.delete.hasChildren": "Halaman ini memiliki sub-halaman dan tidak dapat dihapus", "error.page.delete.permission": "Anda tidak diizinkan menghapus \"{slug}\"", - "error.page.draft.duplicate": - "Draf halaman dengan akhiran URL \"{slug}\" sudah ada", - "error.page.duplicate": - "Halaman dengan akhiran URL \"{slug}\" sudah ada", + "error.page.draft.duplicate": "Draf halaman dengan akhiran URL \"{slug}\" sudah ada", + "error.page.duplicate": "Halaman dengan akhiran URL \"{slug}\" sudah ada", "error.page.duplicate.permission": "Anda tidak diizinkan menduplikasi \"{slug}\"", "error.page.notFound": "Halaman \"{slug}\" tidak dapat ditemukan", - "error.page.num.invalid": - "Masukkan nomor urut yang valid. Nomor tidak boleh negatif.", + "error.page.num.invalid": "Masukkan nomor urut yang valid. Nomor tidak boleh negatif.", "error.page.slug.invalid": "Masukkan awalan URL yang valid", "error.page.sort.permission": "Halaman \"{slug}\" tidak dapat diurutkan", "error.page.status.invalid": "Atur status halaman yang valid", "error.page.undefined": "Halaman tidak dapat ditemukan", "error.page.update.permission": "Anda tidak diizinkan memperbaharui \"{slug}\"", - "error.section.files.max.plural": - "Anda hanya boleh menambahkan maksimal {max} berkas ke bagian \"{section}\"", - "error.section.files.max.singular": - "Anda hanya boleh menambahkan satu berkas ke bagian \"{section}\"", - "error.section.files.min.plural": - "Bagian \"{section}\" setidaknya memiliki {min} berkas", - "error.section.files.min.singular": - "Bagian \"{section}\" setidaknya memiliki satu berkas", + "error.section.files.max.plural": "Anda hanya boleh menambahkan maksimal {max} berkas ke bagian \"{section}\"", + "error.section.files.max.singular": "Anda hanya boleh menambahkan satu berkas ke bagian \"{section}\"", + "error.section.files.min.plural": "Bagian \"{section}\" setidaknya memiliki {min} berkas", + "error.section.files.min.singular": "Bagian \"{section}\" setidaknya memiliki satu berkas", - "error.section.pages.max.plural": - "Anda hanya boleh menambahkan maksimal {max} halaman ke bagian \"{section}\"", - "error.section.pages.max.singular": - "Anda hanya boleh menambahkan satu halaman ke bagian \"{section}\"", - "error.section.pages.min.plural": - "Bagian \"{section}\" setidaknya memiliki {min} halaman", - "error.section.pages.min.singular": - "Bagian \"{section}\" setidaknya memiliki satu halaman", + "error.section.pages.max.plural": "Anda hanya boleh menambahkan maksimal {max} halaman ke bagian \"{section}\"", + "error.section.pages.max.singular": "Anda hanya boleh menambahkan satu halaman ke bagian \"{section}\"", + "error.section.pages.min.plural": "Bagian \"{section}\" setidaknya memiliki {min} halaman", + "error.section.pages.min.singular": "Bagian \"{section}\" setidaknya memiliki satu halaman", "error.section.notLoaded": "Bagian \"{name}\" tidak dapat dimuat", "error.section.type.invalid": "Tipe bagian \"{type}\" tidak valid", "error.site.changeTitle.empty": "Judul harus diisi", - "error.site.changeTitle.permission": - "Anda tidak diizinkan mengubah judul situs", + "error.site.changeTitle.permission": "Anda tidak diizinkan mengubah judul situs", "error.site.update.permission": "Anda tidak diizinkan memperbaharui situs", "error.template.default.notFound": "Templat bawaan tidak ada", - "error.user.changeEmail.permission": - "Anda tidak diizinkan mengubah surel dari pengguna \"{name}\"", - "error.user.changeLanguage.permission": - "Anda tidak diizinkan mengubah bahasa dari pengguna \"{name}\"", - "error.user.changeName.permission": - "Anda tidak diizinkan mengubah nama dari pengguna \"{name}\"", - "error.user.changePassword.permission": - "Anda tidak diizinkan mengubah sandi dari pengguna \"{name}\"", - "error.user.changeRole.lastAdmin": - "Peran dari admin satu-satunya tidak dapat diubah", - "error.user.changeRole.permission": - "Anda tidak diizinkan mengubah peran dari pengguna \"{name}\"", - "error.user.changeRole.toAdmin": - "Anda tidak diizinkan mempromosikan seseorang menjadi admin", + "error.user.changeEmail.permission": "Anda tidak diizinkan mengubah surel dari pengguna \"{name}\"", + "error.user.changeLanguage.permission": "Anda tidak diizinkan mengubah bahasa dari pengguna \"{name}\"", + "error.user.changeName.permission": "Anda tidak diizinkan mengubah nama dari pengguna \"{name}\"", + "error.user.changePassword.permission": "Anda tidak diizinkan mengubah sandi dari pengguna \"{name}\"", + "error.user.changeRole.lastAdmin": "Peran dari admin satu-satunya tidak dapat diubah", + "error.user.changeRole.permission": "Anda tidak diizinkan mengubah peran dari pengguna \"{name}\"", + "error.user.changeRole.toAdmin": "Anda tidak diizinkan mempromosikan seseorang menjadi admin", "error.user.create.permission": "Anda tidak diizinkan membuat pengguna ini", "error.user.delete": "Pengguna \"{nama}\" tidak dapat dihapus", "error.user.delete.lastAdmin": "Admin satu-satunya tidak dapat dihapus", "error.user.delete.lastUser": "Pengguna satu-satunya tidak dapat dihapus", - "error.user.delete.permission": - "Anda tidak diizinkan menghapus pengguna \"{name}\"", - "error.user.duplicate": - "Pengguna dengan surel \"{email}\" sudah ada", + "error.user.delete.permission": "Anda tidak diizinkan menghapus pengguna \"{name}\"", + "error.user.duplicate": "Pengguna dengan surel \"{email}\" sudah ada", "error.user.email.invalid": "Masukkan surel yang valid", "error.user.language.invalid": "Masukkan bahasa yang valid", "error.user.notFound": "Pengguna \"{name}\" tidak dapat ditemukan", - "error.user.password.invalid": - "Masukkan sandi yang valid. Sandi setidaknya mengandung 8 karakter.", + "error.user.password.invalid": "Masukkan sandi yang valid. Sandi setidaknya mengandung 8 karakter.", "error.user.password.notSame": "Sandi tidak cocok", "error.user.password.undefined": "Pengguna tidak memiliki sandi", "error.user.role.invalid": "Masukkan peran yang valid", - "error.user.update.permission": - "Anda tidak diizinkan memperbaharui pengguna \"{name}\"", + "error.user.update.permission": "Anda tidak diizinkan memperbaharui pengguna \"{name}\"", "error.validation.accepted": "Mohon konfirmasi", "error.validation.alpha": "Masukkan hanya karakter a-z", - "error.validation.alphanum": - "Masukkan hanya karakter a-z atau 0-9", - "error.validation.between": - "Masukkan nilai antara \"{min}\" dan \"{max}\"", + "error.validation.alphanum": "Masukkan hanya karakter a-z atau 0-9", + "error.validation.between": "Masukkan nilai antara \"{min}\" dan \"{max}\"", "error.validation.boolean": "Mohon konfirmasi atau tolak", - "error.validation.contains": - "Masukkan nilai yang mengandung \"{needle}\"", + "error.validation.contains": "Masukkan nilai yang mengandung \"{needle}\"", "error.validation.date": "Masukkan tanggal yang valid", "error.validation.date.after": "Masukkan tanggal setelah {date}", "error.validation.date.before": "Masukkan tanggal sebelum {date}", @@ -210,18 +169,14 @@ "error.validation.less": "Masukkan nilai kurang dari {max}", "error.validation.match": "Nilai tidak cocok dengan pola yang semestinya", "error.validation.max": "Masukkan nilai yang sama dengan atau kurang dari {max}", - "error.validation.maxlength": - "Masukkan nilai yang lebih pendek. (maksimal {max} karakter)", + "error.validation.maxlength": "Masukkan nilai yang lebih pendek. (maksimal {max} karakter)", "error.validation.maxwords": "Masukkan tidak lebih dari {max} kata", "error.validation.min": "Masukkan nilai yang sama dengan atau lebih dari {min}", - "error.validation.minlength": - "Masukkan nilai yang lebih panjang. (minimal {min} karakter)", + "error.validation.minlength": "Masukkan nilai yang lebih panjang. (minimal {min} karakter)", "error.validation.minwords": "Masukkan setidaknya {min} kata", "error.validation.more": "Masukkan nilai yang lebih besar dari {min}", - "error.validation.notcontains": - "Masukkan nilai yang tidak mengandung \"{needle}\"", - "error.validation.notin": - "Jangan masukkan satupun: ({notIn})", + "error.validation.notcontains": "Masukkan nilai yang tidak mengandung \"{needle}\"", + "error.validation.notin": "Jangan masukkan satupun: ({notIn})", "error.validation.option": "Pilih opsi yang valid", "error.validation.num": "Masukkan nomor yang valid", "error.validation.required": "Masukkan sesuatu", @@ -238,8 +193,7 @@ "field.structure.empty": "Belum ada entri", "field.users.empty": "Belum ada pengguna yang dipilih", - "file.delete.confirm": - "Anda yakin menghapus
{filename}?", + "file.delete.confirm": "Anda yakin menghapus
{filename}?", "files": "Berkas", "files.empty": "Belum ada berkas", @@ -251,29 +205,22 @@ "installation": "Pemasangan", "installation.completed": "Panel sudah dipasang", "installation.disabled": "Pemasang panel dimatikan di server publik secara bawaan. Mohon jalankan di server lokal atau ubah opsi panel.install untuk menjalankan di server saat ini.", - "installation.issues.accounts": - "Folder /site/accounts tidak ada atau tidak dapat ditulis", - "installation.issues.content": - "Folder /content tidak ada atau tidak dapat ditulis", + "installation.issues.accounts": "Folder /site/accounts tidak ada atau tidak dapat ditulis", + "installation.issues.content": "Folder /content tidak ada atau tidak dapat ditulis", "installation.issues.curl": "Ekstensi CURL diperlukan", "installation.issues.headline": "Panel tidak dapat dipasang", - "installation.issues.mbstring": - "Ekstensi MB String diperlukan", - "installation.issues.media": - "Folder /media tidak ada atau tidak dapat ditulis", + "installation.issues.mbstring": "Ekstensi MB String diperlukan", + "installation.issues.media": "Folder /media tidak ada atau tidak dapat ditulis", "installation.issues.php": "Pastikan Anda menggunakan PHP 7+", - "installation.issues.server": - "Kirby memerlukan Apache, Nginx, atau Caddy", + "installation.issues.server": "Kirby memerlukan Apache, Nginx, atau Caddy", "installation.issues.sessions": "Folder /site/sessions tidak ada atau tidak dapat ditulis", "language": "Bahasa", "language.code": "Kode", "language.convert": "Atur sebagai bawaan", - "language.convert.confirm": - "

Anda yakin mengubah {name} menjadi bahasa bawaan? Ini tidak dapat dibatalkan.

Jika {name} memiliki konten yang tidak diterjemahkan, tidak akan ada pengganti yang valid dan dapat menyebabkan beberapa bagian dari situs Anda menjadi kosong.

", + "language.convert.confirm": "

Anda yakin mengubah {name} menjadi bahasa bawaan? Ini tidak dapat dibatalkan.

Jika {name} memiliki konten yang tidak diterjemahkan, tidak akan ada pengganti yang valid dan dapat menyebabkan beberapa bagian dari situs Anda menjadi kosong.

", "language.create": "Tambah bahasa baru", - "language.delete.confirm": - "Anda yakin menghapus bahasa {name} termasuk semua terjemahannya? Ini tidak dapat dibatalkan!", + "language.delete.confirm": "Anda yakin menghapus bahasa {name} termasuk semua terjemahannya? Ini tidak dapat dibatalkan!", "language.deleted": "Bahasa sudah dihapus", "language.direction": "Arah baca", "language.direction.ltr": "Kiri ke kanan", @@ -292,8 +239,7 @@ "license": "Lisensi Kirby", "license.buy": "Beli lisensi", "license.register": "Daftar", - "license.register.help": - "Anda menerima kode lisensi via surel setelah pembelian. Salin dan tempel kode tersebut untuk mendaftarkan.", + "license.register.help": "Anda menerima kode lisensi via surel setelah pembelian. Salin dan tempel kode tersebut untuk mendaftarkan.", "license.register.label": "Masukkan kode lisensi Anda", "license.register.success": "Terima kasih atas dukungan untuk Kirby", "license.unregistered": "Ini adalah demo tidak diregistrasi dari Kirby", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Pilih posisi", "page.changeStatus.select": "Pilih status baru", "page.changeTemplate": "Ubah templat", - "page.delete.confirm": - "Anda yakin menghapus {title}?", - "page.delete.confirm.subpages": - "Halaman ini memiliki sub-halaman.
Semua sub-halaman akan ikut dihapus.", + "page.delete.confirm": "Anda yakin menghapus {title}?", + "page.delete.confirm.subpages": "Halaman ini memiliki sub-halaman.
Semua sub-halaman akan ikut dihapus.", "page.delete.confirm.title": "Masukkan judul halaman untuk mengonfirmasi", "page.draft.create": "Buat draf", "page.duplicate.appendix": "Salin", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Salin halaman", "page.status": "Status", "page.status.draft": "Draf", - "page.status.draft.description": - "Halaman hanya terlihat untuk penyunting", + "page.status.draft.description": "The page is in draft mode and only visible for logged in editors or via secret link", "page.status.listed": "Publik", "page.status.listed.description": "Halaman publik untuk siapapun", "page.status.unlisted": "Tidak tercantum", @@ -388,6 +331,7 @@ "replace": "Ganti", "retry": "Coba lagi", "revert": "Kembalikan", + "revert.confirm": "Do you really want to delete all unsaved changes?", "role": "Peran", "role.admin.description": "Admin memiliki semua izin", @@ -451,8 +395,7 @@ "url.placeholder": "https://contoh.com", "user": "Pengguna", - "user.blueprint": - "Anda dapat mendefinisikan bagian tambahan dan bidang formulir untuk peran pengguna ini di /site/blueprints/users/{role}.yml", + "user.blueprint": "Anda dapat mendefinisikan bagian tambahan dan bidang formulir untuk peran pengguna ini di /site/blueprints/users/{role}.yml", "user.changeEmail": "Ubah surel", "user.changeLanguage": "Ubah bahasa", "user.changeName": "Ubah nama pengguna ini", @@ -463,8 +406,7 @@ "user.changeRole.select": "Pilih peran baru", "user.create": "Tambah pengguna baru", "user.delete": "Hapus pengguna ini", - "user.delete.confirm": - "Anda yakin menghapus
{email}?", + "user.delete.confirm": "Anda yakin menghapus
{email}?", "users": "Pengguna", diff --git a/kirby/i18n/translations/it.json b/kirby/i18n/translations/it.json index 68101bc..7e60821 100755 --- a/kirby/i18n/translations/it.json +++ b/kirby/i18n/translations/it.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "Non è stato possibile caricare l'immagine del profilo", "error.avatar.delete.fail": "Non è stato possibile eliminare l'immagine del profilo", - "error.avatar.dimensions.invalid": - "Per favore mantieni l'altezza e la larghezza dell'immagine del profilo inferiore ai 3000 pixel", - "error.avatar.mime.forbidden": - "L'immagine del profilo dev'essere un file JPEG o PNG", + "error.avatar.dimensions.invalid": "Per favore mantieni l'altezza e la larghezza dell'immagine del profilo inferiore ai 3000 pixel", + "error.avatar.mime.forbidden": "L'immagine del profilo dev'essere un file JPEG o PNG", "error.blueprint.notFound": "Non è stato possibile caricare il blueprint \"{name}\"", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Convertitore \"{converter}\" non valido", "error.file.changeName.empty": "The name must not be empty", - "error.file.changeName.permission": - "Non ti è permesso modificare il nome di \"{filename}\"", + "error.file.changeName.permission": "Non ti è permesso modificare il nome di \"{filename}\"", "error.file.duplicate": "Un file con il nome \"{filename}\" esiste già", - "error.file.extension.forbidden": - "L'estensione \"{extension}\" non è consentita", - "error.file.extension.missing": - "Il file \"{filename}\" non ha estensione", + "error.file.extension.forbidden": "L'estensione \"{extension}\" non è consentita", + "error.file.extension.missing": "Il file \"{filename}\" non ha estensione", "error.file.maxheight": "The height of the image must not exceed {height} pixels", "error.file.maxsize": "The file is too large", "error.file.maxwidth": "The width of the image must not exceed {width} pixels", - "error.file.mime.differs": - "Il file caricato dev'essere dello stesso MIME type \"{mime}\"", + "error.file.mime.differs": "Il file caricato dev'essere dello stesso MIME type \"{mime}\"", "error.file.mime.forbidden": "Il MIME type \"{mime}\" non è consentito", "error.file.mime.invalid": "Invalid mime type: {mime}", - "error.file.mime.missing": - "Il MIME type per \"{filename}\" non può essere rilevato", + "error.file.mime.missing": "Il MIME type per \"{filename}\" non può essere rilevato", "error.file.minheight": "The height of the image must be at least {height} pixels", "error.file.minsize": "The file is too small", "error.file.minwidth": "The width of the image must be at least {width} pixels", @@ -90,111 +83,77 @@ "error.license.email": "Inserisci un indirizzo email valido", "error.license.verification": "Non è stato possibile verificare la licenza", - "error.page.changeSlug.permission": - "Non ti è permesso cambiare l'URL di \"{slug}\"", - "error.page.changeStatus.incomplete": - "La pagina contiene errori e non può essere pubblicata", - "error.page.changeStatus.permission": - "Lo stato di questa pagina non può essere cambiato", - "error.page.changeStatus.toDraft.invalid": - "La pagina \"{slug}\" non può essere convertita in bozza", - "error.page.changeTemplate.invalid": - "Il template della pagina \"{slug}\" non può essere cambiato", - "error.page.changeTemplate.permission": - "Non ti è permesso modificare il template di \"{slug}\"", + "error.page.changeSlug.permission": "Non ti è permesso cambiare l'URL di \"{slug}\"", + "error.page.changeStatus.incomplete": "La pagina contiene errori e non può essere pubblicata", + "error.page.changeStatus.permission": "Lo stato di questa pagina non può essere cambiato", + "error.page.changeStatus.toDraft.invalid": "La pagina \"{slug}\" non può essere convertita in bozza", + "error.page.changeTemplate.invalid": "Il template della pagina \"{slug}\" non può essere cambiato", + "error.page.changeTemplate.permission": "Non ti è permesso modificare il template di \"{slug}\"", "error.page.changeTitle.empty": "Il titolo non può essere vuoto", - "error.page.changeTitle.permission": - "Non ti è permesso modificare il titolo di \"{slug}\"", + "error.page.changeTitle.permission": "Non ti è permesso modificare il titolo di \"{slug}\"", "error.page.create.permission": "Non ti è permesso creare \"{slug}\"", "error.page.delete": "La pagina \"{slug}\" non può essere eliminata", "error.page.delete.confirm": "Inserisci il titolo della pagina per confermare", - "error.page.delete.hasChildren": - "La pagina ha sottopagine e non può essere eliminata", + "error.page.delete.hasChildren": "La pagina ha sottopagine e non può essere eliminata", "error.page.delete.permission": "Non ti è permesso eliminare \"{slug}\"", - "error.page.draft.duplicate": - "Una bozza di pagina con l'URL \"{slug}\" esiste già", - "error.page.duplicate": - "Una pagina con l'URL \"{slug}\" esiste già", + "error.page.draft.duplicate": "Una bozza di pagina con l'URL \"{slug}\" esiste già", + "error.page.duplicate": "Una pagina con l'URL \"{slug}\" esiste già", "error.page.duplicate.permission": "Non ti è permesso duplicare \"{slug}\"", "error.page.notFound": "La pagina \"{slug}\" non è stata trovata", - "error.page.num.invalid": - "Inserisci un numero di ordinamento valido. I numeri non devono essere negativi", + "error.page.num.invalid": "Inserisci un numero di ordinamento valido. I numeri non devono essere negativi", "error.page.slug.invalid": "Inserisci un prefisso URL valido", "error.page.sort.permission": "La pagina \"{slug}\" non può essere ordinata", "error.page.status.invalid": "Imposta uno stato valido per la pagina", "error.page.undefined": "La pagina non \u00e8 stata trovata", "error.page.update.permission": "Non ti è permesso modificare \"{slug}\"", - "error.section.files.max.plural": - "Non puoi aggiungere più di {max} file alla sezione \"{section}\"", - "error.section.files.max.singular": - "Non puoi aggiungere più di un file alla sezione \"{section}\"", - "error.section.files.min.plural": - "La sezione \"{section}\" richiede almeno {min} file", - "error.section.files.min.singular": - "La sezione \"{section}\" richiede almeno un file", + "error.section.files.max.plural": "Non puoi aggiungere più di {max} file alla sezione \"{section}\"", + "error.section.files.max.singular": "Non puoi aggiungere più di un file alla sezione \"{section}\"", + "error.section.files.min.plural": "La sezione \"{section}\" richiede almeno {min} file", + "error.section.files.min.singular": "La sezione \"{section}\" richiede almeno un file", - "error.section.pages.max.plural": - "Non puoi aggiungere più di {max} pagine alla sezione \"{section}\"", - "error.section.pages.max.singular": - "Non puoi aggiungere più di una pagina alla sezione \"{section}\"", - "error.section.pages.min.plural": - "La sezione \"{section}\" richiede almeno {min} pagine", - "error.section.pages.min.singular": - "La sezione \"{section}\" richiede almeno una pagina", + "error.section.pages.max.plural": "Non puoi aggiungere più di {max} pagine alla sezione \"{section}\"", + "error.section.pages.max.singular": "Non puoi aggiungere più di una pagina alla sezione \"{section}\"", + "error.section.pages.min.plural": "La sezione \"{section}\" richiede almeno {min} pagine", + "error.section.pages.min.singular": "La sezione \"{section}\" richiede almeno una pagina", "error.section.notLoaded": "Non è stato possibile caricare la sezione \"{name}\"", "error.section.type.invalid": "Il tipo di sezione \"{type}\" non è valido", "error.site.changeTitle.empty": "Il titolo non può essere vuoto", - "error.site.changeTitle.permission": - "Non ti è permesso modificare il titolo del sito", + "error.site.changeTitle.permission": "Non ti è permesso modificare il titolo del sito", "error.site.update.permission": "Non ti è permesso modificare i contenuti globali del sito", "error.template.default.notFound": "Il template \"default\" non esiste", - "error.user.changeEmail.permission": - "Non ti è permesso modificare l'indirizzo email di \"{name}\"", - "error.user.changeLanguage.permission": - "Non ti è permesso modificare la lingua per l'utente \"{name}\"", - "error.user.changeName.permission": - "Non ti è permesso modificare il nome dell'utente \"{name}\"", - "error.user.changePassword.permission": - "Non ti è permesso modificare la password dell'utente \"{name}\"", - "error.user.changeRole.lastAdmin": - "Il ruolo dell'ultimo amministratore non può esser cambiato", - "error.user.changeRole.permission": - "Non ti è permesso modificare il ruolo dell'utente \"{name}\"", - "error.user.changeRole.toAdmin": - "You are not allowed to promote someone to the admin role", + "error.user.changeEmail.permission": "Non ti è permesso modificare l'indirizzo email di \"{name}\"", + "error.user.changeLanguage.permission": "Non ti è permesso modificare la lingua per l'utente \"{name}\"", + "error.user.changeName.permission": "Non ti è permesso modificare il nome dell'utente \"{name}\"", + "error.user.changePassword.permission": "Non ti è permesso modificare la password dell'utente \"{name}\"", + "error.user.changeRole.lastAdmin": "Il ruolo dell'ultimo amministratore non può esser cambiato", + "error.user.changeRole.permission": "Non ti è permesso modificare il ruolo dell'utente \"{name}\"", + "error.user.changeRole.toAdmin": "You are not allowed to promote someone to the admin role", "error.user.create.permission": "Non ti è permesso creare questo utente", "error.user.delete": "L'utente non pu\u00f2 essere eliminato", "error.user.delete.lastAdmin": "L'ultimo amministratore non può essere eliminato", "error.user.delete.lastUser": "L'ultimo utente non può essere eliminato", - "error.user.delete.permission": - "Non ti \u00e8 permesso eliminare questo utente ", - "error.user.duplicate": - "Esiste già un utente con l'indirizzo email \"{email}\"", + "error.user.delete.permission": "Non ti \u00e8 permesso eliminare questo utente ", + "error.user.duplicate": "Esiste già un utente con l'indirizzo email \"{email}\"", "error.user.email.invalid": "Inserisci un indirizzo email valido", "error.user.language.invalid": "Inserisci una lingua valida", "error.user.notFound": "L'utente non \u00e8 stato trovato", - "error.user.password.invalid": - "Per favore inserisci una password valida. Le password devono essere lunghe almeno 8 caratteri", + "error.user.password.invalid": "Per favore inserisci una password valida. Le password devono essere lunghe almeno 8 caratteri", "error.user.password.notSame": "Le password non corrispondono", "error.user.password.undefined": "L'utente non ha una password", "error.user.role.invalid": "Inserisci un ruolo valido", - "error.user.update.permission": - "Non ti è permesso aggiornare l'utente \"{name}\"", + "error.user.update.permission": "Non ti è permesso aggiornare l'utente \"{name}\"", "error.validation.accepted": "Per favore conferma", "error.validation.alpha": "Puoi inserire solo caratteri tra a-z", - "error.validation.alphanum": - "Puoi inserire solo caratteri tra a-z e numeri 0-9", - "error.validation.between": - "Inserisci un valore tra \"{min}\" e \"{max}\"", + "error.validation.alphanum": "Puoi inserire solo caratteri tra a-z e numeri 0-9", + "error.validation.between": "Inserisci un valore tra \"{min}\" e \"{max}\"", "error.validation.boolean": "Per favore conferma o nega", - "error.validation.contains": - "Inserisci un valore che contiene \"{needle}\"", + "error.validation.contains": "Inserisci un valore che contiene \"{needle}\"", "error.validation.date": "Inserisci una data valida", "error.validation.date.after": "Inserisci una data dopo il {date}", "error.validation.date.before": "Inserisci una data prima del {date}", @@ -210,18 +169,14 @@ "error.validation.less": "Inserisci un valore inferiore a {max}", "error.validation.match": "Il valore non corrisponde al pattern previsto", "error.validation.max": "Inserisci un valore inferiore o uguale a {max}", - "error.validation.maxlength": - "Inserisci un testo più corto. (max. {max} caratteri)", + "error.validation.maxlength": "Inserisci un testo più corto. (max. {max} caratteri)", "error.validation.maxwords": "Non inserire più di {max} parola/e", "error.validation.min": "Inserisci un valore superiore o uguale a {min}", - "error.validation.minlength": - "Inserisci un testo più lungo. (min. {min} caratteri)", + "error.validation.minlength": "Inserisci un testo più lungo. (min. {min} caratteri)", "error.validation.minwords": "Inserisci almeno {min} parola/e", "error.validation.more": "Inserisci un valore superiore a {min}", - "error.validation.notcontains": - "Inserisci un valore che non contenga \"{needle}\"", - "error.validation.notin": - "Non inserire nessuno dei valori seguenti: ({notIn})", + "error.validation.notcontains": "Inserisci un valore che non contenga \"{needle}\"", + "error.validation.notin": "Non inserire nessuno dei valori seguenti: ({notIn})", "error.validation.option": "Seleziona un'opzione valida", "error.validation.num": "Inserisci un numero valido", "error.validation.required": "Inserisci qualcosa", @@ -238,8 +193,7 @@ "field.structure.empty": "Non ci sono ancora elementi.", "field.users.empty": "Nessun utente selezionato", - "file.delete.confirm": - "Sei sicuro di voler eliminare questo file?", + "file.delete.confirm": "Sei sicuro di voler eliminare questo file?", "files": "Files", "files.empty": "Nessun file caricato", @@ -251,29 +205,22 @@ "installation": "Installazione", "installation.completed": "Il pannello è stato installato", "installation.disabled": "L'installazione del pannello è disabilitata di default sui server pubblici. Esegui l'installazione in locale oppure abilitala usando l'opzione panel.install.", - "installation.issues.accounts": - "/site/accounts non esiste o non dispone dei permessi di scrittura", - "installation.issues.content": - "La cartella /content non esiste o non dispone dei permessi di scrittura", + "installation.issues.accounts": "/site/accounts non esiste o non dispone dei permessi di scrittura", + "installation.issues.content": "La cartella /content non esiste o non dispone dei permessi di scrittura", "installation.issues.curl": "È necessaria l'estensione CURL", "installation.issues.headline": "Il pannello non può esser installato", - "installation.issues.mbstring": - "È necessaria l'estensione MB String", - "installation.issues.media": - "La cartella /media non esiste o non dispone dei permessi di scrittura", + "installation.issues.mbstring": "È necessaria l'estensione MB String", + "installation.issues.media": "La cartella /media non esiste o non dispone dei permessi di scrittura", "installation.issues.php": "Assicurati di utilizzare PHP 7.1+", - "installation.issues.server": - "Kirby necessita di Apache, Nginx o Caddy", + "installation.issues.server": "Kirby necessita di Apache, Nginx o Caddy", "installation.issues.sessions": "La cartella /site/sessionsnon esiste o non dispone dei permessi di scrittura", "language": "Lingua", "language.code": "Codice", "language.convert": "Imposta come predefinito", - "language.convert.confirm": - "

Sei sicuro di voler convertire {name} nella lingua predefinita? Questa operazione non può essere annullata.

Se {name} non contiene tutte le traduzioni, non ci sarà più una versione alternativa valida e parti del sito potrebbero rimanere vuote.

", + "language.convert.confirm": "

Sei sicuro di voler convertire {name} nella lingua predefinita? Questa operazione non può essere annullata.

Se {name} non contiene tutte le traduzioni, non ci sarà più una versione alternativa valida e parti del sito potrebbero rimanere vuote.

", "language.create": "Aggiungi una nuova lingua", - "language.delete.confirm": - "Sei sicuro di voler eliminare la lingua {name} con tutte le traduzioni? Non sarà possibile annullare!", + "language.delete.confirm": "Sei sicuro di voler eliminare la lingua {name} con tutte le traduzioni? Non sarà possibile annullare!", "language.deleted": "La lingua è stata eliminata", "language.direction": "Direzione di lettura", "language.direction.ltr": "Sinistra a destra", @@ -292,8 +239,7 @@ "license": "Licenza di Kirby", "license.buy": "Acquista una licenza", "license.register": "Registra", - "license.register.help": - "Hai ricevuto il codice di licenza tramite email dopo l'acquisto. Per favore inseriscilo per registrare Kirby.", + "license.register.help": "Hai ricevuto il codice di licenza tramite email dopo l'acquisto. Per favore inseriscilo per registrare Kirby.", "license.register.label": "Inserisci il codice di licenza", "license.register.success": "Ti ringraziamo per aver supportato Kirby", "license.unregistered": "Questa è una versione demo di Kirby non registrata", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Scegli una posizione", "page.changeStatus.select": "Seleziona un nuovo stato", "page.changeTemplate": "Cambia template", - "page.delete.confirm": - "Sei sicuro di voler eliminare questa pagina?", - "page.delete.confirm.subpages": - "Questa pagina ha sottopagine.
Anche tutte le sottopagine verranno eliminate.", + "page.delete.confirm": "Sei sicuro di voler eliminare questa pagina?", + "page.delete.confirm.subpages": "Questa pagina ha sottopagine.
Anche tutte le sottopagine verranno eliminate.", "page.delete.confirm.title": "Inserisci il titolo della pagina per confermare", "page.draft.create": "Crea bozza", "page.duplicate.appendix": "Copia", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Copia pagine", "page.status": "Stato", "page.status.draft": "Bozza", - "page.status.draft.description": - "La pagina è in modalità bozza ed è visibile solo per editori registrati", + "page.status.draft.description": "The page is in draft mode and only visible for logged in editors or via secret link", "page.status.listed": "Pubblico", "page.status.listed.description": "La pagina è pubblicata per tutti", "page.status.unlisted": "Non in elenco", @@ -388,6 +331,7 @@ "replace": "Sostituisci", "retry": "Riprova", "revert": "Abbandona", + "revert.confirm": "Do you really want to delete all unsaved changes?", "role": "Ruolo", "role.admin.description": "L'amministratore ha tutti i permessi", @@ -451,8 +395,7 @@ "url.placeholder": "https://esempio.com", "user": "Utente", - "user.blueprint": - "Puoi definire sezioni e campi del form aggiuntivi per questo ruolo in /site/blueprints/users/{role}.yml", + "user.blueprint": "Puoi definire sezioni e campi del form aggiuntivi per questo ruolo in /site/blueprints/users/{role}.yml", "user.changeEmail": "Modifica email", "user.changeLanguage": "Cambia lingua", "user.changeName": "Rinomina questo utente", @@ -463,8 +406,7 @@ "user.changeRole.select": "Seleziona un nuovo ruolo", "user.create": "Aggiungi nuovo utente", "user.delete": "Elimina questo utente", - "user.delete.confirm": - "Sei sicuro di voler eliminare questo utente?", + "user.delete.confirm": "Sei sicuro di voler eliminare questo utente?", "users": "Utenti", diff --git a/kirby/i18n/translations/ko.json b/kirby/i18n/translations/ko.json index a4760ac..7f173ad 100755 --- a/kirby/i18n/translations/ko.json +++ b/kirby/i18n/translations/ko.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "프로필 이미지를 업로드할 수 없습니다.", "error.avatar.delete.fail": "\ud504\ub85c\ud544 \uc774\ubbf8\uc9c0\ub97c \uc0ad\uc81c\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.", - "error.avatar.dimensions.invalid": - "프로필 이미지의 너비와 높이를 3,000픽셀 이하로 설정하세요.", - "error.avatar.mime.forbidden": - "프로필 이미지의 확장자(JPG, JPEG, PNG)를 확인하세요.", + "error.avatar.dimensions.invalid": "프로필 이미지의 너비와 높이를 3,000픽셀 이하로 설정하세요.", + "error.avatar.mime.forbidden": "프로필 이미지의 확장자(JPG, JPEG, PNG)를 확인하세요.", "error.blueprint.notFound": "블루프린트({name})를 확인할 수 없습니다.", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "컨버터({converter})가 올바르지 않습니다.", "error.file.changeName.empty": "이름을 입력하세요.", - "error.file.changeName.permission": - "파일명({filename})을 변경할 권한이 없습니다.", + "error.file.changeName.permission": "파일명({filename})을 변경할 권한이 없습니다.", "error.file.duplicate": "파일명이 같은 파일({filename})이 있습니다.", - "error.file.extension.forbidden": - "이 확장자({extension})는 업로드할 수 없습니다.", - "error.file.extension.missing": - "파일({filename})에 확장자가 없습니다.", + "error.file.extension.forbidden": "이 확장자({extension})는 업로드할 수 없습니다.", + "error.file.extension.missing": "파일({filename})에 확장자가 없습니다.", "error.file.maxheight": "이미지의 높이는 {height}픽셀을 초과할 수 없습니다.", "error.file.maxsize": "파일이 너무 큽니다.", "error.file.maxwidth": "이미지의 너비는 {width}픽셀을 초과할 수 없습니다.", - "error.file.mime.differs": - "기존 파일과 MIME 형식({mime})이 다릅니다.", + "error.file.mime.differs": "기존 파일과 MIME 형식({mime})이 다릅니다.", "error.file.mime.forbidden": "이 MIME 형식({mime})은 업로드할 수 없습니다.", "error.file.mime.invalid": "MIME 형식({mime})이 올바르지 않습니다.", - "error.file.mime.missing": - "파일({filename})의 형식을 확인할 수 없습니다.", + "error.file.mime.missing": "파일({filename})의 형식을 확인할 수 없습니다.", "error.file.minheight": "{height}픽셀 이상으로 이미지의 높이를 설정하세요.", "error.file.minsize": "파일이 너무 작습니다.", "error.file.minwidth": "{width}픽셀 이상으로 이미지의 너비를 설정하세요.", @@ -90,111 +83,77 @@ "error.license.email": "올바른 이메일 주소를 입력하세요.", "error.license.verification": "라이선스 키가 올바르지 않습니다.", - "error.page.changeSlug.permission": - "고유 주소({slug})를 변경할 권한이 없습니다.", - "error.page.changeStatus.incomplete": - "페이지를 공개할 수 없습니다.", - "error.page.changeStatus.permission": - "페이지의 상태를 변경할 수 없습니다.", - "error.page.changeStatus.toDraft.invalid": - "페이지({slug})의 상태를 초안으로 변경할 수 없습니다.", - "error.page.changeTemplate.invalid": - "페이지({slug})의 템플릿을 변경할 수 없습니다.", - "error.page.changeTemplate.permission": - "페이지({slug})의 템플릿을 변경할 권한이 없습니다.", + "error.page.changeSlug.permission": "고유 주소({slug})를 변경할 권한이 없습니다.", + "error.page.changeStatus.incomplete": "페이지를 공개할 수 없습니다.", + "error.page.changeStatus.permission": "페이지의 상태를 변경할 수 없습니다.", + "error.page.changeStatus.toDraft.invalid": "페이지({slug})의 상태를 초안으로 변경할 수 없습니다.", + "error.page.changeTemplate.invalid": "페이지({slug})의 템플릿을 변경할 수 없습니다.", + "error.page.changeTemplate.permission": "페이지({slug})의 템플릿을 변경할 권한이 없습니다.", "error.page.changeTitle.empty": "제목을 입력하세요.", - "error.page.changeTitle.permission": - "페이지({slug})의 제목을 변경할 권한이 없습니다.", + "error.page.changeTitle.permission": "페이지({slug})의 제목을 변경할 권한이 없습니다.", "error.page.create.permission": "페이지({slug})를 등록할 권한이 없습니다.", "error.page.delete": "페이지({slug})를 삭제할 수 없습니다.", "error.page.delete.confirm": "페이지를 삭제하려면 페이지의 제목을 입력하세요.", - "error.page.delete.hasChildren": - "하위 페이지가 있는 페이지는 삭제할 수 없습니다.", + "error.page.delete.hasChildren": "하위 페이지가 있는 페이지는 삭제할 수 없습니다.", "error.page.delete.permission": "페이지({slug})를 삭제할 권한이 없습니다.", - "error.page.draft.duplicate": - "고유 주소({slug})가 같은 초안 페이지가 있습니다.", - "error.page.duplicate": - "고유 주소({slug})가 같은 페이지가 있습니다.", + "error.page.draft.duplicate": "고유 주소({slug})가 같은 초안 페이지가 있습니다.", + "error.page.duplicate": "고유 주소({slug})가 같은 페이지가 있습니다.", "error.page.duplicate.permission": "페이지({slug})를 복제할 권한이 없습니다.", "error.page.notFound": "페이지({slug})가 없습니다.", - "error.page.num.invalid": - "올바른 정수를 입력하세요.", + "error.page.num.invalid": "올바른 정수를 입력하세요.", "error.page.slug.invalid": "올바른 접두사를 입력하세요.", "error.page.sort.permission": "페이지({slug})를 정렬할 수 없습니다.", "error.page.status.invalid": "올바른 상태를 설정하세요.", "error.page.undefined": "\ud398\uc774\uc9c0\uac00 \uc5c6\uc2b5\ub2c8\ub2e4.", "error.page.update.permission": "페이지({slug})를 변경할 권한이 없습니다.", - "error.section.files.max.plural": - "이 섹션({section})에는 파일을 {max}개 이상 추가할 수 없습니다.", - "error.section.files.max.singular": - "이 섹션({section})에는 파일을 하나 이상 추가할 수 없습니다.", - "error.section.files.min.plural": - "이 섹션({section})에는 파일이 {min}개 이상 필요합니다.", - "error.section.files.min.singular": - "이 섹션({section})에는 파일이 하나 이상 필요합니다.", + "error.section.files.max.plural": "이 섹션({section})에는 파일을 {max}개 이상 추가할 수 없습니다.", + "error.section.files.max.singular": "이 섹션({section})에는 파일을 하나 이상 추가할 수 없습니다.", + "error.section.files.min.plural": "이 섹션({section})에는 파일이 {min}개 이상 필요합니다.", + "error.section.files.min.singular": "이 섹션({section})에는 파일이 하나 이상 필요합니다.", - "error.section.pages.max.plural": - "이 섹션({section})에는 페이지를 {max}개 이상 추가할 수 없습니다.", - "error.section.pages.max.singular": - "이 섹션({section})에는 페이지를 하나 이상 추가할 수 없습니다.", - "error.section.pages.min.plural": - "이 섹션({section})에는 페이지가 {min}개 이상 필요합니다.", - "error.section.pages.min.singular": - "이 섹션({section})에는 페이지가 하나 이상 필요합니다.", + "error.section.pages.max.plural": "이 섹션({section})에는 페이지를 {max}개 이상 추가할 수 없습니다.", + "error.section.pages.max.singular": "이 섹션({section})에는 페이지를 하나 이상 추가할 수 없습니다.", + "error.section.pages.min.plural": "이 섹션({section})에는 페이지가 {min}개 이상 필요합니다.", + "error.section.pages.min.singular": "이 섹션({section})에는 페이지가 하나 이상 필요합니다.", "error.section.notLoaded": "섹션({name})을 확인할 수 없습니다.", "error.section.type.invalid": "섹션의 형식({type})이 올바르지 않습니다.", "error.site.changeTitle.empty": "제목을 입력하세요.", - "error.site.changeTitle.permission": - "사이트명을 변경할 권한이 없습니다.", + "error.site.changeTitle.permission": "사이트명을 변경할 권한이 없습니다.", "error.site.update.permission": "사이트의 정보를 변경할 권한이 없습니다.", "error.template.default.notFound": "기본 템플릿이 없습니다.", - "error.user.changeEmail.permission": - "사용자({name})의 이메일 주소를 변경할 권한이 없습니다.", - "error.user.changeLanguage.permission": - "사용자({name})의 언어를 변경할 권한이 없습니다.", - "error.user.changeName.permission": - "사용자명({name})을 변경할 권한이 없습니다.", - "error.user.changePassword.permission": - "사용자({name})의 암호를 변경할 권한이 없습니다.", - "error.user.changeRole.lastAdmin": - "최종 관리자의 역할은 변경할 수 없습니다.", - "error.user.changeRole.permission": - "사용자({name})의 역할을 변경할 권한이 없습니다.", - "error.user.changeRole.toAdmin": - "다른 사용자를 관리자로 지정할 권한이 없습니다.", + "error.user.changeEmail.permission": "사용자({name})의 이메일 주소를 변경할 권한이 없습니다.", + "error.user.changeLanguage.permission": "사용자({name})의 언어를 변경할 권한이 없습니다.", + "error.user.changeName.permission": "사용자명({name})을 변경할 권한이 없습니다.", + "error.user.changePassword.permission": "사용자({name})의 암호를 변경할 권한이 없습니다.", + "error.user.changeRole.lastAdmin": "최종 관리자의 역할은 변경할 수 없습니다.", + "error.user.changeRole.permission": "사용자({name})의 역할을 변경할 권한이 없습니다.", + "error.user.changeRole.toAdmin": "다른 사용자를 관리자로 지정할 권한이 없습니다.", "error.user.create.permission": "사용자를 등록할 권한이 없습니다.", "error.user.delete": "사용자({name})를 삭제할 수 없습니다.", "error.user.delete.lastAdmin": "\ucd5c\uc885 \uad00\ub9ac\uc790\ub294 \uc0ad\uc81c\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.", "error.user.delete.lastUser": "최종 사용자는 삭제할 수 없습니다.", - "error.user.delete.permission": - "사용자({name})를 삭제할 권한이 없습니다.", - "error.user.duplicate": - "이메일 주소({email})가 같은 사용자가 있습니다.", + "error.user.delete.permission": "사용자({name})를 삭제할 권한이 없습니다.", + "error.user.duplicate": "이메일 주소({email})가 같은 사용자가 있습니다.", "error.user.email.invalid": "올바른 이메일 주소를 입력하세요.", "error.user.language.invalid": "올바른 언어를 입력하세요.", "error.user.notFound": "사용자({name})가 없습니다.", - "error.user.password.invalid": - "암호를 8자 이상으로 설정하세요.", + "error.user.password.invalid": "암호를 8자 이상으로 설정하세요.", "error.user.password.notSame": "\uc554\ud638\ub97c \ud655\uc778\ud558\uc138\uc694.", "error.user.password.undefined": "암호가 설정되지 않았습니다.", "error.user.role.invalid": "올바른 역할을 입력하세요.", - "error.user.update.permission": - "사용자({name})의 정보를 변경할 권한이 없습니다.", + "error.user.update.permission": "사용자({name})의 정보를 변경할 권한이 없습니다.", "error.validation.accepted": "확인하세요.", "error.validation.alpha": "로마자(a~z)만 입력할 수 있습니다.", - "error.validation.alphanum": - "로마자(a~z) 또는 숫자(0~9)만 입력할 수 있습니다.", - "error.validation.between": - "{min}, {max} 사이의 값을 입력하세요.", + "error.validation.alphanum": "로마자(a~z) 또는 숫자(0~9)만 입력할 수 있습니다.", + "error.validation.between": "{min}, {max} 사이의 값을 입력하세요.", "error.validation.boolean": "확인하거나 취소하세요.", - "error.validation.contains": - "다음을 포함한 값을 입력하세요: {needle}", + "error.validation.contains": "다음을 포함한 값을 입력하세요: {needle}", "error.validation.date": "올바른 날짜를 입력하세요.", "error.validation.date.after": "{date} 이후 날짜를 입력하세요.", "error.validation.date.before": "{date} 이전 날짜를 입력하세요.", @@ -210,18 +169,14 @@ "error.validation.less": "{max} 미만의 값을 입력하세요.", "error.validation.match": "입력한 값이 예상 패턴과 일치하지 않습니다.", "error.validation.max": "{max} 이하의 값을 입력하세요.", - "error.validation.maxlength": - "{max}자 이하의 값을 입력하세요.", + "error.validation.maxlength": "{max}자 이하의 값을 입력하세요.", "error.validation.maxwords": "{max}자 이하를 입력하세요.", "error.validation.min": "{min} 이상의 값을 입력하세요.", - "error.validation.minlength": - "{min}자 이상의 값을 입력하세요.", + "error.validation.minlength": "{min}자 이상의 값을 입력하세요.", "error.validation.minwords": "{min}자 이상을 입력하세요.", "error.validation.more": "{min} 이상의 값을 입력하세요.", - "error.validation.notcontains": - "{needle}에 포함된 값은 입력할 수 없습니다.", - "error.validation.notin": - "{notIn}에 포함된 값은 입력할 수 없습니다.", + "error.validation.notcontains": "{needle}에 포함된 값은 입력할 수 없습니다.", + "error.validation.notin": "{notIn}에 포함된 값은 입력할 수 없습니다.", "error.validation.option": "올바른 옵션을 선택하세요.", "error.validation.num": "올바른 숫자를 입력하세요.", "error.validation.required": "아무거나 입력하세요.", @@ -238,8 +193,7 @@ "field.structure.empty": "항목이 없습니다.", "field.users.empty": "선택한 사용자가 없습니다.", - "file.delete.confirm": - "파일({filename})을 삭제할까요?", + "file.delete.confirm": "파일({filename})을 삭제할까요?", "files": "파일", "files.empty": "파일이 없습니다.", @@ -251,29 +205,22 @@ "installation": "설치", "installation.completed": "패널을 설치했습니다.", "installation.disabled": "패널 설치 관리자는 로컬 서버에서 실행하거나 panel.install 옵션을 설정하세요.", - "installation.issues.accounts": - "폴더(/site/accounts)에 쓰기 권한이 없습니다.", - "installation.issues.content": - "폴더(/content)에 쓰기 권한이 없습니다.", + "installation.issues.accounts": "폴더(/site/accounts)에 쓰기 권한이 없습니다.", + "installation.issues.content": "폴더(/content)에 쓰기 권한이 없습니다.", "installation.issues.curl": "cURL 확장 기능이 필요합니다.", "installation.issues.headline": "패널을 설치할 수 없습니다.", - "installation.issues.mbstring": - "MB String 확장 기능이 필요합니다.", - "installation.issues.media": - "폴더(/media)에 쓰기 권한이 없습니다.", + "installation.issues.mbstring": "MB String 확장 기능이 필요합니다.", + "installation.issues.media": "폴더(/media)에 쓰기 권한이 없습니다.", "installation.issues.php": "PHP 버전이 7 이상인지 확인하세요.", - "installation.issues.server": - "Kirby를 실행하려면 Apache, Nginx, 또는 Caddy가 필요합니다.", + "installation.issues.server": "Kirby를 실행하려면 Apache, Nginx, 또는 Caddy가 필요합니다.", "installation.issues.sessions": "폴더(/site/sessions)에 쓰기 권한이 없습니다.", "language": "\uc5b8\uc5b4", "language.code": "언어 코드", "language.convert": "기본 언어로 설정", - "language.convert.confirm": - "이 언어({name})를 기본 언어로 설정할까요? 설정한 뒤에는 복원할 수 없으며, 이 언어로 번역되지 않은 항목은 올바르게 표시되지 않을 수 있습니다.", + "language.convert.confirm": "이 언어({name})를 기본 언어로 설정할까요? 설정한 뒤에는 복원할 수 없으며, 이 언어로 번역되지 않은 항목은 올바르게 표시되지 않을 수 있습니다.", "language.create": "새 언어 추가", - "language.delete.confirm": - "언어({name})를 삭제할까요? 삭제한 뒤에는 복원할 수 없습니다.", + "language.delete.confirm": "언어({name})를 삭제할까요? 삭제한 뒤에는 복원할 수 없습니다.", "language.deleted": "언어를 삭제했습니다.", "language.direction": "읽기 방향", "language.direction.ltr": "왼쪽에서 오른쪽", @@ -292,8 +239,7 @@ "license": "라이선스", "license.buy": "라이선스 구매", "license.register": "등록", - "license.register.help": - "이메일 주소로 라이선스 코드를 전송했습니다. Kirby를 등록하려면 라이선스 코드와 이메일 주소를 입력하세요.", + "license.register.help": "이메일 주소로 라이선스 코드를 전송했습니다. Kirby를 등록하려면 라이선스 코드와 이메일 주소를 입력하세요.", "license.register.label": "라이선스 코드를 입력하세요.", "license.register.success": "Kirby를 구입해주셔서 감사합니다.", "license.unregistered": "Kirby가 등록되지 않았습니다.", @@ -325,7 +271,7 @@ "months.april": "4\uc6d4", "months.august": "8\uc6d4", "months.december": "12\uc6d4", - "months.february": "2\uc6d4", + "months.february": "2월", "months.january": "1\uc6d4", "months.july": "7\uc6d4", "months.june": "6\uc6d4", @@ -354,10 +300,8 @@ "page.changeStatus.position": "위치를 선택하세요.", "page.changeStatus.select": "새 상태 선택", "page.changeTemplate": "템플릿 변경", - "page.delete.confirm": - "페이지({title})를 삭제할까요?", - "page.delete.confirm.subpages": - "페이지에 하위 페이지가 있습니다. 모든 하위 페이지가 삭제됩니다.", + "page.delete.confirm": "페이지({title})를 삭제할까요?", + "page.delete.confirm.subpages": "페이지에 하위 페이지가 있습니다. 모든 하위 페이지가 삭제됩니다.", "page.delete.confirm.title": "페이지 제목을 입력하세요.", "page.draft.create": "초안 등록", "page.duplicate.appendix": "복사", @@ -365,8 +309,7 @@ "page.duplicate.pages": "페이지 복사", "page.status": "상태", "page.status.draft": "초안", - "page.status.draft.description": - "로그인한 사용자만 읽을 수 있습니다.", + "page.status.draft.description": "로그인한 사용자나 URL을 통해서만 읽을 수 있습니다.", "page.status.listed": "공개", "page.status.listed.description": "누구나 읽을 수 있습니다.", "page.status.unlisted": "비공개", @@ -388,6 +331,7 @@ "replace": "\uad50\uccb4", "retry": "\ub2e4\uc2dc \uc2dc\ub3c4", "revert": "복원", + "revert.confirm": "저장되지 않은 내용을 삭제할까요?", "role": "역할", "role.admin.description": "관리자는 모든 권한이 있습니다.", @@ -451,8 +395,7 @@ "url.placeholder": "https://example.com", "user": "사용자", - "user.blueprint": - "파일(/site/blueprints/users/{role}.yml)에 섹션 및 폼 필드를 추가할 수 있습니다.", + "user.blueprint": "파일(/site/blueprints/users/{role}.yml)에 섹션 및 폼 필드를 추가할 수 있습니다.", "user.changeEmail": "이메일 주소 변경", "user.changeLanguage": "언어 변경", "user.changeName": "사용자명 변경", @@ -463,8 +406,7 @@ "user.changeRole.select": "새 역할 선택", "user.create": "사용자 추가", "user.delete": "사용자 삭제", - "user.delete.confirm": - "사용자({email})를 삭제할까요?", + "user.delete.confirm": "사용자({email})를 삭제할까요?", "users": "사용자", diff --git a/kirby/i18n/translations/lt.json b/kirby/i18n/translations/lt.json index bf14bed..57a50c8 100755 --- a/kirby/i18n/translations/lt.json +++ b/kirby/i18n/translations/lt.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "Nepavyko įkelti profilio nuotraukos", "error.avatar.delete.fail": "Nepavyko pašalinti profilio nuotraukos", - "error.avatar.dimensions.invalid": - "Profilio nuotraukos plotis ar aukštis turėtų būti iki 3000 pikselių", - "error.avatar.mime.forbidden": - "Profilio nuotrauka turi būti JPEG arba PNG", + "error.avatar.dimensions.invalid": "Profilio nuotraukos plotis ar aukštis turėtų būti iki 3000 pikselių", + "error.avatar.mime.forbidden": "Profilio nuotrauka turi būti JPEG arba PNG", "error.blueprint.notFound": "Blueprint \"{name}\" negali būti užkrautas", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Neteisingas konverteris \"{converter}\"", "error.file.changeName.empty": "Pavadinimas negali būti tuščias", - "error.file.changeName.permission": - "Neturite teisės pakeisti failo pavadinimo \"{filename}\"", + "error.file.changeName.permission": "Neturite teisės pakeisti failo pavadinimo \"{filename}\"", "error.file.duplicate": "Failas su pavadinimu \"{filename}\" jau yra", - "error.file.extension.forbidden": - "Failo tipas (plėtinys) \"{extension}\" neleidžiamas", - "error.file.extension.missing": - "Failui \"{filename}\" trūksta tipo (plėtinio)", + "error.file.extension.forbidden": "Failo tipas (plėtinys) \"{extension}\" neleidžiamas", + "error.file.extension.missing": "Failui \"{filename}\" trūksta tipo (plėtinio)", "error.file.maxheight": "Failo aukštis neturi viršyti {height} px", "error.file.maxsize": "Failas per didelis", "error.file.maxwidth": "Failo plotis neturi viršyti {width} px", - "error.file.mime.differs": - "Įkėliamas failas turi būti tokio pat mime tipo \"{mime}\"", + "error.file.mime.differs": "Įkėliamas failas turi būti tokio pat mime tipo \"{mime}\"", "error.file.mime.forbidden": "Media tipas \"{mime}\" neleidžiamas", "error.file.mime.invalid": "Neteisingas mime tipas: {mime}", - "error.file.mime.missing": - "Failui \"{filename}\" nepavyko atpažinti media (mime) tipo", + "error.file.mime.missing": "Failui \"{filename}\" nepavyko atpažinti media (mime) tipo", "error.file.minheight": "Failo aukštis turi būti bent {height} px", "error.file.minsize": "Failas per mažas", "error.file.minwidth": "Failo plotis turi būti bent {width} px", @@ -90,111 +83,77 @@ "error.license.email": "Prašome įrašyti teisingą el. pašto adresą", "error.license.verification": "Nepavyko patikrinti licenzijos", - "error.page.changeSlug.permission": - "Neturite teisės pakeisti \"{slug}\" URL", - "error.page.changeStatus.incomplete": - "Puslapis turi klaidų ir negali būti paskelbtas", - "error.page.changeStatus.permission": - "Šiam puslapiui negalima pakeisti statuso", - "error.page.changeStatus.toDraft.invalid": - "Puslapio \"{slug}\" negalima paversti juodraščiu", - "error.page.changeTemplate.invalid": - "Šablono puslapiui \"{slug}\" negalima keisti", - "error.page.changeTemplate.permission": - "Neturite leidimo keisti šabloną puslapiui \"{slug}\"", + "error.page.changeSlug.permission": "Neturite teisės pakeisti \"{slug}\" URL", + "error.page.changeStatus.incomplete": "Puslapis turi klaidų ir negali būti paskelbtas", + "error.page.changeStatus.permission": "Šiam puslapiui negalima pakeisti statuso", + "error.page.changeStatus.toDraft.invalid": "Puslapio \"{slug}\" negalima paversti juodraščiu", + "error.page.changeTemplate.invalid": "Šablono puslapiui \"{slug}\" negalima keisti", + "error.page.changeTemplate.permission": "Neturite leidimo keisti šabloną puslapiui \"{slug}\"", "error.page.changeTitle.empty": "Pavadinimas negali būti tuščias", - "error.page.changeTitle.permission": - "Neturite leidimo keisti pavadinimo puslapiui \"{slug}\"", + "error.page.changeTitle.permission": "Neturite leidimo keisti pavadinimo puslapiui \"{slug}\"", "error.page.create.permission": "Neturite leidimo sukurti \"{slug}\"", "error.page.delete": "Puslapio \"{slug}\" negalima pašalinti", "error.page.delete.confirm": "Įrašykite puslapio pavadinimą, tam kad patvirtintumėte", - "error.page.delete.hasChildren": - "Puslapis turi vidinių puslapių, dėl to negalima jo pašalinti", + "error.page.delete.hasChildren": "Puslapis turi vidinių puslapių, dėl to negalima jo pašalinti", "error.page.delete.permission": "Neturite leidimo šalinti \"{slug}\"", - "error.page.draft.duplicate": - "Puslapio juodraštis su URL pabaiga \"{slug}\" jau yra", - "error.page.duplicate": - "Puslapis su URL pabaiga \"{slug}\" jau yra", + "error.page.draft.duplicate": "Puslapio juodraštis su URL pabaiga \"{slug}\" jau yra", + "error.page.duplicate": "Puslapis su URL pabaiga \"{slug}\" jau yra", "error.page.duplicate.permission": "Neturite leidimo dubliuoti \"{slug}\"", "error.page.notFound": "Puslapis \"{slug}\" nerastas", - "error.page.num.invalid": - "Įrašykite teisingą eiliškumo numerį. Numeris negali būti neigiamas.", + "error.page.num.invalid": "Įrašykite teisingą eiliškumo numerį. Numeris negali būti neigiamas.", "error.page.slug.invalid": "Įrašykite teisingą URL prefiksą", "error.page.sort.permission": "Puslapiui \"{slug}\" negalima pakeisti eiliškumo", "error.page.status.invalid": "Nustatykite teisingą puslapio statusą", "error.page.undefined": "Puslapis nerastas", "error.page.update.permission": "Neturite leidimo atnaujinti \"{slug}\"", - "error.section.files.max.plural": - "Į sekciją \"{section}\" negalima pridėti daugiau nei {max} failų", - "error.section.files.max.singular": - "Į sekciją \"{section}\" negalima pridėti daugiau nei vieną failą", - "error.section.files.min.plural": - "Sekcija \"{section}\" reikalauja bent {min} failų", - "error.section.files.min.singular": - "Sekcija \"{section}\" reikalauja bent vieno failo", + "error.section.files.max.plural": "Į sekciją \"{section}\" negalima pridėti daugiau nei {max} failų", + "error.section.files.max.singular": "Į sekciją \"{section}\" negalima pridėti daugiau nei vieną failą", + "error.section.files.min.plural": "Sekcija \"{section}\" reikalauja bent {min} failų", + "error.section.files.min.singular": "Sekcija \"{section}\" reikalauja bent vieno failo", - "error.section.pages.max.plural": - "Į sekciją \"{section}\" negalima pridėti daugiau nei {max} puslapių", - "error.section.pages.max.singular": - "Į sekciją \"{section}\" negalima pridėti daugiau nei vieną puslapį", - "error.section.pages.min.plural": - "Sekcija \"{section}\" reikalauja bent {min} puslapių", - "error.section.pages.min.singular": - "Sekcija \"{section}\" reikalauja bent vieno puslapio", + "error.section.pages.max.plural": "Į sekciją \"{section}\" negalima pridėti daugiau nei {max} puslapių", + "error.section.pages.max.singular": "Į sekciją \"{section}\" negalima pridėti daugiau nei vieną puslapį", + "error.section.pages.min.plural": "Sekcija \"{section}\" reikalauja bent {min} puslapių", + "error.section.pages.min.singular": "Sekcija \"{section}\" reikalauja bent vieno puslapio", "error.section.notLoaded": "Sekcija \"{name}\" negali būti užkrauta", "error.section.type.invalid": "Sekcijos tipas \"{type}\" yra neteisingas", "error.site.changeTitle.empty": "Pavadinimas negali būti tuščias", - "error.site.changeTitle.permission": - "Neturite leidimo keisti svetainės pavadinimo", + "error.site.changeTitle.permission": "Neturite leidimo keisti svetainės pavadinimo", "error.site.update.permission": "Neturite leidimo atnaujinti svetainės", "error.template.default.notFound": "Nėra šablono pagal nutylėjimą", - "error.user.changeEmail.permission": - "Neturite leidimo keisti vartotojo \"{name}\" el. paštą", - "error.user.changeLanguage.permission": - "Neturite leidimo keisti vartotojo \"{name}\" kalbą", - "error.user.changeName.permission": - "Neturite leidimo keisti vartotojo \"{name}\" vardą", - "error.user.changePassword.permission": - "Neturite leidimo keisti vartotojo \"{name}\" slaptažodį", - "error.user.changeRole.lastAdmin": - "Vienintelio administratoriaus rolės negalima pakeisti", - "error.user.changeRole.permission": - "Neturite leidimo pakeisti vartotojo \"{name}\" rolės", - "error.user.changeRole.toAdmin": - "Jūs neturite teisių suteikti administratoriaus rolę", + "error.user.changeEmail.permission": "Neturite leidimo keisti vartotojo \"{name}\" el. paštą", + "error.user.changeLanguage.permission": "Neturite leidimo keisti vartotojo \"{name}\" kalbą", + "error.user.changeName.permission": "Neturite leidimo keisti vartotojo \"{name}\" vardą", + "error.user.changePassword.permission": "Neturite leidimo keisti vartotojo \"{name}\" slaptažodį", + "error.user.changeRole.lastAdmin": "Vienintelio administratoriaus rolės negalima pakeisti", + "error.user.changeRole.permission": "Neturite leidimo pakeisti vartotojo \"{name}\" rolės", + "error.user.changeRole.toAdmin": "Jūs neturite teisių suteikti administratoriaus rolę", "error.user.create.permission": "Neturite leidimo sukurti šį vartotoją", "error.user.delete": "Vartotojo \"{name}\" negalima pašalinti", "error.user.delete.lastAdmin": "Vienintelio administratoriaus negalima pašalinti", "error.user.delete.lastUser": "Vienintelio vartotojo negalima pašalinti", - "error.user.delete.permission": - "Neturite leidimo pašalinti vartotoją \"{name}\"", - "error.user.duplicate": - "Vartotojas su el. paštu \"{email}\" jau yra", + "error.user.delete.permission": "Neturite leidimo pašalinti vartotoją \"{name}\"", + "error.user.duplicate": "Vartotojas su el. paštu \"{email}\" jau yra", "error.user.email.invalid": "Įrašykite teisingą el. pašto adresą", "error.user.language.invalid": "Įrašykite teisingą kalbą", "error.user.notFound": "Vartotojas \"{name}\" nerastas", - "error.user.password.invalid": - "Prašome įrašyti galiojantį slaptažodį. Slaptažodį turi sudaryti bent 8 simboliai.", + "error.user.password.invalid": "Prašome įrašyti galiojantį slaptažodį. Slaptažodį turi sudaryti bent 8 simboliai.", "error.user.password.notSame": "Slaptažodžiai nesutampa", "error.user.password.undefined": "Vartotojas neturi slaptažodžio", "error.user.role.invalid": "Įrašykite teisingą rolę", - "error.user.update.permission": - "Neturite teisės keisti vartotojo \"{name}\"", + "error.user.update.permission": "Neturite teisės keisti vartotojo \"{name}\"", "error.validation.accepted": "Prašome patvirtinti", "error.validation.alpha": "Prašome įrašyti tik raides a-z", - "error.validation.alphanum": - "Prašome įrašyti tik raides a-z arba skaičius 0-9", - "error.validation.between": - "Prašome įrašyti reikšmę tarp \"{min}\" ir \"{max}\"", + "error.validation.alphanum": "Prašome įrašyti tik raides a-z arba skaičius 0-9", + "error.validation.between": "Prašome įrašyti reikšmę tarp \"{min}\" ir \"{max}\"", "error.validation.boolean": "Patvirtinkite arba atšaukite", - "error.validation.contains": - "Prašome įrašyti reikšmę, kuri turėtų \"{needle}\"", + "error.validation.contains": "Prašome įrašyti reikšmę, kuri turėtų \"{needle}\"", "error.validation.date": "Prašome įrašyti korektišką datą", "error.validation.date.after": "Įrašykite datą nuo {date}", "error.validation.date.before": "Įrašykite datą iki {date}", @@ -210,18 +169,14 @@ "error.validation.less": "Prašome įrašyti mažiau nei {max}", "error.validation.match": "Reikšmė nesutampa su laukiamu šablonu", "error.validation.max": "Prašome įrašyti reikšmę lygią arba didesnę, nei {max}", - "error.validation.maxlength": - "Prašome įrašyti trumpesnę reikšmę. (max. {max} characters)", + "error.validation.maxlength": "Prašome įrašyti trumpesnę reikšmę. (max. {max} characters)", "error.validation.maxwords": "Please enter no more than {max} word(s)", "error.validation.min": "Please enter a value equal to or greater than {min}", - "error.validation.minlength": - "Prašome įrašyti ilgesnę reikšmę. (min. {min} characters)", + "error.validation.minlength": "Prašome įrašyti ilgesnę reikšmę. (min. {min} characters)", "error.validation.minwords": "Prašome įrašyti bent {min} žodžius", "error.validation.more": "Prašome įrašyti daugiau nei {min}", - "error.validation.notcontains": - "Prašome įrašyti reikšmę, kuri neturi \"{needle}\"", - "error.validation.notin": - "Prašome neįrašyti vieną iš šių: ({notIn})", + "error.validation.notcontains": "Prašome įrašyti reikšmę, kuri neturi \"{needle}\"", + "error.validation.notin": "Prašome neįrašyti vieną iš šių: ({notIn})", "error.validation.option": "Prašome pasirinkti korektišką opciją", "error.validation.num": "Prašome įrašyti teisingą numerį", "error.validation.required": "Prašome įrašyti ką nors", @@ -238,8 +193,7 @@ "field.structure.empty": "Dar nėra įrašų", "field.users.empty": "Dar nėra vartotojų", - "file.delete.confirm": - "Ar tikrai norite pašalinti
{filename}?", + "file.delete.confirm": "Ar tikrai norite pašalinti
{filename}?", "files": "Failai", "files.empty": "Įkelti", @@ -251,29 +205,22 @@ "installation": "Įdiegimas", "installation.completed": "Valdymo pultas įdiegtas", "installation.disabled": "Pagal nutylėjimą valdymo pulto įdiegimas viešuose serveriuose yra negalimas. Prašome įdiegti lokalioje aplinkoje arba įgalinkite jį su panel.install opcija.", - "installation.issues.accounts": - "Katalogas /site/accounts neegzistuoja arba neturi įrašymo teisių", - "installation.issues.content": - "Katalogas /content neegzistuoja arba neturi įrašymo teisių", + "installation.issues.accounts": "Katalogas /site/accounts neegzistuoja arba neturi įrašymo teisių", + "installation.issues.content": "Katalogas /content neegzistuoja arba neturi įrašymo teisių", "installation.issues.curl": "Plėtinys CURL yra privalomas", "installation.issues.headline": "Nepavyko įdiegti valdymo pulto", - "installation.issues.mbstring": - "Plėtinys MB String yra privalomas", - "installation.issues.media": - "Katalogas /media neegzistuoja arba neturi įrašymo teisių", + "installation.issues.mbstring": "Plėtinys MB String yra privalomas", + "installation.issues.media": "Katalogas /media neegzistuoja arba neturi įrašymo teisių", "installation.issues.php": "Įsitikinkite, kad naudojama PHP 7+", - "installation.issues.server": - "Kirby reikalauja Apache, Nginx arba Caddy", + "installation.issues.server": "Kirby reikalauja Apache, Nginx arba Caddy", "installation.issues.sessions": "Katalogas /site/sessions neegzistuoja arba neturi įrašymo teisių", "language": "Kalba", "language.code": "Kodas", "language.convert": "Padaryti pagrindinį", - "language.convert.confirm": - "

Do you really want to convert {name} to the default language? This cannot be undone.

If {name} has untranslated content, there will no longer be a valid fallback and parts of your site might be empty.

", + "language.convert.confirm": "

Do you really want to convert {name} to the default language? This cannot be undone.

If {name} has untranslated content, there will no longer be a valid fallback and parts of your site might be empty.

", "language.create": "Pridėti naują kalbą", - "language.delete.confirm": - "Ar tikrai norite pašalinti {name} kalbą, kartu su visais vertimais? Grąžinti nebus įmanoma! 🙀", + "language.delete.confirm": "Ar tikrai norite pašalinti {name} kalbą, kartu su visais vertimais? Grąžinti nebus įmanoma! 🙀", "language.deleted": "Kalba pašalinta", "language.direction": "Skaitymo kryptis", "language.direction.ltr": "Iš kairės į dešinę", @@ -292,8 +239,7 @@ "license": "Licenzija", "license.buy": "Pirkti licenziją", "license.register": "Registruoti", - "license.register.help": - "Licenzijos kodą gavote el. paštu po apmokėjimo. Prašome įterpti čia, kad sistema būtų užregistruota.", + "license.register.help": "Licenzijos kodą gavote el. paštu po apmokėjimo. Prašome įterpti čia, kad sistema būtų užregistruota.", "license.register.label": "Prašome įrašyti jūsų licenzijos kodą", "license.register.success": "Ačiū, kad palaikote Kirby", "license.unregistered": "Tai neregistruota Kirby demo versija", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Pasirinkite poziciją", "page.changeStatus.select": "Pasirinkite statusą", "page.changeTemplate": "Pakeisti šabloną", - "page.delete.confirm": - "🙀 Ar tikrai norite pašalinti puslapį {title}?", - "page.delete.confirm.subpages": - "Šis puslapis turi sub-puslapių.
Visi sub-puslapiai taip pat bus pašalinti.", + "page.delete.confirm": "🙀 Ar tikrai norite pašalinti puslapį {title}?", + "page.delete.confirm.subpages": "Šis puslapis turi sub-puslapių.
Visi sub-puslapiai taip pat bus pašalinti.", "page.delete.confirm.title": "Įrašykite puslapio pavadinimą tam, kad patvirtinti", "page.draft.create": "Sukurti juodraštį", "page.duplicate.appendix": "Kopijuoti", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Kopijuoti puslapius", "page.status": "Statusas", "page.status.draft": "Juodraštis", - "page.status.draft.description": - "Puslapis nematomas viešai, bet matomas tik prisijungusiems administratoriams", + "page.status.draft.description": "Šis puslapis yra juodraščio režime ir prieinamas tik redaktoriams arba per slaptą nuorodą", "page.status.listed": "Paskelbtas", "page.status.listed.description": "Matomas viešai visiems", "page.status.unlisted": "Nerodomas", @@ -388,6 +331,7 @@ "replace": "Apkeisti", "retry": "Bandyti dar", "revert": "Grąžinti", + "revert.confirm": "Ar tikrai norite atšaukti visus neišsaugotus pakeitimus?", "role": "Rolė", "role.admin.description": "Admin turi visas teises", @@ -451,8 +395,7 @@ "url.placeholder": "https://example.com", "user": "Vartotojas", - "user.blueprint": - "Galite nustatyti papildomas sekcijas ir formos laukelius šiai vartotojo rolei faile /site/blueprints/users/{role}.yml", + "user.blueprint": "Galite nustatyti papildomas sekcijas ir formos laukelius šiai vartotojo rolei faile /site/blueprints/users/{role}.yml", "user.changeEmail": "Keisti el. paštą", "user.changeLanguage": "Keisti kalbą", "user.changeName": "Pervadinti vartotoją", @@ -463,8 +406,7 @@ "user.changeRole.select": "Pasirinkti naują rolę", "user.create": "Pridėti naują vartotoją", "user.delete": "Pašalinti šį vartotoją", - "user.delete.confirm": - "Ar tikrai norite pašalinti vartotoją
{email}?", + "user.delete.confirm": "Ar tikrai norite pašalinti vartotoją
{email}?", "users": "Vartotojai", diff --git a/kirby/i18n/translations/nb.json b/kirby/i18n/translations/nb.json index ddeab80..1271992 100755 --- a/kirby/i18n/translations/nb.json +++ b/kirby/i18n/translations/nb.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "Profilbildet kunne ikke lastes opp", "error.avatar.delete.fail": "Profil bildet kunne ikke bli slette", - "error.avatar.dimensions.invalid": - "Vennligst hold profilbildets bredde og høyde under 3000 piksler", - "error.avatar.mime.forbidden": - "Ugyldig MIME-type", + "error.avatar.dimensions.invalid": "Vennligst hold profilbildets bredde og høyde under 3000 piksler", + "error.avatar.mime.forbidden": "Ugyldig MIME-type", "error.blueprint.notFound": "Blueprint \"{name}\" kunne ikke lastes inn", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Ugyldig omformer \"{converter}\"", "error.file.changeName.empty": "The name must not be empty", - "error.file.changeName.permission": - "Du er ikke tillatt å endre navnet til \"{filename}\"", + "error.file.changeName.permission": "Du er ikke tillatt å endre navnet til \"{filename}\"", "error.file.duplicate": "En fil med navnet \"{filename}\" eksisterer allerede", - "error.file.extension.forbidden": - "Ugyldig filtype", - "error.file.extension.missing": - "Du kan ikke laste opp filer uten filtype", + "error.file.extension.forbidden": "Ugyldig filtype", + "error.file.extension.missing": "Du kan ikke laste opp filer uten filtype", "error.file.maxheight": "The height of the image must not exceed {height} pixels", "error.file.maxsize": "The file is too large", "error.file.maxwidth": "The width of the image must not exceed {width} pixels", - "error.file.mime.differs": - "Den opplastede filen må være av samme MIME-type \"{mime}\"", + "error.file.mime.differs": "Den opplastede filen må være av samme MIME-type \"{mime}\"", "error.file.mime.forbidden": "Mediatypen \"{mime}\" er ikke tillatt", "error.file.mime.invalid": "Invalid mime type: {mime}", - "error.file.mime.missing": - "Mediatypen for \"{filename}\" kan ikke gjenkjennes", + "error.file.mime.missing": "Mediatypen for \"{filename}\" kan ikke gjenkjennes", "error.file.minheight": "The height of the image must be at least {height} pixels", "error.file.minsize": "The file is too small", "error.file.minwidth": "The width of the image must be at least {width} pixels", @@ -90,111 +83,77 @@ "error.license.email": "Vennligst skriv inn en gyldig e-postadresse", "error.license.verification": "The license could not be verified", - "error.page.changeSlug.permission": - "Du kan ikke endre URLen for denne siden", - "error.page.changeStatus.incomplete": - "Siden har feil og kan ikke publiseres", - "error.page.changeStatus.permission": - "Sidens status kan ikke endres", - "error.page.changeStatus.toDraft.invalid": - "Siden \"{slug}\" kan ikke konverteres til et utkast", - "error.page.changeTemplate.invalid": - "Malen for siden \"{slug}\" kan ikke endres", - "error.page.changeTemplate.permission": - "Du har ikke tillatelse til å endre malen for \"{slug}\"", + "error.page.changeSlug.permission": "Du kan ikke endre URLen for denne siden", + "error.page.changeStatus.incomplete": "Siden har feil og kan ikke publiseres", + "error.page.changeStatus.permission": "Sidens status kan ikke endres", + "error.page.changeStatus.toDraft.invalid": "Siden \"{slug}\" kan ikke konverteres til et utkast", + "error.page.changeTemplate.invalid": "Malen for siden \"{slug}\" kan ikke endres", + "error.page.changeTemplate.permission": "Du har ikke tillatelse til å endre malen for \"{slug}\"", "error.page.changeTitle.empty": "Tittelen kan ikke være tom", - "error.page.changeTitle.permission": - "Du har ikke tillatelse til å endre tittelen for \"{slug}\"", + "error.page.changeTitle.permission": "Du har ikke tillatelse til å endre tittelen for \"{slug}\"", "error.page.create.permission": "Du har ikke tillatelse til å opprette \"{slug}\"", "error.page.delete": "Siden \"{slug}\" kan ikke slettes", "error.page.delete.confirm": "Vennligst skriv inn sidens tittel for å bekrefte", - "error.page.delete.hasChildren": - "Siden har undersider og kan derfor ikke slettes", + "error.page.delete.hasChildren": "Siden har undersider og kan derfor ikke slettes", "error.page.delete.permission": "Du har ikke tilgang til å slette \"{slug}\"", - "error.page.draft.duplicate": - "Et sideutkast med URL-tillegget \"{slug}\" eksisterer allerede", - "error.page.duplicate": - "En side med URL-tillegget \"{slug}\" eksisterer allerede", + "error.page.draft.duplicate": "Et sideutkast med URL-tillegget \"{slug}\" eksisterer allerede", + "error.page.duplicate": "En side med URL-tillegget \"{slug}\" eksisterer allerede", "error.page.duplicate.permission": "You are not allowed to duplicate \"{slug}\"", "error.page.notFound": "Siden \"{slug}\" ble ikke funnet", - "error.page.num.invalid": - "Vennligst skriv inn et gyldig sorteringsnummer. Tallet må ikke være negativt.", + "error.page.num.invalid": "Vennligst skriv inn et gyldig sorteringsnummer. Tallet må ikke være negativt.", "error.page.slug.invalid": "Vennligst skriv inn en gyldig URL-prefiks", "error.page.sort.permission": "Siden \"{slug}\" kan ikke sorteres", "error.page.status.invalid": "Vennligst angi en gyldig sidestatus", "error.page.undefined": "Siden kunne ikke bli funnet", "error.page.update.permission": "Du har ikke tilgang til å oppdatere \"{slug}\"", - "error.section.files.max.plural": - "Det er ikke mulig å legge til mer enn {max} filer i seksjonen \"{section}\"", - "error.section.files.max.singular": - "Det er ikke mulig å legge til mer enn én fil i seksjonen \"{section}\"", - "error.section.files.min.plural": - "The \"{section}\" section requires at least {min} files", - "error.section.files.min.singular": - "The \"{section}\" section requires at least one file", + "error.section.files.max.plural": "Det er ikke mulig å legge til mer enn {max} filer i seksjonen \"{section}\"", + "error.section.files.max.singular": "Det er ikke mulig å legge til mer enn én fil i seksjonen \"{section}\"", + "error.section.files.min.plural": "The \"{section}\" section requires at least {min} files", + "error.section.files.min.singular": "The \"{section}\" section requires at least one file", - "error.section.pages.max.plural": - "Det er ikke mulig å legge til mer enn {max} sider i \"{section}\" seksjonen", - "error.section.pages.max.singular": - "Det er ikke mulig å legge til mer enn én side i \"{section}\" seksjonen", - "error.section.pages.min.plural": - "The \"{section}\" section requires at least {min} pages", - "error.section.pages.min.singular": - "The \"{section}\" section requires at least one page", + "error.section.pages.max.plural": "Det er ikke mulig å legge til mer enn {max} sider i \"{section}\" seksjonen", + "error.section.pages.max.singular": "Det er ikke mulig å legge til mer enn én side i \"{section}\" seksjonen", + "error.section.pages.min.plural": "The \"{section}\" section requires at least {min} pages", + "error.section.pages.min.singular": "The \"{section}\" section requires at least one page", "error.section.notLoaded": "Seksjonen \"{name}\" kunne ikke lastes inn", "error.section.type.invalid": "Seksjonstypen \"{type}\" er ikke gyldig", "error.site.changeTitle.empty": "Tittelen kan ikke være tom", - "error.site.changeTitle.permission": - "Du har ikke tillatelse til å endre tittel på siden", + "error.site.changeTitle.permission": "Du har ikke tillatelse til å endre tittel på siden", "error.site.update.permission": "Du har ikke tillatelse til å oppdatere denne siden", "error.template.default.notFound": "Standardmalen eksisterer ikke", - "error.user.changeEmail.permission": - "Du har ikke tillatelse til å endre e-post for brukeren \"{name}\"", - "error.user.changeLanguage.permission": - "Du har ikke tillatelse til å endre språk for brukeren \"{name}\"", - "error.user.changeName.permission": - "Du har ikke tillatelse til å endre navn for brukeren \"{name}\"", - "error.user.changePassword.permission": - "Du har ikke tillatelse til å endre passord for brukeren \"{name}\"", - "error.user.changeRole.lastAdmin": - "Rollen for den siste administratoren kan ikke endres", - "error.user.changeRole.permission": - "Du har ikke tillatelse til å endre rollen for brukeren \"{name}\"", - "error.user.changeRole.toAdmin": - "You are not allowed to promote someone to the admin role", + "error.user.changeEmail.permission": "Du har ikke tillatelse til å endre e-post for brukeren \"{name}\"", + "error.user.changeLanguage.permission": "Du har ikke tillatelse til å endre språk for brukeren \"{name}\"", + "error.user.changeName.permission": "Du har ikke tillatelse til å endre navn for brukeren \"{name}\"", + "error.user.changePassword.permission": "Du har ikke tillatelse til å endre passord for brukeren \"{name}\"", + "error.user.changeRole.lastAdmin": "Rollen for den siste administratoren kan ikke endres", + "error.user.changeRole.permission": "Du har ikke tillatelse til å endre rollen for brukeren \"{name}\"", + "error.user.changeRole.toAdmin": "You are not allowed to promote someone to the admin role", "error.user.create.permission": "Du har ikke tilgang til å opprette denne brukeren", "error.user.delete": "Denne brukeren kunne ikke bli slettet", "error.user.delete.lastAdmin": "Siste administrator kan ikke slettes", "error.user.delete.lastUser": "Den siste brukeren kan ikke slettes", - "error.user.delete.permission": - "Du er ikke tillat \u00e5 slette denne brukeren", - "error.user.duplicate": - "En bruker med e-postadresse \"{email}\" eksisterer allerede", + "error.user.delete.permission": "Du er ikke tillat \u00e5 slette denne brukeren", + "error.user.duplicate": "En bruker med e-postadresse \"{email}\" eksisterer allerede", "error.user.email.invalid": "Vennligst skriv inn en gyldig e-postadresse", "error.user.language.invalid": "Vennligst skriv inn et gyldig språk", "error.user.notFound": "Brukeren kunne ikke bli funnet", - "error.user.password.invalid": - "Vennligst skriv inn et gyldig passord. Passordet må minst være 8 tegn langt.", + "error.user.password.invalid": "Vennligst skriv inn et gyldig passord. Passordet må minst være 8 tegn langt.", "error.user.password.notSame": "Vennligst bekreft passordet", "error.user.password.undefined": "Brukeren har ikke et passord", "error.user.role.invalid": "Vennligst skriv inn en gyldig rolle", - "error.user.update.permission": - "Du har ikke tillatelse til å oppdatere brukeren \"{name}\"", + "error.user.update.permission": "Du har ikke tillatelse til å oppdatere brukeren \"{name}\"", "error.validation.accepted": "Vennligst bekreft", "error.validation.alpha": "Vennligst skriv kun tegn mellom a-z", - "error.validation.alphanum": - "Vennligst skriv kun tegn mellom a-z eller tall mellom 0-9", - "error.validation.between": - "Vennligst angi en verdi mellom \"{min}\" og \"{max}\"", + "error.validation.alphanum": "Vennligst skriv kun tegn mellom a-z eller tall mellom 0-9", + "error.validation.between": "Vennligst angi en verdi mellom \"{min}\" og \"{max}\"", "error.validation.boolean": "Vennligst bekreft eller avslå", - "error.validation.contains": - "Vennligst skriv inn en verdi som inneholder \"{needle}\"", + "error.validation.contains": "Vennligst skriv inn en verdi som inneholder \"{needle}\"", "error.validation.date": "Vennligst skriv inn en gyldig dato", "error.validation.date.after": "Please enter a date after {date}", "error.validation.date.before": "Please enter a date before {date}", @@ -210,18 +169,14 @@ "error.validation.less": "Vennligst angi en verdi lavere enn {max}", "error.validation.match": "Verdien samsvarer ikke med det forventede mønsteret", "error.validation.max": "Vennligst angi en verdi lik eller lavere enn {max}", - "error.validation.maxlength": - "Vennligst angi en kortere verdi. (maks. {max} tegn)", + "error.validation.maxlength": "Vennligst angi en kortere verdi. (maks. {max} tegn)", "error.validation.maxwords": "Vennligst ikke skriv inn mer enn {max} ord", "error.validation.min": "Vennligst angi en verdi lik eller større enn {min}", - "error.validation.minlength": - "Vennligst angi en lengre verdi. (minimum. {min} tegn)", + "error.validation.minlength": "Vennligst angi en lengre verdi. (minimum. {min} tegn)", "error.validation.minwords": "Vennligst skriv inn minst {min} ord", "error.validation.more": "Vennligst angi en verdi større enn {min}", - "error.validation.notcontains": - "Vennligst angi en verdi som ikke inneholder \"{needle}\"", - "error.validation.notin": - "Vennligst ikke angi noen av følgende:({notIn})", + "error.validation.notcontains": "Vennligst angi en verdi som ikke inneholder \"{needle}\"", + "error.validation.notin": "Vennligst ikke angi noen av følgende:({notIn})", "error.validation.option": "Vennligst velg et gyldig alternativ", "error.validation.num": "Vennligst angi et gyldig nummer", "error.validation.required": "Vennligst skriv inn noe", @@ -238,8 +193,7 @@ "field.structure.empty": "Ingen oppf\u00f8ringer enda", "field.users.empty": "Ingen bruker har blitt valgt", - "file.delete.confirm": - "Vil du virkelig slette denne filen?", + "file.delete.confirm": "Vil du virkelig slette denne filen?", "files": "Filer", "files.empty": "Ingen filer ennå", @@ -251,29 +205,22 @@ "installation": "Installasjon", "installation.completed": "Panelet har blitt installert", "installation.disabled": "Installasjonsprogrammet for Panelet er deaktivert på offentlige servere som standard. Vennligst kjør installasjonsprogrammet på en lokal maskin eller aktiver den med panel.install innstillingen.", - "installation.issues.accounts": - "\/site\/accounts er ikke skrivbar", - "installation.issues.content": - "Mappen content og alt av innhold m\u00e5 v\u00e6re skrivbar.", + "installation.issues.accounts": "\/site\/accounts er ikke skrivbar", + "installation.issues.content": "Mappen content og alt av innhold m\u00e5 v\u00e6re skrivbar.", "installation.issues.curl": "Utvidelsen CURL er nødvendig", "installation.issues.headline": "Panelet kan ikke installeres", - "installation.issues.mbstring": - "Utvidelsen MB String er nødvendig", - "installation.issues.media": - "Mappen /media eksisterer ikke eller er ikke skrivbar", + "installation.issues.mbstring": "Utvidelsen MB String er nødvendig", + "installation.issues.media": "Mappen /media eksisterer ikke eller er ikke skrivbar", "installation.issues.php": "Pass på at du bruker PHP 7+", - "installation.issues.server": - "Kirby krever Apache, Nginx eller Caddy", + "installation.issues.server": "Kirby krever Apache, Nginx eller Caddy", "installation.issues.sessions": "Mappen /site/sessions eksisterer ikke eller er ikke skrivbar", "language": "Spr\u00e5k", "language.code": "Kode", "language.convert": "Gjør til standard", - "language.convert.confirm": - "

Vil du virkelig konvertere {name} til standardspråk? Dette kan ikke angres.

Dersom {name} har innhold som ikke er oversatt, vil nettstedet mangle innhold å falle tilbake på. Dette kan resultere i at deler av nettstedet fremstår som tomt.

", + "language.convert.confirm": "

Vil du virkelig konvertere {name} til standardspråk? Dette kan ikke angres.

Dersom {name} har innhold som ikke er oversatt, vil nettstedet mangle innhold å falle tilbake på. Dette kan resultere i at deler av nettstedet fremstår som tomt.

", "language.create": "Legg til språk", - "language.delete.confirm": - "Vil du virkelig slette språket {name} inkludert alle oversettelser? Dette kan ikke angres!", + "language.delete.confirm": "Vil du virkelig slette språket {name} inkludert alle oversettelser? Dette kan ikke angres!", "language.deleted": "Språket har blitt slettet", "language.direction": "Leseretning", "language.direction.ltr": "Venstre til høyre", @@ -292,8 +239,7 @@ "license": "Kirby lisens", "license.buy": "Kjøp lisens", "license.register": "Registrer", - "license.register.help": - "Du skal ha mottatt din lisenskode for kjøpet via e-post. Vennligst kopier og lim inn denne for å registrere deg.", + "license.register.help": "Du skal ha mottatt din lisenskode for kjøpet via e-post. Vennligst kopier og lim inn denne for å registrere deg.", "license.register.label": "Vennligst skriv inn din lisenskode", "license.register.success": "Takk for at du støtter Kirby", "license.unregistered": "Dette er en uregistrert demo av Kirby", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Vennligst velg en posisjon", "page.changeStatus.select": "Velg ny status", "page.changeTemplate": "Endre mal", - "page.delete.confirm": - "Vil du virkelig slette denne siden?", - "page.delete.confirm.subpages": - "Denne siden har undersider.
Alle undersider vil også bli slettet.", + "page.delete.confirm": "Vil du virkelig slette denne siden?", + "page.delete.confirm.subpages": "Denne siden har undersider.
Alle undersider vil også bli slettet.", "page.delete.confirm.title": "Skriv inn sidetittel for å bekrefte", "page.draft.create": "Lag utkast", "page.duplicate.appendix": "Kopier", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Copy pages", "page.status": "Status", "page.status.draft": "Utkast", - "page.status.draft.description": - "Siden er i utkastmodus og bare synlig for innloggede redaktører", + "page.status.draft.description": "The page is in draft mode and only visible for logged in editors or via secret link", "page.status.listed": "Offentlig", "page.status.listed.description": "Siden er offentlig og synlig for alle", "page.status.unlisted": "Unotert", @@ -388,6 +331,7 @@ "replace": "Erstatt", "retry": "Pr\u00f8v p\u00e5 nytt", "revert": "Forkast", + "revert.confirm": "Do you really want to delete all unsaved changes?", "role": "Rolle", "role.admin.description": "The admin has all rights", @@ -451,8 +395,7 @@ "url.placeholder": "https://example.com", "user": "Bruker", - "user.blueprint": - "Du kan definere flere seksjoner og skjemafelter for denne brukerrollen i /site/blueprints/users/{role}.yml", + "user.blueprint": "Du kan definere flere seksjoner og skjemafelter for denne brukerrollen i /site/blueprints/users/{role}.yml", "user.changeEmail": "Endre e-post", "user.changeLanguage": "Endre språk", "user.changeName": "Angi nytt navn for denne brukeren", @@ -463,8 +406,7 @@ "user.changeRole.select": "Velg en ny rolle", "user.create": "Legg til ny bruker", "user.delete": "Slett denne brukeren", - "user.delete.confirm": - "Vil du virkelig slette denne konten?", + "user.delete.confirm": "Vil du virkelig slette denne konten?", "users": "Brukere", diff --git a/kirby/i18n/translations/nl.json b/kirby/i18n/translations/nl.json index 2b9c1f5..65fa6b2 100755 --- a/kirby/i18n/translations/nl.json +++ b/kirby/i18n/translations/nl.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "De avatar kon niet worden geupload", "error.avatar.delete.fail": "De avatar kan niet worden verwijderd", - "error.avatar.dimensions.invalid": - "Houd de breedte en hoogte van de avatar onder 3000 pixels", - "error.avatar.mime.forbidden": - "De avatar moet een JPEG of PNG bestand zijn", + "error.avatar.dimensions.invalid": "Houd de breedte en hoogte van de avatar onder 3000 pixels", + "error.avatar.mime.forbidden": "De avatar moet een JPEG of PNG bestand zijn", "error.blueprint.notFound": "De blueprint \"{name}\" kon niet geladen worden", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Ongeldige converter \"{converter}\"", "error.file.changeName.empty": "De naam mag niet leeg zijn", - "error.file.changeName.permission": - "Je hebt geen rechten om de naam te wijzigen van \"{filename}\"", + "error.file.changeName.permission": "Je hebt geen rechten om de naam te wijzigen van \"{filename}\"", "error.file.duplicate": "Er bestaat al een bestand met de naam \"{filename}\"", - "error.file.extension.forbidden": - "Bestandsextensie \"{extension}\" is niet toegestaan", - "error.file.extension.missing": - "Je kunt geen bestanden uploaden zonder bestandsextensie", + "error.file.extension.forbidden": "Bestandsextensie \"{extension}\" is niet toegestaan", + "error.file.extension.missing": "Je kunt geen bestanden uploaden zonder bestandsextensie", "error.file.maxheight": "The height of the image must not exceed {height} pixels", "error.file.maxsize": "The file is too large", "error.file.maxwidth": "The width of the image must not exceed {width} pixels", - "error.file.mime.differs": - "Het geüploade bestand moet van hetzelfde mime-type zijn: \"{mime}\"", + "error.file.mime.differs": "Het geüploade bestand moet van hetzelfde mime-type zijn: \"{mime}\"", "error.file.mime.forbidden": "Het type \"{mime}\" is niet toegestaan", "error.file.mime.invalid": "Invalid mime type: {mime}", - "error.file.mime.missing": - "Het mediatype voor \"{filename}\" kan niet worden gedecteerd", + "error.file.mime.missing": "Het mediatype voor \"{filename}\" kan niet worden gedecteerd", "error.file.minheight": "The height of the image must be at least {height} pixels", "error.file.minsize": "The file is too small", "error.file.minwidth": "The width of the image must be at least {width} pixels", @@ -90,111 +83,77 @@ "error.license.email": "Gelieve een geldig emailadres in te voeren", "error.license.verification": "De licentie kon niet worden geverifieerd. ", - "error.page.changeSlug.permission": - "Je kunt de URL van deze pagina niet wijzigen", - "error.page.changeStatus.incomplete": - "Deze pagina bevat fouten en kan niet worden gepubliceerd", - "error.page.changeStatus.permission": - "De status van deze pagina kan niet worden gewijzigd", - "error.page.changeStatus.toDraft.invalid": - "De pagina \"{slug}\" kan niet worden aangepast naar 'concept'", - "error.page.changeTemplate.invalid": - "De template van deze pagina \"{slug}\" kan niet worden gewijzigd", - "error.page.changeTemplate.permission": - "Je hebt geen rechten om het template te wijzigen van \"{slug}\"", + "error.page.changeSlug.permission": "Je kunt de URL van deze pagina niet wijzigen", + "error.page.changeStatus.incomplete": "Deze pagina bevat fouten en kan niet worden gepubliceerd", + "error.page.changeStatus.permission": "De status van deze pagina kan niet worden gewijzigd", + "error.page.changeStatus.toDraft.invalid": "De pagina \"{slug}\" kan niet worden aangepast naar 'concept'", + "error.page.changeTemplate.invalid": "De template van deze pagina \"{slug}\" kan niet worden gewijzigd", + "error.page.changeTemplate.permission": "Je hebt geen rechten om het template te wijzigen van \"{slug}\"", "error.page.changeTitle.empty": "De titel mag niet leeg zijn", - "error.page.changeTitle.permission": - "Je hebt geen rechten om de titel te wijzigen van \"{slug}\"", + "error.page.changeTitle.permission": "Je hebt geen rechten om de titel te wijzigen van \"{slug}\"", "error.page.create.permission": "Je hebt geen rechten om \"{slug}\" aan te maken", "error.page.delete": "De pagina \"{slug}\" kan niet worden verwijderd", "error.page.delete.confirm": "Voer de paginatitel in om te bevestigen", - "error.page.delete.hasChildren": - "Deze pagina heeft subpagina's en kan niet worden verwijderd", + "error.page.delete.hasChildren": "Deze pagina heeft subpagina's en kan niet worden verwijderd", "error.page.delete.permission": "Je hebt geen rechten om \"{slug}\" te verwijderen", - "error.page.draft.duplicate": - "Er bestaat al een conceptpagina met de URL-appendix \"{slug}\"", - "error.page.duplicate": - "Er bestaat al een pagina met de URL-appendix \"{slug}\"", + "error.page.draft.duplicate": "Er bestaat al een conceptpagina met de URL-appendix \"{slug}\"", + "error.page.duplicate": "Er bestaat al een pagina met de URL-appendix \"{slug}\"", "error.page.duplicate.permission": "Je bent niet gemachtigd om \"{slug}\" te dupliceren", "error.page.notFound": "De pagina \"{slug}\" kan niet worden gevonden", - "error.page.num.invalid": - "Vul een geldig sorteer-cijfer in. Het cijfer mag niet negatief zijn", + "error.page.num.invalid": "Vul een geldig sorteer-cijfer in. Het cijfer mag niet negatief zijn", "error.page.slug.invalid": "Vul een geldige URL-prefix in", "error.page.sort.permission": "De pagina \"{slug}\" kan niet worden gesorteerd", "error.page.status.invalid": "Zorg voor een geldige paginastatus", "error.page.undefined": "De pagina kan niet worden gevonden", "error.page.update.permission": "Je hebt geen rechten om \"{slug}\" te updaten", - "error.section.files.max.plural": - "Voeg niet meer dan {max} bestanden toe aan de zone \"{section}\"", - "error.section.files.max.singular": - "Je kunt niet meer dan 1 bestand toevoegen aan de zone \"{section}\"", - "error.section.files.min.plural": - "De \"{section}\" sectie moet minimaal {min} bestanden bevatten.", - "error.section.files.min.singular": - "De \"{section}\" sectie moet minimaal 1 bestand bevatten.", + "error.section.files.max.plural": "Voeg niet meer dan {max} bestanden toe aan de zone \"{section}\"", + "error.section.files.max.singular": "Je kunt niet meer dan 1 bestand toevoegen aan de zone \"{section}\"", + "error.section.files.min.plural": "De \"{section}\" sectie moet minimaal {min} bestanden bevatten.", + "error.section.files.min.singular": "De \"{section}\" sectie moet minimaal 1 bestand bevatten.", - "error.section.pages.max.plural": - "Je kunt niet meer dan {max} pagina's toevoegen aan de zone \"{section}\"", - "error.section.pages.max.singular": - "Je kunt niet meer dan 1 pagina toevoegen aan de zone \"{section}\"", - "error.section.pages.min.plural": - "De \"{section}\" sectie moet minimaal {min} pagina's bevatten.", - "error.section.pages.min.singular": - "De \"{section}\" sectie moet minimaal 1 pagina bevatten.", + "error.section.pages.max.plural": "Je kunt niet meer dan {max} pagina's toevoegen aan de zone \"{section}\"", + "error.section.pages.max.singular": "Je kunt niet meer dan 1 pagina toevoegen aan de zone \"{section}\"", + "error.section.pages.min.plural": "De \"{section}\" sectie moet minimaal {min} pagina's bevatten.", + "error.section.pages.min.singular": "De \"{section}\" sectie moet minimaal 1 pagina bevatten.", "error.section.notLoaded": "De zone \"{name}\" kan niet worden geladen", "error.section.type.invalid": "Zone-type \"{type}\" is niet geldig", "error.site.changeTitle.empty": "De titel mag niet leeg zijn", - "error.site.changeTitle.permission": - "Je hebt geen rechten om de titel van de site te wijzigen", + "error.site.changeTitle.permission": "Je hebt geen rechten om de titel van de site te wijzigen", "error.site.update.permission": "Je hebt geen rechten om de site te updaten", "error.template.default.notFound": "Het standaard template bestaat niet", - "error.user.changeEmail.permission": - "Je hebt geen rechten om het e-mailadres van gebruiker \"{name}\" te wijzigen", - "error.user.changeLanguage.permission": - "Je hebt geen rechten om de taal voor gebruiker \"{name}\" te wijzigen", - "error.user.changeName.permission": - "Je hebt geen rechten om de naam van gebruiker \"{name}\" te wijzigen", - "error.user.changePassword.permission": - "Je hebt geen rechten om het wachtwoord van gebruiker \"{name}\" te wijzigen", - "error.user.changeRole.lastAdmin": - "De rol van de laatste beheerder kan niet worden gewijzigd", - "error.user.changeRole.permission": - "Je hebt geen rechten om de rol van gebruiker \"{name}\" te wijzigen", - "error.user.changeRole.toAdmin": - "Je hebt geen rechten om de rol van iemand te wijzigen naar admin", + "error.user.changeEmail.permission": "Je hebt geen rechten om het e-mailadres van gebruiker \"{name}\" te wijzigen", + "error.user.changeLanguage.permission": "Je hebt geen rechten om de taal voor gebruiker \"{name}\" te wijzigen", + "error.user.changeName.permission": "Je hebt geen rechten om de naam van gebruiker \"{name}\" te wijzigen", + "error.user.changePassword.permission": "Je hebt geen rechten om het wachtwoord van gebruiker \"{name}\" te wijzigen", + "error.user.changeRole.lastAdmin": "De rol van de laatste beheerder kan niet worden gewijzigd", + "error.user.changeRole.permission": "Je hebt geen rechten om de rol van gebruiker \"{name}\" te wijzigen", + "error.user.changeRole.toAdmin": "Je hebt geen rechten om de rol van iemand te wijzigen naar admin", "error.user.create.permission": "Je hebt geen rechten om deze gebruiker aan te maken", "error.user.delete": "De gebruiker \"{name}\" kan niet worden verwijderd", "error.user.delete.lastAdmin": "Je kan de laatste admin niet verwijderen", "error.user.delete.lastUser": "De laatste gebruiker kan niet worden verwijderd", - "error.user.delete.permission": - "Je hebt geen rechten om gebruiker \"{name}\" te verwijderen", - "error.user.duplicate": - "Er bestaat al een gebruiker met e-mailadres \"{email}\"", + "error.user.delete.permission": "Je hebt geen rechten om gebruiker \"{name}\" te verwijderen", + "error.user.duplicate": "Er bestaat al een gebruiker met e-mailadres \"{email}\"", "error.user.email.invalid": "Gelieve een geldig emailadres in te voeren", "error.user.language.invalid": "Gelieve een geldige taal in te voeren", "error.user.notFound": "De gebruiker \"{name}\" kan niet worden gevonden", - "error.user.password.invalid": - "Gelieve een geldig wachtwoord in te voeren. Wachtwoorden moeten minstens 8 karakters lang zijn.", + "error.user.password.invalid": "Gelieve een geldig wachtwoord in te voeren. Wachtwoorden moeten minstens 8 karakters lang zijn.", "error.user.password.notSame": "De wachtwoorden komen niet overeen", "error.user.password.undefined": "De gebruiker heeft geen wachtwoord", "error.user.role.invalid": "Gelieve een geldige rol in te voeren", - "error.user.update.permission": - "Je hebt geen rechten om gebruiker \"{name}\" te updaten", + "error.user.update.permission": "Je hebt geen rechten om gebruiker \"{name}\" te updaten", "error.validation.accepted": "Gelieve te bevestigen", "error.validation.alpha": "Vul alleen a-z karakters in", - "error.validation.alphanum": - "Vul alleen a-z karakters of cijfers (0-9) in", - "error.validation.between": - "Vul een waarde tussen \"{min}\" en \"{max}\"", + "error.validation.alphanum": "Vul alleen a-z karakters of cijfers (0-9) in", + "error.validation.between": "Vul een waarde tussen \"{min}\" en \"{max}\"", "error.validation.boolean": "Ga akkoord of weiger", - "error.validation.contains": - "Vul een waarde in die \"{needle}\" bevat", + "error.validation.contains": "Vul een waarde in die \"{needle}\" bevat", "error.validation.date": "Vul een geldige datum in", "error.validation.date.after": "Vul een datum in na {date}", "error.validation.date.before": "Vul een datum in voor {date}", @@ -210,18 +169,14 @@ "error.validation.less": "Vul een waarde in lager dan {max}", "error.validation.match": "De invoer klopt niet met het verwachte patroon", "error.validation.max": "Vul een waarde in die gelijk is aan of lager dan {max}", - "error.validation.maxlength": - "Gebruik minder karakters (maximaal {max} karakters)", + "error.validation.maxlength": "Gebruik minder karakters (maximaal {max} karakters)", "error.validation.maxwords": "Vul minder dan {max} woorden in", "error.validation.min": "Vul een waarde in die gelijk is aan of groter dan {min}", - "error.validation.minlength": - "Gebruik meer karakters (minimaal {min} karakters)", + "error.validation.minlength": "Gebruik meer karakters (minimaal {min} karakters)", "error.validation.minwords": "Vul minimaal {min} woorden in", "error.validation.more": "Vul een grotere waarde in dan {min}", - "error.validation.notcontains": - "Zorg dat de invoer niet \"{needle}\" bevat", - "error.validation.notin": - "Vul de volgende dingen niet in: {{notIn}}", + "error.validation.notcontains": "Zorg dat de invoer niet \"{needle}\" bevat", + "error.validation.notin": "Vul de volgende dingen niet in: {{notIn}}", "error.validation.option": "Selecteer een geldige optie", "error.validation.num": "Vul een geldig cijfer in", "error.validation.required": "Vul iets in", @@ -238,8 +193,7 @@ "field.structure.empty": "Nog geen items.", "field.users.empty": "Nog geen gebruikers geselecteerd", - "file.delete.confirm": - "Wil je dit bestand
{filename} verwijderen?", + "file.delete.confirm": "Wil je dit bestand
{filename} verwijderen?", "files": "Bestanden", "files.empty": "Nog geen bestanden", @@ -251,29 +205,22 @@ "installation": "Installatie", "installation.completed": "Het Panel is geïnstalleerd", "installation.disabled": "Je kan geen Panel installatie uitvoeren op een openbare server. Voer het installatieprogramma uit op een lokale computer of schakel het in met de panel.install optie.", - "installation.issues.accounts": - "De map /site/accounts heeft geen schrijfrechten", - "installation.issues.content": - "De map /content bestaat niet of heeft geen schrijfrechten", + "installation.issues.accounts": "De map /site/accounts heeft geen schrijfrechten", + "installation.issues.content": "De map /content bestaat niet of heeft geen schrijfrechten", "installation.issues.curl": "De CURL-extensie is vereist", "installation.issues.headline": "Het Panel kan niet worden geïnstalleerd", - "installation.issues.mbstring": - "De MB String extensie is verplicht", - "installation.issues.media": - "De map /mediabestaat niet of heeft geen schrijfrechten", + "installation.issues.mbstring": "De MB String extensie is verplicht", + "installation.issues.media": "De map /mediabestaat niet of heeft geen schrijfrechten", "installation.issues.php": "Gebruik PHP7+", - "installation.issues.server": - "Kirby vereist Apache, Nginxof Caddy", + "installation.issues.server": "Kirby vereist Apache, Nginxof Caddy", "installation.issues.sessions": "De map /site/sessions bestaat niet of heeft geen schrijfrechten", "language": "Taal", "language.code": "Code", "language.convert": "Maak standaard", - "language.convert.confirm": - "

Weet je zeker dat je {name}wilt aanpassen naar de standaard taal? Dit kan niet ongedaan worden gemaakt

Als {name} nog niet vertaalde content heeft, is er geen content meer om op terug te vallen en zouden delen van je site leeg kunnen zijn.

", + "language.convert.confirm": "

Weet je zeker dat je {name}wilt aanpassen naar de standaard taal? Dit kan niet ongedaan worden gemaakt

Als {name} nog niet vertaalde content heeft, is er geen content meer om op terug te vallen en zouden delen van je site leeg kunnen zijn.

", "language.create": "Nieuwe taal toevoegen", - "language.delete.confirm": - "Weet je zeker dat je de taal {name} inclusief alle vertalingen wilt verwijderen? Je kunt dit niet ongedaan maken!", + "language.delete.confirm": "Weet je zeker dat je de taal {name} inclusief alle vertalingen wilt verwijderen? Je kunt dit niet ongedaan maken!", "language.deleted": "De taal is verwijderd", "language.direction": "Leesrichting", "language.direction.ltr": "Links naar rechts", @@ -292,8 +239,7 @@ "license": "Licentie", "license.buy": "Koop een licentie", "license.register": "Registreren", - "license.register.help": - "Je hebt de licentie via e-mail gekregen nadat je de aankoop hebt gedaan. Kopieer en plak de licentie om te registreren. ", + "license.register.help": "Je hebt de licentie via e-mail gekregen nadat je de aankoop hebt gedaan. Kopieer en plak de licentie om te registreren. ", "license.register.label": "Vul je licentie in", "license.register.success": "Bedankt dat je Kirby ondersteunt", "license.unregistered": "Dit is een niet geregistreerde demo van Kirby", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Selecteer een positie", "page.changeStatus.select": "Selecteer een nieuwe status", "page.changeTemplate": "Verander template", - "page.delete.confirm": - "Weet je zeker dat je pagina {title} wilt verwijderen?", - "page.delete.confirm.subpages": - "Deze pagina heeft subpagina's.
Alle subpagina's worden ook verwijderd.", + "page.delete.confirm": "Weet je zeker dat je pagina {title} wilt verwijderen?", + "page.delete.confirm.subpages": "Deze pagina heeft subpagina's.
Alle subpagina's worden ook verwijderd.", "page.delete.confirm.title": "Voeg een paginatitel in om te bevestigen", "page.draft.create": "Maak concept", "page.duplicate.appendix": "Kopiëren", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Kopieer pagina's", "page.status": "Status", "page.status.draft": "Concept", - "page.status.draft.description": - "De pagina is in concept-modus en alleen zichtbaar voor ingelogde redacteuren", + "page.status.draft.description": "The page is in draft mode and only visible for logged in editors or via secret link", "page.status.listed": "Openbaar", "page.status.listed.description": "Deze pagina is toegankelijk voor iedereen", "page.status.unlisted": "Niet gepubliceerd", @@ -388,6 +331,7 @@ "replace": "Vervang", "retry": "Probeer opnieuw", "revert": "Annuleren", + "revert.confirm": "Do you really want to delete all unsaved changes?", "role": "Rol", "role.admin.description": "De admin heeft alle rechten", @@ -451,8 +395,7 @@ "url.placeholder": "https://voorbeeld.nl", "user": "Gebruiker", - "user.blueprint": - "Je kunt extra zones en formuliervelden voor deze rol toevoegen in /site/blueprints/users/{role}.yml", + "user.blueprint": "Je kunt extra zones en formuliervelden voor deze rol toevoegen in /site/blueprints/users/{role}.yml", "user.changeEmail": "Email veranderen", "user.changeLanguage": "Taal veranderen", "user.changeName": "Gebruiker hernoemen", @@ -463,8 +406,7 @@ "user.changeRole.select": "Kies een nieuwe rol", "user.create": "Voeg een nieuwe gebruiker toe", "user.delete": "Verwijder deze gebruiker", - "user.delete.confirm": - "Weet je zeker dat je
{email}wil verwijderen?", + "user.delete.confirm": "Weet je zeker dat je
{email}wil verwijderen?", "users": "Gebruikers", diff --git a/kirby/i18n/translations/pl.json b/kirby/i18n/translations/pl.json index 66c2c06..0dba79e 100755 --- a/kirby/i18n/translations/pl.json +++ b/kirby/i18n/translations/pl.json @@ -23,29 +23,27 @@ "delete": "Usu\u0144", "dimensions": "Wymiary", - "disabled": "Disabled", + "disabled": "Wyłączone", "discard": "Odrzu\u0107", "download": "Pobierz", "duplicate": "Zduplikuj", "edit": "Edytuj", - "dialog.files.empty": "No files to select", - "dialog.pages.empty": "No pages to select", - "dialog.users.empty": "No users to select", + "dialog.files.empty": "Brak plików do wyboru", + "dialog.pages.empty": "Brak stron do wyboru", + "dialog.users.empty": "Brak użytkowników do wyboru", "email": "Email", "email.placeholder": "mail@example.com", "error.access.login": "Nieprawidłowy login", "error.access.panel": "Nie masz uprawnień by dostać się do panelu", - "error.access.view": "You are not allowed to access this part of the panel", + "error.access.view": "Nie masz uprawnień, by dostać się do tej części panelu", "error.avatar.create.fail": "Nie udało się załadować zdjęcia profilowego", "error.avatar.delete.fail": "Nie udało się usunąć zdjęcia profilowego", - "error.avatar.dimensions.invalid": - "Proszę zachować szerokość i wysokość zdjęcia profilowego poniżej 3000 pikseli", - "error.avatar.mime.forbidden": - "Zdjęcie profilowe musi być plikiem JPEG lub PNG", + "error.avatar.dimensions.invalid": "Proszę zachować szerokość i wysokość zdjęcia profilowego poniżej 3000 pikseli", + "error.avatar.mime.forbidden": "Zdjęcie profilowe musi być plikiem JPEG lub PNG", "error.blueprint.notFound": "Nie udało się załadować wzorca \"{name}\"", @@ -53,152 +51,113 @@ "error.field.converter.invalid": "Nieprawidłowy konwerter \"{converter}\"", - "error.file.changeName.empty": "The name must not be empty", - "error.file.changeName.permission": - "Nie masz uprawnień, by zmienić nazwę \"{filename}\"", + "error.file.changeName.empty": "Imię nie może być puste", + "error.file.changeName.permission": "Nie masz uprawnień, by zmienić nazwę \"{filename}\"", "error.file.duplicate": "Istnieje już plik o nazwie \"{filename}\"", - "error.file.extension.forbidden": - "Rozszerzenie \"{extension}\" jest niedozwolone", - "error.file.extension.missing": - "Brak rozszerzenia pliku \"{filename}\"", - "error.file.maxheight": "The height of the image must not exceed {height} pixels", - "error.file.maxsize": "The file is too large", - "error.file.maxwidth": "The width of the image must not exceed {width} pixels", - "error.file.mime.differs": - "Przesłany plik musi być tego samego typu mime \"{mime}\"", + "error.file.extension.forbidden": "Rozszerzenie \"{extension}\" jest niedozwolone", + "error.file.extension.missing": "Brak rozszerzenia pliku \"{filename}\"", + "error.file.maxheight": "Wysokość obrazka nie może być większa niż {height} pikseli", + "error.file.maxsize": "Plik jest za duży", + "error.file.maxwidth": "Szerokość obrazka nie może być większa niż {width} pikseli", + "error.file.mime.differs": "Przesłany plik musi być tego samego typu mime \"{mime}\"", "error.file.mime.forbidden": "Typ multimediów \"{mime}\" jest niedozwolony", - "error.file.mime.invalid": "Invalid mime type: {mime}", - "error.file.mime.missing": - "Nie można wykryć typu multimediów dla \"{filename}\"", - "error.file.minheight": "The height of the image must be at least {height} pixels", - "error.file.minsize": "The file is too small", - "error.file.minwidth": "The width of the image must be at least {width} pixels", + "error.file.mime.invalid": "Nieprawidłowy typ MIME: {mime}", + "error.file.mime.missing": "Nie można wykryć typu multimediów dla \"{filename}\"", + "error.file.minheight": "Wysokość obrazka musi wynosić co najmniej {height} pikseli", + "error.file.minsize": "Plik jest za mały", + "error.file.minwidth": "Szerokość obrazka musi wynosić co najmniej {width} pikseli", "error.file.name.missing": "Nazwa pliku nie może być pusta", "error.file.notFound": "Nie można znaleźć pliku \"{filename}\"", - "error.file.orientation": "The orientation of the image must be \"{orientation}\"", + "error.file.orientation": "Orientacja obrazka musi być \"{orientation}\"", "error.file.type.forbidden": "Nie możesz przesyłać plików {type}", "error.file.undefined": "Nie można znaleźć pliku", "error.form.incomplete": "Popraw wszystkie błędy w formularzu…", "error.form.notSaved": "Nie udało się zapisać formularza", - "error.language.code": "Please enter a valid code for the language", - "error.language.duplicate": "The language already exists", - "error.language.name": "Please enter a valid name for the language", + "error.language.code": "Wprowadź poprawny kod języka.", + "error.language.duplicate": "Język już istnieje.", + "error.language.name": "Wprowadź poprawną nazwę języka.", "error.license.format": "Wprowadź poprawny klucz licencyjny", "error.license.email": "Wprowadź poprawny adres email", "error.license.verification": "Nie udało się zweryfikować licencji", - "error.page.changeSlug.permission": - "Nie możesz zmienić końcówki adresu URL w \"{slug}\"", - "error.page.changeStatus.incomplete": - "Strona zawiera błędy i nie można jej opublikować", - "error.page.changeStatus.permission": - "Status tej strony nie może zostać zmieniony", - "error.page.changeStatus.toDraft.invalid": - "Strony \"{slug}\" nie można przekonwertować na szkic", - "error.page.changeTemplate.invalid": - "Nie można zmienić szablonu strony \"{slug}\"", - "error.page.changeTemplate.permission": - "Nie masz uprawnień, by zmienić szablon dla \"{slug}\"", + "error.page.changeSlug.permission": "Nie możesz zmienić końcówki adresu URL w \"{slug}\"", + "error.page.changeStatus.incomplete": "Strona zawiera błędy i nie można jej opublikować", + "error.page.changeStatus.permission": "Status tej strony nie może zostać zmieniony", + "error.page.changeStatus.toDraft.invalid": "Strony \"{slug}\" nie można przekonwertować na szkic", + "error.page.changeTemplate.invalid": "Nie można zmienić szablonu strony \"{slug}\"", + "error.page.changeTemplate.permission": "Nie masz uprawnień, by zmienić szablon dla \"{slug}\"", "error.page.changeTitle.empty": "Tytuł nie może być pusty", - "error.page.changeTitle.permission": - "Nie masz uprawnień, by zmienić tytuł dla \"{slug}\"", + "error.page.changeTitle.permission": "Nie masz uprawnień, by zmienić tytuł dla \"{slug}\"", "error.page.create.permission": "Nie masz uprawnień, by utworzyć \"{slug}\"", "error.page.delete": "Strony \"{slug}\" nie można usunąć", "error.page.delete.confirm": "Wprowadź tytuł strony, aby potwierdzić", - "error.page.delete.hasChildren": - "Strona zawiera podstrony i nie można jej usunąć", + "error.page.delete.hasChildren": "Strona zawiera podstrony i nie można jej usunąć", "error.page.delete.permission": "Nie masz uprawnień, by usunąć \"{slug}\"", - "error.page.draft.duplicate": - "Istnieje już szkic z końcówką URL \"{slug}\"", - "error.page.duplicate": - "Istnieje już strona z końcówką URL \"{slug}\"", + "error.page.draft.duplicate": "Istnieje już szkic z końcówką URL \"{slug}\"", + "error.page.duplicate": "Istnieje już strona z końcówką URL \"{slug}\"", "error.page.duplicate.permission": "Nie masz uprawnień, by zduplikować \"{slug}\"", "error.page.notFound": "Nie można znaleźć strony \"{slug}\"", - "error.page.num.invalid": - "Wprowadź poprawny numer sortujący. Liczby nie mogą być ujemne.", + "error.page.num.invalid": "Wprowadź poprawny numer sortujący. Liczby nie mogą być ujemne.", "error.page.slug.invalid": "Wprowadź poprawną końcówkę adresu URL", "error.page.sort.permission": "Nie można sortować strony \"{slug}\"", "error.page.status.invalid": "Ustaw prawidłowy status strony", "error.page.undefined": "Nie udało się znaleźć strony", "error.page.update.permission": "Nie masz uprawnień, by zaktualizować \"{slug}\"", - "error.section.files.max.plural": - "Do sekcji \"{section}\" można dodać nie więcej niż {max} plików", - "error.section.files.max.singular": - "Do sekcji \"{section}\" można dodać tylko jeden plik", - "error.section.files.min.plural": - "The \"{section}\" section requires at least {min} files", - "error.section.files.min.singular": - "The \"{section}\" section requires at least one file", + "error.section.files.max.plural": "Do sekcji \"{section}\" można dodać nie więcej niż {max} plików", + "error.section.files.max.singular": "Do sekcji \"{section}\" można dodać tylko jeden plik", + "error.section.files.min.plural": "W sekcji \"{section}\" musi być co najmniej {min} pliki/-ów", + "error.section.files.min.singular": "W sekcji \"{section}\" musi być co najmniej jeden plik", - "error.section.pages.max.plural": - "Do sekcji \"{section}\" można dodać nie więcej niż {max} stron", - "error.section.pages.max.singular": - "Do sekcji \"{section}\" można dodać tylko jedną stronę", - "error.section.pages.min.plural": - "The \"{section}\" section requires at least {min} pages", - "error.section.pages.min.singular": - "The \"{section}\" section requires at least one page", + "error.section.pages.max.plural": "Do sekcji \"{section}\" można dodać nie więcej niż {max} stron", + "error.section.pages.max.singular": "Do sekcji \"{section}\" można dodać tylko jedną stronę", + "error.section.pages.min.plural": "W sekcji \"{section}\" musi być co najmniej {min} stron/-y", + "error.section.pages.min.singular": "W sekcji \"{section}\" musi być co najmniej jedna strona", "error.section.notLoaded": "Nie udało się załadować sekcji \"{name}\"", "error.section.type.invalid": "Typ sekcji \"{type}\" jest nieprawidłowy", "error.site.changeTitle.empty": "Tytuł nie może być pusty", - "error.site.changeTitle.permission": - "Nie masz uprawnień, by zmienić tytuł strony", + "error.site.changeTitle.permission": "Nie masz uprawnień, by zmienić tytuł strony", "error.site.update.permission": "Nie masz uprawnień, by zaktualizować stronę", "error.template.default.notFound": "Domyślny szablon nie istnieje", - "error.user.changeEmail.permission": - "Nie masz uprawnień, by zmienić adres e-mail użytkownika \"{name}\"", - "error.user.changeLanguage.permission": - "Nie masz uprawnień, by zmienić język użytkownika \"{name}\"", - "error.user.changeName.permission": - "Nie masz uprawnień, by zmienić nazwę użytkownika \"{name}\"", - "error.user.changePassword.permission": - "Nie masz uprawnień, by zmienić hasło użytkownika \"{name}\"", - "error.user.changeRole.lastAdmin": - "Nie można zmienić roli ostatniego administratora", - "error.user.changeRole.permission": - "Nie masz uprawnień, by zmienić rolę użytkownika \"{name}\"", - "error.user.changeRole.toAdmin": - "You are not allowed to promote someone to the admin role", + "error.user.changeEmail.permission": "Nie masz uprawnień, by zmienić adres e-mail użytkownika \"{name}\"", + "error.user.changeLanguage.permission": "Nie masz uprawnień, by zmienić język użytkownika \"{name}\"", + "error.user.changeName.permission": "Nie masz uprawnień, by zmienić nazwę użytkownika \"{name}\"", + "error.user.changePassword.permission": "Nie masz uprawnień, by zmienić hasło użytkownika \"{name}\"", + "error.user.changeRole.lastAdmin": "Nie można zmienić roli ostatniego administratora", + "error.user.changeRole.permission": "Nie masz uprawnień, by zmienić rolę użytkownika \"{name}\"", + "error.user.changeRole.toAdmin": "Nie masz uprawnień, by awansować kogoś do roli daministratora", "error.user.create.permission": "Nie masz uprawnień, by utworzyć tego użytkownika", "error.user.delete": "Nie można usunąć użytkownika \"{name}\"", "error.user.delete.lastAdmin": "Nie można usunąć ostatniego administratora", "error.user.delete.lastUser": "Nie można usunąć ostatniego użytkownika", - "error.user.delete.permission": - "Nie masz uprawnień, by usunąć użytkownika \"{name}\"", - "error.user.duplicate": - "Istnieje już użytkownik z adresem email \"{email}\"", + "error.user.delete.permission": "Nie masz uprawnień, by usunąć użytkownika \"{name}\"", + "error.user.duplicate": "Istnieje już użytkownik z adresem email \"{email}\"", "error.user.email.invalid": "Wprowadź poprawny adres email", "error.user.language.invalid": "Proszę podać poprawny język", "error.user.notFound": "Nie można znaleźć użytkownika \"{name}\"", - "error.user.password.invalid": - "Wprowadź prawidłowe hasło. Hasła muszą mieć co najmniej 8 znaków.", + "error.user.password.invalid": "Wprowadź prawidłowe hasło. Hasła muszą mieć co najmniej 8 znaków.", "error.user.password.notSame": "Hasła nie są takie same", "error.user.password.undefined": "Użytkownik nie ma hasła", "error.user.role.invalid": "Wprowadź poprawną rolę", - "error.user.update.permission": - "Nie masz uprawnień, by zaktualizować użytkownika \"{name}\"", + "error.user.update.permission": "Nie masz uprawnień, by zaktualizować użytkownika \"{name}\"", "error.validation.accepted": "Proszę potwierdzić", "error.validation.alpha": "Wprowadź tylko znaki między a-z", - "error.validation.alphanum": - "Wprowadź tylko znaki między a-z lub cyfry 0-9", - "error.validation.between": - "Wprowadź wartość między \"{min}\" i \"{max}\"", + "error.validation.alphanum": "Wprowadź tylko znaki między a-z lub cyfry 0-9", + "error.validation.between": "Wprowadź wartość między \"{min}\" i \"{max}\"", "error.validation.boolean": "Potwierdź lub odmów", - "error.validation.contains": - "Wprowadź wartość, która zawiera \"{needle}\"", + "error.validation.contains": "Wprowadź wartość, która zawiera \"{needle}\"", "error.validation.date": "Wprowadź poprawną datę", - "error.validation.date.after": "Please enter a date after {date}", - "error.validation.date.before": "Please enter a date before {date}", - "error.validation.date.between": "Please enter a date between {min} and {max}", + "error.validation.date.after": "Wprowadź datę późniejszą niż {date}", + "error.validation.date.before": "Wprowadź datę wcześniejszą niż {date}", + "error.validation.date.between": "Wprowadź datę między {min} a {max}", "error.validation.denied": "Proszę odmówić", "error.validation.different": "Wartością nie może być \"{other}\"", "error.validation.email": "Wprowadź poprawny adres email", @@ -210,18 +169,14 @@ "error.validation.less": "Wprowadź wartość mniejszą niż {max}", "error.validation.match": "Wartość nie jest zgodna z oczekiwanym wzorcem", "error.validation.max": "Wprowadź wartość równą lub mniejszą niż {max}", - "error.validation.maxlength": - "Wprowadź krótszą wartość. (maks. {max} znaków)", + "error.validation.maxlength": "Wprowadź krótszą wartość. (maks. {max} znaków)", "error.validation.maxwords": "Wprowadź nie więcej niż {max} słowa/słów", "error.validation.min": "Wprowadź wartość równą lub większą niż {min}", - "error.validation.minlength": - "Wprowadź dłuższą wartość. (min. {min} znaków)", + "error.validation.minlength": "Wprowadź dłuższą wartość. (min. {min} znaków)", "error.validation.minwords": "Wprowadź co najmniej {min} słowa/słów", "error.validation.more": "Wprowadź wartość większą niż {min}", - "error.validation.notcontains": - "Wprowadź wartość, która nie zawiera \"{needle}\"", - "error.validation.notin": - "Nie wprowadzaj żadnego z następujących ({notIn})", + "error.validation.notcontains": "Wprowadź wartość, która nie zawiera \"{needle}\"", + "error.validation.notin": "Nie wprowadzaj żadnego z następujących ({notIn})", "error.validation.option": "Wybierz poprawną opcję", "error.validation.num": "Wprowadź poprawny numer", "error.validation.required": "Wpisz coś", @@ -231,15 +186,14 @@ "error.validation.time": "Wprowadź poprawny czas", "error.validation.url": "Wprowadź poprawny adres URL", - "field.required": "The field is required", + "field.required": "Pole jest wymagane", "field.files.empty": "Nie wybrano jeszcze żadnych plików", "field.pages.empty": "Nie wybrano jeszcze żadnych stron", "field.structure.delete.confirm": "Czy na pewno chcesz usunąć ten wiersz?", "field.structure.empty": "Nie ma jeszcze \u017cadnych wpis\u00f3w.", "field.users.empty": "Nie wybrano jeszcze żadnych użytkowników", - "file.delete.confirm": - "Czy na pewno chcesz usunąć
{filename}?", + "file.delete.confirm": "Czy na pewno chcesz usunąć
{filename}?", "files": "Pliki", "files.empty": "Nie ma jeszcze żadnych plików", @@ -251,35 +205,28 @@ "installation": "Instalacja", "installation.completed": "Panel został zainstalowany", "installation.disabled": "Instalator panelu jest domyślnie wyłączony na serwerach publicznych. Uruchom instalator na komputerze lokalnym lub włącz go za pomocą opcji panel.install.", - "installation.issues.accounts": - "Folder /site/accounts nie istnieje lub nie ma uprawnień do zapisu", - "installation.issues.content": - "Folder /content nie istnieje lub nie ma uprawnień do zapisu", + "installation.issues.accounts": "Folder /site/accounts nie istnieje lub nie ma uprawnień do zapisu", + "installation.issues.content": "Folder /content nie istnieje lub nie ma uprawnień do zapisu", "installation.issues.curl": "Wymagane jest rozszerzenie CURL", "installation.issues.headline": "Nie można zainstalować panelu", - "installation.issues.mbstring": - "Wymagane jest rozszerzenie MB String", - "installation.issues.media": - "Folder /media nie istnieje lub nie ma uprawnień do zapisu", + "installation.issues.mbstring": "Wymagane jest rozszerzenie MB String", + "installation.issues.media": "Folder /media nie istnieje lub nie ma uprawnień do zapisu", "installation.issues.php": "Upewnij się, że używasz PHP 7+", - "installation.issues.server": - "Kirby wymaga Apache, Nginx lub Caddy", + "installation.issues.server": "Kirby wymaga Apache, Nginx lub Caddy", "installation.issues.sessions": "Folder /site/sessions nie istnieje lub nie ma uprawnień do zapisu", "language": "J\u0119zyk", "language.code": "Kod", "language.convert": "Ustaw jako domyślny", - "language.convert.confirm": - "

Czy na pewno chcesz zmienić domyślny język na {name}? Nie można tego cofnąć.

Jeżeli brakuje tłumaczenia jakichś treści na {name}, nie będzie ich czym zastąpić i części witryny mogą być puste.

", + "language.convert.confirm": "

Czy na pewno chcesz zmienić domyślny język na {name}? Nie można tego cofnąć.

Jeżeli brakuje tłumaczenia jakichś treści na {name}, nie będzie ich czym zastąpić i części witryny mogą być puste.

", "language.create": "Dodaj nowy język", - "language.delete.confirm": - "Czy na pewno chcesz usunąć język {name} i wszystkie tłumaczenia? Tego nie da się cofnąć!", + "language.delete.confirm": "Czy na pewno chcesz usunąć język {name} i wszystkie tłumaczenia? Tego nie da się cofnąć!", "language.deleted": "Język został usunięty", "language.direction": "Kierunek czytania", "language.direction.ltr": "Od lewej do prawej", "language.direction.rtl": "Od prawej do lewej", "language.locale": "PHP locale string", - "language.locale.warning": "You are using a custom locale set up. Please modify it in the language file in /site/languages", + "language.locale.warning": "Używasz niestandardowej konfiguracji ustawień regionalnych. Zmodyfikuj to w pliku języka w /site/langugaes", "language.name": "Nazwa", "language.updated": "Język został zaktualizowany", @@ -292,8 +239,7 @@ "license": "Licencja", "license.buy": "Kup licencję", "license.register": "Zarejestruj", - "license.register.help": - "Po zakupieniu licencji otrzymałaś/-eś mailem klucz. Skopiuj go i wklej tutaj, aby dokonać rejestracji.", + "license.register.help": "Po zakupieniu licencji otrzymałaś/-eś mailem klucz. Skopiuj go i wklej tutaj, aby dokonać rejestracji.", "license.register.label": "Wprowadź swój kod licencji", "license.register.success": "Dziękujemy za wspieranie Kirby", "license.unregistered": "To jest niezarejestrowana wersja demonstracyjna Kirby", @@ -304,12 +250,12 @@ "loading": "Ładuję", "lock.unsaved": "Niezapisane zmiany", - "lock.unsaved.empty": "There are no more unsaved changes", + "lock.unsaved.empty": "Nie ma już żadnych niezapisanych zmian", "lock.isLocked": "Niezapisane zmiany autorstwa {email}", - "lock.file.isLocked": "The file is currently being edited by {email} and cannot be changed.", - "lock.page.isLocked": "The page is currently being edited by {email} and cannot be changed.", - "lock.unlock": "Unlock", - "lock.isUnlocked": "Your unsaved changes have been overwritten by another user. You can download your changes to merge them manually.", + "lock.file.isLocked": "Plik jest aktualnie edytowany przez {email} i nie może zostać zmieniony.", + "lock.page.isLocked": "Strona jest aktualnie edytowana przez {email} i nie może zostać zmieniona.", + "lock.unlock": "Odblokuj", + "lock.isUnlocked": "Twoje niezapisane zmiany zostały nadpisane przez innego użytkownika. Możesz pobrać swoje zmiany, by scalić je ręcznie.", "login": "Zaloguj", "login.remember": "Nie wylogowuj mnie", @@ -338,8 +284,8 @@ "more": "Więcej", "name": "Nazwa", "next": "Następne", - "off": "off", - "on": "on", + "off": "wyłączone", + "on": "włączone", "open": "Otwórz", "options": "Opcje", @@ -354,19 +300,16 @@ "page.changeStatus.position": "Wybierz pozycję", "page.changeStatus.select": "Wybierz nowy status", "page.changeTemplate": "Zmień szablon", - "page.delete.confirm": - "Czy na pewno chcesz usunąć {title}?", - "page.delete.confirm.subpages": - "Ta strona zawiera podstrony.
Wszystkie podstrony również zostaną usunięte.", + "page.delete.confirm": "Czy na pewno chcesz usunąć {title}?", + "page.delete.confirm.subpages": "Ta strona zawiera podstrony.
Wszystkie podstrony również zostaną usunięte.", "page.delete.confirm.title": "Wprowadź tytuł strony, aby potwierdzić", "page.draft.create": "Utwórz szkic", "page.duplicate.appendix": "Kopiuj", - "page.duplicate.files": "Copy files", - "page.duplicate.pages": "Copy pages", + "page.duplicate.files": "Kopiuj pliki", + "page.duplicate.pages": "Kopiuj strony", "page.status": "Status", "page.status.draft": "Szkic", - "page.status.draft.description": - "Strona jest w trybie roboczym i widoczna tylko dla zalogowanych redaktorów", + "page.status.draft.description": "Strona jest w trybie roboczym i widoczna tylko dla zalogowanych redaktorów lub pod sekretnym linkiem", "page.status.listed": "Opublikowana", "page.status.listed.description": "Strona jest opublikowana i widoczna dla każdego", "page.status.unlisted": "Nie katalogowana", @@ -388,20 +331,21 @@ "replace": "Zamie\u0144", "retry": "Pon\u00f3w pr\u00f3b\u0119", "revert": "Odrzu\u0107", + "revert.confirm": "Czy na pewno chcesz usunąć wszystkie niezapisane zmiany?", "role": "Rola", - "role.admin.description": "The admin has all rights", - "role.admin.title": "Admin", + "role.admin.description": "Administrator posiada wszystkie uprawnienia", + "role.admin.title": "Administrator", "role.all": "Wszystkie", "role.empty": "Nie ma użytkowników z tą rolą", "role.description.placeholder": "Brak opisu", - "role.nobody.description": "This is a fallback role without any permissions", - "role.nobody.title": "Nobody", + "role.nobody.description": "To jest rola zastępcza bez żadnych uprawnień", + "role.nobody.title": "Nikt", "save": "Zapisz", "search": "Szukaj", - "section.required": "The section is required", + "section.required": "Sekcja jest wymagana", "select": "Wybierz", "settings": "Ustawienia", @@ -421,8 +365,8 @@ "toolbar.button.heading.3": "Nagłówek 3", "toolbar.button.italic": "Kursywa", "toolbar.button.file": "Plik", - "toolbar.button.file.select": "Select a file", - "toolbar.button.file.upload": "Upload a file", + "toolbar.button.file.select": "Wybierz plik", + "toolbar.button.file.upload": "Prześlij plik", "toolbar.button.link": "Link", "toolbar.button.ol": "Lista numerowana", "toolbar.button.ul": "Lista wypunktowana", @@ -433,17 +377,17 @@ "translation.locale": "pl_PL", "upload": "Prześlij", - "upload.error.cantMove": "The uploaded file could not be moved", - "upload.error.cantWrite": "Failed to write file to disk", - "upload.error.default": "The file could not be uploaded", - "upload.error.extension": "File upload stopped by extension", - "upload.error.formSize": "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the form", - "upload.error.iniPostSize": "The uploaded file exceeds the post_max_size directive in php.ini", - "upload.error.iniSize": "The uploaded file exceeds the upload_max_filesize directive in php.ini", - "upload.error.noFile": "No file was uploaded", - "upload.error.noFiles": "No files were uploaded", - "upload.error.partial": "The uploaded file was only partially uploaded", - "upload.error.tmpDir": "Missing a temporary folder", + "upload.error.cantMove": "Przesłany plik nie mógł być przeniesiony", + "upload.error.cantWrite": "Nie udało się zapisać pliku na dysku", + "upload.error.default": "Nie udało się przesłać pliku", + "upload.error.extension": "Przesyłanie pliku zostało zastopowane przez rozszerzenie", + "upload.error.formSize": "Przesłany plik przekracza dyrektywę MAX_FILE_SIZE określoną w formularzu", + "upload.error.iniPostSize": "Przesłany plik przekracza dyrektywę post_max_size określoną w php.ini", + "upload.error.iniSize": "Przesłany plik przekracza dyrektywę upload_max_filesize określoną w php.ini", + "upload.error.noFile": "Nie został przesłany żaden plik", + "upload.error.noFiles": "Nie zostały przesłane żadne pliki", + "upload.error.partial": "Została przesłana tylko część przesyłanego pliku", + "upload.error.tmpDir": "Brak tymczasowego folderu", "upload.errors": "Błąd", "upload.progress": "Przesyłanie…", @@ -451,8 +395,7 @@ "url.placeholder": "https://example.com", "user": "Użytkownik", - "user.blueprint": - "Możesz zdefiniować dodatkowe sekcje i pola formularza dla tej roli użytkownika w /site/blueprints/users/{role}.yml", + "user.blueprint": "Możesz zdefiniować dodatkowe sekcje i pola formularza dla tej roli użytkownika w /site/blueprints/users/{role}.yml", "user.changeEmail": "Zmień email", "user.changeLanguage": "Zmień język", "user.changeName": "Zmień nazwę tego użytkownika", @@ -463,8 +406,7 @@ "user.changeRole.select": "Wybierz nową rolę", "user.create": "Dodaj nowego użytkownika", "user.delete": "Usuń tego użytkownika", - "user.delete.confirm": - "Czy na pewno chcesz usunąć
{email}?", + "user.delete.confirm": "Czy na pewno chcesz usunąć
{email}?", "users": "Użytkownicy", diff --git a/kirby/i18n/translations/pt_BR.json b/kirby/i18n/translations/pt_BR.json index 6daf754..f2d0ded 100755 --- a/kirby/i18n/translations/pt_BR.json +++ b/kirby/i18n/translations/pt_BR.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "A foto de perfil não pôde ser enviada", "error.avatar.delete.fail": "A foto do perfil não pôde ser deletada", - "error.avatar.dimensions.invalid": - "Por favor, use uma foto de perfil com largura e altura menores que 3000 pixels", - "error.avatar.mime.forbidden": - "A foto de perfil deve ser um arquivo JPEG ou PNG", + "error.avatar.dimensions.invalid": "Por favor, use uma foto de perfil com largura e altura menores que 3000 pixels", + "error.avatar.mime.forbidden": "A foto de perfil deve ser um arquivo JPEG ou PNG", "error.blueprint.notFound": "O blueprint \"{name}\" não pôde ser carregado", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Conversor \"{converter}\" inválido", "error.file.changeName.empty": "The name must not be empty", - "error.file.changeName.permission": - "Você não tem permissão para alterar o nome de \"{filename}\"", + "error.file.changeName.permission": "Você não tem permissão para alterar o nome de \"{filename}\"", "error.file.duplicate": "Um arquivo com o nome \"{filename}\" já existe", - "error.file.extension.forbidden": - "Extensão \"{extension}\" não permitida", - "error.file.extension.missing": - "Extensão de \"{filename}\" em falta", + "error.file.extension.forbidden": "Extensão \"{extension}\" não permitida", + "error.file.extension.missing": "Extensão de \"{filename}\" em falta", "error.file.maxheight": "The height of the image must not exceed {height} pixels", "error.file.maxsize": "The file is too large", "error.file.maxwidth": "The width of the image must not exceed {width} pixels", - "error.file.mime.differs": - "O arquivo enviado precisa ser do tipo \"{mime}\"", + "error.file.mime.differs": "O arquivo enviado precisa ser do tipo \"{mime}\"", "error.file.mime.forbidden": "Tipo de mídia \"{mime}\" não permitido", "error.file.mime.invalid": "Invalid mime type: {mime}", - "error.file.mime.missing": - "Tipo de mídia de \"{filename}\" não detectado", + "error.file.mime.missing": "Tipo de mídia de \"{filename}\" não detectado", "error.file.minheight": "The height of the image must be at least {height} pixels", "error.file.minsize": "The file is too small", "error.file.minwidth": "The width of the image must be at least {width} pixels", @@ -90,111 +83,77 @@ "error.license.email": "Digite um endereço de email válido", "error.license.verification": "The license could not be verified", - "error.page.changeSlug.permission": - "Você não tem permissão para alterar a URL de \"{slug}\"", - "error.page.changeStatus.incomplete": - "A página possui erros e não pode ser salva", - "error.page.changeStatus.permission": - "O estado desta página não pode ser alterado", - "error.page.changeStatus.toDraft.invalid": - "A página \"{slug}\" não pode ser convertida para rascunho", - "error.page.changeTemplate.invalid": - "O tema da página \"{slug}\" não pode ser alterado", - "error.page.changeTemplate.permission": - "Você não tem permissão para alterar o tema de \"{slug}\"", + "error.page.changeSlug.permission": "Você não tem permissão para alterar a URL de \"{slug}\"", + "error.page.changeStatus.incomplete": "A página possui erros e não pode ser salva", + "error.page.changeStatus.permission": "O estado desta página não pode ser alterado", + "error.page.changeStatus.toDraft.invalid": "A página \"{slug}\" não pode ser convertida para rascunho", + "error.page.changeTemplate.invalid": "O tema da página \"{slug}\" não pode ser alterado", + "error.page.changeTemplate.permission": "Você não tem permissão para alterar o tema de \"{slug}\"", "error.page.changeTitle.empty": "O título não pode ficar em branco", - "error.page.changeTitle.permission": - "Você não tem permissão para alterar o título de \"{slug}\"", + "error.page.changeTitle.permission": "Você não tem permissão para alterar o título de \"{slug}\"", "error.page.create.permission": "Você não tem permissão para criar \"{slug}\"", "error.page.delete": "A página \"{slug}\" não pode ser excluída", "error.page.delete.confirm": "Por favor, digite o título da página para confirmar", - "error.page.delete.hasChildren": - "A página possui subpáginas e não pode ser excluída", + "error.page.delete.hasChildren": "A página possui subpáginas e não pode ser excluída", "error.page.delete.permission": "Você não tem permissão para excluir \"{slug}\"", - "error.page.draft.duplicate": - "Um rascunho de página com a URL \"{slug}\" já existe", - "error.page.duplicate": - "Uma página com a URL \"{slug}\" já existe", + "error.page.draft.duplicate": "Um rascunho de página com a URL \"{slug}\" já existe", + "error.page.duplicate": "Uma página com a URL \"{slug}\" já existe", "error.page.duplicate.permission": "You are not allowed to duplicate \"{slug}\"", "error.page.notFound": "Página\"{slug}\" não encontrada", - "error.page.num.invalid": - "Digite um número de ordenação válido. Este número não pode ser negativo.", + "error.page.num.invalid": "Digite um número de ordenação válido. Este número não pode ser negativo.", "error.page.slug.invalid": "Por favor, digite uma URL válida", "error.page.sort.permission": "A página \"{slug}\" não pode ser ordenada", "error.page.status.invalid": "Por favor, defina um estado de página válido", "error.page.undefined": "P\u00e1gina n\u00e3o encontrada", "error.page.update.permission": "Você não tem permissão para atualizar \"{slug}\"", - "error.section.files.max.plural": - "Você não pode adicionar mais do que {max} arquivos à seção \"{section}\"", - "error.section.files.max.singular": - "Você não pode adicionar mais do que um arquivo à seção \"{section}\"", - "error.section.files.min.plural": - "The \"{section}\" section requires at least {min} files", - "error.section.files.min.singular": - "The \"{section}\" section requires at least one file", + "error.section.files.max.plural": "Você não pode adicionar mais do que {max} arquivos à seção \"{section}\"", + "error.section.files.max.singular": "Você não pode adicionar mais do que um arquivo à seção \"{section}\"", + "error.section.files.min.plural": "The \"{section}\" section requires at least {min} files", + "error.section.files.min.singular": "The \"{section}\" section requires at least one file", - "error.section.pages.max.plural": - "Você não pode adicionar mais do que {max} página à seção \"{section}\"", - "error.section.pages.max.singular": - "Você não pode adicionar mais do que uma página à seção \"{section}\"", - "error.section.pages.min.plural": - "The \"{section}\" section requires at least {min} pages", - "error.section.pages.min.singular": - "The \"{section}\" section requires at least one page", + "error.section.pages.max.plural": "Você não pode adicionar mais do que {max} página à seção \"{section}\"", + "error.section.pages.max.singular": "Você não pode adicionar mais do que uma página à seção \"{section}\"", + "error.section.pages.min.plural": "The \"{section}\" section requires at least {min} pages", + "error.section.pages.min.singular": "The \"{section}\" section requires at least one page", "error.section.notLoaded": "A seção \"{name}\" não pôde ser carregada", "error.section.type.invalid": "O tipo da seção \"{type}\" não é válido", "error.site.changeTitle.empty": "O título não pode ficar em branco", - "error.site.changeTitle.permission": - "Você não tem permissão para alterar o título do site", + "error.site.changeTitle.permission": "Você não tem permissão para alterar o título do site", "error.site.update.permission": "Você não tem permissão para atualizar o site", "error.template.default.notFound": "O tema padrão não existe", - "error.user.changeEmail.permission": - "Você não tem permissão para alterar o email do usuário \"{name}\"", - "error.user.changeLanguage.permission": - "Você não tem permissão para alterar o idioma do usuário \"{name}\"", - "error.user.changeName.permission": - "Você não tem permissão para alterar o nome do usuário \"{name}\"", - "error.user.changePassword.permission": - "Você não tem permissão para alterar a senha do usuário \"{name}\"", - "error.user.changeRole.lastAdmin": - "O papel do último administrador não pode ser alterado", - "error.user.changeRole.permission": - "Você não tem permissão para alterar o papel do usuário \"{name}\"", - "error.user.changeRole.toAdmin": - "You are not allowed to promote someone to the admin role", + "error.user.changeEmail.permission": "Você não tem permissão para alterar o email do usuário \"{name}\"", + "error.user.changeLanguage.permission": "Você não tem permissão para alterar o idioma do usuário \"{name}\"", + "error.user.changeName.permission": "Você não tem permissão para alterar o nome do usuário \"{name}\"", + "error.user.changePassword.permission": "Você não tem permissão para alterar a senha do usuário \"{name}\"", + "error.user.changeRole.lastAdmin": "O papel do último administrador não pode ser alterado", + "error.user.changeRole.permission": "Você não tem permissão para alterar o papel do usuário \"{name}\"", + "error.user.changeRole.toAdmin": "You are not allowed to promote someone to the admin role", "error.user.create.permission": "Você não tem permissão para criar este usuário", "error.user.delete": "O usuário \"{name}\" não pode ser excluído", "error.user.delete.lastAdmin": "O último administrador não pode ser excluído", "error.user.delete.lastUser": "O último usuário não pode ser excluído", - "error.user.delete.permission": - "Você não tem permissão para excluir o usuário \"{name}\"", - "error.user.duplicate": - "Um usuário com o email \"{email}\" já existe", + "error.user.delete.permission": "Você não tem permissão para excluir o usuário \"{name}\"", + "error.user.duplicate": "Um usuário com o email \"{email}\" já existe", "error.user.email.invalid": "Digite um endereço de email válido", "error.user.language.invalid": "Digite um idioma válido", "error.user.notFound": "Usuário \"{name}\" não encontrado", - "error.user.password.invalid": - "Digite uma senha válida. Sua senha deve ter pelo menos 8 caracteres.", + "error.user.password.invalid": "Digite uma senha válida. Sua senha deve ter pelo menos 8 caracteres.", "error.user.password.notSame": "As senhas não combinam", "error.user.password.undefined": "O usuário não possui uma senha", "error.user.role.invalid": "Digite um papel válido", - "error.user.update.permission": - "Você não tem permissão para atualizar o usuário \"{name}\"", + "error.user.update.permission": "Você não tem permissão para atualizar o usuário \"{name}\"", "error.validation.accepted": "Por favor, confirme", "error.validation.alpha": "Por favor, use apenas caracteres entre a-z", - "error.validation.alphanum": - "Por favor, use apenas caracteres entre a-z ou 0-9", - "error.validation.between": - "Digite um valor entre \"{min}\" e \"{max}\"", + "error.validation.alphanum": "Por favor, use apenas caracteres entre a-z ou 0-9", + "error.validation.between": "Digite um valor entre \"{min}\" e \"{max}\"", "error.validation.boolean": "Por favor, confirme ou rejeite", - "error.validation.contains": - "Digite um valor que contenha \"{needle}\"", + "error.validation.contains": "Digite um valor que contenha \"{needle}\"", "error.validation.date": "Escolha uma data válida", "error.validation.date.after": "Please enter a date after {date}", "error.validation.date.before": "Please enter a date before {date}", @@ -210,18 +169,14 @@ "error.validation.less": "Digite um valor menor que {max}", "error.validation.match": "O valor não combina com o padrão esperado", "error.validation.max": "Digite um valor igual ou menor que {max}", - "error.validation.maxlength": - "Digite um valor curto. (no máximo {max} caracteres)", + "error.validation.maxlength": "Digite um valor curto. (no máximo {max} caracteres)", "error.validation.maxwords": "Digite menos que {max} palavra(s)", "error.validation.min": "Digite um valor igual ou maior que {min}", - "error.validation.minlength": - "Digite um valor maior. (no mínimo {min} caracteres)", + "error.validation.minlength": "Digite um valor maior. (no mínimo {min} caracteres)", "error.validation.minwords": "Digite ao menos {min} palavra(s)", "error.validation.more": "Digite um valor maior que {min}", - "error.validation.notcontains": - "Digite um valor que não contenha \"{needle}\"", - "error.validation.notin": - "Não digite nenhum destes valores: ({notIn})", + "error.validation.notcontains": "Digite um valor que não contenha \"{needle}\"", + "error.validation.notin": "Não digite nenhum destes valores: ({notIn})", "error.validation.option": "Escolha uma opção válida", "error.validation.num": "Digite um número válido", "error.validation.required": "Digite algo", @@ -238,8 +193,7 @@ "field.structure.empty": "Nenhum registro", "field.users.empty": "Nenhum usuário selecionado", - "file.delete.confirm": - "Deseja realmente excluir
{filename}?", + "file.delete.confirm": "Deseja realmente excluir
{filename}?", "files": "Arquivos", "files.empty": "Nenhum arquivo", @@ -251,29 +205,22 @@ "installation": "Instalação", "installation.completed": "Painel instalado com sucesso", "installation.disabled": "O instalador do painel está desabilitado em servidores públicos por padrão. Por favor, execute o instalador em uma máquina local ou habilite a opção panel.install.", - "installation.issues.accounts": - "A pasta /site/accounts não existe ou não possui permissão de escrita", - "installation.issues.content": - "A pasta /content não existe ou não possui permissão de escrita", + "installation.issues.accounts": "A pasta /site/accounts não existe ou não possui permissão de escrita", + "installation.issues.content": "A pasta /content não existe ou não possui permissão de escrita", "installation.issues.curl": "A extensão CURL é necessária", "installation.issues.headline": "O painel não pôde ser instalado", - "installation.issues.mbstring": - "A extensão MB String é necessária", - "installation.issues.media": - "A pasta /media não existe ou não possui permissão de escrita", + "installation.issues.mbstring": "A extensão MB String é necessária", + "installation.issues.media": "A pasta /media não existe ou não possui permissão de escrita", "installation.issues.php": "Certifique-se que você está usando o PHP 7+", - "installation.issues.server": - "Kirby necessita do Apache, Nginx ou Caddy", + "installation.issues.server": "Kirby necessita do Apache, Nginx ou Caddy", "installation.issues.sessions": "A pasta /site/sessions não existe ou não possui permissão de escrita", "language": "Idioma", "language.code": "Código", "language.convert": "Tornar padrão", - "language.convert.confirm": - "

Deseja realmente converter {name} para o idioma padrão? Esta ação não poderá ser revertida.

Se {name} tiver conteúdo não traduzido, partes do seu site poderão ficar sem conteúdo.

", + "language.convert.confirm": "

Deseja realmente converter {name} para o idioma padrão? Esta ação não poderá ser revertida.

Se {name} tiver conteúdo não traduzido, partes do seu site poderão ficar sem conteúdo.

", "language.create": "Adicionar novo idioma", - "language.delete.confirm": - "Deseja realmente excluir o idioma {name} incluíndo todas as traduções. Esta ação não poderá ser revertida!", + "language.delete.confirm": "Deseja realmente excluir o idioma {name} incluíndo todas as traduções. Esta ação não poderá ser revertida!", "language.deleted": "Idioma excluído", "language.direction": "Direção de leitura", "language.direction.ltr": "Esquerda para direita", @@ -292,8 +239,7 @@ "license": "Licen\u00e7a do Kirby ", "license.buy": "Comprar licença", "license.register": "Registrar", - "license.register.help": - "Você recebeu o código da sua licença por email após a compra. Por favor, copie e cole-a para completar o registro.", + "license.register.help": "Você recebeu o código da sua licença por email após a compra. Por favor, copie e cole-a para completar o registro.", "license.register.label": "Por favor, digite o código da sua licença", "license.register.success": "Obrigado por apoiar o Kirby", "license.unregistered": "Esta é uma demonstração não registrada do Kirby", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Selecione uma posição", "page.changeStatus.select": "Selecione um novo estado", "page.changeTemplate": "Alterar tema", - "page.delete.confirm": - "Deseja realmente excluir {title}?", - "page.delete.confirm.subpages": - "Esta página possui subpáginas.
Todas as subpáginas serão excluídas também.", + "page.delete.confirm": "Deseja realmente excluir {title}?", + "page.delete.confirm.subpages": "Esta página possui subpáginas.
Todas as subpáginas serão excluídas também.", "page.delete.confirm.title": "Digite o título da página para confirmar", "page.draft.create": "Criar rascunho", "page.duplicate.appendix": "Copiar", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Copy pages", "page.status": "Estado", "page.status.draft": "Rascunho", - "page.status.draft.description": - "A página em modo de rascunho é visível somente para editores", + "page.status.draft.description": "The page is in draft mode and only visible for logged in editors or via secret link", "page.status.listed": "Pública", "page.status.listed.description": "A página pública é visível para todos", "page.status.unlisted": "Não listadas", @@ -388,6 +331,7 @@ "replace": "Substituir", "retry": "Tentar novamente", "revert": "Descartar", + "revert.confirm": "Do you really want to delete all unsaved changes?", "role": "Papel", "role.admin.description": "The admin has all rights", @@ -451,8 +395,7 @@ "url.placeholder": "https://exemplo.com", "user": "Usuário", - "user.blueprint": - "Você pode definir seções e campos de formulário adicionais para este papel de usuário em /site/blueprints/users/{role}.yml", + "user.blueprint": "Você pode definir seções e campos de formulário adicionais para este papel de usuário em /site/blueprints/users/{role}.yml", "user.changeEmail": "Alterar email", "user.changeLanguage": "Alterar idioma", "user.changeName": "Renomear usuário", @@ -463,8 +406,7 @@ "user.changeRole.select": "Selecione um novo papel", "user.create": "Adicionar novo usuário", "user.delete": "Excluir este usuário", - "user.delete.confirm": - "Deseja realmente excluir
{email}?", + "user.delete.confirm": "Deseja realmente excluir
{email}?", "users": "Usuários", diff --git a/kirby/i18n/translations/pt_PT.json b/kirby/i18n/translations/pt_PT.json index fb5724d..a9797b9 100755 --- a/kirby/i18n/translations/pt_PT.json +++ b/kirby/i18n/translations/pt_PT.json @@ -23,29 +23,27 @@ "delete": "Excluir", "dimensions": "Dimensões", - "disabled": "Disabled", + "disabled": "Inativo", "discard": "Descartar", - "download": "Download", - "duplicate": "Duplicate", + "download": "Descarregar", + "duplicate": "Duplicar", "edit": "Editar", - "dialog.files.empty": "No files to select", - "dialog.pages.empty": "No pages to select", - "dialog.users.empty": "No users to select", + "dialog.files.empty": "Sem arquivos para selecionar", + "dialog.pages.empty": "Sem páginas para selecionar", + "dialog.users.empty": "Sem utilizadores para selecionar", "email": "Email", "email.placeholder": "mail@exemplo.pt", "error.access.login": "Login inválido", "error.access.panel": "Não tem permissões para aceder ao painel", - "error.access.view": "You are not allowed to access this part of the panel", + "error.access.view": "Não tem permissões para aceder a esta área do Painel", "error.avatar.create.fail": "A foto de perfil não foi enviada", - "error.avatar.delete.fail": "A foto do perfil não foi deletada", - "error.avatar.dimensions.invalid": - "Por favor, use uma foto de perfil com largura e altura menores que 3000 pixels", - "error.avatar.mime.forbidden": - "A foto de perfil deve ser um arquivo JPEG ou PNG", + "error.avatar.delete.fail": "A foto do perfil não foi excluída", + "error.avatar.dimensions.invalid": "Por favor, use uma foto de perfil com largura e altura menores que 3000 pixels", + "error.avatar.mime.forbidden": "A foto de perfil deve ser um arquivo JPEG ou PNG", "error.blueprint.notFound": "O blueprint \"{name}\" não pode ser carregado", @@ -53,152 +51,113 @@ "error.field.converter.invalid": "Conversor \"{converter}\" inválido", - "error.file.changeName.empty": "The name must not be empty", - "error.file.changeName.permission": - "Não tem permissões para alterar o nome de \"{filename}\"", + "error.file.changeName.empty": "O nome não pode ficar em branco", + "error.file.changeName.permission": "Não tem permissões para alterar o nome de \"{filename}\"", "error.file.duplicate": "Um arquivo com o nome \"{filename}\" já existe", - "error.file.extension.forbidden": - "Extensão \"{extension}\" não permitida", - "error.file.extension.missing": - "Extensão de \"{filename}\" em falta", - "error.file.maxheight": "The height of the image must not exceed {height} pixels", - "error.file.maxsize": "The file is too large", - "error.file.maxwidth": "The width of the image must not exceed {width} pixels", - "error.file.mime.differs": - "O arquivo enviado precisa ser do tipo \"{mime}\"", + "error.file.extension.forbidden": "Extensão \"{extension}\" não permitida", + "error.file.extension.missing": "Extensão de \"{filename}\" em falta", + "error.file.maxheight": "A altura da imagem não deve exceder {height} pixels", + "error.file.maxsize": "O arquivo é muito grande", + "error.file.maxwidth": "A largura da imagem não deve exceder {width} pixels", + "error.file.mime.differs": "O arquivo enviado precisa ser do tipo \"{mime}\"", "error.file.mime.forbidden": "Tipo de mídia \"{mime}\" não permitido", - "error.file.mime.invalid": "Invalid mime type: {mime}", - "error.file.mime.missing": - "Tipo de mídia de \"{filename}\" não detectado", - "error.file.minheight": "The height of the image must be at least {height} pixels", - "error.file.minsize": "The file is too small", - "error.file.minwidth": "The width of the image must be at least {width} pixels", + "error.file.mime.invalid": "Tipo de mídia inválido: {mime}", + "error.file.mime.missing": "Tipo de mídia de \"{filename}\" não detectado", + "error.file.minheight": "A altura da imagem deve ser pelo menos {height} pixels", + "error.file.minsize": "O ficheiro é muito pequeno", + "error.file.minwidth": "A largura da imagem deve ser pelo menos {width} pixels", "error.file.name.missing": "O nome do arquivo não pode ficar em branco", "error.file.notFound": "Arquivo \"{filename}\" não encontrado", - "error.file.orientation": "The orientation of the image must be \"{orientation}\"", + "error.file.orientation": "A orientação da imagem deve ser \"{orientation}\"", "error.file.type.forbidden": "Não tem permissões para enviar arquivos {type}", "error.file.undefined": "Arquivo n\u00e3o encontrado", "error.form.incomplete": "Por favor, corrija os erros do formulário…", "error.form.notSaved": "O formulário não foi guardado", - "error.language.code": "Please enter a valid code for the language", - "error.language.duplicate": "The language already exists", - "error.language.name": "Please enter a valid name for the language", + "error.language.code": "Insira um código de idioma válido", + "error.language.duplicate": "O idioma já existe", + "error.language.name": "Insira um nome válido para o idioma", - "error.license.format": "Please enter a valid license key", + "error.license.format": "Insira uma chave de licença válida", "error.license.email": "Digite um endereço de email válido", - "error.license.verification": "The license could not be verified", + "error.license.verification": "Não foi possível verificar a licença", - "error.page.changeSlug.permission": - "Não tem permissões para alterar a URL de \"{slug}\"", - "error.page.changeStatus.incomplete": - "A página possui erros e não pode ser guardada", - "error.page.changeStatus.permission": - "O estado desta página não pode ser alterado", - "error.page.changeStatus.toDraft.invalid": - "A página \"{slug}\" não pode ser convertida para rascunho", - "error.page.changeTemplate.invalid": - "O tema da página \"{slug}\" não pode ser alterado", - "error.page.changeTemplate.permission": - "Não tem permissões para alterar o tema de \"{slug}\"", + "error.page.changeSlug.permission": "Não tem permissões para alterar a URL de \"{slug}\"", + "error.page.changeStatus.incomplete": "A página possui erros e não pode ser guardada", + "error.page.changeStatus.permission": "O estado desta página não pode ser alterado", + "error.page.changeStatus.toDraft.invalid": "A página \"{slug}\" não pode ser convertida para rascunho", + "error.page.changeTemplate.invalid": "O tema da página \"{slug}\" não pode ser alterado", + "error.page.changeTemplate.permission": "Não tem permissões para alterar o tema de \"{slug}\"", "error.page.changeTitle.empty": "O título não pode ficar em branco", - "error.page.changeTitle.permission": - "Não tem permissões para alterar o título de \"{slug}\"", + "error.page.changeTitle.permission": "Não tem permissões para alterar o título de \"{slug}\"", "error.page.create.permission": "Não tem permissões para criar \"{slug}\"", "error.page.delete": "A página \"{slug}\" não pode ser excluída", "error.page.delete.confirm": "Por favor, digite o título da página para confirmar", - "error.page.delete.hasChildren": - "A página possui subpáginas e não pode ser excluída", + "error.page.delete.hasChildren": "A página possui subpáginas e não pode ser excluída", "error.page.delete.permission": "Não tem permissões para excluir \"{slug}\"", - "error.page.draft.duplicate": - "Um rascunho de página com a URL \"{slug}\" já existe", - "error.page.duplicate": - "Uma página com a URL \"{slug}\" já existe", - "error.page.duplicate.permission": "You are not allowed to duplicate \"{slug}\"", + "error.page.draft.duplicate": "Um rascunho de página com a URL \"{slug}\" já existe", + "error.page.duplicate": "Uma página com a URL \"{slug}\" já existe", + "error.page.duplicate.permission": "Não tem permissão para duplicar \"{slug}\"", "error.page.notFound": "Página\"{slug}\" não encontrada", - "error.page.num.invalid": - "Digite um número de ordenação válido. Este número não pode ser negativo.", - "error.page.slug.invalid": "Por favor, digite uma URL válida", + "error.page.num.invalid": "Digite um número de ordenação válido. Este número não pode ser negativo.", + "error.page.slug.invalid": "Por favor, digite um prefixo de URL válido", "error.page.sort.permission": "A página \"{slug}\" não pode ser ordenada", "error.page.status.invalid": "Por favor, defina um estado de página válido", "error.page.undefined": "P\u00e1gina n\u00e3o encontrada", "error.page.update.permission": "Não tem permissões para atualizar \"{slug}\"", - "error.section.files.max.plural": - "Não pode adicionar mais do que {max} arquivos à seção \"{section}\"", - "error.section.files.max.singular": - "Não pode adicionar mais do que um arquivo à seção \"{section}\"", - "error.section.files.min.plural": - "The \"{section}\" section requires at least {min} files", - "error.section.files.min.singular": - "The \"{section}\" section requires at least one file", + "error.section.files.max.plural": "Não pode adicionar mais do que {max} arquivos à seção \"{section}\"", + "error.section.files.max.singular": "Não pode adicionar mais do que um arquivo à seção \"{section}\"", + "error.section.files.min.plural": "A secção \"{section}\" requer no mínimo {min} arquivos", + "error.section.files.min.singular": "A secção \"{section}\" requer no mínimo um arquivo", - "error.section.pages.max.plural": - "Não pode adicionar mais do que {max} página à seção \"{section}\"", - "error.section.pages.max.singular": - "Não pode adicionar mais do que uma página à seção \"{section}\"", - "error.section.pages.min.plural": - "The \"{section}\" section requires at least {min} pages", - "error.section.pages.min.singular": - "The \"{section}\" section requires at least one page", + "error.section.pages.max.plural": "Não pode adicionar mais do que {max} página à seção \"{section}\"", + "error.section.pages.max.singular": "Não pode adicionar mais do que uma página à seção \"{section}\"", + "error.section.pages.min.plural": "A secção \"{section}\" requer no mínimo {min} páginas", + "error.section.pages.min.singular": "A secção \"{section}\" requer no mínimo uma página", "error.section.notLoaded": "A seção \"{name}\" não pôde ser carregada", "error.section.type.invalid": "O tipo da seção \"{type}\" não é válido", "error.site.changeTitle.empty": "O título não pode ficar em branco", - "error.site.changeTitle.permission": - "Não tem permissões para alterar o título do site", + "error.site.changeTitle.permission": "Não tem permissões para alterar o título do site", "error.site.update.permission": "Não tem permissões para atualizar o site", "error.template.default.notFound": "O tema padrão não existe", - "error.user.changeEmail.permission": - "Não tem permissões para alterar o email do utilizador \"{name}\"", - "error.user.changeLanguage.permission": - "Não tem permissões para alterar o idioma do utilizador \"{name}\"", - "error.user.changeName.permission": - "Não tem permissões para alterar o nome do utilizador \"{name}\"", - "error.user.changePassword.permission": - "Não tem permissões para alterar a palavra-passe do utilizador \"{name}\"", - "error.user.changeRole.lastAdmin": - "A função do último administrador não pode ser alterado", - "error.user.changeRole.permission": - "Não tem permissões para alterar a função do utilizador \"{name}\"", - "error.user.changeRole.toAdmin": - "You are not allowed to promote someone to the admin role", + "error.user.changeEmail.permission": "Não tem permissões para alterar o email do utilizador \"{name}\"", + "error.user.changeLanguage.permission": "Não tem permissões para alterar o idioma do utilizador \"{name}\"", + "error.user.changeName.permission": "Não tem permissões para alterar o nome do utilizador \"{name}\"", + "error.user.changePassword.permission": "Não tem permissões para alterar a palavra-passe do utilizador \"{name}\"", + "error.user.changeRole.lastAdmin": "A função do último administrador não pode ser alterado", + "error.user.changeRole.permission": "Não tem permissões para alterar a função do utilizador \"{name}\"", + "error.user.changeRole.toAdmin": "Não tem permissões para promover utilizadores à função de administrador", "error.user.create.permission": "Não tem permissões para criar este utilizador", "error.user.delete": "O utilizador \"{name}\" não pode ser excluído", "error.user.delete.lastAdmin": "O último administrador não pode ser excluído", "error.user.delete.lastUser": "O último utilizador não pode ser excluído", - "error.user.delete.permission": - "Não tem permissões para excluir o utilizador \"{name}\"", - "error.user.duplicate": - "Um utilizador com o email \"{email}\" já existe", + "error.user.delete.permission": "Não tem permissões para excluir o utilizador \"{name}\"", + "error.user.duplicate": "Um utilizador com o email \"{email}\" já existe", "error.user.email.invalid": "Digite um endereço de email válido", "error.user.language.invalid": "Digite um idioma válido", "error.user.notFound": "Utilizador \"{name}\" não encontrado", - "error.user.password.invalid": - "Digite uma palavra-passe válida. A sua palavra-passe deve ter pelo menos 8 caracteres.", + "error.user.password.invalid": "Digite uma palavra-passe válida. A sua palavra-passe deve ter pelo menos 8 caracteres.", "error.user.password.notSame": "As palavras-passe não combinam", "error.user.password.undefined": "O utilizador não possui uma palavra-passe", "error.user.role.invalid": "Digite uma função válida", - "error.user.update.permission": - "Não tem permissões para atualizar o utilizador \"{name}\"", + "error.user.update.permission": "Não tem permissões para atualizar o utilizador \"{name}\"", "error.validation.accepted": "Por favor, confirme", "error.validation.alpha": "Por favor, use apenas caracteres entre a-z", - "error.validation.alphanum": - "Por favor, use apenas caracteres entre a-z ou 0-9", - "error.validation.between": - "Digite um valor entre \"{min}\" e \"{max}\"", + "error.validation.alphanum": "Por favor, use apenas caracteres entre a-z ou 0-9", + "error.validation.between": "Digite um valor entre \"{min}\" e \"{max}\"", "error.validation.boolean": "Por favor, confirme ou rejeite", - "error.validation.contains": - "Digite um valor que contenha \"{needle}\"", + "error.validation.contains": "Digite um valor que contenha \"{needle}\"", "error.validation.date": "Escolha uma data válida", - "error.validation.date.after": "Please enter a date after {date}", - "error.validation.date.before": "Please enter a date before {date}", - "error.validation.date.between": "Please enter a date between {min} and {max}", + "error.validation.date.after": "Escolha uma data posterior a {date}", + "error.validation.date.before": "Escolha uma data anterior a {date}", + "error.validation.date.between": "Escolha uma data compreendida entre {min} e {max}", "error.validation.denied": "Por favor, cancele", "error.validation.different": "O valor deve ser diferente de \"{other}\"", "error.validation.email": "Digite um endereço de email válido", @@ -210,18 +169,14 @@ "error.validation.less": "Digite um valor menor que {max}", "error.validation.match": "O valor não combina com o padrão esperado", "error.validation.max": "Digite um valor igual ou menor que {max}", - "error.validation.maxlength": - "Digite um valor curto. (no máximo {max} caracteres)", + "error.validation.maxlength": "Digite um valor curto. (no máximo {max} caracteres)", "error.validation.maxwords": "Digite menos que {max} palavra(s)", "error.validation.min": "Digite um valor igual ou maior que {min}", - "error.validation.minlength": - "Digite um valor maior. (no mínimo {min} caracteres)", + "error.validation.minlength": "Digite um valor maior. (no mínimo {min} caracteres)", "error.validation.minwords": "Digite ao menos {min} palavra(s)", "error.validation.more": "Digite um valor maior que {min}", - "error.validation.notcontains": - "Digite um valor que não contenha \"{needle}\"", - "error.validation.notin": - "Não digite nenhum destes valores: ({notIn})", + "error.validation.notcontains": "Digite um valor que não contenha \"{needle}\"", + "error.validation.notin": "Não digite nenhum destes valores: ({notIn})", "error.validation.option": "Escolha uma opção válida", "error.validation.num": "Digite um número válido", "error.validation.required": "Digite algo", @@ -231,15 +186,14 @@ "error.validation.time": "Digite uma hora válida", "error.validation.url": "Digite uma URL válida", - "field.required": "The field is required", + "field.required": "Este campo é necessário", "field.files.empty": "Nenhum arquivo selecionado", "field.pages.empty": "Nenhuma página selecionada", "field.structure.delete.confirm": "Deseja realmente excluir este registro?", "field.structure.empty": "Nenhum registro", "field.users.empty": "Nenhum utilizador selecionado", - "file.delete.confirm": - "Deseja realmente excluir
{filename}?", + "file.delete.confirm": "Deseja realmente excluir
{filename}?", "files": "Arquivos", "files.empty": "Nenhum arquivo", @@ -251,35 +205,28 @@ "installation": "Instalação", "installation.completed": "Painel instalado com sucesso", "installation.disabled": "Por padrão, o instalador do painel está desabilitado em servidores públicos. Por favor, execute o instalador numa máquina local ou habilite a opção panel.install.", - "installation.issues.accounts": - "A pasta /site/accounts não existe ou não possui permissão de escrita", - "installation.issues.content": - "A pasta /content não existe ou não possui permissão de escrita", + "installation.issues.accounts": "A pasta /site/accounts não existe ou não possui permissão de escrita", + "installation.issues.content": "A pasta /content não existe ou não possui permissão de escrita", "installation.issues.curl": "A extensão CURL é necessária", "installation.issues.headline": "O painel não pôde ser instalado", - "installation.issues.mbstring": - "A extensão MB String é necessária", - "installation.issues.media": - "A pasta /media não existe ou não possui permissão de escrita", + "installation.issues.mbstring": "A extensão MB String é necessária", + "installation.issues.media": "A pasta /media não existe ou não possui permissão de escrita", "installation.issues.php": "Certifique-se que está a usar o PHP 7+", - "installation.issues.server": - "O Kirby necessita do Apache, Nginx ou Caddy", + "installation.issues.server": "O Kirby necessita do Apache, Nginx ou Caddy", "installation.issues.sessions": "A pasta /site/sessions não existe ou não possui permissão de escrita", "language": "Idioma", "language.code": "Código", "language.convert": "Tornar padrão", - "language.convert.confirm": - "

Deseja realmente converter {name} para o idioma padrão? Esta ação não poderá ser revertida.

Se {name} tiver conteúdo não traduzido, partes do seu site poderão ficar sem conteúdo.

", + "language.convert.confirm": "

Deseja realmente converter {name} para o idioma padrão? Esta ação não poderá ser revertida.

Se {name} tiver conteúdo não traduzido, partes do seu site poderão ficar sem conteúdo.

", "language.create": "Adicionar novo idioma", - "language.delete.confirm": - "Deseja realmente excluir o idioma {name} incluíndo todas as traduções? Esta ação não poderá ser revertida!", + "language.delete.confirm": "Deseja realmente excluir o idioma {name} incluíndo todas as traduções? Esta ação não poderá ser revertida!", "language.deleted": "Idioma excluído", "language.direction": "Direção de leitura", "language.direction.ltr": "Esquerda para direita", "language.direction.rtl": "Direita para esquerda", "language.locale": "String de localização do PHP", - "language.locale.warning": "You are using a custom locale set up. Please modify it in the language file in /site/languages", + "language.locale.warning": "Está a usar configurações de localização personalizadas. Corrija as mesmas no ficheiro /site/languages", "language.name": "Nome", "language.updated": "Idioma atualizado", @@ -292,8 +239,7 @@ "license": "Licen\u00e7a do Kirby ", "license.buy": "Comprar uma licença", "license.register": "Registrar", - "license.register.help": - "Recebeu o código da sua licença por email após a compra. Por favor, copie e cole-o para completar o registro.", + "license.register.help": "Recebeu o código da sua licença por email após a compra. Por favor, copie e cole-o para completar o registro.", "license.register.label": "Por favor, digite o código da sua licença", "license.register.success": "Obrigado por apoiar o Kirby", "license.unregistered": "Esta é uma demonstração não registrada do Kirby", @@ -303,13 +249,13 @@ "loading": "A carregar", - "lock.unsaved": "Unsaved changes", - "lock.unsaved.empty": "There are no more unsaved changes", - "lock.isLocked": "Unsaved changes by {email}", - "lock.file.isLocked": "The file is currently being edited by {email} and cannot be changed.", - "lock.page.isLocked": "The page is currently being edited by {email} and cannot be changed.", - "lock.unlock": "Unlock", - "lock.isUnlocked": "Your unsaved changes have been overwritten by another user. You can download your changes to merge them manually.", + "lock.unsaved": "Alterações por guardar", + "lock.unsaved.empty": "Não existem alterações por guardar", + "lock.isLocked": "Alterações por guardar de {email}", + "lock.file.isLocked": "O arquivo está a ser editado por {email} e não pode ser alterado.", + "lock.page.isLocked": "A página está a ser editada por {email} e não pode ser alterada.", + "lock.unlock": "Desbloquear", + "lock.isUnlocked": "As suas alterações foram sobrepostas por outro utilizador. Pode descarregar as suas alterações e combiná-las manualmente.", "login": "Entrar", "login.remember": "Manter-me conectado", @@ -354,19 +300,16 @@ "page.changeStatus.position": "Selecione uma posição", "page.changeStatus.select": "Selecione um novo estado", "page.changeTemplate": "Alterar tema", - "page.delete.confirm": - "Deseja realmente excluir {title}?", - "page.delete.confirm.subpages": - "Esta página possui subpáginas.
Todas as subpáginas serão excluídas também.", + "page.delete.confirm": "Deseja realmente excluir {title}?", + "page.delete.confirm.subpages": "Esta página possui subpáginas.
Todas as subpáginas serão excluídas também.", "page.delete.confirm.title": "Digite o título da página para confirmar", "page.draft.create": "Criar rascunho", "page.duplicate.appendix": "Copiar", - "page.duplicate.files": "Copy files", - "page.duplicate.pages": "Copy pages", + "page.duplicate.files": "Copiar arquivos", + "page.duplicate.pages": "Copiar páginas", "page.status": "Estado", "page.status.draft": "Rascunho", - "page.status.draft.description": - "A página está em modo de rascunho e é visível somente para editores", + "page.status.draft.description": "A página está em modo de rascunho e é visível somente para editores", "page.status.listed": "Pública", "page.status.listed.description": "A página é pública para todos", "page.status.unlisted": "Não listadas", @@ -388,20 +331,21 @@ "replace": "Substituir", "retry": "Tentar novamente", "revert": "Descartar", + "revert.confirm": "Tem a certeza que pretende eliminar todas as alterações por guardar?", "role": "Função", - "role.admin.description": "The admin has all rights", - "role.admin.title": "Admin", + "role.admin.description": "O administrador tem todas as permissões.", + "role.admin.title": "Administrador", "role.all": "Todos", "role.empty": "Não há utilizadores com esta função", "role.description.placeholder": "Sem descrição", - "role.nobody.description": "This is a fallback role without any permissions", - "role.nobody.title": "Nobody", + "role.nobody.description": "Esta é uma função de salvaguarda sem permissões.", + "role.nobody.title": "Ninguém", "save": "Salvar", "search": "Buscar", - "section.required": "The section is required", + "section.required": "Esta seção é necessária", "select": "Selecionar", "settings": "Configurações", @@ -421,8 +365,8 @@ "toolbar.button.heading.3": "Título 3", "toolbar.button.italic": "Itálico", "toolbar.button.file": "Ficheiro", - "toolbar.button.file.select": "Select a file", - "toolbar.button.file.upload": "Upload a file", + "toolbar.button.file.select": "Selecione o arquivo", + "toolbar.button.file.upload": "Carregue o arquivo", "toolbar.button.link": "Link", "toolbar.button.ol": "Lista ordenada", "toolbar.button.ul": "Lista não-ordenada", @@ -433,17 +377,17 @@ "translation.locale": "pt_PT", "upload": "Enviar", - "upload.error.cantMove": "The uploaded file could not be moved", - "upload.error.cantWrite": "Failed to write file to disk", - "upload.error.default": "The file could not be uploaded", - "upload.error.extension": "File upload stopped by extension", - "upload.error.formSize": "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the form", - "upload.error.iniPostSize": "The uploaded file exceeds the post_max_size directive in php.ini", - "upload.error.iniSize": "The uploaded file exceeds the upload_max_filesize directive in php.ini", - "upload.error.noFile": "No file was uploaded", - "upload.error.noFiles": "No files were uploaded", - "upload.error.partial": "The uploaded file was only partially uploaded", - "upload.error.tmpDir": "Missing a temporary folder", + "upload.error.cantMove": "Não foi possível mover o arquivo carregado", + "upload.error.cantWrite": "Não foi possível guardar o arquivo no sistema de ficheiros.", + "upload.error.default": "Não foi possível carregar o arquivo", + "upload.error.extension": "A extensão do arquivo não permite o carregamento", + "upload.error.formSize": "O arquivo excede o tamanho MAX_FILE_SIZE", + "upload.error.iniPostSize": "O arquivo excede o tamanho post_max_size", + "upload.error.iniSize": "O arquivo carregado excede a definição upload_max_filesize do php.ini", + "upload.error.noFile": "Nenhum arquivo carregado", + "upload.error.noFiles": "Nenhuns arquivos carregados", + "upload.error.partial": "O arquivo foi parcialmente carregado", + "upload.error.tmpDir": "Pasta temporária em falta", "upload.errors": "Erro", "upload.progress": "A enviar…", @@ -451,8 +395,7 @@ "url.placeholder": "https://exemplo.pt", "user": "Utilizador", - "user.blueprint": - "Pode definir seções e campos de formulário adicionais para esta função de utilizador em /site/blueprints/users/{role}.yml", + "user.blueprint": "Pode definir seções e campos de formulário adicionais para esta função de utilizador em /site/blueprints/users/{role}.yml", "user.changeEmail": "Alterar email", "user.changeLanguage": "Alterar idioma", "user.changeName": "Renomear este utilizador", @@ -463,8 +406,7 @@ "user.changeRole.select": "Selecione uma nova função", "user.create": "Adicionar novo utilizador", "user.delete": "Excluir este utilizador", - "user.delete.confirm": - "Deseja realmente excluir
{email}?", + "user.delete.confirm": "Deseja realmente excluir
{email}?", "users": "Utilizadores", diff --git a/kirby/i18n/translations/ru.json b/kirby/i18n/translations/ru.json index fb29187..302632f 100755 --- a/kirby/i18n/translations/ru.json +++ b/kirby/i18n/translations/ru.json @@ -5,7 +5,7 @@ "cancel": "\u041e\u0442\u043c\u0435\u043d\u0438\u0442\u044c", "change": "\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c", "close": "\u0417\u0430\u043a\u0440\u044b\u0442\u044c", - "confirm": "Сохранить", + "confirm": "Ок", "copy": "Скопировать", "create": "Создать", @@ -34,7 +34,7 @@ "dialog.users.empty": "Нет пользователей для выбора", "email": "Эл. почта", - "email.placeholder": "pochta@domen.com", + "email.placeholder": "mail@example.com", "error.access.login": "Неправильный логин", "error.access.panel": "У вас нет права доступа к панели", @@ -42,10 +42,8 @@ "error.avatar.create.fail": "Не удалось загрузить фотографию профиля", "error.avatar.delete.fail": "\u0410\u0432\u0430\u0442\u0430\u0440 (\u0444\u043e\u0442\u043e) \u043a \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0443 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0443\u0434\u0430\u043b\u0435\u043d", - "error.avatar.dimensions.invalid": - "Пожалуйста, сделайте чтобы ширина или высота фотографии была меньше 3000 пикселей", - "error.avatar.mime.forbidden": - "Фотография профиля должна быть JPEG или PNG", + "error.avatar.dimensions.invalid": "Пожалуйста, сделайте чтобы ширина или высота фотографии была меньше 3000 пикселей", + "error.avatar.mime.forbidden": "Фотография профиля должна быть JPEG или PNG", "error.blueprint.notFound": "Не удалось загрузить blueprint \"{name}\"", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Неверный конвертер \"{converter}\"", "error.file.changeName.empty": "Название не может быть пустым", - "error.file.changeName.permission": - "У вас нет права поменять название \"{filename}\"", + "error.file.changeName.permission": "У вас нет права поменять название \"{filename}\"", "error.file.duplicate": "Файл с названием \"{filename}\" уже есть", - "error.file.extension.forbidden": - "Расширение файла \"{extension}\" неразрешено", - "error.file.extension.missing": - "Файлу \"{filename}\" не хватает расширения", + "error.file.extension.forbidden": "Расширение файла \"{extension}\" неразрешено", + "error.file.extension.missing": "Файлу \"{filename}\" не хватает расширения", "error.file.maxheight": "Высота картинки не должна превышать {height} px", "error.file.maxsize": "Файл слишком большой", "error.file.maxwidth": "Ширина картинки не должна превышать {width} px", - "error.file.mime.differs": - "Загруженный файл должен быть того же mime типа: \"{mime}\"", + "error.file.mime.differs": "Загруженный файл должен быть того же mime типа: \"{mime}\"", "error.file.mime.forbidden": "Тип медиа \"{mime}\" не допустим", "error.file.mime.invalid": "Неверный тип mime: {mime}", - "error.file.mime.missing": - "Не удалось определить тип медиа для файла \"{filename}\"", + "error.file.mime.missing": "Не удалось определить тип медиа для файла \"{filename}\"", "error.file.minheight": "Высота файла должна быть хотя бы {height} px", "error.file.minsize": "Файл слишком маленький", "error.file.minwidth": "Ширина файла должна быть хотя бы {width} px", @@ -90,146 +83,108 @@ "error.license.email": "Пожалуйста, введите правильный адрес эл. почты", "error.license.verification": "Лицензия не подтверждена", - "error.page.changeSlug.permission": - "\u0412\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c URL \u044d\u0442\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b", - "error.page.changeStatus.incomplete": - "На странице есть ошибки и поэтому ее нельзя опубликовать", - "error.page.changeStatus.permission": - "Невозможно поменять статус для этой страницы", - "error.page.changeStatus.toDraft.invalid": - "Невозможно конвертировать в черновик страницу \"{slug}\"", - "error.page.changeTemplate.invalid": - "Невозможно поменять шаблон страницы \"{slug}\"", - "error.page.changeTemplate.permission": - "У вас нет права поменять шаблон для \"{slug}\"", + "error.page.changeSlug.permission": "\u0412\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c URL \u044d\u0442\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b", + "error.page.changeStatus.incomplete": "На странице есть ошибки и поэтому ее нельзя опубликовать", + "error.page.changeStatus.permission": "Невозможно поменять статус для этой страницы", + "error.page.changeStatus.toDraft.invalid": "Невозможно конвертировать в черновик страницу \"{slug}\"", + "error.page.changeTemplate.invalid": "Невозможно поменять шаблон страницы \"{slug}\"", + "error.page.changeTemplate.permission": "У вас нет права поменять шаблон для \"{slug}\"", "error.page.changeTitle.empty": "Название не может быть пустым", - "error.page.changeTitle.permission": - "у вас нет права поменять название \"{slug}\"", + "error.page.changeTitle.permission": "у вас нет права поменять название \"{slug}\"", "error.page.create.permission": "У вас нет права создать \"{slug}\"", "error.page.delete": "Невозможно удалить страницу \"{slug}\"", "error.page.delete.confirm": "Впишите название страницы чтобы подтвердить", - "error.page.delete.hasChildren": - "У страницы есть внутренние страницы, поэтому ее невозможно удалить", + "error.page.delete.hasChildren": "У страницы есть внутренние страницы, поэтому ее невозможно удалить", "error.page.delete.permission": "У вас нет права удалить \"{slug}\"", - "error.page.draft.duplicate": - "Черновик страницы с аппендиксом URL \"{slug}\" уже есть", - "error.page.duplicate": - "Страница с аппендиксом URL \"{slug}\" уже есть", + "error.page.draft.duplicate": "Черновик страницы с аппендиксом URL \"{slug}\" уже есть", + "error.page.duplicate": "Страница с аппендиксом URL \"{slug}\" уже есть", "error.page.duplicate.permission": "У вас нет права дублировать \"{slug}\"", "error.page.notFound": "\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u0430", - "error.page.num.invalid": - "Пожалуйста, впишите правильное число сортировки. Число не может быть отрицательным.", + "error.page.num.invalid": "Пожалуйста, впишите правильное число сортировки. Число не может быть отрицательным.", "error.page.slug.invalid": "Пожалуйста, впишите правильный префикс URL", "error.page.sort.permission": "Невозможно сортировать страницу \"{slug}\"", "error.page.status.invalid": "Пожалуйста, установите верный статус страницы", "error.page.undefined": "\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u0430", "error.page.update.permission": "У вас нет права обновить \"{slug}\"", - "error.section.files.max.plural": - "Нельзя добавить больше чем {max} файлов в секции \"{section}\"", - "error.section.files.max.singular": - "Можно добавить не больше 1 файла в секции \"{section}\"", - "error.section.files.min.plural": - "Секция \"{section}\" требует хотя бы {min} файлов", - "error.section.files.min.singular": - "Секция \"{section}\" требует хотя бы 1 файл", + "error.section.files.max.plural": "Нельзя добавить больше чем {max} файлов в секции \"{section}\"", + "error.section.files.max.singular": "Можно добавить не больше 1 файла в секции \"{section}\"", + "error.section.files.min.plural": "Секция \"{section}\" требует хотя бы {min} файлов", + "error.section.files.min.singular": "Секция \"{section}\" требует хотя бы 1 файл", - "error.section.pages.max.plural": - "Можно добавить не больше {max} страниц в секции \"{section}\"", - "error.section.pages.max.singular": - "Нельзя добавить больше чем 1 страницу в секции \"{section}\"", - "error.section.pages.min.plural": - "Секция \"{section}\" требует хотя бы {min} страниц", - "error.section.pages.min.singular": - "Секция \"{section}\" требует хотя бы одну страницу", + "error.section.pages.max.plural": "Можно добавить не больше {max} страниц в секции \"{section}\"", + "error.section.pages.max.singular": "Нельзя добавить больше чем 1 страницу в секции \"{section}\"", + "error.section.pages.min.plural": "Секция \"{section}\" требует хотя бы {min} страниц", + "error.section.pages.min.singular": "Секция \"{section}\" требует хотя бы одну страницу", "error.section.notLoaded": "Секция \"{name}\" не может быть загружена", "error.section.type.invalid": "Тип секции {type} неверный", "error.site.changeTitle.empty": "Название не может быть пустым", - "error.site.changeTitle.permission": - "У вас нет права поменять название сайта", + "error.site.changeTitle.permission": "У вас нет права поменять название сайта", "error.site.update.permission": "У вас нет права обновить сайт", "error.template.default.notFound": "Нет шаблона по умолчанию", - "error.user.changeEmail.permission": - "У вас нет права поменять эл. почту пользователя \"{name}\"", - "error.user.changeLanguage.permission": - "У вас нет права поменять язык для пользователя \"{name}\"", - "error.user.changeName.permission": - "У вас нет права поменять имя пользователя \"{name}\"", - "error.user.changePassword.permission": - "У вас нет права поменять пароль для пользователя \"{name}\"", - "error.user.changeRole.lastAdmin": - "Роль единственного администратора нельзя поменять", - "error.user.changeRole.permission": - "У вас нет права поменять поль для пользователя \"{name}\"", - "error.user.changeRole.toAdmin": - "У вас нет прав предоставить роль администратора", + "error.user.changeEmail.permission": "У вас нет права поменять эл. почту пользователя \"{name}\"", + "error.user.changeLanguage.permission": "У вас нет права поменять язык для пользователя \"{name}\"", + "error.user.changeName.permission": "У вас нет права поменять имя пользователя \"{name}\"", + "error.user.changePassword.permission": "У вас нет права поменять пароль для пользователя \"{name}\"", + "error.user.changeRole.lastAdmin": "Роль единственного администратора нельзя поменять", + "error.user.changeRole.permission": "У вас нет права поменять поль для пользователя \"{name}\"", + "error.user.changeRole.toAdmin": "У вас нет прав предоставить роль администратора", "error.user.create.permission": "У вас нет права создать этого пользователя", "error.user.delete": "\u0410\u043a\u043a\u0430\u0443\u043d\u0442 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0443\u0434\u0430\u043b\u0435\u043d", "error.user.delete.lastAdmin": "\u0412\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430", "error.user.delete.lastUser": "Нельзя удалить единственного пользователя", - "error.user.delete.permission": - "У вас нет права удалить пользователя \"{name}\"", - "error.user.duplicate": - "Пользователь с эл. почтой \"{email}\" уже есть", + "error.user.delete.permission": "У вас нет права удалить пользователя \"{name}\"", + "error.user.duplicate": "Пользователь с эл. почтой \"{email}\" уже есть", "error.user.email.invalid": "Пожалуйста, введите правильный адрес эл. почты", - "error.user.language.invalid": "Впишите правильный язык", + "error.user.language.invalid": "Введите правильный язык", "error.user.notFound": "\u0410\u043a\u043a\u0430\u0443\u043d\u0442 \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d", - "error.user.password.invalid": - "Пожалуйста, впишите правильный пароль. Он должен быть минимум из 8 символов.", + "error.user.password.invalid": "Пожалуйста, введите правильный пароль. Он должен состоять минимум из 8 символов.", "error.user.password.notSame": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435 \u043f\u0430\u0440\u043e\u043b\u044c", "error.user.password.undefined": "У пользователя нет пароля", - "error.user.role.invalid": "Впишите правильную роль", - "error.user.update.permission": - "У вас нет права обновить пользователя \"{name}\"", + "error.user.role.invalid": "Введите правильную роль", + "error.user.update.permission": "У вас нет права обновить пользователя \"{name}\"", "error.validation.accepted": "Пожалуйста, подтвердите", - "error.validation.alpha": "Пожалуйста, впишите только буквы a-z", - "error.validation.alphanum": - "Пожалуйста, впишите только буквы a-z или числа 0-9", - "error.validation.between": - "Пожалуйста, впишите значение от \"{min}\" до \"{max}\"", + "error.validation.alpha": "Пожалуйста, введите только буквы a-z", + "error.validation.alphanum": "Пожалуйста, введите только буквы a-z или числа 0-9", + "error.validation.between": "Пожалуйста, введите значение от \"{min}\" до \"{max}\"", "error.validation.boolean": "Пожалуйста, подтвердите или отмените", - "error.validation.contains": - "Пожалуйста, впишите значение, которое содержит \"{needle}\"", - "error.validation.date": "Пожалуйста, впишите правильную дату", - "error.validation.date.after": "Пожалуйста, впишите дату после {date}", - "error.validation.date.before": "Пожалуйста, впишите дату до {date}", - "error.validation.date.between": "Пожалуйста, впишите дату между {min} и {max}", + "error.validation.contains": "Пожалуйста, впишите значение, которое содержит \"{needle}\"", + "error.validation.date": "Пожалуйста, укажите правильную дату", + "error.validation.date.after": "Пожалуйста, укажите дату после {date}", + "error.validation.date.before": "Пожалуйста, укажите дату до {date}", + "error.validation.date.between": "Пожалуйста, укажите дату между {min} и {max}", "error.validation.denied": "Пожалуйста отмените", "error.validation.different": "Значение не может быть \"{other}\"", "error.validation.email": "Пожалуйста, введите правильный адрес эл. почты", "error.validation.endswith": "Значение должно заканчиваться с \"{end}\"", - "error.validation.filename": "Пожалуйста, впишите правильное название файла", - "error.validation.in": "Пожалуйста, впишите одно из следующих: ({in})", - "error.validation.integer": "Пожалуйста, впишите правильное целое число", - "error.validation.ip": "Пожалуйста, впишите правильный IP адрес", - "error.validation.less": "Пожалуйста, впишите значение меньше чем {max}", + "error.validation.filename": "Пожалуйста, введите правильное название файла", + "error.validation.in": "Пожалуйста, введите одно из следующих: ({in})", + "error.validation.integer": "Пожалуйста, введите правильное целое число", + "error.validation.ip": "Пожалуйста, введите правильный IP адрес", + "error.validation.less": "Пожалуйста, введите значение меньше чем {max}", "error.validation.match": "Значение не соответствует ожидаемому шаблону", - "error.validation.max": "Пожалуйста, впишите значение равное или больше чем {max}", - "error.validation.maxlength": - "Пожалуйста, впишите значение короче (макс. {max} символов)", - "error.validation.maxwords": "Пожалуйста, впишите не более {max} слов ", - "error.validation.min": "Пожалуйста, впишите значение равное или больше чем {min}", - "error.validation.minlength": - "Пожалуйста, впишите значение длиннее (мин. {min} символов)", - "error.validation.minwords": "Пожалуйста, впишите хотя бы {min} слов", - "error.validation.more": "Пожалуйста, впишите значение больше, чем {min}", - "error.validation.notcontains": - "Пожалуйста, впишите значение, которое не содержит \"{needle}\"", - "error.validation.notin": - "Пожалуйста, не вписывайте одно из: ({notIn})", + "error.validation.max": "Пожалуйста, введите значение равное или больше чем {max}", + "error.validation.maxlength": "Пожалуйста, введите значение короче (макс. {max} символов)", + "error.validation.maxwords": "Пожалуйста, введите не более {max} слов ", + "error.validation.min": "Пожалуйста, введите значение равное или больше чем {min}", + "error.validation.minlength": "Пожалуйста, введите значение длиннее (мин. {min} символов)", + "error.validation.minwords": "Пожалуйста, введите хотя бы {min} слов", + "error.validation.more": "Пожалуйста, введите значение больше, чем {min}", + "error.validation.notcontains": "Пожалуйста, введите значение, которое не содержит \"{needle}\"", + "error.validation.notin": "Пожалуйста, не вписывайте одно из: ({notIn})", "error.validation.option": "Пожалуйста, выберите правильную опцию ", - "error.validation.num": "Пожалуйста, впишите правильный номер", - "error.validation.required": "Пожалуйста, впишите что-нибудь", - "error.validation.same": "Пожалуйста, впишите \"{other}\"", + "error.validation.num": "Пожалуйста, введите правильный номер", + "error.validation.required": "Пожалуйста, введите что-нибудь", + "error.validation.same": "Пожалуйста, введите \"{other}\"", "error.validation.size": "Значение размера должно быть \"{size}\"", "error.validation.startswith": "Значение должно начинаться с \"{start}\"", - "error.validation.time": "Пожалуйста, впишите правильную дату", - "error.validation.url": "Пожалуйста, впишите правильный URL", + "error.validation.time": "Пожалуйста, введите правильную дату", + "error.validation.url": "Пожалуйста, введите правильный URL", "field.required": "Поле обязательно", "field.files.empty": "Еще не выбраны файлы", @@ -238,8 +193,7 @@ "field.structure.empty": "Еще нет записей", "field.users.empty": "Еще нет пользователей", - "file.delete.confirm": - "Вы точно хотите удалить файл?", + "file.delete.confirm": "Вы точно хотите удалить файл
{filename}?", "files": "Файлы", "files.empty": "Еще нет файлов", @@ -251,29 +205,22 @@ "installation": "Установка", "installation.completed": "Панель установлена", "installation.disabled": "Установка панели по умолчанию отключена на общедоступных серверах. Пожалуйста запустите установку на локальном сервере или включите такую возможность с помощью опции panel.install", - "installation.issues.accounts": - "Каталог /site/accounts не существует или не имеет прав записи", - "installation.issues.content": - "Каталог /content не существует или не имеет прав записи", + "installation.issues.accounts": "Каталог /site/accounts не существует или не имеет прав записи", + "installation.issues.content": "Каталог /content не существует или не имеет прав записи", "installation.issues.curl": "Расширение CURL необходимо", "installation.issues.headline": "Не удалось установить панель", - "installation.issues.mbstring": - "Расширение MB String необходимо", - "installation.issues.media": - "Каталог /media не существует или нет прав записи", + "installation.issues.mbstring": "Расширение MB String необходимо", + "installation.issues.media": "Каталог /media не существует или нет прав записи", "installation.issues.php": "Убедитесь, что используется PHP 7+", - "installation.issues.server": - "Kirby требует Apache, Nginx или Caddy ", + "installation.issues.server": "Kirby требует Apache, Nginx или Caddy ", "installation.issues.sessions": "Каталог /site/sessions не существует или нет прав записи", "language": "\u042f\u0437\u044b\u043a", "language.code": "Код", "language.convert": "Установить по умолчанию", - "language.convert.confirm": - "

Вы точно хотите конвертировать {name} в главный язык? Это нельзя будет отменить.

Если {name} имеет непереведенный контент, то больше не будет верного каскада и части вашего сайта могут быть пустыми.

", + "language.convert.confirm": "

Вы точно хотите конвертировать {name} в главный язык? Это нельзя будет отменить.

Если {name} имеет непереведенный контент, то больше не будет верного каскада и части вашего сайта могут быть пустыми.

", "language.create": "Добавить новый язык", - "language.delete.confirm": - "Вы точно хотите удалить {name} язык, включая все переводы? Это нельзя будет вернуть.", + "language.delete.confirm": "Вы точно хотите удалить {name} язык, включая все переводы? Это нельзя будет вернуть.", "language.deleted": "Язык удален", "language.direction": "Направление чтения", "language.direction.ltr": "Слева направо", @@ -292,8 +239,7 @@ "license": "\u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f Kirby", "license.buy": "Купить лицензию", "license.register": "Зарегистрировать", - "license.register.help": - "После покупки вы получили по эл. почте код лицензии. Пожалуйста скопируйте и вставьте сюда чтобы зарегистрировать.", + "license.register.help": "После покупки вы получили по эл. почте код лицензии. Пожалуйста скопируйте и вставьте сюда чтобы зарегистрировать.", "license.register.label": "Пожалуйста вставьте код лицензии", "license.register.success": "Спасибо за поддержку Kirby", "license.unregistered": "Это незарегистрированная версия Kirby", @@ -325,7 +271,7 @@ "months.april": "\u0410\u043f\u0440\u0435\u043b\u044c", "months.august": "\u0410\u0432\u0433\u0443\u0441\u0442", "months.december": "\u0414\u0435\u043a\u0430\u0431\u0440\u044c", - "months.february": "\u0424\u0435\u0432\u0440\u0430\u043b\u044c", + "months.february": "Февраль", "months.january": "\u042f\u043d\u0432\u0430\u0440\u044c", "months.july": "\u0418\u044e\u043b\u044c", "months.june": "\u0418\u044e\u043d\u044c", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Пожалуйста, выберите позицию", "page.changeStatus.select": "Выбрать новый статус", "page.changeTemplate": "Поменять шаблон", - "page.delete.confirm": - "Вы точно хотите удалить эту страницу?", - "page.delete.confirm.subpages": - "У этой страницы есть внутренние страницы.
Все внутренние страницы так же будут удалены.", + "page.delete.confirm": "Вы точно хотите удалить страницу {title}?", + "page.delete.confirm.subpages": "У этой страницы есть внутренние страницы.
Все внутренние страницы так же будут удалены.", "page.delete.confirm.title": "Напишите название страницы, чтобы подтвердить", "page.draft.create": "Создать черновик", "page.duplicate.appendix": "Скопировать", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Копировать страницы", "page.status": "Статус", "page.status.draft": "Черновик", - "page.status.draft.description": - "Страница в режиме черновика и видна только для авторизированных редакторов", + "page.status.draft.description": "Страница находится в черновом режиме и видна только зарегистрированным пользователям или по секретной ссылке", "page.status.listed": "Опубликована", "page.status.listed.description": "Страница доступна для всех посетителей", "page.status.unlisted": "Скрыта", @@ -388,10 +331,11 @@ "replace": "\u0417\u0430\u043c\u0435\u043d\u0438\u0442\u044c", "retry": "\u041f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c", "revert": "\u0421\u0431\u0440\u043e\u0441", + "revert.confirm": "Вы действительно хотите удалить все несохраненные изменения?", "role": "\u0420\u043e\u043b\u044c", - "role.admin.description": "Admin имеет все права", - "role.admin.title": "Admin", + "role.admin.description": "Администратор имеет все права", + "role.admin.title": "Администратор", "role.all": "Все", "role.empty": "Нет пользователей с такой ролью", "role.description.placeholder": "Без описания", @@ -414,12 +358,12 @@ "toolbar.button.code": "Код", "toolbar.button.bold": "\u0416\u0438\u0440\u043d\u044b\u0439 \u0448\u0440\u0438\u0444\u0442", - "toolbar.button.email": "\u042d\u043b.\u043f\u043e\u0447\u0442\u0430", + "toolbar.button.email": "Эл. почта", "toolbar.button.headings": "Заголовки", "toolbar.button.heading.1": "Заголовок 1", "toolbar.button.heading.2": "Заголовок 2", "toolbar.button.heading.3": "Заголовок 3", - "toolbar.button.italic": "\u041d\u0430\u043a\u043b\u043e\u043d\u043d\u044b\u0439 \u0448\u0440\u0438\u0444\u0442", + "toolbar.button.italic": "Курсив", "toolbar.button.file": "Файл", "toolbar.button.file.select": "Выбрать файл", "toolbar.button.file.upload": "Закачать файл", @@ -427,7 +371,7 @@ "toolbar.button.ol": "Нумерованный список", "toolbar.button.ul": "Маркированный список", - "translation.author": "Команда Кирби", + "translation.author": "Команда Kirby", "translation.direction": "ltr", "translation.name": "Русский (Russian)", "translation.locale": "ru_RU", @@ -447,24 +391,22 @@ "upload.errors": "Ошибка", "upload.progress": "Закачивается...", - "url": "Url", + "url": "URL", "url.placeholder": "https://example.com", "user": "Пользователь", - "user.blueprint": - "Вы можете определить новые секции и поля формы для этой роли пользователя в /site/blueprints/users/{role}.yml", + "user.blueprint": "Вы можете определить новые секции и поля формы для этой роли пользователя в /site/blueprints/users/{role}.yml", "user.changeEmail": "Поменять эл. почту", "user.changeLanguage": "Поменять язык", "user.changeName": "Переназвать этого пользователя", "user.changePassword": "Поменять пароль", "user.changePassword.new": "Новый пароль", - "user.changePassword.new.confirm": "Подтвердить новый пароль", + "user.changePassword.new.confirm": "Подтвердить новый пароль…", "user.changeRole": "Поменять роль", "user.changeRole.select": "Выбрать новую роль", "user.create": "Добавить нового пользователя", "user.delete": "Удалить этого пользователя", - "user.delete.confirm": - "\u0412\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0430\u043a\u043a\u0430\u0443\u043d\u0442?", + "user.delete.confirm": "Вы действительно хотите аккаунт
{email}?", "users": "Пользователи", diff --git a/kirby/i18n/translations/sk.json b/kirby/i18n/translations/sk.json index 52d8fec..b4b23d0 100755 --- a/kirby/i18n/translations/sk.json +++ b/kirby/i18n/translations/sk.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "Profilový obrázok sa nepodarilo nahrať", "error.avatar.delete.fail": "Profilový obrázok sa nepodarilo zmazať", - "error.avatar.dimensions.invalid": - "Prosím, dodržte, aby šírka a výška profilového obrázka bola menšia ako 3000 pixelov.", - "error.avatar.mime.forbidden": - "Profilový obrázok musí byť súbor JPEG alebo PNG.", + "error.avatar.dimensions.invalid": "Prosím, dodržte, aby šírka a výška profilového obrázka bola menšia ako 3000 pixelov.", + "error.avatar.mime.forbidden": "Profilový obrázok musí byť súbor JPEG alebo PNG.", "error.blueprint.notFound": "Blueprint \"{name}\" sa nepodarilo načítať", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Neplatný converter \"{converter}\"", "error.file.changeName.empty": "The name must not be empty", - "error.file.changeName.permission": - "Nemáte povolenie na zmenu názvu pre \"{filename}\"", + "error.file.changeName.permission": "Nemáte povolenie na zmenu názvu pre \"{filename}\"", "error.file.duplicate": "Súbor s názvom \"{filename}\" už existuje", - "error.file.extension.forbidden": - "Prípona \"{extension}\" nie je povolená", - "error.file.extension.missing": - "Prípona pre \"{filename}\" chýba", + "error.file.extension.forbidden": "Prípona \"{extension}\" nie je povolená", + "error.file.extension.missing": "Prípona pre \"{filename}\" chýba", "error.file.maxheight": "The height of the image must not exceed {height} pixels", "error.file.maxsize": "The file is too large", "error.file.maxwidth": "The width of the image must not exceed {width} pixels", - "error.file.mime.differs": - "MIME typ nahratého súboru msa musí zhodovať s \"{mime}\"", + "error.file.mime.differs": "MIME typ nahratého súboru msa musí zhodovať s \"{mime}\"", "error.file.mime.forbidden": "Typ média \"{mime}\" nie je povolený", "error.file.mime.invalid": "Invalid mime type: {mime}", - "error.file.mime.missing": - "Typ média pre \"{filename}\" sa nepodarilo zistiť", + "error.file.mime.missing": "Typ média pre \"{filename}\" sa nepodarilo zistiť", "error.file.minheight": "The height of the image must be at least {height} pixels", "error.file.minsize": "The file is too small", "error.file.minwidth": "The width of the image must be at least {width} pixels", @@ -90,111 +83,77 @@ "error.license.email": "Prosím, zadajte platnú e-mailovú adresu", "error.license.verification": "The license could not be verified", - "error.page.changeSlug.permission": - "Nemáte povolenie na zmenu URL príponu pre \"{slug}\"", - "error.page.changeStatus.incomplete": - "Stránka obsahuje chyby a nemôže byť zverejnená", - "error.page.changeStatus.permission": - "Status tejto stránky nemôže byť zmenený", - "error.page.changeStatus.toDraft.invalid": - "Stránka \"{slug}\" nemôže byť zmenená na koncept.", - "error.page.changeTemplate.invalid": - "Šablónu pre stránku \"{slug}\" nie je možné zmeniť", - "error.page.changeTemplate.permission": - "Nemáte povolenie na zmenu šablóny pre \"{slug}\"", + "error.page.changeSlug.permission": "Nemáte povolenie na zmenu URL príponu pre \"{slug}\"", + "error.page.changeStatus.incomplete": "Stránka obsahuje chyby a nemôže byť zverejnená", + "error.page.changeStatus.permission": "Status tejto stránky nemôže byť zmenený", + "error.page.changeStatus.toDraft.invalid": "Stránka \"{slug}\" nemôže byť zmenená na koncept.", + "error.page.changeTemplate.invalid": "Šablónu pre stránku \"{slug}\" nie je možné zmeniť", + "error.page.changeTemplate.permission": "Nemáte povolenie na zmenu šablóny pre \"{slug}\"", "error.page.changeTitle.empty": "Titulok nemôže byť prázdny", - "error.page.changeTitle.permission": - "Nemáte povolenie na zmenu titulku pre \"{slug}\"", + "error.page.changeTitle.permission": "Nemáte povolenie na zmenu titulku pre \"{slug}\"", "error.page.create.permission": "Nemáte povolenie na vytvorenie \"{slug}\"", "error.page.delete": "Stránku \"{slug}\" nie je možné vymazať", "error.page.delete.confirm": "Prosím, zadajte titulok stránky pre potvrdenie", - "error.page.delete.hasChildren": - "Táto stránka obsahuje podstránky a nemôže byť zmazaná", + "error.page.delete.hasChildren": "Táto stránka obsahuje podstránky a nemôže byť zmazaná", "error.page.delete.permission": "Nemáte povolenie na zmazanie stránky \"{slug}\"", - "error.page.draft.duplicate": - "Koncept stránky s URL appendix-om \"{slug}\" už existuje", - "error.page.duplicate": - "Stránka s URL appendix-om \"{slug}\" už existuje", + "error.page.draft.duplicate": "Koncept stránky s URL appendix-om \"{slug}\" už existuje", + "error.page.duplicate": "Stránka s URL appendix-om \"{slug}\" už existuje", "error.page.duplicate.permission": "You are not allowed to duplicate \"{slug}\"", "error.page.notFound": "Stránku \"{slug}\" nie je možné nájsť", - "error.page.num.invalid": - "Prosím, zadajte platné číslo pre radenie. Čísla nemôžu byť záporné.", + "error.page.num.invalid": "Prosím, zadajte platné číslo pre radenie. Čísla nemôžu byť záporné.", "error.page.slug.invalid": "Prosím, zadajte platný URL prefix.", "error.page.sort.permission": "Stránku \"{slug}\" nie je možné preradiť.", "error.page.status.invalid": "Prosím, nastavte platnú status pre stránku", "error.page.undefined": "Stránku nie je možné nájsť", "error.page.update.permission": "Nemáte povolenie na aktualizáciu \"{slug}\"", - "error.section.files.max.plural": - "Nemôžete pridať viac ako {max} súbory/ov do sekcie \"{section}\"", - "error.section.files.max.singular": - "Nemôžete pridať viac ako 1 súbor do sekcie \"{section}\"", - "error.section.files.min.plural": - "The \"{section}\" section requires at least {min} files", - "error.section.files.min.singular": - "The \"{section}\" section requires at least one file", + "error.section.files.max.plural": "Nemôžete pridať viac ako {max} súbory/ov do sekcie \"{section}\"", + "error.section.files.max.singular": "Nemôžete pridať viac ako 1 súbor do sekcie \"{section}\"", + "error.section.files.min.plural": "The \"{section}\" section requires at least {min} files", + "error.section.files.min.singular": "The \"{section}\" section requires at least one file", - "error.section.pages.max.plural": - "Nemôžete pridať viac ako {max} stránky/ok do sekcie \"{section}\"", - "error.section.pages.max.singular": - "Nemôžete pridať viac ako 1 stránku do sekcie \"{section}\"", - "error.section.pages.min.plural": - "The \"{section}\" section requires at least {min} pages", - "error.section.pages.min.singular": - "The \"{section}\" section requires at least one page", + "error.section.pages.max.plural": "Nemôžete pridať viac ako {max} stránky/ok do sekcie \"{section}\"", + "error.section.pages.max.singular": "Nemôžete pridať viac ako 1 stránku do sekcie \"{section}\"", + "error.section.pages.min.plural": "The \"{section}\" section requires at least {min} pages", + "error.section.pages.min.singular": "The \"{section}\" section requires at least one page", "error.section.notLoaded": "Sekciu \"{name}\" sa nepodarilo nahrať", "error.section.type.invalid": "Typ sekcie \"{type}\" nie je platný", "error.site.changeTitle.empty": "Titulok nemôže byť prázdny", - "error.site.changeTitle.permission": - "Nemáte povolenie na zmenu titulku pre portál", + "error.site.changeTitle.permission": "Nemáte povolenie na zmenu titulku pre portál", "error.site.update.permission": "Nemáte povolenie na aktualizovanie portálu", "error.template.default.notFound": "Predvolená šablóna neexistuje", - "error.user.changeEmail.permission": - "Nemáte povolenie na zmenu e-mailu pre užívateľa \"{name}\"", - "error.user.changeLanguage.permission": - "Nemáte povolenie na zmenu jazyka pre užívateľa \"{name}\"", - "error.user.changeName.permission": - "Nemáte povolenie na zmenu mena pre užívateľa \"{name}\"", - "error.user.changePassword.permission": - "Nemáte povolenie na zmenu hesla pre užívateľa \"{name}\"", - "error.user.changeRole.lastAdmin": - "Rolu pre posledného administrátora nie je možné zmeniť", - "error.user.changeRole.permission": - "Nemáte povolenie na zmenu role pre užívateľa \"{name}\"", - "error.user.changeRole.toAdmin": - "You are not allowed to promote someone to the admin role", + "error.user.changeEmail.permission": "Nemáte povolenie na zmenu e-mailu pre užívateľa \"{name}\"", + "error.user.changeLanguage.permission": "Nemáte povolenie na zmenu jazyka pre užívateľa \"{name}\"", + "error.user.changeName.permission": "Nemáte povolenie na zmenu mena pre užívateľa \"{name}\"", + "error.user.changePassword.permission": "Nemáte povolenie na zmenu hesla pre užívateľa \"{name}\"", + "error.user.changeRole.lastAdmin": "Rolu pre posledného administrátora nie je možné zmeniť", + "error.user.changeRole.permission": "Nemáte povolenie na zmenu role pre užívateľa \"{name}\"", + "error.user.changeRole.toAdmin": "You are not allowed to promote someone to the admin role", "error.user.create.permission": "Nemáte povolenie na vytvorenie tohto užívateľa", "error.user.delete": "Užívateľa \"{name}\" nie je možné zmazať", "error.user.delete.lastAdmin": "Posledného administrátora nie je možné zmazať", "error.user.delete.lastUser": "Posledného užívateľa nie je možné zmazať", - "error.user.delete.permission": - "Nemáte povolenie na zmazanie užívateľa \"{name}\"", - "error.user.duplicate": - "Užívateľ s e-mailovou adresou \"{email}\" už existuje", + "error.user.delete.permission": "Nemáte povolenie na zmazanie užívateľa \"{name}\"", + "error.user.duplicate": "Užívateľ s e-mailovou adresou \"{email}\" už existuje", "error.user.email.invalid": "Prosím, zadajte platnú e-mailovú adresu", "error.user.language.invalid": "Prosím, zadajte platný jazyk", "error.user.notFound": "Užívateľa \"{name}\" nie je možné nájsť", - "error.user.password.invalid": - "Prosím, zadajte platné heslo. Dĺžka hesla musí byť aspoň 8 znakov.", + "error.user.password.invalid": "Prosím, zadajte platné heslo. Dĺžka hesla musí byť aspoň 8 znakov.", "error.user.password.notSame": "Heslá nie sú rovnaké", "error.user.password.undefined": "Užívateľ nemá heslo", "error.user.role.invalid": "Prosím, zadajte platnú rolu", - "error.user.update.permission": - "Nemáte povolenie na aktualizáciu užívateľa \"{name}\"", + "error.user.update.permission": "Nemáte povolenie na aktualizáciu užívateľa \"{name}\"", "error.validation.accepted": "Prosím, potvrďte", "error.validation.alpha": "Prosím, zadajte len znaky z hlások a-z", - "error.validation.alphanum": - "Prosím, zadajte len znaky z hlások a-z a čísloviek 0-9", - "error.validation.between": - "Prosím, zadajte hodnotu od \"{min}\" do \"{max}\"", + "error.validation.alphanum": "Prosím, zadajte len znaky z hlások a-z a čísloviek 0-9", + "error.validation.between": "Prosím, zadajte hodnotu od \"{min}\" do \"{max}\"", "error.validation.boolean": "Prosím, potvrďte alebo odmietnite", - "error.validation.contains": - "Prosím, zadajte hodnotu, ktorá obsahuje \"{needle}\"", + "error.validation.contains": "Prosím, zadajte hodnotu, ktorá obsahuje \"{needle}\"", "error.validation.date": "Prosím, zadajte platný dátum", "error.validation.date.after": "Please enter a date after {date}", "error.validation.date.before": "Please enter a date before {date}", @@ -210,18 +169,14 @@ "error.validation.less": "Prosím, zadajte hodnotu menšiu ako {max}", "error.validation.match": "Hodnota nezodpovedá očakávanému vzoru", "error.validation.max": "Prosím, zadajte hodnotu rovnú alebo menšiu ako {max}", - "error.validation.maxlength": - "Prosím, zadajte kratšiu hodnotu. (max. {max} charaktery/ov)", + "error.validation.maxlength": "Prosím, zadajte kratšiu hodnotu. (max. {max} charaktery/ov)", "error.validation.maxwords": "Prosím, nezadávajte viac ako {max} slovo/á/ov", "error.validation.min": "Prosím, zadajte hodnotu rovnú alebo väčšiu ako {min}", - "error.validation.minlength": - "Prosím, zadajte dlhšiu hodnotu. (min. {min} charaktery/ov)", + "error.validation.minlength": "Prosím, zadajte dlhšiu hodnotu. (min. {min} charaktery/ov)", "error.validation.minwords": "Prosím, zadajte aspoň {min} slovo/á/ov", "error.validation.more": "Prosím zadajte hodnotu väčšiu ako {min}", - "error.validation.notcontains": - "Prosím, zadajte hodnotu, ktorá neobsahuje \"{needle}\"", - "error.validation.notin": - "Prosím, nezadávajte ani jedno z nasledujúcich: ({notIn})", + "error.validation.notcontains": "Prosím, zadajte hodnotu, ktorá neobsahuje \"{needle}\"", + "error.validation.notin": "Prosím, nezadávajte ani jedno z nasledujúcich: ({notIn})", "error.validation.option": "Prosím, zadajte platnú voľbu", "error.validation.num": "Prosím, zadajte platné číslo", "error.validation.required": "Prosím, zadajte niečo", @@ -238,8 +193,7 @@ "field.structure.empty": "Zatiaľ žiadne údaje", "field.users.empty": "Žiadni užívatelia zatiaľ neboli zvolení", - "file.delete.confirm": - "Ste si istý, že chcete zmazať
{filename}?", + "file.delete.confirm": "Ste si istý, že chcete zmazať
{filename}?", "files": "Súbory", "files.empty": "Zatiaľ žiadne súbory", @@ -251,29 +205,22 @@ "installation": "Inštalácia", "installation.completed": "Panel bol nainštalovaný", "installation.disabled": "Inštalácia Panelu na verejných serveroch je štandardne zablokovaná. Prosím, spustite inštaláciu na lokálnom serveri alebo aktivujte voľbu panel.install.", - "installation.issues.accounts": - "Priečinok /site/accounts neexistuje alebo nie je nastavený ako zapisovateľný", - "installation.issues.content": - "Priečinok /content neexistuje alebo nie je nastavený ako zapisovateľný", + "installation.issues.accounts": "Priečinok /site/accounts neexistuje alebo nie je nastavený ako zapisovateľný", + "installation.issues.content": "Priečinok /content neexistuje alebo nie je nastavený ako zapisovateľný", "installation.issues.curl": "CURL rozšírenie je povinné", "installation.issues.headline": "Panel nie je možné naištalovať", - "installation.issues.mbstring": - "MB String rozšírenie je povinné", - "installation.issues.media": - "Priečinok /media neexistuje alebo nie je nastavený ako zapisovateľný", + "installation.issues.mbstring": "MB String rozšírenie je povinné", + "installation.issues.media": "Priečinok /media neexistuje alebo nie je nastavený ako zapisovateľný", "installation.issues.php": "Uistite sa, že používate PHP 7+", - "installation.issues.server": - "Kirby vyžaduje Apache, Nginx alebo Caddy", + "installation.issues.server": "Kirby vyžaduje Apache, Nginx alebo Caddy", "installation.issues.sessions": "Priečinok /site/sessions neexistuje alebo nie je nastavený ako zapisovateľný", "language": "Jazyk", "language.code": "Kód", "language.convert": "Nastaviť ako predvolené", - "language.convert.confirm": - "

Ste si istý, že chcete nastaviť {name} ako predvolený jazyk? Túto akciu nie je možné zvrátiť.

Ak {name} obsahuje nepreložený obsah, tak pre tento obsah nebude fungovať platné volanie a niektoré časti vašich stránok zostanú prázdne.

", + "language.convert.confirm": "

Ste si istý, že chcete nastaviť {name} ako predvolený jazyk? Túto akciu nie je možné zvrátiť.

Ak {name} obsahuje nepreložený obsah, tak pre tento obsah nebude fungovať platné volanie a niektoré časti vašich stránok zostanú prázdne.

", "language.create": "Pridať nový jazyk", - "language.delete.confirm": - "Ste si istý, že chcete zmazať jazyk {name} vrátane všetkých prekladov? Túto akciu nie je možné zvrátiť.", + "language.delete.confirm": "Ste si istý, že chcete zmazať jazyk {name} vrátane všetkých prekladov? Túto akciu nie je možné zvrátiť.", "language.deleted": "Jazyk bol zmazaný", "language.direction": "Smer čítania", "language.direction.ltr": "Zľava doprava", @@ -292,8 +239,7 @@ "license": "Licencia", "license.buy": "Zakúpiť licenciu", "license.register": "Registrovať", - "license.register.help": - "Licenčný kód vám bol doručený e-mailom po úspešnom nákupe. Prosím, skopírujte a prilepte ho na uskutočnenie registrácie.", + "license.register.help": "Licenčný kód vám bol doručený e-mailom po úspešnom nákupe. Prosím, skopírujte a prilepte ho na uskutočnenie registrácie.", "license.register.label": "Prosím, zadajte váš licenčný kód", "license.register.success": "Ďakujeme za vašu podporu Kirby", "license.unregistered": "Toto je neregistrované demo Kirby", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Prosím, zmeňte pozíciu", "page.changeStatus.select": "Zvoľte nový status", "page.changeTemplate": "Zmeniť šablónu", - "page.delete.confirm": - "Ste si istý, že chcete zmazať {title}?", - "page.delete.confirm.subpages": - "Táto stránka obsahuje podstránky.
Všetky podstránky budú taktiež zmazané.", + "page.delete.confirm": "Ste si istý, že chcete zmazať {title}?", + "page.delete.confirm.subpages": "Táto stránka obsahuje podstránky.
Všetky podstránky budú taktiež zmazané.", "page.delete.confirm.title": "Pre potvrdenie zadajte titulok stránky", "page.draft.create": "Vytvoriť koncept", "page.duplicate.appendix": "Kopírovať", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Copy pages", "page.status": "Status", "page.status.draft": "Koncept", - "page.status.draft.description": - "Stránka je koncept móde a je viditeľná len pre prihlásených užívateľov", + "page.status.draft.description": "The page is in draft mode and only visible for logged in editors or via secret link", "page.status.listed": "Verejné", "page.status.listed.description": "Stránka je prístupná pre všetkých", "page.status.unlisted": "Skryté", @@ -388,6 +331,7 @@ "replace": "Nahradiť", "retry": "Skúsiť ešte raz", "revert": "Vrátiť späť", + "revert.confirm": "Do you really want to delete all unsaved changes?", "role": "Rola", "role.admin.description": "The admin has all rights", @@ -451,8 +395,7 @@ "url.placeholder": "https://example.com", "user": "Užívateľ", - "user.blueprint": - "Ďalšie sekcie a formulárové polia pre túto užívateľskú rolu môžete definovať v rámci /site/blueprints/users/{role}.yml", + "user.blueprint": "Ďalšie sekcie a formulárové polia pre túto užívateľskú rolu môžete definovať v rámci /site/blueprints/users/{role}.yml", "user.changeEmail": "Zmeniť e-mail", "user.changeLanguage": "Zmeniť jazyk", "user.changeName": "Premenovať tohto užívateľa", @@ -463,8 +406,7 @@ "user.changeRole.select": "Zvoliť novú rolu", "user.create": "Pridať nového užívateľa", "user.delete": "Zmazať tohto užívateľa", - "user.delete.confirm": - "Ste si istý, že chcete zmazať
{email}?", + "user.delete.confirm": "Ste si istý, že chcete zmazať
{email}?", "users": "Užívatelia", diff --git a/kirby/i18n/translations/sv_SE.json b/kirby/i18n/translations/sv_SE.json index a600348..3dc9d20 100755 --- a/kirby/i18n/translations/sv_SE.json +++ b/kirby/i18n/translations/sv_SE.json @@ -42,10 +42,8 @@ "error.avatar.create.fail": "Profilbilden kunde inte laddas upp", "error.avatar.delete.fail": "Profilbilden kunde inte raderas", - "error.avatar.dimensions.invalid": - "Se till att profilbildens bredd och höjd är mindre än 3000 pixlar", - "error.avatar.mime.forbidden": - "Profilbilden måste vara i formatet JPEG eller PNG", + "error.avatar.dimensions.invalid": "Se till att profilbildens bredd och höjd är mindre än 3000 pixlar", + "error.avatar.mime.forbidden": "Profilbilden måste vara i formatet JPEG eller PNG", "error.blueprint.notFound": "Blueprint \"{name}\" kunde inte laddas", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Ogiltig omvandlare \"{converter}\"", "error.file.changeName.empty": "Namnet får inte vara tomt", - "error.file.changeName.permission": - "Du har inte behörighet att ändra namnet på \"{filename}\"", + "error.file.changeName.permission": "Du har inte behörighet att ändra namnet på \"{filename}\"", "error.file.duplicate": "En fil med namnet \"{filename}\" existerar redan", - "error.file.extension.forbidden": - "Filändelsen \"{extension}\" är inte tillåten", - "error.file.extension.missing": - "Filen \"{filename}\" saknar filändelse", + "error.file.extension.forbidden": "Filändelsen \"{extension}\" är inte tillåten", + "error.file.extension.missing": "Filen \"{filename}\" saknar filändelse", "error.file.maxheight": "Bildens höjd får inte överstiga {height} pixlar", "error.file.maxsize": "Filen är för stor", "error.file.maxwidth": "Bildens bredd får inte överstiga {width} pixlar", - "error.file.mime.differs": - "Den uppladdade filen måste vara av samma mime-typ \"{mime}\"", + "error.file.mime.differs": "Den uppladdade filen måste vara av samma mime-typ \"{mime}\"", "error.file.mime.forbidden": "Mediatypen \"{mime}\" är inte tillåten", "error.file.mime.invalid": "Ogiltig mime-typ: {mime}", - "error.file.mime.missing": - "Mediatypen för \"{filename}\" kan inte detekteras", + "error.file.mime.missing": "Mediatypen för \"{filename}\" kan inte detekteras", "error.file.minheight": "Bildens höjd måste vara minst {height} pixlar", "error.file.minsize": "Filen är för liten", "error.file.minwidth": "Bildens bredd måste vara minst {width} pixlar", @@ -90,111 +83,77 @@ "error.license.email": "Ange en giltig e-postadress", "error.license.verification": "Licensen kunde inte verifieras", - "error.page.changeSlug.permission": - "Du har inte behörighet att ändra URL-appendixen för \"{slug}\"", - "error.page.changeStatus.incomplete": - "Sidan innehåller fel och kan inte publiceras", - "error.page.changeStatus.permission": - "Statusen för denna sida kan inte ändras", - "error.page.changeStatus.toDraft.invalid": - "Statusen för sidan \"{slug}\" kan inte ändras till utkast", - "error.page.changeTemplate.invalid": - "Mallen för sidan \"{slug}\" kan inte ändras", - "error.page.changeTemplate.permission": - "Du har inte behörighet att ändra mallen för \"{slug}\"", + "error.page.changeSlug.permission": "Du har inte behörighet att ändra URL-appendixen för \"{slug}\"", + "error.page.changeStatus.incomplete": "Sidan innehåller fel och kan inte publiceras", + "error.page.changeStatus.permission": "Statusen för denna sida kan inte ändras", + "error.page.changeStatus.toDraft.invalid": "Statusen för sidan \"{slug}\" kan inte ändras till utkast", + "error.page.changeTemplate.invalid": "Mallen för sidan \"{slug}\" kan inte ändras", + "error.page.changeTemplate.permission": "Du har inte behörighet att ändra mallen för \"{slug}\"", "error.page.changeTitle.empty": "Titeln får inte vara tom", - "error.page.changeTitle.permission": - "Du har inte behörighet att ändra titeln för \"{slug}\"", + "error.page.changeTitle.permission": "Du har inte behörighet att ändra titeln för \"{slug}\"", "error.page.create.permission": "Du har inte behörighet att skapa \"{slug}\"", "error.page.delete": "Sidan \"{slug}\" kan inte raderas", "error.page.delete.confirm": "Fyll i sidans titel för att bekräfta", - "error.page.delete.hasChildren": - "Sidan har undersidor och kan inte raderas", + "error.page.delete.hasChildren": "Sidan har undersidor och kan inte raderas", "error.page.delete.permission": "Du har inte behörighet att radera \"{slug}\"", - "error.page.draft.duplicate": - "Ett utkast med URL-appendixen \"{slug}\" existerar redan", - "error.page.duplicate": - "En sida med URL-appendixen \"{slug}\" existerar redan", + "error.page.draft.duplicate": "Ett utkast med URL-appendixen \"{slug}\" existerar redan", + "error.page.duplicate": "En sida med URL-appendixen \"{slug}\" existerar redan", "error.page.duplicate.permission": "Du har inte behörighet att duplicera \"{slug}\"", "error.page.notFound": "Sidan \"{slug}\" kan inte hittas", - "error.page.num.invalid": - "Ange ett giltigt nummer för sortering. Numret får inte vara negativt.", + "error.page.num.invalid": "Ange ett giltigt nummer för sortering. Numret får inte vara negativt.", "error.page.slug.invalid": "Ange ett giltigt URL-prefix", "error.page.sort.permission": "Sidan \"{slug}\" kan inte sorteras", "error.page.status.invalid": "Sätt en giltig status för sidan", "error.page.undefined": "Sidan kan inte hittas", "error.page.update.permission": "Du har inte behörighet att uppdatera \"{slug}\"", - "error.section.files.max.plural": - "Du får inte lägga till mer än {max} filer till sektionen \"{section}\"", - "error.section.files.max.singular": - "Du får inte lägga till mer än en fil i sektionen \"{section}\"", - "error.section.files.min.plural": - "Sektionen \"{section}\" kräver minst {min} filer", - "error.section.files.min.singular": - "Sektionen \"{section}\" kräver minst en fil", + "error.section.files.max.plural": "Du får inte lägga till mer än {max} filer till sektionen \"{section}\"", + "error.section.files.max.singular": "Du får inte lägga till mer än en fil i sektionen \"{section}\"", + "error.section.files.min.plural": "Sektionen \"{section}\" kräver minst {min} filer", + "error.section.files.min.singular": "Sektionen \"{section}\" kräver minst en fil", - "error.section.pages.max.plural": - "Du får inte lägga till mer än {max} sidor till sektionen \"{section}\"", - "error.section.pages.max.singular": - "Du får inte lägga till mer än en sida i sektionen \"{section}\"", - "error.section.pages.min.plural": - "Sektionen \"{section}\" kräver minst {min} sidor", - "error.section.pages.min.singular": - "Sektionen \"{section}\" kräver minst en sida", + "error.section.pages.max.plural": "Du får inte lägga till mer än {max} sidor till sektionen \"{section}\"", + "error.section.pages.max.singular": "Du får inte lägga till mer än en sida i sektionen \"{section}\"", + "error.section.pages.min.plural": "Sektionen \"{section}\" kräver minst {min} sidor", + "error.section.pages.min.singular": "Sektionen \"{section}\" kräver minst en sida", "error.section.notLoaded": "Sektionen \"{name}\" kunde inte laddas", "error.section.type.invalid": "Sektionstypen \"{type}\" är inte giltig", "error.site.changeTitle.empty": "Titeln får inte vara tom", - "error.site.changeTitle.permission": - "Du har inte behörighet att ändra titeln på webbplatsen", + "error.site.changeTitle.permission": "Du har inte behörighet att ändra titeln på webbplatsen", "error.site.update.permission": "Du har inte behörighet att uppdatera webbplatsen", "error.template.default.notFound": "Standardmallen existerar inte", - "error.user.changeEmail.permission": - "Du har inte behörighet att ändra e-postadressen för användaren \"{name}\"", - "error.user.changeLanguage.permission": - "Du har inte behörighet att ändra språket för användaren \"{name}\"", - "error.user.changeName.permission": - "Du har inte behörighet att ändra namnet för användaren \"{name}\"", - "error.user.changePassword.permission": - "Du har inte behörighet att ändra lösenordet för användaren \"{name}\"", - "error.user.changeRole.lastAdmin": - "Rollen för den återstående adminanvändaren kan inte ändras", - "error.user.changeRole.permission": - "Du har inte behörighet att ändra rollen för användaren \"{name}\"", - "error.user.changeRole.toAdmin": - "Du har inte behörighet att ge någon en administratörsroll", + "error.user.changeEmail.permission": "Du har inte behörighet att ändra e-postadressen för användaren \"{name}\"", + "error.user.changeLanguage.permission": "Du har inte behörighet att ändra språket för användaren \"{name}\"", + "error.user.changeName.permission": "Du har inte behörighet att ändra namnet för användaren \"{name}\"", + "error.user.changePassword.permission": "Du har inte behörighet att ändra lösenordet för användaren \"{name}\"", + "error.user.changeRole.lastAdmin": "Rollen för den återstående adminanvändaren kan inte ändras", + "error.user.changeRole.permission": "Du har inte behörighet att ändra rollen för användaren \"{name}\"", + "error.user.changeRole.toAdmin": "Du har inte behörighet att ge någon en administratörsroll", "error.user.create.permission": "Du har inte behörighet att skapa denna användare", "error.user.delete": "Användaren kan inte raderas", "error.user.delete.lastAdmin": "Den återstående administratören kan inte raderas", "error.user.delete.lastUser": "Den återstående användaren kan inte raderas", - "error.user.delete.permission": - "Du har inte behörighet att radera användaren \"{name}\"", - "error.user.duplicate": - "En användare med e-postadressen \"{email}\" finns redan", + "error.user.delete.permission": "Du har inte behörighet att radera användaren \"{name}\"", + "error.user.duplicate": "En användare med e-postadressen \"{email}\" finns redan", "error.user.email.invalid": "Ange en giltig e-postadress", "error.user.language.invalid": "Ange ett giltigt språk", "error.user.notFound": "Användaren \"{name}\" kan ej hittas", - "error.user.password.invalid": - "Ange ett giltigt lösenord. Lösenordet måste vara minst 8 tecken långt.", + "error.user.password.invalid": "Ange ett giltigt lösenord. Lösenordet måste vara minst 8 tecken långt.", "error.user.password.notSame": "Lösenorden matchar inte", "error.user.password.undefined": "Användaren har inget lösenord", "error.user.role.invalid": "Ange en giltig roll", - "error.user.update.permission": - "Du har inte behörighet att uppdatera användaren \"{name}\"", + "error.user.update.permission": "Du har inte behörighet att uppdatera användaren \"{name}\"", "error.validation.accepted": "Vänligen bekräfta", "error.validation.alpha": "Ange endast tecken mellan a-z", - "error.validation.alphanum": - "Ange endast tecken mellan a-z eller siffror 0-9", - "error.validation.between": - "Ange ett värde mellan \"{min}\" och \"{max}\"", + "error.validation.alphanum": "Ange endast tecken mellan a-z eller siffror 0-9", + "error.validation.between": "Ange ett värde mellan \"{min}\" och \"{max}\"", "error.validation.boolean": "Bekräfta eller neka", - "error.validation.contains": - "Ange ett värde som innehåller \"{needle}\"", + "error.validation.contains": "Ange ett värde som innehåller \"{needle}\"", "error.validation.date": "Ange ett giltigt datum", "error.validation.date.after": "Ange ett datum efter {date}", "error.validation.date.before": "Ange ett datum före {date}", @@ -210,18 +169,14 @@ "error.validation.less": "Ange ett värde lägre än {max}", "error.validation.match": "Värdet matchar inte det förväntade mönstret", "error.validation.max": "Ange ett värde som är lika med eller lägre än {max}", - "error.validation.maxlength": - "Ange ett kortare värde. (max {max} tecken)", + "error.validation.maxlength": "Ange ett kortare värde. (max {max} tecken)", "error.validation.maxwords": "Ange inte mer än {max} ord", "error.validation.min": "Ange ett värde som är lika med eller större än {min}", - "error.validation.minlength": - "Ange ett längre värde. (minst {min} tecken)", + "error.validation.minlength": "Ange ett längre värde. (minst {min} tecken)", "error.validation.minwords": "Ange minst {min} ord", "error.validation.more": "Ange ett större värde än {min}", - "error.validation.notcontains": - "Ange ett värde som inte innehåller \"{needle}\"", - "error.validation.notin": - "Ange inte något av följande: ({notIn})", + "error.validation.notcontains": "Ange ett värde som inte innehåller \"{needle}\"", + "error.validation.notin": "Ange inte något av följande: ({notIn})", "error.validation.option": "Välj ett giltigt alternativ", "error.validation.num": "Ange ett giltigt nummer", "error.validation.required": "Ange någonting", @@ -238,8 +193,7 @@ "field.structure.empty": "Inga poster än", "field.users.empty": "Inga användare valda än", - "file.delete.confirm": - "Vill du verkligen radera
{filename}?", + "file.delete.confirm": "Vill du verkligen radera
{filename}?", "files": "Filer", "files.empty": "Inga filer än", @@ -251,29 +205,22 @@ "installation": "Installation", "installation.completed": "Panelen har installerats", "installation.disabled": "Installeraren för panelen är som standard inaktiverad på offentliga servrar. Kör installeraren på en lokal maskin eller aktivera den med alternativet panel.install.", - "installation.issues.accounts": - "Mappen /site/accounts finns inte eller är inte skrivbar", - "installation.issues.content": - "Mappen /content finns inte eller är inte skrivbar", + "installation.issues.accounts": "Mappen /site/accounts finns inte eller är inte skrivbar", + "installation.issues.content": "Mappen /content finns inte eller är inte skrivbar", "installation.issues.curl": "Tillägget CURL krävs", "installation.issues.headline": "Panelen kan inte installeras", - "installation.issues.mbstring": - "Tillägget MB String krävs", - "installation.issues.media": - "Mappen /media finns inte eller är inte skrivbar", + "installation.issues.mbstring": "Tillägget MB String krävs", + "installation.issues.media": "Mappen /media finns inte eller är inte skrivbar", "installation.issues.php": "Se till att du använder PHP 7+", - "installation.issues.server": - "Kirby kräver Apache, Nginx eller Caddy", + "installation.issues.server": "Kirby kräver Apache, Nginx eller Caddy", "installation.issues.sessions": "Mappen /site/sessions finns inte eller är inte skrivbar", "language": "Spr\u00e5k", "language.code": "Kod", "language.convert": "Ange som standard", - "language.convert.confirm": - "

Vill du verkligen göra {name} till standardspråket? Detta kan inte ångras.

Om {name} har oöversatt innehåll, kommer det inte längre finnas en alternativ översättning och delar av sajten kommer kanske att vara tom.

", + "language.convert.confirm": "

Vill du verkligen göra {name} till standardspråket? Detta kan inte ångras.

Om {name} har oöversatt innehåll, kommer det inte längre finnas en alternativ översättning och delar av sajten kommer kanske att vara tom.

", "language.create": "Lägg till ett nytt språk", - "language.delete.confirm": - "Vill du verkligen radera språket {name} inklusive alla översättningar? Detta kan inte ångras!", + "language.delete.confirm": "Vill du verkligen radera språket {name} inklusive alla översättningar? Detta kan inte ångras!", "language.deleted": "Språket har raderats", "language.direction": "Läsriktning", "language.direction.ltr": "Vänster till höger", @@ -292,8 +239,7 @@ "license": "Licens", "license.buy": "Köp en licens", "license.register": "Registrera", - "license.register.help": - "Du fick din licenskod via e-post efter inköpet. Kopiera och klistra in den för att registrera licensen.", + "license.register.help": "Du fick din licenskod via e-post efter inköpet. Kopiera och klistra in den för att registrera licensen.", "license.register.label": "Ange din licenskod", "license.register.success": "Tack för att du stödjer Kirby", "license.unregistered": "Detta är en oregistrerad demo av Kirby", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Välj en ny position", "page.changeStatus.select": "Välj en ny status", "page.changeTemplate": "Ändra mall", - "page.delete.confirm": - "Vill du verkligen radera {title}?", - "page.delete.confirm.subpages": - "Denna sida har undersidor.
Alla undersidor kommer också att raderas.", + "page.delete.confirm": "Vill du verkligen radera {title}?", + "page.delete.confirm.subpages": "Denna sida har undersidor.
Alla undersidor kommer också att raderas.", "page.delete.confirm.title": "Fyll i sidans titel för att bekräfta", "page.draft.create": "Skapa utkast", "page.duplicate.appendix": "Kopiera", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Kopiera sidor", "page.status": "Status", "page.status.draft": "Utkast", - "page.status.draft.description": - "Sidan är ett utkast och endast synlig för inloggade redaktörer", + "page.status.draft.description": "Sidan är ett utkast och endast synlig för inloggade redaktörer eller via en hemlig länk", "page.status.listed": "Publik", "page.status.listed.description": "Sidan är publik för vem som helst", "page.status.unlisted": "Olistad", @@ -388,6 +331,7 @@ "replace": "Ersätt", "retry": "F\u00f6rs\u00f6k igen", "revert": "Återgå", + "revert.confirm": "Vill du verkligen radera alla osparade ändringar?", "role": "Roll", "role.admin.description": "Administratören har alla behörigheter", @@ -451,8 +395,7 @@ "url.placeholder": "https://exempel.se", "user": "Användare", - "user.blueprint": - "Du kan ange ytterligare sektioner och fält för denna användarroll i /site/blueprints/users/{role}.yml", + "user.blueprint": "Du kan ange ytterligare sektioner och fält för denna användarroll i /site/blueprints/users/{role}.yml", "user.changeEmail": "Ändra e-postadress", "user.changeLanguage": "Ändra språk", "user.changeName": "Byt namn på denna användare", @@ -463,8 +406,7 @@ "user.changeRole.select": "Välj en ny roll", "user.create": "Lägg till en ny användare", "user.delete": "Radera denna användare", - "user.delete.confirm": - "Vill du verkligen radera
{email}?", + "user.delete.confirm": "Vill du verkligen radera
{email}?", "users": "Användare", diff --git a/kirby/i18n/translations/tr.json b/kirby/i18n/translations/tr.json index 5d8e2f2..9a24cbd 100755 --- a/kirby/i18n/translations/tr.json +++ b/kirby/i18n/translations/tr.json @@ -37,15 +37,13 @@ "email.placeholder": "eposta@ornek.com", "error.access.login": "Geçersiz giriş", - "error.access.panel": "Panele erişim izniniz yok", - "error.access.view": "Panelin bu bölümüne erişemezsiniz", + "error.access.panel": "Panel'e erişim izniniz yok", + "error.access.view": "Panel'in bu bölümüne erişim izniniz yok", "error.avatar.create.fail": "Profil resmi yüklenemedi", "error.avatar.delete.fail": "Profil resmi silinemedi", - "error.avatar.dimensions.invalid": - "Lütfen profil resminin genişliğini ve yüksekliğini 3000 pikselin altında tutun", - "error.avatar.mime.forbidden": - "Profil resmi JPEG veya PNG dosyaları olmalıdır", + "error.avatar.dimensions.invalid": "Lütfen profil resminin genişliğini ve yüksekliğini 3000 pikselin altında tutun", + "error.avatar.mime.forbidden": "Profil resmi JPEG veya PNG dosyaları olmalıdır", "error.blueprint.notFound": "\"{name}\" adlı plan yüklenemedi", @@ -54,22 +52,17 @@ "error.field.converter.invalid": "Geçersiz dönüştürücü \"{converter}\"", "error.file.changeName.empty": "İsim boş olmamalıdır", - "error.file.changeName.permission": - "\"{filename}\" adını değiştiremezsiniz", + "error.file.changeName.permission": "\"{filename}\" adını değiştiremezsiniz", "error.file.duplicate": "\"{filename}\" isimli bir dosya zaten var", - "error.file.extension.forbidden": - "\"{extension}\" dosya uzantısına izin verilmiyor", - "error.file.extension.missing": - "\"{filename}\" dosyasının uzantısı yok", + "error.file.extension.forbidden": "\"{extension}\" dosya uzantısına izin verilmiyor", + "error.file.extension.missing": "\"{filename}\" dosyasının uzantısı yok", "error.file.maxheight": "Resmin yüksekliği {height} pikselden büyük olmamalıdır", "error.file.maxsize": "Dosya çok büyük", "error.file.maxwidth": "Resmin genişliği {width} pikselden büyük olmamalıdır", - "error.file.mime.differs": - "Yüklenen dosya aynı dosya türü \"{mime}\" olmalıdır", + "error.file.mime.differs": "Yüklenen dosya aynı dosya türü \"{mime}\" olmalıdır", "error.file.mime.forbidden": "\"{mime}\" medya türüne izin verilmiyor", "error.file.mime.invalid": "Geçersiz medya türü: {mime}", - "error.file.mime.missing": - "\"{filename}\" için medya türü tespit edilemiyor", + "error.file.mime.missing": "\"{filename}\" için medya türü tespit edilemiyor", "error.file.minheight": "Resmin yüksekliği en az {height} piksel olmalıdır", "error.file.minsize": "Dosya çok küçük", "error.file.minwidth": "Resmin genişliği en az {width} piksel olmalıdır", @@ -90,111 +83,77 @@ "error.license.email": "Lütfen geçerli bir e-posta adresi girin", "error.license.verification": "Lisans doğrulanamadı", - "error.page.changeSlug.permission": - "\"{slug}\" uzantısına sahip bu sayfanın adresini değiştirilemez", - "error.page.changeStatus.incomplete": - "Sayfada hatalar var ve yayınlanamadı", - "error.page.changeStatus.permission": - "Bu sayfanın durumu değiştirilemez", - "error.page.changeStatus.toDraft.invalid": - "\"{slug}\" sayfası bir taslak haline dönüştürülemiyor", - "error.page.changeTemplate.invalid": - "\"{slug}\" sayfası için şablon değiştirilemiyor", - "error.page.changeTemplate.permission": - "\"{slug}\" için şablonu değiştiremezsiniz", + "error.page.changeSlug.permission": "\"{slug}\" uzantısına sahip bu sayfanın adresini değiştirilemez", + "error.page.changeStatus.incomplete": "Sayfada hatalar var ve yayınlanamadı", + "error.page.changeStatus.permission": "Bu sayfanın durumu değiştirilemez", + "error.page.changeStatus.toDraft.invalid": "\"{slug}\" sayfası bir taslak haline dönüştürülemiyor", + "error.page.changeTemplate.invalid": "\"{slug}\" sayfası için şablon değiştirilemiyor", + "error.page.changeTemplate.permission": "\"{slug}\" için şablonu değiştiremezsiniz", "error.page.changeTitle.empty": "Başlık boş bırakılamaz", - "error.page.changeTitle.permission": - "\"{slug}\" için başlığı değiştiremezsiniz", + "error.page.changeTitle.permission": "\"{slug}\" için başlığı değiştiremezsiniz", "error.page.create.permission": "\"{slug}\" oluşturmanıza izin verilmiyor", "error.page.delete": "\"{slug}\" sayfası silinemedi", "error.page.delete.confirm": "Onaylamak için sayfa başlığını girin", - "error.page.delete.hasChildren": - "Sayfada alt sayfalar var ve silinemiyor", + "error.page.delete.hasChildren": "Sayfada alt sayfalar var ve silinemiyor", "error.page.delete.permission": "\"{slug}\" öğesini silmenize izin verilmiyor", - "error.page.draft.duplicate": - "\"{slug}\" adres eki olan bir sayfa taslağı zaten mevcut", - "error.page.duplicate": - "\"{slug}\" adres eki içeren bir sayfa zaten mevcut", + "error.page.draft.duplicate": "\"{slug}\" adres eki olan bir sayfa taslağı zaten mevcut", + "error.page.duplicate": "\"{slug}\" adres eki içeren bir sayfa zaten mevcut", "error.page.duplicate.permission": "\"{slug}\" öğesini çoğaltmanıza izin verilmiyor", "error.page.notFound": "\"{slug}\" uzantısındaki sayfa bulunamadı", - "error.page.num.invalid": - "Lütfen geçerli bir sıralama numarası girin. Sayılar negatif olmamalıdır.", + "error.page.num.invalid": "Lütfen geçerli bir sıralama numarası girin. Sayılar negatif olmamalıdır.", "error.page.slug.invalid": "Lütfen geçerli bir adres öneki girin", "error.page.sort.permission": "\"{slug}\" sayfası sıralanamıyor", "error.page.status.invalid": "Lütfen geçerli bir sayfa durumu ayarlayın", "error.page.undefined": "Sayfa bulunamad\u0131", "error.page.update.permission": "\"{slug}\" güncellemesine izin verilmiyor", - "error.section.files.max.plural": - "\"{section}\" bölümüne {max} dosyadan daha fazlasını eklememelisiniz", - "error.section.files.max.singular": - "\"{section}\" bölümüne birden fazla dosya eklememelisiniz", - "error.section.files.min.plural": - "\"{section}\" bölümü en az {min} dosya gerektiriyor", - "error.section.files.min.singular": - "\"{section}\" bölümü en az bir dosya gerektiriyor", + "error.section.files.max.plural": "\"{section}\" bölümüne {max} dosyadan daha fazlasını eklememelisiniz", + "error.section.files.max.singular": "\"{section}\" bölümüne birden fazla dosya eklememelisiniz", + "error.section.files.min.plural": "\"{section}\" bölümü en az {min} dosya gerektiriyor", + "error.section.files.min.singular": "\"{section}\" bölümü en az bir dosya gerektiriyor", - "error.section.pages.max.plural": - "\"{section}\" bölümüne maksimum {max} sayfadan fazla ekleyemezsiniz", - "error.section.pages.max.singular": - "\"{section}\" bölümüne birden fazla sayfa ekleyemezsiniz", - "error.section.pages.min.plural": - "\"{section}\" bölümü en az {min} sayfa gerektiriyor", - "error.section.pages.min.singular": - "\"{section}\" bölümü en az bir sayfa gerektiriyor", + "error.section.pages.max.plural": "\"{section}\" bölümüne maksimum {max} sayfadan fazla ekleyemezsiniz", + "error.section.pages.max.singular": "\"{section}\" bölümüne birden fazla sayfa ekleyemezsiniz", + "error.section.pages.min.plural": "\"{section}\" bölümü en az {min} sayfa gerektiriyor", + "error.section.pages.min.singular": "\"{section}\" bölümü en az bir sayfa gerektiriyor", "error.section.notLoaded": "\"{name}\" bölümü yüklenemedi", "error.section.type.invalid": "\"{type}\" tipi geçerli değil", "error.site.changeTitle.empty": "Başlık boş bırakılamaz", - "error.site.changeTitle.permission": - "Sitenin başlığını değiştiremezsin", + "error.site.changeTitle.permission": "Sitenin başlığını değiştiremezsin", "error.site.update.permission": "Siteyi güncellemenize izin verilmiyor", "error.template.default.notFound": "Varsayılan şablon yok", - "error.user.changeEmail.permission": - "\"{name}\" kullanıcısı için e-postayı değiştiremezsiniz", - "error.user.changeLanguage.permission": - "\"{name}\" kullanıcısının dilini değiştiremezsin", - "error.user.changeName.permission": - "\"{name}\" kullanıcısının adını değiştiremezsiniz", - "error.user.changePassword.permission": - "\"{name}\" kullanıcısının şifresini değiştiremezsiniz", - "error.user.changeRole.lastAdmin": - "Son yöneticinin rolü değiştirilemez", - "error.user.changeRole.permission": - "\"{name}\" kullanıcısının rolünü değiştiremezsin", - "error.user.changeRole.toAdmin": - "Birini yönetici rolüne tanıtmanıza izin verilmiyor", + "error.user.changeEmail.permission": "\"{name}\" kullanıcısı için e-postayı değiştiremezsiniz", + "error.user.changeLanguage.permission": "\"{name}\" kullanıcısının dilini değiştiremezsin", + "error.user.changeName.permission": "\"{name}\" kullanıcısının adını değiştiremezsiniz", + "error.user.changePassword.permission": "\"{name}\" kullanıcısının şifresini değiştiremezsiniz", + "error.user.changeRole.lastAdmin": "Son yöneticinin rolü değiştirilemez", + "error.user.changeRole.permission": "\"{name}\" kullanıcısının rolünü değiştiremezsin", + "error.user.changeRole.toAdmin": "Birini yönetici rolüne tanıtmanıza izin verilmiyor", "error.user.create.permission": "Bu kullanıcıyı oluşturmanıza izin verilmiyor", "error.user.delete": "\"{name}\" kullanıcısı silinemedi", "error.user.delete.lastAdmin": "Son y\u00f6netici kullan\u0131c\u0131y\u0131 silemezsiniz", "error.user.delete.lastUser": "Son kullanıcı silinemez", - "error.user.delete.permission": - "\"{name}\" kullanıcısını silme yetkiniz yok", - "error.user.duplicate": - "\"{email}\" e-posta adresine sahip bir kullanıcı zaten var", + "error.user.delete.permission": "\"{name}\" kullanıcısını silme yetkiniz yok", + "error.user.duplicate": "\"{email}\" e-posta adresine sahip bir kullanıcı zaten var", "error.user.email.invalid": "Lütfen geçerli bir e-posta adresi girin", "error.user.language.invalid": "Lütfen geçerli bir dil girin", "error.user.notFound": "\"{name}\" kullanıcısı bulunamadı", - "error.user.password.invalid": - "Lütfen geçerli bir şifre giriniz. Şifreler en az 8 karakter uzunluğunda olmalıdır.", + "error.user.password.invalid": "Lütfen geçerli bir şifre giriniz. Şifreler en az 8 karakter uzunluğunda olmalıdır.", "error.user.password.notSame": "L\u00fctfen \u015fifreyi do\u011frulay\u0131n", "error.user.password.undefined": "Bu kullanıcının şifresi yok", "error.user.role.invalid": "Lütfen geçerli bir rol girin", - "error.user.update.permission": - "\"{name}\" kullanıcısını güncellemenize izin verilmiyor", + "error.user.update.permission": "\"{name}\" kullanıcısını güncellemenize izin verilmiyor", "error.validation.accepted": "Lütfen onaylayın", "error.validation.alpha": "Lütfen sadece a-z arasındaki karakterleri girin", - "error.validation.alphanum": - "Lütfen sadece a-z veya 0-9 arasındaki rakamları girin", - "error.validation.between": - "Lütfen \"{min}\" ile \"{max}\" arasında bir değer girin", + "error.validation.alphanum": "Lütfen sadece a-z veya 0-9 arasındaki rakamları girin", + "error.validation.between": "Lütfen \"{min}\" ile \"{max}\" arasında bir değer girin", "error.validation.boolean": "Lütfen onaylayın veya reddedin", - "error.validation.contains": - "Lütfen \"{needle}\" içeren bir değer girin", + "error.validation.contains": "Lütfen \"{needle}\" içeren bir değer girin", "error.validation.date": "Lütfen geçerli bir tarih girin", "error.validation.date.after": "Lütfen {date} tarihinden sonra bir tarih girin", "error.validation.date.before": "Lütfen {date} tarihinden önce bir tarih girin", @@ -210,18 +169,14 @@ "error.validation.less": "Lütfen {max} 'dan daha düşük bir değer girin", "error.validation.match": "Değer beklenen modelle eşleşmiyor", "error.validation.max": "Lütfen {max} 'a eşit veya daha küçük bir değer girin", - "error.validation.maxlength": - "Lütfen daha kısa bir değer girin. (maks. {max} karakter)", + "error.validation.maxlength": "Lütfen daha kısa bir değer girin. (maks. {max} karakter)", "error.validation.maxwords": "Lütfen en fazla {max} kelime(ler) girin", "error.validation.min": "Lütfen {min} ile eşit veya daha büyük bir değer girin", - "error.validation.minlength": - "Lütfen daha uzun bir değer girin. (min. {min} karakter)", + "error.validation.minlength": "Lütfen daha uzun bir değer girin. (min. {min} karakter)", "error.validation.minwords": "Lütfen en az {min} kelime(ler) girin", "error.validation.more": "Lütfen {min} değerinden daha büyük bir değer girin", - "error.validation.notcontains": - "Lütfen \"{needle}\" içermeyen bir değer girin", - "error.validation.notin": - "Lütfen bunlardan herhangi birini girmeyin: ({notIn})", + "error.validation.notcontains": "Lütfen \"{needle}\" içermeyen bir değer girin", + "error.validation.notin": "Lütfen bunlardan herhangi birini girmeyin: ({notIn})", "error.validation.option": "Lütfen geçerli bir seçenek girin", "error.validation.num": "Lütfen geçerli bir sayı girin", "error.validation.required": "Lütfen birşeyler girin", @@ -238,8 +193,7 @@ "field.structure.empty": "Hen\u00fcz bir girdi yok", "field.users.empty": "Henüz kullanıcı seçilmedi", - "file.delete.confirm": - "{filename} dosyasını silmek istediğinizden emin misiniz?", + "file.delete.confirm": "{filename} dosyasını silmek istediğinizden emin misiniz?", "files": "Dosyalar", "files.empty": "Henüz dosya yok", @@ -251,29 +205,22 @@ "installation": "Kurulum", "installation.completed": "Panel kuruldu", "installation.disabled": "Panel yükleyici, herkese açık sunucularda varsayılan olarak devre dışıdır. Lütfen yükleyiciyi yerel bir makinede çalıştırın veya panel.install seçeneğiyle etkinleştirin.", - "installation.issues.accounts": - "/site/accounts klasörü yok yada yazılabilir değil", - "installation.issues.content": - "/content klasörü yok yada yazılabilir değil", + "installation.issues.accounts": "/site/accounts klasörü yok yada yazılabilir değil", + "installation.issues.content": "/content klasörü yok yada yazılabilir değil", "installation.issues.curl": "CURL eklentisi gerekli", "installation.issues.headline": "Panel kurulamadı", - "installation.issues.mbstring": - "MB String eklentisi gerekli", - "installation.issues.media": - "/media klasörü yok yada yazılamaz", + "installation.issues.mbstring": "MB String eklentisi gerekli", + "installation.issues.media": "/media klasörü yok yada yazılamaz", "installation.issues.php": "PHP 7+ kullandığınızdan emin olun. ", - "installation.issues.server": - "Kirby Apache, Nginx or Caddy gerektirir", + "installation.issues.server": "Kirby Apache, Nginx or Caddy gerektirir", "installation.issues.sessions": "/site/sessions klasörü mevcut değil veya yazılabilir değil", "language": "Dil", "language.code": "Kod", "language.convert": "Varsayılan yap", - "language.convert.confirm": - "

{name}'i varsayılan dile dönüştürmek istiyor musunuz? Bu geri alınamaz.

{name} çevrilmemiş içeriğe sahipse, artık geçerli bir geri dönüş olmaz ve sitenizin bazı bölümleri boş olabilir.

", + "language.convert.confirm": "

{name}'i varsayılan dile dönüştürmek istiyor musunuz? Bu geri alınamaz.

{name} çevrilmemiş içeriğe sahipse, artık geçerli bir geri dönüş olmaz ve sitenizin bazı bölümleri boş olabilir.

", "language.create": "Yeni bir dil ekle", - "language.delete.confirm": - "Tüm çevirileri içeren {name} dilini gerçekten silmek istiyor musunuz? Bu geri alınamaz!", + "language.delete.confirm": "Tüm çevirileri içeren {name} dilini gerçekten silmek istiyor musunuz? Bu geri alınamaz!", "language.deleted": "Dil silindi", "language.direction": "Okuma yönü", "language.direction.ltr": "Soldan sağa", @@ -292,8 +239,7 @@ "license": "Lisans", "license.buy": "Bir lisans satın al", "license.register": "Kayıt Ol", - "license.register.help": - "Satın alma işleminden sonra e-posta yoluyla lisans kodunuzu aldınız. Lütfen kayıt olmak için kodu kopyalayıp yapıştırın.", + "license.register.help": "Satın alma işleminden sonra e-posta yoluyla lisans kodunuzu aldınız. Lütfen kayıt olmak için kodu kopyalayıp yapıştırın.", "license.register.label": "Lütfen lisans kodunu giriniz", "license.register.success": "Kirby'yi desteklediğiniz için teşekkürler", "license.unregistered": "Bu Kirby'nin kayıtsız bir demosu", @@ -325,7 +271,7 @@ "months.april": "Nisan", "months.august": "A\u011fustos", "months.december": "Aral\u0131k", - "months.february": "\u015eubat", + "months.february": "Şubat", "months.january": "Ocak", "months.july": "Temmuz", "months.june": "Haziran", @@ -354,10 +300,8 @@ "page.changeStatus.position": "Lütfen bir pozisyon seçin", "page.changeStatus.select": "Yeni bir durum seçin", "page.changeTemplate": "Şablonu değiştir", - "page.delete.confirm": - "{title} sayfasını silmek istediğinizden emin misiniz?", - "page.delete.confirm.subpages": - "Bu sayfada alt sayfalar var.
Tüm alt sayfalar da silinecek.", + "page.delete.confirm": "{title} sayfasını silmek istediğinizden emin misiniz?", + "page.delete.confirm.subpages": "Bu sayfada alt sayfalar var.
Tüm alt sayfalar da silinecek.", "page.delete.confirm.title": "Onaylamak için sayfa başlığını girin", "page.draft.create": "Taslak oluştur", "page.duplicate.appendix": "Kopya", @@ -365,8 +309,7 @@ "page.duplicate.pages": "Sayfaları kopyala", "page.status": "Durum", "page.status.draft": "Taslak", - "page.status.draft.description": - "Sayfa taslak modunda ve sadece giriş yapılan düzenleyiciler için görünür durumda", + "page.status.draft.description": "Sayfa taslak halinde ve yalnızca oturum açmış editörler için veya gizli bağlantı üzerinden görülebilir", "page.status.listed": "Herkese Açık", "page.status.listed.description": "Bu sayfa herkese açık", "page.status.unlisted": "Liste Dışı", @@ -388,6 +331,7 @@ "replace": "De\u011fi\u015ftir", "retry": "Tekrar Dene", "revert": "Vazge\u00e7", + "revert.confirm": "Gerçekten kaydedilmemiş tüm değişiklikleri silmek istiyor musunuz?", "role": "Rol", "role.admin.description": "Yönetici tüm haklara sahiptir", @@ -451,8 +395,7 @@ "url.placeholder": "https://ornek.com", "user": "Kullanıcı", - "user.blueprint": - "Bu kullanıcı rolü için /site/blueprints/users/{role}.yml içinde ek bölümler ve form alanları tanımlayabilirsiniz", + "user.blueprint": "Bu kullanıcı rolü için /site/blueprints/users/{role}.yml içinde ek bölümler ve form alanları tanımlayabilirsiniz", "user.changeEmail": "E-postayı değiştir", "user.changeLanguage": "Dili değiştir", "user.changeName": "Kullanıcıyı yeniden adlandır", @@ -463,8 +406,7 @@ "user.changeRole.select": "Yeni bir rol seçin", "user.create": "Yeni bir kullanıcı ekle", "user.delete": "Bu kullanıcıyı sil", - "user.delete.confirm": - "{email} kullanıcısını silmek istediğinizden emin misiniz?", + "user.delete.confirm": "{email} kullanıcısını silmek istediğinizden emin misiniz?", "users": "Kullanıcılar", diff --git a/kirby/panel/dist/css/app.css b/kirby/panel/dist/css/app.css index ff30f24..5121c85 100755 --- a/kirby/panel/dist/css/app.css +++ b/kirby/panel/dist/css/app.css @@ -1 +1 @@ -*,:after,:before{margin:0;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}:root{--color-backdrop:rgba(22,23,26,0.6);--color-background:#efefef;--color-border:#ccc;--color-focus:#4271ae;--color-focus-light:#81a2be;--color-focus-outline:rgba(66,113,174,0.25);--color-negative:#c82829;--color-negative-light:#d16464;--color-negative-outline:rgba(200,40,41,0.25);--color-notice:#f5871f;--color-notice-light:#de935f;--color-positive:#5d800d;--color-positive-light:#a7bd68;--color-positive-outline:rgba(93,128,13,0.25);--color-text:#16171a;--color-text-light:#777;--font-family-mono:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-family-sans:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;--font-size-tiny:0.75rem;--font-size-small:0.875rem;--font-size-medium:1rem;--font-size-large:1.25rem;--font-size-huge:1.5rem;--font-size-monster:1.75rem;--box-shadow-dropdown:rgba(22,23,26,0.2) 0 2px 10px;--box-shadow-item:rgba(22,23,26,0.05) 0 2px 5px;--box-shadow-focus:#4271ae 0 0 0 2px,rgba(66,113,174,0.2) 0 0 0 2px}noscript{padding:1.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:100vh;text-align:center}html{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;background:#efefef}body,html{color:#16171a;overflow:hidden;height:100%}a{color:inherit;text-decoration:none}li{list-style:none}b,strong{font-weight:600}.fade-enter-active,.fade-leave-active{-webkit-transition:opacity .5s;transition:opacity .5s}.fade-enter,.fade-leave-to{opacity:0}.k-panel{position:absolute;top:0;right:0;bottom:0;left:0;background:#efefef}.k-panel[data-loading]{-webkit-animation:LoadingCursor .5s;animation:LoadingCursor .5s}.k-panel-header{position:absolute;top:0;left:0;right:0;z-index:300}.k-panel .k-form-buttons{position:fixed;bottom:0;left:0;right:0;z-index:300}.k-panel-view{position:absolute;top:0;right:0;bottom:0;left:0;padding-bottom:6rem;overflow-y:scroll;-webkit-overflow-scrolling:touch;-webkit-transform:translateZ(0);transform:translateZ(0)}.k-panel[data-dialog] .k-panel-view{overflow:hidden;-webkit-transform:none;transform:none}.k-panel[data-topbar] .k-panel-view{top:2.5rem}.k-panel[data-dragging],.k-panel[data-loading]:after{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.k-offline-warning{position:fixed;content:" ";top:0;right:0;bottom:0;left:0;z-index:900;background:rgba(22,23,26,.7);content:"offline";display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:#fff}@-webkit-keyframes LoadingCursor{to{cursor:progress}}@keyframes LoadingCursor{to{cursor:progress}}@-webkit-keyframes Spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes Spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.k-offscreen{-webkit-clip-path:inset(100%);clip-path:inset(100%);clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.k-icons{position:absolute;width:0;height:0}[data-invalid]{border:1px solid rgba(200,40,41,.25);-webkit-box-shadow:rgba(200,40,41,.25) 0 0 3px 2px;box-shadow:0 0 3px 2px rgba(200,40,41,.25)}[data-invalid]:focus-within{border:1px solid #c82829!important;-webkit-box-shadow:rgba(200,40,41,.25) 0 0 0 2px!important;box-shadow:0 0 0 2px rgba(200,40,41,.25)!important}.k-dialog{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:fixed;top:0;right:0;bottom:0;left:0;border:0;height:100%;background:rgba(22,23,26,.6);z-index:600;-webkit-transform:translateZ(0);transform:translateZ(0)}.k-dialog,.k-dialog-box{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%}.k-dialog-box{position:relative;background:#efefef;-webkit-box-shadow:rgba(22,23,26,.2) 0 2px 10px;box-shadow:0 2px 10px rgba(22,23,26,.2);border-radius:1px;line-height:1;max-height:calc(100vh - 3rem);margin:1.5rem;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:20rem){.k-dialog-box[data-size=small]{width:20rem}}@media screen and (min-width:22rem){.k-dialog-box[data-size=default]{width:22rem}}@media screen and (min-width:30rem){.k-dialog-box[data-size=medium]{width:30rem}}@media screen and (min-width:40rem){.k-dialog-box[data-size=large]{width:40rem}}.k-dialog-notification{padding:.75rem 1.5rem;background:#16171a;width:100%;line-height:1.25rem;color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-dialog-notification[data-theme=error]{background:#d16464;color:#000}.k-dialog-notification[data-theme=success]{background:#a7bd68;color:#000}.k-dialog-notification p{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;word-wrap:break-word;overflow:hidden}.k-dialog-notification .k-button{display:-webkit-box;display:-ms-flexbox;display:flex;margin-left:1rem}.k-dialog-body{padding:1.5rem;overflow-y:auto;overflow-x:hidden}.k-dialog-body .k-fieldset{padding-bottom:.5rem}.k-dialog-footer{border-top:1px solid #ccc;padding:0;border-bottom-left-radius:1px;border-bottom-right-radius:1px;line-height:1;-ms-flex-negative:0;flex-shrink:0}.k-dialog-footer .k-button-group{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.k-dialog-footer .k-button-group .k-button{padding:.75rem 1rem;line-height:1.25rem}.k-dialog-footer .k-button-group .k-button:first-child{text-align:left;padding-left:1.5rem}.k-dialog-footer .k-button-group .k-button:last-child{text-align:right;padding-right:1.5rem}.k-dialog-pagination{margin-bottom:-1.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-dialog-search{margin-bottom:.75rem}.k-dialog-search.k-input{background:rgba(0,0,0,.075);padding:0 1rem;height:36px;border-radius:1px}.k-error-details{background:#fff;display:block;overflow:auto;padding:1rem;font-size:.875rem;line-height:1.25em;margin-top:.75rem}.k-error-details dt{color:#d16464;margin-bottom:.25rem}.k-error-details dd{overflow:hidden;overflow-wrap:break-word;text-overflow:ellipsis}.k-error-details dd:not(:last-of-type){margin-bottom:1.5em}.k-error-details li:not(:last-child){border-bottom:1px solid #efefef;padding-bottom:.25rem;margin-bottom:.25rem}.k-files-dialog .k-list-item{cursor:pointer}.k-page-remove-warning{margin:1.5rem 0}.k-page-remove-warning .k-box{font-size:1rem;line-height:1.5em;padding-top:.75rem;padding-bottom:.75rem}.k-pages-dialog-navbar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-bottom:.5rem;padding-right:38px}.k-pages-dialog-navbar .k-button{width:38px}.k-pages-dialog-navbar .k-button[disabled]{opacity:0}.k-pages-dialog-navbar .k-headline{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:center}.k-pages-dialog .k-list-item{cursor:pointer}.k-pages-dialog .k-list-item .k-button[data-theme=disabled],.k-pages-dialog .k-list-item .k-button[disabled]{opacity:.25}.k-pages-dialog .k-list-item .k-button[data-theme=disabled]:hover{opacity:1}.k-users-dialog .k-list-item{cursor:pointer}.k-calendar-input{padding:.5rem;background:#16171a;color:#efefef;border-radius:1px}.k-calendar-table{table-layout:fixed;width:100%;min-width:15rem;padding-top:.5rem}.k-calendar-input>nav{display:-webkit-box;display:-ms-flexbox;display:flex;direction:ltr}.k-calendar-input>nav .k-button{padding:.5rem}.k-calendar-selects{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}[dir=ltr] .k-calendar-selects{direction:ltr}[dir=rtl] .k-calendar-selects{direction:rtl}.k-calendar-selects .k-select-input{padding:0 .5rem;font-weight:400;font-size:.875rem}.k-calendar-selects .k-select-input:focus-within{color:#81a2be!important}.k-calendar-input th{padding:.5rem 0;color:#999;font-size:.75rem;font-weight:400;text-align:center}.k-calendar-day .k-button{width:2rem;height:2rem;margin:0 auto;color:#fff;line-height:1.75rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:50%;border:2px solid transparent}.k-calendar-day .k-button .k-button-text{opacity:1}.k-calendar-table .k-button:hover{color:#fff}.k-calendar-day:hover .k-button{border-color:hsla(0,0%,100%,.25)}.k-calendar-day[aria-current=date] .k-button{color:#81a2be;font-weight:500}.k-calendar-day[aria-selected=date] .k-button{border-color:#a7bd68;color:#a7bd68}.k-calendar-today{text-align:center;padding-top:.5rem}.k-calendar-today .k-button{color:#81a2be;font-size:.75rem;padding:1rem}.k-calendar-today .k-button-text{opacity:1}.k-counter{font-size:.75rem;color:#16171a;font-weight:600}.k-counter[data-invalid]{-webkit-box-shadow:none;box-shadow:none;border:0;color:#c82829}.k-counter-rules{color:#777;font-weight:400}[dir=ltr] .k-counter-rules{padding-left:.5rem}[dir=rtl] .k-counter-rules{padding-right:.5rem}.k-form-submitter{display:none}.k-form-buttons[data-theme=changes]{background:#de935f}.k-form-buttons[data-theme=lock]{background:#d16464}.k-form-buttons[data-theme=unlock]{background:#81a2be}.k-form-buttons .k-view{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.k-form-button.k-button,.k-form-buttons .k-view{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-form-button.k-button{font-weight:500;white-space:nowrap;line-height:1;height:2.5rem;padding:0 1rem}.k-form-button:first-child{margin-left:-1rem}.k-form-button:last-child{margin-right:-1rem}.k-form-lock-info{display:-webkit-box;display:-ms-flexbox;display:flex;font-size:.875rem;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:1.5em;padding:.625rem 0;margin-right:3rem}.k-form-lock-info>.k-icon{margin-right:.5rem}.k-form-lock-buttons{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0}.k-form-lock-loader{-webkit-animation:Spin 4s linear infinite;animation:Spin 4s linear infinite}.k-form-lock-loader .k-icon-loader{display:-webkit-box;display:-ms-flexbox;display:flex}.k-form-indicator-icon{color:#de935f}.k-form-indicator-info{font-size:.875rem;font-weight:600;padding:.75rem 1rem .25rem;line-height:1.25em;width:15rem}.k-field-label{font-weight:600;display:block;padding:0 0 .75rem;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;line-height:1.25rem}.k-field-label abbr{text-decoration:none;color:#999;padding-left:.25rem}.k-field-header{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.k-field-options{position:absolute;top:calc(-.5rem - 1px)}[dir=ltr] .k-field-options{right:0}[dir=rtl] .k-field-options{left:0}.k-field-options.k-button-group .k-dropdown{height:auto}.k-field-options.k-button-group .k-field-options-button.k-button{padding:.75rem;display:-webkit-box;display:-ms-flexbox;display:flex}.k-field[data-disabled]{cursor:not-allowed;opacity:.4}.k-field[data-disabled] *{pointer-events:none}.k-field[data-disabled] .k-text[data-theme=help] *{pointer-events:auto}.k-field:focus-within>.k-field-header>.k-field-counter{display:block}.k-field-help{padding-top:.5rem}.k-fieldset{border:0}.k-fieldset .k-grid{grid-row-gap:2.25rem}@media screen and (min-width:30em){.k-fieldset .k-grid{grid-column-gap:1.5rem}}.k-sections>.k-column[data-width="1/3"] .k-fieldset .k-grid,.k-sections>.k-column[data-width="1/4"] .k-fieldset .k-grid{grid-template-columns:repeat(1,1fr)}.k-sections>.k-column[data-width="1/3"] .k-fieldset .k-grid .k-column,.k-sections>.k-column[data-width="1/4"] .k-fieldset .k-grid .k-column{grid-column-start:auto}.k-input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:1;border:0;outline:0;background:none}.k-input-element{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.k-input-icon{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:0}.k-input[data-disabled]{pointer-events:none}.k-input[data-theme=field]{line-height:1;border:1px solid #ccc;background:#fff}.k-input[data-theme=field]:focus-within{border:1px solid #4271ae;-webkit-box-shadow:rgba(66,113,174,.25) 0 0 0 2px;box-shadow:0 0 0 2px rgba(66,113,174,.25)}.k-input[data-theme=field][data-disabled]{background:#efefef}.k-input[data-theme=field] .k-input-icon{width:2.25rem}.k-input[data-theme=field] .k-input-after,.k-input[data-theme=field] .k-input-before,.k-input[data-theme=field] .k-input-icon{-ms-flex-item-align:stretch;align-self:stretch;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-negative:0;flex-shrink:0}.k-input[data-theme=field] .k-input-after,.k-input[data-theme=field] .k-input-before{padding:0 .5rem}.k-input[data-theme=field] .k-input-before{color:#777;padding-right:0}.k-input[data-theme=field] .k-input-after{color:#777;padding-left:0}.k-input[data-theme=field] .k-input-icon>.k-dropdown{width:100%;height:100%}.k-input[data-theme=field] .k-input-icon-button{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0}.k-input[data-theme=field] .k-number-input,.k-input[data-theme=field] .k-select-input,.k-input[data-theme=field] .k-text-input{padding:.5rem;line-height:1.25rem}.k-input[data-theme=field] .k-date-input .k-select-input,.k-input[data-theme=field] .k-time-input .k-select-input{padding-left:0;padding-right:0}[dir=ltr] .k-input[data-theme=field] .k-date-input .k-select-input:first-child,[dir=ltr] .k-input[data-theme=field] .k-time-input .k-select-input:first-child{padding-left:.5rem}[dir=rtl] .k-input[data-theme=field] .k-date-input .k-select-input:first-child,[dir=rtl] .k-input[data-theme=field] .k-time-input .k-select-input:first-child{padding-right:.5rem}.k-input[data-theme=field] .k-date-input .k-select-input:focus-within,.k-input[data-theme=field] .k-time-input .k-select-input:focus-within{color:#4271ae;font-weight:600}.k-input[data-theme=field] .k-time-input .k-time-input-meridiem{padding-left:.5rem}.k-input[data-theme=field][data-type=checkboxes] .k-checkboxes-input li,.k-input[data-theme=field][data-type=checkboxes] .k-radio-input li,.k-input[data-theme=field][data-type=radio] .k-checkboxes-input li,.k-input[data-theme=field][data-type=radio] .k-radio-input li{min-width:0;overflow-wrap:break-word}.k-input[data-theme=field][data-type=checkboxes] .k-input-before{border-right:1px solid #efefef}.k-input[data-theme=field][data-type=checkboxes] .k-input-element+.k-input-after,.k-input[data-theme=field][data-type=checkboxes] .k-input-element+.k-input-icon{border-left:1px solid #efefef}.k-input[data-theme=field][data-type=checkboxes] .k-input-element{overflow:hidden}.k-input[data-theme=field][data-type=checkboxes] .k-checkboxes-input{display:grid;grid-template-columns:1fr;margin-bottom:-1px;margin-right:-1px}@media screen and (min-width:65em){.k-input[data-theme=field][data-type=checkboxes] .k-checkboxes-input{grid-template-columns:repeat(var(--columns),1fr)}}.k-input[data-theme=field][data-type=checkboxes] .k-checkboxes-input li{border-right:1px solid #efefef;border-bottom:1px solid #efefef}.k-input[data-theme=field][data-type=checkboxes] .k-checkboxes-input label{display:block;line-height:1.25rem;padding:.5rem .5rem}.k-input[data-theme=field][data-type=checkboxes] .k-checkbox-input-icon{top:.625rem;left:.5rem;margin-top:0}.k-input[data-theme=field][data-type=radio] .k-input-before{border-right:1px solid #efefef}.k-input[data-theme=field][data-type=radio] .k-input-element+.k-input-after,.k-input[data-theme=field][data-type=radio] .k-input-element+.k-input-icon{border-left:1px solid #efefef}.k-input[data-theme=field][data-type=radio] .k-input-element{overflow:hidden}.k-input[data-theme=field][data-type=radio] .k-radio-input{display:grid;grid-template-columns:1fr;margin-bottom:-1px;margin-right:-1px}@media screen and (min-width:65em){.k-input[data-theme=field][data-type=radio] .k-radio-input{grid-template-columns:repeat(var(--columns),1fr)}}.k-input[data-theme=field][data-type=radio] .k-radio-input li{border-right:1px solid #efefef;border-bottom:1px solid #efefef}.k-input[data-theme=field][data-type=radio] .k-radio-input label{display:block;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;min-height:2.25rem;line-height:1.25rem;padding:.5rem .5rem}.k-input[data-theme=field][data-type=radio] .k-radio-input label:before{top:.625rem;left:.5rem;margin-top:-1px}.k-input[data-theme=field][data-type=radio] .k-radio-input .k-radio-input-info{display:block;font-size:.875rem;color:#777;line-height:1.25rem;padding-top:.125rem}.k-input[data-theme=field][data-type=radio] .k-radio-input .k-icon{width:2.25rem;height:2.25rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.k-input[data-theme=field][data-type=range] .k-range-input{padding:.5rem}.k-input[data-theme=field][data-type=select]{position:relative}.k-input[data-theme=field][data-type=select] .k-input-icon{position:absolute;top:0;bottom:0}[dir=ltr] .k-input[data-theme=field][data-type=select] .k-input-icon{right:0}[dir=rtl] .k-input[data-theme=field][data-type=select] .k-input-icon{left:0}.k-input[data-theme=field][data-type=tags] .k-tags-input{padding:.25rem .25rem 0 .25rem}.k-input[data-theme=field][data-type=tags] .k-tag{margin-right:.25rem;margin-bottom:.25rem;height:1.75rem;font-size:.875rem}.k-input[data-theme=field][data-type=tags] .k-tags-input input{font-size:.875rem;padding:0 .25rem;height:1.75rem;line-height:1;margin-bottom:.25rem}.k-input[data-theme=field][data-type=tags] .k-tags-input .k-dropdown-content{top:calc(100% + .5rem + 2px)}.k-input[data-theme=field][data-type=multiselect]{position:relative}.k-input[data-theme=field][data-type=multiselect] .k-multiselect-input{padding:.25rem 2rem 0 .25rem;min-height:2.25rem}.k-input[data-theme=field][data-type=multiselect] .k-tag{margin-right:.25rem;margin-bottom:.25rem;height:1.75rem;font-size:.875rem}.k-input[data-theme=field][data-type=multiselect] .k-input-icon{position:absolute;top:0;right:0;bottom:0;pointer-events:none}.k-input[data-theme=field][data-type=textarea] .k-textarea-input-native{padding:.25rem .5rem;line-height:1.5rem}.k-input[data-theme=field][data-type=toggle] .k-input-before{padding-right:.25rem}.k-input[data-theme=field][data-type=toggle] .k-toggle-input{padding-left:.5rem}.k-input[data-theme=field][data-type=toggle] .k-toggle-input-label{padding:0 .5rem 0 .75rem;line-height:2.25rem}.k-upload input{position:absolute;top:0}[dir=ltr] .k-upload input{left:-3000px}[dir=rtl] .k-upload input{right:-3000px}.k-upload .k-headline{margin-bottom:.75rem}.k-upload-error-list,.k-upload-list{line-height:1.5em;font-size:.875rem}.k-upload-list-filename{color:#777}.k-upload-error-list li{padding:.75rem;background:#fff;border-radius:1px}.k-upload-error-list li:not(:last-child){margin-bottom:2px}.k-upload-error-filename{color:#c82829;font-weight:600}.k-upload-error-message{color:#777}.k-checkbox-input{position:relative;cursor:pointer}.k-checkbox-input-native{position:absolute;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:0;height:0;opacity:0}.k-checkbox-input-label{display:block;padding-left:1.75rem}.k-checkbox-input-icon{position:absolute;left:0;width:1rem;height:1rem;border:2px solid #999}.k-checkbox-input-icon svg{position:absolute;width:12px;height:12px;display:none}.k-checkbox-input-icon path{stroke:#fff}.k-checkbox-input-native:checked+.k-checkbox-input-icon{border-color:#16171a;background:#16171a}.k-checkbox-input-native:checked+.k-checkbox-input-icon svg{display:block}.k-checkbox-input-native:focus+.k-checkbox-input-icon{border-color:#4271ae}.k-checkbox-input-native:focus:checked+.k-checkbox-input-icon{background:#4271ae}.k-date-input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-date-input-separator{padding:0 .125rem}.k-datetime-input{display:-webkit-box;display:-ms-flexbox;display:flex}.k-datetime-input .k-time-input{padding-left:.5rem}.k-text-input{width:100%;border:0;background:none;font:inherit;color:inherit}.k-text-input::-webkit-input-placeholder{color:#999}.k-text-input::-moz-placeholder{color:#999}.k-text-input:-ms-input-placeholder{color:#999}.k-text-input::-ms-input-placeholder{color:#999}.k-text-input::placeholder{color:#999}.k-text-input:focus{outline:0}.k-text-input:invalid{-webkit-box-shadow:none;box-shadow:none;outline:0}.k-multiselect-input{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;position:relative;font-size:.875rem;min-height:2.25rem;line-height:1}.k-multiselect-input .k-sortable-ghost{background:#4271ae}.k-multiselect-input .k-dropdown-content{width:100%}.k-multiselect-search{margin-top:0!important;color:#fff;background:#16171a;border-bottom:1px dashed hsla(0,0%,100%,.2)}.k-multiselect-search>.k-button-text{-webkit-box-flex:1;-ms-flex:1;flex:1}.k-multiselect-search input{width:100%;color:#fff;background:none;border:none;outline:none;padding:.25rem 0;font:inherit}.k-multiselect-options{position:relative;max-height:240px;overflow-y:scroll;padding:.5rem 0}.k-multiselect-option{position:relative}.k-multiselect-option.selected{color:#a7bd68}.k-multiselect-option.disabled:not(.selected) .k-icon{opacity:0}.k-multiselect-option b{color:#81a2be;font-weight:700}.k-multiselect-value{color:#999;margin-left:.25rem}.k-multiselect-value:before{content:" ("}.k-multiselect-value:after{content:")"}.k-multiselect-input[data-layout=list] .k-tag{width:100%;margin-right:0!important}.k-number-input{width:100%;border:0;background:none;font:inherit;color:inherit}.k-number-input::-webkit-input-placeholder{color:$color-light-grey}.k-number-input::-moz-placeholder{color:$color-light-grey}.k-number-input:-ms-input-placeholder{color:$color-light-grey}.k-number-input::-ms-input-placeholder{color:$color-light-grey}.k-number-input::placeholder{color:$color-light-grey}.k-number-input:focus{outline:0}.k-number-input:invalid{-webkit-box-shadow:none;box-shadow:none;outline:0}.k-radio-input li{position:relative;line-height:1.5rem;padding-left:1.75rem}.k-radio-input input{position:absolute;width:0;height:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:0}.k-radio-input label{cursor:pointer;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-radio-input label:before{position:absolute;top:.175em;left:0;content:"";width:1rem;height:1rem;border-radius:50%;border:2px solid #999;-webkit-box-shadow:#fff 0 0 0 2px inset;box-shadow:inset 0 0 0 2px #fff}.k-radio-input input:checked+label:before{border-color:#16171a;background:#16171a}.k-radio-input input:focus+label:before{border-color:#4271ae}.k-radio-input input:focus:checked+label:before{background:#4271ae}.k-radio-input-text{display:block}.k-range-input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-range-input-native{--min:0;--max:100;--value:0;--range:calc(var(--max) - var(--min));--ratio:calc((var(--value) - var(--min))/var(--range));--position:calc(8px + var(--ratio)*(100% - 16px));-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:16px;background:transparent;font-size:.875rem;line-height:1}.k-range-input-native::-webkit-slider-thumb{-webkit-appearance:none;appearance:none}.k-range-input-native::-webkit-slider-runnable-track{border:none;border-radius:4px;width:100%;height:4px;background:#ccc;background:-webkit-gradient(linear,left top,left bottom,from(#16171a),to(#16171a)) 0/var(--position) 100% no-repeat #ccc;background:linear-gradient(#16171a,#16171a) 0/var(--position) 100% no-repeat #ccc}.k-range-input-native::-moz-range-track{border:none;border-radius:4px;width:100%;height:4px;background:#ccc}.k-range-input-native::-ms-track{border:none;border-radius:4px;width:100%;height:4px;background:#ccc}.k-range-input-native::-moz-range-progress{height:4px;background:#16171a}.k-range-input-native::-ms-fill-lower{height:4px;background:#16171a}.k-range-input-native::-webkit-slider-thumb{margin-top:-6px;-webkit-box-sizing:border-box;box-sizing:border-box;width:16px;height:16px;background:#efefef;border:4px solid #16171a;border-radius:50%;cursor:pointer}.k-range-input-native::-moz-range-thumb{box-sizing:border-box;width:16px;height:16px;background:#efefef;border:4px solid #16171a;border-radius:50%;cursor:pointer}.k-range-input-native::-ms-thumb{margin-top:0;box-sizing:border-box;width:16px;height:16px;background:#efefef;border:4px solid #16171a;border-radius:50%;cursor:pointer}.k-range-input-native::-ms-tooltip{display:none}.k-range-input-native:focus{outline:none}.k-range-input-native:focus::-webkit-slider-runnable-track{border:none;border-radius:4px;width:100%;height:4px;background:#ccc;background:-webkit-gradient(linear,left top,left bottom,from(#4271ae),to(#4271ae)) 0/var(--position) 100% no-repeat #ccc;background:linear-gradient(#4271ae,#4271ae) 0/var(--position) 100% no-repeat #ccc}.k-range-input-native:focus::-moz-range-progress{height:4px;background:#4271ae}.k-range-input-native:focus::-ms-fill-lower{height:4px;background:#4271ae}.k-range-input-native:focus::-webkit-slider-thumb{background:#efefef;border:4px solid #4271ae}.k-range-input-native:focus::-moz-range-thumb{background:#efefef;border:4px solid #4271ae}.k-range-input-native:focus::-ms-thumb{background:#efefef;border:4px solid #4271ae}.k-range-input-tooltip{position:relative;max-width:20%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:#fff;font-size:.75rem;line-height:1;text-align:center;border-radius:1px;background:#16171a;margin-left:1rem;padding:0 .25rem;white-space:nowrap}.k-range-input-tooltip:after{position:absolute;top:50%;left:-5px;width:0;height:0;-webkit-transform:translateY(-50%);transform:translateY(-50%);border-top:5px solid transparent;border-right:5px solid #16171a;border-bottom:5px solid transparent;content:""}.k-range-input-tooltip>*{padding:4px}.k-select-input{position:relative;display:block;cursor:pointer;overflow:hidden}.k-select-input-native{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;font:inherit;z-index:1;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.k-select-input-native[disabled]{cursor:default}.k-select-input-native{font-weight:400}.k-tags-input{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.k-tags-input .k-sortable-ghost{background:#4271ae}.k-tags-input-element{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:0;flex-basis:0;min-width:0}.k-tags-input:focus-within .k-tags-input-element{-ms-flex-preferred-size:4rem;flex-basis:4rem}.k-tags-input-element input{font:inherit;border:0;width:100%;background:none}.k-tags-input-element input:focus{outline:0}.k-tags-input[data-layout=list] .k-tag{width:100%;margin-right:0!important}.k-textarea-input-wrapper{position:relative}.k-textarea-input-native{resize:none;border:0;width:100%;background:none;font:inherit;line-height:1.5em;color:inherit}.k-textarea-input-native::-webkit-input-placeholder{color:#999}.k-textarea-input-native::-moz-placeholder{color:#999}.k-textarea-input-native:-ms-input-placeholder{color:#999}.k-textarea-input-native::-ms-input-placeholder{color:#999}.k-textarea-input-native::placeholder{color:#999}.k-textarea-input-native:focus{outline:0}.k-textarea-input-native:invalid{-webkit-box-shadow:none;box-shadow:none;outline:0}.k-textarea-input-native[data-size=small]{min-height:7.5rem}.k-textarea-input-native[data-size=medium]{min-height:15rem}.k-textarea-input-native[data-size=large]{min-height:30rem}.k-textarea-input-native[data-size=huge]{min-height:45rem}.k-textarea-input-native[data-font=monospace]{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}.k-toolbar{margin-bottom:.25rem;color:#aaa}.k-textarea-input:focus-within .k-toolbar{position:-webkit-sticky;position:sticky;top:0;right:0;left:0;z-index:1;-webkit-box-shadow:rgba(0,0,0,.05) 0 2px 5px;box-shadow:0 2px 5px rgba(0,0,0,.05);border-bottom:1px solid rgba(0,0,0,.1);color:#000}.k-time-input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:1}.k-time-input-separator{padding:0 .125rem}.k-time-input-meridiem{padding-left:.5rem}.k-toggle-input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-toggle-input-native{position:relative;height:16px;width:32px;border-radius:16px;border:2px solid #999;-webkit-box-shadow:inset 0 0 0 2px #fff,inset -16px 0 0 2px #fff;box-shadow:inset 0 0 0 2px #fff,inset -16px 0 0 2px #fff;background-color:#999;outline:0;-webkit-transition:all .1s ease-in-out;transition:all .1s ease-in-out;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;-ms-flex-negative:0;flex-shrink:0}.k-toggle-input-native:checked{border-color:#16171a;-webkit-box-shadow:inset 0 0 0 2px #fff,inset 16px 0 0 2px #fff;box-shadow:inset 0 0 0 2px #fff,inset 16px 0 0 2px #fff;background-color:#16171a}.k-toggle-input-native[disabled]{border-color:#ccc;-webkit-box-shadow:inset 0 0 0 2px #efefef,inset -16px 0 0 2px #efefef;box-shadow:inset 0 0 0 2px #efefef,inset -16px 0 0 2px #efefef;background-color:#ccc}.k-toggle-input-native[disabled]:checked{-webkit-box-shadow:inset 0 0 0 2px #efefef,inset 16px 0 0 2px #efefef;box-shadow:inset 0 0 0 2px #efefef,inset 16px 0 0 2px #efefef}.k-toggle-input-native:focus:checked{border:2px solid #4271ae;background-color:#4271ae}.k-toggle-input-native::-ms-check{opacity:0}.k-toggle-input-label{cursor:pointer;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.k-files-field[data-disabled] *{pointer-events:all!important}body{counter-reset:headline-counter}.k-headline-field{position:relative;padding-top:1.5rem}.k-headline-field[data-numbered]:before{counter-increment:headline-counter;content:counter(headline-counter,decimal-leading-zero);color:#4271ae;font-weight:400;padding-right:.25rem}.k-fieldset>.k-grid .k-column:first-child .k-headline-field{padding-top:0}.k-info-field .k-headline{padding-bottom:.75rem;line-height:1.25rem}.k-line-field{position:relative;border:0;height:3rem;width:auto}.k-line-field:after{position:absolute;content:"";top:50%;margin-top:-1px;left:0;right:0;height:1px;background:#ccc}.k-pages-field[data-disabled] *{pointer-events:all!important}.k-structure-table{position:relative;table-layout:fixed;width:100%;background:#fff;font-size:.875rem;border-spacing:0;-webkit-box-shadow:rgba(22,23,26,.05) 0 2px 5px;box-shadow:0 2px 5px rgba(22,23,26,.05)}.k-structure-table td,.k-structure-table th{border-bottom:1px solid #efefef;line-height:1.25em;overflow:hidden;text-overflow:ellipsis}[dir=ltr] .k-structure-table td,[dir=ltr] .k-structure-table th{border-right:1px solid #efefef}[dir=rtl] .k-structure-table td,[dir=rtl] .k-structure-table th{border-left:1px solid #efefef}.k-structure-table th{position:-webkit-sticky;position:sticky;top:0;right:0;left:0;width:100%;background:#fff;font-weight:400;z-index:1;color:#777;padding:0 .75rem;height:38px}[dir=ltr] .k-structure-table th{text-align:left}[dir=rtl] .k-structure-table th{text-align:right}.k-structure-table td:last-child,.k-structure-table th:last-child{width:38px}[dir=ltr] .k-structure-table td:last-child,[dir=ltr] .k-structure-table th:last-child{border-right:0}[dir=rtl] .k-structure-table td:last-child,[dir=rtl] .k-structure-table th:last-child{border-left:0}.k-structure-table tr:last-child td{border-bottom:0}.k-structure-table tbody tr:hover td{background:hsla(0,0%,93.7%,.25)}@media screen and (max-width:65em){.k-structure-table td,.k-structure-table th{display:none}.k-structure-table td:first-child,.k-structure-table td:last-child,.k-structure-table td:nth-child(2),.k-structure-table th:first-child,.k-structure-table th:last-child,.k-structure-table th:nth-child(2){display:table-cell}}.k-structure-table .k-structure-table-column[data-align=center]{text-align:center}[dir=ltr] .k-structure-table .k-structure-table-column[data-align=right]{text-align:right}[dir=rtl] .k-structure-table .k-structure-table-column[data-align=right]{text-align:left}.k-structure-table .k-structure-table-column[data-align=right]>.k-input{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.k-structure-table .k-structure-table-column[data-width="1/2"]{width:50%}.k-structure-table .k-structure-table-column[data-width="1/3"]{width:33.33%}.k-structure-table .k-structure-table-column[data-width="1/4"]{width:25%}.k-structure-table .k-structure-table-column[data-width="1/5"]{width:20%}.k-structure-table .k-structure-table-column[data-width="1/6"]{width:16.66%}.k-structure-table .k-structure-table-column[data-width="1/8"]{width:12.5%}.k-structure-table .k-structure-table-column[data-width="1/9"]{width:11.11%}.k-structure-table .k-structure-table-column[data-width="2/3"]{width:66.66%}.k-structure-table .k-structure-table-column[data-width="3/4"]{width:75%}.k-structure-table .k-structure-table-index{width:38px;text-align:center}.k-structure-table .k-structure-table-index-number{font-size:.75rem;color:#999;padding-top:.15rem}.k-structure-table .k-sort-handle{width:38px;height:38px;display:none}.k-structure-table[data-sortable] tr:hover .k-structure-table-index-number{display:none}.k-structure-table[data-sortable] tr:hover .k-sort-handle{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.k-structure-table .k-structure-table-option{width:38px;text-align:center}.k-structure-table .k-structure-table-option .k-button{width:38px;height:38px}.k-structure-table .k-structure-table-text{padding:0 .75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.k-structure-table .k-sortable-ghost{background:#fff;-webkit-box-shadow:rgba(22,23,26,.25) 0 5px 10px;box-shadow:0 5px 10px rgba(22,23,26,.25);outline:2px solid #4271ae;margin-bottom:2px;cursor:grabbing;cursor:-webkit-grabbing}.k-sortable-row-fallback{opacity:0!important}.k-structure-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;height:100vh}.k-structure-form{position:relative;z-index:3;border-radius:1px;margin-bottom:1px;-webkit-box-shadow:rgba(22,23,26,.05) 0 0 0 3px;box-shadow:0 0 0 3px rgba(22,23,26,.05);border:1px solid #ccc;background:#efefef}.k-structure-form-fields{padding:1.5rem 1.5rem 2rem}.k-structure-form-buttons{border-top:1px solid #ccc;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.k-structure-form-buttons .k-pagination{display:none}@media screen and (min-width:65em){.k-structure-form-buttons .k-pagination{display:-webkit-box;display:-ms-flexbox;display:flex}}.k-structure-form-buttons .k-pagination>.k-button,.k-structure-form-buttons .k-pagination>span{padding:.875rem 1rem!important}.k-structure-form-cancel-button,.k-structure-form-submit-button{padding:.875rem 1.5rem;line-height:1rem;display:-webkit-box;display:-ms-flexbox;display:flex}.k-field-counter{display:none}.k-text-field:focus-within .k-field-counter{display:block}.k-users-field[data-disabled] *{pointer-events:all!important}.k-toolbar{background:#fff;border-bottom:1px solid #efefef;height:38px}.k-toolbar-wrapper{position:absolute;top:0;right:0;left:0;max-width:100%}.k-toolbar-buttons{display:-webkit-box;display:-ms-flexbox;display:flex}.k-toolbar-divider{width:1px;background:#efefef}.k-toolbar-button{width:36px;height:36px}.k-toolbar-button:hover{background:hsla(0,0%,93.7%,.5)}.k-files-field-preview{display:grid;grid-gap:.5rem;grid-template-columns:repeat(auto-fill,1.525rem);padding:0 .75rem}.k-files-field-preview li{line-height:0}.k-files-field-preview li .k-icon{height:100%}.k-url-field-preview{padding:0 .75rem}.k-url-field-preview a{color:#4271ae;text-decoration:underline;-webkit-transition:color .3s;transition:color .3s;overflow:hidden;white-space:nowrap;max-width:100%;text-overflow:ellipsis}.k-url-field-preview a:hover{color:#000}.k-pages-field-preview{padding:0 .25rem 0 .75rem;display:-webkit-box;display:-ms-flexbox;display:flex}.k-pages-field-preview li{line-height:0;margin-right:.5rem}.k-pages-field-preview .k-link{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;background:#efefef;-webkit-box-shadow:rgba(22,23,26,.05) 0 2px 5px;box-shadow:0 2px 5px rgba(22,23,26,.05)}.k-pages-field-preview-image{width:1.525rem;height:1.525rem;color:#999!important}.k-pages-field-preview figcaption{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;line-height:1.5em;padding:0 .5rem;border:1px solid #ccc;border-left:0;border-radius:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.k-toggle-field-preview label{padding:0 .25rem 0 .75rem;display:-webkit-box;display:-ms-flexbox;display:flex;height:38px;cursor:pointer;overflow:hidden;white-space:nowrap}[dir=ltr] .k-toggle-field-preview .k-toggle-input-label{padding-left:.5rem}[dir=ltr] [data-align=right] .k-toggle-field-preview .k-toggle-input-label,[dir=rtl] .k-toggle-field-preview .k-toggle-input-label{padding-right:.5rem}[dir=rtl] [data-align=right] .k-toggle-field-preview .k-toggle-input-label{padding-left:.5rem}[dir=ltr] .k-toggle-field-preview .k-toggle-input{padding:0 .25rem 0 .75rem}[dir=rtl] .k-toggle-field-preview .k-toggle-input{padding:0 .75rem 0 .25rem}[data-align=right] .k-toggle-field-preview .k-toggle-input{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}[dir=ltr] [data-align=right] .k-toggle-field-preview .k-toggle-input{padding:0 .75rem 0 .25rem}.k-users-field-preview,[dir=rtl] [data-align=right] .k-toggle-field-preview .k-toggle-input{padding:0 .25rem 0 .75rem}.k-users-field-preview{display:-webkit-box;display:-ms-flexbox;display:flex}.k-users-field-preview li{line-height:0;margin-right:.5rem}.k-users-field-preview .k-link{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;background:#efefef;-webkit-box-shadow:rgba(22,23,26,.05) 0 2px 5px;box-shadow:0 2px 5px rgba(22,23,26,.05)}.k-users-field-preview-avatar{width:1.525rem;height:1.525rem;color:#999!important}.k-users-field-preview-avatar.k-image{display:block}.k-users-field-preview figcaption{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;line-height:1.5em;padding:0 .5rem;border:1px solid #ccc;border-left:0;border-radius:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.k-bar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;line-height:1}.k-bar-slot{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.k-bar-slot[data-position=center]{text-align:center}[dir=ltr] .k-bar-slot[data-position=right]{text-align:right}[dir=rtl] .k-bar-slot[data-position=right]{text-align:left}.k-box{word-wrap:break-word;font-size:.875rem}.k-box:not([data-theme=none]){background:#d9d9d9;border-radius:1px;padding:.375rem .75rem;line-height:1.25rem;border-left:2px solid #999;padding:.5rem 1.5rem}.k-box[data-theme=code]{background:#16171a;border:1px solid #000;color:#efefef;font-family:Input,Menlo,monospace;font-size:.875rem;line-height:1.5}.k-box[data-theme=button]{padding:0}.k-box[data-theme=button] .k-button{padding:0 .75rem;height:2.25rem;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:2rem;text-align:left}.k-box[data-theme=positive]{background:#dbe4c1;border:0;border-left:2px solid #a7bd68;padding:.5rem 1.5rem}.k-box[data-theme=negative]{background:#eec6c6;border:0;border-left:2px solid #d16464;padding:.5rem 1.5rem}.k-box[data-theme=notice]{background:#f4dac9;border:0;border-left:2px solid #de935f;padding:.5rem 1.5rem}.k-box[data-theme=info]{background:#d5e0e9;border:0;border-left:2px solid #81a2be;padding:.5rem 1.5rem}.k-box[data-theme=empty]{text-align:center;border-left:0;padding:3rem 1.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;background:#efefef;border-radius:1px;color:#777;border:1px dashed #ccc}.k-box[data-theme=empty] .k-icon{margin-bottom:.5rem;color:#999}.k-box[data-theme=empty] p{color:#777}.k-card{position:relative;border-radius:1px;-webkit-box-shadow:rgba(22,23,26,.05) 0 2px 5px;box-shadow:0 2px 5px rgba(22,23,26,.05)}.k-card,.k-card a{min-width:0;background:#fff}.k-card:focus-within{-webkit-box-shadow:#4271ae 0 0 0 2px;box-shadow:0 0 0 2px #4271ae}.k-card a:focus{outline:0}.k-card .k-sort-handle{position:absolute;top:.75rem;width:2rem;height:2rem;border-radius:1px;background:#fff;opacity:0;color:#16171a;z-index:1;will-change:opacity;-webkit-transition:opacity .3s;transition:opacity .3s}[dir=ltr] .k-card .k-sort-handle{right:.75rem}[dir=rtl] .k-card .k-sort-handle{left:.75rem}.k-cards:hover .k-sort-handle{opacity:.25}.k-card:hover .k-sort-handle{opacity:1}.k-card.k-sortable-ghost{outline:2px solid #4271ae;border-radius:0}.k-card-icon,.k-card-image{border-top-left-radius:1px;border-top-right-radius:1px;overflow:hidden}.k-card-icon{position:relative;display:block}.k-card-icon .k-icon{position:absolute;top:0;right:0;bottom:0;left:0}.k-card-icon .k-icon-emoji{font-size:3rem}.k-card-icon .k-icon svg{width:3rem;height:3rem}.k-card-content{line-height:1.25rem;border-bottom-left-radius:1px;border-bottom-right-radius:1px;min-height:2.25rem;padding:.5rem .75rem;overflow-wrap:break-word;word-wrap:break-word}.k-card-text{display:block;font-weight:400;text-overflow:ellipsis;font-size:.875rem}.k-card-text[data-noinfo]:after{content:" ";height:1em;width:5rem;display:inline-block}.k-card-info{color:#777;display:block;font-size:.875rem;text-overflow:ellipsis;overflow:hidden}[dir=ltr] .k-card-info{margin-right:4rem}[dir=rtl] .k-card-info{margin-left:4rem}.k-card-options{position:absolute;bottom:0}[dir=ltr] .k-card-options{right:0}[dir=rtl] .k-card-options{left:0}.k-card-options>.k-button{position:relative;float:left;height:2.25rem;padding:0 .75rem;line-height:1}.k-card-options-dropdown{top:2.25rem}.k-cards{display:grid;grid-gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));grid-template-columns:repeat(auto-fill,minmax(min(12rem,100%),1fr))}@media screen and (min-width:30em){.k-cards[data-size=tiny]{grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));grid-template-columns:repeat(auto-fill,minmax(min(12rem,100%),1fr))}.k-cards[data-size=small]{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));grid-template-columns:repeat(auto-fill,minmax(min(16rem,100%),1fr))}.k-cards[data-size=medium]{grid-template-columns:repeat(auto-fill,minmax(24rem,1fr));grid-template-columns:repeat(auto-fill,minmax(min(24rem,100%),1fr))}.k-cards[data-size=huge],.k-cards[data-size=large]{grid-template-columns:1fr}}@media screen and (min-width:65em){.k-cards[data-size=large]{grid-template-columns:repeat(auto-fill,minmax(32rem,1fr));grid-template-columns:repeat(auto-fill,minmax(min(32rem,100%),1fr))}}.k-collection-help{padding:.5rem .75rem}.k-collection-footer{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-right:-.75rem;margin-left:-.75rem}.k-collection-pagination{line-height:1.25rem;min-height:2.75rem}.k-collection-pagination .k-pagination .k-button{padding:.5rem .75rem;line-height:1.125rem}.k-column{min-width:0;grid-column-start:span 12}.k-column[data-sticky]>div{position:-webkit-sticky;position:sticky;top:4vh;z-index:2}@media screen and (min-width:65em){.k-column[data-width="1/1"],.k-column[data-width="2/2"],.k-column[data-width="3/3"],.k-column[data-width="4/4"],.k-column[data-width="6/6"]{grid-column-start:span 12}.k-column[data-width="1/2"],.k-column[data-width="2/4"],.k-column[data-width="3/6"]{grid-column-start:span 6}.k-column[data-width="1/3"],.k-column[data-width="2/6"]{grid-column-start:span 4}.k-column[data-width="2/3"],.k-column[data-width="4/6"]{grid-column-start:span 8}.k-column[data-width="1/4"]{grid-column-start:span 3}.k-column[data-width="1/6"]{grid-column-start:span 2}.k-column[data-width="5/6"]{grid-column-start:span 10}.k-column[data-width="3/4"]{grid-column-start:span 9}}.k-dropzone{position:relative}.k-dropzone:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;display:none;pointer-events:none;z-index:1}.k-dropzone[data-over]:after{display:block;outline:1px solid #4271ae;-webkit-box-shadow:rgba(66,113,174,.25) 0 0 0 3px;box-shadow:0 0 0 3px rgba(66,113,174,.25)}.k-empty{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;border-radius:1px;color:#777;border:1px dashed #ccc}.k-empty p{font-size:.875rem;color:#777}.k-empty>.k-icon{color:#999}.k-empty[data-layout=cards]{text-align:center;padding:1.5rem;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.k-empty[data-layout=cards] .k-icon{margin-bottom:1rem}.k-empty[data-layout=cards] .k-icon svg{width:2rem;height:2rem}.k-empty[data-layout=list]{min-height:38px}.k-empty[data-layout=list]>.k-icon{width:36px;min-height:36px;border-right:1px solid rgba(0,0,0,.05)}.k-empty[data-layout=list]>p{line-height:1.25rem;padding:.5rem .75rem}.k-file-preview{background:#2d2f36}.k-file-preview-layout{display:grid}@media screen and (max-width:65em){.k-file-preview-layout{padding:0!important}}@media screen and (min-width:30em){.k-file-preview-layout{grid-template-columns:50% auto}}@media screen and (min-width:65em){.k-file-preview-layout{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}}.k-file-preview-layout>*{min-width:0}.k-file-preview-image{position:relative;background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXR0ZXJuIGlkPSJhIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHBhdHRlcm5Vbml0cz0idXNlclNwYWNlT25Vc2UiPjxwYXRoIGZpbGw9InJnYmEoMCwgMCwgMCwgMC4yKSIgZD0iTTAgMGgxMHYxMEgwem0xMCAxMGgxMHYxMEgxMHoiLz48L3BhdHRlcm4+PHJlY3QgZmlsbD0idXJsKCNhKSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIvPjwvc3ZnPg==")}@media screen and (min-width:65em){.k-file-preview-image{width:33.33%}}@media screen and (min-width:90em){.k-file-preview-image{width:25%}}.k-file-preview-image .k-image span{overflow:hidden;padding-bottom:66.66%}@media screen and (min-width:30em) and (max-width:65em){.k-file-preview-image .k-image span{position:absolute;top:0;left:0;bottom:0;right:0;padding-bottom:0!important}}@media screen and (min-width:65em){.k-file-preview-image .k-image span{padding-bottom:100%}}.k-file-preview-placeholder{display:block;padding-bottom:100%}.k-file-preview-image img{padding:3rem}.k-file-preview-image-link{display:block;outline:0}.k-file-preview-image-link.k-link[data-tabbed]{-webkit-box-shadow:none;box-shadow:none;outline:2px solid #4271ae;outline-offset:-2px}.k-file-preview-icon{position:relative;display:block;padding-bottom:100%;overflow:hidden;color:hsla(0,0%,100%,.5)}.k-file-preview-icon svg{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%) scale(4);transform:translate(-50%,-50%) scale(4)}.k-file-preview-details{padding:1.5rem;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}@media screen and (min-width:65em){.k-file-preview-details{padding:3rem}}.k-file-preview-details ul{line-height:1.5em;max-width:50rem;display:grid;grid-gap:1.5rem 3rem;grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}@media screen and (min-width:30em){.k-file-preview-details ul{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}.k-file-preview-details h3{font-size:.875rem;font-weight:500;color:#999}.k-file-preview-details p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:hsla(0,0%,100%,.75);font-size:.875rem}.k-file-preview-details p a{display:block;width:100%;overflow:hidden;text-overflow:ellipsis}.k-grid{--columns:12;display:grid;grid-column-gap:0;grid-row-gap:0;grid-template-columns:1fr}@media screen and (min-width:30em){.k-grid[data-gutter=small]{grid-column-gap:1rem;grid-row-gap:1rem}.k-grid[data-gutter=huge],.k-grid[data-gutter=large],.k-grid[data-gutter=medium]{grid-column-gap:1.5rem;grid-row-gap:1.5rem}}@media screen and (min-width:65em){.k-grid{grid-template-columns:repeat(var(--columns),1fr)}.k-grid[data-gutter=large]{grid-column-gap:3rem}.k-grid[data-gutter=huge]{grid-column-gap:4.5rem}}@media screen and (min-width:90em){.k-grid[data-gutter=large]{grid-column-gap:4.5rem}.k-grid[data-gutter=huge]{grid-column-gap:6rem}}@media screen and (min-width:120em){.k-grid[data-gutter=large]{grid-column-gap:6rem}.k-grid[data-gutter=huge]{grid-column-gap:7.5rem}}.k-header{border-bottom:1px solid #ccc;margin-bottom:2rem;padding-top:4vh}.k-header .k-headline{min-height:1.25em;margin-bottom:.5rem;word-wrap:break-word}.k-header .k-header-buttons{margin-top:-.5rem;height:3.25rem}.k-header .k-headline-editable{cursor:pointer}.k-header .k-headline-editable .k-icon{color:#999;opacity:0;-webkit-transition:opacity .3s;transition:opacity .3s;display:inline-block}[dir=ltr] .k-header .k-headline-editable .k-icon{margin-left:.5rem}[dir=rtl] .k-header .k-headline-editable .k-icon{margin-right:.5rem}.k-header .k-headline-editable:hover .k-icon{opacity:1}.k-header-tabs{position:relative;background:#e9e9e9;border-top:1px solid #ccc;border-left:1px solid #ccc;border-right:1px solid #ccc}.k-header-tabs nav{display:-webkit-box;display:-ms-flexbox;display:flex;margin-left:-1px;margin-right:-1px}.k-header-tabs nav,.k-tab-button.k-button{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.k-tab-button.k-button{position:relative;z-index:1;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.625rem .75rem;font-size:.75rem;text-transform:uppercase;text-align:center;font-weight:500;border-left:1px solid transparent;border-right:1px solid #ccc;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-negative:1;flex-shrink:1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:15rem}@media screen and (min-width:30em){.k-tab-button.k-button{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}}@media screen and (min-width:30em){.k-tab-button.k-button .k-icon{margin-right:.5rem}}.k-tab-button.k-button>.k-button-text{padding-top:.375rem;font-size:10px;overflow:hidden;max-width:10rem;text-overflow:ellipsis}[dir=ltr] .k-tab-button.k-button>.k-button-text{padding-left:0}[dir=rtl] .k-tab-button.k-button>.k-button-text{padding-right:0}@media screen and (min-width:30em){.k-tab-button.k-button>.k-button-text{font-size:.75rem;padding-top:0}}.k-tab-button:last-child{border-right:1px solid transparent}.k-tab-button[aria-current]{position:relative;background:#efefef;border-right:1px solid #ccc;pointer-events:none}.k-tab-button[aria-current]:first-child{border-left:1px solid #ccc}.k-tab-button[aria-current]:after,.k-tab-button[aria-current]:before{position:absolute;content:""}.k-tab-button[aria-current]:before{left:-1px;right:-1px;height:2px;top:-1px;background:#16171a}.k-tab-button[aria-current]:after{left:0;right:0;height:1px;bottom:-1px;background:#efefef}.k-tabs-dropdown{top:100%;right:0}.k-list .k-list-item:not(:last-child){margin-bottom:2px}.k-list-item{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:#fff;border-radius:1px;-webkit-box-shadow:rgba(22,23,26,.05) 0 2px 5px;box-shadow:0 2px 5px rgba(22,23,26,.05)}.k-list-item .k-sort-handle{position:absolute;left:-1.5rem;width:1.5rem;height:38px;opacity:0}.k-list:hover .k-sort-handle{opacity:.25}.k-list-item:hover .k-sort-handle{opacity:1}.k-list-item.k-sortable-ghost{position:relative;outline:2px solid #4271ae;z-index:1;-webkit-box-shadow:rgba(22,23,26,.25) 0 5px 10px;box-shadow:0 5px 10px rgba(22,23,26,.25)}.k-list-item.k-sortable-fallback{opacity:.25!important;overflow:hidden}.k-list-item-image{width:38px;height:38px;overflow:hidden;-ms-flex-negative:0;flex-shrink:0;line-height:0}.k-list-item-image .k-image{width:38px;height:38px;-o-object-fit:contain;object-fit:contain}.k-list-item-image .k-icon{width:38px;height:38px}.k-list-item-image .k-icon svg{opacity:.5}.k-list-item-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-negative:1;flex-shrink:1;overflow:hidden;outline:none}.k-list-item-content[data-tabbed]{outline:none;-webkit-box-shadow:#4271ae 0 0 0 2px,rgba(66,113,174,.2) 0 0 0 2px;box-shadow:0 0 0 2px #4271ae,0 0 0 2px rgba(66,113,174,.2)}.k-list-item-text{display:-webkit-box;display:-ms-flexbox;display:flex;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;width:100%;line-height:1.25rem;padding:.5rem .75rem}.k-list-item-text em{font-style:normal;margin-right:1rem;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;font-size:.875rem;color:#16171a}.k-list-item-text em,.k-list-item-text small{min-width:0;overflow:hidden;text-overflow:ellipsis}.k-list-item-text small{color:#999;font-size:.75rem;color:#777;display:none}@media screen and (min-width:30em){.k-list-item-text small{display:block}}.k-list-item-status{height:auto!important}.k-list-item-options{position:relative;-ms-flex-negative:0;flex-shrink:0}.k-list-item-options .k-dropdown-content{top:38px}.k-list-item-options>.k-button{height:38px;padding:0 12px}.k-list-item-options>.k-button>.k-button-icon{height:38px}.k-view{padding-left:1.5rem;padding-right:1.5rem;margin:0 auto;max-width:100rem}@media screen and (min-width:30em){.k-view{padding-left:3rem;padding-right:3rem}}@media screen and (min-width:90em){.k-view{padding-left:6rem;padding-right:6rem}}.k-view[data-align=center]{height:calc(100vh - 6rem);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:0 3rem;overflow:auto}.k-view[data-align=center]>*{-ms-flex-preferred-size:22.5rem;flex-basis:22.5rem}.k-headline{font-size:1rem;font-weight:600;line-height:1.5em}.k-headline[data-size=small]{font-size:.875rem}.k-headline[data-size=large]{font-size:1.25rem;font-weight:400}@media screen and (min-width:65em){.k-headline[data-size=large]{font-size:1.5rem}}.k-headline[data-size=huge]{font-size:1.5rem;line-height:1.15em}@media screen and (min-width:65em){.k-headline[data-size=huge]{font-size:1.75rem}}.k-headline[data-theme=negative]{color:#c82829}.k-headline[data-theme=positive]{color:#5d800d}.k-headline abbr{color:#999;padding-left:.25rem;text-decoration:none}.k-icon{position:relative;line-height:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0}.k-icon svg{width:1rem;height:1rem;-moz-transform:scale(1)}.k-icon svg *{fill:currentColor}.k-icon[data-back=black]{background:#16171a;color:#fff}.k-icon[data-back=white]{background:#fff;color:#16171a}.k-icon[data-back=pattern]{background:#2d2f36 url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXR0ZXJuIGlkPSJhIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHBhdHRlcm5Vbml0cz0idXNlclNwYWNlT25Vc2UiPjxwYXRoIGZpbGw9InJnYmEoMCwgMCwgMCwgMC4yKSIgZD0iTTAgMGgxMHYxMEgwem0xMCAxMGgxMHYxMEgxMHoiLz48L3BhdHRlcm4+PHJlY3QgZmlsbD0idXJsKCNhKSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIvPjwvc3ZnPg==");color:#fff}.k-icon[data-size=medium] svg{width:2rem;height:2rem}.k-icon[data-size=large] svg{width:3rem;height:3rem}.k-icon-emoji{display:block;line-height:1;font-style:normal;font-size:1rem}@media not all,only screen and (-webkit-min-device-pixel-ratio:2),only screen and (min-resolution:2dppx),only screen and (min-resolution:192dpi){.k-icon-emoji{font-size:1.25rem;margin-left:.2rem}}.k-image span{position:relative;display:block;line-height:0;padding-bottom:100%}.k-image img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.k-image-error{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:#fff;font-size:.9em}.k-image-error svg *{fill:hsla(0,0%,100%,.3)}.k-image[data-cover] img{-o-object-fit:cover;object-fit:cover}.k-image[data-back=black] span{background:#16171a}.k-image[data-back=white] span{background:#fff;color:#16171a}.k-image[data-back=white] .k-image-error{background:#16171a;color:#fff}.k-image[data-back=pattern] span{background:#2d2f36 url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXR0ZXJuIGlkPSJhIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHBhdHRlcm5Vbml0cz0idXNlclNwYWNlT25Vc2UiPjxwYXRoIGZpbGw9InJnYmEoMCwgMCwgMCwgMC4yKSIgZD0iTTAgMGgxMHYxMEgwem0xMCAxMGgxMHYxMEgxMHoiLz48L3BhdHRlcm4+PHJlY3QgZmlsbD0idXJsKCNhKSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIvPjwvc3ZnPg==")}.k-progress{-webkit-appearance:none;width:100%;height:.5rem;border-radius:5rem}.k-progress::-webkit-progress-bar{border:none;background:#ccc;height:.5rem;border-radius:20px}.k-progress::-webkit-progress-value{border-radius:20px;background:#4271ae;-webkit-transition:width .3s;transition:width .3s}.k-sort-handle{cursor:move;cursor:grab;cursor:-webkit-grab;color:#16171a;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:0;width:2rem;height:2rem;display:-webkit-box;display:-ms-flexbox;display:flex;will-change:opacity,color;-webkit-transition:opacity .3s;transition:opacity .3s;z-index:1}.k-sort-handle svg{width:1rem}.k-sort-handle:active{cursor:grabbing;cursor:-webkit-grabbing}.k-text{line-height:1.5em}.k-text p{margin-bottom:1.5em}.k-text a{text-decoration:underline}.k-text>:last-child{margin-bottom:0}.k-text[data-align=center]{text-align:center}.k-text[data-align=right]{text-align:right}.k-text[data-size=tiny]{font-size:.75rem}.k-text[data-size=small]{font-size:.875rem}.k-text[data-size=medium]{font-size:1rem}.k-text[data-size=large]{font-size:1.25rem}.k-text[data-theme=help]{font-size:.875rem;color:#777;line-height:1.25rem}.k-dialog-body .k-text{word-wrap:break-word}button{line-height:inherit;border:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-size:1rem;color:currentColor;background:none;cursor:pointer}button::-moz-focus-inner{padding:0;border:0}.k-button{display:inline-block;position:relative;font-size:.875rem;-webkit-transition:color .3s;transition:color .3s}.k-button,.k-button:focus,.k-button:hover{outline:none}.k-button[data-tabbed]{outline:none;-webkit-box-shadow:#4271ae 0 0 0 2px,rgba(66,113,174,.2) 0 0 0 2px;box-shadow:0 0 0 2px #4271ae,0 0 0 2px rgba(66,113,174,.2)}.k-button *{vertical-align:middle}.k-button[data-responsive] .k-button-text{display:none}@media screen and (min-width:30em){.k-button[data-responsive] .k-button-text{display:inline}}.k-button[data-theme=positive]{color:#5d800d}.k-button[data-theme=negative]{color:#c82829}.k-button-icon{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:0}[dir=ltr] .k-button-icon~.k-button-text{padding-left:.5rem}[dir=rtl] .k-button-icon~.k-button-text{padding-right:.5rem}.k-button-text{opacity:.75}.k-button:focus .k-button-text,.k-button:hover .k-button-text{opacity:1}.k-button-text b,.k-button-text span{vertical-align:baseline}.k-button[data-disabled]{opacity:.5;cursor:default}.k-card-options>.k-button[data-disabled]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.k-button[data-disabled]:focus .k-button-text,.k-button[data-disabled]:hover .k-button-text{opacity:.75}.k-button-group{font-size:0;margin-left:-.75rem;margin-right:-.75rem}.k-button-group>.k-dropdown{height:3rem;display:inline-block}.k-button-group>.k-button,.k-button-group>.k-dropdown>.k-button{padding:1rem .75rem;line-height:1rem}.k-button-group .k-dropdown-content{top:calc(100% + 1px);margin:0 .75rem}.k-dropdown{position:relative}.k-dropdown-content{position:absolute;top:100%;background:#16171a;color:#fff;z-index:700;-webkit-box-shadow:rgba(22,23,26,.2) 0 2px 10px;box-shadow:0 2px 10px rgba(22,23,26,.2);border-radius:1px;text-align:left;margin-bottom:6rem}[dir=ltr] .k-dropdown-content{left:0}[dir=rtl] .k-dropdown-content{right:0}[dir=ltr] .k-dropdown-content[data-align=right]{left:auto;right:0}[dir=rtl] .k-dropdown-content[data-align=right]{left:0;right:auto}.k-dropdown-content>.k-dropdown-item:first-child{margin-top:.5rem}.k-dropdown-content>.k-dropdown-item:last-child{margin-bottom:.5rem}.k-dropdown-content hr{position:relative;padding:.5rem 0;border:0}.k-dropdown-content hr:after{position:absolute;top:.5rem;left:1rem;right:1rem;content:"";height:1px;background:currentColor;opacity:.2}.k-dropdown-item{white-space:nowrap;line-height:1;display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:.875rem;padding:6px 16px}.k-dropdown-item:focus{outline:none;-webkit-box-shadow:#4271ae 0 0 0 2px,rgba(66,113,174,.2) 0 0 0 2px;box-shadow:0 0 0 2px #4271ae,0 0 0 2px rgba(66,113,174,.2)}.k-dropdown-item .k-button-figure{text-align:center;padding-right:.5rem}.k-link{outline:none}.k-link[data-tabbed]{outline:none;-webkit-box-shadow:#4271ae 0 0 0 2px,rgba(66,113,174,.2) 0 0 0 2px;box-shadow:0 0 0 2px #4271ae,0 0 0 2px rgba(66,113,174,.2)}.k-pagination{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;direction:ltr}.k-pagination .k-button{padding:1rem}.k-pagination-details{white-space:nowrap}.k-pagination>span{font-size:.875rem}.k-pagination[data-align=center]{text-align:center}.k-pagination[data-align=right]{text-align:right}.k-dropdown-content.k-pagination-selector{position:absolute;top:100%;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);background:#000}[dir=ltr] .k-dropdown-content.k-pagination-selector{direction:ltr}[dir=rtl] .k-dropdown-content.k-pagination-selector{direction:rtl}.k-pagination-settings{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.k-pagination-settings .k-button{line-height:1}.k-pagination-settings label{display:-webkit-box;display:-ms-flexbox;display:flex;border-right:1px solid hsla(0,0%,100%,.35);-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.625rem 1rem;font-size:.75rem}.k-pagination-settings label span{margin-right:.5rem}.k-prev-next{direction:ltr}.k-search{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;overflow:auto;background:rgba(22,23,26,.6)}.k-search-box{max-width:30rem;margin:0 auto;-webkit-box-shadow:rgba(22,23,26,.2) 0 2px 10px;box-shadow:0 2px 10px rgba(22,23,26,.2)}@media screen and (min-width:65em){.k-search-box{margin:2.5rem auto}}.k-search-input{background:#efefef}.k-search-input,.k-search-types{display:-webkit-box;display:-ms-flexbox;display:flex}.k-search-types{-ms-flex-negative:0;flex-shrink:0}.k-search-types>.k-button{padding:0 0 0 .7rem;font-size:1rem;line-height:1;height:2.5rem}.k-search-types>.k-button .k-icon{height:2.5rem}.k-search-types>.k-button .k-button-text{opacity:1;font-weight:500}.k-search-input input{background:none;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;font:inherit;padding:.75rem;border:0;height:2.5rem}.k-search-close{width:2.5rem;line-height:1}.k-search input:focus{outline:0}.k-search ul{background:#fff}.k-search li{border-bottom:1px solid #efefef;line-height:1.125;display:-webkit-box;display:-ms-flexbox;display:flex}.k-search li .k-link{display:block;padding:.5rem .75rem;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.k-search li strong{display:block;font-size:.875rem;font-weight:400}.k-search li small{font-size:.75rem;color:#777}.k-search li[data-selected]{outline:2px solid #4271ae;background:rgba(66,113,174,.25);border-bottom:1px solid transparent}.k-search-empty{padding:.825rem .75rem;font-size:.75rem;background:#efefef;border-top:1px dashed #ccc;color:#777}.k-tag{position:relative;font-size:.875rem;line-height:1;cursor:pointer;background-color:#16171a;color:#efefef;border-radius:1px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.k-tag:focus{outline:0;background-color:#4271ae;border-color:#4271ae;color:#fff}.k-tag-text{padding:0 .75rem}.k-tag-toggle{color:hsla(0,0%,100%,.7);width:2rem;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-left:1px solid hsla(0,0%,100%,.15)}.k-tag-toggle:hover{background:hsla(0,0%,100%,.2);color:#fff}.k-topbar{position:relative;color:#fff;-ms-flex-negative:0;flex-shrink:0;height:2.5rem;line-height:1;background:#16171a}.k-topbar-wrapper{position:relative;margin-left:-.75rem;margin-right:-.75rem}.k-topbar-loader,.k-topbar-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-topbar-loader{position:absolute;top:0;right:0;bottom:0;height:2.5rem;width:2.5rem;padding:.75rem;background:#16171a;z-index:1;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.k-topbar-loader svg{height:18px;width:18px;-webkit-animation:Spin .9s linear infinite;animation:Spin .9s linear infinite}.k-topbar-menu{-ms-flex-negative:0;flex-shrink:0}.k-topbar-menu ul{padding:.5rem 0}.k-topbar-menu-button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-topbar-menu-button .k-button-text{opacity:1}.k-topbar-button,.k-topbar-signals-button{padding:.75rem;line-height:1;font-size:.875rem}.k-topbar-signals .k-button .k-button-text{opacity:1}.k-topbar-button .k-button-text{display:-webkit-box;display:-ms-flexbox;display:flex;opacity:1}.k-topbar-view-button{-ms-flex-negative:0;flex-shrink:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}[dir=ltr] .k-topbar-view-button{padding-right:0}[dir=rtl] .k-topbar-view-button{padding-left:0}[dir=ltr] .k-topbar-view-button .k-icon{margin-right:.5rem}[dir=rtl] .k-topbar-view-button .k-icon{margin-left:.5rem}.k-topbar-crumbs{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;display:-webkit-box;display:-ms-flexbox;display:flex}.k-topbar-crumbs a{position:relative;font-size:.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:none;padding-top:.75rem;padding-bottom:.75rem;line-height:1;-webkit-transition:opacity .3s;transition:opacity .3s;outline:none}.k-topbar-crumbs a:before{content:"/";padding:0 .5rem;opacity:.25}.k-topbar-crumbs a:focus,.k-topbar-crumbs a:hover{opacity:1}.k-topbar-crumbs a[data-tabbed]{outline:none;-webkit-box-shadow:#4271ae 0 0 0 2px,rgba(66,113,174,.2) 0 0 0 2px;box-shadow:0 0 0 2px #4271ae,0 0 0 2px rgba(66,113,174,.2)}.k-topbar-crumbs a:not(:last-child){max-width:15vw}.k-topbar-breadcrumb-menu{-ms-flex-negative:0;flex-shrink:0}@media screen and (min-width:30em){.k-topbar-crumbs a{display:block}.k-topbar-breadcrumb-menu{display:none}}.k-topbar-signals{position:absolute;top:0;background:#16171a;height:2.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}[dir=ltr] .k-topbar-signals{right:0}[dir=rtl] .k-topbar-signals{left:0}.k-topbar-signals:before{position:absolute;content:"";top:0;bottom:0;width:.5rem}[dir=ltr] .k-topbar-signals:before{left:-.5rem;background:-webkit-linear-gradient(left,rgba(22,23,26,0),#16171a)}[dir=rtl] .k-topbar-signals:before{right:-.5rem;background:-webkit-linear-gradient(right,rgba(22,23,26,0),#16171a)}.k-topbar-signals .k-button{line-height:1}.k-topbar-notification{font-weight:600;line-height:1;display:-webkit-box;display:-ms-flexbox;display:flex}.k-topbar .k-button[data-theme=positive]{color:#a7bd68}.k-topbar .k-button[data-theme=negative]{color:#d16464}.k-topbar .k-button[data-theme=negative] .k-button-text{display:none}@media screen and (min-width:30em){.k-topbar .k-button[data-theme=negative] .k-button-text{display:inline}}.k-topbar .k-button[data-theme] .k-button-text{opacity:1}.k-topbar .k-dropdown-content{color:#16171a;background:#fff}.k-topbar .k-dropdown-content hr:after{opacity:.1}.k-topbar-menu [aria-current] .k-link{color:#4271ae;font-weight:500}.k-registration{display:inline-block;margin-right:1rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-registration p{color:#d16464;font-size:.875rem;margin-right:1rem;font-weight:600;display:none}@media screen and (min-width:90em){.k-registration p{display:block}}.k-registration .k-button{color:#fff}.k-section,.k-sections{padding-bottom:3rem}.k-section-header{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;z-index:1}.k-section-header .k-headline{line-height:1.25rem;padding-bottom:.75rem;min-height:2rem}.k-section-header .k-button-group{position:absolute;top:-.875rem}[dir=ltr] .k-section-header .k-button-group{right:0}[dir=rtl] .k-section-header .k-button-group{left:0}.k-fields-issue-headline,.k-info-section-headline{margin-bottom:.5rem}.k-fields-section input[type=submit]{display:none}[data-locked] .k-fields-section{opacity:.2;pointer-events:none}.k-browser-view .k-error-view-content{text-align:left}.k-error-view{position:absolute;top:0;right:0;bottom:0;left:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.k-error-view-content{line-height:1.5em;max-width:25rem;text-align:center}.k-error-view-icon{color:#c82829;display:inline-block}.k-error-view-content p:not(:last-child){margin-bottom:.75rem}.k-installation-view .k-button{display:block;margin-top:1.5rem}.k-installation-view .k-headline{margin-bottom:.75rem}.k-installation-issues{line-height:1.5em;font-size:.875rem}.k-installation-issues li{position:relative;padding:1.5rem;background:#fff}[dir=ltr] .k-installation-issues li{padding-left:3.5rem}[dir=rtl] .k-installation-issues li{padding-right:3.5rem}.k-installation-issues .k-icon{position:absolute;top:calc(1.5rem + 2px)}[dir=ltr] .k-installation-issues .k-icon{left:1.5rem}[dir=rtl] .k-installation-issues .k-icon{right:1.5rem}.k-installation-issues .k-icon svg *{fill:#c82829}.k-installation-issues li:not(:last-child){margin-bottom:2px}.k-installation-issues li code{font:inherit;color:#c82829}.k-installation-view .k-button[type=submit]{padding:1rem}[dir=ltr] .k-installation-view .k-button[type=submit]{margin-left:-1rem}[dir=rtl] .k-installation-view .k-button[type=submit]{margin-right:-1rem}.k-login-form label abbr{visibility:hidden}.k-login-buttons{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:1.5rem 0}.k-login-button{padding:.5rem 1rem;font-weight:500;-webkit-transition:opacity .3s;transition:opacity .3s}[dir=ltr] .k-login-button{margin-right:-1rem}[dir=rtl] .k-login-button{margin-left:-1rem}.k-login-button span{opacity:1}.k-login-button[disabled]{opacity:.25}.k-login-checkbox{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.5rem 0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;font-size:.875rem;cursor:pointer}.k-login-checkbox .k-checkbox-text{opacity:.75;-webkit-transition:opacity .3s;transition:opacity .3s}.k-login-checkbox:focus span,.k-login-checkbox:hover span{opacity:1}.k-login-alert{padding:.5rem .75rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:38px;margin-bottom:2rem;background:#c82829;color:#fff;font-size:.875rem;border-radius:1px;-webkit-box-shadow:rgba(22,23,26,.2) 0 2px 10px;box-shadow:0 2px 10px rgba(22,23,26,.2);cursor:pointer}.k-status-flag svg{width:14px;height:14px}.k-status-flag-listed .k-icon{color:#a7bd68}.k-status-flag-unlisted .k-icon{color:#81a2be}.k-status-flag-draft .k-icon{color:#d16464}.k-status-flag[disabled]{opacity:1}.k-settings-view section{margin-bottom:3rem}.k-settings-view .k-header{margin-bottom:1.5rem}.k-settings-view header{margin-bottom:.5rem;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.k-settings-view header,.k-system-info-box{display:-webkit-box;display:-ms-flexbox;display:flex}.k-system-info-box{background:#fff;padding:.75rem}.k-system-info-box li{-ms-flex-negative:0;flex-shrink:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:0;flex-basis:0}.k-system-info-box dt{font-size:.875rem;color:#777;margin-bottom:.25rem}.k-system-unregistered{color:#c82829}.k-languages-section{margin-bottom:2rem}.k-user-profile{background:#fff}.k-user-profile>.k-view{padding-top:3rem;padding-bottom:3rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:0}.k-user-profile .k-button-group{overflow:hidden}[dir=ltr] .k-user-profile .k-button-group{margin-left:.75rem}[dir=rtl] .k-user-profile .k-button-group{margin-right:.75rem}.k-user-profile .k-button-group .k-button{display:block;padding-top:.25rem;padding-bottom:.25rem;overflow:hidden;white-space:nowrap}.k-user-profile .k-button-group .k-button[disabled]{opacity:1}.k-user-profile .k-dropdown-content{margin-top:.5rem;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.k-user-view-image .k-image{display:block;width:4rem;height:4rem;line-height:0}.k-user-view-image .k-button-text{opacity:1}.k-user-view-image .k-icon{width:4rem;height:4rem;background:#16171a;color:#999}.k-user-name-placeholder{color:#999;-webkit-transition:color .3s;transition:color .3s}.k-header[data-editable] .k-user-name-placeholder:hover{color:#16171a} \ No newline at end of file +*,:after,:before{margin:0;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}:root{--color-backdrop:rgba(22,23,26,0.6);--color-background:#efefef;--color-border:#ccc;--color-focus:#4271ae;--color-focus-light:#81a2be;--color-focus-outline:rgba(66,113,174,0.25);--color-negative:#c82829;--color-negative-light:#d16464;--color-negative-outline:rgba(200,40,41,0.25);--color-notice:#f5871f;--color-notice-light:#de935f;--color-positive:#5d800d;--color-positive-light:#a7bd68;--color-positive-outline:rgba(93,128,13,0.25);--color-text:#16171a;--color-text-light:#777;--font-family-mono:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-family-sans:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;--font-size-tiny:.75rem;--font-size-small:.875rem;--font-size-medium:1rem;--font-size-large:1.25rem;--font-size-huge:1.5rem;--font-size-monster:1.75rem;--box-shadow-dropdown:rgba(22,23,26,0.2) 0 2px 10px;--box-shadow-item:rgba(22,23,26,0.05) 0 2px 5px;--box-shadow-focus:#4271ae 0 0 0 2px,rgba(66,113,174,0.2) 0 0 0 2px}noscript{padding:1.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:100vh;text-align:center}html{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;background:#efefef}body,html{color:#16171a;overflow:hidden;height:100%}a{color:inherit;text-decoration:none}li{list-style:none}b,strong{font-weight:600}.fade-enter-active,.fade-leave-active{-webkit-transition:opacity .5s;transition:opacity .5s}.fade-enter,.fade-leave-to{opacity:0}.k-panel{position:absolute;top:0;right:0;bottom:0;left:0;background:#efefef}.k-panel[data-loading]{-webkit-animation:LoadingCursor .5s;animation:LoadingCursor .5s}.k-panel-header{position:absolute;top:0;left:0;right:0;z-index:300}.k-panel .k-form-buttons{position:fixed;bottom:0;left:0;right:0;z-index:300}.k-panel-view{position:absolute;top:0;right:0;bottom:0;left:0;padding-bottom:6rem;overflow-y:scroll;-webkit-overflow-scrolling:touch;-webkit-transform:translateZ(0);transform:translateZ(0)}.k-panel[data-dialog] .k-panel-view{overflow:hidden;-webkit-transform:none;transform:none}.k-panel[data-topbar] .k-panel-view{top:2.5rem}.k-panel[data-dragging],.k-panel[data-loading]:after{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.k-offline-warning{position:fixed;content:" ";top:0;right:0;bottom:0;left:0;z-index:900;background:rgba(22,23,26,.7);content:"offline";display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:#fff}@-webkit-keyframes LoadingCursor{to{cursor:progress}}@keyframes LoadingCursor{to{cursor:progress}}@-webkit-keyframes Spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes Spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.k-offscreen{-webkit-clip-path:inset(100%);clip-path:inset(100%);clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.k-icons{position:absolute;width:0;height:0}[data-invalid]{border:1px solid rgba(200,40,41,.25);-webkit-box-shadow:rgba(200,40,41,.25) 0 0 3px 2px;box-shadow:0 0 3px 2px rgba(200,40,41,.25)}[data-invalid]:focus-within{border:1px solid #c82829!important;-webkit-box-shadow:rgba(200,40,41,.25) 0 0 0 2px!important;box-shadow:0 0 0 2px rgba(200,40,41,.25)!important}.k-dialog{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:fixed;top:0;right:0;bottom:0;left:0;border:0;height:100%;background:rgba(22,23,26,.6);z-index:600;-webkit-transform:translateZ(0);transform:translateZ(0)}.k-dialog,.k-dialog-box{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%}.k-dialog-box{position:relative;background:#efefef;-webkit-box-shadow:rgba(22,23,26,.2) 0 2px 10px;box-shadow:0 2px 10px rgba(22,23,26,.2);border-radius:1px;line-height:1;max-height:calc(100vh - 3rem);margin:1.5rem;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:20rem){.k-dialog-box[data-size=small]{width:20rem}}@media screen and (min-width:22rem){.k-dialog-box[data-size=default]{width:22rem}}@media screen and (min-width:30rem){.k-dialog-box[data-size=medium]{width:30rem}}@media screen and (min-width:40rem){.k-dialog-box[data-size=large]{width:40rem}}.k-dialog-notification{padding:.75rem 1.5rem;background:#16171a;width:100%;line-height:1.25rem;color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-dialog-notification[data-theme=error]{background:#d16464;color:#000}.k-dialog-notification[data-theme=success]{background:#a7bd68;color:#000}.k-dialog-notification p{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;word-wrap:break-word;overflow:hidden}.k-dialog-notification .k-button{display:-webkit-box;display:-ms-flexbox;display:flex;margin-left:1rem}.k-dialog-body{padding:1.5rem;overflow-y:auto;overflow-x:hidden}.k-dialog-body .k-fieldset{padding-bottom:.5rem}.k-dialog-footer{border-top:1px solid #ccc;padding:0;border-bottom-left-radius:1px;border-bottom-right-radius:1px;line-height:1;-ms-flex-negative:0;flex-shrink:0}.k-dialog-footer .k-button-group{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.k-dialog-footer .k-button-group .k-button{padding:.75rem 1rem;line-height:1.25rem}.k-dialog-footer .k-button-group .k-button:first-child{text-align:left;padding-left:1.5rem}.k-dialog-footer .k-button-group .k-button:last-child{text-align:right;padding-right:1.5rem}.k-dialog-pagination{margin-bottom:-1.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-dialog-search{margin-bottom:.75rem}.k-dialog-search.k-input{background:rgba(0,0,0,.075);padding:0 1rem;height:36px;border-radius:1px}.k-error-details{background:#fff;display:block;overflow:auto;padding:1rem;font-size:.875rem;line-height:1.25em;margin-top:.75rem}.k-error-details dt{color:#d16464;margin-bottom:.25rem}.k-error-details dd{overflow:hidden;overflow-wrap:break-word;text-overflow:ellipsis}.k-error-details dd:not(:last-of-type){margin-bottom:1.5em}.k-error-details li:not(:last-child){border-bottom:1px solid #efefef;padding-bottom:.25rem;margin-bottom:.25rem}.k-files-dialog .k-list-item{cursor:pointer}.k-page-remove-warning{margin:1.5rem 0}.k-page-remove-warning .k-box{font-size:1rem;line-height:1.5em;padding-top:.75rem;padding-bottom:.75rem}.k-pages-dialog-navbar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-bottom:.5rem;padding-right:38px}.k-pages-dialog-navbar .k-button{width:38px}.k-pages-dialog-navbar .k-button[disabled]{opacity:0}.k-pages-dialog-navbar .k-headline{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:center}.k-pages-dialog .k-list-item{cursor:pointer}.k-pages-dialog .k-list-item .k-button[data-theme=disabled],.k-pages-dialog .k-list-item .k-button[disabled]{opacity:.25}.k-pages-dialog .k-list-item .k-button[data-theme=disabled]:hover{opacity:1}.k-users-dialog .k-list-item{cursor:pointer}.k-calendar-input{padding:.5rem;background:#16171a;color:#efefef;border-radius:1px}.k-calendar-table{table-layout:fixed;width:100%;min-width:15rem;padding-top:.5rem}.k-calendar-input>nav{display:-webkit-box;display:-ms-flexbox;display:flex;direction:ltr}.k-calendar-input>nav .k-button{padding:.5rem}.k-calendar-selects{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}[dir=ltr] .k-calendar-selects{direction:ltr}[dir=rtl] .k-calendar-selects{direction:rtl}.k-calendar-selects .k-select-input{padding:0 .5rem;font-weight:400;font-size:.875rem}.k-calendar-selects .k-select-input:focus-within{color:#81a2be!important}.k-calendar-input th{padding:.5rem 0;color:#999;font-size:.75rem;font-weight:400;text-align:center}.k-calendar-day .k-button{width:2rem;height:2rem;margin:0 auto;color:#fff;line-height:1.75rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:50%;border:2px solid transparent}.k-calendar-day .k-button .k-button-text{opacity:1}.k-calendar-table .k-button:hover{color:#fff}.k-calendar-day:hover .k-button{border-color:hsla(0,0%,100%,.25)}.k-calendar-day[aria-current=date] .k-button{color:#81a2be;font-weight:500}.k-calendar-day[aria-selected=date] .k-button{border-color:#a7bd68;color:#a7bd68}.k-calendar-today{text-align:center;padding-top:.5rem}.k-calendar-today .k-button{color:#81a2be;font-size:.75rem;padding:1rem}.k-calendar-today .k-button-text{opacity:1}.k-counter{font-size:.75rem;color:#16171a;font-weight:600}.k-counter[data-invalid]{-webkit-box-shadow:none;box-shadow:none;border:0;color:#c82829}.k-counter-rules{color:#777;font-weight:400}[dir=ltr] .k-counter-rules{padding-left:.5rem}[dir=rtl] .k-counter-rules{padding-right:.5rem}.k-form-submitter{display:none}.k-form-buttons[data-theme=changes]{background:#de935f}.k-form-buttons[data-theme=lock]{background:#d16464}.k-form-buttons[data-theme=unlock]{background:#81a2be}.k-form-buttons .k-view{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.k-form-button.k-button,.k-form-buttons .k-view{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-form-button.k-button{font-weight:500;white-space:nowrap;line-height:1;height:2.5rem;padding:0 1rem}.k-form-button:first-child{margin-left:-1rem}.k-form-button:last-child{margin-right:-1rem}.k-form-lock-info{display:-webkit-box;display:-ms-flexbox;display:flex;font-size:.875rem;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:1.5em;padding:.625rem 0;margin-right:3rem}.k-form-lock-info>.k-icon{margin-right:.5rem}.k-form-lock-buttons{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0}.k-form-lock-loader{-webkit-animation:Spin 4s linear infinite;animation:Spin 4s linear infinite}.k-form-lock-loader .k-icon-loader{display:-webkit-box;display:-ms-flexbox;display:flex}.k-form-indicator-icon{color:#de935f}.k-form-indicator-info{font-size:.875rem;font-weight:600;padding:.75rem 1rem .25rem;line-height:1.25em;width:15rem}.k-field-label{font-weight:600;display:block;padding:0 0 .75rem;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;line-height:1.25rem}.k-field-label abbr{text-decoration:none;color:#999;padding-left:.25rem}.k-field-header{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.k-field-options{position:absolute;top:calc(-.5rem - 1px)}[dir=ltr] .k-field-options{right:0}[dir=rtl] .k-field-options{left:0}.k-field-options.k-button-group .k-dropdown{height:auto}.k-field-options.k-button-group .k-field-options-button.k-button{padding:.75rem;display:-webkit-box;display:-ms-flexbox;display:flex}.k-field[data-disabled]{cursor:not-allowed;opacity:.4}.k-field[data-disabled] *{pointer-events:none}.k-field[data-disabled] .k-text[data-theme=help] *{pointer-events:auto}.k-field:focus-within>.k-field-header>.k-field-counter{display:block}.k-field-help{padding-top:.5rem}.k-fieldset{border:0}.k-fieldset .k-grid{grid-row-gap:2.25rem}@media screen and (min-width:30em){.k-fieldset .k-grid{grid-column-gap:1.5rem}}.k-sections>.k-column[data-width="1/3"] .k-fieldset .k-grid,.k-sections>.k-column[data-width="1/4"] .k-fieldset .k-grid{grid-template-columns:repeat(1,1fr)}.k-sections>.k-column[data-width="1/3"] .k-fieldset .k-grid .k-column,.k-sections>.k-column[data-width="1/4"] .k-fieldset .k-grid .k-column{grid-column-start:auto}.k-input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:1;border:0;outline:0;background:none}.k-input-element{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.k-input-icon{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:0}.k-input[data-disabled]{pointer-events:none}.k-input[data-theme=field]{line-height:1;border:1px solid #ccc;background:#fff}.k-input[data-theme=field]:focus-within{border:1px solid #4271ae;-webkit-box-shadow:rgba(66,113,174,.25) 0 0 0 2px;box-shadow:0 0 0 2px rgba(66,113,174,.25)}.k-input[data-theme=field][data-disabled]{background:#efefef}.k-input[data-theme=field] .k-input-icon{width:2.25rem}.k-input[data-theme=field] .k-input-after,.k-input[data-theme=field] .k-input-before,.k-input[data-theme=field] .k-input-icon{-ms-flex-item-align:stretch;align-self:stretch;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-negative:0;flex-shrink:0}.k-input[data-theme=field] .k-input-after,.k-input[data-theme=field] .k-input-before{padding:0 .5rem}.k-input[data-theme=field] .k-input-before{color:#777;padding-right:0}.k-input[data-theme=field] .k-input-after{color:#777;padding-left:0}.k-input[data-theme=field] .k-input-icon>.k-dropdown{width:100%;height:100%}.k-input[data-theme=field] .k-input-icon-button{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0}.k-input[data-theme=field] .k-number-input,.k-input[data-theme=field] .k-select-input,.k-input[data-theme=field] .k-text-input{padding:.5rem;line-height:1.25rem}.k-input[data-theme=field] .k-date-input .k-select-input,.k-input[data-theme=field] .k-time-input .k-select-input{padding-left:0;padding-right:0}[dir=ltr] .k-input[data-theme=field] .k-date-input .k-select-input:first-child,[dir=ltr] .k-input[data-theme=field] .k-time-input .k-select-input:first-child{padding-left:.5rem}[dir=rtl] .k-input[data-theme=field] .k-date-input .k-select-input:first-child,[dir=rtl] .k-input[data-theme=field] .k-time-input .k-select-input:first-child{padding-right:.5rem}.k-input[data-theme=field] .k-date-input .k-select-input:focus-within,.k-input[data-theme=field] .k-time-input .k-select-input:focus-within{color:#4271ae;font-weight:600}.k-input[data-theme=field] .k-time-input .k-time-input-meridiem{padding-left:.5rem}.k-input[data-theme=field][data-type=checkboxes] .k-checkboxes-input li,.k-input[data-theme=field][data-type=checkboxes] .k-radio-input li,.k-input[data-theme=field][data-type=radio] .k-checkboxes-input li,.k-input[data-theme=field][data-type=radio] .k-radio-input li{min-width:0;overflow-wrap:break-word}.k-input[data-theme=field][data-type=checkboxes] .k-input-before{border-right:1px solid #efefef}.k-input[data-theme=field][data-type=checkboxes] .k-input-element+.k-input-after,.k-input[data-theme=field][data-type=checkboxes] .k-input-element+.k-input-icon{border-left:1px solid #efefef}.k-input[data-theme=field][data-type=checkboxes] .k-input-element{overflow:hidden}.k-input[data-theme=field][data-type=checkboxes] .k-checkboxes-input{display:grid;grid-template-columns:1fr;margin-bottom:-1px;margin-right:-1px}@media screen and (min-width:65em){.k-input[data-theme=field][data-type=checkboxes] .k-checkboxes-input{grid-template-columns:repeat(var(--columns),1fr)}}.k-input[data-theme=field][data-type=checkboxes] .k-checkboxes-input li{border-right:1px solid #efefef;border-bottom:1px solid #efefef}.k-input[data-theme=field][data-type=checkboxes] .k-checkboxes-input label{display:block;line-height:1.25rem;padding:.5rem .5rem}.k-input[data-theme=field][data-type=checkboxes] .k-checkbox-input-icon{top:.625rem;left:.5rem;margin-top:0}.k-input[data-theme=field][data-type=radio] .k-input-before{border-right:1px solid #efefef}.k-input[data-theme=field][data-type=radio] .k-input-element+.k-input-after,.k-input[data-theme=field][data-type=radio] .k-input-element+.k-input-icon{border-left:1px solid #efefef}.k-input[data-theme=field][data-type=radio] .k-input-element{overflow:hidden}.k-input[data-theme=field][data-type=radio] .k-radio-input{display:grid;grid-template-columns:1fr;margin-bottom:-1px;margin-right:-1px}@media screen and (min-width:65em){.k-input[data-theme=field][data-type=radio] .k-radio-input{grid-template-columns:repeat(var(--columns),1fr)}}.k-input[data-theme=field][data-type=radio] .k-radio-input li{border-right:1px solid #efefef;border-bottom:1px solid #efefef}.k-input[data-theme=field][data-type=radio] .k-radio-input label{display:block;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;min-height:2.25rem;line-height:1.25rem;padding:.5rem .5rem}.k-input[data-theme=field][data-type=radio] .k-radio-input label:before{top:.625rem;left:.5rem;margin-top:-1px}.k-input[data-theme=field][data-type=radio] .k-radio-input .k-radio-input-info{display:block;font-size:.875rem;color:#777;line-height:1.25rem;padding-top:.125rem}.k-input[data-theme=field][data-type=radio] .k-radio-input .k-icon{width:2.25rem;height:2.25rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.k-input[data-theme=field][data-type=range] .k-range-input{padding:.5rem}.k-input[data-theme=field][data-type=select]{position:relative}.k-input[data-theme=field][data-type=select] .k-input-icon{position:absolute;top:0;bottom:0}[dir=ltr] .k-input[data-theme=field][data-type=select] .k-input-icon{right:0}[dir=rtl] .k-input[data-theme=field][data-type=select] .k-input-icon{left:0}.k-input[data-theme=field][data-type=tags] .k-tags-input{padding:.25rem .25rem 0 .25rem}.k-input[data-theme=field][data-type=tags] .k-tag{margin-right:.25rem;margin-bottom:.25rem;height:1.75rem;font-size:.875rem}.k-input[data-theme=field][data-type=tags] .k-tags-input input{font-size:.875rem;padding:0 .25rem;height:1.75rem;line-height:1;margin-bottom:.25rem}.k-input[data-theme=field][data-type=tags] .k-tags-input .k-dropdown-content{top:calc(100% + .5rem + 2px)}.k-input[data-theme=field][data-type=multiselect]{position:relative}.k-input[data-theme=field][data-type=multiselect] .k-multiselect-input{padding:.25rem 2rem 0 .25rem;min-height:2.25rem}.k-input[data-theme=field][data-type=multiselect] .k-tag{margin-right:.25rem;margin-bottom:.25rem;height:1.75rem;font-size:.875rem}.k-input[data-theme=field][data-type=multiselect] .k-input-icon{position:absolute;top:0;right:0;bottom:0;pointer-events:none}.k-input[data-theme=field][data-type=textarea] .k-textarea-input-native{padding:.25rem .5rem;line-height:1.5rem}.k-input[data-theme=field][data-type=toggle] .k-input-before{padding-right:.25rem}.k-input[data-theme=field][data-type=toggle] .k-toggle-input{padding-left:.5rem}.k-input[data-theme=field][data-type=toggle] .k-toggle-input-label{padding:0 .5rem 0 .75rem;line-height:2.25rem}.k-upload input{position:absolute;top:0}[dir=ltr] .k-upload input{left:-3000px}[dir=rtl] .k-upload input{right:-3000px}.k-upload .k-headline{margin-bottom:.75rem}.k-upload-error-list,.k-upload-list{line-height:1.5em;font-size:.875rem}.k-upload-list-filename{color:#777}.k-upload-error-list li{padding:.75rem;background:#fff;border-radius:1px}.k-upload-error-list li:not(:last-child){margin-bottom:2px}.k-upload-error-filename{color:#c82829;font-weight:600}.k-upload-error-message{color:#777}.k-checkbox-input{position:relative;cursor:pointer}.k-checkbox-input-native{position:absolute;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:0;height:0;opacity:0}.k-checkbox-input-label{display:block;padding-left:1.75rem}.k-checkbox-input-icon{position:absolute;left:0;width:1rem;height:1rem;border:2px solid #999}.k-checkbox-input-icon svg{position:absolute;width:12px;height:12px;display:none}.k-checkbox-input-icon path{stroke:#fff}.k-checkbox-input-native:checked+.k-checkbox-input-icon{border-color:#16171a;background:#16171a}.k-checkbox-input-native:checked+.k-checkbox-input-icon svg{display:block}.k-checkbox-input-native:focus+.k-checkbox-input-icon{border-color:#4271ae}.k-checkbox-input-native:focus:checked+.k-checkbox-input-icon{background:#4271ae}.k-date-input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-date-input-separator{padding:0 .125rem}.k-datetime-input{display:-webkit-box;display:-ms-flexbox;display:flex}.k-datetime-input .k-time-input{padding-left:.5rem}.k-text-input{width:100%;border:0;background:none;font:inherit;color:inherit}.k-text-input::-webkit-input-placeholder{color:#999}.k-text-input::-moz-placeholder{color:#999}.k-text-input:-ms-input-placeholder{color:#999}.k-text-input::-ms-input-placeholder{color:#999}.k-text-input::placeholder{color:#999}.k-text-input:focus{outline:0}.k-text-input:invalid{-webkit-box-shadow:none;box-shadow:none;outline:0}.k-multiselect-input{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;position:relative;font-size:.875rem;min-height:2.25rem;line-height:1}.k-multiselect-input .k-sortable-ghost{background:#4271ae}.k-multiselect-input .k-dropdown-content{width:100%}.k-multiselect-search{margin-top:0!important;color:#fff;background:#16171a;border-bottom:1px dashed hsla(0,0%,100%,.2)}.k-multiselect-search>.k-button-text{-webkit-box-flex:1;-ms-flex:1;flex:1;opacity:1!important}.k-multiselect-search input{width:100%;color:#fff;background:none;border:none;outline:none;padding:.25rem 0;font:inherit}.k-multiselect-options{position:relative;max-height:275px;overflow-y:auto;padding:.5rem 0}.k-multiselect-option{position:relative}.k-multiselect-option.selected{color:#a7bd68}.k-multiselect-option.disabled:not(.selected) .k-icon{opacity:0}.k-multiselect-option b{color:#81a2be;font-weight:700}.k-multiselect-value{color:#999;margin-left:.25rem}.k-multiselect-value:before{content:" ("}.k-multiselect-value:after{content:")"}.k-multiselect-input[data-layout=list] .k-tag{width:100%;margin-right:0!important}.k-multiselect-more{width:100%;padding:.75rem;color:hsla(0,0%,100%,.8);text-align:center;border-top:1px dashed hsla(0,0%,100%,.2)}.k-multiselect-more:hover{color:#fff}.k-number-input{width:100%;border:0;background:none;font:inherit;color:inherit}.k-number-input::-webkit-input-placeholder{color:$color-light-grey}.k-number-input::-moz-placeholder{color:$color-light-grey}.k-number-input:-ms-input-placeholder{color:$color-light-grey}.k-number-input::-ms-input-placeholder{color:$color-light-grey}.k-number-input::placeholder{color:$color-light-grey}.k-number-input:focus{outline:0}.k-number-input:invalid{-webkit-box-shadow:none;box-shadow:none;outline:0}.k-radio-input li{position:relative;line-height:1.5rem;padding-left:1.75rem}.k-radio-input input{position:absolute;width:0;height:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:0}.k-radio-input label{cursor:pointer;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-radio-input label:before{position:absolute;top:.175em;left:0;content:"";width:1rem;height:1rem;border-radius:50%;border:2px solid #999;-webkit-box-shadow:#fff 0 0 0 2px inset;box-shadow:inset 0 0 0 2px #fff}.k-radio-input input:checked+label:before{border-color:#16171a;background:#16171a}.k-radio-input input:focus+label:before{border-color:#4271ae}.k-radio-input input:focus:checked+label:before{background:#4271ae}.k-radio-input-text{display:block}.k-range-input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-range-input-native{--min:0;--max:100;--value:0;--range:calc(var(--max) - var(--min));--ratio:calc((var(--value) - var(--min))/var(--range));--position:calc(8px + var(--ratio)*(100% - 16px));-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:16px;background:transparent;font-size:.875rem;line-height:1}.k-range-input-native::-webkit-slider-thumb{-webkit-appearance:none;appearance:none}.k-range-input-native::-webkit-slider-runnable-track{border:none;border-radius:4px;width:100%;height:4px;background:#ccc;background:-webkit-gradient(linear,left top,left bottom,from(#16171a),to(#16171a)) 0/var(--position) 100% no-repeat #ccc;background:linear-gradient(#16171a,#16171a) 0/var(--position) 100% no-repeat #ccc}.k-range-input-native::-moz-range-track{border:none;border-radius:4px;width:100%;height:4px;background:#ccc}.k-range-input-native::-ms-track{border:none;border-radius:4px;width:100%;height:4px;background:#ccc}.k-range-input-native::-moz-range-progress{height:4px;background:#16171a}.k-range-input-native::-ms-fill-lower{height:4px;background:#16171a}.k-range-input-native::-webkit-slider-thumb{margin-top:-6px;-webkit-box-sizing:border-box;box-sizing:border-box;width:16px;height:16px;background:#efefef;border:4px solid #16171a;border-radius:50%;cursor:pointer}.k-range-input-native::-moz-range-thumb{box-sizing:border-box;width:16px;height:16px;background:#efefef;border:4px solid #16171a;border-radius:50%;cursor:pointer}.k-range-input-native::-ms-thumb{margin-top:0;box-sizing:border-box;width:16px;height:16px;background:#efefef;border:4px solid #16171a;border-radius:50%;cursor:pointer}.k-range-input-native::-ms-tooltip{display:none}.k-range-input-native:focus{outline:none}.k-range-input-native:focus::-webkit-slider-runnable-track{border:none;border-radius:4px;width:100%;height:4px;background:#ccc;background:-webkit-gradient(linear,left top,left bottom,from(#4271ae),to(#4271ae)) 0/var(--position) 100% no-repeat #ccc;background:linear-gradient(#4271ae,#4271ae) 0/var(--position) 100% no-repeat #ccc}.k-range-input-native:focus::-moz-range-progress{height:4px;background:#4271ae}.k-range-input-native:focus::-ms-fill-lower{height:4px;background:#4271ae}.k-range-input-native:focus::-webkit-slider-thumb{background:#efefef;border:4px solid #4271ae}.k-range-input-native:focus::-moz-range-thumb{background:#efefef;border:4px solid #4271ae}.k-range-input-native:focus::-ms-thumb{background:#efefef;border:4px solid #4271ae}.k-range-input-tooltip{position:relative;max-width:20%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:#fff;font-size:.75rem;line-height:1;text-align:center;border-radius:1px;background:#16171a;margin-left:1rem;padding:0 .25rem;white-space:nowrap}.k-range-input-tooltip:after{position:absolute;top:50%;left:-5px;width:0;height:0;-webkit-transform:translateY(-50%);transform:translateY(-50%);border-top:5px solid transparent;border-right:5px solid #16171a;border-bottom:5px solid transparent;content:""}.k-range-input-tooltip>*{padding:4px}.k-select-input{position:relative;display:block;cursor:pointer;overflow:hidden}.k-select-input-native{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;font:inherit;z-index:1;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.k-select-input-native[disabled]{cursor:default}.k-select-input-native{font-weight:400}.k-tags-input{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.k-tags-input .k-sortable-ghost{background:#4271ae}.k-tags-input-element{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:0;flex-basis:0;min-width:0}.k-tags-input:focus-within .k-tags-input-element{-ms-flex-preferred-size:4rem;flex-basis:4rem}.k-tags-input-element input{font:inherit;border:0;width:100%;background:none}.k-tags-input-element input:focus{outline:0}.k-tags-input[data-layout=list] .k-tag{width:100%;margin-right:0!important}.k-textarea-input-wrapper{position:relative}.k-textarea-input-native{resize:none;border:0;width:100%;background:none;font:inherit;line-height:1.5em;color:inherit}.k-textarea-input-native::-webkit-input-placeholder{color:#999}.k-textarea-input-native::-moz-placeholder{color:#999}.k-textarea-input-native:-ms-input-placeholder{color:#999}.k-textarea-input-native::-ms-input-placeholder{color:#999}.k-textarea-input-native::placeholder{color:#999}.k-textarea-input-native:focus{outline:0}.k-textarea-input-native:invalid{-webkit-box-shadow:none;box-shadow:none;outline:0}.k-textarea-input-native[data-size=small]{min-height:7.5rem}.k-textarea-input-native[data-size=medium]{min-height:15rem}.k-textarea-input-native[data-size=large]{min-height:30rem}.k-textarea-input-native[data-size=huge]{min-height:45rem}.k-textarea-input-native[data-font=monospace]{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}.k-toolbar{margin-bottom:.25rem;color:#aaa}.k-textarea-input:focus-within .k-toolbar{position:-webkit-sticky;position:sticky;top:0;right:0;left:0;z-index:1;-webkit-box-shadow:rgba(0,0,0,.05) 0 2px 5px;box-shadow:0 2px 5px rgba(0,0,0,.05);border-bottom:1px solid rgba(0,0,0,.1);color:#000}.k-time-input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:1}.k-time-input-separator{padding:0 .125rem}.k-time-input-meridiem{padding-left:.5rem}.k-toggle-input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-toggle-input-native{position:relative;height:16px;width:32px;border-radius:16px;border:2px solid #999;-webkit-box-shadow:inset 0 0 0 2px #fff,inset -16px 0 0 2px #fff;box-shadow:inset 0 0 0 2px #fff,inset -16px 0 0 2px #fff;background-color:#999;outline:0;-webkit-transition:all .1s ease-in-out;transition:all .1s ease-in-out;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;-ms-flex-negative:0;flex-shrink:0}.k-toggle-input-native:checked{border-color:#16171a;-webkit-box-shadow:inset 0 0 0 2px #fff,inset 16px 0 0 2px #fff;box-shadow:inset 0 0 0 2px #fff,inset 16px 0 0 2px #fff;background-color:#16171a}.k-toggle-input-native[disabled]{border-color:#ccc;-webkit-box-shadow:inset 0 0 0 2px #efefef,inset -16px 0 0 2px #efefef;box-shadow:inset 0 0 0 2px #efefef,inset -16px 0 0 2px #efefef;background-color:#ccc}.k-toggle-input-native[disabled]:checked{-webkit-box-shadow:inset 0 0 0 2px #efefef,inset 16px 0 0 2px #efefef;box-shadow:inset 0 0 0 2px #efefef,inset 16px 0 0 2px #efefef}.k-toggle-input-native:focus:checked{border:2px solid #4271ae;background-color:#4271ae}.k-toggle-input-native::-ms-check{opacity:0}.k-toggle-input-label{cursor:pointer;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.k-files-field[data-disabled] *{pointer-events:all!important}body{counter-reset:headline-counter}.k-headline-field{position:relative;padding-top:1.5rem}.k-headline-field[data-numbered]:before{counter-increment:headline-counter;content:counter(headline-counter,decimal-leading-zero);color:#4271ae;font-weight:400;padding-right:.25rem}.k-fieldset>.k-grid .k-column:first-child .k-headline-field{padding-top:0}.k-info-field .k-headline{padding-bottom:.75rem;line-height:1.25rem}.k-line-field{position:relative;border:0;height:3rem;width:auto}.k-line-field:after{position:absolute;content:"";top:50%;margin-top:-1px;left:0;right:0;height:1px;background:#ccc}.k-pages-field[data-disabled] *{pointer-events:all!important}.k-structure-table{position:relative;table-layout:fixed;width:100%;background:#fff;font-size:.875rem;border-spacing:0;-webkit-box-shadow:rgba(22,23,26,.05) 0 2px 5px;box-shadow:0 2px 5px rgba(22,23,26,.05)}.k-structure-table td,.k-structure-table th{border-bottom:1px solid #efefef;line-height:1.25em;overflow:hidden;text-overflow:ellipsis}[dir=ltr] .k-structure-table td,[dir=ltr] .k-structure-table th{border-right:1px solid #efefef}[dir=rtl] .k-structure-table td,[dir=rtl] .k-structure-table th{border-left:1px solid #efefef}.k-structure-table td:last-child{overflow:visible}.k-structure-table th{position:-webkit-sticky;position:sticky;top:0;right:0;left:0;width:100%;background:#fff;font-weight:400;z-index:1;color:#777;padding:0 .75rem;height:38px}[dir=ltr] .k-structure-table th{text-align:left}[dir=rtl] .k-structure-table th{text-align:right}.k-structure-table td:last-child,.k-structure-table th:last-child{width:38px}[dir=ltr] .k-structure-table td:last-child,[dir=ltr] .k-structure-table th:last-child{border-right:0}[dir=rtl] .k-structure-table td:last-child,[dir=rtl] .k-structure-table th:last-child{border-left:0}.k-structure-table tr:last-child td{border-bottom:0}.k-structure-table tbody tr:hover td{background:hsla(0,0%,93.7%,.25)}@media screen and (max-width:65em){.k-structure-table td,.k-structure-table th{display:none}.k-structure-table td:first-child,.k-structure-table td:last-child,.k-structure-table td:nth-child(2),.k-structure-table th:first-child,.k-structure-table th:last-child,.k-structure-table th:nth-child(2){display:table-cell}}.k-structure-table .k-structure-table-column[data-align=center]{text-align:center}[dir=ltr] .k-structure-table .k-structure-table-column[data-align=right]{text-align:right}[dir=rtl] .k-structure-table .k-structure-table-column[data-align=right]{text-align:left}.k-structure-table .k-structure-table-column[data-align=right]>.k-input{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.k-structure-table .k-structure-table-column[data-width="1/2"]{width:50%}.k-structure-table .k-structure-table-column[data-width="1/3"]{width:33.33%}.k-structure-table .k-structure-table-column[data-width="1/4"]{width:25%}.k-structure-table .k-structure-table-column[data-width="1/5"]{width:20%}.k-structure-table .k-structure-table-column[data-width="1/6"]{width:16.66%}.k-structure-table .k-structure-table-column[data-width="1/8"]{width:12.5%}.k-structure-table .k-structure-table-column[data-width="1/9"]{width:11.11%}.k-structure-table .k-structure-table-column[data-width="2/3"]{width:66.66%}.k-structure-table .k-structure-table-column[data-width="3/4"]{width:75%}.k-structure-table .k-structure-table-index{width:38px;text-align:center}.k-structure-table .k-structure-table-index-number{font-size:.75rem;color:#999;padding-top:.15rem}.k-structure-table .k-sort-handle{width:38px;height:38px;display:none}.k-structure-table[data-sortable] tr:hover .k-structure-table-index-number{display:none}.k-structure-table[data-sortable] tr:hover .k-sort-handle{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.k-structure-table .k-structure-table-options{position:relative;width:38px;text-align:center;height:38px}.k-structure-table .k-structure-table-options-button{width:38px;height:38px}.k-structure-table .k-structure-table-text{padding:0 .75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.k-structure-table .k-sortable-ghost{background:#fff;-webkit-box-shadow:rgba(22,23,26,.25) 0 5px 10px;box-shadow:0 5px 10px rgba(22,23,26,.25);outline:2px solid #4271ae;margin-bottom:2px;cursor:grabbing;cursor:-webkit-grabbing}.k-sortable-row-fallback{opacity:0!important}.k-structure-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;height:100vh}.k-structure-form{position:relative;z-index:3;border-radius:1px;margin-bottom:1px;-webkit-box-shadow:rgba(22,23,26,.05) 0 0 0 3px;box-shadow:0 0 0 3px rgba(22,23,26,.05);border:1px solid #ccc;background:#efefef}.k-structure-form-fields{padding:1.5rem 1.5rem 2rem}.k-structure-form-buttons{border-top:1px solid #ccc;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.k-structure-form-buttons .k-pagination{display:none}@media screen and (min-width:65em){.k-structure-form-buttons .k-pagination{display:-webkit-box;display:-ms-flexbox;display:flex}}.k-structure-form-buttons .k-pagination>.k-button,.k-structure-form-buttons .k-pagination>span{padding:.875rem 1rem!important}.k-structure-form-cancel-button,.k-structure-form-submit-button{padding:.875rem 1.5rem;line-height:1rem;display:-webkit-box;display:-ms-flexbox;display:flex}.k-field-counter{display:none}.k-text-field:focus-within .k-field-counter{display:block}.k-users-field[data-disabled] *{pointer-events:all!important}.k-toolbar{background:#fff;border-bottom:1px solid #efefef;height:38px}.k-toolbar-wrapper{position:absolute;top:0;right:0;left:0;max-width:100%}.k-toolbar-buttons{display:-webkit-box;display:-ms-flexbox;display:flex}.k-toolbar-divider{width:1px;background:#efefef}.k-toolbar-button{width:36px;height:36px}.k-toolbar-button:hover{background:hsla(0,0%,93.7%,.5)}.k-files-field-preview{display:grid;grid-gap:.5rem;grid-template-columns:repeat(auto-fill,1.525rem);padding:0 .75rem}.k-files-field-preview li{line-height:0}.k-files-field-preview li .k-icon{height:100%}.k-url-field-preview{padding:0 .75rem}.k-url-field-preview a{color:#4271ae;text-decoration:underline;-webkit-transition:color .3s;transition:color .3s;overflow:hidden;white-space:nowrap;max-width:100%;text-overflow:ellipsis}.k-url-field-preview a:hover{color:#000}.k-pages-field-preview{padding:0 .25rem 0 .75rem;display:-webkit-box;display:-ms-flexbox;display:flex}.k-pages-field-preview li{line-height:0;margin-right:.5rem}.k-pages-field-preview .k-link{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;background:#efefef;-webkit-box-shadow:rgba(22,23,26,.05) 0 2px 5px;box-shadow:0 2px 5px rgba(22,23,26,.05)}.k-pages-field-preview-image{width:1.525rem;height:1.525rem;color:#999!important}.k-pages-field-preview figcaption{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;line-height:1.5em;padding:0 .5rem;border:1px solid #ccc;border-left:0;border-radius:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.k-toggle-field-preview label{padding:0 .25rem 0 .75rem;display:-webkit-box;display:-ms-flexbox;display:flex;height:38px;cursor:pointer;overflow:hidden;white-space:nowrap}[dir=ltr] .k-toggle-field-preview .k-toggle-input-label{padding-left:.5rem}[dir=ltr] [data-align=right] .k-toggle-field-preview .k-toggle-input-label,[dir=rtl] .k-toggle-field-preview .k-toggle-input-label{padding-right:.5rem}[dir=rtl] [data-align=right] .k-toggle-field-preview .k-toggle-input-label{padding-left:.5rem}[dir=ltr] .k-toggle-field-preview .k-toggle-input{padding:0 .25rem 0 .75rem}[dir=rtl] .k-toggle-field-preview .k-toggle-input{padding:0 .75rem 0 .25rem}[data-align=right] .k-toggle-field-preview .k-toggle-input{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}[dir=ltr] [data-align=right] .k-toggle-field-preview .k-toggle-input{padding:0 .75rem 0 .25rem}.k-users-field-preview,[dir=rtl] [data-align=right] .k-toggle-field-preview .k-toggle-input{padding:0 .25rem 0 .75rem}.k-users-field-preview{display:-webkit-box;display:-ms-flexbox;display:flex}.k-users-field-preview li{line-height:0;margin-right:.5rem}.k-users-field-preview .k-link{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;background:#efefef;-webkit-box-shadow:rgba(22,23,26,.05) 0 2px 5px;box-shadow:0 2px 5px rgba(22,23,26,.05)}.k-users-field-preview-avatar{width:1.525rem;height:1.525rem;color:#999!important}.k-users-field-preview-avatar.k-image{display:block}.k-users-field-preview figcaption{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;line-height:1.5em;padding:0 .5rem;border:1px solid #ccc;border-left:0;border-radius:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.k-bar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;line-height:1}.k-bar-slot{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.k-bar-slot[data-position=center]{text-align:center}[dir=ltr] .k-bar-slot[data-position=right]{text-align:right}[dir=rtl] .k-bar-slot[data-position=right]{text-align:left}.k-box{word-wrap:break-word;font-size:.875rem}.k-box:not([data-theme=none]){background:#d9d9d9;border-radius:1px;padding:.375rem .75rem;line-height:1.25rem;border-left:2px solid #999;padding:.5rem 1.5rem}.k-box[data-theme=code]{background:#16171a;border:1px solid #000;color:#efefef;font-family:Input,Menlo,monospace;font-size:.875rem;line-height:1.5}.k-box[data-theme=button]{padding:0}.k-box[data-theme=button] .k-button{padding:0 .75rem;height:2.25rem;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:2rem;text-align:left}.k-box[data-theme=positive]{background:#dbe4c1;border:0;border-left:2px solid #a7bd68;padding:.5rem 1.5rem}.k-box[data-theme=negative]{background:#eec6c6;border:0;border-left:2px solid #d16464;padding:.5rem 1.5rem}.k-box[data-theme=notice]{background:#f4dac9;border:0;border-left:2px solid #de935f;padding:.5rem 1.5rem}.k-box[data-theme=info]{background:#d5e0e9;border:0;border-left:2px solid #81a2be;padding:.5rem 1.5rem}.k-box[data-theme=empty]{text-align:center;border-left:0;padding:3rem 1.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;background:#efefef;border-radius:1px;color:#777;border:1px dashed #ccc}.k-box[data-theme=empty] .k-icon{margin-bottom:.5rem;color:#999}.k-box[data-theme=empty] p{color:#777}.k-card{position:relative;border-radius:1px;-webkit-box-shadow:rgba(22,23,26,.05) 0 2px 5px;box-shadow:0 2px 5px rgba(22,23,26,.05)}.k-card,.k-card a{min-width:0;background:#fff}.k-card:focus-within{-webkit-box-shadow:#4271ae 0 0 0 2px;box-shadow:0 0 0 2px #4271ae}.k-card a:focus{outline:0}.k-card .k-sort-handle{position:absolute;top:.75rem;width:2rem;height:2rem;border-radius:1px;background:#fff;opacity:0;color:#16171a;z-index:1;will-change:opacity;-webkit-transition:opacity .3s;transition:opacity .3s}[dir=ltr] .k-card .k-sort-handle{right:.75rem}[dir=rtl] .k-card .k-sort-handle{left:.75rem}.k-cards:hover .k-sort-handle{opacity:.25}.k-card:hover .k-sort-handle{opacity:1}.k-card.k-sortable-ghost{outline:2px solid #4271ae;border-radius:0}.k-card-icon,.k-card-image{border-top-left-radius:1px;border-top-right-radius:1px;overflow:hidden}.k-card-icon{position:relative;display:block}.k-card-icon .k-icon{position:absolute;top:0;right:0;bottom:0;left:0}.k-card-icon .k-icon-emoji{font-size:3rem}.k-card-icon .k-icon svg{width:3rem;height:3rem}.k-card-content{line-height:1.25rem;border-bottom-left-radius:1px;border-bottom-right-radius:1px;min-height:2.25rem;padding:.5rem .75rem;overflow-wrap:break-word;word-wrap:break-word}.k-card-text{display:block;font-weight:400;text-overflow:ellipsis;font-size:.875rem}.k-card-text[data-noinfo]:after{content:" ";height:1em;width:5rem;display:inline-block}.k-card-info{color:#777;display:block;font-size:.875rem;text-overflow:ellipsis;overflow:hidden}[dir=ltr] .k-card-info{margin-right:4rem}[dir=rtl] .k-card-info{margin-left:4rem}.k-card-options{position:absolute;bottom:0}[dir=ltr] .k-card-options{right:0}[dir=rtl] .k-card-options{left:0}.k-card-options>.k-button{position:relative;float:left;height:2.25rem;padding:0 .75rem;line-height:1}.k-card-options-dropdown{top:2.25rem}.k-cards{display:grid;grid-gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));grid-template-columns:repeat(auto-fill,minmax(min(12rem,100%),1fr))}@media screen and (min-width:30em){.k-cards[data-size=tiny]{grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));grid-template-columns:repeat(auto-fill,minmax(min(10rem,100%),1fr))}.k-cards[data-size=small]{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));grid-template-columns:repeat(auto-fill,minmax(min(16rem,100%),1fr))}.k-cards[data-size=medium]{grid-template-columns:repeat(auto-fill,minmax(24rem,1fr));grid-template-columns:repeat(auto-fill,minmax(min(24rem,100%),1fr))}.k-cards[data-size=huge],.k-cards[data-size=large]{grid-template-columns:1fr}}@media screen and (min-width:65em){.k-cards[data-size=large]{grid-template-columns:repeat(auto-fill,minmax(32rem,1fr));grid-template-columns:repeat(auto-fill,minmax(min(32rem,100%),1fr))}}.k-collection-help{padding:.5rem .75rem}.k-collection-footer{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-right:-.75rem;margin-left:-.75rem}.k-collection-pagination{line-height:1.25rem;min-height:2.75rem}.k-collection-pagination .k-pagination .k-button{padding:.5rem .75rem;line-height:1.125rem}.k-column{min-width:0;grid-column-start:span 12}.k-column[data-sticky]>div{position:-webkit-sticky;position:sticky;top:4vh;z-index:2}@media screen and (min-width:65em){.k-column[data-width="1/1"],.k-column[data-width="2/2"],.k-column[data-width="3/3"],.k-column[data-width="4/4"],.k-column[data-width="6/6"]{grid-column-start:span 12}.k-column[data-width="1/2"],.k-column[data-width="2/4"],.k-column[data-width="3/6"]{grid-column-start:span 6}.k-column[data-width="1/3"],.k-column[data-width="2/6"]{grid-column-start:span 4}.k-column[data-width="2/3"],.k-column[data-width="4/6"]{grid-column-start:span 8}.k-column[data-width="1/4"]{grid-column-start:span 3}.k-column[data-width="1/6"]{grid-column-start:span 2}.k-column[data-width="5/6"]{grid-column-start:span 10}.k-column[data-width="3/4"]{grid-column-start:span 9}}.k-dropzone{position:relative}.k-dropzone:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;display:none;pointer-events:none;z-index:1}.k-dropzone[data-over]:after{display:block;outline:1px solid #4271ae;-webkit-box-shadow:rgba(66,113,174,.25) 0 0 0 3px;box-shadow:0 0 0 3px rgba(66,113,174,.25)}.k-empty{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;border-radius:1px;color:#777;border:1px dashed #ccc}.k-empty p{font-size:.875rem;color:#777}.k-empty>.k-icon{color:#999}.k-empty[data-layout=cards]{text-align:center;padding:1.5rem;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.k-empty[data-layout=cards] .k-icon{margin-bottom:1rem}.k-empty[data-layout=cards] .k-icon svg{width:2rem;height:2rem}.k-empty[data-layout=list]{min-height:38px}.k-empty[data-layout=list]>.k-icon{width:36px;min-height:36px;border-right:1px solid rgba(0,0,0,.05)}.k-empty[data-layout=list]>p{line-height:1.25rem;padding:.5rem .75rem}.k-file-preview{background:#2d2f36}.k-file-preview-layout{display:grid}@media screen and (max-width:65em){.k-file-preview-layout{padding:0!important}}@media screen and (min-width:30em){.k-file-preview-layout{grid-template-columns:50% auto}}@media screen and (min-width:65em){.k-file-preview-layout{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}}.k-file-preview-layout>*{min-width:0}.k-file-preview-image{position:relative;background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXR0ZXJuIGlkPSJhIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHBhdHRlcm5Vbml0cz0idXNlclNwYWNlT25Vc2UiPjxwYXRoIGZpbGw9InJnYmEoMCwgMCwgMCwgMC4yKSIgZD0iTTAgMGgxMHYxMEgwem0xMCAxMGgxMHYxMEgxMHoiLz48L3BhdHRlcm4+PHJlY3QgZmlsbD0idXJsKCNhKSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIvPjwvc3ZnPg==")}@media screen and (min-width:65em){.k-file-preview-image{width:33.33%}}@media screen and (min-width:90em){.k-file-preview-image{width:25%}}.k-file-preview-image .k-image span{overflow:hidden;padding-bottom:66.66%}@media screen and (min-width:30em) and (max-width:65em){.k-file-preview-image .k-image span{position:absolute;top:0;left:0;bottom:0;right:0;padding-bottom:0!important}}@media screen and (min-width:65em){.k-file-preview-image .k-image span{padding-bottom:100%}}.k-file-preview-placeholder{display:block;padding-bottom:100%}.k-file-preview-image img{padding:3rem}.k-file-preview-image-link{display:block;outline:0}.k-file-preview-image-link.k-link[data-tabbed]{-webkit-box-shadow:none;box-shadow:none;outline:2px solid #4271ae;outline-offset:-2px}.k-file-preview-icon{position:relative;display:block;padding-bottom:100%;overflow:hidden;color:hsla(0,0%,100%,.5)}.k-file-preview-icon svg{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%) scale(4);transform:translate(-50%,-50%) scale(4)}.k-file-preview-details{padding:1.5rem;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}@media screen and (min-width:65em){.k-file-preview-details{padding:3rem}}.k-file-preview-details ul{line-height:1.5em;max-width:50rem;display:grid;grid-gap:1.5rem 3rem;grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}@media screen and (min-width:30em){.k-file-preview-details ul{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}.k-file-preview-details h3{font-size:.875rem;font-weight:500;color:#999}.k-file-preview-details p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:hsla(0,0%,100%,.75);font-size:.875rem}.k-file-preview-details p a{display:block;width:100%;overflow:hidden;text-overflow:ellipsis}.k-grid{--columns:12;display:grid;grid-column-gap:0;grid-row-gap:0;grid-template-columns:1fr}@media screen and (min-width:30em){.k-grid[data-gutter=small]{grid-column-gap:1rem;grid-row-gap:1rem}.k-grid[data-gutter=huge],.k-grid[data-gutter=large],.k-grid[data-gutter=medium]{grid-column-gap:1.5rem;grid-row-gap:1.5rem}}@media screen and (min-width:65em){.k-grid{grid-template-columns:repeat(var(--columns),1fr)}.k-grid[data-gutter=large]{grid-column-gap:3rem}.k-grid[data-gutter=huge]{grid-column-gap:4.5rem}}@media screen and (min-width:90em){.k-grid[data-gutter=large]{grid-column-gap:4.5rem}.k-grid[data-gutter=huge]{grid-column-gap:6rem}}@media screen and (min-width:120em){.k-grid[data-gutter=large]{grid-column-gap:6rem}.k-grid[data-gutter=huge]{grid-column-gap:7.5rem}}.k-header{border-bottom:1px solid #ccc;margin-bottom:2rem;padding-top:4vh}.k-header .k-headline{min-height:1.25em;margin-bottom:.5rem;word-wrap:break-word}.k-header .k-header-buttons{margin-top:-.5rem;height:3.25rem}.k-header .k-headline-editable{cursor:pointer}.k-header .k-headline-editable .k-icon{color:#999;opacity:0;-webkit-transition:opacity .3s;transition:opacity .3s;display:inline-block}[dir=ltr] .k-header .k-headline-editable .k-icon{margin-left:.5rem}[dir=rtl] .k-header .k-headline-editable .k-icon{margin-right:.5rem}.k-header .k-headline-editable:hover .k-icon{opacity:1}.k-header-tabs{position:relative;background:#e9e9e9;border-top:1px solid #ccc;border-left:1px solid #ccc;border-right:1px solid #ccc}.k-header-tabs nav{display:-webkit-box;display:-ms-flexbox;display:flex;margin-left:-1px;margin-right:-1px}.k-header-tabs nav,.k-tab-button.k-button{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.k-tab-button.k-button{position:relative;z-index:1;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.625rem .75rem;font-size:.75rem;text-transform:uppercase;text-align:center;font-weight:500;border-left:1px solid transparent;border-right:1px solid #ccc;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-negative:1;flex-shrink:1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:15rem}@media screen and (min-width:30em){.k-tab-button.k-button{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}}@media screen and (min-width:30em){.k-tab-button.k-button .k-icon{margin-right:.5rem}}.k-tab-button.k-button>.k-button-text{padding-top:.375rem;font-size:10px;overflow:hidden;max-width:10rem;text-overflow:ellipsis}[dir=ltr] .k-tab-button.k-button>.k-button-text{padding-left:0}[dir=rtl] .k-tab-button.k-button>.k-button-text{padding-right:0}@media screen and (min-width:30em){.k-tab-button.k-button>.k-button-text{font-size:.75rem;padding-top:0}}.k-tab-button:last-child{border-right:1px solid transparent}.k-tab-button[aria-current]{position:relative;background:#efefef;border-right:1px solid #ccc;pointer-events:none}.k-tab-button[aria-current]:first-child{border-left:1px solid #ccc}.k-tab-button[aria-current]:after,.k-tab-button[aria-current]:before{position:absolute;content:""}.k-tab-button[aria-current]:before{left:-1px;right:-1px;height:2px;top:-1px;background:#16171a}.k-tab-button[aria-current]:after{left:0;right:0;height:1px;bottom:-1px;background:#efefef}.k-tabs-dropdown{top:100%;right:0}.k-list .k-list-item:not(:last-child){margin-bottom:2px}.k-list-item{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:#fff;border-radius:1px;-webkit-box-shadow:rgba(22,23,26,.05) 0 2px 5px;box-shadow:0 2px 5px rgba(22,23,26,.05)}.k-list-item .k-sort-handle{position:absolute;left:-1.5rem;width:1.5rem;height:38px;opacity:0}.k-list:hover .k-sort-handle{opacity:.25}.k-list-item:hover .k-sort-handle{opacity:1}.k-list-item.k-sortable-ghost{position:relative;outline:2px solid #4271ae;z-index:1;-webkit-box-shadow:rgba(22,23,26,.25) 0 5px 10px;box-shadow:0 5px 10px rgba(22,23,26,.25)}.k-list-item.k-sortable-fallback{opacity:.25!important;overflow:hidden}.k-list-item-image{width:38px;height:38px;overflow:hidden;-ms-flex-negative:0;flex-shrink:0;line-height:0}.k-list-item-image .k-image{width:38px;height:38px;-o-object-fit:contain;object-fit:contain}.k-list-item-image .k-icon{width:38px;height:38px}.k-list-item-image .k-icon svg{opacity:.5}.k-list-item-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-negative:1;flex-shrink:1;overflow:hidden;outline:none}.k-list-item-content[data-tabbed]{outline:none;-webkit-box-shadow:#4271ae 0 0 0 2px,rgba(66,113,174,.2) 0 0 0 2px;box-shadow:0 0 0 2px #4271ae,0 0 0 2px rgba(66,113,174,.2)}.k-list-item-text{display:-webkit-box;display:-ms-flexbox;display:flex;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;width:100%;line-height:1.25rem;padding:.5rem .75rem}.k-list-item-text em{font-style:normal;margin-right:1rem;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;font-size:.875rem;color:#16171a}.k-list-item-text em,.k-list-item-text small{min-width:0;overflow:hidden;text-overflow:ellipsis}.k-list-item-text small{color:#999;font-size:.75rem;color:#777;display:none}@media screen and (min-width:30em){.k-list-item-text small{display:block}}.k-list-item-status{height:auto!important}.k-list-item-options{position:relative;-ms-flex-negative:0;flex-shrink:0}.k-list-item-options .k-dropdown-content{top:38px}.k-list-item-options>.k-button{height:38px;padding:0 12px}.k-list-item-options>.k-button>.k-button-icon{height:38px}.k-view{padding-left:1.5rem;padding-right:1.5rem;margin:0 auto;max-width:100rem}@media screen and (min-width:30em){.k-view{padding-left:3rem;padding-right:3rem}}@media screen and (min-width:90em){.k-view{padding-left:6rem;padding-right:6rem}}.k-view[data-align=center]{height:calc(100vh - 6rem);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:0 3rem;overflow:auto}.k-view[data-align=center]>*{-ms-flex-preferred-size:22.5rem;flex-basis:22.5rem}.k-headline{font-size:1rem;font-weight:600;line-height:1.5em}.k-headline[data-size=small]{font-size:.875rem}.k-headline[data-size=large]{font-size:1.25rem;font-weight:400}@media screen and (min-width:65em){.k-headline[data-size=large]{font-size:1.5rem}}.k-headline[data-size=huge]{font-size:1.5rem;line-height:1.15em}@media screen and (min-width:65em){.k-headline[data-size=huge]{font-size:1.75rem}}.k-headline[data-theme=negative]{color:#c82829}.k-headline[data-theme=positive]{color:#5d800d}.k-headline abbr{color:#999;padding-left:.25rem;text-decoration:none}.k-icon{position:relative;line-height:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0}.k-icon svg{width:1rem;height:1rem;-moz-transform:scale(1)}.k-icon svg *{fill:currentColor}.k-icon[data-back=black]{background:#16171a;color:#fff}.k-icon[data-back=white]{background:#fff;color:#16171a}.k-icon[data-back=pattern]{background:#2d2f36 url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXR0ZXJuIGlkPSJhIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHBhdHRlcm5Vbml0cz0idXNlclNwYWNlT25Vc2UiPjxwYXRoIGZpbGw9InJnYmEoMCwgMCwgMCwgMC4yKSIgZD0iTTAgMGgxMHYxMEgwem0xMCAxMGgxMHYxMEgxMHoiLz48L3BhdHRlcm4+PHJlY3QgZmlsbD0idXJsKCNhKSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIvPjwvc3ZnPg==");color:#fff}.k-icon[data-size=medium] svg{width:2rem;height:2rem}.k-icon[data-size=large] svg{width:3rem;height:3rem}.k-icon-emoji{display:block;line-height:1;font-style:normal;font-size:1rem}@media not all,only screen and (-webkit-min-device-pixel-ratio:2),only screen and (min-resolution:2dppx),only screen and (min-resolution:192dpi){.k-icon-emoji{font-size:1.25rem;margin-left:.2rem}}.k-image span{position:relative;display:block;line-height:0;padding-bottom:100%}.k-image img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.k-image-error{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:#fff;font-size:.9em}.k-image-error svg *{fill:hsla(0,0%,100%,.3)}.k-image[data-cover] img{-o-object-fit:cover;object-fit:cover}.k-image[data-back=black] span{background:#16171a}.k-image[data-back=white] span{background:#fff;color:#16171a}.k-image[data-back=white] .k-image-error{background:#16171a;color:#fff}.k-image[data-back=pattern] span{background:#2d2f36 url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXR0ZXJuIGlkPSJhIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHBhdHRlcm5Vbml0cz0idXNlclNwYWNlT25Vc2UiPjxwYXRoIGZpbGw9InJnYmEoMCwgMCwgMCwgMC4yKSIgZD0iTTAgMGgxMHYxMEgwem0xMCAxMGgxMHYxMEgxMHoiLz48L3BhdHRlcm4+PHJlY3QgZmlsbD0idXJsKCNhKSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIvPjwvc3ZnPg==")}.k-progress{-webkit-appearance:none;width:100%;height:.5rem;border-radius:5rem}.k-progress::-webkit-progress-bar{border:none;background:#ccc;height:.5rem;border-radius:20px}.k-progress::-webkit-progress-value{border-radius:20px;background:#4271ae;-webkit-transition:width .3s;transition:width .3s}.k-sort-handle{cursor:move;cursor:grab;cursor:-webkit-grab;color:#16171a;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:0;width:2rem;height:2rem;display:-webkit-box;display:-ms-flexbox;display:flex;will-change:opacity,color;-webkit-transition:opacity .3s;transition:opacity .3s;z-index:1}.k-sort-handle svg{width:1rem}.k-sort-handle:active{cursor:grabbing;cursor:-webkit-grabbing}.k-text{line-height:1.5em}.k-text p{margin-bottom:1.5em}.k-text a{text-decoration:underline}.k-text>:last-child{margin-bottom:0}.k-text[data-align=center]{text-align:center}.k-text[data-align=right]{text-align:right}.k-text[data-size=tiny]{font-size:.75rem}.k-text[data-size=small]{font-size:.875rem}.k-text[data-size=medium]{font-size:1rem}.k-text[data-size=large]{font-size:1.25rem}.k-text[data-theme=help]{font-size:.875rem;color:#777;line-height:1.25rem}.k-dialog-body .k-text{word-wrap:break-word}button{line-height:inherit;border:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-size:1rem;color:currentColor;background:none;cursor:pointer}button::-moz-focus-inner{padding:0;border:0}.k-button{display:inline-block;position:relative;font-size:.875rem;-webkit-transition:color .3s;transition:color .3s}.k-button,.k-button:focus,.k-button:hover{outline:none}.k-button[data-tabbed]{outline:none;-webkit-box-shadow:#4271ae 0 0 0 2px,rgba(66,113,174,.2) 0 0 0 2px;box-shadow:0 0 0 2px #4271ae,0 0 0 2px rgba(66,113,174,.2)}.k-button *{vertical-align:middle}.k-button[data-responsive] .k-button-text{display:none}@media screen and (min-width:30em){.k-button[data-responsive] .k-button-text{display:inline}}.k-button[data-theme=positive]{color:#5d800d}.k-button[data-theme=negative]{color:#c82829}.k-button-icon{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:0}[dir=ltr] .k-button-icon~.k-button-text{padding-left:.5rem}[dir=rtl] .k-button-icon~.k-button-text{padding-right:.5rem}.k-button-text{opacity:.75}.k-button:focus .k-button-text,.k-button:hover .k-button-text{opacity:1}.k-button-text b,.k-button-text span{vertical-align:baseline}.k-button[data-disabled]{opacity:.5;cursor:default}.k-card-options>.k-button[data-disabled]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.k-button[data-disabled]:focus .k-button-text,.k-button[data-disabled]:hover .k-button-text{opacity:.75}.k-button-group{font-size:0;margin-left:-.75rem;margin-right:-.75rem}.k-button-group>.k-dropdown{height:3rem;display:inline-block}.k-button-group>.k-button,.k-button-group>.k-dropdown>.k-button{padding:1rem .75rem;line-height:1rem}.k-button-group .k-dropdown-content{top:calc(100% + 1px);margin:0 .75rem}.k-dropdown{position:relative}.k-dropdown-content{position:absolute;top:100%;background:#16171a;color:#fff;z-index:700;-webkit-box-shadow:rgba(22,23,26,.2) 0 2px 10px;box-shadow:0 2px 10px rgba(22,23,26,.2);border-radius:1px;text-align:left;margin-bottom:6rem}[dir=ltr] .k-dropdown-content{left:0}[dir=rtl] .k-dropdown-content{right:0}[dir=ltr] .k-dropdown-content[data-align=right]{left:auto;right:0}[dir=rtl] .k-dropdown-content[data-align=right]{left:0;right:auto}.k-dropdown-content>.k-dropdown-item:first-child{margin-top:.5rem}.k-dropdown-content>.k-dropdown-item:last-child{margin-bottom:.5rem}.k-dropdown-content hr{position:relative;padding:.5rem 0;border:0}.k-dropdown-content hr:after{position:absolute;top:.5rem;left:1rem;right:1rem;content:"";height:1px;background:currentColor;opacity:.2}.k-dropdown-item{white-space:nowrap;line-height:1;display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:.875rem;padding:6px 16px}.k-dropdown-item:focus{outline:none;-webkit-box-shadow:#4271ae 0 0 0 2px,rgba(66,113,174,.2) 0 0 0 2px;box-shadow:0 0 0 2px #4271ae,0 0 0 2px rgba(66,113,174,.2)}.k-dropdown-item .k-button-figure{text-align:center;padding-right:.5rem}.k-link{outline:none}.k-link[data-tabbed]{outline:none;-webkit-box-shadow:#4271ae 0 0 0 2px,rgba(66,113,174,.2) 0 0 0 2px;box-shadow:0 0 0 2px #4271ae,0 0 0 2px rgba(66,113,174,.2)}.k-pagination{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;direction:ltr}.k-pagination .k-button{padding:1rem}.k-pagination-details{white-space:nowrap}.k-pagination>span{font-size:.875rem}.k-pagination[data-align=center]{text-align:center}.k-pagination[data-align=right]{text-align:right}.k-dropdown-content.k-pagination-selector{position:absolute;top:100%;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);background:#000}[dir=ltr] .k-dropdown-content.k-pagination-selector{direction:ltr}[dir=rtl] .k-dropdown-content.k-pagination-selector{direction:rtl}.k-pagination-settings{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.k-pagination-settings .k-button{line-height:1}.k-pagination-settings label{display:-webkit-box;display:-ms-flexbox;display:flex;border-right:1px solid hsla(0,0%,100%,.35);-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.625rem 1rem;font-size:.75rem}.k-pagination-settings label span{margin-right:.5rem}.k-prev-next{direction:ltr}.k-search{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;overflow:auto;background:rgba(22,23,26,.6)}.k-search-box{max-width:30rem;margin:0 auto;-webkit-box-shadow:rgba(22,23,26,.2) 0 2px 10px;box-shadow:0 2px 10px rgba(22,23,26,.2)}@media screen and (min-width:65em){.k-search-box{margin:2.5rem auto}}.k-search-input{background:#efefef}.k-search-input,.k-search-types{display:-webkit-box;display:-ms-flexbox;display:flex}.k-search-types{-ms-flex-negative:0;flex-shrink:0}.k-search-types>.k-button{padding:0 0 0 .7rem;font-size:1rem;line-height:1;height:2.5rem}.k-search-types>.k-button .k-icon{height:2.5rem}.k-search-types>.k-button .k-button-text{opacity:1;font-weight:500}.k-search-input input{background:none;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;font:inherit;padding:.75rem;border:0;height:2.5rem}.k-search-close{width:2.5rem;line-height:1}.k-search input:focus{outline:0}.k-search ul{background:#fff}.k-search li{border-bottom:1px solid #efefef;line-height:1.125;display:-webkit-box;display:-ms-flexbox;display:flex}.k-search li .k-link{display:block;padding:.5rem .75rem;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.k-search li strong{display:block;font-size:.875rem;font-weight:400}.k-search li small{font-size:.75rem;color:#777}.k-search li[data-selected]{outline:2px solid #4271ae;background:rgba(66,113,174,.25);border-bottom:1px solid transparent}.k-search-empty{padding:.825rem .75rem;font-size:.75rem;background:#efefef;border-top:1px dashed #ccc;color:#777}.k-tag{position:relative;font-size:.875rem;line-height:1;cursor:pointer;background-color:#16171a;color:#efefef;border-radius:1px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.k-tag:focus{outline:0;background-color:#4271ae;border-color:#4271ae;color:#fff}.k-tag-text{padding:0 .75rem}.k-tag-toggle{color:hsla(0,0%,100%,.7);width:2rem;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-left:1px solid hsla(0,0%,100%,.15)}.k-tag-toggle:hover{background:hsla(0,0%,100%,.2);color:#fff}.k-topbar{position:relative;color:#fff;-ms-flex-negative:0;flex-shrink:0;height:2.5rem;line-height:1;background:#16171a}.k-topbar-wrapper{position:relative;margin-left:-.75rem;margin-right:-.75rem}.k-topbar-loader,.k-topbar-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-topbar-loader{position:absolute;top:0;right:0;bottom:0;height:2.5rem;width:2.5rem;padding:.75rem;background:#16171a;z-index:1;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.k-topbar-loader svg{height:18px;width:18px;-webkit-animation:Spin .9s linear infinite;animation:Spin .9s linear infinite}.k-topbar-menu{-ms-flex-negative:0;flex-shrink:0}.k-topbar-menu ul{padding:.5rem 0}.k-topbar-menu-button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-topbar-menu-button .k-button-text{opacity:1}.k-topbar-button,.k-topbar-signals-button{padding:.75rem;line-height:1;font-size:.875rem}.k-topbar-signals .k-button .k-button-text{opacity:1}.k-topbar-button .k-button-text{display:-webkit-box;display:-ms-flexbox;display:flex;opacity:1}.k-topbar-view-button{-ms-flex-negative:0;flex-shrink:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}[dir=ltr] .k-topbar-view-button{padding-right:0}[dir=rtl] .k-topbar-view-button{padding-left:0}[dir=ltr] .k-topbar-view-button .k-icon{margin-right:.5rem}[dir=rtl] .k-topbar-view-button .k-icon{margin-left:.5rem}.k-topbar-crumbs{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;display:-webkit-box;display:-ms-flexbox;display:flex}.k-topbar-crumbs a{position:relative;font-size:.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:none;padding-top:.75rem;padding-bottom:.75rem;line-height:1;-webkit-transition:opacity .3s;transition:opacity .3s;outline:none}.k-topbar-crumbs a:before{content:"/";padding:0 .5rem;opacity:.25}.k-topbar-crumbs a:focus,.k-topbar-crumbs a:hover{opacity:1}.k-topbar-crumbs a[data-tabbed]{outline:none;-webkit-box-shadow:#4271ae 0 0 0 2px,rgba(66,113,174,.2) 0 0 0 2px;box-shadow:0 0 0 2px #4271ae,0 0 0 2px rgba(66,113,174,.2)}.k-topbar-crumbs a:not(:last-child){max-width:15vw}.k-topbar-breadcrumb-menu{-ms-flex-negative:0;flex-shrink:0}@media screen and (min-width:30em){.k-topbar-crumbs a{display:block}.k-topbar-breadcrumb-menu{display:none}}.k-topbar-signals{position:absolute;top:0;background:#16171a;height:2.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}[dir=ltr] .k-topbar-signals{right:0}[dir=rtl] .k-topbar-signals{left:0}.k-topbar-signals:before{position:absolute;content:"";top:0;bottom:0;width:.5rem}[dir=ltr] .k-topbar-signals:before{left:-.5rem;background:-webkit-linear-gradient(left,rgba(22,23,26,0),#16171a)}[dir=rtl] .k-topbar-signals:before{right:-.5rem;background:-webkit-linear-gradient(right,rgba(22,23,26,0),#16171a)}.k-topbar-signals .k-button{line-height:1}.k-topbar-notification{font-weight:600;line-height:1;display:-webkit-box;display:-ms-flexbox;display:flex}.k-topbar .k-button[data-theme=positive]{color:#a7bd68}.k-topbar .k-button[data-theme=negative]{color:#d16464}.k-topbar .k-button[data-theme=negative] .k-button-text{display:none}@media screen and (min-width:30em){.k-topbar .k-button[data-theme=negative] .k-button-text{display:inline}}.k-topbar .k-button[data-theme] .k-button-text{opacity:1}.k-topbar .k-dropdown-content{color:#16171a;background:#fff}.k-topbar .k-dropdown-content hr:after{opacity:.1}.k-topbar-menu [aria-current] .k-link{color:#4271ae;font-weight:500}.k-registration{display:inline-block;margin-right:1rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.k-registration p{color:#d16464;font-size:.875rem;margin-right:1rem;font-weight:600;display:none}@media screen and (min-width:90em){.k-registration p{display:block}}.k-registration .k-button{color:#fff}.k-section,.k-sections{padding-bottom:3rem}.k-section-header{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;z-index:1}.k-section-header .k-headline{line-height:1.25rem;padding-bottom:.75rem;min-height:2rem}.k-section-header .k-button-group{position:absolute;top:-.875rem}[dir=ltr] .k-section-header .k-button-group{right:0}[dir=rtl] .k-section-header .k-button-group{left:0}.k-fields-issue-headline,.k-info-section-headline{margin-bottom:.5rem}.k-fields-section input[type=submit]{display:none}[data-locked] .k-fields-section{opacity:.2;pointer-events:none}.k-browser-view .k-error-view-content{text-align:left}.k-error-view{position:absolute;top:0;right:0;bottom:0;left:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.k-error-view-content{line-height:1.5em;max-width:25rem;text-align:center}.k-error-view-icon{color:#c82829;display:inline-block}.k-error-view-content p:not(:last-child){margin-bottom:.75rem}.k-installation-view .k-button{display:block;margin-top:1.5rem}.k-installation-view .k-headline{margin-bottom:.75rem}.k-installation-issues{line-height:1.5em;font-size:.875rem}.k-installation-issues li{position:relative;padding:1.5rem;background:#fff}[dir=ltr] .k-installation-issues li{padding-left:3.5rem}[dir=rtl] .k-installation-issues li{padding-right:3.5rem}.k-installation-issues .k-icon{position:absolute;top:calc(1.5rem + 2px)}[dir=ltr] .k-installation-issues .k-icon{left:1.5rem}[dir=rtl] .k-installation-issues .k-icon{right:1.5rem}.k-installation-issues .k-icon svg *{fill:#c82829}.k-installation-issues li:not(:last-child){margin-bottom:2px}.k-installation-issues li code{font:inherit;color:#c82829}.k-installation-view .k-button[type=submit]{padding:1rem}[dir=ltr] .k-installation-view .k-button[type=submit]{margin-left:-1rem}[dir=rtl] .k-installation-view .k-button[type=submit]{margin-right:-1rem}.k-login-form label abbr{visibility:hidden}.k-login-buttons{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:1.5rem 0}.k-login-button{padding:.5rem 1rem;font-weight:500;-webkit-transition:opacity .3s;transition:opacity .3s}[dir=ltr] .k-login-button{margin-right:-1rem}[dir=rtl] .k-login-button{margin-left:-1rem}.k-login-button span{opacity:1}.k-login-button[disabled]{opacity:.25}.k-login-checkbox{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.5rem 0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;font-size:.875rem;cursor:pointer}.k-login-checkbox .k-checkbox-text{opacity:.75;-webkit-transition:opacity .3s;transition:opacity .3s}.k-login-checkbox:focus span,.k-login-checkbox:hover span{opacity:1}.k-login-alert{padding:.5rem .75rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:38px;margin-bottom:2rem;background:#c82829;color:#fff;font-size:.875rem;border-radius:1px;-webkit-box-shadow:rgba(22,23,26,.2) 0 2px 10px;box-shadow:0 2px 10px rgba(22,23,26,.2);cursor:pointer}.k-status-flag svg{width:14px;height:14px}.k-status-flag-listed .k-icon{color:#a7bd68}.k-status-flag-unlisted .k-icon{color:#81a2be}.k-status-flag-draft .k-icon{color:#d16464}.k-status-flag[disabled]{opacity:1}.k-settings-view section{margin-bottom:3rem}.k-settings-view .k-header{margin-bottom:1.5rem}.k-settings-view header{margin-bottom:.5rem;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.k-settings-view header,.k-system-info-box{display:-webkit-box;display:-ms-flexbox;display:flex}.k-system-info-box{background:#fff;padding:.75rem}.k-system-info-box li{-ms-flex-negative:0;flex-shrink:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:0;flex-basis:0}.k-system-info-box dt{font-size:.875rem;color:#777;margin-bottom:.25rem}.k-system-unregistered{color:#c82829}.k-languages-section{margin-bottom:2rem}.k-user-profile{background:#fff}.k-user-profile>.k-view{padding-top:3rem;padding-bottom:3rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:0}.k-user-profile .k-button-group{overflow:hidden}[dir=ltr] .k-user-profile .k-button-group{margin-left:.75rem}[dir=rtl] .k-user-profile .k-button-group{margin-right:.75rem}.k-user-profile .k-button-group .k-button{display:block;padding-top:.25rem;padding-bottom:.25rem;overflow:hidden;white-space:nowrap}.k-user-profile .k-button-group .k-button[disabled]{opacity:1}.k-user-profile .k-dropdown-content{margin-top:.5rem;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.k-user-view-image .k-image{display:block;width:4rem;height:4rem;line-height:0}.k-user-view-image .k-button-text{opacity:1}.k-user-view-image .k-icon{width:4rem;height:4rem;background:#16171a;color:#999}.k-user-name-placeholder{color:#999;-webkit-transition:color .3s;transition:color .3s}.k-header[data-editable] .k-user-name-placeholder:hover{color:#16171a} \ No newline at end of file diff --git a/kirby/panel/dist/js/app.js b/kirby/panel/dist/js/app.js index 01e0168..32507c1 100755 --- a/kirby/panel/dist/js/app.js +++ b/kirby/panel/dist/js/app.js @@ -1 +1 @@ -(function(t){function e(e){for(var i,o,r=e[0],l=e[1],u=e[2],d=0,p=[];d0?e.$store.dispatch("notification/error",{message:e.$t("error.page.changeStatus.incomplete"),details:n.errors}):void("default"===n.blueprint.num?e.$api.pages.get(t,{select:["siblings"]}).then(function(t){e.setup(Object(I["a"])({},n,{siblings:t.siblings}))}).catch(function(t){e.$store.dispatch("notification/error",t)}):e.setup(Object(I["a"])({},n,{siblings:[]})))}).catch(function(t){e.$store.dispatch("notification/error",t)})},setup:function(t){this.page=t,this.form.position=t.num||t.siblings.length+1,this.form.status=t.status,this.states=t.blueprint.status,this.$refs.dialog.open()},submit:function(){this.$refs.form.submit()},changeStatus:function(){var t=this;this.$api.pages.status(this.page.id,this.form.status,this.form.position||1).then(function(){t.success({message:":)",event:"page.changeStatus"})}).catch(function(e){t.$refs.dialog.error(e.message)})}}},ye=_e,xe=Object(_["a"])(ye,ke,$e,!1,null,null,null),we=xe.exports,Oe=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-dialog",{ref:"dialog",attrs:{button:t.$t("change"),size:"medium",theme:"positive"},on:{submit:function(e){return t.$refs.form.submit()}}},[n("k-form",{ref:"form",attrs:{fields:t.fields},on:{submit:t.submit},model:{value:t.page,callback:function(e){t.page=e},expression:"page"}})],1)},Ce=[],Se={mixins:[C],data:function(){return{blueprints:[],page:{id:null,template:null}}},computed:{fields:function(){return{template:{label:this.$t("template"),type:"select",required:!0,empty:!1,options:this.page.blueprints,icon:"template"}}}},methods:{open:function(t){var e=this;this.$api.pages.get(t,{select:["id","template","blueprints"]}).then(function(t){if(t.blueprints.length<=1)return e.$store.dispatch("notification/error",{message:e.$t("error.page.changeTemplate.invalid",{slug:t.id})});e.page=t,e.page.blueprints=e.page.blueprints.map(function(t){return{text:t.title,value:t.name}}),e.$refs.dialog.open()}).catch(function(t){e.$store.dispatch("notification/error",t)})},submit:function(){var t=this;this.$events.$emit("keydown.cmd.s"),this.$api.pages.template(this.page.id,this.page.template).then(function(){t.success({message:":)",event:"page.changeTemplate"})}).catch(function(e){t.$refs.dialog.error(e.message)})}}},Ee=Se,je=Object(_["a"])(Ee,Oe,Ce,!1,null,null,null),Te=je.exports,Ie=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-dialog",{ref:"dialog",attrs:{button:t.$t("change"),size:"medium",theme:"positive"},on:{submit:function(e){return t.$refs.form.submit()}}},[n("k-form",{ref:"form",on:{submit:t.submit}},[n("k-text-field",t._b({attrs:{value:t.slug},on:{input:function(e){return t.sluggify(e)}}},"k-text-field",t.field,!1),[n("k-button",{attrs:{slot:"options",icon:"wand","data-options":""},on:{click:function(e){return t.sluggify(t.page.title)}},slot:"options"},[t._v("\n "+t._s(t.$t("page.changeSlug.fromTitle"))+"\n ")])],1)],1)],1)},Le=[],qe={mixins:[C],data:function(){return{slug:null,url:null,page:{id:null,parent:null,title:null}}},computed:{field:function(){return{name:"slug",label:this.$t("slug"),type:"text",required:!0,icon:"url",help:"/"+this.url,counter:!1,preselect:!0}},slugs:function(){return this.$store.state.languages.current?this.$store.state.languages.current.rules:this.system.slugs},system:function(){return this.$store.state.system.info}},methods:{sluggify:function(t){this.slug=this.$helper.slug(t,[this.slugs,this.system.ascii]),this.page.parents?this.url=this.page.parents.map(function(t){return t.slug}).concat([this.slug]).join("/"):this.url=this.slug},open:function(t){var e=this;this.$api.pages.get(t,{view:"panel"}).then(function(t){e.page=t,e.sluggify(e.page.slug),e.$refs.dialog.open()}).catch(function(t){e.$store.dispatch("notification/error",t)})},submit:function(){var t=this;if(this.slug===this.page.slug)return this.$refs.dialog.close(),void this.$store.dispatch("notification/success",":)");0!==this.slug.length?this.$api.pages.slug(this.page.id,this.slug).then(function(e){t.$store.dispatch("content/move",["pages/"+t.page.id,"pages/"+e.id]);var n={message:":)",event:"page.changeSlug"};!t.$route.params.path||t.page.id!==t.$route.params.path.replace(/\+/g,"/")||t.$store.state.languages.current&&!0!==t.$store.state.languages.current.default||(n.route=t.$api.pages.link(e.id),delete n.event),t.success(n)}).catch(function(e){t.$refs.dialog.error(e.message)}):this.$refs.dialog.error(this.$t("error.page.slug.invalid"))}}},Ae=qe,Ne=Object(_["a"])(Ae,Ie,Le,!1,null,null,null),Be=Ne.exports,Pe=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-dialog",{ref:"dialog",staticClass:"k-pages-dialog",attrs:{size:"medium"},on:{cancel:function(e){return t.$emit("cancel")},submit:t.submit}},[t.issue?[n("k-box",{attrs:{text:t.issue,theme:"negative"}})]:[t.model?n("header",{staticClass:"k-pages-dialog-navbar"},[n("k-button",{attrs:{disabled:!t.model.id,tooltip:t.$t("back"),icon:"angle-left"},on:{click:t.back}}),n("k-headline",[t._v(t._s(t.model.title))])],1):t._e(),t.options.search?n("k-input",{staticClass:"k-dialog-search",attrs:{autofocus:!0,placeholder:t.$t("search")+" …",type:"text",icon:"search"},model:{value:t.search,callback:function(e){t.search=e},expression:"search"}}):t._e(),t.models.length?[n("k-list",t._l(t.models,function(e){return n("k-list-item",{key:e.id,attrs:{text:e.text,info:e.info,image:e.image,icon:e.icon},on:{click:function(n){return t.toggle(e)}}},[n("template",{slot:"options"},[t.isSelected(e)?n("k-button",{attrs:{slot:"options",autofocus:!0,icon:t.checkedIcon,tooltip:t.$t("remove"),theme:"positive"},slot:"options"}):n("k-button",{attrs:{slot:"options",autofocus:!0,tooltip:t.$t("select"),icon:"circle-outline"},slot:"options"}),t.model?n("k-button",{attrs:{disabled:!e.hasChildren,tooltip:t.$t("open"),icon:"angle-right"},on:{click:function(n){return n.stopPropagation(),t.go(e)}}}):t._e()],1)],2)}),1),n("k-pagination",t._b({staticClass:"k-dialog-pagination",attrs:{details:!0,dropdown:!1,align:"center"},on:{paginate:t.paginate}},"k-pagination",t.pagination,!1))]:n("k-empty",{attrs:{icon:"page"}},[t._v("\n "+t._s(t.$t("dialog.pages.empty"))+"\n ")])]],2)},De=[],Re={mixins:[Ot],data:function(){var t=Ot.data();return Object(I["a"])({},t,{model:{title:null,parent:null},options:Object(I["a"])({},t.options,{parent:null})})},computed:{fetchData:function(){return{parent:this.options.parent}}},methods:{back:function(){this.options.parent=this.model.parent,this.pagination.page=1,this.fetch()},go:function(t){this.options.parent=t.id,this.pagination.page=1,this.fetch()},onFetched:function(t){this.model=t.model}}},Me=Re,ze=(n("ac27"),Object(_["a"])(Me,Pe,De,!1,null,null,null)),Ue=ze.exports,Fe={extends:ve,methods:{open:function(){var t=this;this.$api.site.get({select:["title"]}).then(function(e){t.page=e,t.$refs.dialog.open()}).catch(function(e){t.$store.dispatch("notification/error",e)})},submit:function(){var t=this;this.page.title=this.page.title.trim(),0!==this.page.title.length?this.$api.site.title(this.page.title).then(function(){t.$store.dispatch("system/title",t.page.title),t.success({message:":)",event:"site.changeTitle"})}).catch(function(e){t.$refs.dialog.error(e.message)}):this.$refs.dialog.error(this.$t("error.site.changeTitle.empty"))}}},He=Fe,Ke=Object(_["a"])(He,a,o,!1,null,null,null),Ve=Ke.exports,Ye=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-dialog",{ref:"dialog",attrs:{button:t.$t("create"),size:"medium",theme:"positive"},on:{submit:function(e){return t.$refs.form.submit()},close:t.reset}},[n("k-form",{ref:"form",attrs:{fields:t.fields,novalidate:!0},on:{submit:t.create},model:{value:t.user,callback:function(e){t.user=e},expression:"user"}})],1)},We=[],Ge=n("795b"),Je=n.n(Ge),Ze=(n("5df3"),{mixins:[C],data:function(){return{user:this.emptyForm(),languages:[],roles:[]}},computed:{fields:function(){return{name:{label:this.$t("name"),type:"text",icon:"user"},email:{label:this.$t("email"),type:"email",icon:"email",link:!1,required:!0},password:{label:this.$t("password"),type:"password",icon:"key"},language:{label:this.$t("language"),type:"select",icon:"globe",options:this.languages,required:!0,empty:!1},role:{label:this.$t("role"),type:1===this.roles.length?"hidden":"radio",required:!0,options:this.roles}}}},methods:{create:function(){var t=this;this.$api.users.create(this.user).then(function(){t.success({message:":)",event:"user.create"})}).catch(function(e){t.$refs.dialog.error(e.message)})},emptyForm:function(){return{name:"",email:"",password:"",language:this.$store.state.system.info.defaultLanguage||"en",role:this.$user.role.name}},open:function(){var t=this,e=this.$api.roles.options({canBe:"created"}).then(function(e){t.roles=e,"admin"!==t.$user.role.name&&(t.roles=t.roles.filter(function(t){return"admin"!==t.value}))}).catch(function(e){t.$store.dispatch("notification/error",e)}),n=this.$api.translations.options().then(function(e){t.languages=e}).catch(function(e){t.$store.dispatch("notification/error",e)});Je.a.all([e,n]).then(function(){t.$refs.dialog.open()})},reset:function(){this.user=this.emptyForm()}}}),Xe=Ze,Qe=Object(_["a"])(Xe,Ye,We,!1,null,null,null),tn=Qe.exports,en=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-dialog",{ref:"dialog",attrs:{button:t.$t("change"),size:"medium",theme:"positive"},on:{submit:function(e){return t.$refs.form.submit()}}},[n("k-form",{ref:"form",attrs:{fields:t.fields},on:{submit:t.submit},model:{value:t.user,callback:function(e){t.user=e},expression:"user"}})],1)},nn=[],sn={mixins:[C],data:function(){return{user:{id:null,email:null}}},computed:{fields:function(){return{email:{label:this.$t("email"),preselect:!0,required:!0,type:"email"}}}},methods:{open:function(t){var e=this;this.$api.users.get(t,{select:["id","email"]}).then(function(t){e.user=t,e.$refs.dialog.open()}).catch(function(t){e.$store.dispatch("notification/error",t)})},submit:function(){var t=this;this.$api.users.changeEmail(this.user.id,this.user.email).then(function(e){t.$store.dispatch("content/revert","users/"+t.user.id),t.$user.id===t.user.id&&t.$store.dispatch("user/email",t.user.email);var n={message:":)",event:"user.changeEmail"};"User"===t.$route.name&&(n.route=t.$api.users.link(e.id)),t.success(n)}).catch(function(e){t.$refs.dialog.error(e.message)})}}},an=sn,on=Object(_["a"])(an,en,nn,!1,null,null,null),rn=on.exports,ln=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-dialog",{ref:"dialog",attrs:{button:t.$t("change"),theme:"positive",icon:"check"},on:{submit:function(e){return t.$refs.form.submit()}}},[n("k-form",{ref:"form",attrs:{fields:t.fields},on:{submit:t.submit},model:{value:t.user,callback:function(e){t.user=e},expression:"user"}})],1)},un=[],cn={mixins:[C],data:function(){return{user:{language:"en"},languages:[]}},computed:{fields:function(){return{language:{label:this.$t("language"),type:"select",icon:"globe",options:this.languages,required:!0,empty:!1}}}},created:function(){var t=this;this.$api.translations.options().then(function(e){t.languages=e})},methods:{open:function(t){var e=this;this.$api.users.get(t,{view:"compact"}).then(function(t){e.user=t,e.$refs.dialog.open()}).catch(function(t){e.$store.dispatch("notification/error",t)})},submit:function(){var t=this;this.$api.users.changeLanguage(this.user.id,this.user.language).then(function(e){t.user=e,t.$user.id===t.user.id&&t.$store.dispatch("user/language",t.user.language),t.success({message:":)",event:"user.changeLanguage"})}).catch(function(e){t.$refs.dialog.error(e.message)})}}},dn=cn,pn=Object(_["a"])(dn,ln,un,!1,null,null,null),fn=pn.exports,hn=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-dialog",{ref:"dialog",attrs:{button:t.$t("change"),theme:"positive",icon:"check"},on:{submit:function(e){return t.$refs.form.submit()}}},[n("k-form",{ref:"form",attrs:{fields:t.fields},on:{submit:t.submit},model:{value:t.values,callback:function(e){t.values=e},expression:"values"}})],1)},mn=[],gn={mixins:[C],data:function(){return{user:null,values:{password:null,passwordConfirmation:null}}},computed:{fields:function(){return{password:{label:this.$t("user.changePassword.new"),type:"password",icon:"key"},passwordConfirmation:{label:this.$t("user.changePassword.new.confirm"),icon:"key",type:"password"}}}},methods:{open:function(t){var e=this;this.$api.users.get(t).then(function(t){e.user=t,e.$refs.dialog.open()}).catch(function(t){e.$store.dispatch("notification/error",t)})},submit:function(){var t=this;return!this.values.password||this.values.password.length<8?(this.$refs.dialog.error(this.$t("error.user.password.invalid")),!1):this.values.password!==this.values.passwordConfirmation?(this.$refs.dialog.error(this.$t("error.user.password.notSame")),!1):void this.$api.users.changePassword(this.user.id,this.values.password).then(function(){t.success({message:":)",event:"user.changePassword"})}).catch(function(e){t.$refs.dialog.error(e.message)})}}},bn=gn,vn=Object(_["a"])(bn,hn,mn,!1,null,null,null),kn=vn.exports,$n=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-dialog",{ref:"dialog",attrs:{button:t.$t("delete"),theme:"negative",icon:"trash"},on:{submit:t.submit}},[n("k-text",{domProps:{innerHTML:t._s(t.$t("user.delete.confirm",{email:t.user.email}))}})],1)},_n=[],yn={mixins:[C],data:function(){return{user:{email:null}}},methods:{open:function(t){var e=this;this.$api.users.get(t).then(function(t){e.user=t,e.$refs.dialog.open()}).catch(function(t){e.$store.dispatch("notification/error",t)})},submit:function(){var t=this;this.$api.users.delete(this.user.id).then(function(){t.$store.dispatch("content/remove","users/"+t.user.id),t.success({message:":)",event:"user.delete"}),"User"===t.$route.name&&t.$router.push("/users")}).catch(function(e){t.$refs.dialog.error(e.message)})}}},xn=yn,wn=Object(_["a"])(xn,$n,_n,!1,null,null,null),On=wn.exports,Cn=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-dialog",{ref:"dialog",attrs:{button:t.$t("rename"),size:"medium",theme:"positive"},on:{submit:function(e){return t.$refs.form.submit()}}},[n("k-form",{ref:"form",attrs:{fields:t.fields},on:{submit:t.submit},model:{value:t.user,callback:function(e){t.user=e},expression:"user"}})],1)},Sn=[],En={mixins:[C],data:function(){return{user:{id:null,name:null}}},computed:{fields:function(){return{name:{label:this.$t("name"),type:"text",icon:"user",preselect:!0}}}},methods:{open:function(t){var e=this;this.$api.users.get(t,{select:["id","name"]}).then(function(t){e.user=t,e.$refs.dialog.open()}).catch(function(t){e.$store.dispatch("notification/error",t)})},submit:function(){var t=this;this.user.name=this.user.name.trim(),this.$api.users.changeName(this.user.id,this.user.name).then(function(){t.$user.id===t.user.id&&t.$store.dispatch("user/name",t.user.name),t.success({message:":)",event:"user.changeName"})}).catch(function(e){t.$refs.dialog.error(e.message)})}}},jn=En,Tn=Object(_["a"])(jn,Cn,Sn,!1,null,null,null),In=Tn.exports,Ln=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-dialog",{ref:"dialog",attrs:{button:t.$t("user.changeRole"),size:"medium",theme:"positive"},on:{submit:function(e){return t.$refs.form.submit()}}},[n("k-form",{ref:"form",attrs:{fields:t.fields},on:{submit:t.submit},model:{value:t.user,callback:function(e){t.user=e},expression:"user"}})],1)},qn=[],An={mixins:[C],data:function(){return{roles:[],user:{id:null,role:"visitor"}}},computed:{fields:function(){return{role:{label:this.$t("user.changeRole.select"),type:"radio",required:!0,options:this.roles}}}},methods:{open:function(t){var e=this;this.id=t,this.$api.users.get(t).then(function(t){e.$api.roles.options({canBe:"changed"}).then(function(n){e.roles=n,"admin"!==e.$user.role.name&&(e.roles=e.roles.filter(function(t){return"admin"!==t.value})),e.user=t,e.user.role=e.user.role.name,e.$refs.dialog.open()})}).catch(function(t){e.$store.dispatch("notification/error",t)})},submit:function(){var t=this;this.$api.users.changeRole(this.user.id,this.user.role).then(function(){t.$user.id===t.user.id&&t.$store.dispatch("user/load"),t.success({message:":)",event:"user.changeRole"})}).catch(function(e){t.$refs.dialog.error(e.message)})}}},Nn=An,Bn=Object(_["a"])(Nn,Ln,qn,!1,null,null,null),Pn=Bn.exports,Dn=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-dialog",{ref:"dialog",staticClass:"k-users-dialog",attrs:{size:"medium"},on:{cancel:function(e){return t.$emit("cancel")},submit:t.submit}},[t.issue?[n("k-box",{attrs:{text:t.issue,theme:"negative"}})]:[t.options.search?n("k-input",{staticClass:"k-dialog-search",attrs:{autofocus:!0,placeholder:t.$t("search")+" …",type:"text",icon:"search"},model:{value:t.search,callback:function(e){t.search=e},expression:"search"}}):t._e(),t.models.length?[n("k-list",t._l(t.models,function(e){return n("k-list-item",{key:e.email,attrs:{text:e.username,image:e.image,icon:e.icon},on:{click:function(n){return t.toggle(e)}}},[t.isSelected(e)?n("k-button",{attrs:{slot:"options",autofocus:!0,icon:t.checkedIcon,tooltip:t.$t("remove"),theme:"positive"},slot:"options"}):n("k-button",{attrs:{slot:"options",autofocus:!0,tooltip:t.$t("select"),icon:"circle-outline"},slot:"options"})],1)}),1),n("k-pagination",t._b({staticClass:"k-dialog-pagination",attrs:{details:!0,dropdown:!1,align:"center"},on:{paginate:t.paginate}},"k-pagination",t.pagination,!1))]:n("k-empty",{attrs:{icon:"users"}},[t._v("\n "+t._s(t.$t("dialog.users.empty"))+"\n ")])]],2)},Rn=[],Mn={mixins:[Ot]},zn=Mn,Un=(n("7568"),Object(_["a"])(zn,Dn,Rn,!1,null,null,null)),Fn=Un.exports,Hn=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-dropdown",{staticClass:"k-autocomplete"},[t._t("default"),n("k-dropdown-content",t._g({ref:"dropdown",attrs:{autofocus:!0}},t.$listeners),t._l(t.matches,function(e,i){return n("k-dropdown-item",t._b({key:i,on:{mousedown:function(n){return t.onSelect(e)},keydown:[function(n){return!n.type.indexOf("key")&&t._k(n.keyCode,"tab",9,n.key,"Tab")?null:(n.preventDefault(),t.onSelect(e))},function(n){return!n.type.indexOf("key")&&t._k(n.keyCode,"enter",13,n.key,"Enter")?null:(n.preventDefault(),t.onSelect(e))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"left",37,e.key,["Left","ArrowLeft"])?null:"button"in e&&0!==e.button?null:(e.preventDefault(),t.close(e))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"backspace",void 0,e.key,void 0)?null:(e.preventDefault(),t.close(e))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"delete",[8,46],e.key,["Backspace","Delete","Del"])?null:(e.preventDefault(),t.close(e))}]}},"k-dropdown-item",e,!1),[t._v("\n "+t._s(e.text)+"\n ")])}),1),t._v("\n "+t._s(t.query)+"\n")],2)},Kn=[],Vn=(n("4917"),n("3b2b"),{props:{limit:10,skip:{type:Array,default:function(){return[]}},options:Array,query:String},data:function(){return{matches:[],selected:{text:null}}},methods:{close:function(){this.$refs.dropdown.close()},onSelect:function(t){this.$refs.dropdown.close(),this.$emit("select",t)},search:function(t){var e=this;if(!(t.length<1)){var n=new RegExp(RegExp.escape(t),"ig");this.matches=this.options.filter(function(t){return!!t.text&&(-1===e.skip.indexOf(t.value)&&null!==t.text.match(n))}).slice(0,this.limit),this.$emit("search",t,this.matches),this.$refs.dropdown.open()}}}}),Yn=Vn,Wn=Object(_["a"])(Yn,Hn,Kn,!1,null,null,null),Gn=Wn.exports,Jn=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-calendar-input"},[n("nav",[n("k-button",{attrs:{icon:"angle-left"},on:{click:t.prev}}),n("span",{staticClass:"k-calendar-selects"},[n("k-select-input",{attrs:{options:t.months,disabled:t.disabled,required:!0},model:{value:t.month,callback:function(e){t.month=t._n(e)},expression:"month"}}),n("k-select-input",{attrs:{options:t.years,disabled:t.disabled,required:!0},model:{value:t.year,callback:function(e){t.year=t._n(e)},expression:"year"}})],1),n("k-button",{attrs:{icon:"angle-right"},on:{click:t.next}})],1),n("table",{staticClass:"k-calendar-table"},[n("thead",[n("tr",t._l(t.weekdays,function(e){return n("th",{key:"weekday_"+e},[t._v(t._s(e))])}),0)]),n("tbody",t._l(t.numberOfWeeks,function(e){return n("tr",{key:"week_"+e},t._l(t.days(e),function(e,i){return n("td",{key:"day_"+i,staticClass:"k-calendar-day",attrs:{"aria-current":!!t.isToday(e)&&"date","aria-selected":!!t.isCurrent(e)&&"date"}},[e?n("k-button",{on:{click:function(n){return t.select(e)}}},[t._v(t._s(e))]):t._e()],1)}),0)}),0),n("tfoot",[n("tr",[n("td",{staticClass:"k-calendar-today",attrs:{colspan:"7"}},[n("k-button",{on:{click:t.selectToday}},[t._v(t._s(t.$t("today")))])],1)])])])])},Zn=[],Xn={props:{value:String,disabled:Boolean},data:function(){var t=this.value?this.$library.dayjs(this.value):this.$library.dayjs();return{day:t.date(),month:t.month(),year:t.year(),today:this.$library.dayjs(),current:t}},computed:{date:function(){return this.$library.dayjs("".concat(this.year,"-").concat(this.month+1,"-").concat(this.day))},numberOfDays:function(){return this.date.daysInMonth()},numberOfWeeks:function(){return Math.ceil((this.numberOfDays+this.firstWeekday-1)/7)},firstWeekday:function(){var t=this.date.clone().startOf("month").day();return t>0?t:7},weekdays:function(){return[this.$t("days.mon"),this.$t("days.tue"),this.$t("days.wed"),this.$t("days.thu"),this.$t("days.fri"),this.$t("days.sat"),this.$t("days.sun")]},monthnames:function(){return[this.$t("months.january"),this.$t("months.february"),this.$t("months.march"),this.$t("months.april"),this.$t("months.may"),this.$t("months.june"),this.$t("months.july"),this.$t("months.august"),this.$t("months.september"),this.$t("months.october"),this.$t("months.november"),this.$t("months.december")]},months:function(){var t=[];return this.monthnames.forEach(function(e,n){t.push({value:n,text:e})}),t},years:function(){for(var t=[],e=this.year-10;e<=this.year+10;e++)t.push({value:e,text:this.$helper.pad(e)});return t}},watch:{value:function(t){var e=this.$library.dayjs(t);this.day=e.date(),this.month=e.month(),this.year=e.year(),this.current=e}},methods:{days:function(t){for(var e=[],n=7*(t-1)+1,i=n;ithis.numberOfDays?e.push(""):e.push(s)}return e},next:function(){var t=this.date.clone().add(1,"month");this.set(t)},isToday:function(t){return this.month===this.today.month()&&this.year===this.today.year()&&t===this.today.date()},isCurrent:function(t){return this.month===this.current.month()&&this.year===this.current.year()&&t===this.current.date()},prev:function(){var t=this.date.clone().subtract(1,"month");this.set(t)},go:function(t,e){"today"===t&&(t=this.today.year(),e=this.today.month()),this.year=t,this.month=e},set:function(t){this.day=t.date(),this.month=t.month(),this.year=t.year()},selectToday:function(){this.set(this.$library.dayjs()),this.select(this.day)},select:function(t){t&&(this.day=t);var e=this.$library.dayjs(new Date(this.year,this.month,this.day,this.current.hour(),this.current.minute()));this.$emit("input",e.toISOString())}}},Qn=Xn,ti=(n("ee15"),Object(_["a"])(Qn,Jn,Zn,!1,null,null,null)),ei=ti.exports,ni=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",{staticClass:"k-counter",attrs:{"data-invalid":!t.valid}},[n("span",[t._v(t._s(t.count))]),t.min&&t.max?n("span",{staticClass:"k-counter-rules"},[t._v("("+t._s(t.min)+"–"+t._s(t.max)+")")]):t.min?n("span",{staticClass:"k-counter-rules"},[t._v("≥ "+t._s(t.min))]):t.max?n("span",{staticClass:"k-counter-rules"},[t._v("≤ "+t._s(t.max))]):t._e()])},ii=[],si=(n("c5f6"),{props:{count:Number,min:Number,max:Number,required:{type:Boolean,default:!1}},computed:{valid:function(){return!1===this.required&&0===this.count||(!0!==this.required||0!==this.count)&&(!(this.min&&this.countthis.max))}}}),ai=si,oi=(n("fc0f"),Object(_["a"])(ai,ni,ii,!1,null,null,null)),ri=oi.exports,li=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("form",{ref:"form",staticClass:"k-form",attrs:{method:"POST",autocomplete:"off",novalidate:""},on:{submit:function(e){return e.preventDefault(),t.onSubmit(e)}}},[t._t("header"),t._t("default",[n("k-fieldset",t._g({ref:"fields",attrs:{disabled:t.disabled,fields:t.fields,novalidate:t.novalidate},model:{value:t.value,callback:function(e){t.value=e},expression:"value"}},t.listeners))]),t._t("footer"),n("input",{ref:"submitter",staticClass:"k-form-submitter",attrs:{type:"submit"}})],2)},ui=[],ci={props:{disabled:Boolean,config:Object,fields:{type:[Array,Object],default:function(){return{}}},novalidate:{type:Boolean,default:!1},value:{type:Object,default:function(){return{}}}},data:function(){return{errors:{},listeners:Object(I["a"])({},this.$listeners,{submit:this.onSubmit})}},methods:{focus:function(t){this.$refs.fields&&this.$refs.fields.focus&&this.$refs.fields.focus(t)},onSubmit:function(){this.$emit("submit",this.value)},submit:function(){this.$refs.submitter.click()}}},di=ci,pi=(n("5d33"),Object(_["a"])(di,li,ui,!1,null,null,null)),fi=pi.exports,hi=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("nav",{staticClass:"k-form-buttons",attrs:{"data-theme":t.mode}},["unlock"===t.mode?n("k-view",[n("p",{staticClass:"k-form-lock-info"},[t._v("\n "+t._s(t.$t("lock.isUnlocked"))+"\n ")]),n("span",{staticClass:"k-form-lock-buttons"},[n("k-button",{staticClass:"k-form-button",attrs:{icon:"download"},on:{click:t.onDownload}},[t._v("\n "+t._s(t.$t("download"))+"\n ")]),n("k-button",{staticClass:"k-form-button",attrs:{icon:"check"},on:{click:t.onResolve}},[t._v("\n "+t._s(t.$t("confirm"))+"\n ")])],1)]):"lock"===t.mode?n("k-view",[n("p",{staticClass:"k-form-lock-info"},[n("k-icon",{attrs:{type:"lock"}}),n("span",{domProps:{innerHTML:t._s(t.$t("lock.isLocked",{email:t.form.lock.email}))}})],1),t.form.lock.unlockable?n("k-button",{staticClass:"k-form-button",attrs:{icon:"unlock"},on:{click:t.setUnlock}},[t._v("\n "+t._s(t.$t("lock.unlock"))+"\n ")]):n("k-icon",{staticClass:"k-form-lock-loader",attrs:{type:"loader"}})],1):"changes"===t.mode?n("k-view",[n("k-button",{staticClass:"k-form-button",attrs:{disabled:t.isDisabled,icon:"undo"},on:{click:t.onRevert}},[t._v("\n "+t._s(t.$t("revert"))+"\n ")]),n("k-button",{staticClass:"k-form-button",attrs:{disabled:t.isDisabled,icon:"check"},on:{click:t.onSave}},[t._v("\n "+t._s(t.$t("save"))+"\n ")])],1):t._e()],1)},mi=[],gi=n("75fc"),bi={data:function(){return{supportsLocking:!0}},computed:{api:function(){return{lock:[this.$route.path+"/lock",null,null,!0],unlock:[this.$route.path+"/unlock",null,null,!0]}},hasChanges:function(){return this.$store.getters["content/hasChanges"]()},form:function(){return{lock:this.$store.state.content.status.lock,unlock:this.$store.state.content.status.unlock}},id:function(){return this.$store.state.content.current},isDisabled:function(){return!1===this.$store.state.content.status.enabled},isLocked:function(){return null!==this.form.lock},isUnlocked:function(){return null!==this.form.unlock},mode:function(){return!0===this.isUnlocked?"unlock":!0===this.isLocked?"lock":!0===this.hasChanges?"changes":void 0}},watch:{hasChanges:function(t,e){if(!1===e&&!0===t)return this.$store.dispatch("heartbeat/remove",this.getLock),void this.$store.dispatch("heartbeat/add",[this.setLock,30]);this.id&&!0===e&&!1===t&&this.removeLock()},id:function(){this.id&&!1===this.hasChanges&&this.$store.dispatch("heartbeat/add",[this.getLock,10])}},created:function(){this.$events.$on("keydown.cmd.s",this.onSave)},destroyed:function(){this.$events.$off("keydown.cmd.s",this.onSave)},methods:{getLock:function(){var t,e=this;return(t=this.$api).get.apply(t,Object(gi["a"])(this.api.lock)).then(function(t){if(!1===t.supported)return e.supportsLocking=!1,void e.$store.dispatch("heartbeat/remove",e.getLock);!1===t.locked?(e.isLocked&&e.form.lock.user!==e.$store.state.user.current.id&&e.$events.$emit("model.reload"),e.$store.dispatch("content/lock",null)):e.$store.dispatch("content/lock",t.locked)}).catch(function(){})},setLock:function(){var t,e=this;!0===this.supportsLocking&&(t=this.$api).patch.apply(t,Object(gi["a"])(this.api.lock)).catch(function(t){if("error.lock.notImplemented"===t.key)return e.supportsLocking=!1,e.$store.dispatch("heartbeat/remove",e.setLock),!1;e.$store.dispatch("content/revert",e.id),e.$store.dispatch("heartbeat/remove",e.setLock),e.$store.dispatch("heartbeat/add",[e.getLock,10])})},removeLock:function(){var t,e=this;!0===this.supportsLocking&&(this.$store.dispatch("heartbeat/remove",this.setLock),(t=this.$api).delete.apply(t,Object(gi["a"])(this.api.lock)).then(function(){e.$store.dispatch("content/lock",null),e.$store.dispatch("heartbeat/add",[e.getLock,10])}).catch(function(){}))},setUnlock:function(){var t,e=this;!0===this.supportsLocking&&(this.$store.dispatch("heartbeat/remove",this.setLock),(t=this.$api).patch.apply(t,Object(gi["a"])(this.api.unlock)).then(function(){e.$store.dispatch("content/lock",null),e.$store.dispatch("heartbeat/add",[e.getLock,10])}).catch(function(){}))},removeUnlock:function(){var t,e=this;!0===this.supportsLocking&&(this.$store.dispatch("heartbeat/remove",this.setLock),(t=this.$api).delete.apply(t,Object(gi["a"])(this.api.unlock)).then(function(){e.$store.dispatch("content/unlock",null),e.$store.dispatch("heartbeat/add",[e.getLock,10])}).catch(function(){}))},onDownload:function(){var t=this,e="";kt()(this.form.unlock).forEach(function(n){e+=n+": \n\n"+t.form.unlock[n],e+="\n\n----\n\n"});var n=document.createElement("a");n.setAttribute("href","data:text/plain;charset=utf-8,"+encodeURIComponent(e)),n.setAttribute("download",this.id+".txt"),n.style.display="none",document.body.appendChild(n),n.click(),document.body.removeChild(n)},onResolve:function(){this.$store.dispatch("content/revert"),this.removeUnlock()},onRevert:function(){this.$store.dispatch("content/revert")},onSave:function(t){var e=this;return!!t&&(t.preventDefault&&t.preventDefault(),!1===this.hasChanges||void this.$store.dispatch("content/save").then(function(){e.$events.$emit("model.update"),e.$store.dispatch("notification/success",":)")}).catch(function(t){403!==t.code&&(t.details&&kt()(t.details).length>0?e.$store.dispatch("notification/error",{message:e.$t("error.form.incomplete"),details:t.details}):e.$store.dispatch("notification/error",{message:e.$t("error.form.notSaved"),details:[{label:"Exception: "+t.exception,message:t.message}]}))}))}}},vi=bi,ki=(n("18dd"),Object(_["a"])(vi,hi,mi,!1,null,null,null)),$i=ki.exports,_i=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.hasChanges?n("k-dropdown",{staticClass:"k-form-indicator"},[n("k-button",{staticClass:"k-topbar-button",on:{click:t.toggle}},[n("k-icon",{staticClass:"k-form-indicator-icon",attrs:{type:"edit"}})],1),n("k-dropdown-content",{ref:"list",attrs:{align:"right"}},[n("p",{staticClass:"k-form-indicator-info"},[t._v("\n "+t._s(t.$t("lock.unsaved"))+":\n ")]),n("hr"),t._l(t.entries,function(e){return n("k-dropdown-item",{key:e.id,attrs:{icon:e.icon},nativeOn:{click:function(n){return n.stopPropagation(),t.go(e.target)}}},[t._v("\n "+t._s(e.label)+"\n ")])})],2)],1):t._e()},yi=[],xi=(n("28a5"),n("f559"),{data:function(){return{isOpen:!1,entries:[]}},computed:{store:function(){return this.$store.state.content.models},models:function(){var t=this,e=kt()(this.store).filter(function(e){return!!t.store[e]}),n=e.map(function(e){return Object(I["a"])({id:e},t.store[e])});return n.filter(function(t){return kt()(t.changes).length>0})},hasChanges:function(){return this.models.length>0}},methods:{go:function(t){if(t.language&&this.$store.state.languages.current.code!==t.language){var e=this.$store.state.languages.all.filter(function(e){return e.code===t.language})[0];this.$store.dispatch("languages/current",e)}this.$router.push(t.link)},load:function(){var t=this,e=this.models.map(function(e){return t.$api.get(e.api,{view:"compact"},null,!0).then(function(n){var i;if(i=!0===e.id.startsWith("pages/")?{icon:"page",label:n.title,target:{link:t.$api.pages.link(n.id)}}:!0===e.id.startsWith("files/")?{icon:"image",label:n.filename,target:{link:n.link}}:!0===e.id.startsWith("users/")?{icon:"user",label:n.email,target:{link:t.$api.users.link(n.id)}}:{icon:"home",label:n.title,target:{link:"/site"}},t.$store.state.languages.current){var s=e.id.split("/").pop();i.label=i.label+" ("+s+")",i.target.language=s}return i}).catch(function(){return t.$store.dispatch("content/remove",e.id),null})});return Je.a.all(e).then(function(e){t.entries=e.filter(function(t){return null!==t}),0===t.entries.length&&t.$store.dispatch("notification/success",t.$t("lock.unsaved.empty"))})},toggle:function(){var t=this;!1===this.$refs.list.isOpen?this.load().then(function(){t.$refs.list&&t.$refs.list.toggle()}):this.$refs.list.toggle()}}}),wi=xi,Oi=(n("9e26"),Object(_["a"])(wi,_i,yi,!1,null,null,null)),Ci=Oi.exports,Si=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:"k-field k-field-name-"+t.name,attrs:{"data-disabled":t.disabled,"data-translate":t.translate},on:{focusin:function(e){return t.$emit("focus",e)},focusout:function(e){return t.$emit("blur",e)}}},[t._t("header",[n("header",{staticClass:"k-field-header"},[t._t("label",[n("label",{staticClass:"k-field-label",attrs:{for:t.input}},[t._v(t._s(t.labelText)+" "),t.required?n("abbr",{attrs:{title:t.$t("field.required")}},[t._v("*")]):t._e()])]),t._t("options"),t._t("counter",[t.counter?n("k-counter",t._b({staticClass:"k-field-counter",attrs:{required:t.required}},"k-counter",t.counter,!1)):t._e()])],2)]),t._t("default"),t._t("footer",[t.help||t.$slots.help?n("footer",{staticClass:"k-field-footer"},[t._t("help",[t.help?n("k-text",{staticClass:"k-field-help",attrs:{theme:"help"},domProps:{innerHTML:t._s(t.help)}}):t._e()])],2):t._e()])],2)},Ei=[],ji={inheritAttrs:!1,props:{counter:[Boolean,Object],disabled:Boolean,endpoints:Object,help:String,input:[String,Number],label:String,name:[String,Number],required:Boolean,translate:Boolean,type:String},computed:{labelText:function(){return this.label||" "}}},Ti=ji,Ii=(n("a134"),Object(_["a"])(Ti,Si,Ei,!1,null,null,null)),Li=Ii.exports,qi=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("fieldset",{staticClass:"k-fieldset"},[n("k-grid",t._l(t.fields,function(e,i){return"hidden"!==e.type&&t.meetsCondition(e)?n("k-column",{key:e.signature,attrs:{width:e.width}},[n("k-error-boundary",[t.hasFieldType(e.type)?n("k-"+e.type+"-field",t._b({ref:i,refInFor:!0,tag:"component",attrs:{name:i,novalidate:t.novalidate,disabled:t.disabled||e.disabled},on:{input:function(n){return t.$emit("input",t.value,e,i)},focus:function(n){return t.$emit("focus",n,e,i)},invalid:function(n,s){return t.onInvalid(n,s,e,i)},submit:function(n){return t.$emit("submit",n,e,i)}},model:{value:t.value[i],callback:function(e){t.$set(t.value,i,e)},expression:"value[fieldName]"}},"component",e,!1)):n("k-box",{attrs:{theme:"negative"}},[n("k-text",{attrs:{size:"small"}},[t._v("\n The field type "),n("strong",[t._v('"'+t._s(i)+'"')]),t._v(" does not exist\n ")])],1)],1)],1):t._e()}),1)],1)},Ai=[],Ni={props:{config:Object,disabled:Boolean,fields:{type:[Array,Object],default:function(){return[]}},novalidate:{type:Boolean,default:!1},value:{type:Object,default:function(){return{}}}},data:function(){return{errors:{}}},methods:{focus:function(t){if(t)this.hasField(t)&&"function"===typeof this.$refs[t][0].focus&&this.$refs[t][0].focus();else{var e=kt()(this.$refs)[0];this.focus(e)}},hasFieldType:function(t){return z["a"].options.components["k-"+t+"-field"]},hasField:function(t){return this.$refs[t]&&this.$refs[t][0]},meetsCondition:function(t){var e=this;if(!t.when)return!0;var n=!0;return kt()(t.when).forEach(function(i){var s=e.value[i.toLowerCase()],a=t.when[i];s!==a&&(n=!1)}),n},onInvalid:function(t,e,n,i){this.errors[i]=e,this.$emit("invalid",this.errors)},hasErrors:function(){return kt()(this.errors).length}}},Bi=Ni,Pi=(n("862b"),Object(_["a"])(Bi,qi,Ai,!1,null,null,null)),Di=Pi.exports,Ri=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-input",attrs:{"data-disabled":t.disabled,"data-invalid":!t.novalidate&&t.isInvalid,"data-theme":t.theme,"data-type":t.type}},[t.$slots.before||t.before?n("span",{staticClass:"k-input-before",on:{click:t.focus}},[t._t("before",[t._v(t._s(t.before))])],2):t._e(),n("span",{staticClass:"k-input-element",on:{click:function(e){return e.stopPropagation(),t.focus(e)}}},[t._t("default",[n("k-"+t.type+"-input",t._g(t._b({ref:"input",tag:"component",attrs:{value:t.value}},"component",t.inputProps,!1),t.listeners))])],2),t.$slots.after||t.after?n("span",{staticClass:"k-input-after",on:{click:t.focus}},[t._t("after",[t._v(t._s(t.after))])],2):t._e(),t.$slots.icon||t.icon?n("span",{staticClass:"k-input-icon",on:{click:t.focus}},[t._t("icon",[n("k-icon",{attrs:{type:t.icon}})])],2):t._e()])},Mi=[],zi={inheritAttrs:!1,props:{after:String,before:String,disabled:Boolean,type:String,icon:[String,Boolean],invalid:Boolean,theme:String,novalidate:{type:Boolean,default:!1},value:{type:[String,Boolean,Number,Object,Array],default:null}},data:function(){var t=this;return{isInvalid:this.invalid,listeners:Object(I["a"])({},this.$listeners,{invalid:function(e,n){t.isInvalid=e,t.$emit("invalid",e,n)}})}},computed:{inputProps:function(){return Object(I["a"])({},this.$props,this.$attrs)}},methods:{blur:function(t){t.relatedTarget&&!1===this.$el.contains(t.relatedTarget)&&this.$refs.input.blur&&this.$refs.input.blur()},focus:function(t){if(t&&t.target&&"INPUT"===t.target.tagName)t.target.focus();else if(this.$refs.input&&this.$refs.input.focus)this.$refs.input.focus();else{var e=this.$el.querySelector("input, select, textarea");e&&e.focus()}}}},Ui=zi,Fi=(n("c7c8"),Object(_["a"])(Ui,Ri,Mi,!1,null,null,null)),Hi=Fi.exports,Ki=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-upload"},[n("input",{ref:"input",attrs:{accept:t.options.accept,multiple:t.options.multiple,"aria-hidden":"true",type:"file",tabindex:"-1"},on:{change:t.select,click:function(t){t.stopPropagation()}}}),n("k-dialog",{ref:"dialog",attrs:{size:"medium"}},[t.errors.length>0?[n("k-headline",[t._v(t._s(t.$t("upload.errors")))]),n("ul",{staticClass:"k-upload-error-list"},t._l(t.errors,function(e,i){return n("li",{key:"error-"+i},[n("p",{staticClass:"k-upload-error-filename"},[t._v(t._s(e.file.name))]),n("p",{staticClass:"k-upload-error-message"},[t._v(t._s(e.message))])])}),0)]:[n("k-headline",[t._v(t._s(t.$t("upload.progress")))]),n("ul",{staticClass:"k-upload-list"},t._l(t.files,function(e,i){return n("li",{key:"file-"+i},[n("k-progress",{ref:e.name,refInFor:!0}),n("p",{staticClass:"k-upload-list-filename"},[t._v(t._s(e.name))]),n("p",[t._v(t._s(t.errors[e.name]))])],1)}),0)],n("template",{slot:"footer"},[t.errors.length>0?[n("k-button-group",[n("k-button",{attrs:{icon:"check"},on:{click:function(e){return t.$refs.dialog.close()}}},[t._v("\n "+t._s(t.$t("confirm"))+"\n ")])],1)]:t._e()],2)],2)],1)},Vi=[],Yi=n("5176"),Wi=n.n(Yi),Gi={props:{url:{type:String},accept:{type:String,default:"*"},attributes:{type:Object},multiple:{type:Boolean,default:!0},max:{type:Number}},data:function(){return{options:this.$props,completed:{},errors:[],files:[],total:0}},methods:{open:function(t){var e=this;this.params(t),setTimeout(function(){e.$refs.input.click()},1)},params:function(t){this.options=Wi()({},this.$props,t)},select:function(t){this.upload(t.target.files)},drop:function(t,e){this.params(e),this.upload(t)},upload:function(t){var e=this;this.$refs.dialog.open(),this.files=Object(gi["a"])(t),this.completed={},this.errors=[],this.hasErrors=!1,this.options.max&&(this.files=this.files.slice(0,this.options.max)),this.total=this.files.length,this.files.forEach(function(t){e.$helper.upload(t,{url:e.options.url,attributes:e.options.attributes,headers:{"X-CSRF":window.panel.csrf},progress:function(t,n,i){e.$refs[n.name]&&e.$refs[n.name][0]&&e.$refs[n.name][0].set(i)},success:function(t,n,i){e.complete(n,i.data)},error:function(t,n,i){e.errors.push({file:n,message:i.message}),e.complete(n,i.data)}})})},complete:function(t,e){var n=this;if(this.completed[t.name]=e,kt()(this.completed).length==this.total){if(this.$refs.input.value="",this.errors.length>0)return this.$forceUpdate(),void this.$emit("error",this.files);setTimeout(function(){n.$refs.dialog.close(),n.$emit("success",n.files,_t()(n.completed))},250)}}}},Ji=Gi,Zi=(n("5aee"),Object(_["a"])(Ji,Ki,Vi,!1,null,null,null)),Xi=Zi.exports,Qi=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("label",{staticClass:"k-checkbox-input",on:{click:function(t){t.stopPropagation()}}},[n("input",{ref:"input",staticClass:"k-checkbox-input-native",attrs:{disabled:t.disabled,id:t.id,type:"checkbox"},domProps:{checked:t.value},on:{change:function(e){return t.onChange(e.target.checked)}}}),n("span",{staticClass:"k-checkbox-input-icon",attrs:{"aria-hidden":"true"}},[n("svg",{attrs:{width:"12",height:"10",viewBox:"0 0 12 10",xmlns:"http://www.w3.org/2000/svg"}},[n("path",{attrs:{d:"M1 5l3.3 3L11 1","stroke-width":"2",fill:"none","fill-rule":"evenodd"}})])]),n("span",{staticClass:"k-checkbox-input-label",domProps:{innerHTML:t._s(t.label)}})])},ts=[],es=n("b5ae"),ns={inheritAttrs:!1,props:{autofocus:Boolean,disabled:Boolean,id:[Number,String],label:String,required:Boolean,value:Boolean},watch:{value:function(){this.onInvalid()}},mounted:function(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{focus:function(){this.$refs.input.focus()},onChange:function(t){this.$emit("input",t)},onInvalid:function(){this.$emit("invalid",this.$v.$invalid,this.$v)},select:function(){this.focus()}},validations:function(){return{value:{required:!this.required||es["required"]}}}},is=ns,ss=(n("42e4"),Object(_["a"])(is,Qi,ts,!1,null,null,null)),as=ss.exports,os=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("ul",{staticClass:"k-checkboxes-input",style:"--columns:"+t.columns},t._l(t.options,function(e,i){return n("li",{key:i},[n("k-checkbox-input",{attrs:{id:t.id+"-"+i,label:e.text,value:-1!==t.selected.indexOf(e.value)},on:{input:function(n){return t.onInput(e.value,n)}}})],1)}),0)},rs=[],ls={inheritAttrs:!1,props:{autofocus:Boolean,columns:Number,disabled:Boolean,id:{type:[Number,String],default:function(){return this._uid}},max:Number,min:Number,options:Array,required:Boolean,value:{type:[Array,Object],default:function(){return[]}}},data:function(){return{selected:this.valueToArray(this.value)}},watch:{value:function(t){this.selected=this.valueToArray(t)},selected:function(){this.onInvalid()}},mounted:function(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{focus:function(){this.$el.querySelector("input").focus()},onInput:function(t,e){if(!0===e)this.selected.push(t);else{var n=this.selected.indexOf(t);-1!==n&&this.selected.splice(n,1)}this.$emit("input",this.selected)},onInvalid:function(){this.$emit("invalid",this.$v.$invalid,this.$v)},select:function(){this.focus()},valueToArray:function(t){return!0===xt()(t)?t:"string"===typeof t?String(t).split(","):"object"===Object(Ht["a"])(t)?_t()(t):void 0}},validations:function(){return{selected:{required:!this.required||es["required"],min:!this.min||Object(es["minLength"])(this.min),max:!this.max||Object(es["maxLength"])(this.max)}}}},us=ls,cs=Object(_["a"])(us,os,rs,!1,null,null,null),ds=cs.exports,ps=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-date-input"},[n("k-select-input",{ref:"years",attrs:{"aria-label":t.$t("year"),options:t.years,disabled:t.disabled,required:t.required,value:t.year,placeholder:"––––"},on:{input:t.setYear,invalid:t.onInvalid}}),n("span",{staticClass:"k-date-input-separator"},[t._v("-")]),n("k-select-input",{ref:"months",attrs:{"aria-label":t.$t("month"),options:t.months,disabled:t.disabled,required:t.required,value:t.month,placeholder:"––"},on:{input:t.setMonth,invalid:t.onInvalid}}),n("span",{staticClass:"k-date-input-separator"},[t._v("-")]),n("k-select-input",{ref:"days",attrs:{"aria-label":t.$t("day"),autofocus:t.autofocus,id:t.id,options:t.days,disabled:t.disabled,required:t.required,value:t.day,placeholder:"––"},on:{input:t.setDay,invalid:t.onInvalid}})],1)},fs=[],hs=n("e814"),ms=n.n(hs),gs={inheritAttrs:!1,props:{autofocus:Boolean,disabled:Boolean,id:[String,Number],max:String,min:String,required:Boolean,value:String},data:function(){return{date:this.$library.dayjs(this.value),minDate:this.calculate(this.min,"min"),maxDate:this.calculate(this.max,"max")}},computed:{day:function(){return isNaN(this.date.date())?"":this.date.date()},days:function(){return this.options(1,this.date.daysInMonth()||31,"days")},month:function(){return isNaN(this.date.date())?"":this.date.month()+1},months:function(){return this.options(1,12,"months")},year:function(){return isNaN(this.date.year())?"":this.date.year()},years:function(){var t=this.date.isBefore(this.minDate)?this.date.year():this.minDate.year(),e=this.date.isAfter(this.maxDate)?this.date.year():this.maxDate.year();return this.options(t,e)}},watch:{value:function(t){this.date=this.$library.dayjs(t)}},methods:{calculate:function(t,e){var n={min:{run:"subtract",take:"startOf"},max:{run:"add",take:"endOf"}}[e],i=t?this.$library.dayjs(t):null;return i&&!1!==i.isValid()||(i=this.$library.dayjs()[n.run](10,"year")[n.take]("year")),i},focus:function(){this.$refs.years.focus()},onInput:function(){!1!==this.date.isValid()?this.$emit("input",this.date.toISOString()):this.$emit("input","")},onInvalid:function(t,e){this.$emit("invalid",t,e)},options:function(t,e){for(var n=[],i=t;i<=e;i++)n.push({value:i,text:this.$helper.pad(i)});return n},set:function(t,e){if(""===e||null===e||!1===e||-1===e)return this.setInvalid(),void this.onInput();if(!1===this.date.isValid())return this.setInitialDate(t,e),void this.onInput();var n=this.date,i=this.date.date();this.date=this.date.set(t,ms()(e)),"month"===t&&this.date.date()!==i&&(this.date=n.set("date",1).set("month",e).endOf("month")),this.onInput()},setInvalid:function(){this.date=this.$library.dayjs("invalid")},setInitialDate:function(t,e){var n=this.$library.dayjs();return this.date=this.$library.dayjs().set(t,ms()(e)),"date"===t&&n.month()!==this.date.month()&&(this.date=n.endOf("month")),this.date},setDay:function(t){this.set("date",t)},setMonth:function(t){this.set("month",t-1)},setYear:function(t){this.set("year",t)}}},bs=gs,vs=(n("6ab3"),Object(_["a"])(bs,ps,fs,!1,null,null,null)),ks=vs.exports,$s=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-datetime-input"},[n("k-date-input",{ref:"dateInput",attrs:{autofocus:t.autofocus,required:t.required,id:t.id,min:t.min,max:t.max,disabled:t.disabled,value:t.dateValue},on:{input:t.setDate}}),n("k-time-input",t._b({ref:"timeInput",attrs:{required:t.required,disabled:t.disabled,value:t.timeValue},on:{input:t.setTime}},"k-time-input",t.timeOptions,!1))],1)},_s=[],ys={inheritAttrs:!1,props:Object(I["a"])({},ks.props,{time:{type:[Boolean,Object],default:function(){return{}}},value:String}),data:function(){return{dateValue:this.parseDate(this.value),timeValue:this.parseTime(this.value),timeOptions:this.setTimeOptions()}},watch:{value:function(t){this.dateValue=this.parseDate(t),this.timeValue=this.parseTime(t),this.onInvalid()}},mounted:function(){this.onInvalid()},methods:{focus:function(){this.$refs.dateInput.focus()},onInput:function(){if(this.timeValue&&this.dateValue){var t=this.dateValue+"T"+this.timeValue+":00";this.$emit("input",t)}else this.$emit("input","")},onInvalid:function(){this.$emit("invalid",this.$v.$invalid,this.$v)},parseDate:function(t){var e=this.$library.dayjs(t);return e.isValid()?e.format("YYYY-MM-DD"):null},parseTime:function(t){var e=this.$library.dayjs(t);return e.isValid()?e.format("HH:mm"):null},setDate:function(t){t&&!this.timeValue&&(this.timeValue=this.$library.dayjs().format("HH:mm")),t?this.dateValue=this.parseDate(t):(this.dateValue=null,this.timeValue=null),this.onInput()},setTime:function(t){t&&!this.dateValue&&(this.dateValue=this.$library.dayjs().format("YYYY-MM-DD")),t?this.timeValue=t:(this.dateValue=null,this.timeValue=null),this.onInput()},setTimeOptions:function(){return!0===this.time?{}:this.time}},validations:function(){return{value:{required:!this.required||es["required"]}}}},xs=ys,ws=(n("4433"),Object(_["a"])(xs,$s,_s,!1,null,null,null)),Os=ws.exports,Cs=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("input",t._g(t._b({ref:"input",staticClass:"k-text-input"},"input",{autocomplete:t.autocomplete,autofocus:t.autofocus,disabled:t.disabled,id:t.id,minlength:t.minlength,name:t.name,pattern:t.pattern,placeholder:t.placeholder,required:t.required,spellcheck:t.spellcheck,type:t.type,value:t.value},!1),t.listeners))},Ss=[],Es={inheritAttrs:!1,class:"k-text-input",props:{autocomplete:{type:[Boolean,String],default:"off"},autofocus:Boolean,disabled:Boolean,id:[Number,String],maxlength:Number,minlength:Number,name:[Number,String],pattern:String,placeholder:String,preselect:Boolean,required:Boolean,spellcheck:{type:[Boolean,String],default:"off"},type:{type:String,default:"text"},value:String},data:function(){var t=this;return{listeners:Object(I["a"])({},this.$listeners,{input:function(e){return t.onInput(e.target.value)}})}},watch:{value:function(){this.onInvalid()}},mounted:function(){this.onInvalid(),this.$props.autofocus&&this.focus(),this.$props.preselect&&this.select()},methods:{focus:function(){this.$refs.input.focus()},onInput:function(t){this.$emit("input",t)},onInvalid:function(){this.$emit("invalid",this.$v.$invalid,this.$v)},select:function(){this.$refs.input.select()}},validations:function(){var t=this,e=function(e){return!t.required&&!e||!t.$refs.input.validity.patternMismatch};return{value:{required:!this.required||es["required"],minLength:!this.minlength||Object(es["minLength"])(this.minlength),maxLength:!this.maxlength||Object(es["maxLength"])(this.maxlength),email:"email"!==this.type||es["email"],url:"url"!==this.type||es["url"],pattern:!this.pattern||e}}}},js=Es,Ts=(n("cb8f"),Object(_["a"])(js,Cs,Ss,!1,null,null,null)),Is=Ts.exports,Ls={extends:Is,props:Object(I["a"])({},Is.props,{autocomplete:{type:String,default:"email"},placeholder:{type:String,default:function(){return this.$t("email.placeholder")}},type:{type:String,default:"email"}})},qs=Ls,As=Object(_["a"])(qs,r,l,!1,null,null,null),Ns=As.exports,Bs=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-draggable",{staticClass:"k-multiselect-input",attrs:{list:t.state,options:t.dragOptions,"data-layout":t.layout,element:"k-dropdown"},on:{end:t.onInput},nativeOn:{click:function(e){return t.$refs.dropdown.toggle(e)}}},[t._l(t.sorted,function(e){return n("k-tag",{key:e.value,ref:e.value,refInFor:!0,attrs:{removable:!0},on:{remove:function(n){return t.remove(e)}},nativeOn:{click:function(t){t.stopPropagation()},keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"left",37,e.key,["Left","ArrowLeft"])?null:"button"in e&&0!==e.button?null:t.navigate("prev")},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"right",39,e.key,["Right","ArrowRight"])?null:"button"in e&&2!==e.button?null:t.navigate("next")},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"down",40,e.key,["Down","ArrowDown"])?null:t.$refs.dropdown.open(e)}]}},[t._v("\n "+t._s(e.text)+"\n ")])}),n("k-dropdown-content",{ref:"dropdown",attrs:{slot:"footer"},on:{open:t.onOpen,close:t.onClose},nativeOn:{keydown:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"esc",27,e.key,["Esc","Escape"])?null:(e.stopPropagation(),t.close(e))}},slot:"footer"},[t.search?n("k-dropdown-item",{staticClass:"k-multiselect-search",attrs:{icon:"search"}},[n("input",{directives:[{name:"model",rawName:"v-model",value:t.q,expression:"q"}],ref:"search",domProps:{value:t.q},on:{keydown:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"esc",27,e.key,["Esc","Escape"])?null:(e.stopPropagation(),t.escape(e))},input:function(e){e.target.composing||(t.q=e.target.value)}}})]):t._e(),n("div",{staticClass:"k-multiselect-options"},t._l(t.filtered,function(e){return n("k-dropdown-item",{key:e.value,class:{"k-multiselect-option":!0,selected:t.isSelected(e),disabled:!t.addable},attrs:{icon:t.isSelected(e)?"check":"circle-outline"},on:{click:function(n){return n.preventDefault(),t.select(e)}},nativeOn:{keydown:[function(n){return!n.type.indexOf("key")&&t._k(n.keyCode,"enter",13,n.key,"Enter")?null:(n.preventDefault(),n.stopPropagation(),t.select(e))},function(n){return!n.type.indexOf("key")&&t._k(n.keyCode,"space",32,n.key,[" ","Spacebar"])?null:(n.preventDefault(),n.stopPropagation(),t.select(e))}]}},[n("span",{domProps:{innerHTML:t._s(e.display)}}),n("span",{staticClass:"k-multiselect-value",domProps:{innerHTML:t._s(e.info)}})])}),1)],1)],2)},Ps=[],Ds=(n("20d6"),n("55dd"),{inheritAttrs:!1,props:{disabled:Boolean,id:[Number,String],max:Number,min:Number,layout:String,options:{type:Array,default:function(){return[]}},required:Boolean,search:Boolean,separator:{type:String,default:","},sort:Boolean,value:{type:Array,required:!0,default:function(){return[]}}},data:function(){return{state:this.value,q:null,scrollTop:0}},computed:{addable:function(){return!this.max||this.state.length1&&!this.sort},dragOptions:function(){return{disabled:!this.draggable,draggable:".k-tag",delay:1}},filtered:function(){if(null===this.q)return this.options.map(function(t){return Object(I["a"])({},t,{display:t.text,info:t.value})});var t=new RegExp("(".concat(RegExp.escape(this.q),")"),"ig");return this.options.filter(function(e){return String(e.text).match(t)||String(e.value).match(t)}).map(function(e){return Object(I["a"])({},e,{display:String(e.text).replace(t,"$1"),info:String(e.value).replace(t,"$1")})})},sorted:function(){var t=this;if(!1===this.sort)return this.state;var e=this.state,n=function(e){return t.options.findIndex(function(t){return t.value===e.value})};return e.sort(function(t,e){return n(t)-n(e)})}},watch:{value:function(t){this.state=t,this.onInvalid()}},mounted:function(){this.onInvalid(),this.$events.$on("click",this.close),this.$events.$on("keydown.cmd.s",this.close)},destroyed:function(){this.$events.$off("click",this.close),this.$events.$off("keydown.cmd.s",this.close)},methods:{add:function(t){!0===this.addable&&(this.state.push(t),this.onInput())},blur:function(){this.close()},close:function(){!0===this.$refs.dropdown.isOpen&&this.$refs.dropdown.close()},escape:function(){this.q?this.q=null:this.close()},focus:function(){this.$refs.dropdown.open()},index:function(t){return this.state.findIndex(function(e){return e.value===t.value})},isSelected:function(t){return-1!==this.index(t)},navigate:function(t){var e=document.activeElement;switch(t){case"prev":e&&e.previousSibling&&e.previousSibling.focus&&e.previousSibling.focus();break;case"next":e&&e.nextSibling&&e.nextSibling.focus&&e.nextSibling.focus();break}},onClose:function(){!1===this.$refs.dropdown.isOpen&&(document.activeElement===this.$parent.$el&&(this.q=null),this.$parent.$el.focus())},onInput:function(){this.$emit("input",this.sorted)},onInvalid:function(){this.$emit("invalid",this.$v.$invalid,this.$v)},onOpen:function(){var t=this;this.$nextTick(function(){t.$refs.search&&t.$refs.search.focus&&t.$refs.search.focus(),t.$refs.dropdown.$el.querySelector(".k-multiselect-options").scrollTop=t.scrollTop})},remove:function(t){this.state.splice(this.index(t),1),this.onInput()},select:function(t){this.scrollTop=this.$refs.dropdown.$el.querySelector(".k-multiselect-options").scrollTop,t={text:t.text,value:t.value},this.isSelected(t)?this.remove(t):this.add(t)}},validations:function(){return{state:{required:!this.required||es["required"],minLength:!this.min||Object(es["minLength"])(this.min),maxLength:!this.max||Object(es["maxLength"])(this.max)}}}}),Rs=Ds,Ms=(n("11ae"),Object(_["a"])(Rs,Bs,Ps,!1,null,null,null)),zs=Ms.exports,Us=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("input",t._g(t._b({ref:"input",staticClass:"k-number-input",attrs:{step:t.stepNumber,type:"number"},domProps:{value:t.number},on:{keydown:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"cmd",void 0,e.key,void 0)&&t._k(e.keyCode,"s",void 0,e.key,void 0)?null:t.clean(e)}}},"input",{autofocus:t.autofocus,disabled:t.disabled,id:t.id,max:t.max,min:t.min,name:t.name,placeholder:t.placeholder,required:t.required},!1),t.listeners))},Fs=[],Hs=n("3be2"),Ks=n.n(Hs),Vs=n("59ad"),Ys=n.n(Vs),Ws=(n("6b54"),{inheritAttrs:!1,props:{autofocus:Boolean,disabled:Boolean,id:[Number,String],max:Number,min:Number,name:[Number,String],placeholder:String,preselect:Boolean,required:Boolean,step:Number,value:{type:[Number,String],default:null}},data:function(){var t=this;return{number:this.format(this.value),stepNumber:this.format(this.step),timeout:null,listeners:Object(I["a"])({},this.$listeners,{input:function(e){return t.onInput(e.target.value)},blur:this.onBlur})}},watch:{value:function(t){this.number=t},number:{immediate:!0,handler:function(){this.onInvalid()}}},mounted:function(){this.$props.autofocus&&this.focus(),this.$props.preselect&&this.select()},methods:{decimals:function(){var t=Number(this.step||0);return Math.floor(t)===t?0:-1!==t.toString().indexOf("e")?ms()(t.toFixed(16).split(".")[1].split("").reverse().join("")).toString().length:t.toString().split(".")[1].length||0},format:function(t){if(isNaN(t)||""===t)return"";var e=this.decimals();return t=e?Ys()(t).toFixed(e):Ks()(this.step)?ms()(t):Ys()(t),t},clean:function(){this.number=this.format(this.number)},emit:function(t){t=Ys()(t),isNaN(t)&&(t=""),t!==this.value&&this.$emit("input",t)},focus:function(){this.$refs.input.focus()},onInvalid:function(){this.$emit("invalid",this.$v.$invalid,this.$v)},onInput:function(t){this.number=t,this.emit(t)},onBlur:function(){this.clean(),this.emit(this.number)},select:function(){this.$refs.input.select()}},validations:function(){return{value:{required:!this.required||es["required"],min:!this.min||Object(es["minValue"])(this.min),max:!this.max||Object(es["maxValue"])(this.max)}}}}),Gs=Ws,Js=(n("6018"),Object(_["a"])(Gs,Us,Fs,!1,null,null,null)),Zs=Js.exports,Xs={extends:Is,props:Object(I["a"])({},Is.props,{autocomplete:{type:String,default:"new-password"},type:{type:String,default:"password"}})},Qs=Xs,ta=Object(_["a"])(Qs,u,c,!1,null,null,null),ea=ta.exports,na=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("ul",{staticClass:"k-radio-input",style:"--columns:"+t.columns},t._l(t.options,function(e,i){return n("li",{key:i},[n("input",{staticClass:"k-radio-input-native",attrs:{id:t.id+"-"+i,name:t.id,type:"radio"},domProps:{value:e.value,checked:t.value===e.value},on:{change:function(n){return t.onInput(e.value)}}}),n("label",{attrs:{for:t.id+"-"+i}},[e.info?[n("span",{staticClass:"k-radio-input-text"},[t._v(t._s(e.text))]),n("span",{staticClass:"k-radio-input-info"},[t._v(t._s(e.info))])]:[t._v("\n "+t._s(e.text)+"\n ")]],2),e.icon?n("k-icon",{attrs:{type:e.icon}}):t._e()],1)}),0)},ia=[],sa={inheritAttrs:!1,props:{autofocus:Boolean,columns:Number,disabled:Boolean,id:{type:[Number,String],default:function(){return this._uid}},options:Array,required:Boolean,value:[String,Number,Boolean]},watch:{value:function(){this.onInvalid()}},mounted:function(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{focus:function(){this.$el.querySelector("input").focus()},onInput:function(t){this.$emit("input",t)},onInvalid:function(){this.$emit("invalid",this.$v.$invalid,this.$v)},select:function(){this.focus()}},validations:function(){return{value:{required:!this.required||es["required"]}}}},aa=sa,oa=(n("893d"),Object(_["a"])(aa,na,ia,!1,null,null,null)),ra=oa.exports,la=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("label",{staticClass:"k-range-input"},[n("input",t._g(t._b({ref:"input",staticClass:"k-range-input-native",style:"--min: "+t.min+"; --max: "+t.max+"; --value: "+t.position,attrs:{type:"range"},domProps:{value:t.position}},"input",{autofocus:t.autofocus,disabled:t.disabled,id:t.id,max:t.max,min:t.min,name:t.name,required:t.required,step:t.step},!1),t.listeners)),t.tooltip?n("span",{staticClass:"k-range-input-tooltip"},[t.tooltip.before?n("span",{staticClass:"k-range-input-tooltip-before"},[t._v(t._s(t.tooltip.before))]):t._e(),n("span",{staticClass:"k-range-input-tooltip-text"},[t._v(t._s(t.label))]),t.tooltip.after?n("span",{staticClass:"k-range-input-tooltip-after"},[t._v(t._s(t.tooltip.after))]):t._e()]):t._e()])},ua=[],ca={inheritAttrs:!1,props:{autofocus:Boolean,disabled:Boolean,id:[String,Number],default:[Number,String],max:{type:Number,default:100},min:{type:Number,default:0},name:[String,Number],required:Boolean,step:{type:Number,default:1},tooltip:{type:[Boolean,Object],default:function(){return{before:null,after:null}}},value:[Number,String]},data:function(){var t=this;return{listeners:Object(I["a"])({},this.$listeners,{input:function(e){return t.onInput(e.target.value)}})}},computed:{baseline:function(){return this.min<0?0:this.min},label:function(){return this.required||this.value?this.format(this.position):"–"},position:function(){return this.value||this.default||this.baseline}},watch:{position:function(){this.onInvalid()}},mounted:function(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{focus:function(){this.$refs.input.focus()},format:function(t){var e=document.lang?document.lang.replace("_","-"):"en",n=this.step.toString().split("."),i=n.length>1?n[1].length:0;return new Intl.NumberFormat(e,{minimumFractionDigits:i}).format(t)},onInvalid:function(){this.$emit("invalid",this.$v.$invalid,this.$v)},onInput:function(t){this.$emit("input",t)}},validations:function(){return{position:{required:!this.required||es["required"],min:!this.min||Object(es["minValue"])(this.min),max:!this.max||Object(es["maxValue"])(this.max)}}}},da=ca,pa=(n("b5d2"),Object(_["a"])(da,la,ua,!1,null,null,null)),fa=pa.exports,ha=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",{staticClass:"k-select-input",attrs:{"data-disabled":t.disabled,"data-empty":""===t.selected}},[n("select",t._g({ref:"input",staticClass:"k-select-input-native",attrs:{autofocus:t.autofocus,"aria-label":t.ariaLabel,disabled:t.disabled,id:t.id,name:t.name,required:t.required},domProps:{value:t.selected}},t.listeners),[t.hasEmptyOption?n("option",{attrs:{disabled:t.required,value:""}},[t._v("\n "+t._s(t.emptyOption)+"\n ")]):t._e(),t._l(t.options,function(e){return n("option",{key:e.value,attrs:{disabled:e.disabled},domProps:{value:e.value}},[t._v("\n "+t._s(e.text)+"\n ")])})],2),t._v("\n "+t._s(t.label)+"\n")])},ma=[],ga={inheritAttrs:!1,props:{autofocus:Boolean,ariaLabel:String,default:String,disabled:Boolean,empty:{type:[Boolean,String],default:!0},id:[Number,String],name:[Number,String],placeholder:String,options:{type:Array,default:function(){return[]}},required:Boolean,value:{type:[String,Number,Boolean],default:""}},data:function(){var t=this;return{selected:this.value,listeners:Object(I["a"])({},this.$listeners,{click:function(e){return t.onClick(e)},change:function(e){return t.onInput(e.target.value)},input:function(t){}})}},computed:{emptyOption:function(){return this.placeholder||"—"},hasEmptyOption:function(){return!1!==this.empty&&!(this.required&&this.default)},label:function(){var t=this.text(this.selected);return""===this.selected||null===this.selected||null===t?this.emptyOption:t}},watch:{value:function(t){this.selected=t,this.onInvalid()}},mounted:function(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{focus:function(){this.$refs.input.focus()},onClick:function(t){t.stopPropagation(),this.$emit("click",t)},onInvalid:function(){this.$emit("invalid",this.$v.$invalid,this.$v)},onInput:function(t){this.selected=t,this.$emit("input",this.selected)},select:function(){this.focus()},text:function(t){var e=null;return this.options.forEach(function(n){n.value==t&&(e=n.text)}),e}},validations:function(){return{selected:{required:!this.required||es["required"]}}}},ba=ga,va=(n("6a18"),Object(_["a"])(ba,ha,ma,!1,null,null,null)),ka=va.exports,$a=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-draggable",{ref:"box",staticClass:"k-tags-input",attrs:{list:t.tags,"data-layout":t.layout,options:t.dragOptions},on:{end:t.onInput}},[t._l(t.tags,function(e,i){return n("k-tag",{key:i,ref:e.value,refInFor:!0,attrs:{removable:!t.disabled,name:"tag"},on:{remove:function(n){return t.remove(e)}},nativeOn:{click:function(t){t.stopPropagation()},blur:function(e){return t.selectTag(null)},focus:function(n){return t.selectTag(e)},keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"left",37,e.key,["Left","ArrowLeft"])?null:"button"in e&&0!==e.button?null:t.navigate("prev")},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"right",39,e.key,["Right","ArrowRight"])?null:"button"in e&&2!==e.button?null:t.navigate("next")}],dblclick:function(n){return t.edit(e)}}},[t._v("\n "+t._s(e.text)+"\n ")])}),n("span",{staticClass:"k-tags-input-element",attrs:{slot:"footer"},slot:"footer"},[n("k-autocomplete",{ref:"autocomplete",attrs:{options:t.options,skip:t.skip},on:{select:t.addTag,leave:function(e){return t.$refs.input.focus()}}},[n("input",{directives:[{name:"model",rawName:"v-model.trim",value:t.newTag,expression:"newTag",modifiers:{trim:!0}}],ref:"input",attrs:{autofocus:t.autofocus,disabled:t.disabled||t.max&&t.tags.length>=t.max,id:t.id,name:t.name,autocomplete:"off",type:"text"},domProps:{value:t.newTag},on:{input:[function(e){e.target.composing||(t.newTag=e.target.value.trim())},function(e){return t.type(e.target.value)}],blur:[t.blurInput,function(e){return t.$forceUpdate()}],keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"s",void 0,e.key,void 0)?null:e.metaKey?t.blurInput(e):null},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"left",37,e.key,["Left","ArrowLeft"])?null:"button"in e&&0!==e.button?null:e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:t.leaveInput(e)},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:t.enter(e)},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"tab",9,e.key,"Tab")?null:e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:t.tab(e)},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"backspace",void 0,e.key,void 0)?null:e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:t.leaveInput(e)}]}})])],1)],2)},_a=[],ya={inheritAttrs:!1,props:{autofocus:Boolean,accept:{type:String,default:"all"},disabled:Boolean,icon:{type:[String,Boolean],default:"tag"},id:[Number,String],layout:String,max:Number,min:Number,name:[Number,String],options:{type:Array,default:function(){return[]}},required:Boolean,separator:{type:String,default:","},value:{type:Array,default:function(){return[]}}},data:function(){var t=this;return{tags:this.prepareTags(this.value),selected:null,newTag:null,tagOptions:this.options.map(function(e){return t.icon&&t.icon.length>0&&(e.icon=t.icon),e},this)}},computed:{dragOptions:function(){return{delay:1,disabled:!this.draggable,draggable:".k-tag"}},draggable:function(){return this.tags.length>1},skip:function(){return this.tags.map(function(t){return t.value})}},watch:{value:function(t){this.tags=this.prepareTags(t),this.onInvalid()}},mounted:function(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{addString:function(t){var e=this;if(t)if(t=t.trim(),t.includes(this.separator))t.split(this.separator).forEach(function(t){e.addString(t)});else if(0!==t.length)if("options"===this.accept){var n=this.options.filter(function(e){return e.text===t})[0];if(!n)return;this.addTag(n)}else this.addTag({text:t,value:t})},addTag:function(t){this.addTagToIndex(t),this.$refs.autocomplete.close(),this.$refs.input.focus()},addTagToIndex:function(t){if("options"===this.accept){var e=this.options.filter(function(e){return e.value===t.value})[0];if(!e)return}-1===this.index(t)&&(!this.max||this.tags.length=this.tags.length)return;break;case"first":e=0;break;case"last":e=this.tags.length-1;break;default:e=t;break}var i=this.tags[e];if(i){var s=this.$refs[i.value];if(s&&s[0])return{ref:s[0],tag:i,index:e}}return!1},index:function(t){return this.tags.findIndex(function(e){return e.value===t.value})},onInput:function(){this.$emit("input",this.tags)},onInvalid:function(){this.$emit("invalid",this.$v.$invalid,this.$v)},leaveInput:function(t){0===t.target.selectionStart&&t.target.selectionStart===t.target.selectionEnd&&0!==this.tags.length&&(this.$refs.autocomplete.close(),this.navigate("last"),t.preventDefault())},navigate:function(t){var e=this.get(t);e?(e.ref.focus(),this.selectTag(e.tag)):"next"===t&&(this.$refs.input.focus(),this.selectTag(null))},prepareTags:function(t){return!1===xt()(t)?[]:t.map(function(t){return"string"===typeof t?{text:t,value:t}:t})},remove:function(t){var e=this.get("prev"),n=this.get("next");this.tags.splice(this.index(t),1),this.onInput(),e?(this.selectTag(e.tag),e.ref.focus()):n?this.selectTag(n.tag):(this.selectTag(null),this.$refs.input.focus())},select:function(){this.focus()},selectTag:function(t){this.selected=t},tab:function(t){this.newTag&&this.newTag.length>0&&(t.preventDefault(),this.addString(this.newTag))},type:function(t){this.newTag=t,this.$refs.autocomplete.search(t)}},validations:function(){return{tags:{required:!this.required||es["required"],minLength:!this.min||Object(es["minLength"])(this.min),maxLength:!this.max||Object(es["maxLength"])(this.max)}}}},xa=ya,wa=(n("27c1"),Object(_["a"])(xa,$a,_a,!1,null,null,null)),Oa=wa.exports,Ca={extends:Is,props:Object(I["a"])({},Is.props,{autocomplete:{type:String,default:"tel"},type:{type:String,default:"tel"}})},Sa=Ca,Ea=Object(_["a"])(Sa,d,p,!1,null,null,null),ja=Ea.exports,Ta=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-textarea-input",attrs:{"data-theme":t.theme,"data-over":t.over}},[n("div",{staticClass:"k-textarea-input-wrapper"},[t.buttons&&!t.disabled?n("k-toolbar",{ref:"toolbar",attrs:{buttons:t.buttons,disabled:t.disabled,uploads:t.uploads},on:{command:t.onCommand},nativeOn:{mousedown:function(t){t.preventDefault()}}}):t._e(),n("textarea",t._b({ref:"input",staticClass:"k-textarea-input-native",attrs:{"data-font":t.font,"data-size":t.size},on:{click:t.onClick,focus:t.onFocus,input:t.onInput,keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:e.metaKey?t.onSubmit(e):null},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:e.ctrlKey?t.onSubmit(e):null},function(e){return e.metaKey?t.onShortcut(e):null},function(e){return e.ctrlKey?t.onShortcut(e):null}],dragover:t.onOver,dragleave:t.onOut,drop:t.onDrop}},"textarea",{autofocus:t.autofocus,disabled:t.disabled,id:t.id,minlength:t.minlength,name:t.name,placeholder:t.placeholder,required:t.required,spellcheck:t.spellcheck,value:t.value},!1))],1),n("k-toolbar-email-dialog",{ref:"emailDialog",on:{cancel:t.cancel,submit:function(e){return t.insert(e)}}}),n("k-toolbar-link-dialog",{ref:"linkDialog",on:{cancel:t.cancel,submit:function(e){return t.insert(e)}}}),n("k-files-dialog",{ref:"fileDialog",on:{cancel:t.cancel,submit:function(e){return t.insertFile(e)}}}),t.uploads?n("k-upload",{ref:"fileUpload",on:{success:t.insertUpload}}):t._e()],1)},Ia=[],La={inheritAttrs:!1,props:{autofocus:Boolean,buttons:{type:[Boolean,Array],default:!0},disabled:Boolean,endpoints:Object,font:String,id:[Number,String],name:[Number,String],maxlength:Number,minlength:Number,placeholder:String,preselect:Boolean,required:Boolean,size:String,spellcheck:{type:[Boolean,String],default:"off"},theme:String,uploads:[Boolean,Object,Array],value:String},data:function(){return{over:!1}},watch:{value:function(){var t=this;this.onInvalid(),this.$nextTick(function(){t.resize()})}},mounted:function(){var t=this;this.$nextTick(function(){t.$library.autosize(t.$refs.input)}),this.onInvalid(),this.$props.autofocus&&this.focus(),this.$props.preselect&&this.select()},methods:{cancel:function(){this.$refs.input.focus()},dialog:function(t){if(!this.$refs[t+"Dialog"])throw"Invalid toolbar dialog";this.$refs[t+"Dialog"].open(this.$refs.input,this.selection())},focus:function(){this.$refs.input.focus()},insert:function(t){var e=this,n=this.$refs.input,i=n.value;setTimeout(function(){if(n.focus(),document.execCommand("insertText",!1,t),n.value===i){var s=n.value.slice(0,n.selectionStart)+t+n.value.slice(n.selectionEnd);n.value=s,e.$emit("input",s)}}),this.resize()},insertFile:function(t){t&&t.length>0&&this.insert(t.map(function(t){return t.dragText}).join("\n\n"))},insertUpload:function(t,e){this.insert(e.map(function(t){return t.dragText}).join("\n\n")),this.$events.$emit("model.update")},onClick:function(){this.$refs.toolbar&&this.$refs.toolbar.close()},onCommand:function(t,e){"function"===typeof this[t]?"function"===typeof e?this[t](e(this.$refs.input,this.selection())):this[t](e):window.console.warn(t+" is not a valid command")},onDrop:function(t){if(this.uploads&&this.$helper.isUploadEvent(t))return this.$refs.fileUpload.drop(t.dataTransfer.files,{url:A.api+"/"+this.endpoints.field+"/upload",multiple:!1});var e=this.$store.state.drag;e&&"text"===e.type&&(this.focus(),this.insert(e.data))},onFocus:function(t){this.$emit("focus",t)},onInput:function(t){this.$emit("input",t.target.value)},onInvalid:function(){this.$emit("invalid",this.$v.$invalid,this.$v)},onOut:function(){this.$refs.input.blur(),this.over=!1},onOver:function(t){if(this.uploads&&this.$helper.isUploadEvent(t))return t.dataTransfer.dropEffect="copy",this.focus(),void(this.over=!0);var e=this.$store.state.drag;e&&"text"===e.type&&(t.dataTransfer.dropEffect="copy",this.focus(),this.over=!0)},onShortcut:function(t){!1!==this.buttons&&"Meta"!==t.key&&"Control"!==t.key&&this.$refs.toolbar&&this.$refs.toolbar.shortcut(t.key,t)},onSubmit:function(t){return this.$emit("submit",t)},prepend:function(t){this.insert(t+" "+this.selection())},resize:function(){this.$library.autosize.update(this.$refs.input)},select:function(){this.$refs.select()},selectFile:function(){this.$refs.fileDialog.open({endpoint:this.endpoints.field+"/files",multiple:!1})},selection:function(){var t=this.$refs.input,e=t.selectionStart,n=t.selectionEnd;return t.value.substring(e,n)},uploadFile:function(){this.$refs.fileUpload.open({url:A.api+"/"+this.endpoints.field+"/upload",multiple:!1})},wrap:function(t){this.insert(t+this.selection()+t)}},validations:function(){return{value:{required:!this.required||es["required"],minLength:!this.minlength||Object(es["minLength"])(this.minlength),maxLength:!this.maxlength||Object(es["maxLength"])(this.maxlength)}}}},qa=La,Aa=(n("cca8"),Object(_["a"])(qa,Ta,Ia,!1,null,null,null)),Na=Aa.exports,Ba=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-time-input"},[n("k-select-input",{ref:"hour",attrs:{id:t.id,"aria-label":t.$t("hour"),autofocus:t.autofocus,options:t.hours,required:t.required,disabled:t.disabled,placeholder:"––"},on:{input:t.setHour,invalid:t.onInvalid},model:{value:t.hour,callback:function(e){t.hour=e},expression:"hour"}}),n("span",{staticClass:"k-time-input-separator"},[t._v(":")]),n("k-select-input",{ref:"minute",attrs:{"aria-label":t.$t("minutes"),options:t.minutes,required:t.required,disabled:t.disabled,placeholder:"––"},on:{input:t.setMinute,invalid:t.onInvalid},model:{value:t.minute,callback:function(e){t.minute=e},expression:"minute"}}),12===t.notation?n("k-select-input",{ref:"meridiem",staticClass:"k-time-input-meridiem",attrs:{"aria-label":t.$t("meridiem"),empty:!1,options:[{value:"AM",text:"AM"},{value:"PM",text:"PM"}],required:t.required,disabled:t.disabled},on:{input:t.onInput},model:{value:t.meridiem,callback:function(e){t.meridiem=e},expression:"meridiem"}}):t._e()],1)},Pa=[],Da={inheritAttrs:!1,props:{autofocus:Boolean,disabled:Boolean,id:[String,Number],notation:{type:Number,default:24},required:Boolean,step:{type:Number,default:5},value:{type:String}},data:function(){var t=this.toObject(this.value);return{time:this.value,hour:t.hour,minute:t.minute,meridiem:t.meridiem}},computed:{hours:function(){return this.options(24===this.notation?0:1,24===this.notation?23:12)},minutes:function(){return this.options(0,59,this.step)}},watch:{value:function(t){this.time=t},time:function(t){var e=this.toObject(t);this.hour=e.hour,this.minute=e.minute,this.meridiem=e.meridiem}},methods:{focus:function(){this.$refs.hour.focus()},setHour:function(t){t&&!this.minute&&(this.minute=0),t||(this.minute=null),this.onInput()},setMinute:function(t){t&&!this.hour&&(this.hour=0),t||(this.hour=null),this.onInput()},onInput:function(){if(null!==this.hour&&null!==this.minute){var t=this.$helper.pad(this.hour||0),e=this.$helper.pad(this.minute||0),n=String(this.meridiem||"AM").toUpperCase(),i=24===this.notation?"".concat(t,":").concat(e,":00"):"".concat(t,":").concat(e,":00 ").concat(n),s=24===this.notation?"HH:mm:ss":"hh:mm:ss A",a=this.$library.dayjs("2000-01-01 "+i,"YYYY-MM-DD "+s);this.$emit("input",a.format("HH:mm"))}else this.$emit("input","")},onInvalid:function(t,e){this.$emit("invalid",t,e)},options:function(t,e){for(var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,i=[],s=t;s<=e;s+=n)i.push({value:s,text:this.$helper.pad(s)});return i},reset:function(){this.hour=null,this.minute=null,this.meridiem=null},round:function(t){return Math.floor(t/this.step)*this.step},toObject:function(t){var e=this.$library.dayjs("2001-01-01 "+t+":00","YYYY-MM-DD HH:mm:ss");return t&&!1!==e.isValid()?{hour:e.format(24===this.notation?"H":"h"),minute:this.round(e.format("m")),meridiem:e.format("A")}:{hour:null,minute:null,meridiem:null}}}},Ra=Da,Ma=(n("50da"),Object(_["a"])(Ra,Ba,Pa,!1,null,null,null)),za=Ma.exports,Ua=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("label",{staticClass:"k-toggle-input",attrs:{"data-disabled":t.disabled}},[n("input",{ref:"input",staticClass:"k-toggle-input-native",attrs:{disabled:t.disabled,id:t.id,type:"checkbox"},domProps:{checked:t.value},on:{change:function(e){return t.onInput(e.target.checked)}}}),n("span",{staticClass:"k-toggle-input-label",domProps:{innerHTML:t._s(t.label)}})])},Fa=[],Ha={inheritAttrs:!1,props:{autofocus:Boolean,disabled:Boolean,id:[Number,String],text:{type:[Array,String],default:function(){return[this.$t("off"),this.$t("on")]}},required:Boolean,value:Boolean},computed:{label:function(){return xt()(this.text)?this.value?this.text[1]:this.text[0]:this.text}},watch:{value:function(){this.onInvalid()}},mounted:function(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{focus:function(){this.$refs.input.focus()},onEnter:function(t){"Enter"===t.key&&this.$refs.input.click()},onInput:function(t){this.$emit("input",t)},onInvalid:function(){this.$emit("invalid",this.$v.$invalid,this.$v)},select:function(){this.$refs.input.focus()}},validations:function(){return{value:{required:!this.required||es["required"]}}}},Ka=Ha,Va=(n("bb41"),Object(_["a"])(Ka,Ua,Fa,!1,null,null,null)),Ya=Va.exports,Wa={extends:Is,props:Object(I["a"])({},Is.props,{autocomplete:{type:String,default:"url"},type:{type:String,default:"url"}})},Ga=Wa,Ja=Object(_["a"])(Ga,f,h,!1,null,null,null),Za=Ja.exports,Xa=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-checkboxes-field",attrs:{counter:t.counterOptions}},"k-field",t.$props,!1),[n("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field"}},"k-input",t.$props,!1),t.$listeners))],1)},Qa=[],to={inheritAttrs:!1,props:Object(I["a"])({},Li.props,Hi.props,ds.props,{counter:{type:Boolean,default:!0}}),computed:{counterOptions:function(){return null!==this.value&&!this.disabled&&!1!==this.counter&&{count:this.value&&xt()(this.value)?this.value.length:0,min:this.min,max:this.max}}},methods:{focus:function(){this.$refs.input.focus()}}},eo=to,no=Object(_["a"])(eo,Xa,Qa,!1,null,null,null),io=no.exports,so=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-date-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[n("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,type:t.inputType,value:t.date,theme:"field"}},"k-input",t.$props,!1),t.listeners),[n("template",{slot:"icon"},[n("k-dropdown",[n("k-button",{staticClass:"k-input-icon-button",attrs:{icon:t.icon,tooltip:t.$t("date.select"),tabindex:"-1"},on:{click:function(e){return t.$refs.dropdown.toggle()}}}),n("k-dropdown-content",{ref:"dropdown",attrs:{align:"right"}},[n("k-calendar",{attrs:{value:t.date},on:{input:function(e){t.onInput(e),t.$refs.dropdown.close()}}})],1)],1)],1)],2)],1)},ao=[],oo={inheritAttrs:!1,props:Object(I["a"])({},Li.props,Hi.props,Os.props,{icon:{type:String,default:"calendar"}}),data:function(){return{date:this.value,listeners:Object(I["a"])({},this.$listeners,{input:this.onInput})}},computed:{inputType:function(){return!1===this.time?"date":"datetime"}},watch:{value:function(t){this.date=t}},methods:{focus:function(){this.$refs.input.focus()},onInput:function(t){this.date=t,this.$emit("input",t)}}},ro=oo,lo=Object(_["a"])(ro,so,ao,!1,null,null,null),uo=lo.exports,co=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-email-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[n("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field"}},"k-input",t.$props,!1),t.$listeners),[t.link?n("k-button",{staticClass:"k-input-icon-button",attrs:{slot:"icon",icon:t.icon,link:t.mailto,tooltip:t.$t("open"),tabindex:"-1",target:"_blank"},slot:"icon"}):t._e()],1)],1)},po=[],fo={inheritAttrs:!1,props:Object(I["a"])({},Li.props,Hi.props,Ns.props,{link:{type:Boolean,default:!0},icon:{type:String,default:"email"}}),computed:{mailto:function(){return this.value&&this.value.length>0?"mailto:"+this.value:null}},methods:{focus:function(){this.$refs.input.focus()}}},ho=fo,mo=Object(_["a"])(ho,co,po,!1,null,null,null),go=mo.exports,bo=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-files-field"},"k-field",t.$props,!1),[t.more&&!t.disabled?n("template",{slot:"options"},[n("k-button-group",{staticClass:"k-field-options"},[t.uploads?[n("k-dropdown",[n("k-button",{ref:"pickerToggle",staticClass:"k-field-options-button",attrs:{icon:t.btnIcon},on:{click:function(e){return t.$refs.picker.toggle()}}},[t._v("\n "+t._s(t.btnLabel)+"\n ")]),n("k-dropdown-content",{ref:"picker",attrs:{align:"right"}},[n("k-dropdown-item",{attrs:{icon:"check"},on:{click:t.open}},[t._v(t._s(t.$t("select")))]),n("k-dropdown-item",{attrs:{icon:"upload"},on:{click:t.upload}},[t._v(t._s(t.$t("upload")))])],1)],1)]:[n("k-button",{staticClass:"k-field-options-button",attrs:{icon:"add"},on:{click:t.open}},[t._v(t._s(t.$t("add")))])]],2)],1):t._e(),t.selected.length?[n("k-draggable",{attrs:{element:t.elements.list,list:t.selected,"data-size":t.size,handle:!0,"data-invalid":t.isInvalid},on:{end:t.onInput}},t._l(t.selected,function(e,i){return n(t.elements.item,{key:e.filename,tag:"component",attrs:{sortable:!t.disabled&&t.selected.length>1,text:e.text,link:t.link?e.link:null,info:e.info,image:e.image,icon:e.icon}},[t.disabled?t._e():n("k-button",{attrs:{slot:"options",tooltip:t.$t("remove"),icon:"remove"},on:{click:function(e){return t.remove(i)}},slot:"options"})],1)}),1)]:n("k-empty",{attrs:{layout:t.layout,"data-invalid":t.isInvalid,icon:"image"},on:{click:t.open}},[t._v("\n "+t._s(t.empty||t.$t("field.files.empty"))+"\n ")]),n("k-files-dialog",{ref:"selector",on:{submit:t.select}}),n("k-upload",{ref:"fileUpload",on:{success:t.selectUpload}})],2)},vo=[],ko={inheritAttrs:!1,props:Object(I["a"])({},Li.props,{empty:String,info:String,link:Boolean,layout:String,max:Number,multiple:Boolean,parent:String,search:Boolean,size:String,text:String,value:{type:Array,default:function(){return[]}}}),data:function(){return{selected:this.value}},computed:{btnIcon:function(){return!this.multiple&&this.selected.length>0?"refresh":"add"},btnLabel:function(){return!this.multiple&&this.selected.length>0?this.$t("change"):this.$t("add")},elements:function(){var t={cards:{list:"k-cards",item:"k-card"},list:{list:"k-list",item:"k-list-item"}};return t[this.layout]?t[this.layout]:t["list"]},isInvalid:function(){return!(!this.required||0!==this.selected.length)||(!!(this.min&&this.selected.lengththis.max))},more:function(){return!this.max||this.max>this.selected.length}},watch:{value:function(t){this.selected=t}},methods:{focus:function(){},onInput:function(){this.$emit("input",this.selected)},remove:function(t){this.selected.splice(t,1),this.onInput()},removeById:function(t){this.selected=this.selected.filter(function(e){return e.id!==t}),this.onInput()},select:function(t){var e=this;0!==t.length?(this.selected=this.selected.filter(function(e){return t.filter(function(t){return t.id===e.id}).length>0}),t.forEach(function(t){0===e.selected.filter(function(e){return t.id===e.id}).length&&e.selected.push(t)}),this.onInput()):this.selected=[]}}},$o={mixins:[ko],props:{uploads:[Boolean,Object,Array]},created:function(){this.$events.$on("file.delete",this.removeById)},destroyed:function(){this.$events.$off("file.delete",this.removeById)},methods:{prompt:function(t){t.stopPropagation(),this.uploads?this.$refs.picker.toggle():this.open()},open:function(){if(this.disabled)return!1;this.$refs.selector.open({endpoint:this.endpoints.field,max:this.max,multiple:this.multiple,search:this.search,selected:this.selected.map(function(t){return t.id})})},selectUpload:function(t,e){var n=this;!1===this.multiple&&(this.selected=[]),e.forEach(function(t){n.selected.push(t)}),this.onInput(),this.$events.$emit("model.update")},upload:function(){this.$refs.fileUpload.open({url:A.api+"/"+this.endpoints.field+"/upload",multiple:this.multiple,accept:this.uploads.accept})}}},_o=$o,yo=(n("4a4b"),Object(_["a"])(_o,bo,vo,!1,null,null,null)),xo=yo.exports,wo=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-headline",{staticClass:"k-headline-field",attrs:{"data-numbered":t.numbered,size:"large"}},[t._v("\n "+t._s(t.label)+"\n")])},Oo=[],Co={props:{label:String,numbered:Boolean}},So=Co,Eo=(n("19d7"),Object(_["a"])(So,wo,Oo,!1,null,null,null)),jo=Eo.exports,To=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-field k-info-field"},[n("k-headline",[t._v(t._s(t.label))]),n("k-box",{attrs:{theme:t.theme}},[n("k-text",{domProps:{innerHTML:t._s(t.text)}})],1)],1)},Io=[],Lo={props:{label:String,text:String,theme:{type:String,default:"info"}}},qo=Lo,Ao=(n("ddfd"),Object(_["a"])(qo,To,Io,!1,null,null,null)),No=Ao.exports,Bo=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("hr",{staticClass:"k-line-field"})},Po=[],Do=(n("718c"),{}),Ro=Object(_["a"])(Do,Bo,Po,!1,null,null,null),Mo=Ro.exports,zo=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-multiselect-field",attrs:{input:t._uid,counter:t.counterOptions},on:{blur:t.blur},nativeOn:{keydown:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:(e.preventDefault(),t.focus(e))}}},"k-field",t.$props,!1),[n("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field"}},"k-input",t.$props,!1),t.$listeners))],1)},Uo=[],Fo={inheritAttrs:!1,props:Object(I["a"])({},Li.props,Hi.props,zs.props,{counter:{type:Boolean,default:!0},icon:{type:String,default:"angle-down"}}),computed:{counterOptions:function(){return null!==this.value&&!this.disabled&&!1!==this.counter&&{count:this.value&&xt()(this.value)?this.value.length:0,min:this.min,max:this.max}}},mounted:function(){this.$refs.input.$el.setAttribute("tabindex",0)},methods:{blur:function(t){this.$refs.input.blur(t)},focus:function(){this.$refs.input.focus()}}},Ho=Fo,Ko=Object(_["a"])(Ho,zo,Uo,!1,null,null,null),Vo=Ko.exports,Yo=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-number-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[n("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field"}},"k-input",t.$props,!1),t.$listeners))],1)},Wo=[],Go={inheritAttrs:!1,props:Object(I["a"])({},Li.props,Hi.props,Zs.props),methods:{focus:function(){this.$refs.input.focus()}}},Jo=Go,Zo=Object(_["a"])(Jo,Yo,Wo,!1,null,null,null),Xo=Zo.exports,Qo=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-pages-field"},"k-field",t.$props,!1),[n("k-button-group",{staticClass:"k-field-options",attrs:{slot:"options"},slot:"options"},[t.more&&!t.disabled?n("k-button",{staticClass:"k-field-options-button",attrs:{icon:t.btnIcon},on:{click:t.open}},[t._v("\n "+t._s(t.btnLabel)+"\n ")]):t._e()],1),t.selected.length?[n("k-draggable",{attrs:{element:t.elements.list,handle:!0,list:t.selected,"data-size":t.size,"data-invalid":t.isInvalid},on:{end:t.onInput}},t._l(t.selected,function(e,i){return n(t.elements.item,{key:e.id,tag:"component",attrs:{sortable:!t.disabled&&t.selected.length>1,text:e.text,info:e.info,link:t.link?e.link:null,icon:e.icon,image:e.image}},[t.disabled?t._e():n("k-button",{attrs:{slot:"options",icon:"remove"},on:{click:function(e){return t.remove(i)}},slot:"options"})],1)}),1)]:n("k-empty",{attrs:{layout:t.layout,"data-invalid":t.isInvalid,icon:"page"},on:{click:t.open}},[t._v("\n "+t._s(t.empty||t.$t("field.pages.empty"))+"\n ")]),n("k-pages-dialog",{ref:"selector",on:{submit:t.select}})],2)},tr=[],er={mixins:[ko],methods:{open:function(){if(this.disabled)return!1;this.$refs.selector.open({endpoint:this.endpoints.field,max:this.max,multiple:this.multiple,search:this.search,selected:this.selected.map(function(t){return t.id})})}}},nr=er,ir=(n("7e85"),Object(_["a"])(nr,Qo,tr,!1,null,null,null)),sr=ir.exports,ar=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-password-field",attrs:{input:t._uid,counter:t.counterOptions}},"k-field",t.$props,!1),[n("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field"}},"k-input",t.$props,!1),t.$listeners))],1)},or=[],rr={inheritAttrs:!1,props:Object(I["a"])({},Li.props,Hi.props,ea.props,{counter:{type:Boolean,default:!0},minlength:{type:Number,default:8},icon:{type:String,default:"key"}}),computed:{counterOptions:function(){return null!==this.value&&!this.disabled&&!1!==this.counter&&{count:this.value?String(this.value).length:0,min:this.minlength,max:this.maxlength}}},methods:{focus:function(){this.$refs.input.focus()}}},lr=rr,ur=Object(_["a"])(lr,ar,or,!1,null,null,null),cr=ur.exports,dr=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-radio-field"},"k-field",t.$props,!1),[n("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field"}},"k-input",t.$props,!1),t.$listeners))],1)},pr=[],fr={inheritAttrs:!1,props:Object(I["a"])({},Li.props,Hi.props,ra.props),methods:{focus:function(){this.$refs.input.focus()}}},hr=fr,mr=Object(_["a"])(hr,dr,pr,!1,null,null,null),gr=mr.exports,br=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-range-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[n("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field"}},"k-input",t.$props,!1),t.$listeners))],1)},vr=[],kr={inheritAttrs:!1,props:Object(I["a"])({},Li.props,Hi.props,fa.props),methods:{focus:function(){this.$refs.input.focus()}}},$r=kr,_r=Object(_["a"])($r,br,vr,!1,null,null,null),yr=_r.exports,xr=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-select-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[n("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field"}},"k-input",t.$props,!1),t.$listeners))],1)},wr=[],Or={inheritAttrs:!1,props:Object(I["a"])({},Li.props,Hi.props,ka.props,{icon:{type:String,default:"angle-down"}}),methods:{focus:function(){this.$refs.input.focus()}}},Cr=Or,Sr=Object(_["a"])(Cr,xr,wr,!1,null,null,null),Er=Sr.exports,jr=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-structure-field",nativeOn:{click:function(t){t.stopPropagation()}}},"k-field",t.$props,!1),[n("template",{slot:"options"},[t.more&&null===t.currentIndex?n("k-button",{ref:"add",attrs:{id:t._uid,icon:"add"},on:{click:t.add}},[t._v("\n "+t._s(t.$t("add"))+"\n ")]):t._e()],1),null!==t.currentIndex?[n("div",{staticClass:"k-structure-backdrop",on:{click:t.escape}}),n("section",{staticClass:"k-structure-form"},[n("k-form",{ref:"form",staticClass:"k-structure-form-fields",attrs:{fields:t.formFields},on:{input:t.onInput,submit:t.submit},model:{value:t.currentModel,callback:function(e){t.currentModel=e},expression:"currentModel"}}),n("footer",{staticClass:"k-structure-form-buttons"},[n("k-button",{staticClass:"k-structure-form-cancel-button",attrs:{icon:"cancel"},on:{click:t.close}},[t._v(t._s(t.$t("cancel")))]),"new"!==t.currentIndex?n("k-pagination",{attrs:{dropdown:!1,total:t.items.length,limit:1,page:t.currentIndex+1,details:!0,validate:t.beforePaginate},on:{paginate:t.paginate}}):t._e(),n("k-button",{staticClass:"k-structure-form-submit-button",attrs:{icon:"check"},on:{click:t.submit}},[t._v(t._s(t.$t("new"!==t.currentIndex?"confirm":"add")))])],1)],1)]:0===t.items.length?n("k-empty",{attrs:{"data-invalid":t.isInvalid,icon:"list-bullet"},on:{click:t.add}},[t._v("\n "+t._s(t.empty||t.$t("field.structure.empty"))+"\n ")]):[n("table",{staticClass:"k-structure-table",attrs:{"data-invalid":t.isInvalid,"data-sortable":t.isSortable}},[n("thead",[n("tr",[n("th",{staticClass:"k-structure-table-index"},[t._v("#")]),t._l(t.columns,function(e,i){return n("th",{key:i+"-header",staticClass:"k-structure-table-column",style:"width:"+t.width(e.width),attrs:{"data-align":e.align}},[t._v("\n "+t._s(e.label)+"\n ")])}),n("th")],2)]),n("k-draggable",{attrs:{list:t.items,"data-disabled":t.disabled,options:t.dragOptions,handle:!0,element:"tbody"},on:{end:t.onInput}},t._l(t.paginatedItems,function(e,i){return n("tr",{key:i,on:{click:function(t){t.stopPropagation()}}},[n("td",{staticClass:"k-structure-table-index"},[t.isSortable?n("k-sort-handle"):t._e(),n("span",{staticClass:"k-structure-table-index-number"},[t._v(t._s(t.indexOf(i)))])],1),t._l(t.columns,function(s,a){return n("td",{key:a,staticClass:"k-structure-table-column",style:"width:"+t.width(s.width),attrs:{title:s.label,"data-align":s.align},on:{click:function(e){return t.jump(i,a)}}},[!1===t.columnIsEmpty(e[a])?[t.previewExists(s.type)?n("k-"+s.type+"-field-preview",{tag:"component",attrs:{value:e[a],column:s,field:t.fields[a]},on:{input:function(e){return t.update(i,a,e)}}}):[n("p",{staticClass:"k-structure-table-text"},[t._v("\n "+t._s(s.before)+" "+t._s(t.displayText(t.fields[a],e[a])||"–")+" "+t._s(s.after)+"\n ")])]]:t._e()],2)}),n("td",{staticClass:"k-structure-table-option"},[n("k-button",{attrs:{tooltip:t.$t("remove"),icon:"remove"},on:{click:function(e){return t.confirmRemove(i)}}})],1)],2)}),0)],1),t.limit?n("k-pagination",t._b({on:{paginate:t.paginateItems}},"k-pagination",t.pagination,!1)):t._e(),t.disabled?t._e():n("k-dialog",{ref:"remove",attrs:{button:t.$t("delete"),theme:"negative"},on:{submit:t.remove}},[n("k-text",[t._v(t._s(t.$t("field.structure.delete.confirm")))])],1)]],2)},Tr=[];Array.prototype.sortBy=function(t){var e=z["a"].prototype.$helper.sort(),n=t.split(" "),i=n[0],s=n[1]||"asc";return this.sort(function(t,n){var a=String(t[i]).toLowerCase(),o=String(n[i]).toLowerCase();return"desc"===s?e(o,a):e(a,o)})};var Ir,Lr,qr,Ar,Nr={inheritAttrs:!1,props:Object(I["a"])({},Li.props,{columns:Object,empty:String,fields:Object,limit:Number,max:Number,min:Number,sortable:{type:Boolean,default:!0},sortBy:String,value:{type:Array,default:function(){return[]}}}),data:function(){return{items:this.makeItems(this.value),currentIndex:null,currentModel:null,trash:null,page:1}},computed:{dragOptions:function(){return{disabled:!this.isSortable,fallbackClass:"k-sortable-row-fallback"}},formFields:function(){var t=this,e={};return kt()(this.fields).forEach(function(n){var i=t.fields[n];i.section=t.name,i.endpoints={field:t.endpoints.field+"+"+n,section:t.endpoints.section,model:t.endpoints.model},e[n]=i}),e},more:function(){return!0!==this.disabled&&!(this.max&&this.items.length>=this.max)},isInvalid:function(){return!0!==this.disabled&&(!!(this.min&&this.items.lengththis.max))},isSortable:function(){return!this.sortBy&&(!this.limit&&(!0!==this.disabled&&(!(this.items.length<=1)&&!1!==this.sortable)))},pagination:function(){var t=0;return this.limit&&(t=(this.page-1)*this.limit),{page:this.page,offset:t,limit:this.limit,total:this.items.length,align:"center",details:!0}},paginatedItems:function(){return this.limit?this.items.slice(this.pagination.offset,this.pagination.offset+this.limit):this.items}},watch:{value:function(t){t!=this.items&&(this.items=this.makeItems(t))}},methods:{add:function(){var t=this;if(!0===this.disabled)return!1;if(null!==this.currentIndex)return this.escape(),!1;var e={};kt()(this.fields).forEach(function(n){var i=t.fields[n];null!==i.default?e[n]=t.$helper.clone(i.default):e[n]=null}),this.currentIndex="new",this.currentModel=e,this.createForm()},close:function(){this.currentIndex=null,this.currentModel=null,this.$events.$off("keydown.esc",this.escape),this.$events.$off("keydown.cmd.s",this.submit),this.$store.dispatch("content/enable")},columnIsEmpty:function(t){return void 0===t||null===t||""===t||("object"===Object(Ht["a"])(t)&&0===kt()(t).length&&t.constructor===Object||void 0!==t.length&&0===t.length)},confirmRemove:function(t){this.close(),this.trash=t,this.$refs.remove.open()},createForm:function(t){var e=this;this.$events.$on("keydown.esc",this.escape),this.$events.$on("keydown.cmd.s",this.submit),this.$store.dispatch("content/disable"),this.$nextTick(function(){e.$refs.form&&e.$refs.form.focus(t)})},displayText:function(t,e){switch(t.type){case"user":return e.email;case"date":var n=this.$library.dayjs(e),i=!0===t.time?"YYYY-MM-DD HH:mm":"YYYY-MM-DD";return n.isValid()?n.format(i):"";case"tags":case"multiselect":return e.map(function(t){return t.text}).join(", ");case"checkboxes":return e.map(function(e){var n=e;return t.options.forEach(function(t){t.value===e&&(n=t.text)}),n}).join(", ");case"radio":case"select":var s=t.options.filter(function(t){return t.value===e})[0];return s?s.text:null}return"object"===Object(Ht["a"])(e)&&null!==e?"…":e.toString()},escape:function(){var t=this;if("new"===this.currentIndex){var e=_t()(this.currentModel),n=!0;if(e.forEach(function(e){!1===t.columnIsEmpty(e)&&(n=!1)}),!0===n)return void this.close()}this.submit()},focus:function(){this.$refs.add&&this.$refs.add.focus&&this.$refs.add.focus()},indexOf:function(t){return this.limit?(this.page-1)*this.limit+t+1:t+1},isActive:function(t){return this.currentIndex===t},jump:function(t,e){this.open(t+this.pagination.offset,e)},makeItems:function(t){return!1===xt()(t)?[]:this.sort(t)},onInput:function(){this.$emit("input",this.items)},open:function(t,e){this.currentIndex=t,this.currentModel=this.$helper.clone(this.items[t]),this.createForm(e)},beforePaginate:function(){return this.save(this.currentModel)},paginate:function(t){this.open(t.offset)},paginateItems:function(t){this.page=t.page},previewExists:function(t){return void 0!==z["a"].options.components["k-"+t+"-field-preview"]||void 0!==this.$options.components["k-"+t+"-field-preview"]},remove:function(){if(null===this.trash)return!1;this.items.splice(this.trash,1),this.trash=null,this.$refs.remove.close(),this.onInput(),0===this.paginatedItems.length&&this.page>1&&this.page--,this.items=this.sort(this.items)},sort:function(t){return this.sortBy?t.sortBy(this.sortBy):t},save:function(){var t=this;return null!==this.currentIndex&&void 0!==this.currentIndex?this.validate(this.currentModel).then(function(){return"new"===t.currentIndex?t.items.push(t.currentModel):t.items[t.currentIndex]=t.currentModel,t.items=t.sort(t.items),t.onInput(),!0}).catch(function(e){throw t.$store.dispatch("notification/error",{message:t.$t("error.form.incomplete"),details:e}),e}):Je.a.resolve()},submit:function(){this.save().then(this.close).catch(function(){})},validate:function(t){return this.$api.post(this.endpoints.field+"/validate",t).then(function(t){if(t.length>0)throw t;return!0})},width:function(t){if(!t)return"auto";var e=t.toString().split("/");if(2!==e.length)return"auto";var n=Number(e[0]),i=Number(e[1]);return Ys()(100/i*n,2).toFixed(2)+"%"},update:function(t,e,n){this.items[t][e]=n,this.onInput()}}},Br=Nr,Pr=(n("088c"),Object(_["a"])(Br,jr,Tr,!1,null,null,null)),Dr=Pr.exports,Rr=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-tags-field",attrs:{input:t._uid,counter:t.counterOptions}},"k-field",t.$props,!1),[n("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field"}},"k-input",t.$props,!1),t.$listeners))],1)},Mr=[],zr={inheritAttrs:!1,props:Object(I["a"])({},Li.props,Hi.props,Oa.props,{counter:{type:Boolean,default:!0}}),computed:{counterOptions:function(){return null!==this.value&&!this.disabled&&!1!==this.counter&&{count:this.value&&xt()(this.value)?this.value.length:0,min:this.min,max:this.max}}},methods:{focus:function(){this.$refs.input.focus()}}},Ur=zr,Fr=Object(_["a"])(Ur,Rr,Mr,!1,null,null,null),Hr=Fr.exports,Kr=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-tel-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[n("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field"}},"k-input",t.$props,!1),t.$listeners))],1)},Vr=[],Yr={inheritAttrs:!1,props:Object(I["a"])({},Li.props,Hi.props,ja.props,{icon:{type:String,default:"phone"}}),methods:{focus:function(){this.$refs.input.focus()}}},Wr=Yr,Gr=Object(_["a"])(Wr,Kr,Vr,!1,null,null,null),Jr=Gr.exports,Zr=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-text-field",attrs:{input:t._uid,counter:t.counterOptions}},"k-field",t.$props,!1),[t._t("options",null,{slot:"options"}),n("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field"}},"k-input",t.$props,!1),t.$listeners))],2)},Xr=[],Qr={inheritAttrs:!1,props:Object(I["a"])({},Li.props,Hi.props,Is.props,{counter:{type:Boolean,default:!0}}),computed:{counterOptions:function(){return null!==this.value&&!this.disabled&&!1!==this.counter&&{count:this.value?String(this.value).length:0,min:this.minlength,max:this.maxlength}}},methods:{focus:function(){this.$refs.input.focus()}}},tl=Qr,el=(n("b746"),Object(_["a"])(tl,Zr,Xr,!1,null,null,null)),nl=el.exports,il=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-textarea-field",attrs:{input:t._uid,counter:t.counterOptions}},"k-field",t.$props,!1),[n("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,type:"textarea",theme:"field"}},"k-input",t.$props,!1),t.$listeners))],1)},sl=[],al={inheritAttrs:!1,props:Object(I["a"])({},Li.props,Hi.props,Na.props,{counter:{type:Boolean,default:!0}}),computed:{counterOptions:function(){return null!==this.value&&!this.disabled&&!1!==this.counter&&{count:this.value?this.value.length:0,min:this.minlength,max:this.maxlength}}},methods:{focus:function(){this.$refs.input.focus()}}},ol=al,rl=Object(_["a"])(ol,il,sl,!1,null,null,null),ll=rl.exports,ul=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-time-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[n("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field"}},"k-input",t.$props,!1),t.$listeners))],1)},cl=[],dl={inheritAttrs:!1,props:Object(I["a"])({},Li.props,Hi.props,za.props,{icon:{type:String,default:"clock"}}),methods:{focus:function(){this.$refs.input.focus()}}},pl=dl,fl=Object(_["a"])(pl,ul,cl,!1,null,null,null),hl=fl.exports,ml=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-toggle-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[n("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field"}},"k-input",t.$props,!1),t.$listeners))],1)},gl=[],bl={inheritAttrs:!1,props:Object(I["a"])({},Li.props,Hi.props,Ya.props),methods:{focus:function(){this.$refs.input.focus()}}},vl=bl,kl=Object(_["a"])(vl,ml,gl,!1,null,null,null),$l=kl.exports,_l=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-url-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[n("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field"}},"k-input",t.$props,!1),t.$listeners),[t.link?n("k-button",{staticClass:"k-input-icon-button",attrs:{slot:"icon",icon:t.icon,link:t.value,tooltip:t.$t("open"),tabindex:"-1",target:"_blank"},slot:"icon"}):t._e()],1)],1)},yl=[],xl={inheritAttrs:!1,props:Object(I["a"])({},Li.props,Hi.props,Za.props,{link:{type:Boolean,default:!0},icon:{type:String,default:"url"}}),methods:{focus:function(){this.$refs.input.focus()}}},wl=xl,Ol=Object(_["a"])(wl,_l,yl,!1,null,null,null),Cl=Ol.exports,Sl=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-users-field"},"k-field",t.$props,!1),[n("k-button-group",{staticClass:"k-field-options",attrs:{slot:"options"},slot:"options"},[t.more&&!t.disabled?n("k-button",{staticClass:"k-field-options-button",attrs:{icon:t.btnIcon},on:{click:t.open}},[t._v("\n "+t._s(t.btnLabel)+"\n ")]):t._e()],1),t.selected.length?[n("k-draggable",{attrs:{element:t.elements.list,list:t.selected,handle:!0,"data-invalid":t.isInvalid},on:{end:t.onInput}},t._l(t.selected,function(e,i){return n(t.elements.item,{key:e.email,tag:"component",attrs:{sortable:!t.disabled&&t.selected.length>1,text:e.text,info:e.info,link:t.link?t.$api.users.link(e.id):null,image:e.image,icon:e.icon}},[t.disabled?t._e():n("k-button",{attrs:{slot:"options",icon:"remove"},on:{click:function(e){return t.remove(i)}},slot:"options"})],1)}),1)]:n("k-empty",{attrs:{"data-invalid":t.isInvalid,icon:"users"},on:{click:t.open}},[t._v("\n "+t._s(t.empty||t.$t("field.users.empty"))+"\n ")]),n("k-users-dialog",{ref:"selector",on:{submit:t.select}})],2)},El=[],jl={mixins:[ko],methods:{open:function(){if(this.disabled)return!1;this.$refs.selector.open({endpoint:this.endpoints.field,max:this.max,multiple:this.multiple,search:this.search,selected:this.selected.map(function(t){return t.id})})}}},Tl=jl,Il=(n("7f6e"),Object(_["a"])(Tl,Sl,El,!1,null,null,null)),Ll=Il.exports,ql=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("nav",{staticClass:"k-toolbar"},[n("div",{staticClass:"k-toolbar-wrapper"},[n("div",{staticClass:"k-toolbar-buttons"},[t._l(t.layout,function(e,i){return[e.divider?[n("span",{key:i,staticClass:"k-toolbar-divider"})]:e.dropdown?[n("k-dropdown",{key:i},[n("k-button",{key:i,staticClass:"k-toolbar-button",attrs:{icon:e.icon,tooltip:e.label,tabindex:"-1"},on:{click:function(e){t.$refs[i+"-dropdown"][0].toggle()}}}),n("k-dropdown-content",{ref:i+"-dropdown",refInFor:!0},t._l(e.dropdown,function(e,i){return n("k-dropdown-item",{key:i,attrs:{icon:e.icon},on:{click:function(n){return t.command(e.command,e.args)}}},[t._v("\n "+t._s(e.label)+"\n ")])}),1)],1)]:[n("k-button",{key:i,staticClass:"k-toolbar-button",attrs:{icon:e.icon,tooltip:e.label,tabindex:"-1"},on:{click:function(n){return t.command(e.command,e.args)}}})]]})],2)])])},Al=[],Nl=function(t){this.command("insert",function(e,n){var i=[];return n.split("\n").forEach(function(e,n){var s="ol"===t?n+1+".":"-";i.push(s+" "+e)}),i.join("\n")})},Bl={layout:["headlines","bold","italic","|","link","email","file","|","code","ul","ol"],props:{buttons:{type:[Boolean,Array],default:!0},uploads:[Boolean,Object,Array]},data:function(){var t={},e={},n=[],i=this.commands();return!1===this.buttons?t:(xt()(this.buttons)&&(n=this.buttons),!0!==xt()(this.buttons)&&(n=this.$options.layout),n.forEach(function(n,s){if("|"===n)t["divider-"+s]={divider:!0};else if(i[n]){var a=i[n];t[n]=a,a.shortcut&&(e[a.shortcut]=n)}}),{layout:t,shortcuts:e})},methods:{command:function(t,e){"function"===typeof t?t.apply(this):this.$emit("command",t,e)},close:function(){var t=this;kt()(this.$refs).forEach(function(e){var n=t.$refs[e][0];n.close&&"function"===typeof n.close&&n.close()})},fileCommandSetup:function(){var t={label:this.$t("toolbar.button.file"),icon:"attachment"};return!1===this.uploads?t.command="selectFile":t.dropdown={select:{label:this.$t("toolbar.button.file.select"),icon:"check",command:"selectFile"},upload:{label:this.$t("toolbar.button.file.upload"),icon:"upload",command:"uploadFile"}},t},commands:function(){return{headlines:{label:this.$t("toolbar.button.headings"),icon:"title",dropdown:{h1:{label:this.$t("toolbar.button.heading.1"),icon:"title",command:"prepend",args:"#"},h2:{label:this.$t("toolbar.button.heading.2"),icon:"title",command:"prepend",args:"##"},h3:{label:this.$t("toolbar.button.heading.3"),icon:"title",command:"prepend",args:"###"}}},bold:{label:this.$t("toolbar.button.bold"),icon:"bold",command:"wrap",args:"**",shortcut:"b"},italic:{label:this.$t("toolbar.button.italic"),icon:"italic",command:"wrap",args:"*",shortcut:"i"},link:{label:this.$t("toolbar.button.link"),icon:"url",shortcut:"k",command:"dialog",args:"link"},email:{label:this.$t("toolbar.button.email"),icon:"email",shortcut:"e",command:"dialog",args:"email"},file:this.fileCommandSetup(),code:{label:this.$t("toolbar.button.code"),icon:"code",command:"wrap",args:"`"},ul:{label:this.$t("toolbar.button.ul"),icon:"list-bullet",command:function(){return Nl.apply(this,["ul"])}},ol:{label:this.$t("toolbar.button.ol"),icon:"list-numbers",command:function(){return Nl.apply(this,["ol"])}}}},shortcut:function(t,e){if(this.shortcuts[t]){var n=this.layout[this.shortcuts[t]];if(!n)return!1;e.preventDefault(),this.command(n.command,n.args)}}}},Pl=Bl,Dl=(n("df0d"),Object(_["a"])(Pl,ql,Al,!1,null,null,null)),Rl=Dl.exports,Ml=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-dialog",{ref:"dialog",attrs:{button:t.$t("insert")},on:{close:t.cancel,submit:function(e){return t.$refs.form.submit()}}},[n("k-form",{ref:"form",attrs:{fields:t.fields},on:{submit:t.submit},model:{value:t.value,callback:function(e){t.value=e},expression:"value"}})],1)},zl=[],Ul={data:function(){return{value:{email:null,text:null},fields:{email:{label:this.$t("email"),type:"email"},text:{label:this.$t("link.text"),type:"text"}}}},computed:{kirbytext:function(){return this.$store.state.system.info.kirbytext}},methods:{open:function(t,e){this.value.text=e,this.$refs.dialog.open()},cancel:function(){this.$emit("cancel")},createKirbytext:function(){var t=this.value.email||"";return this.value.text&&this.value.text.length>0?"(email: ".concat(t," text: ").concat(this.value.text,")"):"(email: ".concat(t,")")},createMarkdown:function(){var t=this.value.email||"";return this.value.text&&this.value.text.length>0?"[".concat(this.value.text,"](mailto:").concat(t,")"):"<".concat(t,">")},submit:function(){this.$emit("submit",this.kirbytext?this.createKirbytext():this.createMarkdown()),this.value={email:null,text:null},this.$refs.dialog.close()}}},Fl=Ul,Hl=Object(_["a"])(Fl,Ml,zl,!1,null,null,null),Kl=Hl.exports,Vl=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-dialog",{ref:"dialog",attrs:{button:t.$t("insert")},on:{close:t.cancel,submit:function(e){return t.$refs.form.submit()}}},[n("k-form",{ref:"form",attrs:{fields:t.fields},on:{submit:t.submit},model:{value:t.value,callback:function(e){t.value=e},expression:"value"}})],1)},Yl=[],Wl={data:function(){return{value:{url:null,text:null},fields:{url:{label:this.$t("link"),type:"text",placeholder:this.$t("url.placeholder"),icon:"url"},text:{label:this.$t("link.text"),type:"text"}}}},computed:{kirbytext:function(){return this.$store.state.system.info.kirbytext}},methods:{open:function(t,e){this.value.text=e,this.$refs.dialog.open()},cancel:function(){this.$emit("cancel")},createKirbytext:function(){return this.value.text.length>0?"(link: ".concat(this.value.url," text: ").concat(this.value.text,")"):"(link: ".concat(this.value.url,")")},createMarkdown:function(){return this.value.text.length>0?"[".concat(this.value.text,"](").concat(this.value.url,")"):"<".concat(this.value.url,">")},submit:function(){this.$emit("submit",this.kirbytext?this.createKirbytext():this.createMarkdown()),this.value={url:null,text:null},this.$refs.dialog.close()}}},Gl=Wl,Jl=Object(_["a"])(Gl,Vl,Yl,!1,null,null,null),Zl=Jl.exports,Xl=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.value?n("ul",{staticClass:"k-files-field-preview"},t._l(t.value,function(e){return n("li",{key:e.url},[n("k-link",{attrs:{title:e.filename,to:e.link},nativeOn:{click:function(t){t.stopPropagation()}}},["image"===e.type?n("k-image",t._b({},"k-image",t.imageOptions(e),!1)):n("k-icon",t._b({},"k-icon",e.icon,!1))],1)],1)}),0):t._e()},Ql=[],tu=function(t){if(!t)return!1;var e=null,n=null;return t.list?(e=t.list.url,n=t.list.srcset):(e=t.url,n=t.srcset),!!e&&{src:e,srcset:n,back:t.back||"black",cover:t.cover}},eu={props:{value:Array,field:Object},methods:{imageOptions:function(t){var e=tu(t.image);return e.src?Object(I["a"])({},e,{back:"pattern",cover:!1},this.field.image||{}):{src:t.url}}}},nu=eu,iu=(n("21dc"),Object(_["a"])(nu,Xl,Ql,!1,null,null,null)),su=iu.exports,au=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("p",{staticClass:"k-url-field-preview"},[t._v("\n "+t._s(t.column.before)+"\n "),n("k-link",{attrs:{to:t.link,target:"_blank"},nativeOn:{click:function(t){t.stopPropagation()}}},[t._v(t._s(t.value))]),t._v("\n "+t._s(t.column.after)+"\n")],1)},ou=[],ru={props:{column:{type:Object,default:function(){return{}}},value:String},computed:{link:function(){return this.value}}},lu=ru,uu=(n("977f"),Object(_["a"])(lu,au,ou,!1,null,null,null)),cu=uu.exports,du={extends:cu,computed:{link:function(){return this.value&&this.value.length>0?"mailto:"+this.value:null}}},pu=du,fu=Object(_["a"])(pu,Ir,Lr,!1,null,null,null),hu=fu.exports,mu=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.value?n("ul",{staticClass:"k-pages-field-preview"},t._l(t.value,function(e){return n("li",{key:e.id},[n("figure",[n("k-link",{attrs:{title:e.id,to:t.$api.pages.link(e.id)},nativeOn:{click:function(t){t.stopPropagation()}}},[n("k-icon",{staticClass:"k-pages-field-preview-image",attrs:{type:"page",back:"pattern"}}),n("figcaption",[t._v("\n "+t._s(e.text)+"\n ")])],1)],1)])}),0):t._e()},gu=[],bu={props:{value:Array}},vu=bu,ku=(n("d0c1"),Object(_["a"])(vu,mu,gu,!1,null,null,null)),$u=ku.exports,_u=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-input",{staticClass:"k-toggle-field-preview",attrs:{text:t.text,type:"toggle"},on:{input:function(e){return t.$emit("input",e)}},model:{value:t.value,callback:function(e){t.value=e},expression:"value"}})},yu=[],xu={props:{field:Object,value:Boolean,column:Object},computed:{text:function(){return!1!==this.column.text?this.field.text:null}}},wu=xu,Ou=(n("1c4e"),Object(_["a"])(wu,_u,yu,!1,null,null,null)),Cu=Ou.exports,Su=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.value?n("ul",{staticClass:"k-users-field-preview"},t._l(t.value,function(e){return n("li",{key:e.email},[n("figure",[n("k-link",{attrs:{title:e.email,to:t.$api.users.link(e.id)},nativeOn:{click:function(t){t.stopPropagation()}}},[e.avatar?n("k-image",{staticClass:"k-users-field-preview-avatar",attrs:{src:e.avatar.url,back:"pattern"}}):n("k-icon",{staticClass:"k-users-field-preview-avatar",attrs:{type:"user",back:"pattern"}}),n("figcaption",[t._v("\n "+t._s(e.username)+"\n ")])],1)],1)])}),0):t._e()},Eu=[],ju={props:{value:Array}},Tu=ju,Iu=(n("3a85"),Object(_["a"])(Tu,Su,Eu,!1,null,null,null)),Lu=Iu.exports,qu=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-bar"},[t.$slots.left?n("div",{staticClass:"k-bar-slot",attrs:{"data-position":"left"}},[t._t("left")],2):t._e(),t.$slots.center?n("div",{staticClass:"k-bar-slot",attrs:{"data-position":"center"}},[t._t("center")],2):t._e(),t.$slots.right?n("div",{staticClass:"k-bar-slot",attrs:{"data-position":"right"}},[t._t("right")],2):t._e()])},Au=[],Nu=(n("6f7b"),{}),Bu=Object(_["a"])(Nu,qu,Au,!1,null,null,null),Pu=Bu.exports,Du=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",t._g({staticClass:"k-box",attrs:{"data-theme":t.theme}},t.$listeners),[t._t("default",[n("k-text",{domProps:{innerHTML:t._s(t.text)}})])],2)},Ru=[],Mu={props:{theme:String,text:String}},zu=Mu,Uu=(n("7dc7"),Object(_["a"])(zu,Du,Ru,!1,null,null,null)),Fu=Uu.exports,Hu=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("figure",t._g({staticClass:"k-card"},t.$listeners),[t.sortable?n("k-sort-handle"):t._e(),n(t.wrapper,{tag:"component",attrs:{to:t.link,target:t.target}},[t.imageOptions?n("k-image",t._b({staticClass:"k-card-image"},"k-image",t.imageOptions,!1)):n("span",{staticClass:"k-card-icon",style:"padding-bottom:"+t.ratioPadding},[n("k-icon",t._b({},"k-icon",t.icon,!1))],1),n("figcaption",{staticClass:"k-card-content"},[n("span",{staticClass:"k-card-text",attrs:{"data-noinfo":!t.info}},[t._v(t._s(t.text))]),t.info?n("span",{staticClass:"k-card-info",domProps:{innerHTML:t._s(t.info)}}):t._e()])],1),n("nav",{staticClass:"k-card-options"},[t.flag?n("k-button",t._b({staticClass:"k-card-options-button",on:{click:t.flag.click}},"k-button",t.flag,!1)):t._e(),t._t("options",[t.options?n("k-button",{staticClass:"k-card-options-button",attrs:{tooltip:t.$t("options"),icon:"dots"},on:{click:function(e){return e.stopPropagation(),t.$refs.dropdown.toggle()}}}):t._e(),n("k-dropdown-content",{ref:"dropdown",staticClass:"k-card-options-dropdown",attrs:{options:t.options,align:"right"},on:{action:function(e){return t.$emit("action",e)}}})])],2)],1)},Ku=[],Vu={inheritAttrs:!1,props:{column:String,flag:Object,icon:{type:Object,default:function(){return{type:"file",back:"black"}}},image:Object,info:String,link:[String,Function],options:[Array,Function],sortable:Boolean,target:String,text:String},computed:{wrapper:function(){return this.link?"k-link":"div"},ratioPadding:function(){return this.icon&&this.icon.ratio?this.$helper.ratio(this.icon.ratio):this.$helper.ratio("3/2")},imageOptions:function(){if(!this.image)return!1;var t=null,e=null;return this.image.cards?(t=this.image.cards.url,e=this.image.cards.srcset):(t=this.image.url,e=this.image.srcset),!!t&&{src:t,srcset:e,back:this.image.back||"black",cover:this.image.cover,ratio:this.image.ratio||"3/2",sizes:this.getSizes(this.column)}}},methods:{getSizes:function(t){switch(t){case"1/2":case"2/4":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 44em, 27em";case"1/3":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 29.333em, 27em";case"1/4":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 22em, 27em";case"2/3":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 27em, 27em";case"3/4":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 66em, 27em";default:return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 88em, 27em"}}}},Yu=Vu,Wu=(n("c119"),Object(_["a"])(Yu,Hu,Ku,!1,null,null,null)),Gu=Wu.exports,Ju=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-cards"},[t._t("default",t._l(t.cards,function(e,i){return n("k-card",t._g(t._b({key:i},"k-card",e,!1),t.$listeners))}))],2)},Zu=[],Xu={props:{cards:Array}},Qu=Xu,tc=(n("f56d"),Object(_["a"])(Qu,Ju,Zu,!1,null,null,null)),ec=tc.exports,nc=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-collection",attrs:{"data-layout":t.layout}},[n("k-draggable",{attrs:{list:t.items,options:t.dragOptions,element:t.elements.list,"data-size":t.size,handle:!0},on:{change:function(e){return t.$emit("change",e)},end:t.onEnd}},t._l(t.items,function(e,i){return n(t.elements.item,t._b({key:i,tag:"component",class:{"k-draggable-item":e.sortable},on:{action:function(n){return t.$emit("action",e,n)},dragstart:function(n){return t.onDragStart(n,e.dragText)}}},"component",e,!1))}),1),t.hasFooter?n("footer",{staticClass:"k-collection-footer"},[t.help?n("k-text",{staticClass:"k-collection-help",attrs:{theme:"help"},domProps:{innerHTML:t._s(t.help)}}):t._e(),n("div",{staticClass:"k-collection-pagination"},[t.hasPagination?n("k-pagination",t._b({on:{paginate:function(e){return t.$emit("paginate",e)}}},"k-pagination",t.paginationOptions,!1)):t._e()],1)],1):t._e()],1)},ic=[],sc={props:{help:String,items:{type:[Array,Object],default:function(){return[]}},layout:{type:String,default:"list"},size:String,sortable:Boolean,pagination:{type:[Boolean,Object],default:function(){return!1}}},computed:{hasPagination:function(){return!1!==this.pagination&&(!0!==this.paginationOptions.hide&&!(this.pagination.total<=this.pagination.limit))},hasFooter:function(){return!(!this.hasPagination&&!this.help)},dragOptions:function(){return{sort:this.sortable,disabled:!1===this.sortable,draggable:".k-draggable-item"}},elements:function(){var t={cards:{list:"k-cards",item:"k-card"},list:{list:"k-list",item:"k-list-item"}};return t[this.layout]?t[this.layout]:t["list"]},paginationOptions:function(){var t="object"!==Object(Ht["a"])(this.pagination)?{}:this.pagination;return Object(I["a"])({limit:10,details:!0,keys:!1,total:0,hide:!1},t)}},watch:{$props:function(){this.$forceUpdate()}},over:null,methods:{onEnd:function(){this.over&&this.over.removeAttribute("data-over"),this.$emit("sort",this.items)},onDragStart:function(t,e){this.$store.dispatch("drag",{type:"text",data:e})}}},ac=sc,oc=(n("8c28"),Object(_["a"])(ac,nc,ic,!1,null,null,null)),rc=oc.exports,lc=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-column",attrs:{"data-width":t.width,"data-sticky":t.sticky}},[n("div",[t._t("default")],2)])},uc=[],cc={props:{width:String,sticky:Boolean}},dc=cc,pc=(n("c9cb"),Object(_["a"])(dc,lc,uc,!1,null,null,null)),fc=pc.exports,hc=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-dropzone",attrs:{"data-dragging":t.dragging,"data-over":t.over},on:{dragenter:t.onEnter,dragleave:t.onLeave,dragover:t.onOver,drop:t.onDrop}},[t._t("default")],2)},mc=[],gc={props:{label:{type:String,default:"Drop to upload"},disabled:{type:Boolean,default:!1}},data:function(){return{files:[],dragging:!1,over:!1}},methods:{cancel:function(){this.reset()},reset:function(){this.dragging=!1,this.over=!1},onDrop:function(t){return!0===this.disabled?this.reset():!1===this.$helper.isUploadEvent(t)?this.reset():(this.$events.$emit("dropzone.drop"),this.files=t.dataTransfer.files,this.$emit("drop",this.files),void this.reset())},onEnter:function(t){!1===this.disabled&&this.$helper.isUploadEvent(t)&&(this.dragging=!0)},onLeave:function(){this.reset()},onOver:function(t){!1===this.disabled&&this.$helper.isUploadEvent(t)&&(t.dataTransfer.dropEffect="copy",this.over=!0)}}},bc=gc,vc=(n("414d"),Object(_["a"])(bc,hc,mc,!1,null,null,null)),kc=vc.exports,$c=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",t._g({staticClass:"k-empty",attrs:{"data-layout":t.layout}},t.$listeners),[t.icon?n("k-icon",{attrs:{type:t.icon}}):t._e(),n("p",[t._t("default")],2)],1)},_c=[],yc={props:{text:String,icon:String,layout:{type:String,default:"list"}}},xc=yc,wc=(n("ba8f"),Object(_["a"])(xc,$c,_c,!1,null,null,null)),Oc=wc.exports,Cc=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-file-preview"},[n("k-view",{staticClass:"k-file-preview-layout"},[n("div",{staticClass:"k-file-preview-image"},[n("k-link",{staticClass:"k-file-preview-image-link",attrs:{to:t.file.url,title:t.$t("open"),target:"_blank"}},[t.file.panelImage&&t.file.panelImage.cards&&t.file.panelImage.cards.url?n("k-image",{attrs:{src:t.file.panelImage.cards.url,srcset:t.file.panelImage.cards.srcset,back:"none"}}):t.file.panelIcon?n("k-icon",{staticClass:"k-file-preview-icon",style:{color:t.file.panelIcon.color},attrs:{type:t.file.panelIcon.type}}):n("span",{staticClass:"k-file-preview-placeholder"})],1)],1),n("div",{staticClass:"k-file-preview-details"},[n("ul",[n("li",[n("h3",[t._v(t._s(t.$t("template")))]),n("p",[t._v(t._s(t.file.template||"—"))])]),n("li",[n("h3",[t._v(t._s(t.$t("mime")))]),n("p",[t._v(t._s(t.file.mime))])]),n("li",[n("h3",[t._v(t._s(t.$t("url")))]),n("p",[n("k-link",{attrs:{to:t.file.url,tabindex:"-1",target:"_blank"}},[t._v("/"+t._s(t.file.id))])],1)]),n("li",[n("h3",[t._v(t._s(t.$t("size")))]),n("p",[t._v(t._s(t.file.niceSize))])]),n("li",[n("h3",[t._v(t._s(t.$t("dimensions")))]),t.file.dimensions?n("p",[t._v(t._s(t.file.dimensions.width)+"×"+t._s(t.file.dimensions.height)+" "+t._s(t.$t("pixel")))]):n("p",[t._v("—")])]),n("li",[n("h3",[t._v(t._s(t.$t("orientation")))]),t.file.dimensions?n("p",[t._v(t._s(t.$t("orientation."+t.file.dimensions.orientation)))]):n("p",[t._v("—")])])])])])],1)},Sc=[],Ec={props:{file:Object}},jc=Ec,Tc=(n("696b5"),Object(_["a"])(jc,Cc,Sc,!1,null,null,null)),Ic=Tc.exports,Lc=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-grid",attrs:{"data-gutter":t.gutter}},[t._t("default")],2)},qc=[],Ac={props:{gutter:String}},Nc=Ac,Bc=(n("5b23"),Object(_["a"])(Nc,Lc,qc,!1,null,null,null)),Pc=Bc.exports,Dc=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("header",{staticClass:"k-header",attrs:{"data-editable":t.editable}},[n("k-headline",{attrs:{tag:"h1",size:"huge"}},[t.editable&&t.$listeners.edit?n("span",{staticClass:"k-headline-editable",on:{click:function(e){return t.$emit("edit")}}},[t._t("default"),n("k-icon",{attrs:{type:"edit"}})],2):t._t("default")],2),t.$slots.left||t.$slots.right?n("k-bar",{staticClass:"k-header-buttons"},[t._t("left",null,{slot:"left"}),t._t("right",null,{slot:"right"})],2):t._e(),t.tabs&&t.tabs.length>1?n("div",{staticClass:"k-header-tabs"},[n("nav",[t._l(t.visibleTabs,function(e,i){return n("k-button",{key:t.$route.fullPath+"-tab-"+i,staticClass:"k-tab-button",attrs:{link:"#"+e.name,current:t.currentTab&&t.currentTab.name===e.name,icon:e.icon,tooltip:e.label}},[t._v("\n "+t._s(e.label)+"\n ")])}),t.invisibleTabs.length?n("k-button",{staticClass:"k-tab-button k-tabs-dropdown-button",attrs:{icon:"dots"},on:{click:function(e){return e.stopPropagation(),t.$refs.more.toggle()}}},[t._v("\n "+t._s(t.$t("more"))+"\n ")]):t._e()],2),t.invisibleTabs.length?n("k-dropdown-content",{ref:"more",staticClass:"k-tabs-dropdown",attrs:{align:"right"}},t._l(t.invisibleTabs,function(e,i){return n("k-dropdown-item",{key:"more-"+i,attrs:{link:"#"+e.name,current:t.currentTab&&t.currentTab.name===e.name,icon:e.icon,tooltip:e.label}},[t._v("\n "+t._s(e.label)+"\n ")])}),1):t._e()],1):t._e()],1)},Rc=[],Mc={props:{editable:Boolean,tabs:Array,tab:Object},data:function(){return{size:null,currentTab:this.tab,visibleTabs:this.tabs,invisibleTabs:[]}},watch:{tab:function(){this.currentTab=this.tab},tabs:function(t){this.visibleTabs=t,this.invisibleTabs=[],this.resize(!0)}},created:function(){window.addEventListener("resize",this.resize)},destroyed:function(){window.removeEventListener("resize",this.resize)},methods:{resize:function(t){if(this.tabs&&!(this.tabs.length<=1)){if(this.tabs.length<=3)return this.visibleTabs=this.tabs,void(this.invisibleTabs=[]);if(window.innerWidth>=700){if("large"===this.size&&!t)return;this.visibleTabs=this.tabs,this.invisibleTabs=[],this.size="large"}else{if("small"===this.size&&!t)return;this.visibleTabs=this.tabs.slice(0,2),this.invisibleTabs=this.tabs.slice(2),this.size="small"}}}}},zc=Mc,Uc=(n("53c5"),Object(_["a"])(zc,Dc,Rc,!1,null,null,null)),Fc=Uc.exports,Hc=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("ul",{staticClass:"k-list"},[t._t("default",t._l(t.items,function(e,i){return n("k-list-item",t._g(t._b({key:i},"k-list-item",e,!1),t.$listeners))}))],2)},Kc=[],Vc={props:{items:Array}},Yc=Vc,Wc=(n("c857"),Object(_["a"])(Yc,Hc,Kc,!1,null,null,null)),Gc=Wc.exports,Jc=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n(t.element,t._g({tag:"component",staticClass:"k-list-item"},t.$listeners),[t.sortable?n("k-sort-handle"):t._e(),n("k-link",{staticClass:"k-list-item-content",attrs:{to:t.link,target:t.target}},[n("span",{staticClass:"k-list-item-image"},[t.imageOptions?n("k-image",t._b({},"k-image",t.imageOptions,!1)):n("k-icon",t._b({},"k-icon",t.icon,!1))],1),n("span",{staticClass:"k-list-item-text"},[n("em",[t._v(t._s(t.text))]),t.info?n("small",{domProps:{innerHTML:t._s(t.info)}}):t._e()])]),n("nav",{staticClass:"k-list-item-options"},[t._t("options",[t.flag?n("k-button",t._b({staticClass:"k-list-item-status",on:{click:t.flag.click}},"k-button",t.flag,!1)):t._e(),t.options?n("k-button",{staticClass:"k-list-item-toggle",attrs:{tooltip:t.$t("options"),icon:"dots",alt:"Options"},on:{click:function(e){return e.stopPropagation(),t.$refs.options.toggle()}}}):t._e(),n("k-dropdown-content",{ref:"options",attrs:{options:t.options,align:"right"},on:{action:function(e){return t.$emit("action",e)}}})])],2)],1)},Zc=[],Xc={inheritAttrs:!1,props:{element:{type:String,default:"li"},image:Object,icon:{type:Object,default:function(){return{type:"file",back:"black"}}},sortable:Boolean,text:String,target:String,info:String,link:[String,Function],flag:Object,options:[Array,Function]},computed:{imageOptions:function(){return tu(this.image)}}},Qc=Xc,td=(n("fa6a"),Object(_["a"])(Qc,Jc,Zc,!1,null,null,null)),ed=td.exports,nd=function(){var t=this,e=t.$createElement,n=t._self._c||e;return 0===t.tabs.length?n("k-box",{attrs:{text:"This page has no blueprint setup yet",theme:"info"}}):t.tab?n("k-sections",{attrs:{parent:t.parent,blueprint:t.blueprint,columns:t.tab.columns},on:{submit:function(e){return t.$emit("submit",e)}}}):t._e()},id=[],sd={props:{parent:String,blueprint:String,tabs:Array},data:function(){return{tab:null}},watch:{$route:function(){this.open()},blueprint:function(){this.open()}},mounted:function(){this.open()},methods:{open:function(t){if(0!==this.tabs.length){t||(t=this.$route.hash.replace("#","")),t||(t=this.tabs[0].name);var e=null;this.tabs.forEach(function(n){n.name===t&&(e=n)}),e||(e=this.tabs[0]),this.tab=e,this.$emit("tab",this.tab)}}}},ad=sd,od=Object(_["a"])(ad,nd,id,!1,null,null,null),rd=od.exports,ld=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-view",attrs:{"data-align":t.align}},[t._t("default")],2)},ud=[],cd={props:{align:String}},dd=cd,pd=(n("daa8"),Object(_["a"])(dd,ld,ud,!1,null,null,null)),fd=pd.exports,hd=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("draggable",t._g(t._b({staticClass:"k-draggable",attrs:{tag:t.element,list:t.list,move:t.move}},"draggable",t.dragOptions,!1),t.listeners),[t._t("default"),t._t("footer",null,{slot:"footer"})],2)},md=[],gd=n("1980"),bd=n.n(gd),vd={components:{draggable:bd.a},props:{element:String,handle:[String,Boolean],list:[Array,Object],move:Function,options:Object},data:function(){var t=this;return{listeners:Object(I["a"])({},this.$listeners,{start:function(e){t.$store.dispatch("drag",{}),t.$listeners.start&&t.$listeners.start(e)},end:function(e){t.$store.dispatch("drag",null),t.$listeners.end&&t.$listeners.end(e)}})}},computed:{dragOptions:function(){var t=!1;return t=!0===this.handle?".k-sort-handle":this.handle,Object(I["a"])({fallbackClass:"k-sortable-fallback",fallbackOnBody:!0,forceFallback:!0,ghostClass:"k-sortable-ghost",handle:t,scroll:document.querySelector(".k-panel-view")},this.options)}}},kd=vd,$d=Object(_["a"])(kd,hd,md,!1,null,null,null),_d=$d.exports,yd={data:function(){return{error:null}},errorCaptured:function(t){return A.debug&&window.console.warn(t),this.error=t,!1},render:function(t){return this.error?this.$slots.error?this.$slots.error[0]:this.$scopedSlots.error?this.$scopedSlots.error({error:this.error}):t("k-box",{attrs:{theme:"negative"}},this.error.message||this.error):this.$slots.default[0]}},xd=yd,wd=Object(_["a"])(xd,qr,Ar,!1,null,null,null),Od=wd.exports,Cd=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n(t.tag,t._g({tag:"component",staticClass:"k-headline",attrs:{"data-theme":t.theme,"data-size":t.size}},t.$listeners),[t.link?n("k-link",{attrs:{to:t.link}},[t._t("default")],2):t._t("default")],2)},Sd=[],Ed={props:{link:String,size:{type:String},tag:{type:String,default:"h2"},theme:{type:String}}},jd=Ed,Td=(n("f8a7"),Object(_["a"])(jd,Cd,Sd,!1,null,null,null)),Id=Td.exports,Ld=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",{class:"k-icon k-icon-"+t.type,attrs:{"aria-label":t.alt,role:t.alt?"img":null,"aria-hidden":!t.alt,"data-back":t.back,"data-size":t.size}},[t.emoji?n("span",{staticClass:"k-icon-emoji"},[t._v(t._s(t.type))]):n("svg",{style:{color:t.color},attrs:{viewBox:"0 0 16 16"}},[n("use",{attrs:{"xlink:href":"#icon-"+t.type}})])])},qd=[],Ad={props:{alt:String,color:String,back:String,emoji:Boolean,size:String,type:String}},Nd=Ad,Bd=(n("3342"),Object(_["a"])(Nd,Ld,qd,!1,null,null,null)),Pd=Bd.exports,Dd=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",t._g({staticClass:"k-image",attrs:{"data-ratio":t.ratio,"data-back":t.back,"data-cover":t.cover}},t.$listeners),[n("span",{style:"padding-bottom:"+t.ratioPadding},[t.loaded?n("img",{key:t.src,attrs:{alt:t.alt||"",src:t.src,srcset:t.srcset,sizes:t.sizes},on:{dragstart:function(t){t.preventDefault()}}}):t._e(),t.loaded||t.error?t._e():n("k-loader",{attrs:{position:"center",theme:"light"}}),!t.loaded&&t.error?n("k-icon",{staticClass:"k-image-error",attrs:{type:"cancel"}}):t._e()],1)])},Rd=[],Md={props:{alt:String,back:String,cover:Boolean,ratio:String,sizes:String,src:String,srcset:String},data:function(){return{loaded:{type:Boolean,default:!1},error:{type:Boolean,default:!1}}},computed:{ratioPadding:function(){return this.$helper.ratio(this.ratio||"1/1")}},created:function(){var t=this,e=new Image;e.onload=function(){t.loaded=!0,t.$emit("load")},e.onerror=function(){t.error=!0,t.$emit("error")},e.src=this.src}},zd=Md,Ud=(n("0d56"),Object(_["a"])(zd,Dd,Rd,!1,null,null,null)),Fd=Ud.exports,Hd=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("progress",{staticClass:"k-progress",attrs:{max:"100"},domProps:{value:t.state}},[t._v("\n "+t._s(t.state)+"%\n")])},Kd=[],Vd={props:{value:{type:Number,default:0}},data:function(){return{state:this.value}},methods:{set:function(t){this.state=t}}},Yd=Vd,Wd=(n("9799"),Object(_["a"])(Yd,Hd,Kd,!1,null,null,null)),Gd=Wd.exports,Jd=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",{staticClass:"k-sort-handle",attrs:{"aria-hidden":"true"}},[n("svg",{attrs:{viewBox:"0 0 16 16"}},[n("use",{attrs:{"xlink:href":"#icon-sort"}})])])},Zd=[],Xd=(n("35cb"),{}),Qd=Object(_["a"])(Xd,Jd,Zd,!1,null,null,null),tp=Qd.exports,ep=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-text",attrs:{"data-align":t.align,"data-size":t.size,"data-theme":t.theme}},[t._t("default")],2)},np=[],ip={props:{align:String,size:String,theme:String}},sp=ip,ap=(n("b0d6"),Object(_["a"])(sp,ep,np,!1,null,null,null)),op=ap.exports,rp=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n(t.component,t._g(t._b({ref:"button",tag:"component"},"component",t.$props,!1),t.$listeners),[t._t("default")],2)},lp=[],up={inheritAttrs:!1,props:{autofocus:Boolean,current:[String,Boolean],disabled:Boolean,icon:String,id:[String,Number],link:String,responsive:Boolean,rel:String,role:String,target:String,tabindex:String,theme:String,tooltip:String,type:{type:String,default:"button"}},computed:{component:function(){return!0===this.disabled?"k-button-disabled":this.link?"k-button-link":"k-button-native"}},methods:{focus:function(){this.$refs.button.focus&&this.$refs.button.focus()},tab:function(){this.$refs.button.tab&&this.$refs.button.tab()},untab:function(){this.$refs.button.untab&&this.$refs.button.untab()}}},cp=up,dp=(n("3787"),Object(_["a"])(cp,rp,lp,!1,null,null,null)),pp=dp.exports,fp=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",{staticClass:"k-button",attrs:{id:t.id,"data-disabled":!0,"data-responsive":t.responsive,"data-theme":t.theme,title:t.tooltip}},[t.icon?n("k-icon",{staticClass:"k-button-icon",attrs:{type:t.icon,alt:t.tooltip}}):t._e(),t.$slots.default?n("span",{staticClass:"k-button-text"},[t._t("default")],2):t._e()],1)},hp=[],mp={inheritAttrs:!1,props:{icon:String,id:[String,Number],responsive:Boolean,theme:String,tooltip:String}},gp=mp,bp=(n("16eb"),Object(_["a"])(gp,fp,hp,!1,null,null,null)),vp=bp.exports,kp=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-button-group"},[t._t("default")],2)},$p=[],_p=(n("a567"),{}),yp=Object(_["a"])(_p,kp,$p,!1,null,null,null),xp=yp.exports,wp=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-link",t._g({staticClass:"k-button",attrs:{"aria-current":t.current,autofocus:t.autofocus,id:t.id,"data-theme":t.theme,"data-responsive":t.responsive,rel:t.rel,role:t.role,tabindex:t.tabindex,target:t.target,title:t.tooltip,to:t.link}},t.$listeners),[t.icon?n("k-icon",{staticClass:"k-button-icon",attrs:{type:t.icon,alt:t.tooltip}}):t._e(),t.$slots.default?n("span",{staticClass:"k-button-text"},[t._t("default")],2):t._e()],1)},Op=[],Cp={inheritAttrs:!1,props:{autofocus:Boolean,current:[String,Boolean],icon:String,id:[String,Number],link:String,rel:String,responsive:Boolean,role:String,target:String,tabindex:String,theme:String,tooltip:String}},Sp=Cp,Ep=Object(_["a"])(Sp,wp,Op,!1,null,null,null),jp=Ep.exports,Tp=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("button",t._g({staticClass:"k-button",attrs:{"aria-current":t.current,autofocus:t.autofocus,id:t.id,"data-theme":t.theme,"data-responsive":t.responsive,role:t.role,tabindex:t.tabindex,title:t.tooltip,type:t.type}},t.$listeners),[t.icon?n("k-icon",{staticClass:"k-button-icon",attrs:{type:t.icon,alt:t.tooltip}}):t._e(),t.$slots.default?n("span",{staticClass:"k-button-text"},[t._t("default")],2):t._e()],1)},Ip=[],Lp={mounted:function(){this.$el.addEventListener("keyup",this.onTab,!0),this.$el.addEventListener("blur",this.onUntab,!0)},destroyed:function(){this.$el.removeEventListener("keyup",this.onTab,!0),this.$el.removeEventListener("blur",this.onUntab,!0)},methods:{focus:function(){this.$el.focus&&this.$el.focus()},onTab:function(t){9===t.keyCode&&this.$el.setAttribute("data-tabbed",!0)},onUntab:function(){this.$el.removeAttribute("data-tabbed")},tab:function(){this.$el.focus(),this.$el.setAttribute("data-tabbed",!0)},untab:function(){this.$el.removeAttribute("data-tabbed")}}},qp={mixins:[Lp],inheritAttrs:!1,props:{autofocus:Boolean,current:[String,Boolean],icon:String,id:[String,Number],responsive:Boolean,role:String,tabindex:String,theme:String,tooltip:String,type:{type:String,default:"button"}}},Ap=qp,Np=Object(_["a"])(Ap,Tp,Ip,!1,null,null,null),Bp=Np.exports,Pp=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",{staticClass:"k-dropdown",on:{click:function(t){t.stopPropagation()}}},[t._t("default")],2)},Dp=[],Rp=(n("f95f"),{}),Mp=Object(_["a"])(Rp,Pp,Dp,!1,null,null,null),zp=Mp.exports,Up=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.isOpen?n("div",{staticClass:"k-dropdown-content",attrs:{"data-align":t.align}},[t._t("default",[t._l(t.items,function(e,i){return["-"===e?n("hr",{key:t._uid+"-item-"+i}):n("k-dropdown-item",t._b({key:t._uid+"-item-"+i,ref:t._uid+"-item-"+i,refInFor:!0,on:{click:function(n){return t.$emit("action",e.click)}}},"k-dropdown-item",e,!1),[t._v("\n "+t._s(e.text)+"\n ")])]})])],2):t._e()},Fp=[],Hp=null,Kp={props:{options:[Array,Function],align:String},data:function(){return{items:[],current:-1,isOpen:!1}},methods:{fetchOptions:function(t){if(!this.options)return t(this.items);"string"===typeof this.options?fetch(this.options).then(function(t){return t.json()}).then(function(e){return t(e)}):"function"===typeof this.options?this.options(t):xt()(this.options)&&t(this.options)},open:function(){var t=this;this.reset(),Hp&&Hp!==this&&Hp.close(),this.fetchOptions(function(e){t.$events.$on("keydown",t.navigate),t.$events.$on("click",t.close),t.items=e,t.isOpen=!0,t.$emit("open"),Hp=t})},reset:function(){this.current=-1,this.$events.$off("keydown",this.navigate),this.$events.$off("click",this.close)},close:function(){this.reset(),this.isOpen=Hp=!1,this.$emit("close")},toggle:function(){this.isOpen?this.close():this.open()},focus:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.$children[t]&&this.$children[t].focus&&(this.current=t,this.$children[t].focus())},navigate:function(t){switch(t.code){case"Escape":case"ArrowLeft":this.close(),this.$emit("leave",t.code);break;case"ArrowUp":t.preventDefault();while(1){if(this.current--,this.current<0){this.close(),this.$emit("leave",t.code);break}if(this.$children[this.current]&&!1===this.$children[this.current].disabled){this.focus(this.current);break}}break;case"ArrowDown":t.preventDefault();while(1){if(this.current++,this.current>this.$children.length-1){var e=this.$children.filter(function(t){return!1===t.disabled});this.current=this.$children.indexOf(e[e.length-1]);break}if(this.$children[this.current]&&!1===this.$children[this.current].disabled){this.focus(this.current);break}}break;case"Tab":while(1){if(this.current++,this.current>this.$children.length-1){this.close(),this.$emit("leave",t.code);break}if(this.$children[this.current]&&!1===this.$children[this.current].disabled)break}break}}}},Vp=Kp,Yp=(n("98a1"),Object(_["a"])(Vp,Up,Fp,!1,null,null,null)),Wp=Yp.exports,Gp=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-button",t._g(t._b({ref:"button",staticClass:"k-dropdown-item"},"k-button",t.$props,!1),t.listeners),[t._t("default")],2)},Jp=[],Zp={inheritAttrs:!1,props:{disabled:Boolean,icon:String,image:[String,Object],link:String,target:String,theme:String,upload:String,current:[String,Boolean]},data:function(){var t=this;return{listeners:Object(I["a"])({},this.$listeners,{click:function(e){t.$parent.close(),t.$emit("click",e)}})}},methods:{focus:function(){this.$refs.button.focus()},tab:function(){this.$refs.button.tab()}}},Xp=Zp,Qp=(n("580a"),Object(_["a"])(Xp,Gp,Jp,!1,null,null,null)),tf=Qp.exports,ef=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.to&&!t.disabled?n("a",t._g({ref:"link",staticClass:"k-link",attrs:{href:t.href,rel:t.relAttr,tabindex:t.tabindex,target:t.target,title:t.title}},t.listeners),[t._t("default")],2):n("span",{staticClass:"k-link",attrs:{title:t.title,"data-disabled":""}},[t._t("default")],2)},nf=[],sf={mixins:[Lp],props:{disabled:Boolean,rel:String,tabindex:[String,Number],target:String,title:String,to:[String,Function]},data:function(){return{relAttr:"_blank"===this.target?"noreferrer noopener":this.rel,listeners:Object(I["a"])({},this.$listeners,{click:this.onClick})}},computed:{href:function(){return"function"===typeof this.to?"":void 0===this.$route||"/"!==this.to[0]||this.target?this.to:(this.$router.options.url||"")+this.to}},methods:{isRoutable:function(t){return void 0!==this.$route&&(!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)&&(!t.defaultPrevented&&((void 0===t.button||0===t.button)&&!this.target)))},onClick:function(t){if(!0===this.disabled)return t.preventDefault(),!1;"function"===typeof this.to&&(t.preventDefault(),this.to()),this.isRoutable(t)&&(t.preventDefault(),this.$router.push(this.to)),this.$emit("click",t)}}},af=sf,of=(n("cc79"),Object(_["a"])(af,ef,nf,!1,null,null,null)),rf=of.exports,lf=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.languages.length?n("k-dropdown",[n("k-button",{attrs:{responsive:!0,icon:"globe"},on:{click:function(e){return t.$refs.languages.toggle()}}},[t._v("\n "+t._s(t.language.name)+"\n ")]),t.languages?n("k-dropdown-content",{ref:"languages"},[n("k-dropdown-item",{on:{click:function(e){return t.change(t.defaultLanguage)}}},[t._v(t._s(t.defaultLanguage.name))]),n("hr"),t._l(t.languages,function(e){return n("k-dropdown-item",{key:e.code,on:{click:function(n){return t.change(e)}}},[t._v("\n "+t._s(e.name)+"\n ")])})],2):t._e()],1):t._e()},uf=[],cf={computed:{defaultLanguage:function(){return this.$store.state.languages.default},language:function(){return this.$store.state.languages.current},languages:function(){return this.$store.state.languages.all.filter(function(t){return!1===t.default})}},methods:{change:function(t){this.$store.dispatch("languages/current",t),this.$emit("change",t)}}},df=cf,pf=Object(_["a"])(df,lf,uf,!1,null,null,null),ff=pf.exports,hf=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.show?n("nav",{staticClass:"k-pagination",attrs:{"data-align":t.align}},[t.show?n("k-button",{attrs:{disabled:!t.hasPrev,tooltip:t.prevLabel,icon:"angle-left"},on:{click:t.prev}}):t._e(),t.details?[t.dropdown?[n("k-dropdown",[n("k-button",{staticClass:"k-pagination-details",attrs:{disabled:!t.hasPages},on:{click:function(e){return t.$refs.dropdown.toggle()}}},[t.total>1?[t._v(t._s(t.detailsText))]:t._e(),t._v(t._s(t.total)+"\n ")],2),n("k-dropdown-content",{ref:"dropdown",staticClass:"k-pagination-selector",on:{open:function(e){t.$nextTick(function(){return t.$refs.page.focus()})}}},[n("div",{staticClass:"k-pagination-settings"},[n("label",{attrs:{for:"k-pagination-page"}},[n("span",[t._v(t._s(t.pageLabel)+":")]),n("select",{ref:"page",attrs:{id:"k-pagination-page"}},t._l(t.pages,function(e){return n("option",{key:e,domProps:{selected:t.page===e,value:e}},[t._v("\n "+t._s(e)+"\n ")])}),0)]),n("k-button",{attrs:{icon:"check"},on:{click:function(e){return t.goTo(t.$refs.page.value)}}})],1)])],1)]:[n("span",{staticClass:"k-pagination-details"},[t.total>1?[t._v(t._s(t.detailsText))]:t._e(),t._v(t._s(t.total)+"\n ")],2)]]:t._e(),t.show?n("k-button",{attrs:{disabled:!t.hasNext,tooltip:t.nextLabel,icon:"angle-right"},on:{click:t.next}}):t._e()],2):t._e()},mf=[],gf={props:{align:{type:String,default:"left"},details:{type:Boolean,default:!1},dropdown:{type:Boolean,default:!0},validate:{type:Function,default:function(){return Je.a.resolve()}},page:{type:Number,default:1},total:{type:Number,default:0},limit:{type:Number,default:10},keys:{type:Boolean,default:!1},pageLabel:{type:String,default:function(){return this.$t("pagination.page")}},prevLabel:{type:String,default:function(){return this.$t("prev")}},nextLabel:{type:String,default:function(){return this.$t("next")}}},data:function(){return{currentPage:this.page}},computed:{show:function(){return this.pages>1},start:function(){return(this.currentPage-1)*this.limit+1},end:function(){var t=this.start-1+this.limit;return t>this.total?this.total:t},detailsText:function(){return 1===this.limit?this.start+" / ":this.start+"-"+this.end+" / "},pages:function(){return Math.ceil(this.total/this.limit)},hasPrev:function(){return this.start>1},hasNext:function(){return this.endthis.limit},offset:function(){return this.start-1}},watch:{page:function(t){this.currentPage=ms()(t)}},created:function(){!0===this.keys&&window.addEventListener("keydown",this.navigate,!1)},destroyed:function(){window.removeEventListener("keydown",this.navigate,!1)},methods:{goTo:function(t){var e=this;this.validate(t).then(function(){t<1&&(t=1),t>e.pages&&(t=e.pages),e.currentPage=t,e.$refs.dropdown&&e.$refs.dropdown.close(),e.$emit("paginate",{page:e.currentPage,start:e.start,end:e.end,limit:e.limit,offset:e.offset})}).catch(function(){})},prev:function(){this.goTo(this.currentPage-1)},next:function(){this.goTo(this.currentPage+1)},navigate:function(t){switch(t.code){case"ArrowLeft":this.prev();break;case"ArrowRight":this.next();break}}}},bf=gf,vf=(n("a66d"),Object(_["a"])(bf,hf,mf,!1,null,null,null)),kf=vf.exports,$f=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-button-group",{staticClass:"k-prev-next"},[n("k-button",t._b({attrs:{icon:"angle-left"}},"k-button",t.prev,!1)),n("k-button",t._b({attrs:{icon:"angle-right"}},"k-button",t.next,!1))],1)},_f=[],yf={props:{prev:{type:Object,default:function(){return{disabled:!0,link:"#"}}},next:{type:Object,default:function(){return{disabled:!0,link:"#"}}}}},xf=yf,wf=(n("7a7d"),Object(_["a"])(xf,$f,_f,!1,null,null,null)),Of=wf.exports,Cf=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-search",attrs:{role:"search"},on:{click:t.close}},[n("div",{staticClass:"k-search-box",on:{click:function(t){t.stopPropagation()}}},[n("div",{staticClass:"k-search-input"},[n("k-dropdown",{staticClass:"k-search-types"},[n("k-button",{attrs:{icon:t.type.icon},on:{click:function(e){return t.$refs.types.toggle()}}},[t._v(t._s(t.type.label)+":")]),n("k-dropdown-content",{ref:"types"},t._l(t.types,function(e,i){return n("k-dropdown-item",{key:i,attrs:{icon:e.icon},on:{click:function(e){t.currentType=i}}},[t._v("\n "+t._s(e.label)+"\n ")])}),1)],1),n("input",{directives:[{name:"model",rawName:"v-model",value:t.q,expression:"q"}],ref:"input",attrs:{placeholder:t.$t("search")+" …","aria-label":"$t('search')",type:"text"},domProps:{value:t.q},on:{keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"down",40,e.key,["Down","ArrowDown"])?null:(e.preventDefault(),t.down(e))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"up",38,e.key,["Up","ArrowUp"])?null:(e.preventDefault(),t.up(e))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"tab",9,e.key,"Tab")?null:(e.preventDefault(),t.tab(e))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.enter(e)},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"esc",27,e.key,["Esc","Escape"])?null:t.close(e)}],input:function(e){e.target.composing||(t.q=e.target.value)}}}),n("k-button",{staticClass:"k-search-close",attrs:{tooltip:t.$t("close"),icon:"cancel"},on:{click:t.close}})],1),n("ul",t._l(t.items,function(e,i){return n("li",{key:e.id,attrs:{"data-selected":t.selected===i},on:{mouseover:function(e){t.selected=i}}},[n("k-link",{attrs:{to:e.link},on:{click:function(e){return t.click(i)}}},[n("strong",[t._v(t._s(e.title))]),n("small",[t._v(t._s(e.info))])])],1)}),0)])])},Sf=[],Ef={data:function(){return{items:[],q:null,selected:-1,currentType:"users"===this.$store.state.view?"users":"pages"}},computed:{type:function(){return this.types[this.currentType]||this.types["pages"]},types:function(){return{pages:{label:this.$t("pages"),icon:"page",endpoint:"site/search"},users:{label:this.$t("users"),icon:"users",endpoint:"users/search"}}}},watch:{q:wt(function(t){this.search(t)},200),currentType:function(){this.search(this.q)}},mounted:function(){var t=this;this.$nextTick(function(){t.$refs.input.focus()})},methods:{open:function(t){t.preventDefault(),this.$store.dispatch("search",!0)},click:function(t){this.selected=t,this.tab()},close:function(){this.$store.dispatch("search",!1)},down:function(){this.selected=0&&this.selected--}}},jf=Ef,Tf=(n("4cb2"),Object(_["a"])(jf,Cf,Sf,!1,null,null,null)),If=Tf.exports,Lf=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",{ref:"button",staticClass:"k-tag",attrs:{"data-size":t.size,tabindex:"0"},on:{keydown:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"delete",[8,46],e.key,["Backspace","Delete","Del"])?null:(e.preventDefault(),t.remove(e))}}},[n("span",{staticClass:"k-tag-text"},[t._t("default")],2),t.removable?n("span",{staticClass:"k-tag-toggle",on:{click:t.remove}},[t._v("×")]):t._e()])},qf=[],Af={props:{removable:Boolean,size:String},methods:{remove:function(){this.removable&&this.$emit("remove")},focus:function(){this.$refs.button.focus()}}},Nf=Af,Bf=(n("021f"),Object(_["a"])(Nf,Lf,qf,!1,null,null,null)),Pf=Bf.exports,Df=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.user&&t.view?n("div",{staticClass:"k-topbar"},[n("k-view",[n("div",{staticClass:"k-topbar-wrapper"},[n("k-dropdown",{staticClass:"k-topbar-menu"},[n("k-button",{staticClass:"k-topbar-button k-topbar-menu-button",attrs:{tooltip:t.$t("menu"),icon:"bars"},on:{click:function(e){return t.$refs.menu.toggle()}}},[n("k-icon",{attrs:{type:"angle-down"}})],1),n("k-dropdown-content",{ref:"menu",staticClass:"k-topbar-menu"},[n("ul",[t._l(t.views,function(e,i){return e.menu?n("li",{key:"menu-item-"+i,attrs:{"aria-current":t.$store.state.view===i}},[n("k-dropdown-item",{attrs:{disabled:!1===t.$permissions.access[i],icon:e.icon,link:e.link}},[t._v("\n "+t._s(t.menuTitle(e,i))+"\n ")])],1):t._e()}),n("li",[n("hr")]),n("li",{attrs:{"aria-current":"account"===t.$route.meta.view}},[n("k-dropdown-item",{attrs:{icon:"account",link:"/account"}},[t._v("\n "+t._s(t.$t("view.account"))+"\n ")])],1),n("li",[n("hr")]),n("li",[n("k-dropdown-item",{attrs:{icon:"logout",link:"/logout"}},[t._v("\n "+t._s(t.$t("logout"))+"\n ")])],1)],2)])],1),t.view?n("k-link",{staticClass:"k-topbar-button k-topbar-view-button",attrs:{to:t.view.link}},[n("k-icon",{attrs:{type:t.view.icon}}),t._v(" "+t._s(t.breadcrumbTitle)+"\n ")],1):t._e(),t.$store.state.breadcrumb.length>1?n("k-dropdown",{staticClass:"k-topbar-breadcrumb-menu"},[n("k-button",{staticClass:"k-topbar-button",on:{click:function(e){return t.$refs.crumb.toggle()}}},[t._v("\n …\n "),n("k-icon",{attrs:{type:"angle-down"}})],1),n("k-dropdown-content",{ref:"crumb"},[n("k-dropdown-item",{attrs:{icon:t.view.icon,link:t.view.link}},[t._v("\n "+t._s(t.$t("view."+t.$store.state.view,t.view.label))+"\n ")]),t._l(t.$store.state.breadcrumb,function(e,i){return n("k-dropdown-item",{key:"crumb-"+i+"-dropdown",attrs:{icon:t.view.icon,link:e.link}},[t._v("\n "+t._s(e.label)+"\n ")])})],2)],1):t._e(),n("nav",{staticClass:"k-topbar-crumbs"},t._l(t.$store.state.breadcrumb,function(e,i){return n("k-link",{key:"crumb-"+i,attrs:{to:e.link}},[t._v("\n "+t._s(e.label)+"\n ")])}),1),n("div",{staticClass:"k-topbar-signals"},[n("span",{directives:[{name:"show",rawName:"v-show",value:t.$store.state.isLoading,expression:"$store.state.isLoading"}],staticClass:"k-topbar-loader"},[n("svg",{attrs:{viewBox:"0 0 16 18"}},[n("path",{attrs:{fill:"white",d:"M8,0 L16,4.50265232 L16,13.5112142 L8,18.0138665 L0,13.5112142 L0,4.50265232 L8,0 Z M2.10648757,5.69852516 L2.10648757,12.3153414 L8,15.632396 L13.8935124,12.3153414 L13.8935124,5.69852516 L8,2.38147048 L2.10648757,5.69852516 Z"}})])]),t.notification?[n("k-button",{staticClass:"k-topbar-notification k-topbar-signals-button",attrs:{theme:"positive"},on:{click:function(e){return t.$store.dispatch("notification/close")}}},[t._v("\n "+t._s(t.notification.message)+"\n ")])]:t.unregistered?[n("div",{staticClass:"k-registration"},[n("p",[t._v(t._s(t.$t("license.unregistered")))]),n("k-button",{staticClass:"k-topbar-signals-button",attrs:{responsive:!0,tooltip:t.$t("license.unregistered"),icon:"key"},on:{click:function(e){return t.$emit("register")}}},[t._v("\n "+t._s(t.$t("license.register"))+"\n ")]),n("k-button",{staticClass:"k-topbar-signals-button",attrs:{responsive:!0,link:"https://getkirby.com/buy",target:"_blank",icon:"cart"}},[t._v("\n "+t._s(t.$t("license.buy"))+"\n ")])],1)]:t._e(),[n("k-form-indicator")],n("k-button",{staticClass:"k-topbar-signals-button",attrs:{tooltip:t.$t("search"),icon:"search"},on:{click:function(e){return t.$store.dispatch("search",!0)}}})],2)],1)])],1):t._e()},Rf=[],Mf=Object(I["a"])({site:{link:"/site",icon:"page",menu:!0},users:{link:"/users",icon:"users",menu:!0},settings:{link:"/settings",icon:"settings",menu:!0},account:{link:"/account",icon:"users",menu:!1}},window.panel.plugins.views),zf={computed:{breadcrumbTitle:function(){var t=this.$t("view.".concat(this.$store.state.view),this.view.label);return"site"===this.$store.state.view&&this.$store.state.system.info.title||t},view:function(){return Mf[this.$store.state.view]},views:function(){return Mf},user:function(){return this.$store.state.user.current},notification:function(){return this.$store.state.notification.type&&"error"!==this.$store.state.notification.type?this.$store.state.notification:null},unregistered:function(){return!this.$store.state.system.info.license}},methods:{menuTitle:function(t,e){var n=this.$t("view."+e,t.label);return"site"===e&&this.$store.state.system.info.site||n}}},Uf=zf,Ff=(n("1e3b"),Object(_["a"])(Uf,Df,Rf,!1,null,null,null)),Hf=Ff.exports,Kf=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-grid",{staticClass:"k-sections",attrs:{gutter:"large"}},t._l(t.columns,function(e,i){return n("k-column",{key:t.parent+"-column-"+i,attrs:{width:e.width,sticky:e.sticky}},[t._l(e.sections,function(s,a){return t.meetsCondition(s)?[t.exists(s.type)?n("k-"+s.type+"-section",t._b({key:t.parent+"-column-"+i+"-section-"+a+"-"+t.blueprint,tag:"component",class:"k-section k-section-name-"+s.name,attrs:{name:s.name,parent:t.parent,blueprint:t.blueprint,column:e.width},on:{submit:function(e){return t.$emit("submit",e)}}},"component",s,!1)):[n("k-box",{key:t.parent+"-column-"+i+"-section-"+a,attrs:{text:t.$t("error.section.type.invalid",{type:s.type}),theme:"negative"}})]]:t._e()})],2)}),1)},Vf=[],Yf={props:{parent:String,blueprint:String,columns:[Array,Object]},computed:{content:function(){return this.$store.getters["content/values"]()}},methods:{exists:function(t){return z["a"].options.components["k-"+t+"-section"]},meetsCondition:function(t){var e=this;if(!t.when)return!0;var n=!0;return kt()(t.when).forEach(function(i){var s=e.content[i.toLowerCase()],a=t.when[i];s!==a&&(n=!1)}),n}}},Wf=Yf,Gf=(n("6bcd"),Object(_["a"])(Wf,Kf,Vf,!1,null,null,null)),Jf=Gf.exports,Zf=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("section",{staticClass:"k-info-section"},[n("k-headline",{staticClass:"k-info-section-headline"},[t._v(t._s(t.headline))]),n("k-box",{attrs:{theme:t.theme}},[n("k-text",{domProps:{innerHTML:t._s(t.text)}})],1)],1)},Xf=[],Qf={props:{blueprint:String,help:String,name:String,parent:String},methods:{load:function(){return this.$api.get(this.parent+"/sections/"+this.name)}}},th={mixins:[Qf],data:function(){return{headline:null,issue:null,text:null,theme:null}},created:function(){var t=this;this.load().then(function(e){t.headline=e.options.headline,t.text=e.options.text,t.theme=e.options.theme||"info"}).catch(function(e){t.issue=e})}},eh=th,nh=(n("4333"),Object(_["a"])(eh,Zf,Xf,!1,null,null,null)),ih=nh.exports,sh=function(){var t=this,e=t.$createElement,n=t._self._c||e;return!1===t.isLoading?n("section",{staticClass:"k-pages-section"},[n("header",{staticClass:"k-section-header"},[n("k-headline",{attrs:{link:t.options.link}},[t._v("\n "+t._s(t.headline)+" "),t.options.min?n("abbr",{attrs:{title:t.$t("section.required")}},[t._v("*")]):t._e()]),t.add?n("k-button-group",[n("k-button",{attrs:{icon:"add"},on:{click:t.create}},[t._v(t._s(t.$t("add")))])],1):t._e()],1),t.error?[n("k-box",{attrs:{theme:"negative"}},[n("k-text",{attrs:{size:"small"}},[n("strong",[t._v("\n "+t._s(t.$t("error.section.notLoaded",{name:t.name}))+":\n ")]),t._v("\n "+t._s(t.error)+"\n ")])],1)]:[t.data.length?n("k-collection",{attrs:{layout:t.options.layout,help:t.help,items:t.data,pagination:t.pagination,sortable:t.options.sortable,size:t.options.size,"data-invalid":t.isInvalid},on:{change:t.sort,paginate:t.paginate,action:t.action}}):[n("k-empty",{attrs:{layout:t.options.layout,"data-invalid":t.isInvalid,icon:"page"},on:{click:t.create}},[t._v("\n "+t._s(t.options.empty||t.$t("pages.empty"))+"\n ")]),n("footer",{staticClass:"k-collection-footer"},[t.help?n("k-text",{staticClass:"k-collection-help",attrs:{theme:"help"},domProps:{innerHTML:t._s(t.help)}}):t._e()],1)],n("k-page-create-dialog",{ref:"create"}),n("k-page-duplicate-dialog",{ref:"duplicate"}),n("k-page-rename-dialog",{ref:"rename",on:{success:t.update}}),n("k-page-url-dialog",{ref:"url",on:{success:t.update}}),n("k-page-status-dialog",{ref:"status",on:{success:t.update}}),n("k-page-template-dialog",{ref:"template",on:{success:t.update}}),n("k-page-remove-dialog",{ref:"remove",on:{success:t.update}})]],2):t._e()},ah=[],oh={inheritAttrs:!1,props:{blueprint:String,column:String,parent:String,name:String},data:function(){return{data:[],error:null,isLoading:!1,options:{empty:null,headline:null,help:null,layout:"list",link:null,max:null,min:null,size:null,sortable:null},pagination:{page:null}}},computed:{headline:function(){return this.options.headline||" "},help:function(){return this.options.help},isInvalid:function(){return!!(this.options.min&&this.data.lengththis.options.max)},language:function(){return this.$store.state.languages.current},paginationId:function(){return"kirby$pagination$"+this.parent+"/"+this.name}},watch:{language:function(){this.reload()}},methods:{items:function(t){return t},load:function(t){var e=this;t||(this.isLoading=!0),null===this.pagination.page&&(this.pagination.page=localStorage.getItem(this.paginationId)||1),this.$api.get(this.parent+"/sections/"+this.name,{page:this.pagination.page}).then(function(t){e.isLoading=!1,e.options=t.options,e.pagination=t.pagination,e.data=e.items(t.data)}).catch(function(t){e.isLoading=!1,e.error=t.message})},paginate:function(t){localStorage.setItem(this.paginationId,t.page),this.pagination=t,this.reload()},reload:function(){this.load(!0)}}},rh={mixins:[oh],computed:{add:function(){return this.options.add&&this.$permissions.pages.create}},created:function(){this.load(),this.$events.$on("page.changeStatus",this.reload)},destroyed:function(){this.$events.$off("page.changeStatus",this.reload)},methods:{create:function(){this.add&&this.$refs.create.open(this.options.link||this.parent,this.parent+"/children/blueprints",this.name)},action:function(t,e){var n=this;switch(e){case"duplicate":this.$refs.duplicate.open(t.id);break;case"preview":var i=window.open("","_blank");i.document.write="...",this.$api.pages.preview(t.id).then(function(t){i.location.href=t}).catch(function(t){n.$store.dispatch("notification/error",t)});break;case"rename":this.$refs.rename.open(t.id);break;case"url":this.$refs.url.open(t.id);break;case"status":this.$refs.status.open(t.id);break;case"template":this.$refs.template.open(t.id);break;case"remove":if(this.data.length<=this.options.min){var s=this.options.min>1?"plural":"singular";this.$store.dispatch("notification/error",{message:this.$t("error.section.pages.min."+s,{section:this.options.headline||this.name,min:this.options.min})});break}this.$refs.remove.open(t.id);break;default:throw new Error("Invalid action")}},items:function(t){var e=this;return t.map(function(t){var n=!1!==t.permissions.changeStatus;return t.flag={class:"k-status-flag k-status-flag-"+t.status,tooltip:n?e.$t("page.status"):"".concat(e.$t("page.status")," (").concat(e.$t("disabled"),")"),icon:n?"circle":"protected",disabled:!n,click:function(){e.action(t,"status")}},t.options=function(n){e.$api.pages.options(t.id,"list").then(function(t){return n(t)}).catch(function(t){e.$store.dispatch("notification/error",t)})},t.sortable=t.permissions.sort&&e.options.sortable,t.column=e.column,t})},sort:function(t){var e=this,n=null;if(t.added&&(n="added"),t.moved&&(n="moved"),n){var i=t[n].element,s=t[n].newIndex+1+this.pagination.offset;this.$api.pages.status(i.id,"listed",s).then(function(){e.$store.dispatch("notification/success",":)")}).catch(function(t){e.$store.dispatch("notification/error",{message:t.message,details:t.details}),e.reload()})}},update:function(){this.reload(),this.$events.$emit("model.update")}}},lh=rh,uh=Object(_["a"])(lh,sh,ah,!1,null,null,null),ch=uh.exports,dh=function(){var t=this,e=t.$createElement,n=t._self._c||e;return!1===t.isLoading?n("section",{staticClass:"k-files-section"},[n("header",{staticClass:"k-section-header"},[n("k-headline",[t._v("\n "+t._s(t.headline)+" "),t.options.min?n("abbr",{attrs:{title:t.$t("section.required")}},[t._v("*")]):t._e()]),t.add?n("k-button-group",[n("k-button",{attrs:{icon:"upload"},on:{click:t.upload}},[t._v(t._s(t.$t("add")))])],1):t._e()],1),t.error?[n("k-box",{attrs:{theme:"negative"}},[n("k-text",{attrs:{size:"small"}},[n("strong",[t._v(t._s(t.$t("error.section.notLoaded",{name:t.name}))+":")]),t._v("\n "+t._s(t.error)+"\n ")])],1)]:[n("k-dropzone",{attrs:{disabled:!1===t.add},on:{drop:t.drop}},[t.data.length?n("k-collection",{attrs:{help:t.help,items:t.data,layout:t.options.layout,pagination:t.pagination,sortable:t.options.sortable,size:t.options.size,"data-invalid":t.isInvalid},on:{sort:t.sort,paginate:t.paginate,action:t.action}}):[n("k-empty",{attrs:{layout:t.options.layout,"data-invalid":t.isInvalid,icon:"image"},on:{click:function(e){t.add&&t.upload()}}},[t._v("\n "+t._s(t.options.empty||t.$t("files.empty"))+"\n ")]),n("footer",{staticClass:"k-collection-footer"},[t.help?n("k-text",{staticClass:"k-collection-help",attrs:{theme:"help"},domProps:{innerHTML:t._s(t.help)}}):t._e()],1)]],2),n("k-file-rename-dialog",{ref:"rename",on:{success:t.update}}),n("k-file-remove-dialog",{ref:"remove",on:{success:t.update}}),n("k-upload",{ref:"upload",on:{success:t.uploaded,error:t.reload}})]],2):t._e()},ph=[],fh={mixins:[oh],computed:{add:function(){return!(!this.$permissions.files.create||!1===this.options.upload)&&this.options.upload}},created:function(){this.load(),this.$events.$on("model.update",this.reload)},destroyed:function(){this.$events.$off("model.update",this.reload)},methods:{action:function(t,e){switch(e){case"edit":this.$router.push(t.link);break;case"download":window.open(t.url);break;case"rename":this.$refs.rename.open(t.parent,t.filename);break;case"replace":this.$refs.upload.open({url:A.api+"/"+this.$api.files.url(t.parent,t.filename),accept:"."+t.extension+","+t.mime,multiple:!1});break;case"remove":if(this.data.length<=this.options.min){var n=this.options.min>1?"plural":"singular";this.$store.dispatch("notification/error",{message:this.$t("error.section.files.min."+n,{section:this.options.headline||this.name,min:this.options.min})});break}this.$refs.remove.open(t.parent,t.filename);break}},drop:function(t){if(!1===this.add)return!1;this.$refs.upload.drop(t,Object(I["a"])({},this.add,{url:A.api+"/"+this.add.api}))},items:function(t){var e=this;return t.map(function(t){return t.options=function(n){e.$api.files.options(t.parent,t.filename,"list").then(function(t){return n(t)}).catch(function(t){e.$store.dispatch("notification/error",t)})},t.sortable=e.options.sortable,t.column=e.column,t})},replace:function(t){this.$refs.upload.open({url:A.api+"/"+this.$api.files.url(t.parent,t.filename),accept:t.mime,multiple:!1})},sort:function(t){var e=this;if(!1===this.options.sortable)return!1;t=t.map(function(t){return t.id}),this.$api.patch(this.parent+"/files/sort",{files:t,index:this.pagination.offset}).then(function(){e.$store.dispatch("notification/success",":)")}).catch(function(t){e.reload(),e.$store.dispatch("notification/error",t.message)})},update:function(){this.$events.$emit("model.update")},upload:function(){if(!1===this.add)return!1;this.$refs.upload.open(Object(I["a"])({},this.add,{url:A.api+"/"+this.add.api}))},uploaded:function(){this.$events.$emit("file.create"),this.$events.$emit("model.update"),this.$store.dispatch("notification/success",":)")}}},hh=fh,mh=Object(_["a"])(hh,dh,ph,!1,null,null,null),gh=mh.exports,bh=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.isLoading?t._e():n("section",{staticClass:"k-fields-section"},[t.issue?[n("k-headline",{staticClass:"k-fields-issue-headline"},[t._v("Error")]),n("k-box",{attrs:{text:t.issue.message,theme:"negative"}})]:t._e(),n("k-form",{attrs:{fields:t.fields,validate:!0,value:t.values,disabled:null!==t.$store.state.content.status.lock},on:{input:t.input,submit:t.onSubmit}})],2)},vh=[],kh={mixins:[Qf],inheritAttrs:!1,data:function(){return{fields:{},isLoading:!0,issue:null}},computed:{language:function(){return this.$store.state.languages.current},values:function(){return this.$store.getters["content/values"]()}},watch:{language:function(){this.fetch()}},created:function(){this.fetch()},methods:{input:function(t,e,n){this.$store.dispatch("content/update",[n,t[n]])},fetch:function(){var t=this;this.$api.get(this.parent+"/sections/"+this.name).then(function(e){t.fields=e.fields,kt()(t.fields).forEach(function(e){t.fields[e].section=t.name,t.fields[e].endpoints={field:t.parent+"/fields/"+e,section:t.parent+"/sections/"+t.name,model:t.parent}}),t.isLoading=!1}).catch(function(e){t.issue=e,t.isLoading=!1})},onSubmit:function(t){this.$events.$emit("keydown.cmd.s",t)}}},$h=kh,_h=(n("7d5d"),Object(_["a"])($h,bh,vh,!1,null,null,null)),yh=_h.exports,xh=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-error-view",{staticClass:"k-browser-view"},[n("p",[t._v("\n We are really sorry, but your browser does not support\n all features required for the Kirby Panel.\n ")]),!1===t.hasFetchSupport?[n("p",[n("strong",[t._v("Fetch")]),n("br"),t._v("\n We use Javascript's new Fetch API. You can find a list of supported browsers for this feature on\n "),n("strong",[n("a",{attrs:{href:"https://caniuse.com/#feat=fetch"}},[t._v("caniuse.com")])])])]:t._e(),!1===t.hasGridSupport?[n("p",[n("strong",[t._v("CSS Grid")]),n("br"),t._v("\n We use CSS Grids for all our layouts. You can find a list of supported browsers for this feature on\n "),n("strong",[n("a",{attrs:{href:"https://caniuse.com/#feat=css-grid"}},[t._v("caniuse.com")])])])]:t._e()],2)},wh=[],Oh={grid:function(){return!(!window.CSS||!window.CSS.supports("display","grid"))},fetch:function(){return void 0!==window.fetch},all:function(){return this.fetch()&&this.grid()}},Ch={computed:{hasFetchSupport:function(){return Oh.fetch()},hasGridSupport:function(){return Oh.grid()}},created:function(){this.$store.dispatch("content/current",null),Oh.all()&&this.$router.push("/")}},Sh=Ch,Eh=(n("d6fc"),Object(_["a"])(Sh,xh,wh,!1,null,null,null)),jh=Eh.exports,Th=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-error-boundary",{key:t.plugin,scopedSlots:t._u([{key:"error",fn:function(e){var i=e.error;return n("k-error-view",{},[t._v("\n "+t._s(i.message||i)+"\n ")])}}])},[n("k-"+t.plugin+"-plugin-view",{tag:"component"})],1)},Ih=[],Lh={props:{plugin:String},beforeRouteEnter:function(t,e,n){n(function(t){t.$store.dispatch("breadcrumb",[]),t.$store.dispatch("content/current",null)})},watch:{plugin:{handler:function(){this.$store.dispatch("view",this.plugin)},immediate:!0}}},qh=Lh,Ah=Object(_["a"])(qh,Th,Ih,!1,null,null,null),Nh=Ah.exports,Bh=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-view",{staticClass:"k-error-view"},[n("div",{staticClass:"k-error-view-content"},[n("k-text",[n("p",[n("k-icon",{staticClass:"k-error-view-icon",attrs:{type:"alert"}})],1),n("p",[t._t("default")],2)])],1)])},Ph=[],Dh=(n("d221"),{}),Rh=Object(_["a"])(Dh,Bh,Ph,!1,null,null,null),Mh=Rh.exports,zh=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.issue?n("k-error-view",[t._v("\n "+t._s(t.issue.message)+"\n")]):n("div",{staticClass:"k-file-view"},[n("k-file-preview",{attrs:{file:t.file}}),n("k-view",{staticClass:"k-file-content",attrs:{"data-locked":t.isLocked}},[n("k-header",{attrs:{editable:t.permissions.changeName&&!t.isLocked,tabs:t.tabs,tab:t.tab},on:{edit:function(e){return t.action("rename")}}},[t._v("\n\n "+t._s(t.file.filename)+"\n\n "),n("k-button-group",{attrs:{slot:"left"},slot:"left"},[n("k-button",{attrs:{responsive:!0,icon:"open"},on:{click:function(e){return t.action("download")}}},[t._v("\n "+t._s(t.$t("open"))+"\n ")]),n("k-dropdown",[n("k-button",{attrs:{responsive:!0,disabled:t.isLocked,icon:"cog"},on:{click:function(e){return t.$refs.settings.toggle()}}},[t._v("\n "+t._s(t.$t("settings"))+"\n ")]),n("k-dropdown-content",{ref:"settings",attrs:{options:t.options},on:{action:t.action}})],1),n("k-languages-dropdown")],1),t.file.id?n("k-prev-next",{attrs:{slot:"right",prev:t.prev,next:t.next},slot:"right"}):t._e()],1),t.file.id?n("k-tabs",{key:t.tabsKey,ref:"tabs",attrs:{parent:t.$api.files.url(t.path,t.file.filename),tabs:t.tabs,blueprint:t.file.blueprint.name},on:{tab:function(e){t.tab=e}}}):t._e(),n("k-file-rename-dialog",{ref:"rename",on:{success:t.renamed}}),n("k-file-remove-dialog",{ref:"remove",on:{success:t.deleted}}),n("k-upload",{ref:"upload",attrs:{url:t.uploadApi,accept:t.file.mime,multiple:!1},on:{success:t.uploaded}})],1)],1)},Uh=[],Fh={computed:{isLocked:function(){return null!==this.$store.state.content.status.lock}},created:function(){this.fetch(),this.$events.$on("model.reload",this.fetch),this.$events.$on("keydown.left",this.toPrev),this.$events.$on("keydown.right",this.toNext)},destroyed:function(){this.$events.$off("model.reload",this.fetch),this.$events.$off("keydown.left",this.toPrev),this.$events.$off("keydown.right",this.toNext)},methods:{toPrev:function(t){this.prev&&"body"===t.target.localName&&this.$router.push(this.prev.link)},toNext:function(t){this.next&&"body"===t.target.localName&&this.$router.push(this.next.link)}}},Hh={mixins:[Fh],props:{path:{type:String},filename:{type:String,required:!0}},data:function(){return{name:"",file:{id:null,parent:null,filename:"",url:"",prev:null,next:null,panelIcon:null,panelImage:null,mime:null,content:{}},permissions:{changeName:!1,delete:!1},issue:null,tabs:[],tab:null,options:null}},computed:{uploadApi:function(){return A.api+"/"+this.path+"/files/"+this.filename},prev:function(){if(this.file.prev)return{link:this.$api.files.link(this.path,this.file.prev.filename),tooltip:this.file.prev.filename}},tabsKey:function(){return"file-"+this.file.id+"-tabs"},language:function(){return this.$store.state.languages.current},next:function(){if(this.file.next)return{link:this.$api.files.link(this.path,this.file.next.filename),tooltip:this.file.next.filename}}},watch:{language:function(){this.fetch()},filename:function(){this.fetch()}},methods:{fetch:function(){var t=this;this.$api.files.get(this.path,this.filename,{view:"panel"}).then(function(e){t.file=e,t.file.next=e.nextWithTemplate,t.file.prev=e.prevWithTemplate,t.file.url=e.url,t.name=e.name,t.tabs=e.blueprint.tabs,t.permissions=e.options,t.options=function(e){t.$api.files.options(t.path,t.file.filename).then(function(t){e(t)})},t.$store.dispatch("breadcrumb",t.$api.files.breadcrumb(t.file,t.$route.name)),t.$store.dispatch("title",t.filename),t.$store.dispatch("content/create",{id:"files/"+e.id,api:t.$api.files.link(t.path,t.filename),content:e.content})}).catch(function(e){window.console.error(e),t.issue=e})},action:function(t){switch(t){case"download":window.open(this.file.url);break;case"rename":this.$refs.rename.open(this.path,this.file.filename);break;case"replace":this.$refs.upload.open({url:A.api+"/"+this.$api.files.url(this.path,this.file.filename),accept:this.file.mime});break;case"remove":this.$refs.remove.open(this.path,this.file.filename);break}},deleted:function(){this.path?this.$router.push("/"+this.path):this.$router.push("/site")},renamed:function(t){this.$router.push(this.$api.files.link(this.path,t.filename))},uploaded:function(){this.fetch(),this.$store.dispatch("notification/success",":)")}}},Kh=Hh,Vh=Object(_["a"])(Kh,zh,Uh,!1,null,null,null),Yh=Vh.exports,Wh=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.system?n("k-view",{staticClass:"k-installation-view",attrs:{align:"center"}},["install"===t.state?n("form",{on:{submit:function(e){return e.preventDefault(),t.install(e)}}},[n("h1",{staticClass:"k-offscreen"},[t._v(t._s(t.$t("installation")))]),n("k-fieldset",{attrs:{fields:t.fields,novalidate:!0},model:{value:t.user,callback:function(e){t.user=e},expression:"user"}}),n("k-button",{attrs:{type:"submit",icon:"check"}},[t._v(t._s(t.$t("install")))])],1):"completed"===t.state?n("k-text",[n("k-headline",[t._v(t._s(t.$t("installation.completed")))]),n("k-link",{attrs:{to:"/login"}},[t._v(t._s(t.$t("login")))])],1):n("div",[t.system.isInstalled?t._e():n("k-headline",[t._v(t._s(t.$t("installation.issues.headline")))]),n("ul",{staticClass:"k-installation-issues"},[!1===t.system.isInstallable?n("li",[n("k-icon",{attrs:{type:"alert"}}),n("span",{domProps:{innerHTML:t._s(t.$t("installation.disabled"))}})],1):t._e(),!1===t.requirements.php?n("li",[n("k-icon",{attrs:{type:"alert"}}),n("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.php"))}})],1):t._e(),!1===t.requirements.server?n("li",[n("k-icon",{attrs:{type:"alert"}}),n("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.server"))}})],1):t._e(),!1===t.requirements.mbstring?n("li",[n("k-icon",{attrs:{type:"alert"}}),n("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.mbstring"))}})],1):t._e(),!1===t.requirements.curl?n("li",[n("k-icon",{attrs:{type:"alert"}}),n("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.curl"))}})],1):t._e(),!1===t.requirements.accounts?n("li",[n("k-icon",{attrs:{type:"alert"}}),n("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.accounts"))}})],1):t._e(),!1===t.requirements.content?n("li",[n("k-icon",{attrs:{type:"alert"}}),n("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.content"))}})],1):t._e(),!1===t.requirements.media?n("li",[n("k-icon",{attrs:{type:"alert"}}),n("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.media"))}})],1):t._e(),!1===t.requirements.sessions?n("li",[n("k-icon",{attrs:{type:"alert"}}),n("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.sessions"))}})],1):t._e()]),n("k-button",{attrs:{icon:"refresh"},on:{click:t.check}},[n("span",{domProps:{innerHTML:t._s(t.$t("retry"))}})])],1)],1):t._e()},Gh=[],Jh={data:function(){return{user:{name:"",email:"",language:"",password:"",role:"admin"},languages:[],system:null}},computed:{state:function(){return this.system.isOk&&this.system.isInstallable&&!this.system.isInstalled?"install":this.system.isOk&&this.system.isInstallable&&this.system.isInstalled?"completed":void 0},translation:function(){return this.$store.state.translation.current},requirements:function(){return this.system&&this.system.requirements?this.system.requirements:{}},fields:function(){return{email:{label:this.$t("email"),type:"email",link:!1,required:!0},password:{label:this.$t("password"),type:"password",placeholder:this.$t("password")+" …",required:!0},language:{label:this.$t("language"),type:"select",options:this.languages,icon:"globe",empty:!1,required:!0}}}},watch:{translation:{handler:function(t){this.user.language=t},immediate:!0},"user.language":function(t){this.$store.dispatch("translation/activate",t)}},created:function(){this.$store.dispatch("content/current",null),this.check()},methods:{install:function(){var t=this;this.$api.system.install(this.user).then(function(e){t.$store.dispatch("user/current",e),t.$store.dispatch("notification/success",t.$t("welcome")+"!"),t.$router.push("/")}).catch(function(e){t.$store.dispatch("notification/error",e)})},check:function(){var t=this;this.$store.dispatch("system/load",!0).then(function(e){!0===e.isInstalled&&e.isReady?t.$router.push("/login"):t.$api.translations.options().then(function(n){t.languages=n,t.system=e,t.$store.dispatch("title",t.$t("view.installation"))})})}}},Zh=Jh,Xh=(n("146c"),Object(_["a"])(Zh,Wh,Gh,!1,null,null,null)),Qh=Xh.exports,tm=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.issue?n("k-error-view",[t._v("\n "+t._s(t.issue.message)+"\n")]):t.ready?n("k-view",{staticClass:"k-login-view",attrs:{align:"center"}},[n("k-login-form")],1):t._e()},em=[],nm=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("form",{staticClass:"k-login-form",on:{submit:function(e){return e.preventDefault(),t.login(e)}}},[n("h1",{staticClass:"k-offscreen"},[t._v(t._s(t.$t("login")))]),t.issue?n("div",{staticClass:"k-login-alert",on:{click:function(e){t.issue=null}}},[n("span",[t._v(t._s(t.issue))]),n("k-icon",{attrs:{type:"alert"}})],1):t._e(),n("k-fieldset",{attrs:{novalidate:!0,fields:t.fields},model:{value:t.user,callback:function(e){t.user=e},expression:"user"}}),n("div",{staticClass:"k-login-buttons"},[n("span",{staticClass:"k-login-checkbox"},[n("k-checkbox-input",{attrs:{value:t.user.remember,label:t.$t("login.remember")},on:{input:function(e){t.user.remember=e}}})],1),n("k-button",{staticClass:"k-login-button",attrs:{icon:"check",type:"submit"}},[t._v("\n "+t._s(t.$t("login"))+" "),t.isLoading?[t._v("…")]:t._e()],2)],1)],1)},im=[],sm={data:function(){return{isLoading:!1,issue:"",user:{email:"",password:"",remember:!1}}},computed:{fields:function(){return{email:{autofocus:!0,label:this.$t("email"),type:"email",required:!0,link:!1},password:{label:this.$t("password"),type:"password",minLength:8,required:!0,autocomplete:"current-password",counter:!1}}}},methods:{login:function(){var t=this;this.issue=null,this.isLoading=!0,this.$store.dispatch("user/login",this.user).then(function(){t.$store.dispatch("system/load",!0).then(function(){t.$store.dispatch("notification/success",t.$t("welcome")),t.isLoading=!1})}).catch(function(){t.issue=t.$t("error.access.login"),t.isLoading=!1})}}},am=sm,om=Object(_["a"])(am,nm,im,!1,null,null,null),rm=om.exports,lm={components:{"k-login-form":window.panel.plugins.login||rm},data:function(){return{ready:!1,issue:null}},created:function(){var t=this;this.$store.dispatch("content/current",null),this.$store.dispatch("system/load").then(function(e){e.isReady||t.$router.push("/installation"),e.user&&e.user.id&&t.$router.push("/"),t.ready=!0,t.$store.dispatch("title",t.$t("login"))}).catch(function(e){t.issue=e})}},um=lm,cm=(n("24c1"),Object(_["a"])(um,tm,em,!1,null,null,null)),dm=cm.exports,pm=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.issue?n("k-error-view",[t._v("\n "+t._s(t.issue.message)+"\n")]):n("k-view",{staticClass:"k-page-view",attrs:{"data-locked":t.isLocked}},[n("k-header",{attrs:{tabs:t.tabs,tab:t.tab,editable:t.permissions.changeTitle&&!t.isLocked},on:{edit:function(e){return t.action("rename")}}},[t._v("\n "+t._s(t.page.title)+"\n "),n("k-button-group",{attrs:{slot:"left"},slot:"left"},[t.permissions.preview&&t.page.previewUrl?n("k-button",{attrs:{responsive:!0,link:t.page.previewUrl,target:"_blank",icon:"open"}},[t._v("\n "+t._s(t.$t("open"))+"\n ")]):t._e(),t.status?n("k-button",{class:["k-status-flag","k-status-flag-"+t.page.status],attrs:{disabled:!t.permissions.changeStatus||t.isLocked,icon:!t.permissions.changeStatus||t.isLocked?"protected":"circle",responsive:!0,tooltip:t.status.label},on:{click:function(e){return t.action("status")}}},[t._v("\n "+t._s(t.status.label)+"\n ")]):t._e(),n("k-dropdown",[n("k-button",{attrs:{responsive:!0,disabled:!0===t.isLocked,icon:"cog"},on:{click:function(e){return t.$refs.settings.toggle()}}},[t._v("\n "+t._s(t.$t("settings"))+"\n ")]),n("k-dropdown-content",{ref:"settings",attrs:{options:t.options},on:{action:t.action}})],1),n("k-languages-dropdown")],1),t.page.id?n("k-prev-next",{attrs:{slot:"right",prev:t.prev,next:t.next},slot:"right"}):t._e()],1),t.page.id?n("k-tabs",{key:t.tabsKey,ref:"tabs",attrs:{parent:t.$api.pages.url(t.page.id),blueprint:t.blueprint,tabs:t.tabs},on:{tab:t.onTab}}):t._e(),n("k-page-rename-dialog",{ref:"rename",on:{success:t.update}}),n("k-page-duplicate-dialog",{ref:"duplicate"}),n("k-page-url-dialog",{ref:"url"}),n("k-page-status-dialog",{ref:"status",on:{success:t.update}}),n("k-page-template-dialog",{ref:"template",on:{success:t.update}}),n("k-page-remove-dialog",{ref:"remove"})],1)},fm=[],hm={mixins:[Fh],props:{path:{type:String,required:!0}},data:function(){return{page:{title:"",id:null,prev:null,next:null,status:null},blueprint:null,preview:!0,permissions:{changeTitle:!1,changeStatus:!1},icon:"page",issue:null,tab:null,tabs:[],options:null}},computed:{language:function(){return this.$store.state.languages.current},next:function(){if(this.page.next)return{link:this.$api.pages.link(this.page.next.id),tooltip:this.page.next.title}},prev:function(){if(this.page.prev)return{link:this.$api.pages.link(this.page.prev.id),tooltip:this.page.prev.title}},status:function(){return null!==this.page.status?this.page.blueprint.status[this.page.status]:null},tabsKey:function(){return"page-"+this.page.id+"-tabs"}},watch:{language:function(){this.fetch()},path:function(){this.fetch()}},created:function(){this.$events.$on("page.changeSlug",this.update)},destroyed:function(){this.$events.$off("page.changeSlug",this.update)},methods:{action:function(t){switch(t){case"duplicate":this.$refs.duplicate.open(this.page.id);break;case"rename":this.$refs.rename.open(this.page.id);break;case"url":this.$refs.url.open(this.page.id);break;case"status":this.$refs.status.open(this.page.id);break;case"template":this.$refs.template.open(this.page.id);break;case"remove":this.$refs.remove.open(this.page.id);break;default:this.$store.dispatch("notification/error",this.$t("notification.notImplemented"));break}},fetch:function(){var t=this;this.$api.pages.get(this.path,{view:"panel"}).then(function(e){t.page=e,t.blueprint=e.blueprint.name,t.permissions=e.options,t.tabs=e.blueprint.tabs,t.options=function(e){t.$api.pages.options(t.page.id).then(function(t){e(t)})},t.$store.dispatch("breadcrumb",t.$api.pages.breadcrumb(e)),t.$store.dispatch("title",t.page.title),t.$store.dispatch("content/create",{id:"pages/"+t.page.id,api:t.$api.pages.link(t.page.id),content:t.page.content})}).catch(function(e){t.issue=e})},onTab:function(t){this.tab=t},update:function(){this.fetch(),this.$emit("model.update")}}},mm=hm,gm=(n("202d"),Object(_["a"])(mm,pm,fm,!1,null,null,null)),bm=gm.exports,vm=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-view",{staticClass:"k-settings-view"},[n("k-header",[t._v("\n "+t._s(t.$t("view.settings"))+"\n ")]),n("section",{staticClass:"k-system-info"},[n("header",[n("k-headline",[t._v("Kirby")])],1),n("ul",{staticClass:"k-system-info-box"},[n("li",[n("dl",[n("dt",[t._v(t._s(t.$t("license")))]),n("dd",[t.license?[t._v("\n "+t._s(t.license)+"\n ")]:n("p",[n("strong",{staticClass:"k-system-unregistered"},[t._v(t._s(t.$t("license.unregistered")))])])],2)])]),n("li",[n("dl",[n("dt",[t._v(t._s(t.$t("version")))]),n("dd",[t._v(t._s(t.$store.state.system.info.version))])])])])]),t.multilang?n("section",{staticClass:"k-languages"},[t.languages.length>0?[n("section",{staticClass:"k-languages-section"},[n("header",[n("k-headline",[t._v(t._s(t.$t("languages.default")))])],1),n("k-collection",{attrs:{items:t.defaultLanguage},on:{action:t.action}})],1),n("section",{staticClass:"k-languages-section"},[n("header",[n("k-headline",[t._v(t._s(t.$t("languages.secondary")))]),n("k-button",{attrs:{icon:"add"},on:{click:function(e){return t.$refs.create.open()}}},[t._v(t._s(t.$t("language.create")))])],1),t.translations.length?n("k-collection",{attrs:{items:t.translations},on:{action:t.action}}):n("k-empty",{attrs:{icon:"globe"},on:{click:function(e){return t.$refs.create.open()}}},[t._v(t._s(t.$t("languages.secondary.empty")))])],1)]:0===t.languages.length?[n("header",[n("k-headline",[t._v(t._s(t.$t("languages")))]),n("k-button",{attrs:{icon:"add"},on:{click:function(e){return t.$refs.create.open()}}},[t._v(t._s(t.$t("language.create")))])],1),n("k-empty",{attrs:{icon:"globe"},on:{click:function(e){return t.$refs.create.open()}}},[t._v(t._s(t.$t("languages.empty")))])]:t._e(),n("k-language-create-dialog",{ref:"create",on:{success:t.fetch}}),n("k-language-update-dialog",{ref:"update",on:{success:t.fetch}}),n("k-language-remove-dialog",{ref:"remove",on:{success:t.fetch}})],2):t._e()],1)},km=[],$m={data:function(){return{languages:[]}},computed:{defaultLanguage:function(){return this.languages.filter(function(t){return t.default})},multilang:function(){return this.$store.state.system.info.multilang},license:function(){return this.$store.state.system.info.license},translations:function(){return this.languages.filter(function(t){return!1===t.default})}},created:function(){this.$store.dispatch("content/current",null),this.$store.dispatch("title",this.$t("view.settings")),this.$store.dispatch("breadcrumb",[]),this.fetch()},methods:{fetch:function(){var t=this;!1!==this.multilang?this.$api.get("languages").then(function(e){t.languages=e.data.map(function(n){return{id:n.code,default:n.default,icon:{type:"globe",back:"black"},text:n.name,info:n.code,link:function(){t.$refs.update.open(n.code)},options:[{icon:"edit",text:t.$t("edit"),click:"update"},{icon:"trash",text:t.$t("delete"),disabled:n.default&&1!==e.data.length,click:"remove"}]}})}):this.languages=[]},action:function(t,e){switch(e){case"update":this.$refs.update.open(t.id);break;case"remove":this.$refs.remove.open(t.id);break}}}},_m=$m,ym=(n("9bd5"),Object(_["a"])(_m,vm,km,!1,null,null,null)),xm=ym.exports,wm=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.issue?n("k-error-view",[t._v("\n "+t._s(t.issue.message)+"\n")]):n("k-view",{key:"site-view",staticClass:"k-site-view",attrs:{"data-locked":t.isLocked}},[n("k-header",{attrs:{tabs:t.tabs,tab:t.tab,editable:t.permissions.changeTitle&&!t.isLocked},on:{edit:function(e){return t.action("rename")}}},[t._v("\n "+t._s(t.site.title)+"\n "),n("k-button-group",{attrs:{slot:"left"},slot:"left"},[n("k-button",{attrs:{responsive:!0,link:t.site.previewUrl,target:"_blank",icon:"open"}},[t._v("\n "+t._s(t.$t("open"))+"\n ")]),n("k-languages-dropdown")],1)],1),t.site.url?n("k-tabs",{ref:"tabs",attrs:{tabs:t.tabs,blueprint:t.site.blueprint.name,parent:"site"},on:{tab:function(e){t.tab=e}}}):t._e(),n("k-site-rename-dialog",{ref:"rename",on:{success:t.fetch}})],1)},Om=[],Cm={data:function(){return{site:{title:null,url:null},issue:null,tab:null,tabs:[],options:null,permissions:{changeTitle:!0}}},computed:{isLocked:function(){return null!==this.$store.state.content.status.lock},language:function(){return this.$store.state.languages.current}},watch:{language:function(){this.fetch()}},created:function(){this.fetch()},methods:{fetch:function(){var t=this;this.$api.site.get({view:"panel"}).then(function(e){t.site=e,t.tabs=e.blueprint.tabs,t.permissions=e.options,t.options=function(e){t.$api.site.options().then(function(t){e(t)})},t.$store.dispatch("breadcrumb",[]),t.$store.dispatch("title",null),t.$store.dispatch("content/create",{id:"site",api:"site",content:e.content})}).catch(function(e){t.issue=e})},action:function(t){switch(t){case"languages":this.$refs.languages.open();break;case"rename":this.$refs.rename.open();break;default:this.$store.dispatch("notification/error",this.$t("notification.notImplemented"));break}}}},Sm=Cm,Em=Object(_["a"])(Sm,wm,Om,!1,null,null,null),jm=Em.exports,Tm=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.issue?n("k-error-view",[t._v("\n "+t._s(t.issue.message)+"\n")]):n("k-view",{staticClass:"k-users-view"},[n("k-header",[t._v("\n "+t._s(t.$t("view.users"))+"\n "),n("k-button-group",{attrs:{slot:"left"},slot:"left"},[n("k-button",{attrs:{disabled:!1===t.$permissions.users.create,icon:"add"},on:{click:function(e){return t.$refs.create.open()}}},[t._v(t._s(t.$t("user.create")))])],1),n("k-button-group",{attrs:{slot:"right"},slot:"right"},[n("k-dropdown",[n("k-button",{attrs:{responsive:!0,icon:"funnel"},on:{click:function(e){return t.$refs.roles.toggle()}}},[t._v("\n "+t._s(t.$t("role"))+": "+t._s(t.role?t.role.text:t.$t("role.all"))+"\n ")]),n("k-dropdown-content",{ref:"roles",attrs:{align:"right"}},[n("k-dropdown-item",{attrs:{icon:"bolt"},on:{click:function(e){return t.filter(!1)}}},[t._v("\n "+t._s(t.$t("role.all"))+"\n ")]),n("hr"),t._l(t.roles,function(e){return n("k-dropdown-item",{key:e.value,attrs:{icon:"bolt"},on:{click:function(n){return t.filter(e)}}},[t._v("\n "+t._s(e.text)+"\n ")])})],2)],1)],1)],1),t.users.length>0?[n("k-collection",{attrs:{items:t.users,pagination:t.pagination},on:{paginate:t.paginate,action:t.action}})]:0===t.total?[n("k-empty",{attrs:{icon:"users"}},[t._v(t._s(t.$t("role.empty")))])]:t._e(),n("k-user-create-dialog",{ref:"create",on:{success:t.fetch}}),n("k-user-email-dialog",{ref:"email",on:{success:t.fetch}}),n("k-user-language-dialog",{ref:"language",on:{success:t.fetch}}),n("k-user-password-dialog",{ref:"password"}),n("k-user-remove-dialog",{ref:"remove",on:{success:t.fetch}}),n("k-user-rename-dialog",{ref:"rename",on:{success:t.fetch}}),n("k-user-role-dialog",{ref:"role",on:{success:t.fetch}})],2)},Im=[],Lm={data:function(){return{page:1,limit:20,total:null,users:[],roles:[],issue:null}},computed:{pagination:function(){return{page:this.page,limit:this.limit,total:this.total}},role:function(){var t=this,e=null;return this.$route.params.role&&this.roles.forEach(function(n){n.value===t.$route.params.role&&(e=n)}),e}},watch:{$route:function(){this.fetch()}},created:function(){var t=this;this.$store.dispatch("content/current",null),this.$api.roles.options().then(function(e){t.roles=e,t.fetch()})},methods:{fetch:function(){var t=this;this.$store.dispatch("title",this.$t("view.users"));var e={paginate:{page:this.page,limit:this.limit},sortBy:"username asc"};this.role&&(e.filterBy=[{field:"role",operator:"==",value:this.role.value}]),this.$api.users.list(e).then(function(e){t.users=e.data.map(function(e){var n={id:e.id,icon:{type:"user",back:"black"},text:e.name||e.email,info:e.role.title,link:"/users/"+e.id,options:function(n){t.$api.users.options(e.id,"list").then(function(t){return n(t)}).catch(function(e){t.$store.dispatch("notification/error",e)})},image:null};return e.avatar&&(n.image={url:e.avatar.url,cover:!0}),n}),t.role?t.$store.dispatch("breadcrumb",[{link:"/users/role/"+t.role.value,label:t.$t("role")+": "+t.role.text}]):t.$store.dispatch("breadcrumb",[]),t.total=e.pagination.total}).catch(function(e){t.issue=e})},paginate:function(t){this.page=t.page,this.limit=t.limit,this.fetch()},action:function(t,e){switch(e){case"edit":this.$router.push("/users/"+t.id);break;case"email":this.$refs.email.open(t.id);break;case"role":this.$refs.role.open(t.id);break;case"rename":this.$refs.rename.open(t.id);break;case"password":this.$refs.password.open(t.id);break;case"language":this.$refs.language.open(t.id);break;case"remove":this.$refs.remove.open(t.id);break}},filter:function(t){!1===t?this.$router.push("/users"):this.$router.push("/users/role/"+t.value),this.$refs.roles.close()}}},qm=Lm,Am=Object(_["a"])(qm,Tm,Im,!1,null,null,null),Nm=Am.exports,Bm=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.issue?n("k-error-view",[t._v("\n "+t._s(t.issue.message)+"\n")]):t.ready?n("div",{staticClass:"k-user-view",attrs:{"data-locked":t.isLocked}},[n("div",{staticClass:"k-user-profile"},[n("k-view",[t.avatar?[n("k-dropdown",[n("k-button",{staticClass:"k-user-view-image",attrs:{tooltip:t.$t("avatar"),disabled:t.isLocked},on:{click:function(e){return t.$refs.picture.toggle()}}},[t.avatar?n("k-image",{attrs:{cover:!0,src:t.avatar,ratio:"1/1"}}):t._e()],1),n("k-dropdown-content",{ref:"picture"},[n("k-dropdown-item",{attrs:{icon:"upload"},on:{click:function(e){return t.$refs.upload.open()}}},[t._v("\n "+t._s(t.$t("change"))+"\n ")]),n("k-dropdown-item",{attrs:{icon:"trash"},on:{click:function(e){return t.action("picture.delete")}}},[t._v("\n "+t._s(t.$t("delete"))+"\n ")])],1)],1)]:[n("k-button",{staticClass:"k-user-view-image",attrs:{tooltip:t.$t("avatar")},on:{click:function(e){return t.$refs.upload.open()}}},[n("k-icon",{attrs:{type:"user"}})],1)],n("k-button-group",[n("k-button",{attrs:{disabled:!t.permissions.changeEmail||t.isLocked,icon:"email"},on:{click:function(e){return t.action("email")}}},[t._v(t._s(t.$t("email"))+": "+t._s(t.user.email))]),n("k-button",{attrs:{disabled:!t.permissions.changeRole||t.isLocked,icon:"bolt"},on:{click:function(e){return t.action("role")}}},[t._v(t._s(t.$t("role"))+": "+t._s(t.user.role.title))]),n("k-button",{attrs:{disabled:!t.permissions.changeLanguage||t.isLocked,icon:"globe"},on:{click:function(e){return t.action("language")}}},[t._v(t._s(t.$t("language"))+": "+t._s(t.user.language))])],1)],2)],1),n("k-view",[n("k-header",{attrs:{editable:t.permissions.changeName&&!t.isLocked,tabs:t.tabs,tab:t.tab},on:{edit:function(e){return t.action("rename")}}},[t.user.name&&0!==t.user.name.length?[t._v(t._s(t.user.name))]:n("span",{staticClass:"k-user-name-placeholder"},[t._v(t._s(t.$t("name"))+" …")]),n("k-button-group",{attrs:{slot:"left"},slot:"left"},[n("k-dropdown",[n("k-button",{attrs:{disabled:t.isLocked,icon:"cog"},on:{click:function(e){return t.$refs.settings.toggle()}}},[t._v("\n "+t._s(t.$t("settings"))+"\n ")]),n("k-dropdown-content",{ref:"settings",attrs:{options:t.options},on:{action:t.action}})],1),n("k-languages-dropdown")],1),t.user.id&&"User"===t.$route.name?n("k-prev-next",{attrs:{slot:"right",prev:t.prev,next:t.next},slot:"right"}):t._e()],2),t.user&&t.tabs.length?n("k-tabs",{key:t.tabsKey,ref:"tabs",attrs:{parent:"users/"+t.user.id,blueprint:t.user.blueprint.name,tabs:t.tabs},on:{tab:function(e){t.tab=e}}}):t.ready?n("k-box",{attrs:{text:t.$t("user.blueprint",{role:t.user.role.name}),theme:"info"}}):t._e(),n("k-user-email-dialog",{ref:"email",on:{success:t.fetch}}),n("k-user-language-dialog",{ref:"language",on:{success:t.fetch}}),n("k-user-password-dialog",{ref:"password"}),n("k-user-remove-dialog",{ref:"remove"}),n("k-user-rename-dialog",{ref:"rename",on:{success:t.fetch}}),n("k-user-role-dialog",{ref:"role",on:{success:t.fetch}}),n("k-upload",{ref:"upload",attrs:{url:t.uploadApi,multiple:!1,accept:"image/*"},on:{success:t.uploadedAvatar}})],1)],1):t._e()},Pm=[],Dm={mixins:[Fh],props:{id:{type:String,required:!0}},data:function(){return{tab:null,tabs:[],ready:!1,user:{role:{name:null},name:null,language:null,prev:null,next:null},permissions:{changeEmail:!0,changeName:!0,changeLanguage:!0,changeRole:!0},issue:null,avatar:null,options:null}},computed:{language:function(){return this.$store.state.languages.current},next:function(){if(this.user.next)return{link:this.$api.users.link(this.user.next.id),tooltip:this.user.next.name}},prev:function(){if(this.user.prev)return{link:this.$api.users.link(this.user.prev.id),tooltip:this.user.prev.name}},tabsKey:function(){return"user-"+this.user.id+"-tabs"},uploadApi:function(){return A.api+"/users/"+this.user.id+"/avatar"}},watch:{"$route.name":{handler:function(t){"Account"===t&&this.$store.dispatch("breadcrumb",[])},immediate:!0},language:function(){this.fetch()},id:function(){this.fetch()}},methods:{action:function(t){var e=this;switch(t){case"email":this.$refs.email.open(this.user.id);break;case"language":this.$refs.language.open(this.user.id);break;case"password":this.$refs.password.open(this.user.id);break;case"picture.delete":this.$api.users.deleteAvatar(this.id).then(function(){e.$store.dispatch("notification/success",":)"),e.avatar=null});break;case"remove":this.$refs.remove.open(this.user.id);break;case"rename":this.$refs.rename.open(this.user.id);break;case"role":this.$refs.role.open(this.user.id);break;default:this.$store.dispatch("notification/error","Not yet implemented")}},fetch:function(){var t=this;this.$api.users.get(this.id,{view:"panel"}).then(function(e){t.user=e,t.tabs=e.blueprint.tabs,t.ready=!0,t.permissions=e.options,t.options=function(e){t.$api.users.options(t.user.id).then(function(t){e(t)})},e.avatar?t.avatar=e.avatar.url:t.avatar=null,"User"===t.$route.name&&t.$store.dispatch("breadcrumb",t.$api.users.breadcrumb(e)),t.$store.dispatch("title",t.user.name||t.user.email),t.$store.dispatch("content/create",{id:"users/"+e.id,api:t.$api.users.link(e.id),content:e.content})}).catch(function(e){t.issue=e})},uploadedAvatar:function(){this.$store.dispatch("notification/success",":)"),this.fetch()}}},Rm=Dm,Mm=(n("bd96"),Object(_["a"])(Rm,Bm,Pm,!1,null,null,null)),zm=Mm.exports;z["a"].component("k-dialog",Z),z["a"].component("k-error-dialog",it),z["a"].component("k-file-rename-dialog",mt),z["a"].component("k-file-remove-dialog",ut),z["a"].component("k-files-dialog",jt),z["a"].component("k-language-create-dialog",Nt),z["a"].component("k-language-remove-dialog",zt),z["a"].component("k-language-update-dialog",Wt),z["a"].component("k-page-create-dialog",te),z["a"].component("k-page-duplicate-dialog",oe),z["a"].component("k-page-rename-dialog",ve),z["a"].component("k-page-remove-dialog",pe),z["a"].component("k-page-status-dialog",we),z["a"].component("k-page-template-dialog",Te),z["a"].component("k-page-url-dialog",Be),z["a"].component("k-pages-dialog",Ue),z["a"].component("k-site-rename-dialog",Ve),z["a"].component("k-user-create-dialog",tn),z["a"].component("k-user-email-dialog",rn),z["a"].component("k-user-language-dialog",fn),z["a"].component("k-user-password-dialog",kn),z["a"].component("k-user-remove-dialog",On),z["a"].component("k-user-rename-dialog",In),z["a"].component("k-user-role-dialog",Pn),z["a"].component("k-users-dialog",Fn),z["a"].component("k-calendar",ei),z["a"].component("k-counter",ri),z["a"].component("k-autocomplete",Gn),z["a"].component("k-form",fi),z["a"].component("k-form-buttons",$i),z["a"].component("k-form-indicator",Ci),z["a"].component("k-field",Li),z["a"].component("k-fieldset",Di),z["a"].component("k-input",Hi),z["a"].component("k-upload",Xi),z["a"].component("k-checkbox-input",as),z["a"].component("k-checkboxes-input",ds),z["a"].component("k-date-input",ks),z["a"].component("k-datetime-input",Os),z["a"].component("k-email-input",Ns),z["a"].component("k-multiselect-input",zs),z["a"].component("k-number-input",Zs),z["a"].component("k-password-input",ea),z["a"].component("k-radio-input",ra),z["a"].component("k-range-input",fa),z["a"].component("k-select-input",ka),z["a"].component("k-tags-input",Oa),z["a"].component("k-tel-input",ja),z["a"].component("k-text-input",Is),z["a"].component("k-textarea-input",Na),z["a"].component("k-time-input",za),z["a"].component("k-toggle-input",Ya),z["a"].component("k-url-input",Za),z["a"].component("k-checkboxes-field",io),z["a"].component("k-date-field",uo),z["a"].component("k-email-field",go),z["a"].component("k-files-field",xo),z["a"].component("k-headline-field",jo),z["a"].component("k-info-field",No),z["a"].component("k-line-field",Mo),z["a"].component("k-multiselect-field",Vo),z["a"].component("k-number-field",Xo),z["a"].component("k-pages-field",sr),z["a"].component("k-password-field",cr),z["a"].component("k-radio-field",gr),z["a"].component("k-range-field",yr),z["a"].component("k-select-field",Er),z["a"].component("k-structure-field",Dr),z["a"].component("k-tags-field",Hr),z["a"].component("k-text-field",nl),z["a"].component("k-textarea-field",ll),z["a"].component("k-tel-field",Jr),z["a"].component("k-time-field",hl),z["a"].component("k-toggle-field",$l),z["a"].component("k-url-field",Cl),z["a"].component("k-users-field",Ll),z["a"].component("k-toolbar",Rl),z["a"].component("k-toolbar-email-dialog",Kl),z["a"].component("k-toolbar-link-dialog",Zl),z["a"].component("k-email-field-preview",hu),z["a"].component("k-files-field-preview",su),z["a"].component("k-pages-field-preview",$u),z["a"].component("k-toggle-field-preview",Cu),z["a"].component("k-url-field-preview",cu),z["a"].component("k-users-field-preview",Lu),z["a"].component("k-bar",Pu),z["a"].component("k-box",Fu),z["a"].component("k-card",Gu),z["a"].component("k-cards",ec),z["a"].component("k-collection",rc),z["a"].component("k-column",fc),z["a"].component("k-dropzone",kc),z["a"].component("k-empty",Oc),z["a"].component("k-file-preview",Ic),z["a"].component("k-grid",Pc),z["a"].component("k-header",Fc),z["a"].component("k-list",Gc),z["a"].component("k-list-item",ed),z["a"].component("k-tabs",rd),z["a"].component("k-view",fd),z["a"].component("k-draggable",_d),z["a"].component("k-error-boundary",Od),z["a"].component("k-headline",Id),z["a"].component("k-icon",Pd),z["a"].component("k-image",Fd),z["a"].component("k-progress",Gd),z["a"].component("k-sort-handle",tp),z["a"].component("k-text",op),z["a"].component("k-button",pp),z["a"].component("k-button-disabled",vp),z["a"].component("k-button-group",xp),z["a"].component("k-button-link",jp),z["a"].component("k-button-native",Bp),z["a"].component("k-dropdown",zp),z["a"].component("k-dropdown-content",Wp),z["a"].component("k-dropdown-item",tf),z["a"].component("k-languages-dropdown",ff),z["a"].component("k-link",rf),z["a"].component("k-pagination",kf),z["a"].component("k-prev-next",Of),z["a"].component("k-search",If),z["a"].component("k-tag",Pf),z["a"].component("k-topbar",Hf),z["a"].component("k-sections",Jf),z["a"].component("k-info-section",ih),z["a"].component("k-pages-section",ch),z["a"].component("k-files-section",gh),z["a"].component("k-fields-section",yh),z["a"].component("k-browser-view",jh),z["a"].component("k-custom-view",Nh),z["a"].component("k-error-view",Mh),z["a"].component("k-file-view",Yh),z["a"].component("k-installation-view",Qh),z["a"].component("k-login-view",dm),z["a"].component("k-page-view",bm),z["a"].component("k-settings-view",xm),z["a"].component("k-site-view",jm),z["a"].component("k-users-view",Nm),z["a"].component("k-user-view",zm);var Um={user:function(){return gg.get("auth")},login:function(t){var e={long:t.remember||!1,email:t.email,password:t.password};return gg.post("auth/login",e).then(function(t){return t.user})},logout:function(){return gg.post("auth/logout")}},Fm={get:function(t,e,n){return gg.get(this.url(t,e),n).then(function(t){return!0===xt()(t.content)&&(t.content={}),t})},update:function(t,e,n){return gg.patch(this.url(t,e),n)},rename:function(t,e,n){return gg.patch(this.url(t,e,"name"),{name:n})},url:function(t,e,n){var i=t+"/files/"+e;return n&&(i+="/"+n),i},link:function(t,e,n){return"/"+this.url(t,e,n)},delete:function(t,e){return gg.delete(this.url(t,e))},options:function(t,e,n){return gg.get(this.url(t,e),{select:"options"}).then(function(t){var e=t.options,i=[];return"list"===n&&i.push({icon:"open",text:z["a"].i18n.translate("open"),click:"download"}),i.push({icon:"title",text:z["a"].i18n.translate("rename"),click:"rename",disabled:!e.changeName}),i.push({icon:"upload",text:z["a"].i18n.translate("replace"),click:"replace",disabled:!e.replace}),i.push({icon:"trash",text:z["a"].i18n.translate("delete"),click:"remove",disabled:!e.delete}),i})},breadcrumb:function(t,e){var n=null,i=[];switch(e){case"UserFile":i.push({label:t.parent.username,link:gg.users.link(t.parent.id)}),n="users/"+t.parent.id;break;case"SiteFile":n="site";break;case"PageFile":i=t.parents.map(function(t){return{label:t.title,link:gg.pages.link(t.id)}}),n=gg.pages.url(t.parent.id);break}return i.push({label:t.filename,link:this.link(n,t.filename)}),i}},Hm={create:function(t,e){return null===t||"/"===t?gg.post("site/children",e):gg.post(this.url(t,"children"),e)},duplicate:function(t,e,n){return gg.post(this.url(t,"duplicate"),{slug:e,children:n.children||!1,files:n.files||!1})},url:function(t,e){var n=null===t?"pages":"pages/"+t.replace(/\//g,"+");return e&&(n+="/"+e),n},link:function(t){return"/"+this.url(t)},get:function(t,e){return gg.get(this.url(t),e).then(function(t){return!0===xt()(t.content)&&(t.content={}),t})},options:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"view";return gg.get(this.url(t),{select:"options"}).then(function(t){var n=t.options,i=[];return"list"===e&&(i.push({click:"preview",icon:"open",text:z["a"].i18n.translate("open"),disabled:!1===n.preview}),i.push("-")),i.push({click:"rename",icon:"title",text:z["a"].i18n.translate("rename"),disabled:!n.changeTitle}),i.push({click:"duplicate",icon:"copy",text:z["a"].i18n.translate("duplicate"),disabled:!n.duplicate}),i.push("-"),i.push({click:"url",icon:"url",text:z["a"].i18n.translate("page.changeSlug"),disabled:!n.changeSlug}),i.push({click:"status",icon:"preview",text:z["a"].i18n.translate("page.changeStatus"),disabled:!n.changeStatus}),i.push({click:"template",icon:"template",text:z["a"].i18n.translate("page.changeTemplate"),disabled:!n.changeTemplate}),i.push("-"),i.push({click:"remove",icon:"trash",text:z["a"].i18n.translate("delete"),disabled:!n.delete}),i})},preview:function(t){return this.get(t,{select:"previewUrl"}).then(function(t){return t.previewUrl})},update:function(t,e){return gg.patch(this.url(t),e)},children:function(t,e){return gg.post(this.url(t,"children/search"),e)},files:function(t,e){return gg.post(this.url(t,"files/search"),e)},delete:function(t,e){return gg.delete(this.url(t),e)},slug:function(t,e){return gg.patch(this.url(t,"slug"),{slug:e})},title:function(t,e){return gg.patch(this.url(t,"title"),{title:e})},template:function(t,e){return gg.patch(this.url(t,"template"),{template:e})},search:function(t,e){return t?gg.post("pages/"+t.replace("/","+")+"/children/search?select=id,title,hasChildren",e):gg.post("site/children/search?select=id,title,hasChildren",e)},status:function(t,e,n){return gg.patch(this.url(t,"status"),{status:e,position:n})},breadcrumb:function(t){var e=this,n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=t.parents.map(function(t){return{label:t.title,link:e.link(t.id)}});return!0===n&&i.push({label:t.title,link:this.link(t.id)}),i}},Km=n("f499"),Vm=n.n(Km),Ym=n("2f62"),Wm=n("768b"),Gm=function(t){if(void 0!==t)return JSON.parse(Vm()(t))},Jm=function(t,e){localStorage.setItem("kirby$content$"+t,Vm()(e))},Zm={namespaced:!0,state:{current:null,models:{},status:{enabled:!0,lock:null,unlock:null}},getters:{exists:function(t){return function(e){return t.models.hasOwnProperty(e)}},hasChanges:function(t,e){return function(t){var n=e.model(t).changes;return kt()(n).length>0}},isCurrent:function(t){return function(e){return t.current===e}},id:function(t,e,n){return function(e){return e=e||t.current,n.languages.current?e+"/"+n.languages.current.code:e}},model:function(t,e){return function(n){return n=n||t.current,!0===e.exists(n)?t.models[n]:{api:null,originals:{},values:{},changes:{}}}},originals:function(t,e){return function(t){return Gm(e.model(t).originals)}},values:function(t,e){return function(t){return Object(I["a"])({},e.originals(t),e.changes(t))}},changes:function(t,e){return function(t){return Gm(e.model(t).changes)}}},mutations:{CREATE:function(t,e){var n=Object(Wm["a"])(e,2),i=n[0],s=n[1];if(!s)return!1;var a=t.models[i]?t.models[i].changes:s.changes;z["a"].set(t.models,i,{api:s.api,originals:s.originals,changes:a||{}})},CURRENT:function(t,e){t.current=e},LOCK:function(t,e){z["a"].set(t.status,"lock",e)},MOVE:function(t,e){var n=Object(Wm["a"])(e,2),i=n[0],s=n[1],a=Gm(t.models[i]);z["a"].delete(t.models,i),z["a"].set(t.models,s,a);var o=localStorage.getItem("kirby$content$"+i);localStorage.removeItem("kirby$content$"+i),localStorage.setItem("kirby$content$"+s,o)},REMOVE:function(t,e){z["a"].delete(t.models,e),localStorage.removeItem("kirby$content$"+e)},REVERT:function(t,e){t.models[e]&&(z["a"].set(t.models[e],"changes",{}),localStorage.removeItem("kirby$content$"+e))},STATUS:function(t,e){z["a"].set(t.status,"enabled",e)},UNLOCK:function(t,e){e&&z["a"].set(t.models[t.current],"changes",{}),z["a"].set(t.status,"unlock",e)},UPDATE:function(t,e){var n=Object(Wm["a"])(e,3),i=n[0],s=n[1],a=n[2];if(!t.models[i])return!1;a=Gm(a);var o=Vm()(a),r=Vm()(t.models[i].originals[s]);r===o?z["a"].delete(t.models[i].changes,s):z["a"].set(t.models[i].changes,s,a),Jm(i,{api:t.models[i].api,originals:t.models[i].originals,changes:t.models[i].changes})}},actions:{init:function(t){kt()(localStorage).filter(function(t){return t.startsWith("kirby$content$")}).map(function(t){return t.split("kirby$content$")[1]}).forEach(function(e){var n=localStorage.getItem("kirby$content$"+e);t.commit("CREATE",[e,JSON.parse(n)])}),kt()(localStorage).filter(function(t){return t.startsWith("kirby$form$")}).map(function(t){return t.split("kirby$form$")[1]}).forEach(function(e){var n=localStorage.getItem("kirby$form$"+e),i=null;try{i=JSON.parse(n)}catch(a){}if(!i||!i.api)return localStorage.removeItem("kirby$form$"+e),!1;var s={api:i.api,originals:i.originals,changes:i.values};t.commit("CREATE",[e,s]),Jm(e,s),localStorage.removeItem("kirby$form$"+e)})},create:function(t,e){e.id=t.getters.id(e.id),(e.id.startsWith("pages/")||e.id.startsWith("site"))&&delete e.content.title;var n={api:e.api,originals:Gm(e.content),changes:{}};gg.get(e.api+"/unlock").then(function(n){!0===n.supported&&!0===n.unlocked&&t.commit("UNLOCK",t.state.models[e.id].changes)}).catch(function(){}),t.commit("CREATE",[e.id,n]),t.dispatch("current",e.id)},current:function(t,e){t.commit("CURRENT",e)},disable:function(t){t.commit("STATUS",!1)},enable:function(t){t.commit("STATUS",!0)},lock:function(t,e){t.commit("LOCK",e)},move:function(t,e){var n=Object(Wm["a"])(e,2),i=n[0],s=n[1];i=t.getters.id(i),s=t.getters.id(s),t.commit("MOVE",[i,s])},remove:function(t,e){t.commit("REMOVE",e),t.getters.isCurrent(e)&&t.commit("CURRENT",null)},revert:function(t,e){e=e||t.state.current,t.commit("REVERT",e)},save:function(t,e){if(e=e||t.state.current,t.getters.isCurrent(e)&&!1===t.state.status.enabled)return!1;t.dispatch("disable");var n=t.getters.model(e),i=Object(I["a"])({},n.originals,n.changes);return gg.patch(n.api,i).then(function(){t.commit("CREATE",[e,Object(I["a"])({},n,{originals:i})]),t.dispatch("revert",e),t.dispatch("enable")}).catch(function(e){throw t.dispatch("enable"),e})},unlock:function(t,e){t.commit("UNLOCK",e)},update:function(t,e){var n=Object(Wm["a"])(e,3),i=n[0],s=n[1],a=n[2];a=a||t.state.current,t.commit("UPDATE",[a,i,s])}}},Xm={namespaced:!0,state:{instance:null,clock:0,step:5,beats:[]},mutations:{ADD:function(t,e){t.beats.push(e)},CLEAR:function(t){clearInterval(t.instance),t.clock=0},CLOCK:function(t){t.clock+=t.step},INITIALIZE:function(t,e){t.instance=e},REMOVE:function(t,e){var n=t.beats.map(function(t){return t.handler}).indexOf(e);-1!==n&&z["a"].delete(t.beats,n)}},actions:{add:function(t,e){e={handler:e[0]||e,interval:e[1]||t.state.step},e.handler(),t.commit("ADD",e),1===t.state.beats.length&&t.dispatch("run")},clear:function(t){t.commit("CLEAR")},remove:function(t,e){t.commit("REMOVE",e),t.state.beats.length<1&&t.commit("CLEAR")},run:function(t){t.commit("CLEAR"),t.commit("INITIALIZE",setInterval(function(){t.commit("CLOCK"),t.state.beats.forEach(function(e){t.state.clock%e.interval===0&&e.handler()})},1e3*t.state.step))}}},Qm={namespaced:!0,state:{all:[],current:null,default:null},mutations:{SET_ALL:function(t,e){t.all=e.map(function(t){return{code:t.code,default:t.default,direction:t.direction,locale:t.locale,name:t.name,rules:t.rules,url:t.url}})},SET_CURRENT:function(t,e){t.current=e,e&&e.code&&localStorage.setItem("kirby$language",e.code)},SET_DEFAULT:function(t,e){t.default=e}},actions:{current:function(t,e){t.commit("SET_CURRENT",e)},install:function(t,e){var n=e.filter(function(t){return t.default})[0];t.commit("SET_ALL",e),t.commit("SET_DEFAULT",n);var i=localStorage.getItem("kirby$language");if(i){var s=e.filter(function(t){return t.code===i})[0];if(s)return void t.dispatch("current",s)}t.dispatch("current",n||e[0]||null)},load:function(t){return gg.get("languages").then(function(e){t.dispatch("install",e.data)})}}},tg={timer:null,namespaced:!0,state:{type:null,message:null,details:null,timeout:null},mutations:{SET:function(t,e){t.type=e.type,t.message=e.message,t.details=e.details,t.timeout=e.timeout},UNSET:function(t){t.type=null,t.message=null,t.details=null,t.timeout=null}},actions:{close:function(t){clearTimeout(this.timer),t.commit("UNSET")},open:function(t,e){t.dispatch("close"),t.commit("SET",e),e.timeout&&(this.timer=setTimeout(function(){t.dispatch("close")},e.timeout))},success:function(t,e){"string"===typeof e&&(e={message:e}),t.dispatch("open",Object(I["a"])({type:"success",timeout:4e3},e))},error:function(t,e){"string"===typeof e&&(e={message:e}),t.dispatch("open",Object(I["a"])({type:"error"},e))}}},eg={namespaced:!0,state:{info:{title:null}},mutations:{SET_INFO:function(t,e){t.info=e},SET_LICENSE:function(t,e){t.info.license=e},SET_TITLE:function(t,e){t.info.title=e}},actions:{title:function(t,e){t.commit("SET_TITLE",e)},register:function(t,e){t.commit("SET_LICENSE",e)},load:function(t,e){return!e&&t.state.info.isReady&&t.rootState.user.current?new Je.a(function(e){e(t.state.info)}):gg.system.info({view:"panel"}).then(function(e){return t.commit("SET_INFO",Object(I["a"])({isReady:e.isInstalled&&e.isOk},e)),e.languages&&t.dispatch("languages/install",e.languages,{root:!0}),t.dispatch("translation/install",e.translation,{root:!0}),t.dispatch("translation/activate",e.translation.id,{root:!0}),e.user&&t.dispatch("user/current",e.user,{root:!0}),t.state.info}).catch(function(e){t.commit("SET_INFO",{isBroken:!0,error:e.message})})}}},ng={namespaced:!0,state:{current:null,installed:[]},mutations:{SET_CURRENT:function(t,e){t.current=e},INSTALL:function(t,e){t.installed[e.id]=e}},actions:{load:function(t,e){return gg.translations.get(e)},install:function(t,e){t.commit("INSTALL",e),z["a"].i18n.add(e.id,e.data)},activate:function(t,e){var n=t.state.installed[e];n?(z["a"].i18n.set(e),t.commit("SET_CURRENT",e),document.dir=n.direction,document.documentElement.lang=e):t.dispatch("load",e).then(function(n){t.dispatch("install",n),t.dispatch("activate",e)})}}},ig=n("8c4f"),sg=function(t,e,n){ug.dispatch("system/load").then(function(){var e=ug.state.user.current;if(!e)return ug.dispatch("user/visit",t.path),ug.dispatch("user/logout"),!1;var i=e.permissions.access;return!1===i.panel?(window.location.href=A.site,!1):!1===i[t.meta.view]?(ug.dispatch("notification/error",{message:z["a"].i18n.translate("error.access.view")}),n("/")):void n()})},ag=[{path:"/",name:"Home",redirect:"/site"},{path:"/browser",name:"Browser",component:z["a"].component("k-browser-view"),meta:{outside:!0}},{path:"/login",component:z["a"].component("k-login-view"),meta:{outside:!0}},{path:"/logout",beforeEnter:function(){kt()(localStorage).forEach(function(t){t.startsWith("kirby$content$")&&localStorage.removeItem(t)}),ug.dispatch("user/logout")},meta:{outside:!0}},{path:"/installation",component:z["a"].component("k-installation-view"),meta:{outside:!0}},{path:"/site",name:"Site",meta:{view:"site"},component:z["a"].component("k-site-view"),beforeEnter:sg},{path:"/site/files/:filename",name:"SiteFile",meta:{view:"site"},component:z["a"].component("k-file-view"),beforeEnter:sg,props:function(t){return{path:"site",filename:t.params.filename}}},{path:"/pages/:path/files/:filename",name:"PageFile",meta:{view:"site"},component:z["a"].component("k-file-view"),beforeEnter:sg,props:function(t){return{path:"pages/"+t.params.path,filename:t.params.filename}}},{path:"/users/:path/files/:filename",name:"UserFile",meta:{view:"users"},component:z["a"].component("k-file-view"),beforeEnter:sg,props:function(t){return{path:"users/"+t.params.path,filename:t.params.filename}}},{path:"/pages/:path",name:"Page",meta:{view:"site"},component:z["a"].component("k-page-view"),beforeEnter:sg,props:function(t){return{path:t.params.path}}},{path:"/settings",name:"Settings",meta:{view:"settings"},component:z["a"].component("k-settings-view"),beforeEnter:sg},{path:"/users/role/:role",name:"UsersByRole",meta:{view:"users"},component:z["a"].component("k-users-view"),beforeEnter:sg,props:function(t){return{role:t.params.role}}},{path:"/users",name:"Users",meta:{view:"users"},beforeEnter:sg,component:z["a"].component("k-users-view")},{path:"/users/:id",name:"User",meta:{view:"users"},component:z["a"].component("k-user-view"),beforeEnter:sg,props:function(t){return{id:t.params.id}}},{path:"/account",name:"Account",meta:{view:"account"},component:z["a"].component("k-user-view"),beforeEnter:sg,props:function(){return{id:ug.state.user.current?ug.state.user.current.id:null}}},{path:"/plugins/:id",name:"Plugin",meta:{view:"plugin"},props:function(t){return{plugin:t.params.id}},beforeEnter:sg,component:z["a"].component("k-custom-view")},{path:"*",name:"NotFound",beforeEnter:function(t,e,n){n("/")}}];z["a"].use(ig["a"]);var og=new ig["a"]({mode:"history",routes:ag,url:"/"===A.url?"":A.url});og.beforeEach(function(t,e,n){"Browser"!==t.name&&!1===Oh.all()&&n("/browser"),t.meta.outside||ug.dispatch("user/visit",t.path),ug.dispatch("view",t.meta.view),ug.dispatch("content/lock",null),ug.dispatch("content/unlock",null),ug.dispatch("heartbeat/clear"),n()});var rg=og,lg={namespaced:!0,state:{current:null,path:null},mutations:{SET_CURRENT:function(t,e){t.current=e,e&&e.permissions?(z["a"].prototype.$user=e,z["a"].prototype.$permissions=e.permissions):(z["a"].prototype.$user=null,z["a"].prototype.$permissions=null)},SET_PATH:function(t,e){t.path=e}},actions:{current:function(t,e){t.commit("SET_CURRENT",e)},email:function(t,e){t.commit("SET_CURRENT",Object(I["a"])({},t.state.current,{email:e}))},language:function(t,e){t.dispatch("translation/activate",e,{root:!0}),t.commit("SET_CURRENT",Object(I["a"])({},t.state.current,{language:e}))},load:function(t){return gg.auth.user().then(function(e){return t.commit("SET_CURRENT",e),e})},login:function(t,e){return gg.auth.login(e).then(function(e){return t.commit("SET_CURRENT",e),t.dispatch("translation/activate",e.language,{root:!0}),rg.push(t.state.path||"/"),e})},logout:function(t,e){t.commit("SET_CURRENT",null),e?window.location.href=(window.panel.url||"")+"/login":gg.auth.logout().then(function(){rg.push("/login")}).catch(function(){rg.push("/login")})},name:function(t,e){t.commit("SET_CURRENT",Object(I["a"])({},t.state.current,{name:e}))},visit:function(t,e){t.commit("SET_PATH",e)}}};z["a"].use(Ym["a"]);var ug=new Ym["a"].Store({strict:!1,state:{breadcrumb:[],dialog:null,drag:null,isLoading:!1,search:!1,title:null,view:null},mutations:{SET_BREADCRUMB:function(t,e){t.breadcrumb=e},SET_DIALOG:function(t,e){t.dialog=e},SET_DRAG:function(t,e){t.drag=e},SET_SEARCH:function(t,e){!0===e&&(e={}),t.search=e},SET_TITLE:function(t,e){t.title=e},SET_VIEW:function(t,e){t.view=e},START_LOADING:function(t){t.isLoading=!0},STOP_LOADING:function(t){t.isLoading=!1}},actions:{breadcrumb:function(t,e){t.commit("SET_BREADCRUMB",e)},dialog:function(t,e){t.commit("SET_DIALOG",e)},drag:function(t,e){t.commit("SET_DRAG",e)},isLoading:function(t,e){t.commit(!0===e?"START_LOADING":"STOP_LOADING")},search:function(t,e){t.commit("SET_SEARCH",e)},title:function(t,e){var n;n=t.state.user.current?gg.site.get(["title"]):new Je.a(function(e){e(t.state.system.info)}),n.then(function(n){t.commit("SET_TITLE",e),t.dispatch("system/title",n.title),document.title=e||"",document.title+=null!==e?" | "+n.title:n.title})},view:function(t,e){t.commit("SET_VIEW",e)}},modules:{content:Zm,heartbeat:Xm,languages:Qm,notification:tg,system:eg,translation:ng,user:lg}}),cg={running:0,request:function(t,e){var n=this,i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];e=Wi()(e||{},{credentials:"same-origin",cache:"no-store",headers:Object(I["a"])({"x-requested-with":"xmlhttprequest","content-type":"application/json"},e.headers)}),ug.state.languages.current&&(e.headers["x-language"]=ug.state.languages.current.code),e.headers["x-csrf"]=window.panel.csrf;var s=t+"/"+Vm()(e);return gg.config.onStart(s,i),this.running++,fetch(gg.config.endpoint+"/"+t,e).then(function(t){return t.text()}).then(function(t){try{return JSON.parse(t)}catch(e){throw new Error("The JSON response from the API could not be parsed. Please check your API connection.")}}).then(function(t){if(t.status&&"error"===t.status)throw t;var e=t;return t.data&&t.type&&"model"===t.type&&(e=t.data),n.running--,gg.config.onComplete(s),gg.config.onSuccess(t),e}).catch(function(t){throw n.running--,gg.config.onComplete(s),gg.config.onError(t),t})},get:function(t,e,n){var i=arguments.length>3&&void 0!==arguments[3]&&arguments[3];return e&&(t+="?"+kt()(e).map(function(t){var n=e[t];return void 0!==n&&null!==n?t+"="+n:null}).filter(function(t){return null!==t}).join("&")),this.request(t,Wi()(n||{},{method:"GET"}),i)},post:function(t,e,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"POST",s=arguments.length>4&&void 0!==arguments[4]&&arguments[4];return this.request(t,Wi()(n||{},{method:i,body:Vm()(e)}),s)},patch:function(t,e,n){var i=arguments.length>3&&void 0!==arguments[3]&&arguments[3];return this.post(t,e,n,"PATCH",i)},delete:function(t,e,n){var i=arguments.length>3&&void 0!==arguments[3]&&arguments[3];return this.post(t,e,n,"DELETE",i)}},dg={list:function(t){return gg.get("roles",t)},get:function(t){return gg.get("roles/"+t)},options:function(t){return this.list(t).then(function(t){return t.data.map(function(t){return{info:t.description||"(".concat(z["a"].i18n.translate("role.description.placeholder"),")"),text:t.title,value:t.name}})})}},pg={info:function(t){return gg.get("system",t)},install:function(t){return gg.post("system/install",t).then(function(t){return t.user})},register:function(t){return gg.post("system/register",t)}},fg={get:function(t){return gg.get("site",t)},update:function(t){return gg.post("site",t)},title:function(t){return gg.patch("site/title",{title:t})},options:function(){return gg.get("site",{select:"options"}).then(function(t){var e=t.options,n=[];return n.push({click:"rename",icon:"title",text:z["a"].i18n.translate("rename"),disabled:!e.changeTitle}),n})},children:function(t){return gg.post("site/children/search",t)},blueprint:function(){return gg.get("site/blueprint")},blueprints:function(){return gg.get("site/blueprints")}},hg={list:function(){return gg.get("translations")},get:function(t){return gg.get("translations/"+t)},options:function(){var t=[];return this.list().then(function(e){return t=e.data.map(function(t){return{value:t.id,text:t.name}}),t})}},mg={create:function(t){return gg.post(this.url(),t)},list:function(t){return gg.post(this.url(null,"search"),t)},get:function(t,e){return gg.get(this.url(t),e)},update:function(t,e){return gg.patch(this.url(t),e)},delete:function(t){return gg.delete(this.url(t))},changeEmail:function(t,e){return gg.patch(this.url(t,"email"),{email:e})},changeLanguage:function(t,e){return gg.patch(this.url(t,"language"),{language:e})},changeName:function(t,e){return gg.patch(this.url(t,"name"),{name:e})},changePassword:function(t,e){return gg.patch(this.url(t,"password"),{password:e})},changeRole:function(t,e){return gg.patch(this.url(t,"role"),{role:e})},deleteAvatar:function(t){return gg.delete(this.url(t,"avatar"))},blueprint:function(t){return gg.get(this.url(t,"blueprint"))},breadcrumb:function(t){return[{link:"/users/"+t.id,label:t.username}]},options:function(t){return gg.get(this.url(t),{select:"options"}).then(function(t){var e=t.options,n=[];return n.push({click:"rename",icon:"title",text:z["a"].i18n.translate("user.changeName"),disabled:!e.changeName}),n.push({click:"email",icon:"email",text:z["a"].i18n.translate("user.changeEmail"),disabled:!e.changeEmail}),n.push({click:"role",icon:"bolt",text:z["a"].i18n.translate("user.changeRole"),disabled:!e.changeRole}),n.push({click:"password",icon:"key",text:z["a"].i18n.translate("user.changePassword"),disabled:!e.changePassword}),n.push({click:"language",icon:"globe",text:z["a"].i18n.translate("user.changeLanguage"),disabled:!e.changeLanguage}),n.push({click:"remove",icon:"trash",text:z["a"].i18n.translate("user.delete"),disabled:!e.delete}),n})},url:function(t,e){var n=t?"users/"+t:"users";return e&&(n+="/"+e),n},link:function(t,e){return"/"+this.url(t,e)}},gg=Object(I["a"])({config:{onStart:function(){},onComplete:function(){},onSuccess:function(){},onError:function(t){throw window.console.log(t.message),t}},auth:Um,files:Fm,pages:Hm,roles:dg,system:pg,site:fg,translations:hg,users:mg},cg);gg.config.endpoint=A.api,gg.requests=[],gg.config.onStart=function(t,e){!1===e&&ug.dispatch("isLoading",!0),gg.requests.push(t)},gg.config.onComplete=function(t){gg.requests=gg.requests.filter(function(e){return e!==t}),0===gg.requests.length&&ug.dispatch("isLoading",!1)},gg.config.onError=function(t){A.debug&&window.console.error(t),403!==t.code||"Unauthenticated"!==t.message&&"access.panel"!==t.key||ug.dispatch("user/logout",!0)};var bg=setInterval(gg.auth.user,3e5);gg.config.onSuccess=function(){clearInterval(bg),bg=setInterval(gg.auth.user,3e5)},z["a"].prototype.$api=gg,z["a"].config.errorHandler=function(t){A.debug&&window.console.error(t),ug.dispatch("notification/error",{message:t.message||"An error occurred. Please reload the panel"})},window.panel=window.panel||{},window.panel.error=function(t,e){A.debug&&window.console.error(t+": "+e),ug.dispatch("error",t+". See the console for more information.")},RegExp.escape=function(t){return t.replace(new RegExp("[-/\\\\^$*+?.()[\\]{}]","gu"),"\\$&")};var vg=function(t,e){t=String(t);var n="";e=(e||2)-t.length;while(n.length0&&void 0!==arguments[0]?arguments[0]:"3/2",e=String(t).split("/");if(2!==e.length)return"100%";var n=Number(e[0]),i=Number(e[1]),s=100;return 0!==n&&0!==i&&(s=100/n*i),s+"%"},$g=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",i="-";return n="a-z0-9"+n,t=t.trim().toLowerCase(),e.forEach(function(e){e&&kt()(e).forEach(function(n){var i="/"!==n.substr(0,1),s=n.substring(1,n.length-1),a=i?n:s;t=t.replace(new RegExp(RegExp.escape(a),"g"),e[n])})}),t=t.replace("/[^\t\n\r -~]/",""),t=t.replace(new RegExp("[^"+n+"]","ig"),i),t=t.replace(new RegExp("["+RegExp.escape(i)+"]{2,}","g"),i),t=t.replace("/",i),t=t.replace(new RegExp("^[^"+n+"]+","g"),""),t=t.replace(new RegExp("[^"+n+"]+$","g"),""),t},_g=function(t){t=t||{};var e=t.desc?-1:1,n=-e,i=/^0/,s=/\s+/g,a=/^\s+|\s+$/g,o=/[^\x00-\x80]/,r=/^0x[0-9a-f]+$/i,l=/(0x[\da-fA-F]+|(^[\+\-]?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?(?=\D|\s|$))|\d+)/g,u=/(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[\/\-]\d{1,4}[\/\-]\d{1,4}|^\w+, \w+ \d+, \d{4})/,c=t.insensitive?function(t){return d(""+t).replace(a,"")}:function(t){return(""+t).replace(a,"")};function d(t){return t.toLocaleLowerCase?t.toLocaleLowerCase():t.toLowerCase()}function p(t){return t.replace(l,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0")}function f(t,e){return(!t.match(i)||1===e)&&Ys()(t)||t.replace(s," ").replace(a,"")||0}return function(t,i){var s=c(t),a=c(i);if(!s&&!a)return 0;if(!s&&a)return n;if(s&&!a)return e;var l=p(s),d=p(a),h=ms()(s.match(r),16)||1!==l.length&&Date.parse(s),m=ms()(a.match(r),16)||h&&a.match(u)&&Date.parse(a)||null;if(m){if(hm)return e}for(var g=l.length,b=d.length,v=0,k=Math.max(g,b);v0)return e;if(y<0)return n;if(v===k-1)return 0}else{if($<_)return n;if($>_)return e}}return 0}},yg={ucfirst:function(t){var e=String(t);return e.charAt(0).toUpperCase()+e.substr(1)},lcfirst:function(t){var e=String(t);return e.charAt(0).toLowerCase()+e.substr(1)}},xg=function(t,e){var n={url:"/",field:"file",method:"POST",accept:"text",attributes:{},complete:function(){},error:function(){},success:function(){},progress:function(){}},i=Wi()(n,e),s=new FormData;s.append(i.field,t,t.name),i.attributes&&kt()(i.attributes).forEach(function(t){s.append(t,i.attributes[t])});var a=new XMLHttpRequest,o=function(e){if(e.lengthComputable&&i.progress){var n=Math.max(0,Math.min(100,e.loaded/e.total*100));i.progress(a,t,Math.ceil(n))}};a.upload.addEventListener("loadstart",o),a.upload.addEventListener("progress",o),a.addEventListener("load",function(e){var n=null;try{n=JSON.parse(e.target.response)}catch(s){n={status:"error",message:"The file could not be uploaded"}}n.status&&"error"===n.status?i.error(a,t,n):(i.success(a,t,n),i.progress(a,t,100))}),a.addEventListener("error",function(e){var n=JSON.parse(e.target.response);i.error(a,t,n),i.progress(a,t,100)}),a.open("POST",i.url,!0),i.headers&&kt()(i.headers).forEach(function(t){var e=i.headers[t];a.setRequestHeader(t,e)}),a.send(s)},wg=function(t){return!!t.dataTransfer&&(!!t.dataTransfer.types&&(!0===t.dataTransfer.types.includes("Files")&&!1===t.dataTransfer.types.includes("text/plain")))};z["a"].prototype.$helper={clone:Gm,isUploadEvent:wg,debounce:wt,pad:vg,ratio:kg,slug:$g,sort:_g,string:yg,upload:xg};var Og=n("f2f3");z["a"].use(Og["a"].plugin,ug);var Cg=n("19e9"),Sg=n.n(Cg),Eg=n("5a0c"),jg=n.n(Eg),Tg=n("f906"),Ig=n.n(Tg);jg.a.extend(Ig.a),z["a"].prototype.$library={autosize:Sg.a,dayjs:jg.a};var Lg=n("2d1f"),qg=n.n(Lg),Ag={};for(var Ng in z["a"].options.components)Ag[Ng]=z["a"].options.components[Ng];var Bg=function(t,e){e.template||e.render||e.extends?(e.extends&&"string"===typeof e.extends&&(e.extends=Ag[e.extends],e.template&&(e.render=null)),e.mixins&&(e.mixins=e.mixins.map(function(t){return"string"===typeof t?Ag[t]:t})),Ag[t]&&window.console.warn('Plugin is replacing "'.concat(t,'"')),z["a"].component(t,e)):ug.dispatch("notification/error",'Neither template or render method provided nor extending a component when loading plugin component "'.concat(t,'". The component has not been registered.'))};qg()(window.panel.plugins.components).forEach(function(t){var e=Object(Wm["a"])(t,2),n=e[0],i=e[1];Bg(n,i)}),qg()(window.panel.plugins.fields).forEach(function(t){var e=Object(Wm["a"])(t,2),n=e[0],i=e[1];Bg(n,i)}),qg()(window.panel.plugins.sections).forEach(function(t){var e=Object(Wm["a"])(t,2),n=e[0],i=e[1];Bg(n,Object(I["a"])({},i,{mixins:[Qf].concat(i.mixins||[])}))}),qg()(window.panel.plugins.views).forEach(function(t){var e=Object(Wm["a"])(t,2),n=e[0],i=e[1];if(!i.component)return ug.dispatch("notification/error",'No view component provided when loading view "'.concat(n,'". The view has not been registered.')),void delete window.panel.plugins.views[n];i.link="/plugins/"+n,void 0===i.icon&&(i.icon="page"),void 0===i.menu&&(i.menu=!0),window.panel.plugins.views[n]={link:i.link,icon:i.icon,menu:i.menu},z["a"].component("k-"+n+"-plugin-view",i.component)}),window.panel.plugins.use.forEach(function(t){z["a"].use(t)}),z["a"].config.productionTip=!1,z["a"].config.devtools=!0,z["a"].use(M),z["a"].use(R),z["a"].use(F.a),new z["a"]({router:rg,store:ug,created:function(){var t=this;window.panel.app=this,window.panel.plugins.created.forEach(function(e){e(t)}),this.$store.dispatch("content/init")},render:function(t){return t(D)}}).$mount("#app")},5714:function(t,e,n){},"580a":function(t,e,n){"use strict";var i=n("61ab"),s=n.n(i);s.a},"589a":function(t,e,n){},"58e5":function(t,e,n){},"5ab5":function(t,e,n){},"5aee":function(t,e,n){"use strict";var i=n("04b2"),s=n.n(i);s.a},"5b23":function(t,e,n){"use strict";var i=n("9798"),s=n.n(i);s.a},"5c0b":function(t,e,n){"use strict";var i=n("5e27"),s=n.n(i);s.a},"5d33":function(t,e,n){"use strict";var i=n("2246"),s=n.n(i);s.a},"5e27":function(t,e,n){},"5f12":function(t,e,n){},6018:function(t,e,n){"use strict";var i=n("e30b"),s=n.n(i);s.a},"61ab":function(t,e,n){},"64e4":function(t,e,n){"use strict";var i=n("1340"),s=n.n(i);s.a},"64e6":function(t,e,n){},"65a9":function(t,e,n){},"696b5":function(t,e,n){"use strict";var i=n("0cdc"),s=n.n(i);s.a},"6a18":function(t,e,n){"use strict";var i=n("de8a"),s=n.n(i);s.a},"6ab3":function(t,e,n){"use strict";var i=n("784e"),s=n.n(i);s.a},"6ab9":function(t,e,n){},"6b7f":function(t,e,n){},"6bcd":function(t,e,n){"use strict";var i=n("9e0a"),s=n.n(i);s.a},"6e56":function(t,e,n){},"6f7b":function(t,e,n){"use strict";var i=n("5ab5"),s=n.n(i);s.a},7075:function(t,e,n){},"718c":function(t,e,n){"use strict";var i=n("773d"),s=n.n(i);s.a},7568:function(t,e,n){"use strict";var i=n("4150"),s=n.n(i);s.a},"75cd":function(t,e,n){},7737:function(t,e,n){"use strict";var i=n("ca19"),s=n.n(i);s.a},"773d":function(t,e,n){},"778b":function(t,e,n){},7797:function(t,e,n){},"784e":function(t,e,n){},"7a7d":function(t,e,n){"use strict";var i=n("65a9"),s=n.n(i);s.a},"7d2d":function(t,e,n){},"7d5d":function(t,e,n){"use strict";var i=n("6ab9"),s=n.n(i);s.a},"7dc7":function(t,e,n){"use strict";var i=n("eb17"),s=n.n(i);s.a},"7e0c":function(t,e,n){},"7e85":function(t,e,n){"use strict";var i=n("d1c5"),s=n.n(i);s.a},"7f6e":function(t,e,n){"use strict";var i=n("4364"),s=n.n(i);s.a},"862b":function(t,e,n){"use strict";var i=n("589a"),s=n.n(i);s.a},"893d":function(t,e,n){"use strict";var i=n("abb3"),s=n.n(i);s.a},"8ae6":function(t,e,n){},"8c28":function(t,e,n){"use strict";var i=n("3d5b"),s=n.n(i);s.a},"8e4d":function(t,e,n){},"910b":function(t,e,n){},"957b":function(t,e,n){},9749:function(t,e,n){},"977f":function(t,e,n){"use strict";var i=n("b7f5"),s=n.n(i);s.a},9798:function(t,e,n){},9799:function(t,e,n){"use strict";var i=n("4fe0"),s=n.n(i);s.a},9811:function(t,e,n){},"98a1":function(t,e,n){"use strict";var i=n("f0cb"),s=n.n(i);s.a},"9bd5":function(t,e,n){"use strict";var i=n("64e6"),s=n.n(i);s.a},"9df7":function(t,e,n){},"9e0a":function(t,e,n){},"9e26":function(t,e,n){"use strict";var i=n("a440"),s=n.n(i);s.a},a134:function(t,e,n){"use strict";var i=n("4390"),s=n.n(i);s.a},a440:function(t,e,n){},a567:function(t,e,n){"use strict";var i=n("c0b5"),s=n.n(i);s.a},a5f3:function(t,e,n){"use strict";var i=n("43f4"),s=n.n(i);s.a},a66d:function(t,e,n){"use strict";var i=n("2eb5"),s=n.n(i);s.a},a79d:function(t,e,n){},abb3:function(t,e,n){},ac27:function(t,e,n){"use strict";var i=n("3c9d"),s=n.n(i);s.a},b0d6:function(t,e,n){"use strict";var i=n("d31d"),s=n.n(i);s.a},b37e:function(t,e,n){},b3c3:function(t,e,n){},b5d2:function(t,e,n){"use strict";var i=n("ed7b"),s=n.n(i);s.a},b746:function(t,e,n){"use strict";var i=n("7e0c"),s=n.n(i);s.a},b7f5:function(t,e,n){},ba8f:function(t,e,n){"use strict";var i=n("9749"),s=n.n(i);s.a},bb41:function(t,e,n){"use strict";var i=n("ceb4"),s=n.n(i);s.a},bd96:function(t,e,n){"use strict";var i=n("d6a4"),s=n.n(i);s.a},bf53:function(t,e,n){"use strict";var i=n("3c80"),s=n.n(i);s.a},c0b5:function(t,e,n){},c119:function(t,e,n){"use strict";var i=n("4b49"),s=n.n(i);s.a},c7c8:function(t,e,n){"use strict";var i=n("1be2"),s=n.n(i);s.a},c857:function(t,e,n){"use strict";var i=n("7d2d"),s=n.n(i);s.a},c9cb:function(t,e,n){"use strict";var i=n("b37e"),s=n.n(i);s.a},ca19:function(t,e,n){},ca3a:function(t,e,n){},cb8f:function(t,e,n){"use strict";var i=n("8e4d"),s=n.n(i);s.a},cc79:function(t,e,n){"use strict";var i=n("a79d"),s=n.n(i);s.a},cca8:function(t,e,n){"use strict";var i=n("18b7"),s=n.n(i);s.a},ceb4:function(t,e,n){},d0c1:function(t,e,n){"use strict";var i=n("9df7"),s=n.n(i);s.a},d0e7:function(t,e,n){},d1c5:function(t,e,n){},d221:function(t,e,n){"use strict";var i=n("6b7f"),s=n.n(i);s.a},d31d:function(t,e,n){},d6a4:function(t,e,n){},d6c1:function(t,e,n){},d6fc:function(t,e,n){"use strict";var i=n("08ec"),s=n.n(i);s.a},d9c4:function(t,e,n){},daa8:function(t,e,n){"use strict";var i=n("e60b"),s=n.n(i);s.a},db92:function(t,e,n){},ddfd:function(t,e,n){"use strict";var i=n("4dc8"),s=n.n(i);s.a},de8a:function(t,e,n){},df0d:function(t,e,n){"use strict";var i=n("3ab9"),s=n.n(i);s.a},e30b:function(t,e,n){},e60b:function(t,e,n){},e697:function(t,e,n){},eb17:function(t,e,n){},ec72:function(t,e,n){},ed7b:function(t,e,n){},ee15:function(t,e,n){"use strict";var i=n("fd81"),s=n.n(i);s.a},f0cb:function(t,e,n){},f56d:function(t,e,n){"use strict";var i=n("75cd"),s=n.n(i);s.a},f5e3:function(t,e,n){},f8a7:function(t,e,n){"use strict";var i=n("db92"),s=n.n(i);s.a},f95f:function(t,e,n){"use strict";var i=n("5f12"),s=n.n(i);s.a},fa6a:function(t,e,n){"use strict";var i=n("778b"),s=n.n(i);s.a},fb1a:function(t,e,n){},fc0f:function(t,e,n){"use strict";var i=n("424a"),s=n.n(i);s.a},fd81:function(t,e,n){},ff6d:function(t,e,n){},fffc:function(t,e,n){}}); \ No newline at end of file +(function(t){function e(e){for(var i,o,a=e[0],l=e[1],c=e[2],p=0,f=[];p0?e.$store.dispatch("notification/error",{message:e.$t("error.page.changeStatus.incomplete"),details:n.errors}):void("default"===n.blueprint.num?e.$api.pages.get(t,{select:["siblings"]}).then((function(t){e.setup(ge({},n,{siblings:t.siblings}))})).catch((function(t){e.$store.dispatch("notification/error",t)})):e.setup(ge({},n,{siblings:[]})))})).catch((function(t){e.$store.dispatch("notification/error",t)}))},setup:function(t){this.page=t,this.form.position=t.num||t.siblings.length+1,this.form.status=t.status,this.states=t.blueprint.status,this.$refs.dialog.open()},submit:function(){var t=this;this.$api.pages.status(this.page.id,this.form.status,this.form.position||1).then((function(){t.success({message:":)",event:"page.changeStatus"})})).catch((function(e){t.$refs.dialog.error(e.message)}))}}},ve=be,ke=Object(c["a"])(ve,de,he,!1,null,null,null),ye=ke.exports,$e=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-form-dialog",{ref:"dialog",attrs:{fields:t.fields,"submit-button":t.$t("change")},on:{submit:t.submit},model:{value:t.page,callback:function(e){t.page=e},expression:"page"}})},Oe=[],_e={mixins:[h],data:function(){return{blueprints:[],page:{id:null,template:null}}},computed:{fields:function(){return{template:{label:this.$t("template"),type:"select",required:!0,empty:!1,options:this.page.blueprints,icon:"template"}}}},methods:{open:function(t){var e=this;this.$api.pages.get(t,{select:["id","template","blueprints"]}).then((function(t){if(t.blueprints.length<=1)return e.$store.dispatch("notification/error",{message:e.$t("error.page.changeTemplate.invalid",{slug:t.id})});e.page=t,e.page.blueprints=e.page.blueprints.map((function(t){return{text:t.title,value:t.name}})),e.$refs.dialog.open()})).catch((function(t){e.$store.dispatch("notification/error",t)}))},submit:function(){var t=this;this.$events.$emit("keydown.cmd.s"),this.$api.pages.template(this.page.id,this.page.template).then((function(){t.success({message:":)",event:"page.changeTemplate"})})).catch((function(e){t.$refs.dialog.error(e.message)}))}}},we=_e,je=Object(c["a"])(we,$e,Oe,!1,null,null,null),xe=je.exports,Se=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-dialog",{ref:"dialog",attrs:{"submit-button":t.$t("change"),size:"medium",theme:"positive"},on:{submit:function(e){return t.$refs.form.submit()}}},[n("k-form",{ref:"form",on:{submit:t.submit}},[n("k-text-field",t._b({attrs:{value:t.slug},on:{input:function(e){return t.sluggify(e)}}},"k-text-field",t.field,!1),[n("k-button",{attrs:{slot:"options",icon:"wand","data-options":""},on:{click:function(e){return t.sluggify(t.page.title)}},slot:"options"},[t._v("\n "+t._s(t.$t("page.changeSlug.fromTitle"))+"\n ")])],1)],1)],1)},Pe=[],Ee={mixins:[h],data:function(){return{slug:null,url:null,page:{id:null,parent:null,title:null}}},computed:{field:function(){return{name:"slug",label:this.$t("slug"),type:"text",required:!0,icon:"url",help:"/"+this.url,counter:!1,preselect:!0}},slugs:function(){return this.$store.state.languages.current?this.$store.state.languages.current.rules:this.system.slugs},system:function(){return this.$store.state.system.info}},methods:{sluggify:function(t){this.slug=this.$helper.slug(t,[this.slugs,this.system.ascii]),this.page.parents?this.url=this.page.parents.map((function(t){return t.slug})).concat([this.slug]).join("/"):this.url=this.slug},open:function(t){var e=this;this.$api.pages.get(t,{view:"panel"}).then((function(t){e.page=t,e.sluggify(e.page.slug),e.$refs.dialog.open()})).catch((function(t){e.$store.dispatch("notification/error",t)}))},submit:function(){var t=this;if(this.slug===this.page.slug)return this.$refs.dialog.close(),void this.$store.dispatch("notification/success",":)");0!==this.slug.length?this.$api.pages.slug(this.page.id,this.slug).then((function(e){t.$store.dispatch("content/move",["pages/"+t.page.id,"pages/"+e.id]);var n={message:":)",event:"page.changeSlug"};!t.$route.params.path||t.page.id!==t.$route.params.path.replace(/\+/g,"/")||t.$store.state.languages.current&&!0!==t.$store.state.languages.current.default||(n.route=t.$api.pages.link(e.id),delete n.event),t.success(n)})).catch((function(e){t.$refs.dialog.error(e.message)})):this.$refs.dialog.error(this.$t("error.page.slug.invalid"))}}},Ce=Ee,De=Object(c["a"])(Ce,Se,Pe,!1,null,null,null),Te=De.exports,Ie=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-dialog",{ref:"dialog",staticClass:"k-pages-dialog",attrs:{size:"medium"},on:{cancel:function(e){return t.$emit("cancel")},submit:t.submit}},[t.issue?[n("k-box",{attrs:{text:t.issue,theme:"negative"}})]:[t.model?n("header",{staticClass:"k-pages-dialog-navbar"},[n("k-button",{attrs:{disabled:!t.model.id,tooltip:t.$t("back"),icon:"angle-left"},on:{click:t.back}}),n("k-headline",[t._v(t._s(t.model.title))])],1):t._e(),t.options.search?n("k-input",{staticClass:"k-dialog-search",attrs:{autofocus:!0,placeholder:t.$t("search")+" …",type:"text",icon:"search"},model:{value:t.search,callback:function(e){t.search=e},expression:"search"}}):t._e(),t.models.length?[n("k-list",t._l(t.models,(function(e){return n("k-list-item",{key:e.id,attrs:{text:e.text,info:e.info,image:e.image,icon:e.icon},on:{click:function(n){return t.toggle(e)}}},[n("template",{slot:"options"},[t.isSelected(e)?n("k-button",{attrs:{slot:"options",autofocus:!0,icon:t.checkedIcon,tooltip:t.$t("remove"),theme:"positive"},slot:"options"}):n("k-button",{attrs:{slot:"options",autofocus:!0,tooltip:t.$t("select"),icon:"circle-outline"},slot:"options"}),t.model?n("k-button",{attrs:{disabled:!e.hasChildren,tooltip:t.$t("open"),icon:"angle-right"},on:{click:function(n){return n.stopPropagation(),t.go(e)}}}):t._e()],1)],2)})),1),n("k-pagination",t._b({staticClass:"k-dialog-pagination",attrs:{details:!0,dropdown:!1,align:"center"},on:{paginate:t.paginate}},"k-pagination",t.pagination,!1))]:n("k-empty",{attrs:{icon:"page"}},[t._v("\n "+t._s(t.$t("dialog.pages.empty"))+"\n ")])]],2)},Le=[];function Ae(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function Be(t){for(var e=1;e0?t:7},weekdays:function(){return[this.$t("days.mon"),this.$t("days.tue"),this.$t("days.wed"),this.$t("days.thu"),this.$t("days.fri"),this.$t("days.sat"),this.$t("days.sun")]},monthnames:function(){return[this.$t("months.january"),this.$t("months.february"),this.$t("months.march"),this.$t("months.april"),this.$t("months.may"),this.$t("months.june"),this.$t("months.july"),this.$t("months.august"),this.$t("months.september"),this.$t("months.october"),this.$t("months.november"),this.$t("months.december")]},months:function(){var t=[];return this.monthnames.forEach((function(e,n){t.push({value:n,text:e})})),t},years:function(){for(var t=[],e=this.year-10;e<=this.year+10;e++)t.push({value:e,text:this.$helper.pad(e)});return t}},watch:{value:function(t){var e=this.$library.dayjs(t);this.day=e.date(),this.month=e.month(),this.year=e.year(),this.current=e}},methods:{days:function(t){for(var e=[],n=7*(t-1)+1,i=n;ithis.numberOfDays?e.push(""):e.push(s)}return e},next:function(){var t=this.date.clone().add(1,"month");this.set(t)},isToday:function(t){return this.month===this.today.month()&&this.year===this.today.year()&&t===this.today.date()},isCurrent:function(t){return this.month===this.current.month()&&this.year===this.current.year()&&t===this.current.date()},prev:function(){var t=this.date.clone().subtract(1,"month");this.set(t)},go:function(t,e){"today"===t&&(t=this.today.year(),e=this.today.month()),this.year=t,this.month=e},set:function(t){this.day=t.date(),this.month=t.month(),this.year=t.year()},selectToday:function(){this.set(this.$library.dayjs()),this.select(this.day)},select:function(t){t&&(this.day=t);var e=this.$library.dayjs(new Date(this.year,this.month,this.day,this.current.hour(),this.current.minute()));this.$emit("input",e.toISOString())}}},ci=li,ui=(n("ee15"),Object(c["a"])(ci,oi,ai,!1,null,null,null)),pi=ui.exports,fi=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",{staticClass:"k-counter",attrs:{"data-invalid":!t.valid}},[n("span",[t._v(t._s(t.count))]),t.min&&t.max?n("span",{staticClass:"k-counter-rules"},[t._v("("+t._s(t.min)+"–"+t._s(t.max)+")")]):t.min?n("span",{staticClass:"k-counter-rules"},[t._v("≥ "+t._s(t.min))]):t.max?n("span",{staticClass:"k-counter-rules"},[t._v("≤ "+t._s(t.max))]):t._e()])},di=[],hi={props:{count:Number,min:Number,max:Number,required:{type:Boolean,default:!1}},computed:{valid:function(){return!1===this.required&&0===this.count||(!0!==this.required||0!==this.count)&&(!(this.min&&this.countthis.max))}}},mi=hi,gi=(n("fc0f"),Object(c["a"])(mi,fi,di,!1,null,null,null)),bi=gi.exports,vi=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("form",{ref:"form",staticClass:"k-form",attrs:{method:"POST",autocomplete:"off",novalidate:""},on:{submit:function(e){return e.preventDefault(),t.onSubmit(e)}}},[t._t("header"),t._t("default",[n("k-fieldset",t._g({ref:"fields",attrs:{disabled:t.disabled,fields:t.fields,novalidate:t.novalidate},model:{value:t.value,callback:function(e){t.value=e},expression:"value"}},t.listeners))]),t._t("footer"),n("input",{ref:"submitter",staticClass:"k-form-submitter",attrs:{type:"submit"}})],2)},ki=[];function yi(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function $i(t){for(var e=1;e0?e.$store.dispatch("notification/error",{message:e.$t("error.form.incomplete"),details:t.details}):e.$store.dispatch("notification/error",{message:e.$t("error.form.notSaved"),details:[{label:"Exception: "+t.exception,message:t.message}]}))})))}}},Ci=Ei,Di=(n("18dd"),Object(c["a"])(Ci,xi,Si,!1,null,null,null)),Ti=Di.exports,Ii=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.hasChanges?n("k-dropdown",{staticClass:"k-form-indicator"},[n("k-button",{staticClass:"k-topbar-button",on:{click:t.toggle}},[n("k-icon",{staticClass:"k-form-indicator-icon",attrs:{type:"edit"}})],1),n("k-dropdown-content",{ref:"list",attrs:{align:"right"}},[n("p",{staticClass:"k-form-indicator-info"},[t._v("\n "+t._s(t.$t("lock.unsaved"))+":\n ")]),n("hr"),t._l(t.entries,(function(e){return n("k-dropdown-item",{key:e.id,attrs:{icon:e.icon},nativeOn:{click:function(n){return n.stopPropagation(),t.go(e.target)}}},[t._v("\n "+t._s(e.label)+"\n ")])}))],2)],1):t._e()},Li=[];n("28a5"),n("f559");function Ai(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function Bi(t){for(var e=1;e0}))},hasChanges:function(){return this.models.length>0}},methods:{go:function(t){if(t.language&&this.$store.state.languages.current.code!==t.language){var e=this.$store.state.languages.all.filter((function(e){return e.code===t.language}))[0];this.$store.dispatch("languages/current",e)}this.$go(t.link)},load:function(){var t=this,e=this.models.map((function(e){return t.$api.get(e.api,{view:"compact"},null,!0).then((function(n){var i;if(i=!0===e.id.startsWith("pages/")?{icon:"page",label:n.title,target:{link:t.$api.pages.link(n.id)}}:!0===e.id.startsWith("files/")?{icon:"image",label:n.filename,target:{link:n.link}}:!0===e.id.startsWith("users/")?{icon:"user",label:n.email,target:{link:t.$api.users.link(n.id)}}:{icon:"home",label:n.title,target:{link:"/site"}},t.$store.state.languages.current){var s=e.id.split("/").pop();i.label=i.label+" ("+s+")",i.target.language=s}return i})).catch((function(){return t.$store.dispatch("content/remove",e.id),null}))}));return Promise.all(e).then((function(e){t.entries=e.filter((function(t){return null!==t})),0===t.entries.length&&t.$store.dispatch("notification/success",t.$t("lock.unsaved.empty"))}))},toggle:function(){var t=this;!1===this.$refs.list.isOpen?this.load().then((function(){t.$refs.list&&t.$refs.list.toggle()})):this.$refs.list.toggle()}}},Ni=qi,Ri=(n("9e26"),Object(c["a"])(Ni,Ii,Li,!1,null,null,null)),Mi=Ri.exports,Fi=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:"k-field k-field-name-"+t.name,attrs:{"data-disabled":t.disabled,"data-translate":t.translate},on:{focusin:function(e){return t.$emit("focus",e)},focusout:function(e){return t.$emit("blur",e)}}},[t._t("header",[n("header",{staticClass:"k-field-header"},[t._t("label",[n("label",{staticClass:"k-field-label",attrs:{for:t.input}},[t._v(t._s(t.labelText)+" "),t.required?n("abbr",{attrs:{title:t.$t("field.required")}},[t._v("*")]):t._e()])]),t._t("options"),t._t("counter",[t.counter?n("k-counter",t._b({staticClass:"k-field-counter",attrs:{required:t.required}},"k-counter",t.counter,!1)):t._e()])],2)]),t._t("default"),t._t("footer",[t.help||t.$slots.help?n("footer",{staticClass:"k-field-footer"},[t._t("help",[t.help?n("k-text",{staticClass:"k-field-help",attrs:{theme:"help"},domProps:{innerHTML:t._s(t.help)}}):t._e()])],2):t._e()])],2)},Ui=[],zi={inheritAttrs:!1,props:{counter:[Boolean,Object],disabled:Boolean,endpoints:Object,help:String,input:[String,Number],label:String,name:[String,Number],required:Boolean,translate:Boolean,type:String},computed:{labelText:function(){return this.label||" "}}},Hi=zi,Ki=(n("a134"),Object(c["a"])(Hi,Fi,Ui,!1,null,null,null)),Vi=Ki.exports,Yi=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("fieldset",{staticClass:"k-fieldset"},[n("k-grid",[t._l(t.fields,(function(e,i){return["hidden"!==e.type&&t.meetsCondition(e)?n("k-column",{key:e.signature,attrs:{width:e.width}},[n("k-error-boundary",[t.hasFieldType(e.type)?n("k-"+e.type+"-field",t._b({ref:i,refInFor:!0,tag:"component",attrs:{name:i,novalidate:t.novalidate,disabled:t.disabled||e.disabled},on:{input:function(n){return t.$emit("input",t.value,e,i)},focus:function(n){return t.$emit("focus",n,e,i)},invalid:function(n,s){return t.onInvalid(n,s,e,i)},submit:function(n){return t.$emit("submit",n,e,i)}},model:{value:t.value[i],callback:function(e){t.$set(t.value,i,e)},expression:"value[fieldName]"}},"component",e,!1)):n("k-box",{attrs:{theme:"negative"}},[n("k-text",{attrs:{size:"small"}},[t._v("\n The field type "),n("strong",[t._v('"'+t._s(i)+'"')]),t._v(" does not exist\n ")])],1)],1)],1):t._e()]}))],2)],1)},Wi=[],Ji={props:{config:Object,disabled:Boolean,fields:{type:[Array,Object],default:function(){return[]}},novalidate:{type:Boolean,default:!1},value:{type:Object,default:function(){return{}}}},data:function(){return{errors:{}}},methods:{focus:function(t){if(t)this.hasField(t)&&"function"===typeof this.$refs[t][0].focus&&this.$refs[t][0].focus();else{var e=Object.keys(this.$refs)[0];this.focus(e)}},hasFieldType:function(t){return I["a"].options.components["k-"+t+"-field"]},hasField:function(t){return this.$refs[t]&&this.$refs[t][0]},meetsCondition:function(t){var e=this;if(!t.when)return!0;var n=!0;return Object.keys(t.when).forEach((function(i){var s=e.value[i.toLowerCase()],r=t.when[i];s!==r&&(n=!1)})),n},onInvalid:function(t,e,n,i){this.errors[i]=e,this.$emit("invalid",this.errors)},hasErrors:function(){return Object.keys(this.errors).length}}},Gi=Ji,Zi=(n("862b"),Object(c["a"])(Gi,Yi,Wi,!1,null,null,null)),Xi=Zi.exports,Qi=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-input",attrs:{"data-disabled":t.disabled,"data-invalid":!t.novalidate&&t.isInvalid,"data-theme":t.theme,"data-type":t.type}},[t.$slots.before||t.before?n("span",{staticClass:"k-input-before",on:{click:t.focus}},[t._t("before",[t._v(t._s(t.before))])],2):t._e(),n("span",{staticClass:"k-input-element",on:{click:function(e){return e.stopPropagation(),t.focus(e)}}},[t._t("default",[n("k-"+t.type+"-input",t._g(t._b({ref:"input",tag:"component",attrs:{value:t.value}},"component",t.inputProps,!1),t.listeners))])],2),t.$slots.after||t.after?n("span",{staticClass:"k-input-after",on:{click:t.focus}},[t._t("after",[t._v(t._s(t.after))])],2):t._e(),t.$slots.icon||t.icon?n("span",{staticClass:"k-input-icon",on:{click:t.focus}},[t._t("icon",[n("k-icon",{attrs:{type:t.icon}})])],2):t._e()])},ts=[];function es(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function ns(t){for(var e=1;e0?[n("k-headline",[t._v(t._s(t.$t("upload.errors")))]),n("ul",{staticClass:"k-upload-error-list"},t._l(t.errors,(function(e,i){return n("li",{key:"error-"+i},[n("p",{staticClass:"k-upload-error-filename"},[t._v(t._s(e.file.name))]),n("p",{staticClass:"k-upload-error-message"},[t._v(t._s(e.message))])])})),0)]:[n("k-headline",[t._v(t._s(t.$t("upload.progress")))]),n("ul",{staticClass:"k-upload-list"},t._l(t.files,(function(e,i){return n("li",{key:"file-"+i},[n("k-progress",{ref:e.name,refInFor:!0}),n("p",{staticClass:"k-upload-list-filename"},[t._v(t._s(e.name))]),n("p",[t._v(t._s(t.errors[e.name]))])],1)})),0)],n("template",{slot:"footer"},[t.errors.length>0?[n("k-button-group",[n("k-button",{attrs:{icon:"check"},on:{click:function(e){return t.$refs.dialog.close()}}},[t._v("\n "+t._s(t.$t("confirm"))+"\n ")])],1)]:t._e()],2)],2)],1)},ls=[],cs={props:{url:{type:String},accept:{type:String,default:"*"},attributes:{type:Object},multiple:{type:Boolean,default:!0},max:{type:Number}},data:function(){return{options:this.$props,completed:{},errors:[],files:[],total:0}},methods:{open:function(t){var e=this;this.params(t),setTimeout((function(){e.$refs.input.click()}),1)},params:function(t){this.options=Object.assign({},this.$props,t)},select:function(t){this.upload(t.target.files)},drop:function(t,e){this.params(e),this.upload(t)},upload:function(t){var e=this;this.$refs.dialog.open(),this.files=Object(Pi["a"])(t),this.completed={},this.errors=[],this.hasErrors=!1,this.options.max&&(this.files=this.files.slice(0,this.options.max)),this.total=this.files.length,this.files.forEach((function(t){e.$helper.upload(t,{url:e.options.url,attributes:e.options.attributes,headers:{"X-CSRF":window.panel.csrf},progress:function(t,n,i){e.$refs[n.name]&&e.$refs[n.name][0]&&e.$refs[n.name][0].set(i)},success:function(t,n,i){e.complete(n,i.data)},error:function(t,n,i){e.errors.push({file:n,message:i.message}),e.complete(n,i.data)}})}))},complete:function(t,e){var n=this;if(this.completed[t.name]=e,Object.keys(this.completed).length==this.total){if(this.$refs.input.value="",this.errors.length>0)return this.$forceUpdate(),void this.$emit("error",this.files);setTimeout((function(){n.$refs.dialog.close(),n.$emit("success",n.files,Object.values(n.completed))}),250)}}}},us=cs,ps=(n("5aee"),Object(c["a"])(us,as,ls,!1,null,null,null)),fs=ps.exports,ds=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("label",{staticClass:"k-checkbox-input",on:{click:function(t){t.stopPropagation()}}},[n("input",{ref:"input",staticClass:"k-checkbox-input-native",attrs:{disabled:t.disabled,id:t.id,type:"checkbox"},domProps:{checked:t.value},on:{change:function(e){return t.onChange(e.target.checked)}}}),n("span",{staticClass:"k-checkbox-input-icon",attrs:{"aria-hidden":"true"}},[n("svg",{attrs:{width:"12",height:"10",viewBox:"0 0 12 10",xmlns:"http://www.w3.org/2000/svg"}},[n("path",{attrs:{d:"M1 5l3.3 3L11 1","stroke-width":"2",fill:"none","fill-rule":"evenodd"}})])]),n("span",{staticClass:"k-checkbox-input-label",domProps:{innerHTML:t._s(t.label)}})])},hs=[],ms=n("b5ae"),gs={inheritAttrs:!1,props:{autofocus:Boolean,disabled:Boolean,id:[Number,String],label:String,required:Boolean,value:Boolean},watch:{value:function(){this.onInvalid()}},mounted:function(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{focus:function(){this.$refs.input.focus()},onChange:function(t){this.$emit("input",t)},onInvalid:function(){this.$emit("invalid",this.$v.$invalid,this.$v)},select:function(){this.focus()}},validations:function(){return{value:{required:!this.required||ms["required"]}}}},bs=gs,vs=(n("42e4"),Object(c["a"])(bs,ds,hs,!1,null,null,null)),ks=vs.exports,ys=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("ul",{staticClass:"k-checkboxes-input",style:"--columns:"+t.columns},t._l(t.options,(function(e,i){return n("li",{key:i},[n("k-checkbox-input",{attrs:{id:t.id+"-"+i,label:e.text,value:-1!==t.selected.indexOf(e.value)},on:{input:function(n){return t.onInput(e.value,n)}}})],1)})),0)},$s=[],Os={inheritAttrs:!1,props:{autofocus:Boolean,columns:Number,disabled:Boolean,id:{type:[Number,String],default:function(){return this._uid}},max:Number,min:Number,options:Array,required:Boolean,value:{type:[Array,Object],default:function(){return[]}}},data:function(){return{selected:this.valueToArray(this.value)}},watch:{value:function(t){this.selected=this.valueToArray(t)},selected:function(){this.onInvalid()}},mounted:function(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{focus:function(){this.$el.querySelector("input").focus()},onInput:function(t,e){if(!0===e)this.selected.push(t);else{var n=this.selected.indexOf(t);-1!==n&&this.selected.splice(n,1)}this.$emit("input",this.selected)},onInvalid:function(){this.$emit("invalid",this.$v.$invalid,this.$v)},select:function(){this.focus()},valueToArray:function(t){return!0===Array.isArray(t)?t:"string"===typeof t?String(t).split(","):"object"===Object(Nt["a"])(t)?Object.values(t):void 0}},validations:function(){return{selected:{required:!this.required||ms["required"],min:!this.min||Object(ms["minLength"])(this.min),max:!this.max||Object(ms["maxLength"])(this.max)}}}},_s=Os,ws=Object(c["a"])(_s,ys,$s,!1,null,null,null),js=ws.exports,xs=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-date-input"},[n("k-select-input",{ref:"years",attrs:{"aria-label":t.$t("year"),options:t.years,disabled:t.disabled,required:t.required,value:t.year,placeholder:"––––"},on:{input:t.setYear,invalid:t.onInvalid}}),n("span",{staticClass:"k-date-input-separator"},[t._v("-")]),n("k-select-input",{ref:"months",attrs:{"aria-label":t.$t("month"),options:t.months,disabled:t.disabled,required:t.required,value:t.month,placeholder:"––"},on:{input:t.setMonth,invalid:t.onInvalid}}),n("span",{staticClass:"k-date-input-separator"},[t._v("-")]),n("k-select-input",{ref:"days",attrs:{"aria-label":t.$t("day"),autofocus:t.autofocus,id:t.id,options:t.days,disabled:t.disabled,required:t.required,value:t.day,placeholder:"––"},on:{input:t.setDay,invalid:t.onInvalid}})],1)},Ss=[],Ps={inheritAttrs:!1,props:{autofocus:Boolean,disabled:Boolean,id:[String,Number],max:String,min:String,required:Boolean,value:String},data:function(){return{date:this.$library.dayjs(this.value),minDate:this.calculate(this.min,"min"),maxDate:this.calculate(this.max,"max")}},computed:{day:function(){return isNaN(this.date.date())?"":this.date.date()},days:function(){return this.options(1,this.date.daysInMonth()||31,"days")},month:function(){return isNaN(this.date.date())?"":this.date.month()+1},months:function(){return this.options(1,12,"months")},year:function(){return isNaN(this.date.year())?"":this.date.year()},years:function(){var t=this.date.isBefore(this.minDate)?this.date.year():this.minDate.year(),e=this.date.isAfter(this.maxDate)?this.date.year():this.maxDate.year();return this.options(t,e)}},watch:{value:function(t){this.date=this.$library.dayjs(t)}},methods:{calculate:function(t,e){var n={min:{run:"subtract",take:"startOf"},max:{run:"add",take:"endOf"}}[e],i=t?this.$library.dayjs(t):null;return i&&!1!==i.isValid()||(i=this.$library.dayjs()[n.run](10,"year")[n.take]("year")),i},focus:function(){this.$refs.years.focus()},onInput:function(){!1!==this.date.isValid()?this.$emit("input",this.date.toISOString()):this.$emit("input","")},onInvalid:function(t,e){this.$emit("invalid",t,e)},options:function(t,e){for(var n=[],i=t;i<=e;i++)n.push({value:i,text:this.$helper.pad(i)});return n},set:function(t,e){if(""===e||null===e||!1===e||-1===e)return this.setInvalid(),void this.onInput();if(!1===this.date.isValid())return this.setInitialDate(t,e),void this.onInput();var n=this.date,i=this.date.date();this.date=this.date.set(t,parseInt(e)),"month"===t&&this.date.date()!==i&&(this.date=n.set("date",1).set("month",e).endOf("month")),this.onInput()},setInvalid:function(){this.date=this.$library.dayjs("invalid")},setInitialDate:function(t,e){var n=this.$library.dayjs();return this.date=this.$library.dayjs().set(t,parseInt(e)),"date"===t&&n.month()!==this.date.month()&&(this.date=n.endOf("month")),this.date},setDay:function(t){this.set("date",t)},setMonth:function(t){this.set("month",t-1)},setYear:function(t){this.set("year",t)}}},Es=Ps,Cs=(n("6ab3"),Object(c["a"])(Es,xs,Ss,!1,null,null,null)),Ds=Cs.exports,Ts=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-datetime-input"},[n("k-date-input",{ref:"dateInput",attrs:{autofocus:t.autofocus,required:t.required,id:t.id,min:t.min,max:t.max,disabled:t.disabled,value:t.dateValue},on:{input:t.setDate}}),n("k-time-input",t._b({ref:"timeInput",attrs:{required:t.required,disabled:t.disabled,value:t.timeValue},on:{input:t.setTime}},"k-time-input",t.timeOptions,!1))],1)},Is=[];function Ls(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function As(t){for(var e=1;e1&&!this.sort},dragOptions:function(){return{disabled:!this.draggable,draggable:".k-tag",delay:1}},emptyLabel:function(){return this.q?this.$t("search.results.none"):this.$t("options.none")},visible:function(){return this.limit?this.filtered.slice(0,this.search.display||this.filtered.length):this.filtered},filtered:function(){if(this.q&&this.q.length>=(this.search.min||0)){var t=new RegExp("(".concat(RegExp.escape(this.q),")"),"ig");return this.options.filter((function(e){return String(e.text).match(t)||String(e.value).match(t)})).map((function(e){return rr({},e,{display:String(e.text).replace(t,"$1"),info:String(e.value).replace(t,"$1")})}))}return this.options.map((function(t){return rr({},t,{display:t.text,info:t.value})}))},sorted:function(){var t=this;if(!1===this.sort)return this.state;var e=this.state,n=function(e){return t.options.findIndex((function(t){return t.value===e.value}))};return e.sort((function(t,e){return n(t)-n(e)}))},more:function(){return!this.max||this.state.length1?n[1].length:0;return new Intl.NumberFormat(e,{minimumFractionDigits:i}).format(t)},onInvalid:function(){this.$emit("invalid",this.$v.$invalid,this.$v)},onInput:function(t){this.$emit("input",t)}},validations:function(){return{position:{required:!this.required||ms["required"],min:!this.min||Object(ms["minValue"])(this.min),max:!this.max||Object(ms["maxValue"])(this.max)}}}},qr=Br,Nr=(n("b5d2"),Object(c["a"])(qr,Tr,Ir,!1,null,null,null)),Rr=Nr.exports,Mr=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",{staticClass:"k-select-input",attrs:{"data-disabled":t.disabled,"data-empty":""===t.selected}},[n("select",t._g({ref:"input",staticClass:"k-select-input-native",attrs:{autofocus:t.autofocus,"aria-label":t.ariaLabel,disabled:t.disabled,id:t.id,name:t.name,required:t.required},domProps:{value:t.selected}},t.listeners),[t.hasEmptyOption?n("option",{attrs:{disabled:t.required,value:""}},[t._v("\n "+t._s(t.emptyOption)+"\n ")]):t._e(),t._l(t.options,(function(e){return n("option",{key:e.value,attrs:{disabled:e.disabled},domProps:{value:e.value}},[t._v("\n "+t._s(e.text)+"\n ")])}))],2),t._v("\n "+t._s(t.label)+"\n")])},Fr=[];function Ur(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function zr(t){for(var e=1;e=t.max,id:t.id,name:t.name,autocomplete:"off",type:"text"},domProps:{value:t.newTag},on:{input:[function(e){e.target.composing||(t.newTag=e.target.value.trim())},function(e){return t.type(e.target.value)}],blur:[t.blurInput,function(e){return t.$forceUpdate()}],keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"s",void 0,e.key,void 0)?null:e.metaKey?t.blurInput(e):null},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"left",37,e.key,["Left","ArrowLeft"])?null:"button"in e&&0!==e.button?null:e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:t.leaveInput(e)},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:t.enter(e)},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"tab",9,e.key,"Tab")?null:e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:t.tab(e)},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"backspace",void 0,e.key,void 0)?null:e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:t.leaveInput(e)}]}})])],1)],2)},Jr=[],Gr={inheritAttrs:!1,props:{autofocus:Boolean,accept:{type:String,default:"all"},disabled:Boolean,icon:{type:[String,Boolean],default:"tag"},id:[Number,String],layout:String,max:Number,min:Number,name:[Number,String],options:{type:Array,default:function(){return[]}},required:Boolean,separator:{type:String,default:","},value:{type:Array,default:function(){return[]}}},data:function(){var t=this;return{tags:this.prepareTags(this.value),selected:null,newTag:null,tagOptions:this.options.map((function(e){return t.icon&&t.icon.length>0&&(e.icon=t.icon),e}),this)}},computed:{dragOptions:function(){return{delay:1,disabled:!this.draggable,draggable:".k-tag"}},draggable:function(){return this.tags.length>1},skip:function(){return this.tags.map((function(t){return t.value}))}},watch:{value:function(t){this.tags=this.prepareTags(t),this.onInvalid()}},mounted:function(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{addString:function(t){var e=this;if(t)if(t=t.trim(),t.includes(this.separator))t.split(this.separator).forEach((function(t){e.addString(t)}));else if(0!==t.length)if("options"===this.accept){var n=this.options.filter((function(e){return e.text===t}))[0];if(!n)return;this.addTag(n)}else this.addTag({text:t,value:t})},addTag:function(t){this.addTagToIndex(t),this.$refs.autocomplete.close(),this.$refs.input.focus()},addTagToIndex:function(t){if("options"===this.accept){var e=this.options.filter((function(e){return e.value===t.value}))[0];if(!e)return}-1===this.index(t)&&(!this.max||this.tags.length=this.tags.length)return;break;case"first":e=0;break;case"last":e=this.tags.length-1;break;default:e=t;break}var i=this.tags[e];if(i){var s=this.$refs[i.value];if(s&&s[0])return{ref:s[0],tag:i,index:e}}return!1},index:function(t){return this.tags.findIndex((function(e){return e.value===t.value}))},onInput:function(){this.$emit("input",this.tags)},onInvalid:function(){this.$emit("invalid",this.$v.$invalid,this.$v)},leaveInput:function(t){0===t.target.selectionStart&&t.target.selectionStart===t.target.selectionEnd&&0!==this.tags.length&&(this.$refs.autocomplete.close(),this.navigate("last"),t.preventDefault())},navigate:function(t){var e=this.get(t);e?(e.ref.focus(),this.selectTag(e.tag)):"next"===t&&(this.$refs.input.focus(),this.selectTag(null))},prepareTags:function(t){return!1===Array.isArray(t)?[]:t.map((function(t){return"string"===typeof t?{text:t,value:t}:t}))},remove:function(t){var e=this.get("prev"),n=this.get("next");this.tags.splice(this.index(t),1),this.onInput(),e?(this.selectTag(e.tag),e.ref.focus()):n?this.selectTag(n.tag):(this.selectTag(null),this.$refs.input.focus())},select:function(){this.focus()},selectTag:function(t){this.selected=t},tab:function(t){this.newTag&&this.newTag.length>0&&(t.preventDefault(),this.addString(this.newTag))},type:function(t){this.newTag=t,this.$refs.autocomplete.search(t)}},validations:function(){return{tags:{required:!this.required||ms["required"],minLength:!this.min||Object(ms["minLength"])(this.min),maxLength:!this.max||Object(ms["maxLength"])(this.max)}}}},Zr=Gr,Xr=(n("27c1"),Object(c["a"])(Zr,Wr,Jr,!1,null,null,null)),Qr=Xr.exports;function to(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function eo(t){for(var e=1;e0&&this.insert(t.map((function(t){return t.dragText})).join("\n\n"))},insertUpload:function(t,e){this.insert(e.map((function(t){return t.dragText})).join("\n\n")),this.$events.$emit("model.update")},onClick:function(){this.$refs.toolbar&&this.$refs.toolbar.close()},onCommand:function(t,e){"function"===typeof this[t]?"function"===typeof e?this[t](e(this.$refs.input,this.selection())):this[t](e):window.console.warn(t+" is not a valid command")},onDrop:function(t){if(this.uploads&&this.$helper.isUploadEvent(t))return this.$refs.fileUpload.drop(t.dataTransfer.files,{url:x.api+"/"+this.endpoints.field+"/upload",multiple:!1});var e=this.$store.state.drag;e&&"text"===e.type&&(this.focus(),this.insert(e.data))},onFocus:function(t){this.$emit("focus",t)},onInput:function(t){this.$emit("input",t.target.value)},onInvalid:function(){this.$emit("invalid",this.$v.$invalid,this.$v)},onOut:function(){this.$refs.input.blur(),this.over=!1},onOver:function(t){if(this.uploads&&this.$helper.isUploadEvent(t))return t.dataTransfer.dropEffect="copy",this.focus(),void(this.over=!0);var e=this.$store.state.drag;e&&"text"===e.type&&(t.dataTransfer.dropEffect="copy",this.focus(),this.over=!0)},onShortcut:function(t){!1!==this.buttons&&"Meta"!==t.key&&"Control"!==t.key&&this.$refs.toolbar&&this.$refs.toolbar.shortcut(t.key,t)},onSubmit:function(t){return this.$emit("submit",t)},prepend:function(t){this.insert(t+" "+this.selection())},resize:function(){this.$library.autosize.update(this.$refs.input)},select:function(){this.$refs.select()},selectFile:function(){this.$refs.fileDialog.open({endpoint:this.endpoints.field+"/files",multiple:!1})},selection:function(){var t=this.$refs.input,e=t.selectionStart,n=t.selectionEnd;return t.value.substring(e,n)},uploadFile:function(){this.$refs.fileUpload.open({url:x.api+"/"+this.endpoints.field+"/upload",multiple:!1})},wrap:function(t){this.insert(t+this.selection()+t)}},validations:function(){return{value:{required:!this.required||ms["required"],minLength:!this.minlength||Object(ms["minLength"])(this.minlength),maxLength:!this.maxlength||Object(ms["maxLength"])(this.maxlength)}}}},po=uo,fo=(n("cca8"),Object(c["a"])(po,lo,co,!1,null,null,null)),ho=fo.exports,mo=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-time-input"},[n("k-select-input",{ref:"hour",attrs:{id:t.id,"aria-label":t.$t("hour"),autofocus:t.autofocus,options:t.hours,required:t.required,disabled:t.disabled,placeholder:"––"},on:{input:t.setHour,invalid:t.onInvalid},model:{value:t.hour,callback:function(e){t.hour=e},expression:"hour"}}),n("span",{staticClass:"k-time-input-separator"},[t._v(":")]),n("k-select-input",{ref:"minute",attrs:{"aria-label":t.$t("minutes"),options:t.minutes,required:t.required,disabled:t.disabled,placeholder:"––"},on:{input:t.setMinute,invalid:t.onInvalid},model:{value:t.minute,callback:function(e){t.minute=e},expression:"minute"}}),12===t.notation?n("k-select-input",{ref:"meridiem",staticClass:"k-time-input-meridiem",attrs:{"aria-label":t.$t("meridiem"),empty:!1,options:[{value:"AM",text:"AM"},{value:"PM",text:"PM"}],required:t.required,disabled:t.disabled},on:{input:t.onInput},model:{value:t.meridiem,callback:function(e){t.meridiem=e},expression:"meridiem"}}):t._e()],1)},go=[],bo={inheritAttrs:!1,props:{autofocus:Boolean,disabled:Boolean,id:[String,Number],notation:{type:Number,default:24},required:Boolean,step:{type:Number,default:5},value:{type:String}},data:function(){var t=this.toObject(this.value);return{time:this.value,hour:t.hour,minute:t.minute,meridiem:t.meridiem}},computed:{hours:function(){return this.options(24===this.notation?0:1,24===this.notation?23:12)},minutes:function(){return this.options(0,59,this.step)}},watch:{value:function(t){this.time=t},time:function(t){var e=this.toObject(t);this.hour=e.hour,this.minute=e.minute,this.meridiem=e.meridiem}},methods:{focus:function(){this.$refs.hour.focus()},setHour:function(t){t&&!this.minute&&(this.minute=0),t||(this.minute=null),this.onInput()},setMinute:function(t){t&&!this.hour&&(this.hour=0),t||(this.hour=null),this.onInput()},onInput:function(){if(null!==this.hour&&null!==this.minute){var t=this.$helper.pad(this.hour||0),e=this.$helper.pad(this.minute||0),n=String(this.meridiem||"AM").toUpperCase(),i=24===this.notation?"".concat(t,":").concat(e,":00"):"".concat(t,":").concat(e,":00 ").concat(n),s=24===this.notation?"HH:mm:ss":"hh:mm:ss A",r=this.$library.dayjs("2000-01-01 "+i,"YYYY-MM-DD "+s);this.$emit("input",r.format("HH:mm"))}else this.$emit("input","")},onInvalid:function(t,e){this.$emit("invalid",t,e)},options:function(t,e){for(var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,i=[],s=t;s<=e;s+=n)i.push({value:s,text:this.$helper.pad(s)});return i},reset:function(){this.hour=null,this.minute=null,this.meridiem=null},round:function(t){return Math.floor(t/this.step)*this.step},toObject:function(t){var e=this.$library.dayjs("2001-01-01 "+t+":00","YYYY-MM-DD HH:mm:ss");return t&&!1!==e.isValid()?{hour:e.format(24===this.notation?"H":"h"),minute:this.round(e.format("m")),meridiem:e.format("A")}:{hour:null,minute:null,meridiem:null}}}},vo=bo,ko=(n("50da"),Object(c["a"])(vo,mo,go,!1,null,null,null)),yo=ko.exports,$o=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("label",{staticClass:"k-toggle-input",attrs:{"data-disabled":t.disabled}},[n("input",{ref:"input",staticClass:"k-toggle-input-native",attrs:{disabled:t.disabled,id:t.id,type:"checkbox"},domProps:{checked:t.value},on:{change:function(e){return t.onInput(e.target.checked)}}}),n("span",{staticClass:"k-toggle-input-label",domProps:{innerHTML:t._s(t.label)}})])},Oo=[],_o={inheritAttrs:!1,props:{autofocus:Boolean,disabled:Boolean,id:[Number,String],text:{type:[Array,String],default:function(){return[this.$t("off"),this.$t("on")]}},required:Boolean,value:Boolean},computed:{label:function(){return Array.isArray(this.text)?this.value?this.text[1]:this.text[0]:this.text}},watch:{value:function(){this.onInvalid()}},mounted:function(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{focus:function(){this.$refs.input.focus()},onEnter:function(t){"Enter"===t.key&&this.$refs.input.click()},onInput:function(t){this.$emit("input",t)},onInvalid:function(){this.$emit("invalid",this.$v.$invalid,this.$v)},select:function(){this.$refs.input.focus()}},validations:function(){return{value:{required:!this.required||ms["required"]}}}},wo=_o,jo=(n("bb41"),Object(c["a"])(wo,$o,Oo,!1,null,null,null)),xo=jo.exports;function So(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function Po(t){for(var e=1;e0?"mailto:"+this.value:null}},methods:{focus:function(){this.$refs.input.focus()}}},na=ea,ia=Object(c["a"])(na,Zo,Xo,!1,null,null,null),sa=ia.exports,ra=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-files-field"},"k-field",t.$props,!1),[t.more&&!t.disabled?n("template",{slot:"options"},[n("k-button-group",{staticClass:"k-field-options"},[t.uploads?[n("k-dropdown",[n("k-button",{ref:"pickerToggle",staticClass:"k-field-options-button",attrs:{icon:t.btnIcon},on:{click:function(e){return t.$refs.picker.toggle()}}},[t._v("\n "+t._s(t.btnLabel)+"\n ")]),n("k-dropdown-content",{ref:"picker",attrs:{align:"right"}},[n("k-dropdown-item",{attrs:{icon:"check"},on:{click:t.open}},[t._v(t._s(t.$t("select")))]),n("k-dropdown-item",{attrs:{icon:"upload"},on:{click:t.upload}},[t._v(t._s(t.$t("upload")))])],1)],1)]:[n("k-button",{staticClass:"k-field-options-button",attrs:{icon:"add"},on:{click:t.open}},[t._v(t._s(t.$t("add")))])]],2)],1):t._e(),t.selected.length?[n("k-draggable",{attrs:{element:t.elements.list,list:t.selected,"data-size":t.size,handle:!0,"data-invalid":t.isInvalid},on:{end:t.onInput}},t._l(t.selected,(function(e,i){return n(t.elements.item,{key:e.id,tag:"component",attrs:{sortable:!t.disabled&&t.selected.length>1,text:e.text,link:t.link?e.link:null,info:e.info,image:e.image,icon:e.icon}},[t.disabled?t._e():n("k-button",{attrs:{slot:"options",tooltip:t.$t("remove"),icon:"remove"},on:{click:function(e){return t.remove(i)}},slot:"options"})],1)})),1)]:n("k-empty",{attrs:{layout:t.layout,"data-invalid":t.isInvalid,icon:"image"},on:{click:t.open}},[t._v("\n "+t._s(t.empty||t.$t("field.files.empty"))+"\n ")]),n("k-files-dialog",{ref:"selector",on:{submit:t.select}}),n("k-upload",{ref:"fileUpload",on:{success:t.selectUpload}})],2)},oa=[];function aa(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function la(t){for(var e=1;e0?"refresh":"add"},btnLabel:function(){return!this.multiple&&this.selected.length>0?this.$t("change"):this.$t("add")},elements:function(){var t={cards:{list:"k-cards",item:"k-card"},list:{list:"k-list",item:"k-list-item"}};return t[this.layout]?t[this.layout]:t["list"]},isInvalid:function(){return!(!this.required||0!==this.selected.length)||(!!(this.min&&this.selected.lengththis.max))},more:function(){return!this.max||this.max>this.selected.length}},watch:{value:function(t){this.selected=t}},methods:{focus:function(){},onInput:function(){this.$emit("input",this.selected)},remove:function(t){this.selected.splice(t,1),this.onInput()},removeById:function(t){this.selected=this.selected.filter((function(e){return e.id!==t})),this.onInput()},select:function(t){var e=this;0!==t.length?(this.selected=this.selected.filter((function(e){return t.filter((function(t){return t.id===e.id})).length>0})),t.forEach((function(t){0===e.selected.filter((function(e){return t.id===e.id})).length&&e.selected.push(t)})),this.onInput()):this.selected=[]}}},ua={mixins:[ca],props:{uploads:[Boolean,Object,Array]},created:function(){this.$events.$on("file.delete",this.removeById)},destroyed:function(){this.$events.$off("file.delete",this.removeById)},methods:{prompt:function(t){t.stopPropagation(),this.uploads?this.$refs.picker.toggle():this.open()},open:function(){if(this.disabled)return!1;this.$refs.selector.open({endpoint:this.endpoints.field,max:this.max,multiple:this.multiple,search:this.search,selected:this.selected.map((function(t){return t.id}))})},selectUpload:function(t,e){var n=this;!1===this.multiple&&(this.selected=[]),e.forEach((function(t){n.selected.push(t)})),this.onInput(),this.$events.$emit("model.update")},upload:function(){this.$refs.fileUpload.open({url:x.api+"/"+this.endpoints.field+"/upload",multiple:this.multiple,accept:this.uploads.accept})}}},pa=ua,fa=(n("4a4b"),Object(c["a"])(pa,ra,oa,!1,null,null,null)),da=fa.exports,ha=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-headline",{staticClass:"k-headline-field",attrs:{"data-numbered":t.numbered,size:"large"}},[t._v("\n "+t._s(t.label)+"\n")])},ma=[],ga={props:{label:String,numbered:Boolean}},ba=ga,va=(n("19d7"),Object(c["a"])(ba,ha,ma,!1,null,null,null)),ka=va.exports,ya=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-field k-info-field"},[n("k-headline",[t._v(t._s(t.label))]),n("k-box",{attrs:{theme:t.theme}},[n("k-text",{domProps:{innerHTML:t._s(t.text)}})],1)],1)},$a=[],Oa={props:{label:String,text:String,theme:{type:String,default:"info"}}},_a=Oa,wa=(n("ddfd"),Object(c["a"])(_a,ya,$a,!1,null,null,null)),ja=wa.exports,xa=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("hr",{staticClass:"k-line-field"})},Sa=[],Pa=(n("718c"),{}),Ea=Object(c["a"])(Pa,xa,Sa,!1,null,null,null),Ca=Ea.exports,Da=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-multiselect-field",attrs:{input:t._uid,counter:t.counterOptions},on:{blur:t.blur},nativeOn:{keydown:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:(e.preventDefault(),t.focus(e))}}},"k-field",t.$props,!1),[n("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field"}},"k-input",t.$props,!1),t.$listeners))],1)},Ta=[];function Ia(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function La(t){for(var e=1;e1,text:e.text,info:e.info,link:t.link?e.link:null,icon:e.icon,image:e.image}},[t.disabled?t._e():n("k-button",{attrs:{slot:"options",icon:"remove"},on:{click:function(e){return t.remove(i)}},slot:"options"})],1)})),1)]:n("k-empty",{attrs:{layout:t.layout,"data-invalid":t.isInvalid,icon:"page"},on:{click:t.open}},[t._v("\n "+t._s(t.empty||t.$t("field.pages.empty"))+"\n ")]),n("k-pages-dialog",{ref:"selector",on:{submit:t.select}})],2)},Wa=[],Ja={mixins:[ca],methods:{open:function(){if(this.disabled)return!1;this.$refs.selector.open({endpoint:this.endpoints.field,max:this.max,multiple:this.multiple,search:this.search,selected:this.selected.map((function(t){return t.id}))})}}},Ga=Ja,Za=(n("7e85"),Object(c["a"])(Ga,Ya,Wa,!1,null,null,null)),Xa=Za.exports,Qa=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-password-field",attrs:{input:t._uid,counter:t.counterOptions}},"k-field",t.$props,!1),[n("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field"}},"k-input",t.$props,!1),t.$listeners))],1)},tl=[];function el(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function nl(t){for(var e=1;e=this.max)},isInvalid:function(){return!0!==this.disabled&&(!!(this.min&&this.items.lengththis.max))},isSortable:function(){return!this.sortBy&&(!this.limit&&(!0!==this.disabled&&(!(this.items.length<=1)&&!1!==this.sortable)))},pagination:function(){var t=0;return this.limit&&(t=(this.page-1)*this.limit),{page:this.page,offset:t,limit:this.limit,total:this.items.length,align:"center",details:!0}},paginatedItems:function(){return this.limit?this.items.slice(this.pagination.offset,this.pagination.offset+this.limit):this.items}},watch:{value:function(t){t!=this.items&&(this.items=this.makeItems(t))}},methods:{add:function(){var t=this;if(!0===this.disabled)return!1;if(null!==this.currentIndex)return this.escape(),!1;var e={};Object.keys(this.fields).forEach((function(n){var i=t.fields[n];null!==i.default?e[n]=t.$helper.clone(i.default):e[n]=null})),this.currentIndex="new",this.currentModel=e,this.createForm()},addItem:function(t){!0===this.prepend?this.items.unshift(t):this.items.push(t)},beforePaginate:function(){return this.save(this.currentModel)},close:function(){this.currentIndex=null,this.currentModel=null,this.$events.$off("keydown.esc",this.escape),this.$events.$off("keydown.cmd.s",this.submit),this.$store.dispatch("content/enable")},columnIsEmpty:function(t){return void 0===t||null===t||""===t||("object"===Object(Nt["a"])(t)&&0===Object.keys(t).length&&t.constructor===Object||void 0!==t.length&&0===t.length)},confirmRemove:function(t){this.close(),this.trash=t,this.$refs.remove.open()},createForm:function(t){var e=this;this.$events.$on("keydown.esc",this.escape),this.$events.$on("keydown.cmd.s",this.submit),this.$store.dispatch("content/disable"),this.$nextTick((function(){e.$refs.form&&e.$refs.form.focus(t)}))},displayText:function(t,e){switch(t.type){case"user":return e.email;case"date":var n=this.$library.dayjs(e),i=!0===t.time?"YYYY-MM-DD HH:mm":"YYYY-MM-DD";return n.isValid()?n.format(i):"";case"tags":case"multiselect":return e.map((function(t){return t.text})).join(", ");case"checkboxes":return e.map((function(e){var n=e;return t.options.forEach((function(t){t.value===e&&(n=t.text)})),n})).join(", ");case"radio":case"select":var s=t.options.filter((function(t){return t.value===e}))[0];return s?s.text:null}return"object"===Object(Nt["a"])(e)&&null!==e?"…":e.toString()},duplicateItem:function(t){this.addItem(this.items[t]),this.onInput()},escape:function(){var t=this;if("new"===this.currentIndex){var e=Object.values(this.currentModel),n=!0;if(e.forEach((function(e){!1===t.columnIsEmpty(e)&&(n=!1)})),!0===n)return void this.close()}this.submit()},focus:function(){this.$refs.add&&this.$refs.add.focus&&this.$refs.add.focus()},indexOf:function(t){return this.limit?(this.page-1)*this.limit+t+1:t+1},isActive:function(t){return this.currentIndex===t},jump:function(t,e){this.open(t+this.pagination.offset,e)},makeItems:function(t){return!1===Array.isArray(t)?[]:this.sort(t)},onInput:function(){this.$emit("input",this.items)},open:function(t,e){this.currentIndex=t,this.currentModel=this.$helper.clone(this.items[t]),this.createForm(e)},paginate:function(t){this.open(t.offset)},paginateItems:function(t){this.page=t.page},previewExists:function(t){return void 0!==I["a"].options.components["k-"+t+"-field-preview"]||void 0!==this.$options.components["k-"+t+"-field-preview"]},remove:function(){if(null===this.trash)return!1;this.items.splice(this.trash,1),this.trash=null,this.$refs.remove.close(),this.onInput(),0===this.paginatedItems.length&&this.page>1&&this.page--,this.items=this.sort(this.items)},sort:function(t){return this.sortBy?t.sortBy(this.sortBy):t},save:function(){var t=this;return null!==this.currentIndex&&void 0!==this.currentIndex?this.validate(this.currentModel).then((function(){return"new"===t.currentIndex?t.addItem(t.currentModel):t.items[t.currentIndex]=t.currentModel,t.items=t.sort(t.items),t.onInput(),!0})).catch((function(e){throw t.$store.dispatch("notification/error",{message:t.$t("error.form.incomplete"),details:e}),e})):Promise.resolve()},submit:function(){this.save().then(this.close).catch((function(){}))},validate:function(t){return this.$api.post(this.endpoints.field+"/validate",t).then((function(t){if(t.length>0)throw t;return!0}))},width:function(t){if(!t)return"auto";var e=t.toString().split("/");if(2!==e.length)return"auto";var n=Number(e[0]),i=Number(e[1]);return parseFloat(100/i*n,2).toFixed(2)+"%"},update:function(t,e,n){this.items[t][e]=n,this.onInput()}}},Bl=Al,ql=(n("088c"),Object(c["a"])(Bl,Dl,Tl,!1,null,null,null)),Nl=ql.exports,Rl=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-field",t._b({staticClass:"k-tags-field",attrs:{input:t._uid,counter:t.counterOptions}},"k-field",t.$props,!1),[n("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field"}},"k-input",t.$props,!1),t.$listeners))],1)},Ml=[];function Fl(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function Ul(t){for(var e=1;e1,text:e.text,info:e.info,link:t.link?t.$api.users.link(e.id):null,image:e.image,icon:e.icon}},[t.disabled?t._e():n("k-button",{attrs:{slot:"options",icon:"remove"},on:{click:function(e){return t.remove(i)}},slot:"options"})],1)})),1)]:n("k-empty",{attrs:{"data-invalid":t.isInvalid,icon:"users"},on:{click:t.open}},[t._v("\n "+t._s(t.empty||t.$t("field.users.empty"))+"\n ")]),n("k-users-dialog",{ref:"selector",on:{submit:t.select}})],2)},Uc=[],zc={mixins:[ca],methods:{open:function(){if(this.disabled)return!1;this.$refs.selector.open({endpoint:this.endpoints.field,max:this.max,multiple:this.multiple,search:this.search,selected:this.selected.map((function(t){return t.id}))})}}},Hc=zc,Kc=(n("7f6e"),Object(c["a"])(Hc,Fc,Uc,!1,null,null,null)),Vc=Kc.exports,Yc=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("nav",{staticClass:"k-toolbar"},[n("div",{staticClass:"k-toolbar-wrapper"},[n("div",{staticClass:"k-toolbar-buttons"},[t._l(t.layout,(function(e,i){return[e.divider?[n("span",{key:i,staticClass:"k-toolbar-divider"})]:e.dropdown?[n("k-dropdown",{key:i},[n("k-button",{key:i,staticClass:"k-toolbar-button",attrs:{icon:e.icon,tooltip:e.label,tabindex:"-1"},on:{click:function(e){t.$refs[i+"-dropdown"][0].toggle()}}}),n("k-dropdown-content",{ref:i+"-dropdown",refInFor:!0},t._l(e.dropdown,(function(e,i){return n("k-dropdown-item",{key:i,attrs:{icon:e.icon},on:{click:function(n){return t.command(e.command,e.args)}}},[t._v("\n "+t._s(e.label)+"\n ")])})),1)],1)]:[n("k-button",{key:i,staticClass:"k-toolbar-button",attrs:{icon:e.icon,tooltip:e.label,tabindex:"-1"},on:{click:function(n){return t.command(e.command,e.args)}}})]]}))],2)])])},Wc=[],Jc=function(t){this.command("insert",(function(e,n){var i=[];return n.split("\n").forEach((function(e,n){var s="ol"===t?n+1+".":"-";i.push(s+" "+e)})),i.join("\n")}))},Gc={layout:["headlines","bold","italic","|","link","email","file","|","code","ul","ol"],props:{buttons:{type:[Boolean,Array],default:!0},uploads:[Boolean,Object,Array]},data:function(){var t={},e={},n=[],i=this.commands();return!1===this.buttons?t:(Array.isArray(this.buttons)&&(n=this.buttons),!0!==Array.isArray(this.buttons)&&(n=this.$options.layout),n.forEach((function(n,s){if("|"===n)t["divider-"+s]={divider:!0};else if(i[n]){var r=i[n];t[n]=r,r.shortcut&&(e[r.shortcut]=n)}})),{layout:t,shortcuts:e})},methods:{command:function(t,e){"function"===typeof t?t.apply(this):this.$emit("command",t,e)},close:function(){var t=this;Object.keys(this.$refs).forEach((function(e){var n=t.$refs[e][0];n.close&&"function"===typeof n.close&&n.close()}))},fileCommandSetup:function(){var t={label:this.$t("toolbar.button.file"),icon:"attachment"};return!1===this.uploads?t.command="selectFile":t.dropdown={select:{label:this.$t("toolbar.button.file.select"),icon:"check",command:"selectFile"},upload:{label:this.$t("toolbar.button.file.upload"),icon:"upload",command:"uploadFile"}},t},commands:function(){return{headlines:{label:this.$t("toolbar.button.headings"),icon:"title",dropdown:{h1:{label:this.$t("toolbar.button.heading.1"),icon:"title",command:"prepend",args:"#"},h2:{label:this.$t("toolbar.button.heading.2"),icon:"title",command:"prepend",args:"##"},h3:{label:this.$t("toolbar.button.heading.3"),icon:"title",command:"prepend",args:"###"}}},bold:{label:this.$t("toolbar.button.bold"),icon:"bold",command:"wrap",args:"**",shortcut:"b"},italic:{label:this.$t("toolbar.button.italic"),icon:"italic",command:"wrap",args:"*",shortcut:"i"},link:{label:this.$t("toolbar.button.link"),icon:"url",shortcut:"k",command:"dialog",args:"link"},email:{label:this.$t("toolbar.button.email"),icon:"email",shortcut:"e",command:"dialog",args:"email"},file:this.fileCommandSetup(),code:{label:this.$t("toolbar.button.code"),icon:"code",command:"wrap",args:"`"},ul:{label:this.$t("toolbar.button.ul"),icon:"list-bullet",command:function(){return Jc.apply(this,["ul"])}},ol:{label:this.$t("toolbar.button.ol"),icon:"list-numbers",command:function(){return Jc.apply(this,["ol"])}}}},shortcut:function(t,e){if(this.shortcuts[t]){var n=this.layout[this.shortcuts[t]];if(!n)return!1;e.preventDefault(),this.command(n.command,n.args)}}}},Zc=Gc,Xc=(n("df0d"),Object(c["a"])(Zc,Yc,Wc,!1,null,null,null)),Qc=Xc.exports,tu=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-dialog",{ref:"dialog",attrs:{"submit-button":t.$t("insert")},on:{close:t.cancel,submit:function(e){return t.$refs.form.submit()}}},[n("k-form",{ref:"form",attrs:{fields:t.fields},on:{submit:t.submit},model:{value:t.value,callback:function(e){t.value=e},expression:"value"}})],1)},eu=[],nu={data:function(){return{value:{email:null,text:null},fields:{email:{label:this.$t("email"),type:"email"},text:{label:this.$t("link.text"),type:"text"}}}},computed:{kirbytext:function(){return this.$store.state.system.info.kirbytext}},methods:{open:function(t,e){this.value.text=e,this.$refs.dialog.open()},cancel:function(){this.$emit("cancel")},createKirbytext:function(){var t=this.value.email||"";return this.value.text&&this.value.text.length>0?"(email: ".concat(t," text: ").concat(this.value.text,")"):"(email: ".concat(t,")")},createMarkdown:function(){var t=this.value.email||"";return this.value.text&&this.value.text.length>0?"[".concat(this.value.text,"](mailto:").concat(t,")"):"<".concat(t,">")},submit:function(){this.$emit("submit",this.kirbytext?this.createKirbytext():this.createMarkdown()),this.value={email:null,text:null},this.$refs.dialog.close()}}},iu=nu,su=Object(c["a"])(iu,tu,eu,!1,null,null,null),ru=su.exports,ou=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-dialog",{ref:"dialog",attrs:{"submit-button":t.$t("insert")},on:{close:t.cancel,submit:function(e){return t.$refs.form.submit()}}},[n("k-form",{ref:"form",attrs:{fields:t.fields},on:{submit:t.submit},model:{value:t.value,callback:function(e){t.value=e},expression:"value"}})],1)},au=[],lu={data:function(){return{value:{url:null,text:null},fields:{url:{label:this.$t("link"),type:"text",placeholder:this.$t("url.placeholder"),icon:"url"},text:{label:this.$t("link.text"),type:"text"}}}},computed:{kirbytext:function(){return this.$store.state.system.info.kirbytext}},methods:{open:function(t,e){this.value.text=e,this.$refs.dialog.open()},cancel:function(){this.$emit("cancel")},createKirbytext:function(){return this.value.text.length>0?"(link: ".concat(this.value.url," text: ").concat(this.value.text,")"):"(link: ".concat(this.value.url,")")},createMarkdown:function(){return this.value.text.length>0?"[".concat(this.value.text,"](").concat(this.value.url,")"):"<".concat(this.value.url,">")},submit:function(){this.$emit("submit",this.kirbytext?this.createKirbytext():this.createMarkdown()),this.value={url:null,text:null},this.$refs.dialog.close()}}},cu=lu,uu=Object(c["a"])(cu,ou,au,!1,null,null,null),pu=uu.exports,fu=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.value?n("ul",{staticClass:"k-files-field-preview"},t._l(t.value,(function(e){return n("li",{key:e.url},[n("k-link",{attrs:{title:e.filename,to:e.link},nativeOn:{click:function(t){t.stopPropagation()}}},["image"===e.type?n("k-image",t._b({},"k-image",t.imageOptions(e),!1)):n("k-icon",t._b({},"k-icon",e.icon,!1))],1)],1)})),0):t._e()},du=[],hu=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"list",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"1/1";if(!t||0===t.length)return!1;var i=null,s=null;if(t.list?(i=t[e].url,s=t[e].srcset):(i=t.url,s=t.srcset),!i)return!1;var r={src:i,srcset:s,back:t.back||"black",cover:t.cover};return"cards"===e&&(r.ratio=t.ratio||"3/2",r.sizes=mu(n)),r};function mu(t){switch(t){case"1/2":case"2/4":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 44em, 27em";case"1/3":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 29.333em, 27em";case"1/4":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 22em, 27em";case"2/3":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 27em, 27em";case"3/4":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 66em, 27em";default:return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 88em, 27em"}}function gu(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function bu(t){for(var e=1;e0?"mailto:"+this.value:null}}},Du=Cu,Tu=Object(c["a"])(Du,vu,ku,!1,null,null,null),Iu=Tu.exports,Lu=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.value?n("ul",{staticClass:"k-pages-field-preview"},t._l(t.value,(function(e){return n("li",{key:e.id},[n("figure",[n("k-link",{attrs:{title:e.id,to:t.$api.pages.link(e.id)},nativeOn:{click:function(t){t.stopPropagation()}}},[n("k-icon",{staticClass:"k-pages-field-preview-image",attrs:{type:"page",back:"pattern"}}),n("figcaption",[t._v("\n "+t._s(e.text)+"\n ")])],1)],1)])})),0):t._e()},Au=[],Bu={props:{value:Array}},qu=Bu,Nu=(n("d0c1"),Object(c["a"])(qu,Lu,Au,!1,null,null,null)),Ru=Nu.exports,Mu=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-input",{staticClass:"k-toggle-field-preview",attrs:{text:t.text,type:"toggle"},on:{input:function(e){return t.$emit("input",e)}},model:{value:t.value,callback:function(e){t.value=e},expression:"value"}})},Fu=[],Uu={props:{field:Object,value:Boolean,column:Object},computed:{text:function(){return!1!==this.column.text?this.field.text:null}}},zu=Uu,Hu=(n("1c4e"),Object(c["a"])(zu,Mu,Fu,!1,null,null,null)),Ku=Hu.exports,Vu=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.value?n("ul",{staticClass:"k-users-field-preview"},t._l(t.value,(function(e){return n("li",{key:e.email},[n("figure",[n("k-link",{attrs:{title:e.email,to:t.$api.users.link(e.id)},nativeOn:{click:function(t){t.stopPropagation()}}},[e.avatar?n("k-image",{staticClass:"k-users-field-preview-avatar",attrs:{src:e.avatar.url,back:"pattern"}}):n("k-icon",{staticClass:"k-users-field-preview-avatar",attrs:{type:"user",back:"pattern"}}),n("figcaption",[t._v("\n "+t._s(e.username)+"\n ")])],1)],1)])})),0):t._e()},Yu=[],Wu={props:{value:Array}},Ju=Wu,Gu=(n("3a85"),Object(c["a"])(Ju,Vu,Yu,!1,null,null,null)),Zu=Gu.exports,Xu=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-bar"},[t.$slots.left?n("div",{staticClass:"k-bar-slot",attrs:{"data-position":"left"}},[t._t("left")],2):t._e(),t.$slots.center?n("div",{staticClass:"k-bar-slot",attrs:{"data-position":"center"}},[t._t("center")],2):t._e(),t.$slots.right?n("div",{staticClass:"k-bar-slot",attrs:{"data-position":"right"}},[t._t("right")],2):t._e()])},Qu=[],tp=(n("6f7be"),{}),ep=Object(c["a"])(tp,Xu,Qu,!1,null,null,null),np=ep.exports,ip=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",t._g({staticClass:"k-box",attrs:{"data-theme":t.theme}},t.$listeners),[t._t("default",[n("k-text",{domProps:{innerHTML:t._s(t.text)}})])],2)},sp=[],rp={props:{theme:String,text:String}},op=rp,ap=(n("7dc7"),Object(c["a"])(op,ip,sp,!1,null,null,null)),lp=ap.exports,cp=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("figure",t._g({staticClass:"k-card"},t.$listeners),[t.sortable?n("k-sort-handle"):t._e(),n(t.wrapper,{tag:"component",attrs:{to:t.link,target:t.target}},[t.imageOptions?n("k-image",t._b({staticClass:"k-card-image"},"k-image",t.imageOptions,!1)):n("span",{staticClass:"k-card-icon",style:"padding-bottom:"+t.ratioPadding},[n("k-icon",t._b({},"k-icon",t.icon,!1))],1),n("figcaption",{staticClass:"k-card-content"},[n("span",{staticClass:"k-card-text",attrs:{"data-noinfo":!t.info}},[t._v(t._s(t.text))]),t.info?n("span",{staticClass:"k-card-info",domProps:{innerHTML:t._s(t.info)}}):t._e()])],1),n("nav",{staticClass:"k-card-options"},[t.flag?n("k-button",t._b({staticClass:"k-card-options-button",on:{click:t.flag.click}},"k-button",t.flag,!1)):t._e(),t._t("options",[t.options?n("k-button",{staticClass:"k-card-options-button",attrs:{tooltip:t.$t("options"),icon:"dots"},on:{click:function(e){return e.stopPropagation(),t.$refs.dropdown.toggle()}}}):t._e(),n("k-dropdown-content",{ref:"dropdown",staticClass:"k-card-options-dropdown",attrs:{options:t.options,align:"right"},on:{action:function(e){return t.$emit("action",e)}}})])],2)],1)},up=[],pp={inheritAttrs:!1,props:{column:String,flag:Object,icon:{type:Object,default:function(){return{type:"file",back:"black"}}},image:[Object,Boolean],info:String,link:[String,Function],options:[Array,Function],sortable:Boolean,target:String,text:String},computed:{wrapper:function(){return this.link?"k-link":"div"},ratioPadding:function(){return this.icon&&this.icon.ratio?this.$helper.ratio(this.icon.ratio):this.$helper.ratio("3/2")},imageOptions:function(){return hu(this.image,"cards",this.column)}}},fp=pp,dp=(n("c119"),Object(c["a"])(fp,cp,up,!1,null,null,null)),hp=dp.exports,mp=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-cards"},[t._t("default",t._l(t.cards,(function(e,i){return n("k-card",t._g(t._b({key:i},"k-card",e,!1),t.$listeners))})))],2)},gp=[],bp={props:{cards:Array}},vp=bp,kp=(n("f56d"),Object(c["a"])(vp,mp,gp,!1,null,null,null)),yp=kp.exports,$p=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-collection",attrs:{"data-layout":t.layout}},[n("k-draggable",{attrs:{list:t.items,options:t.dragOptions,element:t.elements.list,"data-size":t.size,handle:!0},on:{change:function(e){return t.$emit("change",e)},end:t.onEnd}},t._l(t.items,(function(e,i){return n(t.elements.item,t._b({key:i,tag:"component",class:{"k-draggable-item":e.sortable},on:{action:function(n){return t.$emit("action",e,n)},dragstart:function(n){return t.onDragStart(n,e.dragText)}}},"component",e,!1))})),1),t.hasFooter?n("footer",{staticClass:"k-collection-footer"},[t.help?n("k-text",{staticClass:"k-collection-help",attrs:{theme:"help"},domProps:{innerHTML:t._s(t.help)}}):t._e(),n("div",{staticClass:"k-collection-pagination"},[t.hasPagination?n("k-pagination",t._b({on:{paginate:function(e){return t.$emit("paginate",e)}}},"k-pagination",t.paginationOptions,!1)):t._e()],1)],1):t._e()],1)},Op=[];function _p(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function wp(t){for(var e=1;e1?n("div",{staticClass:"k-header-tabs"},[n("nav",[t._l(t.visibleTabs,(function(e,i){return n("k-button",{key:t.$route.fullPath+"-tab-"+i,staticClass:"k-tab-button",attrs:{link:"#"+e.name,current:t.currentTab&&t.currentTab.name===e.name,icon:e.icon,tooltip:e.label}},[t._v("\n "+t._s(e.label)+"\n ")])})),t.invisibleTabs.length?n("k-button",{staticClass:"k-tab-button k-tabs-dropdown-button",attrs:{icon:"dots"},on:{click:function(e){return e.stopPropagation(),t.$refs.more.toggle()}}},[t._v("\n "+t._s(t.$t("more"))+"\n ")]):t._e()],2),t.invisibleTabs.length?n("k-dropdown-content",{ref:"more",staticClass:"k-tabs-dropdown",attrs:{align:"right"}},t._l(t.invisibleTabs,(function(e,i){return n("k-dropdown-item",{key:"more-"+i,attrs:{link:"#"+e.name,current:t.currentTab&&t.currentTab.name===e.name,icon:e.icon,tooltip:e.label}},[t._v("\n "+t._s(e.label)+"\n ")])})),1):t._e()],1):t._e()],1)},af=[],lf={props:{editable:Boolean,tabs:Array,tab:Object},data:function(){return{size:null,currentTab:this.tab,visibleTabs:this.tabs,invisibleTabs:[]}},watch:{tab:function(){this.currentTab=this.tab},tabs:function(t){this.visibleTabs=t,this.invisibleTabs=[],this.resize(!0)}},created:function(){window.addEventListener("resize",this.resize)},destroyed:function(){window.removeEventListener("resize",this.resize)},methods:{resize:function(t){if(this.tabs&&!(this.tabs.length<=1)){if(this.tabs.length<=3)return this.visibleTabs=this.tabs,void(this.invisibleTabs=[]);if(window.innerWidth>=700){if("large"===this.size&&!t)return;this.visibleTabs=this.tabs,this.invisibleTabs=[],this.size="large"}else{if("small"===this.size&&!t)return;this.visibleTabs=this.tabs.slice(0,2),this.invisibleTabs=this.tabs.slice(2),this.size="small"}}}}},cf=lf,uf=(n("53c5"),Object(c["a"])(cf,of,af,!1,null,null,null)),pf=uf.exports,ff=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("ul",{staticClass:"k-list"},[t._t("default",t._l(t.items,(function(e,i){return n("k-list-item",t._g(t._b({key:i},"k-list-item",e,!1),t.$listeners))})))],2)},df=[],hf={props:{items:Array}},mf=hf,gf=(n("c857"),Object(c["a"])(mf,ff,df,!1,null,null,null)),bf=gf.exports,vf=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n(t.element,t._g({tag:"component",staticClass:"k-list-item"},t.$listeners),[t.sortable?n("k-sort-handle"):t._e(),n("k-link",{staticClass:"k-list-item-content",attrs:{to:t.link,target:t.target}},[t.image?n("span",{staticClass:"k-list-item-image"},[t.imageOptions?n("k-image",t._b({},"k-image",t.imageOptions,!1)):n("k-icon",t._b({},"k-icon",t.icon,!1))],1):t._e(),n("span",{staticClass:"k-list-item-text"},[n("em",[t._v(t._s(t.text))]),t.info?n("small",{domProps:{innerHTML:t._s(t.info)}}):t._e()])]),n("nav",{staticClass:"k-list-item-options"},[t._t("options",[t.flag?n("k-button",t._b({staticClass:"k-list-item-status",on:{click:t.flag.click}},"k-button",t.flag,!1)):t._e(),t.options?n("k-button",{staticClass:"k-list-item-toggle",attrs:{tooltip:t.$t("options"),icon:"dots",alt:"Options"},on:{click:function(e){return e.stopPropagation(),t.$refs.options.toggle()}}}):t._e(),n("k-dropdown-content",{ref:"options",attrs:{options:t.options,align:"right"},on:{action:function(e){return t.$emit("action",e)}}})])],2)],1)},kf=[],yf={inheritAttrs:!1,props:{element:{type:String,default:"li"},image:[Object,Boolean],icon:{type:Object,default:function(){return{type:"file",back:"black"}}},sortable:Boolean,text:String,target:String,info:String,link:[String,Function],flag:Object,options:[Array,Function]},computed:{imageOptions:function(){return hu(this.image)}}},$f=yf,Of=(n("fa6a"),Object(c["a"])($f,vf,kf,!1,null,null,null)),_f=Of.exports,wf=function(){var t=this,e=t.$createElement,n=t._self._c||e;return 0===t.tabs.length?n("k-box",{attrs:{text:"This page has no blueprint setup yet",theme:"info"}}):t.tab?n("k-sections",{attrs:{parent:t.parent,blueprint:t.blueprint,columns:t.tab.columns},on:{submit:function(e){return t.$emit("submit",e)}}}):t._e()},jf=[],xf={props:{parent:String,blueprint:String,tabs:Array},data:function(){return{tab:null}},watch:{$route:function(){this.open()},blueprint:function(){this.open()}},mounted:function(){this.open()},methods:{open:function(t){if(0!==this.tabs.length){t||(t=this.$route.hash.replace("#","")),t||(t=this.tabs[0].name);var e=null;this.tabs.forEach((function(n){n.name===t&&(e=n)})),e||(e=this.tabs[0]),this.tab=e,this.$emit("tab",this.tab)}}}},Sf=xf,Pf=Object(c["a"])(Sf,wf,jf,!1,null,null,null),Ef=Pf.exports,Cf=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-view",attrs:{"data-align":t.align}},[t._t("default")],2)},Df=[],Tf={props:{align:String}},If=Tf,Lf=(n("daa8"),Object(c["a"])(If,Cf,Df,!1,null,null,null)),Af=Lf.exports,Bf=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("draggable",t._g(t._b({staticClass:"k-draggable",attrs:{tag:t.element,list:t.list,move:t.move}},"draggable",t.dragOptions,!1),t.listeners),[t._t("default"),t._t("footer",null,{slot:"footer"})],2)},qf=[],Nf=n("310e"),Rf=n.n(Nf);function Mf(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function Ff(t){for(var e=1;e0&&void 0!==arguments[0]?arguments[0]:0;this.$children[t]&&this.$children[t].focus&&(this.current=t,this.$children[t].focus())},navigate:function(t){switch(t.code){case"Escape":case"ArrowLeft":this.close(),this.$emit("leave",t.code);break;case"ArrowUp":t.preventDefault();while(1){if(this.current--,this.current<0){this.close(),this.$emit("leave",t.code);break}if(this.$children[this.current]&&!1===this.$children[this.current].disabled){this.focus(this.current);break}}break;case"ArrowDown":t.preventDefault();while(1){if(this.current++,this.current>this.$children.length-1){var e=this.$children.filter((function(t){return!1===t.disabled}));this.current=this.$children.indexOf(e[e.length-1]);break}if(this.$children[this.current]&&!1===this.$children[this.current].disabled){this.focus(this.current);break}}break;case"Tab":while(1){if(this.current++,this.current>this.$children.length-1){this.close(),this.$emit("leave",t.code);break}if(this.$children[this.current]&&!1===this.$children[this.current].disabled)break}break}}}},vh=bh,kh=(n("98a1"),Object(c["a"])(vh,hh,mh,!1,null,null,null)),yh=kh.exports,$h=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-button",t._g(t._b({ref:"button",staticClass:"k-dropdown-item"},"k-button",t.$props,!1),t.listeners),[t._t("default")],2)},Oh=[];function _h(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function wh(t){for(var e=1;e1?[t._v(t._s(t.detailsText))]:t._e(),t._v(t._s(t.total)+"\n ")],2),n("k-dropdown-content",{ref:"dropdown",staticClass:"k-pagination-selector",on:{open:function(e){t.$nextTick((function(){return t.$refs.page.focus()}))}}},[n("div",{staticClass:"k-pagination-settings"},[n("label",{attrs:{for:"k-pagination-page"}},[n("span",[t._v(t._s(t.pageLabel)+":")]),n("select",{ref:"page",attrs:{id:"k-pagination-page"}},t._l(t.pages,(function(e){return n("option",{key:e,domProps:{selected:t.page===e,value:e}},[t._v("\n "+t._s(e)+"\n ")])})),0)]),n("k-button",{attrs:{icon:"check"},on:{click:function(e){return t.goTo(t.$refs.page.value)}}})],1)])],1)]:[n("span",{staticClass:"k-pagination-details"},[t.total>1?[t._v(t._s(t.detailsText))]:t._e(),t._v(t._s(t.total)+"\n ")],2)]]:t._e(),t.show?n("k-button",{attrs:{disabled:!t.hasNext,tooltip:t.nextLabel,icon:"angle-right"},on:{click:t.next}}):t._e()],2):t._e()},Hh=[],Kh={props:{align:{type:String,default:"left"},details:{type:Boolean,default:!1},dropdown:{type:Boolean,default:!0},validate:{type:Function,default:function(){return Promise.resolve()}},page:{type:Number,default:1},total:{type:Number,default:0},limit:{type:Number,default:10},keys:{type:Boolean,default:!1},pageLabel:{type:String,default:function(){return this.$t("pagination.page")}},prevLabel:{type:String,default:function(){return this.$t("prev")}},nextLabel:{type:String,default:function(){return this.$t("next")}}},data:function(){return{currentPage:this.page}},computed:{show:function(){return this.pages>1},start:function(){return(this.currentPage-1)*this.limit+1},end:function(){var t=this.start-1+this.limit;return t>this.total?this.total:t},detailsText:function(){return 1===this.limit?this.start+" / ":this.start+"-"+this.end+" / "},pages:function(){return Math.ceil(this.total/this.limit)},hasPrev:function(){return this.start>1},hasNext:function(){return this.endthis.limit},offset:function(){return this.start-1}},watch:{page:function(t){this.currentPage=parseInt(t)}},created:function(){!0===this.keys&&window.addEventListener("keydown",this.navigate,!1)},destroyed:function(){window.removeEventListener("keydown",this.navigate,!1)},methods:{goTo:function(t){var e=this;this.validate(t).then((function(){t<1&&(t=1),t>e.pages&&(t=e.pages),e.currentPage=t,e.$refs.dropdown&&e.$refs.dropdown.close(),e.$emit("paginate",{page:e.currentPage,start:e.start,end:e.end,limit:e.limit,offset:e.offset})})).catch((function(){}))},prev:function(){this.goTo(this.currentPage-1)},next:function(){this.goTo(this.currentPage+1)},navigate:function(t){switch(t.code){case"ArrowLeft":this.prev();break;case"ArrowRight":this.next();break}}}},Vh=Kh,Yh=(n("a66d"),Object(c["a"])(Vh,zh,Hh,!1,null,null,null)),Wh=Yh.exports,Jh=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-button-group",{staticClass:"k-prev-next"},[n("k-button",t._b({attrs:{icon:"angle-left"}},"k-button",t.prev,!1)),n("k-button",t._b({attrs:{icon:"angle-right"}},"k-button",t.next,!1))],1)},Gh=[],Zh={props:{prev:{type:Object,default:function(){return{disabled:!0,link:"#"}}},next:{type:Object,default:function(){return{disabled:!0,link:"#"}}}}},Xh=Zh,Qh=(n("7a7d"),Object(c["a"])(Xh,Jh,Gh,!1,null,null,null)),tm=Qh.exports,em=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"k-search",attrs:{role:"search"},on:{click:t.close}},[n("div",{staticClass:"k-search-box",on:{click:function(t){t.stopPropagation()}}},[n("div",{staticClass:"k-search-input"},[n("k-dropdown",{staticClass:"k-search-types"},[n("k-button",{attrs:{icon:t.type.icon},on:{click:function(e){return t.$refs.types.toggle()}}},[t._v(t._s(t.type.label)+":")]),n("k-dropdown-content",{ref:"types"},t._l(t.types,(function(e,i){return n("k-dropdown-item",{key:i,attrs:{icon:e.icon},on:{click:function(e){t.currentType=i}}},[t._v("\n "+t._s(e.label)+"\n ")])})),1)],1),n("input",{directives:[{name:"model",rawName:"v-model",value:t.q,expression:"q"}],ref:"input",attrs:{placeholder:t.$t("search")+" …","aria-label":"$t('search')",type:"text"},domProps:{value:t.q},on:{keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"down",40,e.key,["Down","ArrowDown"])?null:(e.preventDefault(),t.down(e))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"up",38,e.key,["Up","ArrowUp"])?null:(e.preventDefault(),t.up(e))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"tab",9,e.key,"Tab")?null:(e.preventDefault(),t.tab(e))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.enter(e)},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"esc",27,e.key,["Esc","Escape"])?null:t.close(e)}],input:function(e){e.target.composing||(t.q=e.target.value)}}}),n("k-button",{staticClass:"k-search-close",attrs:{tooltip:t.$t("close"),icon:"cancel"},on:{click:t.close}})],1),n("ul",t._l(t.items,(function(e,i){return n("li",{key:e.id,attrs:{"data-selected":t.selected===i},on:{mouseover:function(e){t.selected=i}}},[n("k-link",{attrs:{to:e.link},on:{click:t.close}},[n("strong",[t._v(t._s(e.title))]),n("small",[t._v(t._s(e.info))])])],1)})),0)])])},nm=[],im={data:function(){return{items:[],q:null,selected:-1,currentType:"users"===this.$store.state.view?"users":"pages"}},computed:{type:function(){return this.types[this.currentType]||this.types["pages"]},types:function(){return{pages:{label:this.$t("pages"),icon:"page",endpoint:"site/search"},files:{label:this.$t("files"),icon:"image",endpoint:"files/search"},users:{label:this.$t("users"),icon:"users",endpoint:"users/search"}}}},watch:{q:ut((function(t){this.search(t)}),200),currentType:function(){this.search(this.q)}},mounted:function(){var t=this;this.$nextTick((function(){t.$refs.input.focus()}))},methods:{open:function(t){t.preventDefault(),this.$store.dispatch("search",!0)},click:function(t){this.selected=t,this.tab()},close:function(){this.$store.dispatch("search",!1)},down:function(){this.selected=0&&this.selected--}}},sm=im,rm=(n("4cb2"),Object(c["a"])(sm,em,nm,!1,null,null,null)),om=rm.exports,am=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",{ref:"button",staticClass:"k-tag",attrs:{"data-size":t.size,tabindex:"0"},on:{keydown:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"delete",[8,46],e.key,["Backspace","Delete","Del"])?null:(e.preventDefault(),t.remove(e))}}},[n("span",{staticClass:"k-tag-text"},[t._t("default")],2),t.removable?n("span",{staticClass:"k-tag-toggle",on:{click:t.remove}},[t._v("×")]):t._e()])},lm=[],cm={props:{removable:Boolean,size:String},methods:{remove:function(){this.removable&&this.$emit("remove")},focus:function(){this.$refs.button.focus()}}},um=cm,pm=(n("021f"),Object(c["a"])(um,am,lm,!1,null,null,null)),fm=pm.exports,dm=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.user&&t.view?n("div",{staticClass:"k-topbar"},[n("k-view",[n("div",{staticClass:"k-topbar-wrapper"},[n("k-dropdown",{staticClass:"k-topbar-menu"},[n("k-button",{staticClass:"k-topbar-button k-topbar-menu-button",attrs:{tooltip:t.$t("menu"),icon:"bars"},on:{click:function(e){return t.$refs.menu.toggle()}}},[n("k-icon",{attrs:{type:"angle-down"}})],1),n("k-dropdown-content",{ref:"menu",staticClass:"k-topbar-menu"},[n("ul",[t._l(t.views,(function(e,i){return[e.menu?n("li",{key:"menu-item-"+i,attrs:{"aria-current":t.$store.state.view===i}},[n("k-dropdown-item",{attrs:{disabled:!1===t.$permissions.access[i],icon:e.icon,link:e.link}},[t._v("\n "+t._s(t.menuTitle(e,i))+"\n ")])],1):t._e()]})),n("li",[n("hr")]),n("li",{attrs:{"aria-current":"account"===t.$route.meta.view}},[n("k-dropdown-item",{attrs:{icon:"account",link:"/account"}},[t._v("\n "+t._s(t.$t("view.account"))+"\n ")])],1),n("li",[n("hr")]),n("li",[n("k-dropdown-item",{attrs:{icon:"logout",link:"/logout"}},[t._v("\n "+t._s(t.$t("logout"))+"\n ")])],1)],2)])],1),t.view?n("k-link",{staticClass:"k-topbar-button k-topbar-view-button",attrs:{to:t.view.link}},[n("k-icon",{attrs:{type:t.view.icon}}),t._v(" "+t._s(t.breadcrumbTitle)+"\n ")],1):t._e(),t.$store.state.breadcrumb.length>1?n("k-dropdown",{staticClass:"k-topbar-breadcrumb-menu"},[n("k-button",{staticClass:"k-topbar-button",on:{click:function(e){return t.$refs.crumb.toggle()}}},[t._v("\n …\n "),n("k-icon",{attrs:{type:"angle-down"}})],1),n("k-dropdown-content",{ref:"crumb"},[n("k-dropdown-item",{attrs:{icon:t.view.icon,link:t.view.link}},[t._v("\n "+t._s(t.$t("view."+t.$store.state.view,t.view.label))+"\n ")]),t._l(t.$store.state.breadcrumb,(function(e,i){return n("k-dropdown-item",{key:"crumb-"+i+"-dropdown",attrs:{icon:t.view.icon,link:e.link}},[t._v("\n "+t._s(e.label)+"\n ")])}))],2)],1):t._e(),n("nav",{staticClass:"k-topbar-crumbs"},t._l(t.$store.state.breadcrumb,(function(e,i){return n("k-link",{key:"crumb-"+i,attrs:{to:e.link}},[t._v("\n "+t._s(e.label)+"\n ")])})),1),n("div",{staticClass:"k-topbar-signals"},[n("span",{directives:[{name:"show",rawName:"v-show",value:t.$store.state.isLoading,expression:"$store.state.isLoading"}],staticClass:"k-topbar-loader"},[n("svg",{attrs:{viewBox:"0 0 16 18"}},[n("path",{attrs:{fill:"white",d:"M8,0 L16,4.50265232 L16,13.5112142 L8,18.0138665 L0,13.5112142 L0,4.50265232 L8,0 Z M2.10648757,5.69852516 L2.10648757,12.3153414 L8,15.632396 L13.8935124,12.3153414 L13.8935124,5.69852516 L8,2.38147048 L2.10648757,5.69852516 Z"}})])]),t.notification?[n("k-button",{staticClass:"k-topbar-notification k-topbar-signals-button",attrs:{theme:"positive"},on:{click:function(e){return t.$store.dispatch("notification/close")}}},[t._v("\n "+t._s(t.notification.message)+"\n ")])]:t.unregistered?[n("div",{staticClass:"k-registration"},[n("p",[t._v(t._s(t.$t("license.unregistered")))]),n("k-button",{staticClass:"k-topbar-signals-button",attrs:{responsive:!0,tooltip:t.$t("license.unregistered"),icon:"key"},on:{click:function(e){return t.$emit("register")}}},[t._v("\n "+t._s(t.$t("license.register"))+"\n ")]),n("k-button",{staticClass:"k-topbar-signals-button",attrs:{responsive:!0,link:"https://getkirby.com/buy",target:"_blank",icon:"cart"}},[t._v("\n "+t._s(t.$t("license.buy"))+"\n ")])],1)]:t._e(),[n("k-form-indicator")],n("k-button",{staticClass:"k-topbar-signals-button",attrs:{tooltip:t.$t("search"),icon:"search"},on:{click:function(e){return t.$store.dispatch("search",!0)}}})],2)],1)])],1):t._e()},hm=[];function mm(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function gm(t){for(var e=1;ethis.options.max)},language:function(){return this.$store.state.languages.current},paginationId:function(){return"kirby$pagination$"+this.parent+"/"+this.name}},watch:{language:function(){this.reload()}},methods:{items:function(t){return t},load:function(t){var e=this;t||(this.isLoading=!0),null===this.pagination.page&&(this.pagination.page=localStorage.getItem(this.paginationId)||1),this.$api.get(this.parent+"/sections/"+this.name,{page:this.pagination.page}).then((function(t){e.isLoading=!1,e.options=t.options,e.pagination=t.pagination,e.data=e.items(t.data)})).catch((function(t){e.isLoading=!1,e.error=t.message}))},paginate:function(t){localStorage.setItem(this.paginationId,t.page),this.pagination=t,this.reload()},reload:function(){this.load(!0)}}},Nm={mixins:[qm],computed:{add:function(){return this.options.add&&this.$permissions.pages.create}},created:function(){this.load(),this.$events.$on("page.changeStatus",this.reload)},destroyed:function(){this.$events.$off("page.changeStatus",this.reload)},methods:{create:function(){this.add&&this.$refs.create.open(this.options.link||this.parent,this.parent+"/children/blueprints",this.name)},action:function(t,e){var n=this;switch(e){case"duplicate":this.$refs.duplicate.open(t.id);break;case"preview":var i=window.open("","_blank");i.document.write="...",this.$api.pages.preview(t.id).then((function(t){i.location.href=t})).catch((function(t){n.$store.dispatch("notification/error",t)}));break;case"rename":this.$refs.rename.open(t.id);break;case"url":this.$refs.url.open(t.id);break;case"status":this.$refs.status.open(t.id);break;case"template":this.$refs.template.open(t.id);break;case"remove":if(this.data.length<=this.options.min){var s=this.options.min>1?"plural":"singular";this.$store.dispatch("notification/error",{message:this.$t("error.section.pages.min."+s,{section:this.options.headline||this.name,min:this.options.min})});break}this.$refs.remove.open(t.id);break;default:throw new Error("Invalid action")}},items:function(t){var e=this;return t.map((function(t){var n=!1!==t.permissions.changeStatus;return t.flag={class:"k-status-flag k-status-flag-"+t.status,tooltip:n?e.$t("page.status"):"".concat(e.$t("page.status")," (").concat(e.$t("disabled"),")"),icon:n?"circle":"protected",disabled:!n,click:function(){e.action(t,"status")}},t.options=function(n){e.$api.pages.options(t.id,"list").then((function(t){return n(t)})).catch((function(t){e.$store.dispatch("notification/error",t)}))},t.sortable=t.permissions.sort&&e.options.sortable,t.column=e.column,t}))},sort:function(t){var e=this,n=null;if(t.added&&(n="added"),t.moved&&(n="moved"),n){var i=t[n].element,s=t[n].newIndex+1+this.pagination.offset;this.$api.pages.status(i.id,"listed",s).then((function(){e.$store.dispatch("notification/success",":)")})).catch((function(t){e.$store.dispatch("notification/error",{message:t.message,details:t.details}),e.reload()}))}},update:function(){this.reload(),this.$events.$emit("model.update")}}},Rm=Nm,Mm=Object(c["a"])(Rm,Am,Bm,!1,null,null,null),Fm=Mm.exports,Um=function(){var t=this,e=t.$createElement,n=t._self._c||e;return!1===t.isLoading?n("section",{staticClass:"k-files-section"},[n("header",{staticClass:"k-section-header"},[n("k-headline",[t._v("\n "+t._s(t.headline)+" "),t.options.min?n("abbr",{attrs:{title:t.$t("section.required")}},[t._v("*")]):t._e()]),t.add?n("k-button-group",[n("k-button",{attrs:{icon:"upload"},on:{click:t.upload}},[t._v(t._s(t.$t("add")))])],1):t._e()],1),t.error?[n("k-box",{attrs:{theme:"negative"}},[n("k-text",{attrs:{size:"small"}},[n("strong",[t._v(t._s(t.$t("error.section.notLoaded",{name:t.name}))+":")]),t._v("\n "+t._s(t.error)+"\n ")])],1)]:[n("k-dropzone",{attrs:{disabled:!1===t.add},on:{drop:t.drop}},[t.data.length?n("k-collection",{attrs:{help:t.help,items:t.data,layout:t.options.layout,pagination:t.pagination,sortable:t.options.sortable,size:t.options.size,"data-invalid":t.isInvalid},on:{sort:t.sort,paginate:t.paginate,action:t.action}}):[n("k-empty",{attrs:{layout:t.options.layout,"data-invalid":t.isInvalid,icon:"image"},on:{click:function(e){t.add&&t.upload()}}},[t._v("\n "+t._s(t.options.empty||t.$t("files.empty"))+"\n ")]),n("footer",{staticClass:"k-collection-footer"},[t.help?n("k-text",{staticClass:"k-collection-help",attrs:{theme:"help"},domProps:{innerHTML:t._s(t.help)}}):t._e()],1)]],2),n("k-file-rename-dialog",{ref:"rename",on:{success:t.update}}),n("k-file-remove-dialog",{ref:"remove",on:{success:t.update}}),n("k-upload",{ref:"upload",on:{success:t.uploaded,error:t.reload}})]],2):t._e()},zm=[];function Hm(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function Km(t){for(var e=1;e1?"plural":"singular";this.$store.dispatch("notification/error",{message:this.$t("error.section.files.min."+n,{section:this.options.headline||this.name,min:this.options.min})});break}this.$refs.remove.open(t.parent,t.filename);break}},drop:function(t){if(!1===this.add)return!1;this.$refs.upload.drop(t,Km({},this.add,{url:x.api+"/"+this.add.api}))},items:function(t){var e=this;return t.map((function(t){return t.options=function(n){e.$api.files.options(t.parent,t.filename,"list").then((function(t){return n(t)})).catch((function(t){e.$store.dispatch("notification/error",t)}))},t.sortable=e.options.sortable,t.column=e.column,t}))},replace:function(t){this.$refs.upload.open({url:x.api+"/"+this.$api.files.url(t.parent,t.filename),accept:t.mime,multiple:!1})},sort:function(t){var e=this;if(!1===this.options.sortable)return!1;t=t.map((function(t){return t.id})),this.$api.patch(this.options.apiUrl+"/files/sort",{files:t,index:this.pagination.offset}).then((function(){e.$store.dispatch("notification/success",":)")})).catch((function(t){e.reload(),e.$store.dispatch("notification/error",t.message)}))},update:function(){this.$events.$emit("model.update")},upload:function(){if(!1===this.add)return!1;this.$refs.upload.open(Km({},this.add,{url:x.api+"/"+this.add.api}))},uploaded:function(){this.$events.$emit("file.create"),this.$events.$emit("model.update"),this.$store.dispatch("notification/success",":)")}}},Ym=Vm,Wm=Object(c["a"])(Ym,Um,zm,!1,null,null,null),Jm=Wm.exports,Gm=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.isLoading?t._e():n("section",{staticClass:"k-fields-section"},[t.issue?[n("k-headline",{staticClass:"k-fields-issue-headline"},[t._v("Error")]),n("k-box",{attrs:{text:t.issue.message,theme:"negative"}})]:t._e(),n("k-form",{attrs:{fields:t.fields,validate:!0,value:t.values,disabled:null!==t.$store.state.content.status.lock},on:{input:t.input,submit:t.onSubmit}})],2)},Zm=[],Xm={mixins:[Cm],inheritAttrs:!1,data:function(){return{fields:{},isLoading:!0,issue:null}},computed:{language:function(){return this.$store.state.languages.current},values:function(){return this.$store.getters["content/values"]()}},watch:{language:function(){this.fetch()}},created:function(){this.fetch()},methods:{input:function(t,e,n){this.$store.dispatch("content/update",[n,t[n]])},fetch:function(){var t=this;this.$api.get(this.parent+"/sections/"+this.name).then((function(e){t.fields=e.fields,Object.keys(t.fields).forEach((function(e){t.fields[e].section=t.name,t.fields[e].endpoints={field:t.parent+"/fields/"+e,section:t.parent+"/sections/"+t.name,model:t.parent}})),t.isLoading=!1})).catch((function(e){t.issue=e,t.isLoading=!1}))},onSubmit:function(t){this.$events.$emit("keydown.cmd.s",t)}}},Qm=Xm,tg=(n("7d5d"),Object(c["a"])(Qm,Gm,Zm,!1,null,null,null)),eg=tg.exports,ng=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-error-view",{staticClass:"k-browser-view"},[n("p",[t._v("\n We are really sorry, but your browser does not support\n all features required for the Kirby Panel.\n ")]),!1===t.hasFetchSupport?[n("p",[n("strong",[t._v("Fetch")]),n("br"),t._v("\n We use Javascript's new Fetch API. You can find a list of supported browsers for this feature on\n "),n("strong",[n("a",{attrs:{href:"https://caniuse.com/#feat=fetch"}},[t._v("caniuse.com")])])])]:t._e(),!1===t.hasGridSupport?[n("p",[n("strong",[t._v("CSS Grid")]),n("br"),t._v("\n We use CSS Grids for all our layouts. You can find a list of supported browsers for this feature on\n "),n("strong",[n("a",{attrs:{href:"https://caniuse.com/#feat=css-grid"}},[t._v("caniuse.com")])])])]:t._e()],2)},ig=[],sg={grid:function(){return!(!window.CSS||!window.CSS.supports("display","grid"))},fetch:function(){return void 0!==window.fetch},all:function(){return this.fetch()&&this.grid()}},rg={computed:{hasFetchSupport:function(){return sg.fetch()},hasGridSupport:function(){return sg.grid()}},created:function(){this.$store.dispatch("content/current",null),sg.all()&&this.$go("/")}},og=rg,ag=(n("d6fc"),Object(c["a"])(og,ng,ig,!1,null,null,null)),lg=ag.exports,cg=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-error-boundary",{key:t.plugin,scopedSlots:t._u([{key:"error",fn:function(e){var i=e.error;return n("k-error-view",{},[t._v("\n "+t._s(i.message||i)+"\n ")])}}])},[n("k-"+t.plugin+"-plugin-view",{tag:"component"})],1)},ug=[],pg={props:{plugin:String},beforeRouteEnter:function(t,e,n){n((function(t){t.$store.dispatch("breadcrumb",[]),t.$store.dispatch("content/current",null)}))},watch:{plugin:{handler:function(){this.$store.dispatch("view",this.plugin)},immediate:!0}}},fg=pg,dg=Object(c["a"])(fg,cg,ug,!1,null,null,null),hg=dg.exports,mg=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-view",{staticClass:"k-error-view"},[n("div",{staticClass:"k-error-view-content"},[n("k-text",[n("p",[n("k-icon",{staticClass:"k-error-view-icon",attrs:{type:"alert"}})],1),n("p",[t._t("default")],2)])],1)])},gg=[],bg=(n("d221"),{}),vg=Object(c["a"])(bg,mg,gg,!1,null,null,null),kg=vg.exports,yg=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.issue?n("k-error-view",[t._v("\n "+t._s(t.issue.message)+"\n")]):n("div",{staticClass:"k-file-view"},[n("k-file-preview",{attrs:{file:t.file}}),n("k-view",{staticClass:"k-file-content",attrs:{"data-locked":t.isLocked}},[n("k-header",{attrs:{editable:t.permissions.changeName&&!t.isLocked,tabs:t.tabs,tab:t.tab},on:{edit:function(e){return t.action("rename")}}},[t._v("\n\n "+t._s(t.file.filename)+"\n\n "),n("k-button-group",{attrs:{slot:"left"},slot:"left"},[n("k-button",{attrs:{responsive:!0,icon:"open"},on:{click:function(e){return t.action("download")}}},[t._v("\n "+t._s(t.$t("open"))+"\n ")]),n("k-dropdown",[n("k-button",{attrs:{responsive:!0,disabled:t.isLocked,icon:"cog"},on:{click:function(e){return t.$refs.settings.toggle()}}},[t._v("\n "+t._s(t.$t("settings"))+"\n ")]),n("k-dropdown-content",{ref:"settings",attrs:{options:t.options},on:{action:t.action}})],1),n("k-languages-dropdown")],1),t.file.id?n("k-prev-next",{attrs:{slot:"right",prev:t.prev,next:t.next},slot:"right"}):t._e()],1),t.file.id?n("k-tabs",{key:t.tabsKey,ref:"tabs",attrs:{parent:t.$api.files.url(t.path,t.file.filename),tabs:t.tabs,blueprint:t.file.blueprint.name},on:{tab:function(e){t.tab=e}}}):t._e(),n("k-file-rename-dialog",{ref:"rename",on:{success:t.renamed}}),n("k-file-remove-dialog",{ref:"remove",on:{success:t.deleted}}),n("k-upload",{ref:"upload",attrs:{url:t.uploadApi,accept:t.file.mime,multiple:!1},on:{success:t.uploaded}})],1)],1)},$g=[],Og={computed:{isLocked:function(){return null!==this.$store.state.content.status.lock}},created:function(){this.fetch(),this.$events.$on("model.reload",this.fetch),this.$events.$on("keydown.left",this.toPrev),this.$events.$on("keydown.right",this.toNext)},destroyed:function(){this.$events.$off("model.reload",this.fetch),this.$events.$off("keydown.left",this.toPrev),this.$events.$off("keydown.right",this.toNext)},methods:{toPrev:function(t){this.prev&&"body"===t.target.localName&&this.$router.push(this.prev.link)},toNext:function(t){this.next&&"body"===t.target.localName&&this.$router.push(this.next.link)}}},_g={mixins:[Og],props:{path:{type:String},filename:{type:String,required:!0}},data:function(){return{name:"",file:{id:null,parent:null,filename:"",url:"",prev:null,next:null,panelIcon:null,panelImage:null,mime:null,content:{}},permissions:{changeName:!1,delete:!1},issue:null,tabs:[],tab:null,options:null}},computed:{uploadApi:function(){return x.api+"/"+this.path+"/files/"+this.filename},prev:function(){if(this.file.prev)return{link:this.$api.files.link(this.path,this.file.prev.filename),tooltip:this.file.prev.filename}},tabsKey:function(){return"file-"+this.file.id+"-tabs"},language:function(){return this.$store.state.languages.current},next:function(){if(this.file.next)return{link:this.$api.files.link(this.path,this.file.next.filename),tooltip:this.file.next.filename}}},watch:{language:function(){this.fetch()},filename:function(){this.fetch()}},methods:{fetch:function(){var t=this;this.$api.files.get(this.path,this.filename,{view:"panel"}).then((function(e){t.file=e,t.file.next=e.nextWithTemplate,t.file.prev=e.prevWithTemplate,t.file.url=e.url,t.name=e.name,t.tabs=e.blueprint.tabs,t.permissions=e.options,t.options=function(e){t.$api.files.options(t.path,t.file.filename).then((function(t){e(t)}))},t.$store.dispatch("breadcrumb",t.$api.files.breadcrumb(t.file,t.$route.name)),t.$store.dispatch("title",t.filename),t.$store.dispatch("content/create",{id:"files/"+e.id,api:t.$api.files.link(t.path,t.filename),content:e.content})})).catch((function(e){window.console.error(e),t.issue=e}))},action:function(t){switch(t){case"download":window.open(this.file.url);break;case"rename":this.$refs.rename.open(this.path,this.file.filename);break;case"replace":this.$refs.upload.open({url:x.api+"/"+this.$api.files.url(this.path,this.file.filename),accept:"."+this.file.extension+","+this.file.mime});break;case"remove":this.$refs.remove.open(this.path,this.file.filename);break}},deleted:function(){this.path?this.$go("/"+this.path):this.$go("/site")},renamed:function(t){this.$go(this.$api.files.link(this.path,t.filename))},uploaded:function(){this.fetch(),this.$store.dispatch("notification/success",":)")}}},wg=_g,jg=Object(c["a"])(wg,yg,$g,!1,null,null,null),xg=jg.exports,Sg=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.system?n("k-view",{staticClass:"k-installation-view",attrs:{align:"center"}},["install"===t.state?n("form",{on:{submit:function(e){return e.preventDefault(),t.install(e)}}},[n("h1",{staticClass:"k-offscreen"},[t._v(t._s(t.$t("installation")))]),n("k-fieldset",{attrs:{fields:t.fields,novalidate:!0},model:{value:t.user,callback:function(e){t.user=e},expression:"user"}}),n("k-button",{attrs:{type:"submit",icon:"check"}},[t._v(t._s(t.$t("install")))])],1):"completed"===t.state?n("k-text",[n("k-headline",[t._v(t._s(t.$t("installation.completed")))]),n("k-link",{attrs:{to:"/login"}},[t._v(t._s(t.$t("login")))])],1):n("div",[t.system.isInstalled?t._e():n("k-headline",[t._v(t._s(t.$t("installation.issues.headline")))]),n("ul",{staticClass:"k-installation-issues"},[!1===t.system.isInstallable?n("li",[n("k-icon",{attrs:{type:"alert"}}),n("span",{domProps:{innerHTML:t._s(t.$t("installation.disabled"))}})],1):t._e(),!1===t.requirements.php?n("li",[n("k-icon",{attrs:{type:"alert"}}),n("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.php"))}})],1):t._e(),!1===t.requirements.server?n("li",[n("k-icon",{attrs:{type:"alert"}}),n("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.server"))}})],1):t._e(),!1===t.requirements.mbstring?n("li",[n("k-icon",{attrs:{type:"alert"}}),n("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.mbstring"))}})],1):t._e(),!1===t.requirements.curl?n("li",[n("k-icon",{attrs:{type:"alert"}}),n("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.curl"))}})],1):t._e(),!1===t.requirements.accounts?n("li",[n("k-icon",{attrs:{type:"alert"}}),n("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.accounts"))}})],1):t._e(),!1===t.requirements.content?n("li",[n("k-icon",{attrs:{type:"alert"}}),n("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.content"))}})],1):t._e(),!1===t.requirements.media?n("li",[n("k-icon",{attrs:{type:"alert"}}),n("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.media"))}})],1):t._e(),!1===t.requirements.sessions?n("li",[n("k-icon",{attrs:{type:"alert"}}),n("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.sessions"))}})],1):t._e()]),n("k-button",{attrs:{icon:"refresh"},on:{click:t.check}},[n("span",{domProps:{innerHTML:t._s(t.$t("retry"))}})])],1)],1):t._e()},Pg=[],Eg={data:function(){return{user:{name:"",email:"",language:"",password:"",role:"admin"},languages:[],system:null}},computed:{state:function(){return this.system.isOk&&this.system.isInstallable&&!this.system.isInstalled?"install":this.system.isOk&&this.system.isInstallable&&this.system.isInstalled?"completed":void 0},translation:function(){return this.$store.state.translation.current},requirements:function(){return this.system&&this.system.requirements?this.system.requirements:{}},fields:function(){return{email:{label:this.$t("email"),type:"email",link:!1,required:!0},password:{label:this.$t("password"),type:"password",placeholder:this.$t("password")+" …",required:!0},language:{label:this.$t("language"),type:"select",options:this.languages,icon:"globe",empty:!1,required:!0}}}},watch:{translation:{handler:function(t){this.user.language=t},immediate:!0},"user.language":function(t){this.$store.dispatch("translation/activate",t)}},created:function(){this.$store.dispatch("content/current",null),this.check()},methods:{install:function(){var t=this;this.$api.system.install(this.user).then((function(e){t.$store.dispatch("user/current",e),t.$store.dispatch("notification/success",t.$t("welcome")+"!"),t.$go("/")})).catch((function(e){t.$store.dispatch("notification/error",e)}))},check:function(){var t=this;this.$store.dispatch("system/load",!0).then((function(e){!0===e.isInstalled&&e.isReady?t.$go("/login"):t.$api.translations.options().then((function(n){t.languages=n,t.system=e,t.$store.dispatch("title",t.$t("view.installation"))}))}))}}},Cg=Eg,Dg=(n("146c"),Object(c["a"])(Cg,Sg,Pg,!1,null,null,null)),Tg=Dg.exports,Ig=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.issue?n("k-error-view",[t._v("\n "+t._s(t.issue.message)+"\n")]):t.ready?n("k-view",{staticClass:"k-login-view",attrs:{align:"center"}},[n("k-login-form")],1):t._e()},Lg=[],Ag=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("form",{staticClass:"k-login-form",on:{submit:function(e){return e.preventDefault(),t.login(e)}}},[n("h1",{staticClass:"k-offscreen"},[t._v(t._s(t.$t("login")))]),t.issue?n("div",{staticClass:"k-login-alert",on:{click:function(e){t.issue=null}}},[n("span",[t._v(t._s(t.issue))]),n("k-icon",{attrs:{type:"alert"}})],1):t._e(),n("k-fieldset",{attrs:{novalidate:!0,fields:t.fields},model:{value:t.user,callback:function(e){t.user=e},expression:"user"}}),n("div",{staticClass:"k-login-buttons"},[n("span",{staticClass:"k-login-checkbox"},[n("k-checkbox-input",{attrs:{value:t.user.remember,label:t.$t("login.remember")},on:{input:function(e){t.user.remember=e}}})],1),n("k-button",{staticClass:"k-login-button",attrs:{icon:"check",type:"submit"}},[t._v("\n "+t._s(t.$t("login"))+" "),t.isLoading?[t._v("…")]:t._e()],2)],1)],1)},Bg=[],qg={data:function(){return{isLoading:!1,issue:"",user:{email:"",password:"",remember:!1}}},computed:{fields:function(){return{email:{autofocus:!0,label:this.$t("email"),type:"email",required:!0,link:!1},password:{label:this.$t("password"),type:"password",minLength:8,required:!0,autocomplete:"current-password",counter:!1}}}},methods:{login:function(){var t=this;this.issue=null,this.isLoading=!0,this.$store.dispatch("user/login",this.user).then((function(){t.$store.dispatch("system/load",!0).then((function(){t.$store.dispatch("notification/success",t.$t("welcome")),t.isLoading=!1}))})).catch((function(){t.issue=t.$t("error.access.login"),t.isLoading=!1}))}}},Ng=qg,Rg=Object(c["a"])(Ng,Ag,Bg,!1,null,null,null),Mg=Rg.exports,Fg={components:{"k-login-form":window.panel.plugins.login||Mg},data:function(){return{ready:!1,issue:null}},created:function(){var t=this;this.$store.dispatch("content/current",null),this.$store.dispatch("system/load").then((function(e){e.isReady||t.$go("/installation"),e.user&&e.user.id&&t.$go("/"),t.ready=!0,t.$store.dispatch("title",t.$t("login"))})).catch((function(e){t.issue=e}))}},Ug=Fg,zg=(n("24c1"),Object(c["a"])(Ug,Ig,Lg,!1,null,null,null)),Hg=zg.exports,Kg=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.issue?n("k-error-view",[t._v("\n "+t._s(t.issue.message)+"\n")]):n("k-view",{staticClass:"k-page-view",attrs:{"data-locked":t.isLocked}},[n("k-header",{attrs:{tabs:t.tabs,tab:t.tab,editable:t.permissions.changeTitle&&!t.isLocked},on:{edit:function(e){return t.action("rename")}}},[t._v("\n "+t._s(t.page.title)+"\n "),n("k-button-group",{attrs:{slot:"left"},slot:"left"},[t.permissions.preview&&t.page.previewUrl?n("k-button",{attrs:{responsive:!0,link:t.page.previewUrl,target:"_blank",icon:"open"}},[t._v("\n "+t._s(t.$t("open"))+"\n ")]):t._e(),t.status?n("k-button",{class:["k-status-flag","k-status-flag-"+t.page.status],attrs:{disabled:!t.permissions.changeStatus||t.isLocked,icon:!t.permissions.changeStatus||t.isLocked?"protected":"circle",responsive:!0,tooltip:t.status.label},on:{click:function(e){return t.action("status")}}},[t._v("\n "+t._s(t.status.label)+"\n ")]):t._e(),n("k-dropdown",[n("k-button",{attrs:{responsive:!0,disabled:!0===t.isLocked,icon:"cog"},on:{click:function(e){return t.$refs.settings.toggle()}}},[t._v("\n "+t._s(t.$t("settings"))+"\n ")]),n("k-dropdown-content",{ref:"settings",attrs:{options:t.options},on:{action:t.action}})],1),n("k-languages-dropdown")],1),t.page.id?n("k-prev-next",{attrs:{slot:"right",prev:t.prev,next:t.next},slot:"right"}):t._e()],1),t.page.id?n("k-tabs",{key:t.tabsKey,ref:"tabs",attrs:{parent:t.$api.pages.url(t.page.id),blueprint:t.blueprint,tabs:t.tabs},on:{tab:t.onTab}}):t._e(),n("k-page-rename-dialog",{ref:"rename",on:{success:t.update}}),n("k-page-duplicate-dialog",{ref:"duplicate"}),n("k-page-url-dialog",{ref:"url"}),n("k-page-status-dialog",{ref:"status",on:{success:t.update}}),n("k-page-template-dialog",{ref:"template",on:{success:t.update}}),n("k-page-remove-dialog",{ref:"remove"})],1)},Vg=[],Yg={mixins:[Og],props:{path:{type:String,required:!0}},data:function(){return{page:{title:"",id:null,prev:null,next:null,status:null},blueprint:null,preview:!0,permissions:{changeTitle:!1,changeStatus:!1},icon:"page",issue:null,tab:null,tabs:[],options:null}},computed:{language:function(){return this.$store.state.languages.current},next:function(){if(this.page.next)return{link:this.$api.pages.link(this.page.next.id),tooltip:this.page.next.title}},prev:function(){if(this.page.prev)return{link:this.$api.pages.link(this.page.prev.id),tooltip:this.page.prev.title}},status:function(){return null!==this.page.status?this.page.blueprint.status[this.page.status]:null},tabsKey:function(){return"page-"+this.page.id+"-tabs"}},watch:{language:function(){this.fetch()},path:function(){this.fetch()}},created:function(){this.$events.$on("page.changeSlug",this.update)},destroyed:function(){this.$events.$off("page.changeSlug",this.update)},methods:{action:function(t){switch(t){case"duplicate":this.$refs.duplicate.open(this.page.id);break;case"rename":this.$refs.rename.open(this.page.id);break;case"url":this.$refs.url.open(this.page.id);break;case"status":this.$refs.status.open(this.page.id);break;case"template":this.$refs.template.open(this.page.id);break;case"remove":this.$refs.remove.open(this.page.id);break;default:this.$store.dispatch("notification/error",this.$t("notification.notImplemented"));break}},fetch:function(){var t=this;this.$api.pages.get(this.path,{view:"panel"}).then((function(e){t.page=e,t.blueprint=e.blueprint.name,t.permissions=e.options,t.tabs=e.blueprint.tabs,t.options=function(e){t.$api.pages.options(t.page.id).then((function(t){e(t)}))},t.$store.dispatch("breadcrumb",t.$api.pages.breadcrumb(e)),t.$store.dispatch("title",t.page.title),t.$store.dispatch("content/create",{id:"pages/"+t.page.id,api:t.$api.pages.link(t.page.id),content:t.page.content})})).catch((function(e){t.issue=e}))},onTab:function(t){this.tab=t},update:function(){this.fetch(),this.$emit("model.update")}}},Wg=Yg,Jg=(n("202d"),Object(c["a"])(Wg,Kg,Vg,!1,null,null,null)),Gg=Jg.exports,Zg=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("k-view",{staticClass:"k-settings-view"},[n("k-header",[t._v("\n "+t._s(t.$t("view.settings"))+"\n ")]),n("section",{staticClass:"k-system-info"},[n("header",[n("k-headline",[t._v("Kirby")])],1),n("ul",{staticClass:"k-system-info-box"},[n("li",[n("dl",[n("dt",[t._v(t._s(t.$t("license")))]),n("dd",[t.license?[t._v("\n "+t._s(t.license)+"\n ")]:n("p",[n("strong",{staticClass:"k-system-unregistered"},[t._v(t._s(t.$t("license.unregistered")))])])],2)])]),n("li",[n("dl",[n("dt",[t._v(t._s(t.$t("version")))]),n("dd",[t._v(t._s(t.$store.state.system.info.version))])])])])]),t.multilang?n("section",{staticClass:"k-languages"},[t.languages.length>0?[n("section",{staticClass:"k-languages-section"},[n("header",[n("k-headline",[t._v(t._s(t.$t("languages.default")))])],1),n("k-collection",{attrs:{items:t.defaultLanguage},on:{action:t.action}})],1),n("section",{staticClass:"k-languages-section"},[n("header",[n("k-headline",[t._v(t._s(t.$t("languages.secondary")))]),n("k-button",{attrs:{icon:"add"},on:{click:function(e){return t.$refs.create.open()}}},[t._v(t._s(t.$t("language.create")))])],1),t.translations.length?n("k-collection",{attrs:{items:t.translations},on:{action:t.action}}):n("k-empty",{attrs:{icon:"globe"},on:{click:function(e){return t.$refs.create.open()}}},[t._v(t._s(t.$t("languages.secondary.empty")))])],1)]:0===t.languages.length?[n("header",[n("k-headline",[t._v(t._s(t.$t("languages")))]),n("k-button",{attrs:{icon:"add"},on:{click:function(e){return t.$refs.create.open()}}},[t._v(t._s(t.$t("language.create")))])],1),n("k-empty",{attrs:{icon:"globe"},on:{click:function(e){return t.$refs.create.open()}}},[t._v(t._s(t.$t("languages.empty")))])]:t._e(),n("k-language-create-dialog",{ref:"create",on:{success:t.fetch}}),n("k-language-update-dialog",{ref:"update",on:{success:t.fetch}}),n("k-language-remove-dialog",{ref:"remove",on:{success:t.fetch}})],2):t._e()],1)},Xg=[],Qg={data:function(){return{languages:[]}},computed:{defaultLanguage:function(){return this.languages.filter((function(t){return t.default}))},multilang:function(){return this.$store.state.system.info.multilang},license:function(){return this.$store.state.system.info.license},translations:function(){return this.languages.filter((function(t){return!1===t.default}))}},created:function(){this.$store.dispatch("content/current",null),this.$store.dispatch("title",this.$t("view.settings")),this.$store.dispatch("breadcrumb",[]),this.fetch()},methods:{fetch:function(){var t=this;!1!==this.multilang?this.$api.get("languages").then((function(e){t.languages=e.data.map((function(n){return{id:n.code,default:n.default,icon:{type:"globe",back:"black"},image:!0,text:n.name,info:n.code,link:function(){t.$refs.update.open(n.code)},options:[{icon:"edit",text:t.$t("edit"),click:"update"},{icon:"trash",text:t.$t("delete"),disabled:n.default&&1!==e.data.length,click:"remove"}]}}))})):this.languages=[]},action:function(t,e){switch(e){case"update":this.$refs.update.open(t.id);break;case"remove":this.$refs.remove.open(t.id);break}}}},tb=Qg,eb=(n("9bd5"),Object(c["a"])(tb,Zg,Xg,!1,null,null,null)),nb=eb.exports,ib=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.issue?n("k-error-view",[t._v("\n "+t._s(t.issue.message)+"\n")]):n("k-view",{key:"site-view",staticClass:"k-site-view",attrs:{"data-locked":t.isLocked}},[n("k-header",{attrs:{tabs:t.tabs,tab:t.tab,editable:t.permissions.changeTitle&&!t.isLocked},on:{edit:function(e){return t.action("rename")}}},[t._v("\n "+t._s(t.site.title)+"\n "),n("k-button-group",{attrs:{slot:"left"},slot:"left"},[n("k-button",{attrs:{responsive:!0,link:t.site.previewUrl,target:"_blank",icon:"open"}},[t._v("\n "+t._s(t.$t("open"))+"\n ")]),n("k-languages-dropdown")],1)],1),t.site.url?n("k-tabs",{ref:"tabs",attrs:{tabs:t.tabs,blueprint:t.site.blueprint.name,parent:"site"},on:{tab:function(e){t.tab=e}}}):t._e(),n("k-site-rename-dialog",{ref:"rename",on:{success:t.fetch}})],1)},sb=[],rb={data:function(){return{site:{title:null,url:null},issue:null,tab:null,tabs:[],options:null,permissions:{changeTitle:!0}}},computed:{isLocked:function(){return null!==this.$store.state.content.status.lock},language:function(){return this.$store.state.languages.current}},watch:{language:function(){this.fetch()}},created:function(){this.fetch()},methods:{fetch:function(){var t=this;this.$api.site.get({view:"panel"}).then((function(e){t.site=e,t.tabs=e.blueprint.tabs,t.permissions=e.options,t.options=function(e){t.$api.site.options().then((function(t){e(t)}))},t.$store.dispatch("breadcrumb",[]),t.$store.dispatch("title",null),t.$store.dispatch("content/create",{id:"site",api:"site",content:e.content})})).catch((function(e){t.issue=e}))},action:function(t){switch(t){case"languages":this.$refs.languages.open();break;case"rename":this.$refs.rename.open();break;default:this.$store.dispatch("notification/error",this.$t("notification.notImplemented"));break}}}},ob=rb,ab=Object(c["a"])(ob,ib,sb,!1,null,null,null),lb=ab.exports,cb=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.issue?n("k-error-view",[t._v("\n "+t._s(t.issue.message)+"\n")]):n("k-view",{staticClass:"k-users-view"},[n("k-header",[t._v("\n "+t._s(t.$t("view.users"))+"\n "),n("k-button-group",{attrs:{slot:"left"},slot:"left"},[n("k-button",{attrs:{disabled:!1===t.$permissions.users.create,icon:"add"},on:{click:function(e){return t.$refs.create.open()}}},[t._v(t._s(t.$t("user.create")))])],1),n("k-button-group",{attrs:{slot:"right"},slot:"right"},[n("k-dropdown",[n("k-button",{attrs:{responsive:!0,icon:"funnel"},on:{click:function(e){return t.$refs.roles.toggle()}}},[t._v("\n "+t._s(t.$t("role"))+": "+t._s(t.role?t.role.text:t.$t("role.all"))+"\n ")]),n("k-dropdown-content",{ref:"roles",attrs:{align:"right"}},[n("k-dropdown-item",{attrs:{icon:"bolt"},on:{click:function(e){return t.filter(!1)}}},[t._v("\n "+t._s(t.$t("role.all"))+"\n ")]),n("hr"),t._l(t.roles,(function(e){return n("k-dropdown-item",{key:e.value,attrs:{icon:"bolt"},on:{click:function(n){return t.filter(e)}}},[t._v("\n "+t._s(e.text)+"\n ")])}))],2)],1)],1)],1),t.users.length>0?[n("k-collection",{attrs:{items:t.users,pagination:t.pagination},on:{paginate:t.paginate,action:t.action}})]:0===t.total?[n("k-empty",{attrs:{icon:"users"}},[t._v(t._s(t.$t("role.empty")))])]:t._e(),n("k-user-create-dialog",{ref:"create",on:{success:t.fetch}}),n("k-user-email-dialog",{ref:"email",on:{success:t.fetch}}),n("k-user-language-dialog",{ref:"language",on:{success:t.fetch}}),n("k-user-password-dialog",{ref:"password"}),n("k-user-remove-dialog",{ref:"remove",on:{success:t.fetch}}),n("k-user-rename-dialog",{ref:"rename",on:{success:t.fetch}}),n("k-user-role-dialog",{ref:"role",on:{success:t.fetch}})],2)},ub=[],pb={data:function(){return{page:1,limit:20,total:null,users:[],roles:[],issue:null}},computed:{pagination:function(){return{page:this.page,limit:this.limit,total:this.total}},role:function(){var t=this,e=null;return this.$route.params.role&&this.roles.forEach((function(n){n.value===t.$route.params.role&&(e=n)})),e}},watch:{$route:function(){this.fetch()}},created:function(){var t=this;this.$store.dispatch("content/current",null),this.$api.roles.options().then((function(e){t.roles=e,t.fetch()}))},methods:{fetch:function(){var t=this;this.$store.dispatch("title",this.$t("view.users"));var e={paginate:{page:this.page,limit:this.limit},sortBy:"username asc"};this.role&&(e.filterBy=[{field:"role",operator:"==",value:this.role.value}]),this.$api.users.list(e).then((function(e){t.users=e.data.map((function(e){var n={id:e.id,icon:{type:"user",back:"black"},text:e.name||e.email,info:e.role.title,link:"/users/"+e.id,options:function(n){t.$api.users.options(e.id,"list").then((function(t){return n(t)})).catch((function(e){t.$store.dispatch("notification/error",e)}))},image:!0};return e.avatar&&(n.image={url:e.avatar.url,cover:!0}),n})),t.role?t.$store.dispatch("breadcrumb",[{link:"/users/role/"+t.role.value,label:t.$t("role")+": "+t.role.text}]):t.$store.dispatch("breadcrumb",[]),t.total=e.pagination.total})).catch((function(e){t.issue=e}))},paginate:function(t){this.page=t.page,this.limit=t.limit,this.fetch()},action:function(t,e){switch(e){case"edit":this.$go("/users/"+t.id);break;case"email":this.$refs.email.open(t.id);break;case"role":this.$refs.role.open(t.id);break;case"rename":this.$refs.rename.open(t.id);break;case"password":this.$refs.password.open(t.id);break;case"language":this.$refs.language.open(t.id);break;case"remove":this.$refs.remove.open(t.id);break}},filter:function(t){!1===t?this.$go("/users"):this.$go("/users/role/"+t.value),this.$refs.roles.close()}}},fb=pb,db=Object(c["a"])(fb,cb,ub,!1,null,null,null),hb=db.exports,mb=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.issue?n("k-error-view",[t._v("\n "+t._s(t.issue.message)+"\n")]):t.ready?n("div",{staticClass:"k-user-view",attrs:{"data-locked":t.isLocked}},[n("div",{staticClass:"k-user-profile"},[n("k-view",[t.avatar?[n("k-dropdown",[n("k-button",{staticClass:"k-user-view-image",attrs:{tooltip:t.$t("avatar"),disabled:t.isLocked},on:{click:function(e){return t.$refs.picture.toggle()}}},[t.avatar?n("k-image",{attrs:{cover:!0,src:t.avatar,ratio:"1/1"}}):t._e()],1),n("k-dropdown-content",{ref:"picture"},[n("k-dropdown-item",{attrs:{icon:"upload"},on:{click:function(e){return t.$refs.upload.open()}}},[t._v("\n "+t._s(t.$t("change"))+"\n ")]),n("k-dropdown-item",{attrs:{icon:"trash"},on:{click:function(e){return t.action("picture.delete")}}},[t._v("\n "+t._s(t.$t("delete"))+"\n ")])],1)],1)]:[n("k-button",{staticClass:"k-user-view-image",attrs:{tooltip:t.$t("avatar")},on:{click:function(e){return t.$refs.upload.open()}}},[n("k-icon",{attrs:{type:"user"}})],1)],n("k-button-group",[n("k-button",{attrs:{disabled:!t.permissions.changeEmail||t.isLocked,icon:"email"},on:{click:function(e){return t.action("email")}}},[t._v(t._s(t.$t("email"))+": "+t._s(t.user.email))]),n("k-button",{attrs:{disabled:!t.permissions.changeRole||t.isLocked,icon:"bolt"},on:{click:function(e){return t.action("role")}}},[t._v(t._s(t.$t("role"))+": "+t._s(t.user.role.title))]),n("k-button",{attrs:{disabled:!t.permissions.changeLanguage||t.isLocked,icon:"globe"},on:{click:function(e){return t.action("language")}}},[t._v(t._s(t.$t("language"))+": "+t._s(t.user.language))])],1)],2)],1),n("k-view",[n("k-header",{attrs:{editable:t.permissions.changeName&&!t.isLocked,tabs:t.tabs,tab:t.tab},on:{edit:function(e){return t.action("rename")}}},[t.user.name&&0!==t.user.name.length?[t._v(t._s(t.user.name))]:n("span",{staticClass:"k-user-name-placeholder"},[t._v(t._s(t.$t("name"))+" …")]),n("k-button-group",{attrs:{slot:"left"},slot:"left"},[n("k-dropdown",[n("k-button",{attrs:{disabled:t.isLocked,icon:"cog"},on:{click:function(e){return t.$refs.settings.toggle()}}},[t._v("\n "+t._s(t.$t("settings"))+"\n ")]),n("k-dropdown-content",{ref:"settings",attrs:{options:t.options},on:{action:t.action}})],1),n("k-languages-dropdown")],1),t.user.id&&"User"===t.$route.name?n("k-prev-next",{attrs:{slot:"right",prev:t.prev,next:t.next},slot:"right"}):t._e()],2),t.user&&t.tabs.length?n("k-tabs",{key:t.tabsKey,ref:"tabs",attrs:{parent:"users/"+t.user.id,blueprint:t.user.blueprint.name,tabs:t.tabs},on:{tab:function(e){t.tab=e}}}):t.ready?n("k-box",{attrs:{text:t.$t("user.blueprint",{role:t.user.role.name}),theme:"info"}}):t._e(),n("k-user-email-dialog",{ref:"email",on:{success:t.fetch}}),n("k-user-language-dialog",{ref:"language",on:{success:t.fetch}}),n("k-user-password-dialog",{ref:"password"}),n("k-user-remove-dialog",{ref:"remove"}),n("k-user-rename-dialog",{ref:"rename",on:{success:t.fetch}}),n("k-user-role-dialog",{ref:"role",on:{success:t.fetch}}),n("k-upload",{ref:"upload",attrs:{url:t.uploadApi,multiple:!1,accept:"image/*"},on:{success:t.uploadedAvatar}})],1)],1):t._e()},gb=[],bb={mixins:[Og],props:{id:{type:String,required:!0}},data:function(){return{tab:null,tabs:[],ready:!1,user:{role:{name:null},name:null,language:null,prev:null,next:null},permissions:{changeEmail:!0,changeName:!0,changeLanguage:!0,changeRole:!0},issue:null,avatar:null,options:null}},computed:{language:function(){return this.$store.state.languages.current},next:function(){if(this.user.next)return{link:this.$api.users.link(this.user.next.id),tooltip:this.user.next.name}},prev:function(){if(this.user.prev)return{link:this.$api.users.link(this.user.prev.id),tooltip:this.user.prev.name}},tabsKey:function(){return"user-"+this.user.id+"-tabs"},uploadApi:function(){return x.api+"/users/"+this.user.id+"/avatar"}},watch:{"$route.name":{handler:function(t){"Account"===t&&this.$store.dispatch("breadcrumb",[])},immediate:!0},language:function(){this.fetch()},id:function(){this.fetch()}},methods:{action:function(t){var e=this;switch(t){case"email":this.$refs.email.open(this.user.id);break;case"language":this.$refs.language.open(this.user.id);break;case"password":this.$refs.password.open(this.user.id);break;case"picture.delete":this.$api.users.deleteAvatar(this.id).then((function(){e.$store.dispatch("notification/success",":)"),e.avatar=null}));break;case"remove":this.$refs.remove.open(this.user.id);break;case"rename":this.$refs.rename.open(this.user.id);break;case"role":this.$refs.role.open(this.user.id);break;default:this.$store.dispatch("notification/error","Not yet implemented")}},fetch:function(){var t=this;this.$api.users.get(this.id,{view:"panel"}).then((function(e){t.user=e,t.tabs=e.blueprint.tabs,t.ready=!0,t.permissions=e.options,t.options=function(e){t.$api.users.options(t.user.id).then((function(t){e(t)}))},e.avatar?t.avatar=e.avatar.url:t.avatar=null,"User"===t.$route.name&&t.$store.dispatch("breadcrumb",t.$api.users.breadcrumb(e)),t.$store.dispatch("title",t.user.name||t.user.email),t.$store.dispatch("content/create",{id:"users/"+e.id,api:t.$api.users.link(e.id),content:e.content})})).catch((function(e){t.issue=e}))},uploadedAvatar:function(){this.$store.dispatch("notification/success",":)"),this.fetch()}}},vb=bb,kb=(n("bd96"),Object(c["a"])(vb,mb,gb,!1,null,null,null)),yb=kb.exports;I["a"].component("k-dialog",z),I["a"].component("k-error-dialog",J),I["a"].component("k-file-rename-dialog",at),I["a"].component("k-file-remove-dialog",et),I["a"].component("k-files-dialog",bt),I["a"].component("k-form-dialog",_t),I["a"].component("k-language-create-dialog",Et),I["a"].component("k-language-remove-dialog",At),I["a"].component("k-language-update-dialog",Ut),I["a"].component("k-page-create-dialog",Wt),I["a"].component("k-page-duplicate-dialog",te),I["a"].component("k-page-rename-dialog",fe),I["a"].component("k-page-remove-dialog",oe),I["a"].component("k-page-status-dialog",ye),I["a"].component("k-page-template-dialog",xe),I["a"].component("k-page-url-dialog",Te),I["a"].component("k-pages-dialog",Ue),I["a"].component("k-remove-dialog",We),I["a"].component("k-site-rename-dialog",Xe),I["a"].component("k-text-dialog",rn),I["a"].component("k-user-create-dialog",pn),I["a"].component("k-user-email-dialog",bn),I["a"].component("k-user-language-dialog",_n),I["a"].component("k-user-password-dialog",En),I["a"].component("k-user-remove-dialog",An),I["a"].component("k-user-rename-dialog",Fn),I["a"].component("k-user-role-dialog",Yn),I["a"].component("k-users-dialog",Qn),I["a"].component("k-calendar",pi),I["a"].component("k-counter",bi),I["a"].component("k-autocomplete",ri),I["a"].component("k-form",ji),I["a"].component("k-form-buttons",Ti),I["a"].component("k-form-indicator",Mi),I["a"].component("k-field",Vi),I["a"].component("k-fieldset",Xi),I["a"].component("k-input",os),I["a"].component("k-upload",fs),I["a"].component("k-checkbox-input",ks),I["a"].component("k-checkboxes-input",js),I["a"].component("k-date-input",Ds),I["a"].component("k-datetime-input",Rs),I["a"].component("k-email-input",er),I["a"].component("k-multiselect-input",cr),I["a"].component("k-number-input",br),I["a"].component("k-password-input",jr),I["a"].component("k-radio-input",Dr),I["a"].component("k-range-input",Rr),I["a"].component("k-select-input",Yr),I["a"].component("k-tags-input",Qr),I["a"].component("k-tel-input",ao),I["a"].component("k-text-input",Ys),I["a"].component("k-textarea-input",ho),I["a"].component("k-time-input",yo),I["a"].component("k-toggle-input",xo),I["a"].component("k-url-input",Lo),I["a"].component("k-checkboxes-field",Uo),I["a"].component("k-date-field",Go),I["a"].component("k-email-field",sa),I["a"].component("k-files-field",da),I["a"].component("k-headline-field",ka),I["a"].component("k-info-field",ja),I["a"].component("k-line-field",Ca),I["a"].component("k-multiselect-field",Na),I["a"].component("k-number-field",Va),I["a"].component("k-pages-field",Xa),I["a"].component("k-password-field",ol),I["a"].component("k-radio-field",hl),I["a"].component("k-range-field",Ol),I["a"].component("k-select-field",Cl),I["a"].component("k-structure-field",Nl),I["a"].component("k-tags-field",Vl),I["a"].component("k-text-field",lc),I["a"].component("k-textarea-field",gc),I["a"].component("k-tel-field",tc),I["a"].component("k-time-field",wc),I["a"].component("k-toggle-field",Tc),I["a"].component("k-url-field",Mc),I["a"].component("k-users-field",Vc),I["a"].component("k-toolbar",Qc),I["a"].component("k-toolbar-email-dialog",ru),I["a"].component("k-toolbar-link-dialog",pu),I["a"].component("k-email-field-preview",Iu),I["a"].component("k-files-field-preview",_u),I["a"].component("k-pages-field-preview",Ru),I["a"].component("k-toggle-field-preview",Ku),I["a"].component("k-url-field-preview",Eu),I["a"].component("k-users-field-preview",Zu),I["a"].component("k-bar",np),I["a"].component("k-box",lp),I["a"].component("k-card",hp),I["a"].component("k-cards",yp),I["a"].component("k-collection",Pp),I["a"].component("k-column",Lp),I["a"].component("k-dropzone",Mp),I["a"].component("k-empty",Vp),I["a"].component("k-file-preview",Xp),I["a"].component("k-grid",rf),I["a"].component("k-header",pf),I["a"].component("k-list",bf),I["a"].component("k-list-item",_f),I["a"].component("k-tabs",Ef),I["a"].component("k-view",Af),I["a"].component("k-draggable",Yf),I["a"].component("k-error-boundary",Zf),I["a"].component("k-headline",id),I["a"].component("k-icon",cd),I["a"].component("k-image",md),I["a"].component("k-progress",$d),I["a"].component("k-sort-handle",xd),I["a"].component("k-text",Td),I["a"].component("k-button",Nd),I["a"].component("k-button-disabled",Hd),I["a"].component("k-button-group",Jd),I["a"].component("k-button-link",eh),I["a"].component("k-button-native",lh),I["a"].component("k-dropdown",dh),I["a"].component("k-dropdown-content",yh),I["a"].component("k-dropdown-item",Ph),I["a"].component("k-languages-dropdown",Uh),I["a"].component("k-link",Bh),I["a"].component("k-pagination",Wh),I["a"].component("k-prev-next",tm),I["a"].component("k-search",om),I["a"].component("k-tag",fm),I["a"].component("k-topbar",$m),I["a"].component("k-sections",Sm),I["a"].component("k-info-section",Lm),I["a"].component("k-pages-section",Fm),I["a"].component("k-files-section",Jm),I["a"].component("k-fields-section",eg),I["a"].component("k-browser-view",lg),I["a"].component("k-custom-view",hg),I["a"].component("k-error-view",kg),I["a"].component("k-file-view",xg),I["a"].component("k-installation-view",Tg),I["a"].component("k-login-view",Hg),I["a"].component("k-page-view",Gg),I["a"].component("k-settings-view",nb),I["a"].component("k-site-view",lb),I["a"].component("k-users-view",hb),I["a"].component("k-user-view",yb);var $b={user:function(){return rv.get("auth")},login:function(t){var e={long:t.remember||!1,email:t.email,password:t.password};return rv.post("auth/login",e).then((function(t){return t.user}))},logout:function(){return rv.post("auth/logout")}},Ob={get:function(t,e,n){return rv.get(this.url(t,e),n).then((function(t){return!0===Array.isArray(t.content)&&(t.content={}),t}))},update:function(t,e,n){return rv.patch(this.url(t,e),n)},rename:function(t,e,n){return rv.patch(this.url(t,e,"name"),{name:n})},url:function(t,e,n){var i=t+"/files/"+e;return n&&(i+="/"+n),i},link:function(t,e,n){return"/"+this.url(t,e,n)},delete:function(t,e){return rv.delete(this.url(t,e))},options:function(t,e,n){return rv.get(this.url(t,e),{select:"options"}).then((function(t){var e=t.options,i=[];return"list"===n&&i.push({icon:"open",text:I["a"].i18n.translate("open"),click:"download"}),i.push({icon:"title",text:I["a"].i18n.translate("rename"),click:"rename",disabled:!e.changeName}),i.push({icon:"upload",text:I["a"].i18n.translate("replace"),click:"replace",disabled:!e.replace}),i.push({icon:"trash",text:I["a"].i18n.translate("delete"),click:"remove",disabled:!e.delete}),i}))},breadcrumb:function(t,e){var n=null,i=[];switch(e){case"UserFile":i.push({label:t.parent.username,link:rv.users.link(t.parent.id)}),n="users/"+t.parent.id;break;case"SiteFile":n="site";break;case"PageFile":i=t.parents.map((function(t){return{label:t.title,link:rv.pages.link(t.id)}})),n=rv.pages.url(t.parent.id);break}return i.push({label:t.filename,link:this.link(n,t.filename)}),i}},_b={create:function(t,e){return null===t||"/"===t?rv.post("site/children",e):rv.post(this.url(t,"children"),e)},duplicate:function(t,e,n){return rv.post(this.url(t,"duplicate"),{slug:e,children:n.children||!1,files:n.files||!1})},url:function(t,e){var n=null===t?"pages":"pages/"+t.replace(/\//g,"+");return e&&(n+="/"+e),n},link:function(t){return"/"+this.url(t)},get:function(t,e){return rv.get(this.url(t),e).then((function(t){return!0===Array.isArray(t.content)&&(t.content={}),t}))},options:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"view";return rv.get(this.url(t),{select:"options"}).then((function(t){var n=t.options,i=[];return"list"===e&&(i.push({click:"preview",icon:"open",text:I["a"].i18n.translate("open"),disabled:!1===n.preview}),i.push("-")),i.push({click:"rename",icon:"title",text:I["a"].i18n.translate("rename"),disabled:!n.changeTitle}),i.push({click:"duplicate",icon:"copy",text:I["a"].i18n.translate("duplicate"),disabled:!n.duplicate}),i.push("-"),i.push({click:"url",icon:"url",text:I["a"].i18n.translate("page.changeSlug"),disabled:!n.changeSlug}),i.push({click:"status",icon:"preview",text:I["a"].i18n.translate("page.changeStatus"),disabled:!n.changeStatus}),i.push({click:"template",icon:"template",text:I["a"].i18n.translate("page.changeTemplate"),disabled:!n.changeTemplate}),i.push("-"),i.push({click:"remove",icon:"trash",text:I["a"].i18n.translate("delete"),disabled:!n.delete}),i}))},preview:function(t){return this.get(t,{select:"previewUrl"}).then((function(t){return t.previewUrl}))},update:function(t,e){return rv.patch(this.url(t),e)},children:function(t,e){return rv.post(this.url(t,"children/search"),e)},files:function(t,e){return rv.post(this.url(t,"files/search"),e)},delete:function(t,e){return rv.delete(this.url(t),e)},slug:function(t,e){return rv.patch(this.url(t,"slug"),{slug:e})},title:function(t,e){return rv.patch(this.url(t,"title"),{title:e})},template:function(t,e){return rv.patch(this.url(t,"template"),{template:e})},search:function(t,e){return t?rv.post("pages/"+t.replace("/","+")+"/children/search?select=id,title,hasChildren",e):rv.post("site/children/search?select=id,title,hasChildren",e)},status:function(t,e,n){return rv.patch(this.url(t,"status"),{status:e,position:n})},breadcrumb:function(t){var e=this,n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=t.parents.map((function(t){return{label:t.title,link:e.link(t.id)}}));return!0===n&&i.push({label:t.title,link:this.link(t.id)}),i}},wb=n("2f62"),jb=n("768b"),xb=function(t){if(void 0!==t)return JSON.parse(JSON.stringify(t))};function Sb(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function Pb(t){for(var e=1;e0}},isCurrent:function(t){return function(e){return t.current===e}},id:function(t,e,n){return function(e){return e=e||t.current,n.languages.current?e+"/"+n.languages.current.code:e}},model:function(t,e){return function(n){return n=n||t.current,!0===e.exists(n)?t.models[n]:{api:null,originals:{},values:{},changes:{}}}},originals:function(t,e){return function(t){return xb(e.model(t).originals)}},values:function(t,e){return function(t){return Pb({},e.originals(t),{},e.changes(t))}},changes:function(t,e){return function(t){return xb(e.model(t).changes)}}},mutations:{CREATE:function(t,e){var n=Object(jb["a"])(e,2),i=n[0],s=n[1];if(!s)return!1;var r=t.models[i]?t.models[i].changes:s.changes;I["a"].set(t.models,i,{api:s.api,originals:s.originals,changes:r||{}})},CURRENT:function(t,e){t.current=e},LOCK:function(t,e){I["a"].set(t.status,"lock",e)},MOVE:function(t,e){var n=Object(jb["a"])(e,2),i=n[0],s=n[1],r=xb(t.models[i]);I["a"].delete(t.models,i),I["a"].set(t.models,s,r);var o=localStorage.getItem("kirby$content$"+i);localStorage.removeItem("kirby$content$"+i),localStorage.setItem("kirby$content$"+s,o)},REMOVE:function(t,e){I["a"].delete(t.models,e),localStorage.removeItem("kirby$content$"+e)},REVERT:function(t,e){t.models[e]&&(I["a"].set(t.models[e],"changes",{}),localStorage.removeItem("kirby$content$"+e))},STATUS:function(t,e){I["a"].set(t.status,"enabled",e)},UNLOCK:function(t,e){e&&I["a"].set(t.models[t.current],"changes",{}),I["a"].set(t.status,"unlock",e)},UPDATE:function(t,e){var n=Object(jb["a"])(e,3),i=n[0],s=n[1],r=n[2];if(!t.models[i])return!1;r=xb(r);var o=JSON.stringify(r),a=JSON.stringify(t.models[i].originals[s]);a===o?I["a"].delete(t.models[i].changes,s):I["a"].set(t.models[i].changes,s,r),Eb(i,{api:t.models[i].api,originals:t.models[i].originals,changes:t.models[i].changes})}},actions:{init:function(t){Object.keys(localStorage).filter((function(t){return t.startsWith("kirby$content$")})).map((function(t){return t.split("kirby$content$")[1]})).forEach((function(e){var n=localStorage.getItem("kirby$content$"+e);t.commit("CREATE",[e,JSON.parse(n)])})),Object.keys(localStorage).filter((function(t){return t.startsWith("kirby$form$")})).map((function(t){return t.split("kirby$form$")[1]})).forEach((function(e){var n=localStorage.getItem("kirby$form$"+e),i=null;try{i=JSON.parse(n)}catch(r){}if(!i||!i.api)return localStorage.removeItem("kirby$form$"+e),!1;var s={api:i.api,originals:i.originals,changes:i.values};t.commit("CREATE",[e,s]),Eb(e,s),localStorage.removeItem("kirby$form$"+e)}))},create:function(t,e){e.id=t.getters.id(e.id),(e.id.startsWith("pages/")||e.id.startsWith("site"))&&delete e.content.title;var n={api:e.api,originals:xb(e.content),changes:{}};rv.get(e.api+"/unlock").then((function(n){!0===n.supported&&!0===n.unlocked&&t.commit("UNLOCK",t.state.models[e.id].changes)})).catch((function(){})),t.commit("CREATE",[e.id,n]),t.dispatch("current",e.id)},current:function(t,e){t.commit("CURRENT",e)},disable:function(t){t.commit("STATUS",!1)},enable:function(t){t.commit("STATUS",!0)},lock:function(t,e){t.commit("LOCK",e)},move:function(t,e){var n=Object(jb["a"])(e,2),i=n[0],s=n[1];i=t.getters.id(i),s=t.getters.id(s),t.commit("MOVE",[i,s])},remove:function(t,e){t.commit("REMOVE",e),t.getters.isCurrent(e)&&t.commit("CURRENT",null)},revert:function(t,e){e=e||t.state.current,t.commit("REVERT",e)},save:function(t,e){if(e=e||t.state.current,t.getters.isCurrent(e)&&!1===t.state.status.enabled)return!1;t.dispatch("disable");var n=t.getters.model(e),i=Pb({},n.originals,{},n.changes);return rv.patch(n.api,i).then((function(){t.commit("CREATE",[e,Pb({},n,{originals:i})]),t.dispatch("revert",e),t.dispatch("enable")})).catch((function(e){throw t.dispatch("enable"),e}))},unlock:function(t,e){t.commit("UNLOCK",e)},update:function(t,e){var n=Object(jb["a"])(e,3),i=n[0],s=n[1],r=n[2];r=r||t.state.current,t.commit("UPDATE",[r,i,s])}}},Db={namespaced:!0,state:{instance:null,clock:0,step:5,beats:[]},mutations:{ADD:function(t,e){t.beats.push(e)},CLEAR:function(t){clearInterval(t.instance),t.clock=0},CLOCK:function(t){t.clock+=t.step},INITIALIZE:function(t,e){t.instance=e},REMOVE:function(t,e){var n=t.beats.map((function(t){return t.handler})).indexOf(e);-1!==n&&I["a"].delete(t.beats,n)}},actions:{add:function(t,e){e={handler:e[0]||e,interval:e[1]||t.state.step},e.handler(),t.commit("ADD",e),1===t.state.beats.length&&t.dispatch("run")},clear:function(t){t.commit("CLEAR")},remove:function(t,e){t.commit("REMOVE",e),t.state.beats.length<1&&t.commit("CLEAR")},run:function(t){t.commit("CLEAR"),t.commit("INITIALIZE",setInterval((function(){t.commit("CLOCK"),t.state.beats.forEach((function(e){t.state.clock%e.interval===0&&e.handler()}))}),1e3*t.state.step))}}},Tb={namespaced:!0,state:{all:[],current:null,default:null},mutations:{SET_ALL:function(t,e){t.all=e.map((function(t){return{code:t.code,default:t.default,direction:t.direction,locale:t.locale,name:t.name,rules:t.rules,url:t.url}}))},SET_CURRENT:function(t,e){t.current=e,e&&e.code&&localStorage.setItem("kirby$language",e.code)},SET_DEFAULT:function(t,e){t.default=e}},actions:{current:function(t,e){t.commit("SET_CURRENT",e)},install:function(t,e){var n=e.filter((function(t){return t.default}))[0];t.commit("SET_ALL",e),t.commit("SET_DEFAULT",n);var i=localStorage.getItem("kirby$language");if(i){var s=e.filter((function(t){return t.code===i}))[0];if(s)return void t.dispatch("current",s)}t.dispatch("current",n||e[0]||null)},load:function(t){return rv.get("languages").then((function(e){t.dispatch("install",e.data)}))}}};function Ib(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function Lb(t){for(var e=1;e2&&void 0!==arguments[2]&&arguments[2];e=Object.assign(e||{},{credentials:"same-origin",cache:"no-store",headers:Gb({"x-requested-with":"xmlhttprequest","content-type":"application/json"},e.headers)}),"GET"!==e.method&&"POST"!==e.method&&(e.headers["x-http-method-override"]=e.method,e.method="POST"),Wb.state.languages.current&&(e.headers["x-language"]=Wb.state.languages.current.code),e.headers["x-csrf"]=window.panel.csrf;var s=t+"/"+JSON.stringify(e);return rv.config.onStart(s,i),this.running++,fetch(rv.config.endpoint+"/"+t,e).then((function(t){return t.text()})).then((function(t){try{return JSON.parse(t)}catch(e){throw new Error("The JSON response from the API could not be parsed. Please check your API connection.")}})).then((function(t){if(t.status&&"error"===t.status)throw t;var e=t;return t.data&&t.type&&"model"===t.type&&(e=t.data),n.running--,rv.config.onComplete(s),rv.config.onSuccess(t),e})).catch((function(t){throw n.running--,rv.config.onComplete(s),rv.config.onError(t),t}))},get:function(t,e,n){var i=arguments.length>3&&void 0!==arguments[3]&&arguments[3];return e&&(t+="?"+Object.keys(e).map((function(t){var n=e[t];return void 0!==n&&null!==n?t+"="+n:null})).filter((function(t){return null!==t})).join("&")),this.request(t,Object.assign(n||{},{method:"GET"}),i)},post:function(t,e,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"POST",s=arguments.length>4&&void 0!==arguments[4]&&arguments[4];return this.request(t,Object.assign(n||{},{method:i,body:JSON.stringify(e)}),s)},patch:function(t,e,n){var i=arguments.length>3&&void 0!==arguments[3]&&arguments[3];return this.post(t,e,n,"PATCH",i)},delete:function(t,e,n){var i=arguments.length>3&&void 0!==arguments[3]&&arguments[3];return this.post(t,e,n,"DELETE",i)}},Xb={list:function(t){return rv.get("roles",t)},get:function(t){return rv.get("roles/"+t)},options:function(t){return this.list(t).then((function(t){return t.data.map((function(t){return{info:t.description||"(".concat(I["a"].i18n.translate("role.description.placeholder"),")"),text:t.title,value:t.name}}))}))}},Qb={info:function(t){return rv.get("system",t)},install:function(t){return rv.post("system/install",t).then((function(t){return t.user}))},register:function(t){return rv.post("system/register",t)}},tv={get:function(t){return rv.get("site",t)},update:function(t){return rv.post("site",t)},title:function(t){return rv.patch("site/title",{title:t})},options:function(){return rv.get("site",{select:"options"}).then((function(t){var e=t.options,n=[];return n.push({click:"rename",icon:"title",text:I["a"].i18n.translate("rename"),disabled:!e.changeTitle}),n}))},children:function(t){return rv.post("site/children/search",t)},blueprint:function(){return rv.get("site/blueprint")},blueprints:function(){return rv.get("site/blueprints")}},ev={list:function(){return rv.get("translations")},get:function(t){return rv.get("translations/"+t)},options:function(){var t=[];return this.list().then((function(e){return t=e.data.map((function(t){return{value:t.id,text:t.name}})),t}))}},nv={create:function(t){return rv.post(this.url(),t)},list:function(t){return rv.post(this.url(null,"search"),t)},get:function(t,e){return rv.get(this.url(t),e)},update:function(t,e){return rv.patch(this.url(t),e)},delete:function(t){return rv.delete(this.url(t))},changeEmail:function(t,e){return rv.patch(this.url(t,"email"),{email:e})},changeLanguage:function(t,e){return rv.patch(this.url(t,"language"),{language:e})},changeName:function(t,e){return rv.patch(this.url(t,"name"),{name:e})},changePassword:function(t,e){return rv.patch(this.url(t,"password"),{password:e})},changeRole:function(t,e){return rv.patch(this.url(t,"role"),{role:e})},deleteAvatar:function(t){return rv.delete(this.url(t,"avatar"))},blueprint:function(t){return rv.get(this.url(t,"blueprint"))},breadcrumb:function(t){return[{link:"/users/"+t.id,label:t.username}]},options:function(t){return rv.get(this.url(t),{select:"options"}).then((function(t){var e=t.options,n=[];return n.push({click:"rename",icon:"title",text:I["a"].i18n.translate("user.changeName"),disabled:!e.changeName}),n.push({click:"email",icon:"email",text:I["a"].i18n.translate("user.changeEmail"),disabled:!e.changeEmail}),n.push({click:"role",icon:"bolt",text:I["a"].i18n.translate("user.changeRole"),disabled:!e.changeRole}),n.push({click:"password",icon:"key",text:I["a"].i18n.translate("user.changePassword"),disabled:!e.changePassword}),n.push({click:"language",icon:"globe",text:I["a"].i18n.translate("user.changeLanguage"),disabled:!e.changeLanguage}),n.push({click:"remove",icon:"trash",text:I["a"].i18n.translate("user.delete"),disabled:!e.delete}),n}))},roles:function(t){return rv.get(this.url(t,"roles")).then((function(t){return t.data.map((function(t){return{info:t.description||"(".concat(I["a"].i18n.translate("role.description.placeholder"),")"),text:t.title,value:t.name}}))}))},url:function(t,e){var n=t?"users/"+t:"users";return e&&(n+="/"+e),n},link:function(t,e){return"/"+this.url(t,e)}};function iv(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function sv(t){for(var e=1;e0&&void 0!==arguments[0]?arguments[0]:"3/2",e=String(t).split("/");if(2!==e.length)return"100%";var n=Number(e[0]),i=Number(e[1]),s=100;return 0!==n&&0!==i&&(s=100/n*i),s+"%"},cv=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",i="-";return n="a-z0-9"+n,t=t.trim().toLowerCase(),e.forEach((function(e){e&&Object.keys(e).forEach((function(n){var i="/"!==n.substr(0,1),s=n.substring(1,n.length-1),r=i?n:s;t=t.replace(new RegExp(RegExp.escape(r),"g"),e[n])}))})),t=t.replace("/[^\t\n\r -~]/",""),t=t.replace(new RegExp("[^"+n+"]","ig"),i),t=t.replace(new RegExp("["+RegExp.escape(i)+"]{2,}","g"),i),t=t.replace("/",i),t=t.replace(new RegExp("^[^"+n+"]+","g"),""),t=t.replace(new RegExp("[^"+n+"]+$","g"),""),t},uv=function(t){t=t||{};var e=t.desc?-1:1,n=-e,i=/^0/,s=/\s+/g,r=/^\s+|\s+$/g,o=/[^\x00-\x80]/,a=/^0x[0-9a-f]+$/i,l=/(0x[\da-fA-F]+|(^[\+\-]?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?(?=\D|\s|$))|\d+)/g,c=/(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[\/\-]\d{1,4}[\/\-]\d{1,4}|^\w+, \w+ \d+, \d{4})/,u=t.insensitive?function(t){return p(""+t).replace(r,"")}:function(t){return(""+t).replace(r,"")};function p(t){return t.toLocaleLowerCase?t.toLocaleLowerCase():t.toLowerCase()}function f(t){return t.replace(l,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0")}function d(t,e){return(!t.match(i)||1===e)&&parseFloat(t)||t.replace(s," ").replace(r,"")||0}return function(t,i){var s=u(t),r=u(i);if(!s&&!r)return 0;if(!s&&r)return n;if(s&&!r)return e;var l=f(s),p=f(r),h=parseInt(s.match(a),16)||1!==l.length&&Date.parse(s),m=parseInt(r.match(a),16)||h&&r.match(c)&&Date.parse(r)||null;if(m){if(hm)return e}for(var g=l.length,b=p.length,v=0,k=Math.max(g,b);v0)return e;if(O<0)return n;if(v===k-1)return 0}else{if(y<$)return n;if(y>$)return e}}return 0}},pv={ucfirst:function(t){var e=String(t);return e.charAt(0).toUpperCase()+e.substr(1)},lcfirst:function(t){var e=String(t);return e.charAt(0).toLowerCase()+e.substr(1)}},fv=function(t,e){var n={url:"/",field:"file",method:"POST",accept:"text",attributes:{},complete:function(){},error:function(){},success:function(){},progress:function(){}},i=Object.assign(n,e),s=new FormData;s.append(i.field,t,t.name),i.attributes&&Object.keys(i.attributes).forEach((function(t){s.append(t,i.attributes[t])}));var r=new XMLHttpRequest,o=function(e){if(e.lengthComputable&&i.progress){var n=Math.max(0,Math.min(100,e.loaded/e.total*100));i.progress(r,t,Math.ceil(n))}};r.upload.addEventListener("loadstart",o),r.upload.addEventListener("progress",o),r.addEventListener("load",(function(e){var n=null;try{n=JSON.parse(e.target.response)}catch(s){n={status:"error",message:"The file could not be uploaded"}}n.status&&"error"===n.status?i.error(r,t,n):(i.success(r,t,n),i.progress(r,t,100))})),r.addEventListener("error",(function(e){var n=JSON.parse(e.target.response);i.error(r,t,n),i.progress(r,t,100)})),r.open("POST",i.url,!0),i.headers&&Object.keys(i.headers).forEach((function(t){var e=i.headers[t];r.setRequestHeader(t,e)})),r.send(s)},dv=function(t){return!!t.dataTransfer&&(!!t.dataTransfer.types&&(!0===t.dataTransfer.types.includes("Files")&&!1===t.dataTransfer.types.includes("text/plain")))};I["a"].prototype.$helper={clone:xb,isUploadEvent:dv,debounce:ut,pad:av,ratio:lv,slug:cv,sort:uv,string:pv,upload:fv};var hv=n("f2f3");I["a"].use(hv["a"].plugin,Wb);var mv=n("19e9"),gv=n.n(mv),bv=n("5a0c"),vv=n.n(bv),kv=n("f906"),yv=n.n(kv);vv.a.extend(yv.a),I["a"].prototype.$library={autosize:gv.a,dayjs:vv.a};n("ffc1");function $v(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function Ov(t){for(var e=1;e=u?t?"":void 0:(i=c.charCodeAt(s),i<55296||i>56319||s+1===u||(a=c.charCodeAt(s+1))<56320||a>57343?t?c.charAt(s):i:t?c.slice(s,s+2):a-56320+(i-55296<<10)+65536)}}},"0390":function(t,e,n){"use strict";var r=n("02f4")(!0);t.exports=function(t,e,n){return e+(n?r(t,e).length:1)}},"03ca":function(t,e,n){"use strict";var r=n("f2fe");function o(t){var e,n;this.promise=new t(function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r}),this.resolve=r(e),this.reject=r(n)}t.exports.f=function(t){return new o(t)}},"04cf":function(t,e,n){var r=n("4a89"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},"08c1":function(t,e,n){"use strict";var r,o,i,a,c=n("e6a1"),s=n("b808"),u=n("a9f2"),f=n("a274"),l=n("569f"),p=n("ab4c"),d=n("9184"),h=n("8115"),v=n("88b8"),y=n("1aa7"),g=n("1ad4").set,m=n("a24c")(),b=n("cc20"),_=n("73c3"),w=n("4b9e"),x=n("1c08"),O="Promise",S=s.TypeError,$=s.process,A=$&&$.versions,C=A&&A.v8||"",k=s[O],E="process"==f($),M=function(){},j=o=b.f,T=!!function(){try{var t=k.resolve(1),e=(t.constructor={})[n("b67f")("species")]=function(t){t(M,M)};return(E||"function"==typeof PromiseRejectionEvent)&&t.then(M)instanceof e&&0!==C.indexOf("6.6")&&-1===w.indexOf("Chrome/66")}catch(r){}}(),P=function(t){var e;return!(!p(t)||"function"!=typeof(e=t.then))&&e},D=function(t,e){if(!t._n){t._n=!0;var n=t._c;m(function(){var r=t._v,o=1==t._s,i=0,a=function(e){var n,i,a,c=o?e.ok:e.fail,s=e.resolve,u=e.reject,f=e.domain;try{c?(o||(2==t._h&&N(t),t._h=1),!0===c?n=r:(f&&f.enter(),n=c(r),f&&(f.exit(),a=!0)),n===e.promise?u(S("Promise-chain cycle")):(i=P(n))?i.call(n,s,u):s(n)):u(r)}catch(l){f&&!a&&f.exit(),u(l)}};while(n.length>i)a(n[i++]);t._c=[],t._n=!1,e&&!t._h&&L(t)})}},L=function(t){g.call(s,function(){var e,n,r,o=t._v,i=I(t);if(i&&(e=_(function(){E?$.emit("unhandledRejection",o,t):(n=s.onunhandledrejection)?n({promise:t,reason:o}):(r=s.console)&&r.error&&r.error("Unhandled promise rejection",o)}),t._h=E||I(t)?2:1),t._a=void 0,i&&e.e)throw e.v})},I=function(t){return 1!==t._h&&0===(t._a||t._c).length},N=function(t){g.call(s,function(){var e;E?$.emit("rejectionHandled",t):(e=s.onrejectionhandled)&&e({promise:t,reason:t._v})})},R=function(t){var e=this;e._d||(e._d=!0,e=e._w||e,e._v=t,e._s=2,e._a||(e._a=e._c.slice()),D(e,!0))},F=function(t){var e,n=this;if(!n._d){n._d=!0,n=n._w||n;try{if(n===t)throw S("Promise can't be resolved itself");(e=P(t))?m(function(){var r={_w:n,_d:!1};try{e.call(t,u(F,r,1),u(R,r,1))}catch(o){R.call(r,o)}}):(n._v=t,n._s=1,D(n,!1))}catch(r){R.call({_w:n,_d:!1},r)}}};T||(k=function(t){h(this,k,O,"_h"),d(t),r.call(this);try{t(u(F,this,1),u(R,this,1))}catch(e){R.call(this,e)}},r=function(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1},r.prototype=n("9faf")(k.prototype,{then:function(t,e){var n=j(y(this,k));return n.ok="function"!=typeof t||t,n.fail="function"==typeof e&&e,n.domain=E?$.domain:void 0,this._c.push(n),this._a&&this._a.push(n),this._s&&D(this,!1),n.promise},catch:function(t){return this.then(void 0,t)}}),i=function(){var t=new r;this.promise=t,this.resolve=u(F,t,1),this.reject=u(R,t,1)},b.f=j=function(t){return t===k||t===a?new i(t):o(t)}),l(l.G+l.W+l.F*!T,{Promise:k}),n("aab6")(k,O),n("0ec0")(O),a=n("ca38")[O],l(l.S+l.F*!T,O,{reject:function(t){var e=j(this),n=e.reject;return n(t),e.promise}}),l(l.S+l.F*(c||!T),O,{resolve:function(t){return x(c&&this===a?k:this,t)}}),l(l.S+l.F*!(T&&n("2299")(function(t){k.all(t)["catch"](M)})),O,{all:function(t){var e=this,n=j(e),r=n.resolve,o=n.reject,i=_(function(){var n=[],i=0,a=1;v(t,!1,function(t){var c=i++,s=!1;n.push(void 0),a++,e.resolve(t).then(function(t){s||(s=!0,n[c]=t,--a||r(n))},o)}),--a||r(n)});return i.e&&o(i.v),n.promise},race:function(t){var e=this,n=j(e),r=n.reject,o=_(function(){v(t,!1,function(t){e.resolve(t).then(n.resolve,r)})});return o.e&&r(o.v),n.promise}})},"0965":function(t,e,n){n("384f"),t.exports=n("a7d3").parseFloat},"0a0a":function(t,e,n){var r=n("da3c"),o=n("a7d3"),i=n("b457"),a=n("fda1"),c=n("3adc").f;t.exports=function(t){var e=o.Symbol||(o.Symbol=i?{}:r.Symbol||{});"_"==t.charAt(0)||t in e||c(e,t,{value:a.f(t)})}},"0a49":function(t,e,n){var r=n("9b43"),o=n("626a"),i=n("4bf8"),a=n("9def"),c=n("cd1c");t.exports=function(t,e){var n=1==t,s=2==t,u=3==t,f=4==t,l=6==t,p=5==t||l,d=e||c;return function(e,c,h){for(var v,y,g=i(e),m=o(g),b=r(c,h,3),_=a(m.length),w=0,x=n?d(e,_):s?d(e,0):void 0;_>w;w++)if((p||w in m)&&(v=m[w],y=b(v,w,g),t))if(n)x[w]=y;else if(y)switch(t){case 3:return!0;case 5:return v;case 6:return w;case 2:x.push(v)}else if(f)return!1;return l?-1:u||f?f:x}}},"0a91":function(t,e,n){n("b42c"),n("93c4"),t.exports=n("b77f")},"0bfb":function(t,e,n){"use strict";var r=n("cb7c");t.exports=function(){var t=r(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},"0d58":function(t,e,n){var r=n("ce10"),o=n("e11e");t.exports=Object.keys||function(t){return r(t,o)}},"0ec0":function(t,e,n){"use strict";var r=n("b808"),o=n("e4e1"),i=n("45e2"),a=n("b67f")("species");t.exports=function(t){var e=r[t];i&&e&&!e[a]&&o.f(e,a,{configurable:!0,get:function(){return this}})}},"0f4a":function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},"0f89":function(t,e,n){var r=n("6f8a");t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},"103a":function(t,e,n){var r=n("da3c").document;t.exports=r&&r.documentElement},1169:function(t,e,n){var r=n("2d95");t.exports=Array.isArray||function(t){return"Array"==r(t)}},"11e9":function(t,e,n){var r=n("52a7"),o=n("4630"),i=n("6821"),a=n("6a99"),c=n("69a8"),s=n("c69a"),u=Object.getOwnPropertyDescriptor;e.f=n("9e1e")?u:function(t,e){if(t=i(t),e=a(e,!0),s)try{return u(t,e)}catch(n){}if(c(t,e))return o(!r.f.call(t,e),t[e])}},"11ff":function(t,e,n){var r=n("da3c").parseFloat,o=n("633a").trim;t.exports=1/r(n("702a")+"-0")!==-1/0?function(t){var e=o(String(t),3),n=r(e);return 0===n&&"-"==e.charAt(0)?-0:n}:r},"12fd":function(t,e,n){var r=n("6f8a"),o=n("da3c").document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},"12fd9":function(t,e){},1495:function(t,e,n){var r=n("86cc"),o=n("cb7c"),i=n("0d58");t.exports=n("9e1e")?Object.defineProperties:function(t,e){o(t);var n,a=i(e),c=a.length,s=0;while(c>s)r.f(t,n=a[s++],e[n]);return t}},"14c6":function(t,e,n){"use strict";var r=n("3bb1"),o=n("b5cb"),i=n("a638"),a=n("58b9");t.exports=n("fa2d")(Array,"Array",function(t,e){this._t=a(t),this._i=0,this._k=e},function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,o(1)):o(0,"keys"==e?n:"values"==e?t[n]:[n,t[n]])},"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},"16e7":function(t,e,n){var r=n("d13f"),o=n("7704");r(r.G+r.F*(parseInt!=o),{parseInt:o})},1938:function(t,e,n){var r=n("d13f");r(r.S,"Array",{isArray:n("b5aa")})},"196c":function(t,e){t.exports=function(t,e,n){var r=void 0===n;switch(e.length){case 0:return r?t():t.call(n);case 1:return r?t(e[0]):t.call(n,e[0]);case 2:return r?t(e[0],e[1]):t.call(n,e[0],e[1]);case 3:return r?t(e[0],e[1],e[2]):t.call(n,e[0],e[1],e[2]);case 4:return r?t(e[0],e[1],e[2],e[3]):t.call(n,e[0],e[1],e[2],e[3])}return t.apply(n,e)}},1980:function(t,e,n){(function(e,r){t.exports=r(n("53fe"))})("undefined"!==typeof self&&self,function(t){return function(t){var e={};function n(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},n.r=function(t){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"===typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)n.d(r,o,function(e){return t[e]}.bind(null,o));return r},n.n=function(t){var e=t&&t.__esModule?function(){return t["default"]}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s="fb15")}({"02f4":function(t,e,n){var r=n("4588"),o=n("be13");t.exports=function(t){return function(e,n){var i,a,c=String(o(e)),s=r(n),u=c.length;return s<0||s>=u?t?"":void 0:(i=c.charCodeAt(s),i<55296||i>56319||s+1===u||(a=c.charCodeAt(s+1))<56320||a>57343?t?c.charAt(s):i:t?c.slice(s,s+2):a-56320+(i-55296<<10)+65536)}}},"0390":function(t,e,n){"use strict";var r=n("02f4")(!0);t.exports=function(t,e,n){return e+(n?r(t,e).length:1)}},"07e3":function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},"0bfb":function(t,e,n){"use strict";var r=n("cb7c");t.exports=function(){var t=r(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},"0fc9":function(t,e,n){var r=n("3a38"),o=Math.max,i=Math.min;t.exports=function(t,e){return t=r(t),t<0?o(t+e,0):i(t,e)}},1654:function(t,e,n){"use strict";var r=n("71c1")(!0);n("30f1")(String,"String",function(t){this._t=String(t),this._i=0},function(){var t,e=this._t,n=this._i;return n>=e.length?{value:void 0,done:!0}:(t=r(e,n),this._i+=t.length,{value:t,done:!1})})},1691:function(t,e){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},"1af6":function(t,e,n){var r=n("63b6");r(r.S,"Array",{isArray:n("9003")})},"1bc3":function(t,e,n){var r=n("f772");t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},"1ec9":function(t,e,n){var r=n("f772"),o=n("e53d").document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},"20fd":function(t,e,n){"use strict";var r=n("d9f6"),o=n("aebd");t.exports=function(t,e,n){e in t?r.f(t,e,o(0,n)):t[e]=n}},"214f":function(t,e,n){"use strict";n("b0c5");var r=n("2aba"),o=n("32e9"),i=n("79e5"),a=n("be13"),c=n("2b4c"),s=n("520a"),u=c("species"),f=!i(function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$")}),l=function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2===n.length&&"a"===n[0]&&"b"===n[1]}();t.exports=function(t,e,n){var p=c(t),d=!i(function(){var e={};return e[p]=function(){return 7},7!=""[t](e)}),h=d?!i(function(){var e=!1,n=/a/;return n.exec=function(){return e=!0,null},"split"===t&&(n.constructor={},n.constructor[u]=function(){return n}),n[p](""),!e}):void 0;if(!d||!h||"replace"===t&&!f||"split"===t&&!l){var v=/./[p],y=n(a,p,""[t],function(t,e,n,r,o){return e.exec===s?d&&!o?{done:!0,value:v.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),g=y[0],m=y[1];r(String.prototype,t,g),o(RegExp.prototype,p,2==e?function(t,e){return m.call(t,this,e)}:function(t){return m.call(t,this)})}}},"230e":function(t,e,n){var r=n("d3f4"),o=n("7726").document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},"23c6":function(t,e,n){var r=n("2d95"),o=n("2b4c")("toStringTag"),i="Arguments"==r(function(){return arguments}()),a=function(t,e){try{return t[e]}catch(n){}};t.exports=function(t){var e,n,c;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=a(e=Object(t),o))?n:i?r(e):"Object"==(c=r(e))&&"function"==typeof e.callee?"Arguments":c}},"241e":function(t,e,n){var r=n("25eb");t.exports=function(t){return Object(r(t))}},"25eb":function(t,e){t.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},"294c":function(t,e){t.exports=function(t){try{return!!t()}catch(e){return!0}}},"2aba":function(t,e,n){var r=n("7726"),o=n("32e9"),i=n("69a8"),a=n("ca5a")("src"),c=n("fa5b"),s="toString",u=(""+c).split(s);n("8378").inspectSource=function(t){return c.call(t)},(t.exports=function(t,e,n,c){var s="function"==typeof n;s&&(i(n,"name")||o(n,"name",e)),t[e]!==n&&(s&&(i(n,a)||o(n,a,t[e]?""+t[e]:u.join(String(e)))),t===r?t[e]=n:c?t[e]?t[e]=n:o(t,e,n):(delete t[e],o(t,e,n)))})(Function.prototype,s,function(){return"function"==typeof this&&this[a]||c.call(this)})},"2b4c":function(t,e,n){var r=n("5537")("wks"),o=n("ca5a"),i=n("7726").Symbol,a="function"==typeof i,c=t.exports=function(t){return r[t]||(r[t]=a&&i[t]||(a?i:o)("Symbol."+t))};c.store=r},"2d00":function(t,e){t.exports=!1},"2d95":function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},"2fdb":function(t,e,n){"use strict";var r=n("5ca1"),o=n("d2c8"),i="includes";r(r.P+r.F*n("5147")(i),"String",{includes:function(t){return!!~o(this,t,i).indexOf(t,arguments.length>1?arguments[1]:void 0)}})},"30f1":function(t,e,n){"use strict";var r=n("b8e3"),o=n("63b6"),i=n("9138"),a=n("35e8"),c=n("481b"),s=n("8f60"),u=n("45f2"),f=n("53e2"),l=n("5168")("iterator"),p=!([].keys&&"next"in[].keys()),d="@@iterator",h="keys",v="values",y=function(){return this};t.exports=function(t,e,n,g,m,b,_){s(n,e,g);var w,x,O,S=function(t){if(!p&&t in k)return k[t];switch(t){case h:return function(){return new n(this,t)};case v:return function(){return new n(this,t)}}return function(){return new n(this,t)}},$=e+" Iterator",A=m==v,C=!1,k=t.prototype,E=k[l]||k[d]||m&&k[m],M=E||S(m),j=m?A?S("entries"):M:void 0,T="Array"==e&&k.entries||E;if(T&&(O=f(T.call(new t)),O!==Object.prototype&&O.next&&(u(O,$,!0),r||"function"==typeof O[l]||a(O,l,y))),A&&E&&E.name!==v&&(C=!0,M=function(){return E.call(this)}),r&&!_||!p&&!C&&k[l]||a(k,l,M),c[e]=M,c[$]=y,m)if(w={values:A?M:S(v),keys:b?M:S(h),entries:j},_)for(x in w)x in k||i(k,x,w[x]);else o(o.P+o.F*(p||C),e,w);return w}},"32a6":function(t,e,n){var r=n("241e"),o=n("c3a1");n("ce7e")("keys",function(){return function(t){return o(r(t))}})},"32e9":function(t,e,n){var r=n("86cc"),o=n("4630");t.exports=n("9e1e")?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},"32fc":function(t,e,n){var r=n("e53d").document;t.exports=r&&r.documentElement},"335c":function(t,e,n){var r=n("6b4c");t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},"355d":function(t,e){e.f={}.propertyIsEnumerable},"35e8":function(t,e,n){var r=n("d9f6"),o=n("aebd");t.exports=n("8e60")?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},"36c3":function(t,e,n){var r=n("335c"),o=n("25eb");t.exports=function(t){return r(o(t))}},3702:function(t,e,n){var r=n("481b"),o=n("5168")("iterator"),i=Array.prototype;t.exports=function(t){return void 0!==t&&(r.Array===t||i[o]===t)}},"3a38":function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},"40c3":function(t,e,n){var r=n("6b4c"),o=n("5168")("toStringTag"),i="Arguments"==r(function(){return arguments}()),a=function(t,e){try{return t[e]}catch(n){}};t.exports=function(t){var e,n,c;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=a(e=Object(t),o))?n:i?r(e):"Object"==(c=r(e))&&"function"==typeof e.callee?"Arguments":c}},4588:function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},"45f2":function(t,e,n){var r=n("d9f6").f,o=n("07e3"),i=n("5168")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},4630:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},"469f":function(t,e,n){n("6c1c"),n("1654"),t.exports=n("7d7b")},"481b":function(t,e){t.exports={}},"4aa6":function(t,e,n){t.exports=n("dc62")},"4bf8":function(t,e,n){var r=n("be13");t.exports=function(t){return Object(r(t))}},"4ee1":function(t,e,n){var r=n("5168")("iterator"),o=!1;try{var i=[7][r]();i["return"]=function(){o=!0},Array.from(i,function(){throw 2})}catch(a){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i=[7],c=i[r]();c.next=function(){return{done:n=!0}},i[r]=function(){return c},t(i)}catch(a){}return n}},"50ed":function(t,e){t.exports=function(t,e){return{value:e,done:!!t}}},5147:function(t,e,n){var r=n("2b4c")("match");t.exports=function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[r]=!1,!"/./"[t](e)}catch(o){}}return!0}},5168:function(t,e,n){var r=n("dbdb")("wks"),o=n("62a0"),i=n("e53d").Symbol,a="function"==typeof i,c=t.exports=function(t){return r[t]||(r[t]=a&&i[t]||(a?i:o)("Symbol."+t))};c.store=r},5176:function(t,e,n){t.exports=n("51b6")},"51b6":function(t,e,n){n("a3c3"),t.exports=n("584a").Object.assign},"520a":function(t,e,n){"use strict";var r=n("0bfb"),o=RegExp.prototype.exec,i=String.prototype.replace,a=o,c="lastIndex",s=function(){var t=/a/,e=/b*/g;return o.call(t,"a"),o.call(e,"a"),0!==t[c]||0!==e[c]}(),u=void 0!==/()??/.exec("")[1],f=s||u;f&&(a=function(t){var e,n,a,f,l=this;return u&&(n=new RegExp("^"+l.source+"$(?!\\s)",r.call(l))),s&&(e=l[c]),a=o.call(l,t),s&&a&&(l[c]=l.global?a.index+a[0].length:e),u&&a&&a.length>1&&i.call(a[0],n,function(){for(f=1;f1?arguments[1]:void 0,y=void 0!==v,g=0,m=f(p);if(y&&(v=r(v,h>2?arguments[2]:void 0,2)),void 0==m||d==Array&&c(m))for(e=s(p.length),n=new d(e);e>g;g++)u(n,g,y?v(p[g],g):p[g]);else for(l=m.call(p),n=new d;!(o=l.next()).done;g++)u(n,g,y?a(l,v,[o.value,g],!0):o.value);return n.length=g,n}})},"54a1":function(t,e,n){n("6c1c"),n("1654"),t.exports=n("95d5")},5537:function(t,e,n){var r=n("8378"),o=n("7726"),i="__core-js_shared__",a=o[i]||(o[i]={});(t.exports=function(t,e){return a[t]||(a[t]=void 0!==e?e:{})})("versions",[]).push({version:r.version,mode:n("2d00")?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},5559:function(t,e,n){var r=n("dbdb")("keys"),o=n("62a0");t.exports=function(t){return r[t]||(r[t]=o(t))}},"584a":function(t,e){var n=t.exports={version:"2.6.5"};"number"==typeof __e&&(__e=n)},"5b4e":function(t,e,n){var r=n("36c3"),o=n("b447"),i=n("0fc9");t.exports=function(t){return function(e,n,a){var c,s=r(e),u=o(s.length),f=i(a,u);if(t&&n!=n){while(u>f)if(c=s[f++],c!=c)return!0}else for(;u>f;f++)if((t||f in s)&&s[f]===n)return t||f||0;return!t&&-1}}},"5ca1":function(t,e,n){var r=n("7726"),o=n("8378"),i=n("32e9"),a=n("2aba"),c=n("9b43"),s="prototype",u=function(t,e,n){var f,l,p,d,h=t&u.F,v=t&u.G,y=t&u.S,g=t&u.P,m=t&u.B,b=v?r:y?r[e]||(r[e]={}):(r[e]||{})[s],_=v?o:o[e]||(o[e]={}),w=_[s]||(_[s]={});for(f in v&&(n=e),n)l=!h&&b&&void 0!==b[f],p=(l?b:n)[f],d=m&&l?c(p,r):g&&"function"==typeof p?c(Function.call,p):p,b&&a(b,f,p,t&u.U),_[f]!=p&&i(_,f,d),g&&w[f]!=p&&(w[f]=p)};r.core=o,u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,t.exports=u},"5d73":function(t,e,n){t.exports=n("469f")},"5f1b":function(t,e,n){"use strict";var r=n("23c6"),o=RegExp.prototype.exec;t.exports=function(t,e){var n=t.exec;if("function"===typeof n){var i=n.call(t,e);if("object"!==typeof i)throw new TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw new TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},"626a":function(t,e,n){var r=n("2d95");t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},"62a0":function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++n+r).toString(36))}},"63b6":function(t,e,n){var r=n("e53d"),o=n("584a"),i=n("d864"),a=n("35e8"),c=n("07e3"),s="prototype",u=function(t,e,n){var f,l,p,d=t&u.F,h=t&u.G,v=t&u.S,y=t&u.P,g=t&u.B,m=t&u.W,b=h?o:o[e]||(o[e]={}),_=b[s],w=h?r:v?r[e]:(r[e]||{})[s];for(f in h&&(n=e),n)l=!d&&w&&void 0!==w[f],l&&c(b,f)||(p=l?w[f]:n[f],b[f]=h&&"function"!=typeof w[f]?n[f]:g&&l?i(p,r):m&&w[f]==p?function(t){var e=function(e,n,r){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(e);case 2:return new t(e,n)}return new t(e,n,r)}return t.apply(this,arguments)};return e[s]=t[s],e}(p):y&&"function"==typeof p?i(Function.call,p):p,y&&((b.virtual||(b.virtual={}))[f]=p,t&u.R&&_&&!_[f]&&a(_,f,p)))};u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,t.exports=u},6762:function(t,e,n){"use strict";var r=n("5ca1"),o=n("c366")(!0);r(r.P,"Array",{includes:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}}),n("9c6c")("includes")},6821:function(t,e,n){var r=n("626a"),o=n("be13");t.exports=function(t){return r(o(t))}},"69a8":function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},"6a99":function(t,e,n){var r=n("d3f4");t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},"6b4c":function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},"6c1c":function(t,e,n){n("c367");for(var r=n("e53d"),o=n("35e8"),i=n("481b"),a=n("5168")("toStringTag"),c="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),s=0;s=u?t?"":void 0:(i=c.charCodeAt(s),i<55296||i>56319||s+1===u||(a=c.charCodeAt(s+1))<56320||a>57343?t?c.charAt(s):i:t?c.slice(s,s+2):a-56320+(i-55296<<10)+65536)}}},7726:function(t,e){var n=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},"774e":function(t,e,n){t.exports=n("d2d5")},"77f1":function(t,e,n){var r=n("4588"),o=Math.max,i=Math.min;t.exports=function(t,e){return t=r(t),t<0?o(t+e,0):i(t,e)}},"794b":function(t,e,n){t.exports=!n("8e60")&&!n("294c")(function(){return 7!=Object.defineProperty(n("1ec9")("div"),"a",{get:function(){return 7}}).a})},"79aa":function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},"79e5":function(t,e){t.exports=function(t){try{return!!t()}catch(e){return!0}}},"7cd6":function(t,e,n){var r=n("40c3"),o=n("5168")("iterator"),i=n("481b");t.exports=n("584a").getIteratorMethod=function(t){if(void 0!=t)return t[o]||t["@@iterator"]||i[r(t)]}},"7d7b":function(t,e,n){var r=n("e4ae"),o=n("7cd6");t.exports=n("584a").getIterator=function(t){var e=o(t);if("function"!=typeof e)throw TypeError(t+" is not iterable!");return r(e.call(t))}},"7e90":function(t,e,n){var r=n("d9f6"),o=n("e4ae"),i=n("c3a1");t.exports=n("8e60")?Object.defineProperties:function(t,e){o(t);var n,a=i(e),c=a.length,s=0;while(c>s)r.f(t,n=a[s++],e[n]);return t}},8378:function(t,e){var n=t.exports={version:"2.6.5"};"number"==typeof __e&&(__e=n)},8436:function(t,e){t.exports=function(){}},"86cc":function(t,e,n){var r=n("cb7c"),o=n("c69a"),i=n("6a99"),a=Object.defineProperty;e.f=n("9e1e")?Object.defineProperty:function(t,e,n){if(r(t),e=i(e,!0),r(n),o)try{return a(t,e,n)}catch(c){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},"8aae":function(t,e,n){n("32a6"),t.exports=n("584a").Object.keys},"8e60":function(t,e,n){t.exports=!n("294c")(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},"8f60":function(t,e,n){"use strict";var r=n("a159"),o=n("aebd"),i=n("45f2"),a={};n("35e8")(a,n("5168")("iterator"),function(){return this}),t.exports=function(t,e,n){t.prototype=r(a,{next:o(1,n)}),i(t,e+" Iterator")}},9003:function(t,e,n){var r=n("6b4c");t.exports=Array.isArray||function(t){return"Array"==r(t)}},9138:function(t,e,n){t.exports=n("35e8")},9306:function(t,e,n){"use strict";var r=n("c3a1"),o=n("9aa9"),i=n("355d"),a=n("241e"),c=n("335c"),s=Object.assign;t.exports=!s||n("294c")(function(){var t={},e={},n=Symbol(),r="abcdefghijklmnopqrst";return t[n]=7,r.split("").forEach(function(t){e[t]=t}),7!=s({},t)[n]||Object.keys(s({},e)).join("")!=r})?function(t,e){var n=a(t),s=arguments.length,u=1,f=o.f,l=i.f;while(s>u){var p,d=c(arguments[u++]),h=f?r(d).concat(f(d)):r(d),v=h.length,y=0;while(v>y)l.call(d,p=h[y++])&&(n[p]=d[p])}return n}:s},9427:function(t,e,n){var r=n("63b6");r(r.S,"Object",{create:n("a159")})},"95d5":function(t,e,n){var r=n("40c3"),o=n("5168")("iterator"),i=n("481b");t.exports=n("584a").isIterable=function(t){var e=Object(t);return void 0!==e[o]||"@@iterator"in e||i.hasOwnProperty(r(e))}},"9aa9":function(t,e){e.f=Object.getOwnPropertySymbols},"9b43":function(t,e,n){var r=n("d8e8");t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}}},"9c6c":function(t,e,n){var r=n("2b4c")("unscopables"),o=Array.prototype;void 0==o[r]&&n("32e9")(o,r,{}),t.exports=function(t){o[r][t]=!0}},"9def":function(t,e,n){var r=n("4588"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},"9e1e":function(t,e,n){t.exports=!n("79e5")(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},a159:function(t,e,n){var r=n("e4ae"),o=n("7e90"),i=n("1691"),a=n("5559")("IE_PROTO"),c=function(){},s="prototype",u=function(){var t,e=n("1ec9")("iframe"),r=i.length,o="<",a=">";e.style.display="none",n("32fc").appendChild(e),e.src="javascript:",t=e.contentWindow.document,t.open(),t.write(o+"script"+a+"document.F=Object"+o+"/script"+a),t.close(),u=t.F;while(r--)delete u[s][i[r]];return u()};t.exports=Object.create||function(t,e){var n;return null!==t?(c[s]=r(t),n=new c,c[s]=null,n[a]=t):n=u(),void 0===e?n:o(n,e)}},a352:function(e,n){e.exports=t},a3c3:function(t,e,n){var r=n("63b6");r(r.S+r.F,"Object",{assign:n("9306")})},a481:function(t,e,n){"use strict";var r=n("cb7c"),o=n("4bf8"),i=n("9def"),a=n("4588"),c=n("0390"),s=n("5f1b"),u=Math.max,f=Math.min,l=Math.floor,p=/\$([$&`']|\d\d?|<[^>]*>)/g,d=/\$([$&`']|\d\d?)/g,h=function(t){return void 0===t?t:String(t)};n("214f")("replace",2,function(t,e,n,v){return[function(r,o){var i=t(this),a=void 0==r?void 0:r[e];return void 0!==a?a.call(r,i,o):n.call(String(i),r,o)},function(t,e){var o=v(n,t,this,e);if(o.done)return o.value;var l=r(t),p=String(this),d="function"===typeof e;d||(e=String(e));var g=l.global;if(g){var m=l.unicode;l.lastIndex=0}var b=[];while(1){var _=s(l,p);if(null===_)break;if(b.push(_),!g)break;var w=String(_[0]);""===w&&(l.lastIndex=c(p,i(l.lastIndex),m))}for(var x="",O=0,S=0;S=O&&(x+=p.slice(O,A)+j,O=A+$.length)}return x+p.slice(O)}];function y(t,e,r,i,a,c){var s=r+t.length,u=i.length,f=d;return void 0!==a&&(a=o(a),f=p),n.call(c,f,function(n,o){var c;switch(o.charAt(0)){case"$":return"$";case"&":return t;case"`":return e.slice(0,r);case"'":return e.slice(s);case"<":c=a[o.slice(1,-1)];break;default:var f=+o;if(0===f)return n;if(f>u){var p=l(f/10);return 0===p?n:p<=u?void 0===i[p-1]?o.charAt(1):i[p-1]+o.charAt(1):n}c=i[f-1]}return void 0===c?"":c})}})},a4bb:function(t,e,n){t.exports=n("8aae")},a745:function(t,e,n){t.exports=n("f410")},aae3:function(t,e,n){var r=n("d3f4"),o=n("2d95"),i=n("2b4c")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},aebd:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},b0c5:function(t,e,n){"use strict";var r=n("520a");n("5ca1")({target:"RegExp",proto:!0,forced:r!==/./.exec},{exec:r})},b0dc:function(t,e,n){var r=n("e4ae");t.exports=function(t,e,n,o){try{return o?e(r(n)[0],n[1]):e(n)}catch(a){var i=t["return"];throw void 0!==i&&r(i.call(t)),a}}},b447:function(t,e,n){var r=n("3a38"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},b8e3:function(t,e){t.exports=!0},be13:function(t,e){t.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},c366:function(t,e,n){var r=n("6821"),o=n("9def"),i=n("77f1");t.exports=function(t){return function(e,n,a){var c,s=r(e),u=o(s.length),f=i(a,u);if(t&&n!=n){while(u>f)if(c=s[f++],c!=c)return!0}else for(;u>f;f++)if((t||f in s)&&s[f]===n)return t||f||0;return!t&&-1}}},c367:function(t,e,n){"use strict";var r=n("8436"),o=n("50ed"),i=n("481b"),a=n("36c3");t.exports=n("30f1")(Array,"Array",function(t,e){this._t=a(t),this._i=0,this._k=e},function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,o(1)):o(0,"keys"==e?n:"values"==e?t[n]:[n,t[n]])},"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},c3a1:function(t,e,n){var r=n("e6f3"),o=n("1691");t.exports=Object.keys||function(t){return r(t,o)}},c649:function(t,e,n){"use strict";(function(t){n.d(e,"c",function(){return l}),n.d(e,"a",function(){return u}),n.d(e,"b",function(){return a}),n.d(e,"d",function(){return f}),n("a481");var r=n("4aa6"),o=n.n(r);function i(){return"undefined"!==typeof window?window.console:t.console}var a=i();function c(t){var e=o()(null);return function(n){var r=e[n];return r||(e[n]=t(n))}}var s=/-(\w)/g,u=c(function(t){return t.replace(s,function(t,e){return e?e.toUpperCase():""})});function f(t){null!==t.parentElement&&t.parentElement.removeChild(t)}function l(t,e,n){var r=0===n?t.children[0]:t.children[n-1].nextSibling;t.insertBefore(e,r)}}).call(this,n("c8ba"))},c69a:function(t,e,n){t.exports=!n("9e1e")&&!n("79e5")(function(){return 7!=Object.defineProperty(n("230e")("div"),"a",{get:function(){return 7}}).a})},c8ba:function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(r){"object"===typeof window&&(n=window)}t.exports=n},c8bb:function(t,e,n){t.exports=n("54a1")},ca5a:function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++n+r).toString(36))}},cb7c:function(t,e,n){var r=n("d3f4");t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},ce7e:function(t,e,n){var r=n("63b6"),o=n("584a"),i=n("294c");t.exports=function(t,e){var n=(o.Object||{})[t]||Object[t],a={};a[t]=e(n),r(r.S+r.F*i(function(){n(1)}),"Object",a)}},d2c8:function(t,e,n){var r=n("aae3"),o=n("be13");t.exports=function(t,e,n){if(r(e))throw TypeError("String#"+n+" doesn't accept regex!");return String(o(t))}},d2d5:function(t,e,n){n("1654"),n("549b"),t.exports=n("584a").Array.from},d3f4:function(t,e){t.exports=function(t){return"object"===typeof t?null!==t:"function"===typeof t}},d864:function(t,e,n){var r=n("79aa");t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}}},d8e8:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},d9f6:function(t,e,n){var r=n("e4ae"),o=n("794b"),i=n("1bc3"),a=Object.defineProperty;e.f=n("8e60")?Object.defineProperty:function(t,e,n){if(r(t),e=i(e,!0),r(n),o)try{return a(t,e,n)}catch(c){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},dbdb:function(t,e,n){var r=n("584a"),o=n("e53d"),i="__core-js_shared__",a=o[i]||(o[i]={});(t.exports=function(t,e){return a[t]||(a[t]=void 0!==e?e:{})})("versions",[]).push({version:r.version,mode:n("b8e3")?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},dc62:function(t,e,n){n("9427");var r=n("584a").Object;t.exports=function(t,e){return r.create(t,e)}},e4ae:function(t,e,n){var r=n("f772");t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},e53d:function(t,e){var n=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},e6f3:function(t,e,n){var r=n("07e3"),o=n("36c3"),i=n("5b4e")(!1),a=n("5559")("IE_PROTO");t.exports=function(t,e){var n,c=o(t),s=0,u=[];for(n in c)n!=a&&r(c,n)&&u.push(n);while(e.length>s)r(c,n=e[s++])&&(~i(u,n)||u.push(n));return u}},f410:function(t,e,n){n("1af6"),t.exports=n("584a").Array.isArray},f559:function(t,e,n){"use strict";var r=n("5ca1"),o=n("9def"),i=n("d2c8"),a="startsWith",c=""[a];r(r.P+r.F*n("5147")(a),"String",{startsWith:function(t){var e=i(this,t,a),n=o(Math.min(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return c?c.call(e,r,n):e.slice(n,n+r.length)===r}})},f772:function(t,e){t.exports=function(t){return"object"===typeof t?null!==t:"function"===typeof t}},fa5b:function(t,e,n){t.exports=n("5537")("native-function-to-string",Function.toString)},fb15:function(t,e,n){"use strict";var r;n.r(e),"undefined"!==typeof window&&(r=window.document.currentScript)&&(r=r.src.match(/(.+\/)[^\/]+\.js(\?.*)?$/))&&(n.p=r[1]);var o=n("5176"),i=n.n(o),a=(n("f559"),n("a4bb")),c=n.n(a),s=(n("6762"),n("2fdb"),n("a745")),u=n.n(s);function f(t){if(u()(t))return t}var l=n("5d73"),p=n.n(l);function d(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var a,c=p()(t);!(r=(a=c.next()).done);r=!0)if(n.push(a.value),e&&n.length===e)break}catch(s){o=!0,i=s}finally{try{r||null==c["return"]||c["return"]()}finally{if(o)throw i}}return n}function h(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function v(t,e){return f(t)||d(t,e)||h()}function y(t){if(u()(t)){for(var e=0,n=new Array(t.length);e=i?o.length:o.indexOf(t)});return n?a.filter(function(t){return-1!==t}):a}function M(t,e){var n=this;this.$nextTick(function(){return n.$emit(t.toLowerCase(),e)})}function j(t){var e=this;return function(n){null!==e.realList&&e["onDrag"+t](n),M.call(e,t,n)}}function T(t){if(!t||1!==t.length)return!1;var e=v(t,1),n=e[0].componentOptions;return!!n&&["transition-group","TransitionGroup"].includes(n.tag)}function P(t,e){var n=e.header,r=e.footer,o=0,i=0;return n&&(o=n.length,t=t?[].concat(O(n),O(t)):O(n)),r&&(i=r.length,t=t?[].concat(O(t),O(r)):O(r)),{children:t,headerOffset:o,footerOffset:i}}function D(t,e){var n=null,r=function(t,e){n=C(n,t,e)},o=c()(t).filter(function(t){return"id"===t||t.startsWith("data-")}).reduce(function(e,n){return e[n]=t[n],e},{});if(r("attrs",o),!e)return n;var a=e.on,s=e.props,u=e.attrs;return r("on",a),r("props",s),i()(n.attrs,u),n}var L=["Start","Add","Remove","Update","End"],I=["Choose","Sort","Filter","Clone"],N=["Move"].concat(L,I).map(function(t){return"on"+t}),R=null,F={options:Object,list:{type:Array,required:!1,default:null},value:{type:Array,required:!1,default:null},noTransitionOnDrag:{type:Boolean,default:!1},clone:{type:Function,default:function(t){return t}},element:{type:String,default:"div"},tag:{type:String,default:null},move:{type:Function,default:null},componentData:{type:Object,required:!1,default:null}},H={name:"draggable",inheritAttrs:!1,props:F,data:function(){return{transitionMode:!1,noneFunctionalComponentMode:!1,init:!1}},render:function(t){var e=this.$slots.default;this.transitionMode=T(e);var n=P(e,this.$slots),r=n.children,o=n.headerOffset,i=n.footerOffset;this.headerOffset=o,this.footerOffset=i;var a=D(this.$attrs,this.componentData);return t(this.getTag(),a,r)},created:function(){null!==this.list&&null!==this.value&&A["b"].error("Value and list props are mutually exclusive! Please set one or another."),"div"!==this.element&&A["b"].warn("Element props is deprecated please use tag props instead. See https://github.com/SortableJS/Vue.Draggable/blob/master/documentation/migrate.md#element-props"),void 0!==this.options&&A["b"].warn("Options props is deprecated, add sortable options directly as vue.draggable item, or use v-bind. See https://github.com/SortableJS/Vue.Draggable/blob/master/documentation/migrate.md#options-props")},mounted:function(){var t=this;if(this.noneFunctionalComponentMode=this.getTag().toLowerCase()!==this.$el.nodeName.toLowerCase(),this.noneFunctionalComponentMode&&this.transitionMode)throw new Error("Transition-group inside component is not supported. Please alter tag value or remove transition-group. Current tag value: ".concat(this.getTag()));var e={};L.forEach(function(n){e["on"+n]=j.call(t,n)}),I.forEach(function(n){e["on"+n]=M.bind(t,n)});var n=c()(this.$attrs).reduce(function(e,n){return e[Object(A["a"])(n)]=t.$attrs[n],e},{}),r=i()({},this.options,n,e,{onMove:function(e,n){return t.onDragMove(e,n)}});!("draggable"in r)&&(r.draggable=">*"),this._sortable=new $.a(this.rootContainer,r),this.computeIndexes()},beforeDestroy:function(){void 0!==this._sortable&&this._sortable.destroy()},computed:{rootContainer:function(){return this.transitionMode?this.$el.children[0]:this.$el},realList:function(){return this.list?this.list:this.value}},watch:{options:{handler:function(t){this.updateOptions(t)},deep:!0},$attrs:{handler:function(t){this.updateOptions(t)},deep:!0},realList:function(){this.computeIndexes()}},methods:{getTag:function(){return this.tag||this.element},updateOptions:function(t){for(var e in t){var n=Object(A["a"])(e);-1===N.indexOf(n)&&this._sortable.option(n,t[e])}},getChildrenNodes:function(){if(this.init||(this.noneFunctionalComponentMode=this.noneFunctionalComponentMode&&1===this.$children.length,this.init=!0),this.noneFunctionalComponentMode)return this.$children[0].$slots.default;var t=this.$slots.default;return this.transitionMode?t[0].child.$slots.default:t},computeIndexes:function(){var t=this;this.$nextTick(function(){t.visibleIndexes=E(t.getChildrenNodes(),t.rootContainer.children,t.transitionMode,t.footerOffset)})},getUnderlyingVm:function(t){var e=k(this.getChildrenNodes()||[],t);if(-1===e)return null;var n=this.realList[e];return{index:e,element:n}},getUnderlyingPotencialDraggableComponent:function(t){var e=t.__vue__;return e&&e.$options&&"transition-group"===e.$options._componentTag?e.$parent:e},emitChanges:function(t){var e=this;this.$nextTick(function(){e.$emit("change",t)})},alterList:function(t){if(this.list)t(this.list);else{var e=O(this.value);t(e),this.$emit("input",e)}},spliceList:function(){var t=arguments,e=function(e){return e.splice.apply(e,O(t))};this.alterList(e)},updatePosition:function(t,e){var n=function(n){return n.splice(e,0,n.splice(t,1)[0])};this.alterList(n)},getRelatedContextFromMoveEvent:function(t){var e=t.to,n=t.related,r=this.getUnderlyingPotencialDraggableComponent(e);if(!r)return{component:r};var o=r.realList,a={list:o,component:r};if(e!==n&&o&&r.getUnderlyingVm){var c=r.getUnderlyingVm(n);if(c)return i()(c,a)}return a},getVmIndex:function(t){var e=this.visibleIndexes,n=e.length;return t>n-1?n:e[t]},getComponent:function(){return this.$slots.default[0].componentInstance},resetTransitionData:function(t){if(this.noTransitionOnDrag&&this.transitionMode){var e=this.getChildrenNodes();e[t].data=null;var n=this.getComponent();n.children=[],n.kept=void 0}},onDragStart:function(t){this.context=this.getUnderlyingVm(t.item),t.item._underlying_vm_=this.clone(this.context.element),R=t.item},onDragAdd:function(t){var e=t.item._underlying_vm_;if(void 0!==e){Object(A["d"])(t.item);var n=this.getVmIndex(t.newIndex);this.spliceList(n,0,e),this.computeIndexes();var r={element:e,newIndex:n};this.emitChanges({added:r})}},onDragRemove:function(t){if(Object(A["c"])(this.rootContainer,t.item,t.oldIndex),"clone"!==t.pullMode){var e=this.context.index;this.spliceList(e,1);var n={element:this.context.element,oldIndex:e};this.resetTransitionData(e),this.emitChanges({removed:n})}else Object(A["d"])(t.clone)},onDragUpdate:function(t){Object(A["d"])(t.item),Object(A["c"])(t.from,t.item,t.oldIndex);var e=this.context.index,n=this.getVmIndex(t.newIndex);this.updatePosition(e,n);var r={element:this.context.element,oldIndex:e,newIndex:n};this.emitChanges({moved:r})},updateProperty:function(t,e){t.hasOwnProperty(e)&&(t[e]+=this.headerOffset)},computeFutureIndex:function(t,e){if(!t.element)return 0;var n=O(e.to.children).filter(function(t){return"none"!==t.style["display"]}),r=n.indexOf(e.related),o=t.component.getVmIndex(r),i=-1!==n.indexOf(R);return i||!e.willInsertAfter?o:o+1},onDragMove:function(t,e){var n=this.move;if(!n||!this.realList)return!0;var r=this.getRelatedContextFromMoveEvent(t),o=this.context,a=this.computeFutureIndex(r,t);i()(o,{futureIndex:a});var c=i()({},t,{relatedContext:r,draggedContext:o});return n(c,e)},onDragEnd:function(){this.computeIndexes(),R=null}}};"undefined"!==typeof window&&"Vue"in window&&window.Vue.component("draggable",H);var z=H;e["default"]=z}})["default"]})},"19e9":function(t,e,n){var r,o,i; +(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-vendors"],{"0029":function(t,e){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},"0185":function(t,e,n){var r=n("e5fa");t.exports=function(t){return Object(r(t))}},"01f9":function(t,e,n){"use strict";var r=n("2d00"),o=n("5ca1"),i=n("2aba"),a=n("32e9"),c=n("84f2"),s=n("41a0"),u=n("7f20"),l=n("38fd"),f=n("2b4c")("iterator"),p=!([].keys&&"next"in[].keys()),d="@@iterator",h="keys",v="values",m=function(){return this};t.exports=function(t,e,n,g,y,b,w){s(n,e,g);var _,x,S,O=function(t){if(!p&&t in $)return $[t];switch(t){case h:return function(){return new n(this,t)};case v:return function(){return new n(this,t)}}return function(){return new n(this,t)}},E=e+" Iterator",A=y==v,C=!1,$=t.prototype,k=$[f]||$[d]||y&&$[y],M=k||O(y),T=y?A?O("entries"):M:void 0,j="Array"==e&&$.entries||k;if(j&&(S=l(j.call(new t)),S!==Object.prototype&&S.next&&(u(S,E,!0),r||"function"==typeof S[f]||a(S,f,m))),A&&k&&k.name!==v&&(C=!0,M=function(){return k.call(this)}),r&&!w||!p&&!C&&$[f]||a($,f,M),c[e]=M,c[E]=m,y)if(_={values:A?M:O(v),keys:b?M:O(h),entries:T},w)for(x in _)x in $||i($,x,_[x]);else o(o.P+o.F*(p||C),e,_);return _}},"0234":function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=Object.assign||function(t){for(var e=1;e=u?t?"":void 0:(i=c.charCodeAt(s),i<55296||i>56319||s+1===u||(a=c.charCodeAt(s+1))<56320||a>57343?t?c.charAt(s):i:t?c.slice(s,s+2):a-56320+(i-55296<<10)+65536)}}},"0390":function(t,e,n){"use strict";var r=n("02f4")(!0);t.exports=function(t,e,n){return e+(n?r(t,e).length:1)}},"04cf":function(t,e,n){var r=n("4a89"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},"08c1":function(t,e,n){"use strict";var r,o,i,a,c=n("e6a1"),s=n("b808"),u=n("a9f2"),l=n("a274"),f=n("569f"),p=n("ab4c"),d=n("9184"),h=n("8115"),v=n("88b8"),m=n("1aa7"),g=n("1ad4").set,y=n("a24c")(),b=n("cc20"),w=n("73c3"),_=n("4b9e"),x=n("1c08"),S="Promise",O=s.TypeError,E=s.process,A=E&&E.versions,C=A&&A.v8||"",$=s[S],k="process"==l(E),M=function(){},T=o=b.f,j=!!function(){try{var t=$.resolve(1),e=(t.constructor={})[n("b67f")("species")]=function(t){t(M,M)};return(k||"function"==typeof PromiseRejectionEvent)&&t.then(M)instanceof e&&0!==C.indexOf("6.6")&&-1===_.indexOf("Chrome/66")}catch(r){}}(),P=function(t){var e;return!(!p(t)||"function"!=typeof(e=t.then))&&e},D=function(t,e){if(!t._n){t._n=!0;var n=t._c;y((function(){var r=t._v,o=1==t._s,i=0,a=function(e){var n,i,a,c=o?e.ok:e.fail,s=e.resolve,u=e.reject,l=e.domain;try{c?(o||(2==t._h&&N(t),t._h=1),!0===c?n=r:(l&&l.enter(),n=c(r),l&&(l.exit(),a=!0)),n===e.promise?u(O("Promise-chain cycle")):(i=P(n))?i.call(n,s,u):s(n)):u(r)}catch(f){l&&!a&&l.exit(),u(f)}};while(n.length>i)a(n[i++]);t._c=[],t._n=!1,e&&!t._h&&I(t)}))}},I=function(t){g.call(s,(function(){var e,n,r,o=t._v,i=L(t);if(i&&(e=w((function(){k?E.emit("unhandledRejection",o,t):(n=s.onunhandledrejection)?n({promise:t,reason:o}):(r=s.console)&&r.error&&r.error("Unhandled promise rejection",o)})),t._h=k||L(t)?2:1),t._a=void 0,i&&e.e)throw e.v}))},L=function(t){return 1!==t._h&&0===(t._a||t._c).length},N=function(t){g.call(s,(function(){var e;k?E.emit("rejectionHandled",t):(e=s.onrejectionhandled)&&e({promise:t,reason:t._v})}))},R=function(t){var e=this;e._d||(e._d=!0,e=e._w||e,e._v=t,e._s=2,e._a||(e._a=e._c.slice()),D(e,!0))},F=function(t){var e,n=this;if(!n._d){n._d=!0,n=n._w||n;try{if(n===t)throw O("Promise can't be resolved itself");(e=P(t))?y((function(){var r={_w:n,_d:!1};try{e.call(t,u(F,r,1),u(R,r,1))}catch(o){R.call(r,o)}})):(n._v=t,n._s=1,D(n,!1))}catch(r){R.call({_w:n,_d:!1},r)}}};j||($=function(t){h(this,$,S,"_h"),d(t),r.call(this);try{t(u(F,this,1),u(R,this,1))}catch(e){R.call(this,e)}},r=function(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1},r.prototype=n("9faf")($.prototype,{then:function(t,e){var n=T(m(this,$));return n.ok="function"!=typeof t||t,n.fail="function"==typeof e&&e,n.domain=k?E.domain:void 0,this._c.push(n),this._a&&this._a.push(n),this._s&&D(this,!1),n.promise},catch:function(t){return this.then(void 0,t)}}),i=function(){var t=new r;this.promise=t,this.resolve=u(F,t,1),this.reject=u(R,t,1)},b.f=T=function(t){return t===$||t===a?new i(t):o(t)}),f(f.G+f.W+f.F*!j,{Promise:$}),n("aab6")($,S),n("0ec0")(S),a=n("ca38")[S],f(f.S+f.F*!j,S,{reject:function(t){var e=T(this),n=e.reject;return n(t),e.promise}}),f(f.S+f.F*(c||!j),S,{resolve:function(t){return x(c&&this===a?$:this,t)}}),f(f.S+f.F*!(j&&n("2299")((function(t){$.all(t)["catch"](M)}))),S,{all:function(t){var e=this,n=T(e),r=n.resolve,o=n.reject,i=w((function(){var n=[],i=0,a=1;v(t,!1,(function(t){var c=i++,s=!1;n.push(void 0),a++,e.resolve(t).then((function(t){s||(s=!0,n[c]=t,--a||r(n))}),o)})),--a||r(n)}));return i.e&&o(i.v),n.promise},race:function(t){var e=this,n=T(e),r=n.reject,o=w((function(){v(t,!1,(function(t){e.resolve(t).then(n.resolve,r)}))}));return o.e&&r(o.v),n.promise}})},"0a0a":function(t,e,n){var r=n("da3c"),o=n("a7d3"),i=n("b457"),a=n("fda1"),c=n("3adc").f;t.exports=function(t){var e=o.Symbol||(o.Symbol=i?{}:r.Symbol||{});"_"==t.charAt(0)||t in e||c(e,t,{value:a.f(t)})}},"0a49":function(t,e,n){var r=n("9b43"),o=n("626a"),i=n("4bf8"),a=n("9def"),c=n("cd1c");t.exports=function(t,e){var n=1==t,s=2==t,u=3==t,l=4==t,f=6==t,p=5==t||f,d=e||c;return function(e,c,h){for(var v,m,g=i(e),y=o(g),b=r(c,h,3),w=a(y.length),_=0,x=n?d(e,w):s?d(e,0):void 0;w>_;_++)if((p||_ in y)&&(v=y[_],m=b(v,_,g),t))if(n)x[_]=m;else if(m)switch(t){case 3:return!0;case 5:return v;case 6:return _;case 2:x.push(v)}else if(l)return!1;return f?-1:u||l?l:x}}},"0a91":function(t,e,n){n("b42c"),n("93c4"),t.exports=n("b77f")},"0bfb":function(t,e,n){"use strict";var r=n("cb7c");t.exports=function(){var t=r(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},"0d58":function(t,e,n){var r=n("ce10"),o=n("e11e");t.exports=Object.keys||function(t){return r(t,o)}},"0ec0":function(t,e,n){"use strict";var r=n("b808"),o=n("e4e1"),i=n("45e2"),a=n("b67f")("species");t.exports=function(t){var e=r[t];i&&e&&!e[a]&&o.f(e,a,{configurable:!0,get:function(){return this}})}},"0f4a":function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},"0f89":function(t,e,n){var r=n("6f8a");t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},"103a":function(t,e,n){var r=n("da3c").document;t.exports=r&&r.documentElement},1169:function(t,e,n){var r=n("2d95");t.exports=Array.isArray||function(t){return"Array"==r(t)}},"11e9":function(t,e,n){var r=n("52a7"),o=n("4630"),i=n("6821"),a=n("6a99"),c=n("69a8"),s=n("c69a"),u=Object.getOwnPropertyDescriptor;e.f=n("9e1e")?u:function(t,e){if(t=i(t),e=a(e,!0),s)try{return u(t,e)}catch(n){}if(c(t,e))return o(!r.f.call(t,e),t[e])}},"12fd":function(t,e,n){var r=n("6f8a"),o=n("da3c").document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},"12fd9":function(t,e){},1495:function(t,e,n){var r=n("86cc"),o=n("cb7c"),i=n("0d58");t.exports=n("9e1e")?Object.defineProperties:function(t,e){o(t);var n,a=i(e),c=a.length,s=0;while(c>s)r.f(t,n=a[s++],e[n]);return t}},"14c6":function(t,e,n){"use strict";var r=n("3bb1"),o=n("b5cb"),i=n("a638"),a=n("58b9");t.exports=n("fa2d")(Array,"Array",(function(t,e){this._t=a(t),this._i=0,this._k=e}),(function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,o(1)):o(0,"keys"==e?n:"values"==e?t[n]:[n,t[n]])}),"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},1938:function(t,e,n){var r=n("d13f");r(r.S,"Array",{isArray:n("b5aa")})},"19e9":function(t,e,n){var r,o,i; /*! autosize 4.0.2 license: MIT http://www.jacklmoore.com/autosize -*/ -/*! - autosize 4.0.2 - license: MIT - http://www.jacklmoore.com/autosize -*/ -(function(n,a){o=[t,e],r=a,i="function"===typeof r?r.apply(e,o):r,void 0===i||(t.exports=i)})(0,function(t,e){"use strict";var n="function"===typeof Map?new Map:function(){var t=[],e=[];return{has:function(e){return t.indexOf(e)>-1},get:function(n){return e[t.indexOf(n)]},set:function(n,r){-1===t.indexOf(n)&&(t.push(n),e.push(r))},delete:function(n){var r=t.indexOf(n);r>-1&&(t.splice(r,1),e.splice(r,1))}}}(),r=function(t){return new Event(t,{bubbles:!0})};try{new Event("test")}catch(s){r=function(t){var e=document.createEvent("Event");return e.initEvent(t,!0,!1),e}}function o(t){if(t&&t.nodeName&&"TEXTAREA"===t.nodeName&&!n.has(t)){var e=null,o=null,i=null,a=function(){t.clientWidth!==o&&p()},c=function(e){window.removeEventListener("resize",a,!1),t.removeEventListener("input",p,!1),t.removeEventListener("keyup",p,!1),t.removeEventListener("autosize:destroy",c,!1),t.removeEventListener("autosize:update",p,!1),Object.keys(e).forEach(function(n){t.style[n]=e[n]}),n.delete(t)}.bind(t,{height:t.style.height,resize:t.style.resize,overflowY:t.style.overflowY,overflowX:t.style.overflowX,wordWrap:t.style.wordWrap});t.addEventListener("autosize:destroy",c,!1),"onpropertychange"in t&&"oninput"in t&&t.addEventListener("keyup",p,!1),window.addEventListener("resize",a,!1),t.addEventListener("input",p,!1),t.addEventListener("autosize:update",p,!1),t.style.overflowX="hidden",t.style.wordWrap="break-word",n.set(t,{destroy:c,update:p}),s()}function s(){var n=window.getComputedStyle(t,null);"vertical"===n.resize?t.style.resize="none":"both"===n.resize&&(t.style.resize="horizontal"),e="content-box"===n.boxSizing?-(parseFloat(n.paddingTop)+parseFloat(n.paddingBottom)):parseFloat(n.borderTopWidth)+parseFloat(n.borderBottomWidth),isNaN(e)&&(e=0),p()}function u(e){var n=t.style.width;t.style.width="0px",t.offsetWidth,t.style.width=n,t.style.overflowY=e}function f(t){var e=[];while(t&&t.parentNode&&t.parentNode instanceof Element)t.parentNode.scrollTop&&e.push({node:t.parentNode,scrollTop:t.parentNode.scrollTop}),t=t.parentNode;return e}function l(){if(0!==t.scrollHeight){var n=f(t),r=document.documentElement&&document.documentElement.scrollTop;t.style.height="",t.style.height=t.scrollHeight+e+"px",o=t.clientWidth,n.forEach(function(t){t.node.scrollTop=t.scrollTop}),r&&(document.documentElement.scrollTop=r)}}function p(){l();var e=Math.round(parseFloat(t.style.height)),n=window.getComputedStyle(t,null),o="content-box"===n.boxSizing?Math.round(parseFloat(n.height)):t.offsetHeight;if(on)e.push(arguments[n++]);return g[++y]=function(){c("function"==typeof t?t:Function(t),e)},r(y),y},d=function(t){delete g[t]},"process"==n("71fa")(l)?r=function(t){l.nextTick(a(b,t,1))}:v&&v.now?r=function(t){v.now(a(b,t,1))}:h?(o=new h,i=o.port2,o.port1.onmessage=_,r=a(i.postMessage,i,1)):f.addEventListener&&"function"==typeof postMessage&&!f.importScripts?(r=function(t){f.postMessage(t+"","*")},f.addEventListener("message",_,!1)):r=m in u("script")?function(t){s.appendChild(u("script"))[m]=function(){s.removeChild(this),b.call(t)}}:function(t){setTimeout(a(b,t,1),0)}),t.exports={set:p,clear:d}},"1b55":function(t,e,n){var r=n("7772")("wks"),o=n("7b00"),i=n("da3c").Symbol,a="function"==typeof i,c=t.exports=function(t){return r[t]||(r[t]=a&&i[t]||(a?i:o)("Symbol."+t))};c.store=r},"1b8f":function(t,e,n){var r=n("a812"),o=Math.max,i=Math.min;t.exports=function(t,e){return t=r(t),t<0?o(t+e,0):i(t,e)}},"1be4":function(t,e,n){"use strict";var r=n("da3c"),o=n("a7d3"),i=n("3adc"),a=n("7d95"),c=n("1b55")("species");t.exports=function(t){var e="function"==typeof o[t]?o[t]:r[t];a&&e&&!e[c]&&i.f(e,c,{configurable:!0,get:function(){return this}})}},"1c01":function(t,e,n){var r=n("a7d3"),o=r.JSON||(r.JSON={stringify:JSON.stringify});t.exports=function(t){return o.stringify.apply(o,arguments)}},"1c08":function(t,e,n){var r=n("27b2"),o=n("ab4c"),i=n("cc20");t.exports=function(t,e){if(r(t),o(e)&&e.constructor===t)return e;var n=i.f(t),a=n.resolve;return a(e),n.promise}},"1d27":function(t,e,n){var r=n("27b2");t.exports=function(t,e,n,o){try{return o?e(r(n)[0],n[1]):e(n)}catch(a){var i=t["return"];throw void 0!==i&&r(i.call(t)),a}}},"1d73":function(t,e,n){t.exports=n("312a")("native-function-to-string",Function.toString)},"1dce":function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.withParams=e.validationMixin=e.Vuelidate=void 0;var r=Object.assign||function(t){for(var e=1;e1?a:a.$sub[0]:null;return{output:o,params:c}}},computed:{run:function(){return this.runRule(this.lazyParentModel())},$params:function(){return this.run.params},proxy:function(){var t=this.run.output;return t[p]?!!t.v:!!t},$pending:function(){var t=this.run.output;return!!t[p]&&t.p}}}),s=e.extend({data:function(){return{dirty:!1,validations:null,lazyModel:null,model:null,prop:null,lazyParentModel:null,rootModel:null}},methods:r({},y,{refProxy:function(t){return this.getRef(t).proxy},getRef:function(t){return this.refs[t]},isNested:function(t){return"function"!==typeof this.validations[t]}}),computed:r({},h,{nestedKeys:function(){return this.keys.filter(this.isNested)},ruleKeys:function(){var t=this;return this.keys.filter(function(e){return!t.isNested(e)})},keys:function(){return Object.keys(this.validations).filter(function(t){return"$params"!==t})},proxy:function(){var t=this,e=c(this.keys,function(e){return{enumerable:!0,configurable:!0,get:function(){return t.refProxy(e)}}}),n=c(g,function(e){return{enumerable:!0,configurable:!0,get:function(){return t[e]}}}),o=c(m,function(e){return{enumerable:!1,configurable:!0,get:function(){return t[e]}}});return Object.defineProperties({},r({},e,n,o))},children:function(){var t=this;return[].concat(this.nestedKeys.map(function(e){return w(t,e)}),this.ruleKeys.map(function(e){return x(t,e)})).filter(Boolean)}})}),v=s.extend({methods:{isNested:function(t){return"undefined"!==typeof this.validations[t]()},getRef:function(t){var e=this;return{get proxy(){return e.validations[t]()||!1}}}}}),_=s.extend({computed:{keys:function(){var t=this.getModel();return u(t)?Object.keys(t):[]},tracker:function(){var t=this,e=this.validations.$trackBy;return e?function(n){return""+l(t.rootModel,t.getModelKey(n),e)}:function(t){return""+t}},eagerParentModel:function(){var t=this.lazyParentModel();return function(){return t}},children:function(){var t=this,e=this.validations,n=this.getModel(),i=r({},e);delete i["$trackBy"];var a={};return this.keys.map(function(e){var r=t.tracker(e);return a.hasOwnProperty(r)?null:(a[r]=!0,(0,o.h)(s,r,{validations:i,prop:e,lazyParentModel:t.eagerParentModel,model:n[e],rootModel:t.rootModel}))}).filter(Boolean)}},methods:{isNested:function(){return!0},getRef:function(t){return this.refs[this.tracker(t)]}}}),w=function(t,e){if("$each"===e)return(0,o.h)(_,e,{validations:t.validations[e],lazyParentModel:t.lazyParentModel,prop:e,lazyModel:t.getModel,rootModel:t.rootModel});var n=t.validations[e];if(Array.isArray(n)){var r=t.rootModel,i=c(n,function(t){return function(){return l(r,r.$v,t)}},function(t){return Array.isArray(t)?t.join("."):t});return(0,o.h)(v,e,{validations:i,lazyParentModel:a,prop:e,lazyModel:a,rootModel:r})}return(0,o.h)(s,e,{validations:n,lazyParentModel:t.getModel,prop:e,lazyModel:t.getModelKey,rootModel:t.rootModel})},x=function(t,e){return(0,o.h)(n,e,{rule:t.validations[e],lazyParentModel:t.lazyParentModel,lazyModel:t.getModel,rootModel:t.rootModel})};return b={VBase:e,Validation:s},b},w=null;function x(t){if(w)return w;var e=t.constructor;while(e.super)e=e.super;return w=e,e}var O=function(t,e){var n=x(t),r=_(n),i=r.Validation,c=r.VBase,s=new c({computed:{children:function(){var n="function"===typeof e?e.call(t):e;return[(0,o.h)(i,"$v",{validations:n,lazyParentModel:a,prop:"$v",model:t,rootModel:t})]}}});return s},S={data:function(){var t=this.$options.validations;return t&&(this._vuelidate=O(this,t)),{}},beforeCreate:function(){var t=this.$options,e=t.validations;e&&(t.computed||(t.computed={}),t.computed.$v||(t.computed.$v=function(){return this._vuelidate?this._vuelidate.refs.$v.proxy:null}))},beforeDestroy:function(){this._vuelidate&&(this._vuelidate.$destroy(),this._vuelidate=null)}};function $(t){t.mixin(S)}e.Vuelidate=$,e.validationMixin=S,e.withParams=i.withParams,e.default=$},"1f51":function(t,e,n){var r=n("b808"),o=n("a0a8"),i=n("0f4a"),a=n("c0f4")("src"),c=n("1d73"),s="toString",u=(""+c).split(s);n("ca38").inspectSource=function(t){return c.call(t)},(t.exports=function(t,e,n,c){var s="function"==typeof n;s&&(i(n,"name")||o(n,"name",e)),t[e]!==n&&(s&&(i(n,a)||o(n,a,t[e]?""+t[e]:u.join(String(e)))),t===r?t[e]=n:c?t[e]?t[e]=n:o(t,e,n):(delete t[e],o(t,e,n)))})(Function.prototype,s,function(){return"function"==typeof this&&this[a]||c.call(this)})},"20d6":function(t,e,n){"use strict";var r=n("5ca1"),o=n("0a49")(6),i="findIndex",a=!0;i in[]&&Array(1)[i](function(){a=!1}),r(r.P+r.F*a,"Array",{findIndex:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}}),n("9c6c")(i)},"214f":function(t,e,n){"use strict";n("b0c5");var r=n("2aba"),o=n("32e9"),i=n("79e5"),a=n("be13"),c=n("2b4c"),s=n("520a"),u=c("species"),f=!i(function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$")}),l=function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2===n.length&&"a"===n[0]&&"b"===n[1]}();t.exports=function(t,e,n){var p=c(t),d=!i(function(){var e={};return e[p]=function(){return 7},7!=""[t](e)}),h=d?!i(function(){var e=!1,n=/a/;return n.exec=function(){return e=!0,null},"split"===t&&(n.constructor={},n.constructor[u]=function(){return n}),n[p](""),!e}):void 0;if(!d||!h||"replace"===t&&!f||"split"===t&&!l){var v=/./[p],y=n(a,p,""[t],function(t,e,n,r,o){return e.exec===s?d&&!o?{done:!0,value:v.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),g=y[0],m=y[1];r(String.prototype,t,g),o(RegExp.prototype,p,2==e?function(t,e){return m.call(t,this,e)}:function(t){return m.call(t,this)})}}},2299:function(t,e,n){var r=n("b67f")("iterator"),o=!1;try{var i=[7][r]();i["return"]=function(){o=!0},Array.from(i,function(){throw 2})}catch(a){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i=[7],c=i[r]();c.next=function(){return{done:n=!0}},i[r]=function(){return c},t(i)}catch(a){}return n}},"230e":function(t,e,n){var r=n("d3f4"),o=n("7726").document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},2312:function(t,e,n){t.exports=n("8ce0")},"23c6":function(t,e,n){var r=n("2d95"),o=n("2b4c")("toStringTag"),i="Arguments"==r(function(){return arguments}()),a=function(t,e){try{return t[e]}catch(n){}};t.exports=function(t){var e,n,c;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=a(e=Object(t),o))?n:i?r(e):"Object"==(c=r(e))&&"function"==typeof e.callee?"Arguments":c}},2418:function(t,e,n){var r=n("6a9b"),o=n("a5ab"),i=n("1b8f");t.exports=function(t){return function(e,n,a){var c,s=r(e),u=o(s.length),f=i(a,u);if(t&&n!=n){while(u>f)if(c=s[f++],c!=c)return!0}else for(;u>f;f++)if((t||f in s)&&s[f]===n)return t||f||0;return!t&&-1}}},"245b":function(t,e){t.exports=function(t,e){return{value:e,done:!!t}}},"268f":function(t,e,n){t.exports=n("2a04")},2695:function(t,e,n){var r=n("43c8"),o=n("6a9b"),i=n("2418")(!1),a=n("5d8f")("IE_PROTO");t.exports=function(t,e){var n,c=o(t),s=0,u=[];for(n in c)n!=a&&r(c,n)&&u.push(n);while(e.length>s)r(c,n=e[s++])&&(~i(u,n)||u.push(n));return u}},"27b2":function(t,e,n){var r=n("ab4c");t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},2877:function(t,e,n){"use strict";function r(t,e,n,r,o,i,a,c){var s,u="function"===typeof t?t.options:t;if(e&&(u.render=e,u.staticRenderFns=n,u._compiled=!0),r&&(u.functional=!0),i&&(u._scopeId="data-v-"+i),a?(s=function(t){t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,t||"undefined"===typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},u._ssrRegister=s):o&&(s=c?function(){o.call(this,this.$root.$options.shadowRoot)}:o),s)if(u.functional){u._injectStyles=s;var f=u.render;u.render=function(t,e){return s.call(e),f(t,e)}}else{var l=u.beforeCreate;u.beforeCreate=l?[].concat(l,s):[s]}return{exports:t,options:u}}n.d(e,"a",function(){return r})},"28a5":function(t,e,n){"use strict";var r=n("aae3"),o=n("cb7c"),i=n("ebd6"),a=n("0390"),c=n("9def"),s=n("5f1b"),u=n("520a"),f=Math.min,l=[].push,p="split",d="length",h="lastIndex",v=!!function(){try{return new RegExp("x","y")}catch(t){}}();n("214f")("split",2,function(t,e,n,y){var g=n;return"c"=="abbc"[p](/(b)*/)[1]||4!="test"[p](/(?:)/,-1)[d]||2!="ab"[p](/(?:ab)*/)[d]||4!="."[p](/(.?)(.?)/)[d]||"."[p](/()()/)[d]>1||""[p](/.?/)[d]?g=function(t,e){var o=String(this);if(void 0===t&&0===e)return[];if(!r(t))return n.call(o,t,e);var i,a,c,s=[],f=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),p=0,v=void 0===e?4294967295:e>>>0,y=new RegExp(t.source,f+"g");while(i=u.call(y,o)){if(a=y[h],a>p&&(s.push(o.slice(p,i.index)),i[d]>1&&i.index=v))break;y[h]===i.index&&y[h]++}return p===o[d]?!c&&y.test("")||s.push(""):s.push(o.slice(p)),s[d]>v?s.slice(0,v):s}:"0"[p](void 0,0)[d]&&(g=function(t,e){return void 0===t&&0===e?[]:n.call(this,t,e)}),[function(n,r){var o=t(this),i=void 0==n?void 0:n[e];return void 0!==i?i.call(n,o,r):g.call(String(o),n,r)},function(t,e){var r=y(g,t,this,e,g!==n);if(r.done)return r.value;var u=o(t),l=String(this),p=i(u,RegExp),d=u.unicode,h=(u.ignoreCase?"i":"")+(u.multiline?"m":"")+(u.unicode?"u":"")+(v?"y":"g"),m=new p(v?u:"^(?:"+u.source+")",h),b=void 0===e?4294967295:e>>>0;if(0===b)return[];if(0===l.length)return null===s(m,l)?[l]:[];var _=0,w=0,x=[];while(w=u?t?"":void 0:(i=c.charCodeAt(s),i<55296||i>56319||s+1===u||(a=c.charCodeAt(s+1))<56320||a>57343?t?c.charAt(s):i:t?c.slice(s,s+2):a-56320+(i-55296<<10)+65536)}}},"2aba":function(t,e,n){var r=n("7726"),o=n("32e9"),i=n("69a8"),a=n("ca5a")("src"),c="toString",s=Function[c],u=(""+s).split(c);n("8378").inspectSource=function(t){return s.call(t)},(t.exports=function(t,e,n,c){var s="function"==typeof n;s&&(i(n,"name")||o(n,"name",e)),t[e]!==n&&(s&&(i(n,a)||o(n,a,t[e]?""+t[e]:u.join(String(e)))),t===r?t[e]=n:c?t[e]?t[e]=n:o(t,e,n):(delete t[e],o(t,e,n)))})(Function.prototype,c,function(){return"function"==typeof this&&this[a]||s.call(this)})},"2aeb":function(t,e,n){var r=n("cb7c"),o=n("1495"),i=n("e11e"),a=n("613b")("IE_PROTO"),c=function(){},s="prototype",u=function(){var t,e=n("230e")("iframe"),r=i.length,o="<",a=">";e.style.display="none",n("fab2").appendChild(e),e.src="javascript:",t=e.contentWindow.document,t.open(),t.write(o+"script"+a+"document.F=Object"+o+"/script"+a),t.close(),u=t.F;while(r--)delete u[s][i[r]];return u()};t.exports=Object.create||function(t,e){var n;return null!==t?(c[s]=r(t),n=new c,c[s]=null,n[a]=t):n=u(),void 0===e?n:o(n,e)}},"2b4c":function(t,e,n){var r=n("5537")("wks"),o=n("ca5a"),i=n("7726").Symbol,a="function"==typeof i,c=t.exports=function(t){return r[t]||(r[t]=a&&i[t]||(a?i:o)("Symbol."+t))};c.store=r},"2d00":function(t,e){t.exports=!1},"2d1f":function(t,e,n){t.exports=n("42bb")},"2d95":function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},"2ea1":function(t,e,n){var r=n("6f8a");t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},"2f21":function(t,e,n){"use strict";var r=n("79e5");t.exports=function(t,e){return!!t&&r(function(){e?t.call(null,function(){},1):t.call(null)})}},"2f62":function(t,e,n){"use strict"; +*/(function(n,a){o=[t,e],r=a,i="function"===typeof r?r.apply(e,o):r,void 0===i||(t.exports=i)})(0,(function(t,e){"use strict";var n="function"===typeof Map?new Map:function(){var t=[],e=[];return{has:function(e){return t.indexOf(e)>-1},get:function(n){return e[t.indexOf(n)]},set:function(n,r){-1===t.indexOf(n)&&(t.push(n),e.push(r))},delete:function(n){var r=t.indexOf(n);r>-1&&(t.splice(r,1),e.splice(r,1))}}}(),r=function(t){return new Event(t,{bubbles:!0})};try{new Event("test")}catch(s){r=function(t){var e=document.createEvent("Event");return e.initEvent(t,!0,!1),e}}function o(t){if(t&&t.nodeName&&"TEXTAREA"===t.nodeName&&!n.has(t)){var e=null,o=null,i=null,a=function(){t.clientWidth!==o&&p()},c=function(e){window.removeEventListener("resize",a,!1),t.removeEventListener("input",p,!1),t.removeEventListener("keyup",p,!1),t.removeEventListener("autosize:destroy",c,!1),t.removeEventListener("autosize:update",p,!1),Object.keys(e).forEach((function(n){t.style[n]=e[n]})),n.delete(t)}.bind(t,{height:t.style.height,resize:t.style.resize,overflowY:t.style.overflowY,overflowX:t.style.overflowX,wordWrap:t.style.wordWrap});t.addEventListener("autosize:destroy",c,!1),"onpropertychange"in t&&"oninput"in t&&t.addEventListener("keyup",p,!1),window.addEventListener("resize",a,!1),t.addEventListener("input",p,!1),t.addEventListener("autosize:update",p,!1),t.style.overflowX="hidden",t.style.wordWrap="break-word",n.set(t,{destroy:c,update:p}),s()}function s(){var n=window.getComputedStyle(t,null);"vertical"===n.resize?t.style.resize="none":"both"===n.resize&&(t.style.resize="horizontal"),e="content-box"===n.boxSizing?-(parseFloat(n.paddingTop)+parseFloat(n.paddingBottom)):parseFloat(n.borderTopWidth)+parseFloat(n.borderBottomWidth),isNaN(e)&&(e=0),p()}function u(e){var n=t.style.width;t.style.width="0px",t.offsetWidth,t.style.width=n,t.style.overflowY=e}function l(t){var e=[];while(t&&t.parentNode&&t.parentNode instanceof Element)t.parentNode.scrollTop&&e.push({node:t.parentNode,scrollTop:t.parentNode.scrollTop}),t=t.parentNode;return e}function f(){if(0!==t.scrollHeight){var n=l(t),r=document.documentElement&&document.documentElement.scrollTop;t.style.height="",t.style.height=t.scrollHeight+e+"px",o=t.clientWidth,n.forEach((function(t){t.node.scrollTop=t.scrollTop})),r&&(document.documentElement.scrollTop=r)}}function p(){f();var e=Math.round(parseFloat(t.style.height)),n=window.getComputedStyle(t,null),o="content-box"===n.boxSizing?Math.round(parseFloat(n.height)):t.offsetHeight;if(on)e.push(arguments[n++]);return g[++m]=function(){c("function"==typeof t?t:Function(t),e)},r(m),m},d=function(t){delete g[t]},"process"==n("71fa")(f)?r=function(t){f.nextTick(a(b,t,1))}:v&&v.now?r=function(t){v.now(a(b,t,1))}:h?(o=new h,i=o.port2,o.port1.onmessage=w,r=a(i.postMessage,i,1)):l.addEventListener&&"function"==typeof postMessage&&!l.importScripts?(r=function(t){l.postMessage(t+"","*")},l.addEventListener("message",w,!1)):r=y in u("script")?function(t){s.appendChild(u("script"))[y]=function(){s.removeChild(this),b.call(t)}}:function(t){setTimeout(a(b,t,1),0)}),t.exports={set:p,clear:d}},"1b55":function(t,e,n){var r=n("7772")("wks"),o=n("7b00"),i=n("da3c").Symbol,a="function"==typeof i,c=t.exports=function(t){return r[t]||(r[t]=a&&i[t]||(a?i:o)("Symbol."+t))};c.store=r},"1b8f":function(t,e,n){var r=n("a812"),o=Math.max,i=Math.min;t.exports=function(t,e){return t=r(t),t<0?o(t+e,0):i(t,e)}},"1c08":function(t,e,n){var r=n("27b2"),o=n("ab4c"),i=n("cc20");t.exports=function(t,e){if(r(t),o(e)&&e.constructor===t)return e;var n=i.f(t),a=n.resolve;return a(e),n.promise}},"1d27":function(t,e,n){var r=n("27b2");t.exports=function(t,e,n,o){try{return o?e(r(n)[0],n[1]):e(n)}catch(a){var i=t["return"];throw void 0!==i&&r(i.call(t)),a}}},"1d73":function(t,e,n){t.exports=n("312a")("native-function-to-string",Function.toString)},"1dce":function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.withParams=e.validationMixin=e.Vuelidate=void 0;var r=Object.assign||function(t){for(var e=1;e1?a:a.$sub[0]:null;return{output:o,params:c}}},computed:{run:function(){return this.runRule(this.lazyParentModel())},$params:function(){return this.run.params},proxy:function(){var t=this.run.output;return t[p]?!!t.v:!!t},$pending:function(){var t=this.run.output;return!!t[p]&&t.p}}}),s=e.extend({data:function(){return{dirty:!1,validations:null,lazyModel:null,model:null,prop:null,lazyParentModel:null,rootModel:null}},methods:r({},m,{refProxy:function(t){return this.getRef(t).proxy},getRef:function(t){return this.refs[t]},isNested:function(t){return"function"!==typeof this.validations[t]}}),computed:r({},h,{nestedKeys:function(){return this.keys.filter(this.isNested)},ruleKeys:function(){var t=this;return this.keys.filter((function(e){return!t.isNested(e)}))},keys:function(){return Object.keys(this.validations).filter((function(t){return"$params"!==t}))},proxy:function(){var t=this,e=c(this.keys,(function(e){return{enumerable:!0,configurable:!0,get:function(){return t.refProxy(e)}}})),n=c(g,(function(e){return{enumerable:!0,configurable:!0,get:function(){return t[e]}}})),o=c(y,(function(e){return{enumerable:!1,configurable:!0,get:function(){return t[e]}}}));return Object.defineProperties({},r({},e,n,o))},children:function(){var t=this;return[].concat(this.nestedKeys.map((function(e){return _(t,e)})),this.ruleKeys.map((function(e){return x(t,e)}))).filter(Boolean)}})}),v=s.extend({methods:{isNested:function(t){return"undefined"!==typeof this.validations[t]()},getRef:function(t){var e=this;return{get proxy(){return e.validations[t]()||!1}}}}}),w=s.extend({computed:{keys:function(){var t=this.getModel();return u(t)?Object.keys(t):[]},tracker:function(){var t=this,e=this.validations.$trackBy;return e?function(n){return""+f(t.rootModel,t.getModelKey(n),e)}:function(t){return""+t}},eagerParentModel:function(){var t=this.lazyParentModel();return function(){return t}},children:function(){var t=this,e=this.validations,n=this.getModel(),i=r({},e);delete i["$trackBy"];var a={};return this.keys.map((function(e){var r=t.tracker(e);return a.hasOwnProperty(r)?null:(a[r]=!0,(0,o.h)(s,r,{validations:i,prop:e,lazyParentModel:t.eagerParentModel,model:n[e],rootModel:t.rootModel}))})).filter(Boolean)}},methods:{isNested:function(){return!0},getRef:function(t){return this.refs[this.tracker(t)]}}}),_=function(t,e){if("$each"===e)return(0,o.h)(w,e,{validations:t.validations[e],lazyParentModel:t.lazyParentModel,prop:e,lazyModel:t.getModel,rootModel:t.rootModel});var n=t.validations[e];if(Array.isArray(n)){var r=t.rootModel,i=c(n,(function(t){return function(){return f(r,r.$v,t)}}),(function(t){return Array.isArray(t)?t.join("."):t}));return(0,o.h)(v,e,{validations:i,lazyParentModel:a,prop:e,lazyModel:a,rootModel:r})}return(0,o.h)(s,e,{validations:n,lazyParentModel:t.getModel,prop:e,lazyModel:t.getModelKey,rootModel:t.rootModel})},x=function(t,e){return(0,o.h)(n,e,{rule:t.validations[e],lazyParentModel:t.lazyParentModel,lazyModel:t.getModel,rootModel:t.rootModel})};return b={VBase:e,Validation:s},b},_=null;function x(t){if(_)return _;var e=t.constructor;while(e.super)e=e.super;return _=e,e}var S=function(t,e){var n=x(t),r=w(n),i=r.Validation,c=r.VBase,s=new c({computed:{children:function(){var n="function"===typeof e?e.call(t):e;return[(0,o.h)(i,"$v",{validations:n,lazyParentModel:a,prop:"$v",model:t,rootModel:t})]}}});return s},O={data:function(){var t=this.$options.validations;return t&&(this._vuelidate=S(this,t)),{}},beforeCreate:function(){var t=this.$options,e=t.validations;e&&(t.computed||(t.computed={}),t.computed.$v||(t.computed.$v=function(){return this._vuelidate?this._vuelidate.refs.$v.proxy:null}))},beforeDestroy:function(){this._vuelidate&&(this._vuelidate.$destroy(),this._vuelidate=null)}};function E(t){t.mixin(O)}e.Vuelidate=E,e.validationMixin=O,e.withParams=i.withParams,e.default=E},"1f51":function(t,e,n){var r=n("b808"),o=n("a0a8"),i=n("0f4a"),a=n("c0f4")("src"),c=n("1d73"),s="toString",u=(""+c).split(s);n("ca38").inspectSource=function(t){return c.call(t)},(t.exports=function(t,e,n,c){var s="function"==typeof n;s&&(i(n,"name")||o(n,"name",e)),t[e]!==n&&(s&&(i(n,a)||o(n,a,t[e]?""+t[e]:u.join(String(e)))),t===r?t[e]=n:c?t[e]?t[e]=n:o(t,e,n):(delete t[e],o(t,e,n)))})(Function.prototype,s,(function(){return"function"==typeof this&&this[a]||c.call(this)}))},"20d6":function(t,e,n){"use strict";var r=n("5ca1"),o=n("0a49")(6),i="findIndex",a=!0;i in[]&&Array(1)[i]((function(){a=!1})),r(r.P+r.F*a,"Array",{findIndex:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}}),n("9c6c")(i)},"214f":function(t,e,n){"use strict";n("b0c5");var r=n("2aba"),o=n("32e9"),i=n("79e5"),a=n("be13"),c=n("2b4c"),s=n("520a"),u=c("species"),l=!i((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$")})),f=function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2===n.length&&"a"===n[0]&&"b"===n[1]}();t.exports=function(t,e,n){var p=c(t),d=!i((function(){var e={};return e[p]=function(){return 7},7!=""[t](e)})),h=d?!i((function(){var e=!1,n=/a/;return n.exec=function(){return e=!0,null},"split"===t&&(n.constructor={},n.constructor[u]=function(){return n}),n[p](""),!e})):void 0;if(!d||!h||"replace"===t&&!l||"split"===t&&!f){var v=/./[p],m=n(a,p,""[t],(function(t,e,n,r,o){return e.exec===s?d&&!o?{done:!0,value:v.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}})),g=m[0],y=m[1];r(String.prototype,t,g),o(RegExp.prototype,p,2==e?function(t,e){return y.call(t,this,e)}:function(t){return y.call(t,this)})}}},2299:function(t,e,n){var r=n("b67f")("iterator"),o=!1;try{var i=[7][r]();i["return"]=function(){o=!0},Array.from(i,(function(){throw 2}))}catch(a){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i=[7],c=i[r]();c.next=function(){return{done:n=!0}},i[r]=function(){return c},t(i)}catch(a){}return n}},"230e":function(t,e,n){var r=n("d3f4"),o=n("7726").document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},2312:function(t,e,n){t.exports=n("8ce0")},"23c6":function(t,e,n){var r=n("2d95"),o=n("2b4c")("toStringTag"),i="Arguments"==r(function(){return arguments}()),a=function(t,e){try{return t[e]}catch(n){}};t.exports=function(t){var e,n,c;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=a(e=Object(t),o))?n:i?r(e):"Object"==(c=r(e))&&"function"==typeof e.callee?"Arguments":c}},2418:function(t,e,n){var r=n("6a9b"),o=n("a5ab"),i=n("1b8f");t.exports=function(t){return function(e,n,a){var c,s=r(e),u=o(s.length),l=i(a,u);if(t&&n!=n){while(u>l)if(c=s[l++],c!=c)return!0}else for(;u>l;l++)if((t||l in s)&&s[l]===n)return t||l||0;return!t&&-1}}},"245b":function(t,e){t.exports=function(t,e){return{value:e,done:!!t}}},2621:function(t,e){e.f=Object.getOwnPropertySymbols},2695:function(t,e,n){var r=n("43c8"),o=n("6a9b"),i=n("2418")(!1),a=n("5d8fa")("IE_PROTO");t.exports=function(t,e){var n,c=o(t),s=0,u=[];for(n in c)n!=a&&r(c,n)&&u.push(n);while(e.length>s)r(c,n=e[s++])&&(~i(u,n)||u.push(n));return u}},"27b2":function(t,e,n){var r=n("ab4c");t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},2877:function(t,e,n){"use strict";function r(t,e,n,r,o,i,a,c){var s,u="function"===typeof t?t.options:t;if(e&&(u.render=e,u.staticRenderFns=n,u._compiled=!0),r&&(u.functional=!0),i&&(u._scopeId="data-v-"+i),a?(s=function(t){t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,t||"undefined"===typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},u._ssrRegister=s):o&&(s=c?function(){o.call(this,this.$root.$options.shadowRoot)}:o),s)if(u.functional){u._injectStyles=s;var l=u.render;u.render=function(t,e){return s.call(e),l(t,e)}}else{var f=u.beforeCreate;u.beforeCreate=f?[].concat(f,s):[s]}return{exports:t,options:u}}n.d(e,"a",(function(){return r}))},"28a5":function(t,e,n){"use strict";var r=n("aae3"),o=n("cb7c"),i=n("ebd6"),a=n("0390"),c=n("9def"),s=n("5f1b"),u=n("520a"),l=Math.min,f=[].push,p="split",d="length",h="lastIndex",v=!!function(){try{return new RegExp("x","y")}catch(t){}}();n("214f")("split",2,(function(t,e,n,m){var g=n;return"c"=="abbc"[p](/(b)*/)[1]||4!="test"[p](/(?:)/,-1)[d]||2!="ab"[p](/(?:ab)*/)[d]||4!="."[p](/(.?)(.?)/)[d]||"."[p](/()()/)[d]>1||""[p](/.?/)[d]?g=function(t,e){var o=String(this);if(void 0===t&&0===e)return[];if(!r(t))return n.call(o,t,e);var i,a,c,s=[],l=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),p=0,v=void 0===e?4294967295:e>>>0,m=new RegExp(t.source,l+"g");while(i=u.call(m,o)){if(a=m[h],a>p&&(s.push(o.slice(p,i.index)),i[d]>1&&i.index=v))break;m[h]===i.index&&m[h]++}return p===o[d]?!c&&m.test("")||s.push(""):s.push(o.slice(p)),s[d]>v?s.slice(0,v):s}:"0"[p](void 0,0)[d]&&(g=function(t,e){return void 0===t&&0===e?[]:n.call(this,t,e)}),[function(n,r){var o=t(this),i=void 0==n?void 0:n[e];return void 0!==i?i.call(n,o,r):g.call(String(o),n,r)},function(t,e){var r=m(g,t,this,e,g!==n);if(r.done)return r.value;var u=o(t),f=String(this),p=i(u,RegExp),d=u.unicode,h=(u.ignoreCase?"i":"")+(u.multiline?"m":"")+(u.unicode?"u":"")+(v?"y":"g"),y=new p(v?u:"^(?:"+u.source+")",h),b=void 0===e?4294967295:e>>>0;if(0===b)return[];if(0===f.length)return null===s(y,f)?[f]:[];var w=0,_=0,x=[];while(_=u?t?"":void 0:(i=c.charCodeAt(s),i<55296||i>56319||s+1===u||(a=c.charCodeAt(s+1))<56320||a>57343?t?c.charAt(s):i:t?c.slice(s,s+2):a-56320+(i-55296<<10)+65536)}}},"2aba":function(t,e,n){var r=n("7726"),o=n("32e9"),i=n("69a8"),a=n("ca5a")("src"),c="toString",s=Function[c],u=(""+s).split(c);n("8378").inspectSource=function(t){return s.call(t)},(t.exports=function(t,e,n,c){var s="function"==typeof n;s&&(i(n,"name")||o(n,"name",e)),t[e]!==n&&(s&&(i(n,a)||o(n,a,t[e]?""+t[e]:u.join(String(e)))),t===r?t[e]=n:c?t[e]?t[e]=n:o(t,e,n):(delete t[e],o(t,e,n)))})(Function.prototype,c,(function(){return"function"==typeof this&&this[a]||s.call(this)}))},"2aeb":function(t,e,n){var r=n("cb7c"),o=n("1495"),i=n("e11e"),a=n("613b")("IE_PROTO"),c=function(){},s="prototype",u=function(){var t,e=n("230e")("iframe"),r=i.length,o="<",a=">";e.style.display="none",n("fab2").appendChild(e),e.src="javascript:",t=e.contentWindow.document,t.open(),t.write(o+"script"+a+"document.F=Object"+o+"/script"+a),t.close(),u=t.F;while(r--)delete u[s][i[r]];return u()};t.exports=Object.create||function(t,e){var n;return null!==t?(c[s]=r(t),n=new c,c[s]=null,n[a]=t):n=u(),void 0===e?n:o(n,e)}},"2b4c":function(t,e,n){var r=n("5537")("wks"),o=n("ca5a"),i=n("7726").Symbol,a="function"==typeof i,c=t.exports=function(t){return r[t]||(r[t]=a&&i[t]||(a?i:o)("Symbol."+t))};c.store=r},"2d00":function(t,e){t.exports=!1},"2d95":function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},"2ea1":function(t,e,n){var r=n("6f8a");t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},"2f21":function(t,e,n){"use strict";var r=n("79e5");t.exports=function(t,e){return!!t&&r((function(){e?t.call(null,(function(){}),1):t.call(null)}))}},"2f62":function(t,e,n){"use strict";(function(t){ /** - * vuex v3.1.0 - * (c) 2019 Evan You - * @license MIT - */function r(t){var e=Number(t.version.split(".")[0]);if(e>=2)t.mixin({beforeCreate:r});else{var n=t.prototype._init;t.prototype._init=function(t){void 0===t&&(t={}),t.init=t.init?[r].concat(t.init):r,n.call(this,t)}}function r(){var t=this.$options;t.store?this.$store="function"===typeof t.store?t.store():t.store:t.parent&&t.parent.$store&&(this.$store=t.parent.$store)}}var o="undefined"!==typeof window&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function i(t){o&&(t._devtoolHook=o,o.emit("vuex:init",t),o.on("vuex:travel-to-state",function(e){t.replaceState(e)}),t.subscribe(function(t,e){o.emit("vuex:mutation",t,e)}))}function a(t,e){Object.keys(t).forEach(function(n){return e(t[n],n)})}function c(t){return null!==t&&"object"===typeof t}function s(t){return t&&"function"===typeof t.then}var u=function(t,e){this.runtime=e,this._children=Object.create(null),this._rawModule=t;var n=t.state;this.state=("function"===typeof n?n():n)||{}},f={namespaced:{configurable:!0}};f.namespaced.get=function(){return!!this._rawModule.namespaced},u.prototype.addChild=function(t,e){this._children[t]=e},u.prototype.removeChild=function(t){delete this._children[t]},u.prototype.getChild=function(t){return this._children[t]},u.prototype.update=function(t){this._rawModule.namespaced=t.namespaced,t.actions&&(this._rawModule.actions=t.actions),t.mutations&&(this._rawModule.mutations=t.mutations),t.getters&&(this._rawModule.getters=t.getters)},u.prototype.forEachChild=function(t){a(this._children,t)},u.prototype.forEachGetter=function(t){this._rawModule.getters&&a(this._rawModule.getters,t)},u.prototype.forEachAction=function(t){this._rawModule.actions&&a(this._rawModule.actions,t)},u.prototype.forEachMutation=function(t){this._rawModule.mutations&&a(this._rawModule.mutations,t)},Object.defineProperties(u.prototype,f);var l=function(t){this.register([],t,!1)};function p(t,e,n){if(e.update(n),n.modules)for(var r in n.modules){if(!e.getChild(r))return void 0;p(t.concat(r),e.getChild(r),n.modules[r])}}l.prototype.get=function(t){return t.reduce(function(t,e){return t.getChild(e)},this.root)},l.prototype.getNamespace=function(t){var e=this.root;return t.reduce(function(t,n){return e=e.getChild(n),t+(e.namespaced?n+"/":"")},"")},l.prototype.update=function(t){p([],this.root,t)},l.prototype.register=function(t,e,n){var r=this;void 0===n&&(n=!0);var o=new u(e,n);if(0===t.length)this.root=o;else{var i=this.get(t.slice(0,-1));i.addChild(t[t.length-1],o)}e.modules&&a(e.modules,function(e,o){r.register(t.concat(o),e,n)})},l.prototype.unregister=function(t){var e=this.get(t.slice(0,-1)),n=t[t.length-1];e.getChild(n).runtime&&e.removeChild(n)};var d;var h=function(t){var e=this;void 0===t&&(t={}),!d&&"undefined"!==typeof window&&window.Vue&&k(window.Vue);var n=t.plugins;void 0===n&&(n=[]);var r=t.strict;void 0===r&&(r=!1),this._committing=!1,this._actions=Object.create(null),this._actionSubscribers=[],this._mutations=Object.create(null),this._wrappedGetters=Object.create(null),this._modules=new l(t),this._modulesNamespaceMap=Object.create(null),this._subscribers=[],this._watcherVM=new d;var o=this,a=this,c=a.dispatch,s=a.commit;this.dispatch=function(t,e){return c.call(o,t,e)},this.commit=function(t,e,n){return s.call(o,t,e,n)},this.strict=r;var u=this._modules.root.state;b(this,u,[],this._modules.root),m(this,u),n.forEach(function(t){return t(e)});var f=void 0!==t.devtools?t.devtools:d.config.devtools;f&&i(this)},v={state:{configurable:!0}};function y(t,e){return e.indexOf(t)<0&&e.push(t),function(){var n=e.indexOf(t);n>-1&&e.splice(n,1)}}function g(t,e){t._actions=Object.create(null),t._mutations=Object.create(null),t._wrappedGetters=Object.create(null),t._modulesNamespaceMap=Object.create(null);var n=t.state;b(t,n,[],t._modules.root,!0),m(t,n,e)}function m(t,e,n){var r=t._vm;t.getters={};var o=t._wrappedGetters,i={};a(o,function(e,n){i[n]=function(){return e(t)},Object.defineProperty(t.getters,n,{get:function(){return t._vm[n]},enumerable:!0})});var c=d.config.silent;d.config.silent=!0,t._vm=new d({data:{$$state:e},computed:i}),d.config.silent=c,t.strict&&$(t),r&&(n&&t._withCommit(function(){r._data.$$state=null}),d.nextTick(function(){return r.$destroy()}))}function b(t,e,n,r,o){var i=!n.length,a=t._modules.getNamespace(n);if(r.namespaced&&(t._modulesNamespaceMap[a]=r),!i&&!o){var c=A(e,n.slice(0,-1)),s=n[n.length-1];t._withCommit(function(){d.set(c,s,r.state)})}var u=r.context=_(t,a,n);r.forEachMutation(function(e,n){var r=a+n;x(t,r,e,u)}),r.forEachAction(function(e,n){var r=e.root?n:a+n,o=e.handler||e;O(t,r,o,u)}),r.forEachGetter(function(e,n){var r=a+n;S(t,r,e,u)}),r.forEachChild(function(r,i){b(t,e,n.concat(i),r,o)})}function _(t,e,n){var r=""===e,o={dispatch:r?t.dispatch:function(n,r,o){var i=C(n,r,o),a=i.payload,c=i.options,s=i.type;return c&&c.root||(s=e+s),t.dispatch(s,a)},commit:r?t.commit:function(n,r,o){var i=C(n,r,o),a=i.payload,c=i.options,s=i.type;c&&c.root||(s=e+s),t.commit(s,a,c)}};return Object.defineProperties(o,{getters:{get:r?function(){return t.getters}:function(){return w(t,e)}},state:{get:function(){return A(t.state,n)}}}),o}function w(t,e){var n={},r=e.length;return Object.keys(t.getters).forEach(function(o){if(o.slice(0,r)===e){var i=o.slice(r);Object.defineProperty(n,i,{get:function(){return t.getters[o]},enumerable:!0})}}),n}function x(t,e,n,r){var o=t._mutations[e]||(t._mutations[e]=[]);o.push(function(e){n.call(t,r.state,e)})}function O(t,e,n,r){var o=t._actions[e]||(t._actions[e]=[]);o.push(function(e,o){var i=n.call(t,{dispatch:r.dispatch,commit:r.commit,getters:r.getters,state:r.state,rootGetters:t.getters,rootState:t.state},e,o);return s(i)||(i=Promise.resolve(i)),t._devtoolHook?i.catch(function(e){throw t._devtoolHook.emit("vuex:error",e),e}):i})}function S(t,e,n,r){t._wrappedGetters[e]||(t._wrappedGetters[e]=function(t){return n(r.state,r.getters,t.state,t.getters)})}function $(t){t._vm.$watch(function(){return this._data.$$state},function(){0},{deep:!0,sync:!0})}function A(t,e){return e.length?e.reduce(function(t,e){return t[e]},t):t}function C(t,e,n){return c(t)&&t.type&&(n=e,e=t,t=t.type),{type:t,payload:e,options:n}}function k(t){d&&t===d||(d=t,r(d))}v.state.get=function(){return this._vm._data.$$state},v.state.set=function(t){0},h.prototype.commit=function(t,e,n){var r=this,o=C(t,e,n),i=o.type,a=o.payload,c=(o.options,{type:i,payload:a}),s=this._mutations[i];s&&(this._withCommit(function(){s.forEach(function(t){t(a)})}),this._subscribers.forEach(function(t){return t(c,r.state)}))},h.prototype.dispatch=function(t,e){var n=this,r=C(t,e),o=r.type,i=r.payload,a={type:o,payload:i},c=this._actions[o];if(c){try{this._actionSubscribers.filter(function(t){return t.before}).forEach(function(t){return t.before(a,n.state)})}catch(u){0}var s=c.length>1?Promise.all(c.map(function(t){return t(i)})):c[0](i);return s.then(function(t){try{n._actionSubscribers.filter(function(t){return t.after}).forEach(function(t){return t.after(a,n.state)})}catch(u){0}return t})}},h.prototype.subscribe=function(t){return y(t,this._subscribers)},h.prototype.subscribeAction=function(t){var e="function"===typeof t?{before:t}:t;return y(e,this._actionSubscribers)},h.prototype.watch=function(t,e,n){var r=this;return this._watcherVM.$watch(function(){return t(r.state,r.getters)},e,n)},h.prototype.replaceState=function(t){var e=this;this._withCommit(function(){e._vm._data.$$state=t})},h.prototype.registerModule=function(t,e,n){void 0===n&&(n={}),"string"===typeof t&&(t=[t]),this._modules.register(t,e),b(this,this.state,t,this._modules.get(t),n.preserveState),m(this,this.state)},h.prototype.unregisterModule=function(t){var e=this;"string"===typeof t&&(t=[t]),this._modules.unregister(t),this._withCommit(function(){var n=A(e.state,t.slice(0,-1));d.delete(n,t[t.length-1])}),g(this)},h.prototype.hotUpdate=function(t){this._modules.update(t),g(this,!0)},h.prototype._withCommit=function(t){var e=this._committing;this._committing=!0,t(),this._committing=e},Object.defineProperties(h.prototype,v);var E=L(function(t,e){var n={};return D(e).forEach(function(e){var r=e.key,o=e.val;n[r]=function(){var e=this.$store.state,n=this.$store.getters;if(t){var r=I(this.$store,"mapState",t);if(!r)return;e=r.context.state,n=r.context.getters}return"function"===typeof o?o.call(this,e,n):e[o]},n[r].vuex=!0}),n}),M=L(function(t,e){var n={};return D(e).forEach(function(e){var r=e.key,o=e.val;n[r]=function(){var e=[],n=arguments.length;while(n--)e[n]=arguments[n];var r=this.$store.commit;if(t){var i=I(this.$store,"mapMutations",t);if(!i)return;r=i.context.commit}return"function"===typeof o?o.apply(this,[r].concat(e)):r.apply(this.$store,[o].concat(e))}}),n}),j=L(function(t,e){var n={};return D(e).forEach(function(e){var r=e.key,o=e.val;o=t+o,n[r]=function(){if(!t||I(this.$store,"mapGetters",t))return this.$store.getters[o]},n[r].vuex=!0}),n}),T=L(function(t,e){var n={};return D(e).forEach(function(e){var r=e.key,o=e.val;n[r]=function(){var e=[],n=arguments.length;while(n--)e[n]=arguments[n];var r=this.$store.dispatch;if(t){var i=I(this.$store,"mapActions",t);if(!i)return;r=i.context.dispatch}return"function"===typeof o?o.apply(this,[r].concat(e)):r.apply(this.$store,[o].concat(e))}}),n}),P=function(t){return{mapState:E.bind(null,t),mapGetters:j.bind(null,t),mapMutations:M.bind(null,t),mapActions:T.bind(null,t)}};function D(t){return Array.isArray(t)?t.map(function(t){return{key:t,val:t}}):Object.keys(t).map(function(e){return{key:e,val:t[e]}})}function L(t){return function(e,n){return"string"!==typeof e?(n=e,e=""):"/"!==e.charAt(e.length-1)&&(e+="/"),t(e,n)}}function I(t,e,n){var r=t._modulesNamespaceMap[n];return r}var N={Store:h,install:k,version:"3.1.0",mapState:E,mapMutations:M,mapGetters:j,mapActions:T,createNamespacedHelpers:P};e["a"]=N},"2fdb":function(t,e,n){"use strict";var r=n("5ca1"),o=n("d2c8"),i="includes";r(r.P+r.F*n("5147")(i),"String",{includes:function(t){return!!~o(this,t,i).indexOf(t,arguments.length>1?arguments[1]:void 0)}})},"302f":function(t,e,n){var r=n("0f89"),o=n("f2fe"),i=n("1b55")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||void 0==(n=r(a)[i])?e:o(n)}},"312a":function(t,e,n){var r=n("ca38"),o=n("b808"),i="__core-js_shared__",a=o[i]||(o[i]={});(t.exports=function(t,e){return a[t]||(a[t]=void 0!==e?e:{})})("versions",[]).push({version:r.version,mode:n("e6a1")?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},"31c2":function(t,e){e.f=Object.getOwnPropertySymbols},"32e9":function(t,e,n){var r=n("86cc"),o=n("4630");t.exports=n("9e1e")?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},3360:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=function(){for(var t=arguments.length,e=Array(t),n=0;n0&&e.reduce(function(e,n){return e&&n.apply(t,r)},!0)})}},3457:function(t,e,n){var r=n("6f8a"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},"36dc":function(t,e,n){var r=n("da3c"),o=n("df0a").set,i=r.MutationObserver||r.WebKitMutationObserver,a=r.process,c=r.Promise,s="process"==n("6e1f")(a);t.exports=function(){var t,e,n,u=function(){var r,o;s&&(r=a.domain)&&r.exit();while(t){o=t.fn,t=t.next;try{o()}catch(i){throw t?n():e=void 0,i}}e=void 0,r&&r.enter()};if(s)n=function(){a.nextTick(u)};else if(!i||r.navigator&&r.navigator.standalone)if(c&&c.resolve){var f=c.resolve(void 0);n=function(){f.then(u)}}else n=function(){o.call(r,u)};else{var l=!0,p=document.createTextNode("");new i(u).observe(p,{characterData:!0}),n=function(){p.data=l=!l}}return function(r){var o={fn:r,next:void 0};e&&(e.next=o),t||(t=o,n()),e=o}}},3846:function(t,e,n){n("9e1e")&&"g"!=/./g.flags&&n("86cc").f(RegExp.prototype,"flags",{configurable:!0,get:n("0bfb")})},"384f":function(t,e,n){var r=n("d13f"),o=n("11ff");r(r.G+r.F*(parseFloat!=o),{parseFloat:o})},"386b":function(t,e,n){var r=n("5ca1"),o=n("79e5"),i=n("be13"),a=/"/g,c=function(t,e,n,r){var o=String(i(t)),c="<"+e;return""!==n&&(c+=" "+n+'="'+String(r).replace(a,""")+'"'),c+">"+o+""};t.exports=function(t,e){var n={};n[t]=e(c),r(r.P+r.F*o(function(){var e=""[t]('"');return e!==e.toLowerCase()||e.split('"').length>3}),"String",n)}},"386d":function(t,e,n){"use strict";var r=n("cb7c"),o=n("83a1"),i=n("5f1b");n("214f")("search",1,function(t,e,n,a){return[function(n){var r=t(this),o=void 0==n?void 0:n[e];return void 0!==o?o.call(n,r):new RegExp(n)[e](String(r))},function(t){var e=a(n,t,this);if(e.done)return e.value;var c=r(t),s=String(this),u=c.lastIndex;o(u,0)||(c.lastIndex=0);var f=i(c,s);return o(c.lastIndex,u)||(c.lastIndex=u),null===f?-1:f.index}]})},"38fd":function(t,e,n){var r=n("69a8"),o=n("4bf8"),i=n("613b")("IE_PROTO"),a=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),r(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?a:null}},3904:function(t,e,n){var r=n("8ce0");t.exports=function(t,e,n){for(var o in e)n&&t[o]?t[o]=e[o]:r(t,o,e[o]);return t}},"3a54":function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=(0,r.regex)("alphaNum",/^[a-zA-Z0-9]*$/)},"3adc":function(t,e,n){var r=n("0f89"),o=n("a47f"),i=n("2ea1"),a=Object.defineProperty;e.f=n("7d95")?Object.defineProperty:function(t,e,n){if(r(t),e=i(e,!0),r(n),o)try{return a(t,e,n)}catch(c){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},"3b2b":function(t,e,n){var r=n("7726"),o=n("5dbc"),i=n("86cc").f,a=n("9093").f,c=n("aae3"),s=n("0bfb"),u=r.RegExp,f=u,l=u.prototype,p=/a/g,d=/a/g,h=new u(p)!==p;if(n("9e1e")&&(!h||n("79e5")(function(){return d[n("2b4c")("match")]=!1,u(p)!=p||u(d)==d||"/a/i"!=u(p,"i")}))){u=function(t,e){var n=this instanceof u,r=c(t),i=void 0===e;return!n&&r&&t.constructor===u&&i?t:o(h?new f(r&&!i?t.source:t,e):f((r=t instanceof u)?t.source:t,r&&i?s.call(t):e),n?this:l,u)};for(var v=function(t){t in u||i(u,t,{configurable:!0,get:function(){return f[t]},set:function(e){f[t]=e}})},y=a(f),g=0;y.length>g;)v(y[g++]);l.constructor=u,u.prototype=l,n("2aba")(r,"RegExp",u)}n("7a56")("RegExp")},"3bb1":function(t,e,n){var r=n("b67f")("unscopables"),o=Array.prototype;void 0==o[r]&&n("a0a8")(o,r,{}),t.exports=function(t){o[r][t]=!0}},"3be2":function(t,e,n){t.exports=n("71e1")},4052:function(t,e,n){var r=n("4a89"),o=Math.max,i=Math.min;t.exports=function(t,e){return t=r(t),t<0?o(t+e,0):i(t,e)}},"41a0":function(t,e,n){"use strict";var r=n("2aeb"),o=n("4630"),i=n("7f20"),a={};n("32e9")(a,n("2b4c")("iterator"),function(){return this}),t.exports=function(t,e,n){t.prototype=r(a,{next:o(1,n)}),i(t,e+" Iterator")}},"42bb":function(t,e,n){n("fd6f"),t.exports=n("a7d3").Object.entries},"436c":function(t,e,n){var r=n("1b55")("iterator"),o=!1;try{var i=[7][r]();i["return"]=function(){o=!0},Array.from(i,function(){throw 2})}catch(a){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i=[7],c=i[r]();c.next=function(){return{done:n=!0}},i[r]=function(){return c},t(i)}catch(a){}return n}},"43c8":function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},4588:function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},"45b8":function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=(0,r.regex)("numeric",/^[0-9]*$/)},"45e2":function(t,e,n){t.exports=!n("b629")(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},4630:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},"46bc":function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=function(t){return(0,r.withParams)({type:"maxValue",max:t},function(e){return!(0,r.req)(e)||(!/\s/.test(e)||e instanceof Date)&&+e<=+t})}},4842:function(t,e,n){var r=n("569f");r(r.S+r.F,"Object",{assign:n("a402")})},4917:function(t,e,n){"use strict";var r=n("cb7c"),o=n("9def"),i=n("0390"),a=n("5f1b");n("214f")("match",1,function(t,e,n,c){return[function(n){var r=t(this),o=void 0==n?void 0:n[e];return void 0!==o?o.call(n,r):new RegExp(n)[e](String(r))},function(t){var e=c(n,t,this);if(e.done)return e.value;var s=r(t),u=String(this);if(!s.global)return a(s,u);var f=s.unicode;s.lastIndex=0;var l,p=[],d=0;while(null!==(l=a(s,u))){var h=String(l[0]);p[d]=h,""===h&&(s.lastIndex=i(u,o(s.lastIndex),f)),d++}return 0===d?null:p}]})},4938:function(t,e,n){var r=n("6a9b"),o=n("626e").f;n("c165")("getOwnPropertyDescriptor",function(){return function(t,e){return o(r(t),e)}})},"49c1":function(t,e){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},"4a89":function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},"4b9e":function(t,e,n){var r=n("b808"),o=r.navigator;t.exports=o&&o.userAgent||""},"4bf8":function(t,e,n){var r=n("be13");t.exports=function(t){return Object(r(t))}},"4cf4":function(t,e,n){var r=n("0244");t.exports=function(t){return Object(r(t))}},5147:function(t,e,n){var r=n("2b4c")("match");t.exports=function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[r]=!1,!"/./"[t](e)}catch(o){}}return!0}},5176:function(t,e,n){t.exports=n("81ee")},"520a":function(t,e,n){"use strict";var r=n("0bfb"),o=RegExp.prototype.exec,i=String.prototype.replace,a=o,c="lastIndex",s=function(){var t=/a/,e=/b*/g;return o.call(t,"a"),o.call(e,"a"),0!==t[c]||0!==e[c]}(),u=void 0!==/()??/.exec("")[1],f=s||u;f&&(a=function(t){var e,n,a,f,l=this;return u&&(n=new RegExp("^"+l.source+"$(?!\\s)",r.call(l))),s&&(e=l[c]),a=o.call(l,t),s&&a&&(l[c]=l.global?a.index+a[0].length:e),u&&a&&a.length>1&&i.call(a[0],n,function(){for(f=1;f - * @author owenm + * vuex v3.1.3 + * (c) 2020 Evan You * @license MIT */ -/**! - * Sortable - * @author RubaXa - * @author owenm - * @license MIT - */ -(function(i){"use strict";r=i,o="function"===typeof r?r.call(e,n,e,t):r,void 0===o||(t.exports=o)})(function(){"use strict";if("undefined"===typeof window||!window.document)return function(){throw new Error("Sortable.js requires a window with a document")};var t,e,n,r,o,i,a,c,s,u,f,l,p,d,h,v,y,g,m,b,_,w,x,O,S,$,A=[],C=!1,k=!1,E=!1,M=[],j=!1,T=!1,P=[],D=/\s+/g,L="Sortable"+(new Date).getTime(),I=window,N=I.document,R=I.parseInt,F=I.setTimeout,H=I.jQuery||I.Zepto,z=I.Polymer,V={capture:!1,passive:!1},B=!!navigator.userAgent.match(/(?:Trident.*rv[ :]?11\.|msie|iemobile)/i),U=!!navigator.userAgent.match(/Edge/i),Y=!!navigator.userAgent.match(/firefox/i),q=!(!navigator.userAgent.match(/safari/i)||navigator.userAgent.match(/chrome/i)||navigator.userAgent.match(/android/i)),W=!!navigator.userAgent.match(/iP(ad|od|hone)/i),G=W,K=U||B?"cssFloat":"float",X="draggable"in N.createElement("div"),J=function(){if(B)return!1;var t=N.createElement("x");return t.style.cssText="pointer-events:auto","auto"===t.style.pointerEvents}(),Z=!1,Q=!1,tt=Math.abs,et=Math.min,nt=Math.max,rt=[],ot=function(t,e){var n=kt(t),r=R(n.width)-R(n.paddingLeft)-R(n.paddingRight)-R(n.borderLeftWidth)-R(n.borderRightWidth),o=Lt(t,0,e),i=Lt(t,1,e),a=o&&kt(o),c=i&&kt(i),s=a&&R(a.marginLeft)+R(a.marginRight)+Xt(o).width,u=c&&R(c.marginLeft)+R(c.marginRight)+Xt(i).width;if("flex"===n.display)return"column"===n.flexDirection||"column-reverse"===n.flexDirection?"vertical":"horizontal";if("grid"===n.display)return n.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(o&&"none"!==a.float){var f="left"===a.float?"left":"right";return!i||"both"!==c.clear&&c.clear!==f?"horizontal":"vertical"}return o&&("block"===a.display||"flex"===a.display||"table"===a.display||"grid"===a.display||s>=r&&"none"===n[K]||i&&"none"===n[K]&&s+u>r)?"vertical":"horizontal"},it=function(t,e){for(var n=0;n=r.left-o&&t<=r.right+o,a=e>=r.top-o&&e<=r.bottom+o;if(i&&a)return M[n]}},at=function(t,e,n,r,o){var i=Xt(n),a="vertical"===r?i.left:i.top,c="vertical"===r?i.right:i.bottom,s="vertical"===r?t:e;return a-1}}var n={},r=t.group;r&&"object"==typeof r||(r={name:r}),n.name=r.name,n.checkPull=e(r.pull,!0),n.checkPut=e(r.put),n.revertClone=r.revertClone,t.group=n},ht=function(e){t&&t.parentNode&&t.parentNode[L]&&t.parentNode[L]._computeIsAligned(e)},vt=function(t,e){var n=e;while(!n[L])n=n.parentNode;return t===n},yt=function(t,e,n){var r=t.parentNode;while(r&&!r[L])r=r.parentNode;r&&r[L][n](Yt(e,{artificialBubble:!0}))},gt=function(){!J&&n&&kt(n,"display","none")},mt=function(){!J&&n&&kt(n,"display","")};N.addEventListener("click",function(t){if(E)return t.preventDefault(),t.stopPropagation&&t.stopPropagation(),t.stopImmediatePropagation&&t.stopImmediatePropagation(),E=!1,!1},!0);var bt,_t=function(e){if(e=e.touches?e.touches[0]:e,t){var n=it(e.clientX,e.clientY);n&&n[L]._onDragOver({clientX:e.clientX,clientY:e.clientY,target:n,rootEl:n})}};function wt(t,e){if(!t||!t.nodeType||1!==t.nodeType)throw"Sortable: `el` must be HTMLElement, not "+{}.toString.call(t);this.el=t,this.options=e=Yt({},e),t[L]=this;var n={group:null,sort:!0,disabled:!1,store:null,handle:null,scroll:!0,scrollSensitivity:30,scrollSpeed:10,bubbleScroll:!0,draggable:/[uo]l/i.test(t.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return ot(t,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(t,e){t.setData("Text",e.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,touchStartThreshold:R(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:!1!==wt.supportPointer&&("PointerEvent"in window||window.navigator&&"msPointerEnabled"in window.navigator),emptyInsertThreshold:5};for(var r in n)!(r in e)&&(e[r]=n[r]);for(var o in dt(e),this)"_"===o.charAt(0)&&"function"===typeof this[o]&&(this[o]=this[o].bind(this));this.nativeDraggable=!e.forceFallback&&X,this.nativeDraggable&&(this.options.touchStartThreshold=1),e.supportPointer?$t(t,"pointerdown",this._onTapStart):($t(t,"mousedown",this._onTapStart),$t(t,"touchstart",this._onTapStart)),this.nativeDraggable&&($t(t,"dragover",this),$t(t,"dragenter",this)),M.push(this.el),e.store&&e.store.get&&this.sort(e.store.get(this)||[])}function xt(t,e,n,r){if(t){n=n||N;do{if(null!=e&&(">"===e[0]&&t.parentNode===n&&Vt(t,e.substring(1))||Vt(t,e))||r&&t===n)return t;if(t===n)break}while(t=Ot(t))}return null}function Ot(t){return t.host&&t!==N&&t.host.nodeType?t.host:t.parentNode}function St(t){t.dataTransfer&&(t.dataTransfer.dropEffect="move"),t.cancelable&&t.preventDefault()}function $t(t,e,n){t.addEventListener(e,n,V)}function At(t,e,n){t.removeEventListener(e,n,V)}function Ct(t,e,n){if(t&&e)if(t.classList)t.classList[n?"add":"remove"](e);else{var r=(" "+t.className+" ").replace(D," ").replace(" "+e+" "," ");t.className=(r+(n?" "+e:"")).replace(D," ")}}function kt(t,e,n){var r=t&&t.style;if(r){if(void 0===n)return N.defaultView&&N.defaultView.getComputedStyle?n=N.defaultView.getComputedStyle(t,""):t.currentStyle&&(n=t.currentStyle),void 0===e?n:n[e];e in r||-1!==e.indexOf("webkit")||(e="-webkit-"+e),r[e]=n+("string"===typeof n?"":"px")}}function Et(t){var e="";do{var n=kt(t,"transform");n&&"none"!==n&&(e=n+" "+e)}while(t=t.parentNode);return window.DOMMatrix?new DOMMatrix(e):window.WebKitCSSMatrix?new WebKitCSSMatrix(e):window.CSSMatrix?new CSSMatrix(e):void 0}function Mt(t,e,n){if(t){var r=t.getElementsByTagName(e),o=0,i=r.length;if(n)for(;os+u||i<=s&&o>a&&i>=c:o>a&&i>c||o<=a&&i>s+u}function Rt(e,n,r,o,i,a,c){var s=Xt(n),u="vertical"===r?e.clientY:e.clientX,f="vertical"===r?s.height:s.width,l="vertical"===r?s.top:s.left,p="vertical"===r?s.bottom:s.right,d=Xt(t),h=!1;if(!a)if(c&&Ol+f*i/2:up-O)return-1*w}else if(u>l+f*(1-o)/2&&up-f*i/2)?u>l+f/2?1:-1:0}function Ft(e){var n=zt(t),r=zt(e);return n=i:r<=i,!o)return n;if(n===ut())break;n=st(n,!1)}return!1}function Zt(t){var e=0,n=0,r=ut();if(t)do{var o=Et(t),i=o.a,a=o.d;e+=t.scrollLeft*i,n+=t.scrollTop*a}while(t!==r&&(t=t.parentNode));return[e,n]}return $t(N,"dragover",_t),$t(N,"mousemove",_t),$t(N,"touchmove",_t),wt.prototype={constructor:wt,_computeIsAligned:function(e){var r;if(n&&!J?(gt(),r=N.elementFromPoint(e.clientX,e.clientY),mt()):r=e.target,r=xt(r,this.options.draggable,this.el,!1),!Q&&t&&t.parentNode===this.el){for(var o=this.el.children,i=0;i=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){t&&Pt(t),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var t=this.el.ownerDocument;At(t,"mouseup",this._disableDelayedDrag),At(t,"touchend",this._disableDelayedDrag),At(t,"touchcancel",this._disableDelayedDrag),At(t,"mousemove",this._delayedDragTouchMoveHandler),At(t,"touchmove",this._delayedDragTouchMoveHandler),At(t,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(e,n){n=n||("touch"==e.pointerType?e:null),!this.nativeDraggable||n?this.options.supportPointer?$t(N,"pointermove",this._onTouchMove):$t(N,n?"touchmove":"mousemove",this._onTouchMove):($t(t,"dragend",this),$t(o,"dragstart",this._onDragStart));try{N.selection?Gt(function(){N.selection.empty()}):window.getSelection().removeAllRanges()}catch(r){}},_dragStarted:function(e,n){if(k=!1,o&&t){this.nativeDraggable&&($t(N,"dragover",this._handleAutoScroll),$t(N,"dragover",ht));var r=this.options;!e&&Ct(t,r.dragClass,!1),Ct(t,r.ghostClass,!0),kt(t,"transform",""),wt.active=this,e&&this._appendGhost(),jt(this,o,"start",t,o,o,f,void 0,n)}else this._nulling()},_emulateDragOver:function(e){if(m){if(this._lastX===m.clientX&&this._lastY===m.clientY&&!e)return;this._lastX=m.clientX,this._lastY=m.clientY,gt();var n=N.elementFromPoint(m.clientX,m.clientY),r=n;while(n&&n.shadowRoot)n=n.shadowRoot.elementFromPoint(m.clientX,m.clientY),r=n;if(r)do{var o;if(r[L])if(o=r[L]._onDragOver({clientX:m.clientX,clientY:m.clientY,target:n,rootEl:r}),o&&!this.options.dragoverBubble)break;n=r}while(r=r.parentNode);t.parentNode[L]._computeIsAligned(m),mt()}},_onTouchMove:function(t,e){if(g){var r=this.options,o=r.fallbackTolerance,i=r.fallbackOffset,a=t.touches?t.touches[0]:t,c=n&&Et(n),s=n&&c&&c.a,u=n&&c&&c.d,f=G&&S&&Zt(S),l=(a.clientX-g.clientX+i.x)/(s||1)+(f?f[0]-P[0]:0)/(s||1),p=(a.clientY-g.clientY+i.y)/(u||1)+(f?f[1]-P[1]:0)/(u||1),d=t.touches?"translate3d("+l+"px,"+p+"px,0)":"translate("+l+"px,"+p+"px)";if(!wt.active&&!k){if(o&&et(tt(a.clientX-this._lastX),tt(a.clientY-this._lastY))=0&&(jt(null,e,"add",t,e,o,f,l,a),jt(this,o,"remove",t,e,o,f,l,a),jt(null,e,"sort",t,e,o,f,l,a),jt(this,o,"sort",t,e,o,f,l,a)),d&&d.save()):t.nextSibling!==i&&(l=zt(t,s.draggable),l>=0&&(jt(this,o,"update",t,e,o,f,l,a),jt(this,o,"sort",t,e,o,f,l,a))),wt.active&&(null!=l&&-1!==l||(l=f),jt(this,o,"end",t,e,o,f,l,a),this.save()))),this._nulling()},_nulling:function(){o=t=e=n=i=r=a=c=s=A.length=h=v=y=g=m=b=l=f=_=w=$=d=p=wt.active=null,rt.forEach(function(t){t.checked=!0}),rt.length=0},handleEvent:function(e){switch(e.type){case"drop":case"dragend":this._onDrop(e);break;case"dragenter":case"dragover":t&&(this._onDragOver(e),St(e));break;case"selectstart":e.preventDefault();break}},toArray:function(){for(var t,e=[],n=this.el.children,r=0,o=n.length,i=this.options;rb;b++)if(y=e?m(a(h=t[b])[0],h[1]):m(t[b]),y===u||y===f)return y}else for(v=g.call(t);!(h=v.next()).done;)if(y=o(v,m,h.value,e),y===u||y===f)return y};e.BREAK=u,e.RETURN=f},"565d":function(t,e,n){var r=n("6a9b"),o=n("d876").f,i={}.toString,a="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],c=function(t){try{return o(t)}catch(e){return a.slice()}};t.exports.f=function(t){return a&&"[object Window]"==i.call(t)?c(t):o(r(t))}},5698:function(t,e,n){n("d256"),t.exports=n("a7d3").Object.getOwnPropertySymbols},"569f":function(t,e,n){var r=n("b808"),o=n("ca38"),i=n("a0a8"),a=n("1f51"),c=n("a9f2"),s="prototype",u=function(t,e,n){var f,l,p,d,h=t&u.F,v=t&u.G,y=t&u.S,g=t&u.P,m=t&u.B,b=v?r:y?r[e]||(r[e]={}):(r[e]||{})[s],_=v?o:o[e]||(o[e]={}),w=_[s]||(_[s]={});for(f in v&&(n=e),n)l=!h&&b&&void 0!==b[f],p=(l?b:n)[f],d=m&&l?c(p,r):g&&"function"==typeof p?c(Function.call,p):p,b&&a(b,f,p,t&u.U),_[f]!=p&&i(_,f,d),g&&w[f]!=p&&(w[f]=p)};r.core=o,u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,t.exports=u},"57f7":function(t,e,n){n("93c4"),n("6109"),t.exports=n("a7d3").Array.from},"58b9":function(t,e,n){var r=n("d43f"),o=n("0244");t.exports=function(t){return r(o(t))}},5927:function(t,e,n){n("93c4"),n("b42c"),t.exports=n("fda1").f("iterator")},"59ad":function(t,e,n){t.exports=n("0965")},"5a0c":function(t,e,n){!function(e,n){t.exports=n()}(0,function(){"use strict";var t="millisecond",e="second",n="minute",r="hour",o="day",i="week",a="month",c="quarter",s="year",u=/^(\d{4})-?(\d{1,2})-?(\d{0,2})[^0-9]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?.?(\d{1,3})?$/,f=/\[([^\]]+)]|Y{2,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,l=function(t,e,n){var r=String(t);return!r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},p={s:l,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),o=n%60;return(e<=0?"+":"-")+l(r,2,"0")+":"+l(o,2,"0")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),r=t.clone().add(n,a),o=e-r<0,i=t.clone().add(n+(o?-1:1),a);return Number(-(n+(e-r)/(o?r-i:i-r))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(u){return{M:a,y:s,w:i,d:o,h:r,m:n,s:e,ms:t,Q:c}[u]||String(u||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},d={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},h="en",v={};v[h]=d;var y=function(t){return t instanceof _},g=function(t,e,n){var r;if(!t)return null;if("string"==typeof t)v[t]&&(r=t),e&&(v[t]=e,r=t);else{var o=t.name;v[o]=t,r=o}return n||(h=r),r},m=function(t,e,n){if(y(t))return t.clone();var r=e?"string"==typeof e?{format:e,pl:n}:e:{};return r.date=t,new _(r)},b=p;b.l=g,b.i=y,b.w=function(t,e){return m(t,{locale:e.$L,utc:e.$u})};var _=function(){function l(t){this.$L=this.$L||g(t.locale,null,!0)||h,this.parse(t)}var p=l.prototype;return p.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(b.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(u);if(r)return n?new Date(Date.UTC(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)):new Date(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)}return new Date(e)}(t),this.init()},p.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},p.$utils=function(){return b},p.isValid=function(){return!("Invalid Date"===this.$d.toString())},p.isSame=function(t,e){var n=m(t);return this.startOf(e)<=n&&n<=this.endOf(e)},p.isAfter=function(t,e){return m(t)i)a(n[i++]);t._c=[],t._n=!1,e&&!t._h&&L(t)})}},L=function(t){g.call(s,function(){var e,n,r,o=t._v,i=I(t);if(i&&(e=_(function(){E?$.emit("unhandledRejection",o,t):(n=s.onunhandledrejection)?n({promise:t,reason:o}):(r=s.console)&&r.error&&r.error("Unhandled promise rejection",o)}),t._h=E||I(t)?2:1),t._a=void 0,i&&e.e)throw e.v})},I=function(t){return 1!==t._h&&0===(t._a||t._c).length},N=function(t){g.call(s,function(){var e;E?$.emit("rejectionHandled",t):(e=s.onrejectionhandled)&&e({promise:t,reason:t._v})})},R=function(t){var e=this;e._d||(e._d=!0,e=e._w||e,e._v=t,e._s=2,e._a||(e._a=e._c.slice()),D(e,!0))},F=function(t){var e,n=this;if(!n._d){n._d=!0,n=n._w||n;try{if(n===t)throw S("Promise can't be resolved itself");(e=P(t))?m(function(){var r={_w:n,_d:!1};try{e.call(t,u(F,r,1),u(R,r,1))}catch(o){R.call(r,o)}}):(n._v=t,n._s=1,D(n,!1))}catch(r){R.call({_w:n,_d:!1},r)}}};T||(k=function(t){h(this,k,O,"_h"),d(t),r.call(this);try{t(u(F,this,1),u(R,this,1))}catch(e){R.call(this,e)}},r=function(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1},r.prototype=n("3904")(k.prototype,{then:function(t,e){var n=j(y(this,k));return n.ok="function"!=typeof t||t,n.fail="function"==typeof e&&e,n.domain=E?$.domain:void 0,this._c.push(n),this._a&&this._a.push(n),this._s&&D(this,!1),n.promise},catch:function(t){return this.then(void 0,t)}}),i=function(){var t=new r;this.promise=t,this.resolve=u(F,t,1),this.reject=u(R,t,1)},b.f=j=function(t){return t===k||t===a?new i(t):o(t)}),l(l.G+l.W+l.F*!T,{Promise:k}),n("c0d8")(k,O),n("1be4")(O),a=n("a7d3")[O],l(l.S+l.F*!T,O,{reject:function(t){var e=j(this),n=e.reject;return n(t),e.promise}}),l(l.S+l.F*(c||!T),O,{resolve:function(t){return x(c&&this===a?k:this,t)}}),l(l.S+l.F*!(T&&n("436c")(function(t){k.all(t)["catch"](M)})),O,{all:function(t){var e=this,n=j(e),r=n.resolve,o=n.reject,i=_(function(){var n=[],i=0,a=1;v(t,!1,function(t){var c=i++,s=!1;n.push(void 0),a++,e.resolve(t).then(function(t){s||(s=!0,n[c]=t,--a||r(n))},o)}),--a||r(n)});return i.e&&o(i.v),n.promise},race:function(t){var e=this,n=j(e),r=n.reject,o=_(function(){v(t,!1,function(t){e.resolve(t).then(n.resolve,r)})});return o.e&&r(o.v),n.promise}})},"5ca1":function(t,e,n){var r=n("7726"),o=n("8378"),i=n("32e9"),a=n("2aba"),c=n("9b43"),s="prototype",u=function(t,e,n){var f,l,p,d,h=t&u.F,v=t&u.G,y=t&u.S,g=t&u.P,m=t&u.B,b=v?r:y?r[e]||(r[e]={}):(r[e]||{})[s],_=v?o:o[e]||(o[e]={}),w=_[s]||(_[s]={});for(f in v&&(n=e),n)l=!h&&b&&void 0!==b[f],p=(l?b:n)[f],d=m&&l?c(p,r):g&&"function"==typeof p?c(Function.call,p):p,b&&a(b,f,p,t&u.U),_[f]!=p&&i(_,f,d),g&&w[f]!=p&&(w[f]=p)};r.core=o,u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,t.exports=u},"5ce7":function(t,e,n){"use strict";var r=n("7108"),o=n("f845"),i=n("c0d8"),a={};n("8ce0")(a,n("1b55")("iterator"),function(){return this}),t.exports=function(t,e,n){t.prototype=r(a,{next:o(1,n)}),i(t,e+" Iterator")}},"5d58":function(t,e,n){t.exports=n("5927")},"5d73":function(t,e,n){t.exports=n("0a91")},"5d75":function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef"),o=/(^$|^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$)/;e.default=(0,r.regex)("email",o)},"5d8f":function(t,e,n){var r=n("7772")("keys"),o=n("7b00");t.exports=function(t){return r[t]||(r[t]=o(t))}},"5db3":function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=function(t){return(0,r.withParams)({type:"minLength",min:t},function(e){return!(0,r.req)(e)||(0,r.len)(e)>=t})}},"5dbc":function(t,e,n){var r=n("d3f4"),o=n("8b97").set;t.exports=function(t,e,n){var i,a=e.constructor;return a!==n&&"function"==typeof a&&(i=a.prototype)!==n.prototype&&r(i)&&o&&o(t,i),t}},"5df3":function(t,e,n){"use strict";var r=n("02f4")(!0);n("01f9")(String,"String",function(t){this._t=String(t),this._i=0},function(){var t,e=this._t,n=this._i;return n>=e.length?{value:void 0,done:!0}:(t=r(e,n),this._i+=t.length,{value:t,done:!1})})},"5f1b":function(t,e,n){"use strict";var r=n("23c6"),o=RegExp.prototype.exec;t.exports=function(t,e){var n=t.exec;if("function"===typeof n){var i=n.call(t,e);if("object"!==typeof i)throw new TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw new TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},6109:function(t,e,n){"use strict";var r=n("bc25"),o=n("d13f"),i=n("0185"),a=n("9c93"),c=n("c227"),s=n("a5ab"),u=n("b3ec"),f=n("f159");o(o.S+o.F*!n("436c")(function(t){Array.from(t)}),"Array",{from:function(t){var e,n,o,l,p=i(t),d="function"==typeof this?this:Array,h=arguments.length,v=h>1?arguments[1]:void 0,y=void 0!==v,g=0,m=f(p);if(y&&(v=r(v,h>2?arguments[2]:void 0,2)),void 0==m||d==Array&&c(m))for(e=s(p.length),n=new d(e);e>g;g++)u(n,g,y?v(p[g],g):p[g]);else for(l=m.call(p),n=new d;!(o=l.next()).done;g++)u(n,g,y?a(l,v,[o.value,g],!0):o.value);return n.length=g,n}})},"613b":function(t,e,n){var r=n("5537")("keys"),o=n("ca5a");t.exports=function(t){return r[t]||(r[t]=o(t))}},6235:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=(0,r.regex)("alpha",/^[a-zA-Z]*$/)},"626a":function(t,e,n){var r=n("2d95");t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},"626e":function(t,e,n){var r=n("d74e"),o=n("f845"),i=n("6a9b"),a=n("2ea1"),c=n("43c8"),s=n("a47f"),u=Object.getOwnPropertyDescriptor;e.f=n("7d95")?u:function(t,e){if(t=i(t),e=a(e,!0),s)try{return u(t,e)}catch(n){}if(c(t,e))return o(!r.f.call(t,e),t[e])}},6277:function(t,e,n){var r=n("7b00")("meta"),o=n("6f8a"),i=n("43c8"),a=n("3adc").f,c=0,s=Object.isExtensible||function(){return!0},u=!n("d782")(function(){return s(Object.preventExtensions({}))}),f=function(t){a(t,r,{value:{i:"O"+ ++c,w:{}}})},l=function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,r)){if(!s(t))return"F";if(!e)return"E";f(t)}return t[r].i},p=function(t,e){if(!i(t,r)){if(!s(t))return!0;if(!e)return!1;f(t)}return t[r].w},d=function(t){return u&&h.NEED&&s(t)&&!i(t,r)&&f(t),t},h=t.exports={KEY:r,NEED:!1,fastKey:l,getWeak:p,onFreeze:d}},"633a":function(t,e,n){var r=n("d13f"),o=n("e5fa"),i=n("d782"),a=n("702a"),c="["+a+"]",s="​…",u=RegExp("^"+c+c+"*"),f=RegExp(c+c+"*$"),l=function(t,e,n){var o={},c=i(function(){return!!a[t]()||s[t]()!=s}),u=o[t]=c?e(p):a[t];n&&(o[n]=u),r(r.P+r.F*c,"String",o)},p=l.trim=function(t,e){return t=String(o(t)),1&e&&(t=t.replace(u,"")),2&e&&(t=t.replace(f,"")),t};t.exports=l},6762:function(t,e,n){"use strict";var r=n("5ca1"),o=n("c366")(!0);r(r.P,"Array",{includes:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}}),n("9c6c")("includes")},"67bb":function(t,e,n){t.exports=n("b258")},6821:function(t,e,n){var r=n("626a"),o=n("be13");t.exports=function(t){return r(o(t))}},"696b":function(t,e){e.f=Object.getOwnPropertySymbols},"69a8":function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},"6a99":function(t,e,n){var r=n("d3f4");t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},"6a9b":function(t,e,n){var r=n("8bab"),o=n("e5fa");t.exports=function(t){return r(o(t))}},"6b54":function(t,e,n){"use strict";n("3846");var r=n("cb7c"),o=n("0bfb"),i=n("9e1e"),a="toString",c=/./[a],s=function(t){n("2aba")(RegExp.prototype,a,t,!0)};n("79e5")(function(){return"/a/b"!=c.call({source:"a",flags:"b"})})?s(function(){var t=r(this);return"/".concat(t.source,"/","flags"in t?t.flags:!i&&t instanceof RegExp?o.call(t):void 0)}):c.name!=a&&s(function(){return c.call(this)})},"6e1f":function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},"6f8a":function(t,e){t.exports=function(t){return"object"===typeof t?null!==t:"function"===typeof t}},"702a":function(t,e){t.exports="\t\n\v\f\r   ᠎              \u2028\u2029\ufeff"},7108:function(t,e,n){var r=n("0f89"),o=n("f568"),i=n("0029"),a=n("5d8f")("IE_PROTO"),c=function(){},s="prototype",u=function(){var t,e=n("12fd")("iframe"),r=i.length,o="<",a=">";e.style.display="none",n("103a").appendChild(e),e.src="javascript:",t=e.contentWindow.document,t.open(),t.write(o+"script"+a+"document.F=Object"+o+"/script"+a),t.close(),u=t.F;while(r--)delete u[s][i[r]];return u()};t.exports=Object.create||function(t,e){var n;return null!==t?(c[s]=r(t),n=new c,c[s]=null,n[a]=t):n=u(),void 0===e?n:o(n,e)}},"71e1":function(t,e,n){n("a243"),t.exports=n("a7d3").Number.isInteger},"71fa":function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},"73c3":function(t,e){t.exports=function(t){try{return{e:!1,v:t()}}catch(e){return{e:!0,v:e}}}},"75c9":function(t,e){t.exports=function(t){try{return{e:!1,v:t()}}catch(e){return{e:!0,v:e}}}},"75fc":function(t,e,n){"use strict";var r=n("a745"),o=n.n(r);function i(t){if(o()(t)){for(var e=0,n=new Array(t.length);e>>0||(a.test(n)?16:10))}:r},7726:function(t,e){var n=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},"772d":function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef"),o=/^(?:(?:https?|ftp):\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})))(?::\d{2,5})?(?:[\/?#]\S*)?$/i;e.default=(0,r.regex)("url",o)},"774e":function(t,e,n){t.exports=n("57f7")},7772:function(t,e,n){var r=n("a7d3"),o=n("da3c"),i="__core-js_shared__",a=o[i]||(o[i]={});(t.exports=function(t,e){return a[t]||(a[t]=void 0!==e?e:{})})("versions",[]).push({version:r.version,mode:n("b457")?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},"77f1":function(t,e,n){var r=n("4588"),o=Math.max,i=Math.min;t.exports=function(t,e){return t=r(t),t<0?o(t+e,0):i(t,e)}},"781f":function(t,e,n){var r=n("ab4c"),o=n("b808").document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},"78ef":function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.regex=e.ref=e.len=e.req=e.withParams=void 0;var r=n("8750"),o=i(r);function i(t){return t&&t.__esModule?t:{default:t}}e.withParams=o.default;var a=e.req=function(t){if(Array.isArray(t))return!!t.length;if(void 0===t||null===t||!1===t)return!1;if(t instanceof Date)return!isNaN(t.getTime());if("object"===typeof t){for(var e in t)return!0;return!1}return!!String(t).length};e.len=function(t){return Array.isArray(t)?t.length:"object"===typeof t?Object.keys(t).length:String(t).length},e.ref=function(t,e,n){return"function"===typeof t?t.call(e,n):n[t]},e.regex=function(t,e){return(0,o.default)({type:t},function(t){return!a(t)||e.test(t)})}},"795b":function(t,e,n){t.exports=n("dd04")},"79e5":function(t,e){t.exports=function(t){try{return!!t()}catch(e){return!0}}},"7a56":function(t,e,n){"use strict";var r=n("7726"),o=n("86cc"),i=n("9e1e"),a=n("2b4c")("species");t.exports=function(t){var e=r[t];i&&e&&!e[a]&&o.f(e,a,{configurable:!0,get:function(){return this}})}},"7b00":function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++n+r).toString(36))}},"7d8a":function(t,e,n){var r=n("6e1f"),o=n("1b55")("toStringTag"),i="Arguments"==r(function(){return arguments}()),a=function(t,e){try{return t[e]}catch(n){}};t.exports=function(t){var e,n,c;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=a(e=Object(t),o))?n:i?r(e):"Object"==(c=r(e))&&"function"==typeof e.callee?"Arguments":c}},"7d95":function(t,e,n){t.exports=!n("d782")(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},"7f20":function(t,e,n){var r=n("86cc").f,o=n("69a8"),i=n("2b4c")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"7f7f":function(t,e,n){var r=n("86cc").f,o=Function.prototype,i=/^\s*function ([^ (]*)/,a="name";a in o||n("9e1e")&&r(o,a,{configurable:!0,get:function(){try{return(""+this).match(i)[1]}catch(t){return""}}})},8115:function(t,e){t.exports=function(t,e,n,r){if(!(t instanceof e)||void 0!==r&&r in t)throw TypeError(n+": incorrect invocation!");return t}},"81ee":function(t,e,n){n("9a51"),t.exports=n("a7d3").Object.assign},8378:function(t,e){var n=t.exports={version:"2.6.0"};"number"==typeof __e&&(__e=n)},"83a1":function(t,e){t.exports=Object.is||function(t,e){return t===e?0!==t||1/t===1/e:t!=t&&e!=e}},"84f2":function(t,e){t.exports={}},"85f2":function(t,e,n){t.exports=n("ec5b")},"86cc":function(t,e,n){var r=n("cb7c"),o=n("c69a"),i=n("6a99"),a=Object.defineProperty;e.f=n("9e1e")?Object.defineProperty:function(t,e,n){if(r(t),e=i(e,!0),r(n),o)try{return a(t,e,n)}catch(c){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},8750:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("0234").withParams;e.default=r},"88b8":function(t,e,n){var r=n("a9f2"),o=n("1d27"),i=n("f26d"),a=n("27b2"),c=n("04cf"),s=n("b36f"),u={},f={};e=t.exports=function(t,e,n,l,p){var d,h,v,y,g=p?function(){return t}:s(t),m=r(n,l,e?2:1),b=0;if("function"!=typeof g)throw TypeError(t+" is not iterable!");if(i(g)){for(d=c(t.length);d>b;b++)if(y=e?m(a(h=t[b])[0],h[1]):m(t[b]),y===u||y===f)return y}else for(v=g.call(t);!(h=v.next()).done;)if(y=o(v,m,h.value,e),y===u||y===f)return y};e.BREAK=u,e.RETURN=f},"89ca":function(t,e,n){n("b42c"),n("93c4"),t.exports=n("d38f")},"8a12":function(t,e,n){var r=n("da3c"),o=r.navigator;t.exports=o&&o.userAgent||""},"8b97":function(t,e,n){var r=n("d3f4"),o=n("cb7c"),i=function(t,e){if(o(t),!r(e)&&null!==e)throw TypeError(e+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,e,r){try{r=n("9b43")(Function.call,n("11e9").f(Object.prototype,"__proto__").set,2),r(t,[]),e=!(t instanceof Array)}catch(o){e=!0}return function(t,n){return i(t,n),e?t.__proto__=n:r(t,n),t}}({},!1):void 0),check:i}},"8bab":function(t,e,n){var r=n("6e1f");t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},"8c4f":function(t,e,n){"use strict"; +function n(t){var e=Number(t.version.split(".")[0]);if(e>=2)t.mixin({beforeCreate:r});else{var n=t.prototype._init;t.prototype._init=function(t){void 0===t&&(t={}),t.init=t.init?[r].concat(t.init):r,n.call(this,t)}}function r(){var t=this.$options;t.store?this.$store="function"===typeof t.store?t.store():t.store:t.parent&&t.parent.$store&&(this.$store=t.parent.$store)}}var r="undefined"!==typeof window?window:"undefined"!==typeof t?t:{},o=r.__VUE_DEVTOOLS_GLOBAL_HOOK__;function i(t){o&&(t._devtoolHook=o,o.emit("vuex:init",t),o.on("vuex:travel-to-state",(function(e){t.replaceState(e)})),t.subscribe((function(t,e){o.emit("vuex:mutation",t,e)})))}function a(t,e){Object.keys(t).forEach((function(n){return e(t[n],n)}))}function c(t){return null!==t&&"object"===typeof t}function s(t){return t&&"function"===typeof t.then}function u(t,e){return function(){return t(e)}}var l=function(t,e){this.runtime=e,this._children=Object.create(null),this._rawModule=t;var n=t.state;this.state=("function"===typeof n?n():n)||{}},f={namespaced:{configurable:!0}};f.namespaced.get=function(){return!!this._rawModule.namespaced},l.prototype.addChild=function(t,e){this._children[t]=e},l.prototype.removeChild=function(t){delete this._children[t]},l.prototype.getChild=function(t){return this._children[t]},l.prototype.update=function(t){this._rawModule.namespaced=t.namespaced,t.actions&&(this._rawModule.actions=t.actions),t.mutations&&(this._rawModule.mutations=t.mutations),t.getters&&(this._rawModule.getters=t.getters)},l.prototype.forEachChild=function(t){a(this._children,t)},l.prototype.forEachGetter=function(t){this._rawModule.getters&&a(this._rawModule.getters,t)},l.prototype.forEachAction=function(t){this._rawModule.actions&&a(this._rawModule.actions,t)},l.prototype.forEachMutation=function(t){this._rawModule.mutations&&a(this._rawModule.mutations,t)},Object.defineProperties(l.prototype,f);var p=function(t){this.register([],t,!1)};function d(t,e,n){if(e.update(n),n.modules)for(var r in n.modules){if(!e.getChild(r))return void 0;d(t.concat(r),e.getChild(r),n.modules[r])}}p.prototype.get=function(t){return t.reduce((function(t,e){return t.getChild(e)}),this.root)},p.prototype.getNamespace=function(t){var e=this.root;return t.reduce((function(t,n){return e=e.getChild(n),t+(e.namespaced?n+"/":"")}),"")},p.prototype.update=function(t){d([],this.root,t)},p.prototype.register=function(t,e,n){var r=this;void 0===n&&(n=!0);var o=new l(e,n);if(0===t.length)this.root=o;else{var i=this.get(t.slice(0,-1));i.addChild(t[t.length-1],o)}e.modules&&a(e.modules,(function(e,o){r.register(t.concat(o),e,n)}))},p.prototype.unregister=function(t){var e=this.get(t.slice(0,-1)),n=t[t.length-1];e.getChild(n).runtime&&e.removeChild(n)};var h;var v=function(t){var e=this;void 0===t&&(t={}),!h&&"undefined"!==typeof window&&window.Vue&&k(window.Vue);var n=t.plugins;void 0===n&&(n=[]);var r=t.strict;void 0===r&&(r=!1),this._committing=!1,this._actions=Object.create(null),this._actionSubscribers=[],this._mutations=Object.create(null),this._wrappedGetters=Object.create(null),this._modules=new p(t),this._modulesNamespaceMap=Object.create(null),this._subscribers=[],this._watcherVM=new h,this._makeLocalGettersCache=Object.create(null);var o=this,a=this,c=a.dispatch,s=a.commit;this.dispatch=function(t,e){return c.call(o,t,e)},this.commit=function(t,e,n){return s.call(o,t,e,n)},this.strict=r;var u=this._modules.root.state;w(this,u,[],this._modules.root),b(this,u),n.forEach((function(t){return t(e)}));var l=void 0!==t.devtools?t.devtools:h.config.devtools;l&&i(this)},m={state:{configurable:!0}};function g(t,e){return e.indexOf(t)<0&&e.push(t),function(){var n=e.indexOf(t);n>-1&&e.splice(n,1)}}function y(t,e){t._actions=Object.create(null),t._mutations=Object.create(null),t._wrappedGetters=Object.create(null),t._modulesNamespaceMap=Object.create(null);var n=t.state;w(t,n,[],t._modules.root,!0),b(t,n,e)}function b(t,e,n){var r=t._vm;t.getters={},t._makeLocalGettersCache=Object.create(null);var o=t._wrappedGetters,i={};a(o,(function(e,n){i[n]=u(e,t),Object.defineProperty(t.getters,n,{get:function(){return t._vm[n]},enumerable:!0})}));var c=h.config.silent;h.config.silent=!0,t._vm=new h({data:{$$state:e},computed:i}),h.config.silent=c,t.strict&&A(t),r&&(n&&t._withCommit((function(){r._data.$$state=null})),h.nextTick((function(){return r.$destroy()})))}function w(t,e,n,r,o){var i=!n.length,a=t._modules.getNamespace(n);if(r.namespaced&&(t._modulesNamespaceMap[a],t._modulesNamespaceMap[a]=r),!i&&!o){var c=C(e,n.slice(0,-1)),s=n[n.length-1];t._withCommit((function(){h.set(c,s,r.state)}))}var u=r.context=_(t,a,n);r.forEachMutation((function(e,n){var r=a+n;S(t,r,e,u)})),r.forEachAction((function(e,n){var r=e.root?n:a+n,o=e.handler||e;O(t,r,o,u)})),r.forEachGetter((function(e,n){var r=a+n;E(t,r,e,u)})),r.forEachChild((function(r,i){w(t,e,n.concat(i),r,o)}))}function _(t,e,n){var r=""===e,o={dispatch:r?t.dispatch:function(n,r,o){var i=$(n,r,o),a=i.payload,c=i.options,s=i.type;return c&&c.root||(s=e+s),t.dispatch(s,a)},commit:r?t.commit:function(n,r,o){var i=$(n,r,o),a=i.payload,c=i.options,s=i.type;c&&c.root||(s=e+s),t.commit(s,a,c)}};return Object.defineProperties(o,{getters:{get:r?function(){return t.getters}:function(){return x(t,e)}},state:{get:function(){return C(t.state,n)}}}),o}function x(t,e){if(!t._makeLocalGettersCache[e]){var n={},r=e.length;Object.keys(t.getters).forEach((function(o){if(o.slice(0,r)===e){var i=o.slice(r);Object.defineProperty(n,i,{get:function(){return t.getters[o]},enumerable:!0})}})),t._makeLocalGettersCache[e]=n}return t._makeLocalGettersCache[e]}function S(t,e,n,r){var o=t._mutations[e]||(t._mutations[e]=[]);o.push((function(e){n.call(t,r.state,e)}))}function O(t,e,n,r){var o=t._actions[e]||(t._actions[e]=[]);o.push((function(e){var o=n.call(t,{dispatch:r.dispatch,commit:r.commit,getters:r.getters,state:r.state,rootGetters:t.getters,rootState:t.state},e);return s(o)||(o=Promise.resolve(o)),t._devtoolHook?o.catch((function(e){throw t._devtoolHook.emit("vuex:error",e),e})):o}))}function E(t,e,n,r){t._wrappedGetters[e]||(t._wrappedGetters[e]=function(t){return n(r.state,r.getters,t.state,t.getters)})}function A(t){t._vm.$watch((function(){return this._data.$$state}),(function(){0}),{deep:!0,sync:!0})}function C(t,e){return e.reduce((function(t,e){return t[e]}),t)}function $(t,e,n){return c(t)&&t.type&&(n=e,e=t,t=t.type),{type:t,payload:e,options:n}}function k(t){h&&t===h||(h=t,n(h))}m.state.get=function(){return this._vm._data.$$state},m.state.set=function(t){0},v.prototype.commit=function(t,e,n){var r=this,o=$(t,e,n),i=o.type,a=o.payload,c=(o.options,{type:i,payload:a}),s=this._mutations[i];s&&(this._withCommit((function(){s.forEach((function(t){t(a)}))})),this._subscribers.slice().forEach((function(t){return t(c,r.state)})))},v.prototype.dispatch=function(t,e){var n=this,r=$(t,e),o=r.type,i=r.payload,a={type:o,payload:i},c=this._actions[o];if(c){try{this._actionSubscribers.slice().filter((function(t){return t.before})).forEach((function(t){return t.before(a,n.state)}))}catch(u){0}var s=c.length>1?Promise.all(c.map((function(t){return t(i)}))):c[0](i);return s.then((function(t){try{n._actionSubscribers.filter((function(t){return t.after})).forEach((function(t){return t.after(a,n.state)}))}catch(u){0}return t}))}},v.prototype.subscribe=function(t){return g(t,this._subscribers)},v.prototype.subscribeAction=function(t){var e="function"===typeof t?{before:t}:t;return g(e,this._actionSubscribers)},v.prototype.watch=function(t,e,n){var r=this;return this._watcherVM.$watch((function(){return t(r.state,r.getters)}),e,n)},v.prototype.replaceState=function(t){var e=this;this._withCommit((function(){e._vm._data.$$state=t}))},v.prototype.registerModule=function(t,e,n){void 0===n&&(n={}),"string"===typeof t&&(t=[t]),this._modules.register(t,e),w(this,this.state,t,this._modules.get(t),n.preserveState),b(this,this.state)},v.prototype.unregisterModule=function(t){var e=this;"string"===typeof t&&(t=[t]),this._modules.unregister(t),this._withCommit((function(){var n=C(e.state,t.slice(0,-1));h.delete(n,t[t.length-1])})),y(this)},v.prototype.hotUpdate=function(t){this._modules.update(t),y(this,!0)},v.prototype._withCommit=function(t){var e=this._committing;this._committing=!0,t(),this._committing=e},Object.defineProperties(v.prototype,m);var M=N((function(t,e){var n={};return I(e).forEach((function(e){var r=e.key,o=e.val;n[r]=function(){var e=this.$store.state,n=this.$store.getters;if(t){var r=R(this.$store,"mapState",t);if(!r)return;e=r.context.state,n=r.context.getters}return"function"===typeof o?o.call(this,e,n):e[o]},n[r].vuex=!0})),n})),T=N((function(t,e){var n={};return I(e).forEach((function(e){var r=e.key,o=e.val;n[r]=function(){var e=[],n=arguments.length;while(n--)e[n]=arguments[n];var r=this.$store.commit;if(t){var i=R(this.$store,"mapMutations",t);if(!i)return;r=i.context.commit}return"function"===typeof o?o.apply(this,[r].concat(e)):r.apply(this.$store,[o].concat(e))}})),n})),j=N((function(t,e){var n={};return I(e).forEach((function(e){var r=e.key,o=e.val;o=t+o,n[r]=function(){if(!t||R(this.$store,"mapGetters",t))return this.$store.getters[o]},n[r].vuex=!0})),n})),P=N((function(t,e){var n={};return I(e).forEach((function(e){var r=e.key,o=e.val;n[r]=function(){var e=[],n=arguments.length;while(n--)e[n]=arguments[n];var r=this.$store.dispatch;if(t){var i=R(this.$store,"mapActions",t);if(!i)return;r=i.context.dispatch}return"function"===typeof o?o.apply(this,[r].concat(e)):r.apply(this.$store,[o].concat(e))}})),n})),D=function(t){return{mapState:M.bind(null,t),mapGetters:j.bind(null,t),mapMutations:T.bind(null,t),mapActions:P.bind(null,t)}};function I(t){return L(t)?Array.isArray(t)?t.map((function(t){return{key:t,val:t}})):Object.keys(t).map((function(e){return{key:e,val:t[e]}})):[]}function L(t){return Array.isArray(t)||c(t)}function N(t){return function(e,n){return"string"!==typeof e?(n=e,e=""):"/"!==e.charAt(e.length-1)&&(e+="/"),t(e,n)}}function R(t,e,n){var r=t._modulesNamespaceMap[n];return r}var F={Store:v,install:k,version:"3.1.3",mapState:M,mapMutations:T,mapGetters:j,mapActions:P,createNamespacedHelpers:D};e["a"]=F}).call(this,n("c8ba"))},"2fdb":function(t,e,n){"use strict";var r=n("5ca1"),o=n("d2c8"),i="includes";r(r.P+r.F*n("5147")(i),"String",{includes:function(t){return!!~o(this,t,i).indexOf(t,arguments.length>1?arguments[1]:void 0)}})},"310e":function(t,e,n){t.exports=function(t){var e={};function n(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},n.r=function(t){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"===typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)n.d(r,o,function(e){return t[e]}.bind(null,o));return r},n.n=function(t){var e=t&&t.__esModule?function(){return t["default"]}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s="fb15")}({"02f4":function(t,e,n){var r=n("4588"),o=n("be13");t.exports=function(t){return function(e,n){var i,a,c=String(o(e)),s=r(n),u=c.length;return s<0||s>=u?t?"":void 0:(i=c.charCodeAt(s),i<55296||i>56319||s+1===u||(a=c.charCodeAt(s+1))<56320||a>57343?t?c.charAt(s):i:t?c.slice(s,s+2):a-56320+(i-55296<<10)+65536)}}},"0390":function(t,e,n){"use strict";var r=n("02f4")(!0);t.exports=function(t,e,n){return e+(n?r(t,e).length:1)}},"07e3":function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},"0bfb":function(t,e,n){"use strict";var r=n("cb7c");t.exports=function(){var t=r(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},"0fc9":function(t,e,n){var r=n("3a38"),o=Math.max,i=Math.min;t.exports=function(t,e){return t=r(t),t<0?o(t+e,0):i(t,e)}},1654:function(t,e,n){"use strict";var r=n("71c1")(!0);n("30f1")(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,e=this._t,n=this._i;return n>=e.length?{value:void 0,done:!0}:(t=r(e,n),this._i+=t.length,{value:t,done:!1})}))},1691:function(t,e){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},"1af6":function(t,e,n){var r=n("63b6");r(r.S,"Array",{isArray:n("9003")})},"1bc3":function(t,e,n){var r=n("f772");t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},"1ec9":function(t,e,n){var r=n("f772"),o=n("e53d").document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},"20fd":function(t,e,n){"use strict";var r=n("d9f6"),o=n("aebd");t.exports=function(t,e,n){e in t?r.f(t,e,o(0,n)):t[e]=n}},"214f":function(t,e,n){"use strict";n("b0c5");var r=n("2aba"),o=n("32e9"),i=n("79e5"),a=n("be13"),c=n("2b4c"),s=n("520a"),u=c("species"),l=!i((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$")})),f=function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2===n.length&&"a"===n[0]&&"b"===n[1]}();t.exports=function(t,e,n){var p=c(t),d=!i((function(){var e={};return e[p]=function(){return 7},7!=""[t](e)})),h=d?!i((function(){var e=!1,n=/a/;return n.exec=function(){return e=!0,null},"split"===t&&(n.constructor={},n.constructor[u]=function(){return n}),n[p](""),!e})):void 0;if(!d||!h||"replace"===t&&!l||"split"===t&&!f){var v=/./[p],m=n(a,p,""[t],(function(t,e,n,r,o){return e.exec===s?d&&!o?{done:!0,value:v.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}})),g=m[0],y=m[1];r(String.prototype,t,g),o(RegExp.prototype,p,2==e?function(t,e){return y.call(t,this,e)}:function(t){return y.call(t,this)})}}},"230e":function(t,e,n){var r=n("d3f4"),o=n("7726").document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},"23c6":function(t,e,n){var r=n("2d95"),o=n("2b4c")("toStringTag"),i="Arguments"==r(function(){return arguments}()),a=function(t,e){try{return t[e]}catch(n){}};t.exports=function(t){var e,n,c;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=a(e=Object(t),o))?n:i?r(e):"Object"==(c=r(e))&&"function"==typeof e.callee?"Arguments":c}},"241e":function(t,e,n){var r=n("25eb");t.exports=function(t){return Object(r(t))}},"25eb":function(t,e){t.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},"294c":function(t,e){t.exports=function(t){try{return!!t()}catch(e){return!0}}},"2aba":function(t,e,n){var r=n("7726"),o=n("32e9"),i=n("69a8"),a=n("ca5a")("src"),c=n("fa5b"),s="toString",u=(""+c).split(s);n("8378").inspectSource=function(t){return c.call(t)},(t.exports=function(t,e,n,c){var s="function"==typeof n;s&&(i(n,"name")||o(n,"name",e)),t[e]!==n&&(s&&(i(n,a)||o(n,a,t[e]?""+t[e]:u.join(String(e)))),t===r?t[e]=n:c?t[e]?t[e]=n:o(t,e,n):(delete t[e],o(t,e,n)))})(Function.prototype,s,(function(){return"function"==typeof this&&this[a]||c.call(this)}))},"2b4c":function(t,e,n){var r=n("5537")("wks"),o=n("ca5a"),i=n("7726").Symbol,a="function"==typeof i,c=t.exports=function(t){return r[t]||(r[t]=a&&i[t]||(a?i:o)("Symbol."+t))};c.store=r},"2d00":function(t,e){t.exports=!1},"2d95":function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},"2fdb":function(t,e,n){"use strict";var r=n("5ca1"),o=n("d2c8"),i="includes";r(r.P+r.F*n("5147")(i),"String",{includes:function(t){return!!~o(this,t,i).indexOf(t,arguments.length>1?arguments[1]:void 0)}})},"30f1":function(t,e,n){"use strict";var r=n("b8e3"),o=n("63b6"),i=n("9138"),a=n("35e8"),c=n("481b"),s=n("8f60"),u=n("45f2"),l=n("53e2"),f=n("5168")("iterator"),p=!([].keys&&"next"in[].keys()),d="@@iterator",h="keys",v="values",m=function(){return this};t.exports=function(t,e,n,g,y,b,w){s(n,e,g);var _,x,S,O=function(t){if(!p&&t in $)return $[t];switch(t){case h:return function(){return new n(this,t)};case v:return function(){return new n(this,t)}}return function(){return new n(this,t)}},E=e+" Iterator",A=y==v,C=!1,$=t.prototype,k=$[f]||$[d]||y&&$[y],M=k||O(y),T=y?A?O("entries"):M:void 0,j="Array"==e&&$.entries||k;if(j&&(S=l(j.call(new t)),S!==Object.prototype&&S.next&&(u(S,E,!0),r||"function"==typeof S[f]||a(S,f,m))),A&&k&&k.name!==v&&(C=!0,M=function(){return k.call(this)}),r&&!w||!p&&!C&&$[f]||a($,f,M),c[e]=M,c[E]=m,y)if(_={values:A?M:O(v),keys:b?M:O(h),entries:T},w)for(x in _)x in $||i($,x,_[x]);else o(o.P+o.F*(p||C),e,_);return _}},"32a6":function(t,e,n){var r=n("241e"),o=n("c3a1");n("ce7e")("keys",(function(){return function(t){return o(r(t))}}))},"32e9":function(t,e,n){var r=n("86cc"),o=n("4630");t.exports=n("9e1e")?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},"32fc":function(t,e,n){var r=n("e53d").document;t.exports=r&&r.documentElement},"335c":function(t,e,n){var r=n("6b4c");t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},"355d":function(t,e){e.f={}.propertyIsEnumerable},"35e8":function(t,e,n){var r=n("d9f6"),o=n("aebd");t.exports=n("8e60")?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},"36c3":function(t,e,n){var r=n("335c"),o=n("25eb");t.exports=function(t){return r(o(t))}},3702:function(t,e,n){var r=n("481b"),o=n("5168")("iterator"),i=Array.prototype;t.exports=function(t){return void 0!==t&&(r.Array===t||i[o]===t)}},"3a38":function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},"40c3":function(t,e,n){var r=n("6b4c"),o=n("5168")("toStringTag"),i="Arguments"==r(function(){return arguments}()),a=function(t,e){try{return t[e]}catch(n){}};t.exports=function(t){var e,n,c;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=a(e=Object(t),o))?n:i?r(e):"Object"==(c=r(e))&&"function"==typeof e.callee?"Arguments":c}},4588:function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},"45f2":function(t,e,n){var r=n("d9f6").f,o=n("07e3"),i=n("5168")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},4630:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},"469f":function(t,e,n){n("6c1c"),n("1654"),t.exports=n("7d7b")},"481b":function(t,e){t.exports={}},"4aa6":function(t,e,n){t.exports=n("dc62")},"4bf8":function(t,e,n){var r=n("be13");t.exports=function(t){return Object(r(t))}},"4ee1":function(t,e,n){var r=n("5168")("iterator"),o=!1;try{var i=[7][r]();i["return"]=function(){o=!0},Array.from(i,(function(){throw 2}))}catch(a){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i=[7],c=i[r]();c.next=function(){return{done:n=!0}},i[r]=function(){return c},t(i)}catch(a){}return n}},"50ed":function(t,e){t.exports=function(t,e){return{value:e,done:!!t}}},5147:function(t,e,n){var r=n("2b4c")("match");t.exports=function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[r]=!1,!"/./"[t](e)}catch(o){}}return!0}},5168:function(t,e,n){var r=n("dbdb")("wks"),o=n("62a0"),i=n("e53d").Symbol,a="function"==typeof i,c=t.exports=function(t){return r[t]||(r[t]=a&&i[t]||(a?i:o)("Symbol."+t))};c.store=r},5176:function(t,e,n){t.exports=n("51b6")},"51b6":function(t,e,n){n("a3c3"),t.exports=n("584a").Object.assign},"520a":function(t,e,n){"use strict";var r=n("0bfb"),o=RegExp.prototype.exec,i=String.prototype.replace,a=o,c="lastIndex",s=function(){var t=/a/,e=/b*/g;return o.call(t,"a"),o.call(e,"a"),0!==t[c]||0!==e[c]}(),u=void 0!==/()??/.exec("")[1],l=s||u;l&&(a=function(t){var e,n,a,l,f=this;return u&&(n=new RegExp("^"+f.source+"$(?!\\s)",r.call(f))),s&&(e=f[c]),a=o.call(f,t),s&&a&&(f[c]=f.global?a.index+a[0].length:e),u&&a&&a.length>1&&i.call(a[0],n,(function(){for(l=1;l1?arguments[1]:void 0,m=void 0!==v,g=0,y=l(p);if(m&&(v=r(v,h>2?arguments[2]:void 0,2)),void 0==y||d==Array&&c(y))for(e=s(p.length),n=new d(e);e>g;g++)u(n,g,m?v(p[g],g):p[g]);else for(f=y.call(p),n=new d;!(o=f.next()).done;g++)u(n,g,m?a(f,v,[o.value,g],!0):o.value);return n.length=g,n}})},"54a1":function(t,e,n){n("6c1c"),n("1654"),t.exports=n("95d5")},5537:function(t,e,n){var r=n("8378"),o=n("7726"),i="__core-js_shared__",a=o[i]||(o[i]={});(t.exports=function(t,e){return a[t]||(a[t]=void 0!==e?e:{})})("versions",[]).push({version:r.version,mode:n("2d00")?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},5559:function(t,e,n){var r=n("dbdb")("keys"),o=n("62a0");t.exports=function(t){return r[t]||(r[t]=o(t))}},"584a":function(t,e){var n=t.exports={version:"2.6.5"};"number"==typeof __e&&(__e=n)},"5b4e":function(t,e,n){var r=n("36c3"),o=n("b447"),i=n("0fc9");t.exports=function(t){return function(e,n,a){var c,s=r(e),u=o(s.length),l=i(a,u);if(t&&n!=n){while(u>l)if(c=s[l++],c!=c)return!0}else for(;u>l;l++)if((t||l in s)&&s[l]===n)return t||l||0;return!t&&-1}}},"5ca1":function(t,e,n){var r=n("7726"),o=n("8378"),i=n("32e9"),a=n("2aba"),c=n("9b43"),s="prototype",u=function(t,e,n){var l,f,p,d,h=t&u.F,v=t&u.G,m=t&u.S,g=t&u.P,y=t&u.B,b=v?r:m?r[e]||(r[e]={}):(r[e]||{})[s],w=v?o:o[e]||(o[e]={}),_=w[s]||(w[s]={});for(l in v&&(n=e),n)f=!h&&b&&void 0!==b[l],p=(f?b:n)[l],d=y&&f?c(p,r):g&&"function"==typeof p?c(Function.call,p):p,b&&a(b,l,p,t&u.U),w[l]!=p&&i(w,l,d),g&&_[l]!=p&&(_[l]=p)};r.core=o,u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,t.exports=u},"5d73":function(t,e,n){t.exports=n("469f")},"5f1b":function(t,e,n){"use strict";var r=n("23c6"),o=RegExp.prototype.exec;t.exports=function(t,e){var n=t.exec;if("function"===typeof n){var i=n.call(t,e);if("object"!==typeof i)throw new TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw new TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},"626a":function(t,e,n){var r=n("2d95");t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},"62a0":function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++n+r).toString(36))}},"63b6":function(t,e,n){var r=n("e53d"),o=n("584a"),i=n("d864"),a=n("35e8"),c=n("07e3"),s="prototype",u=function(t,e,n){var l,f,p,d=t&u.F,h=t&u.G,v=t&u.S,m=t&u.P,g=t&u.B,y=t&u.W,b=h?o:o[e]||(o[e]={}),w=b[s],_=h?r:v?r[e]:(r[e]||{})[s];for(l in h&&(n=e),n)f=!d&&_&&void 0!==_[l],f&&c(b,l)||(p=f?_[l]:n[l],b[l]=h&&"function"!=typeof _[l]?n[l]:g&&f?i(p,r):y&&_[l]==p?function(t){var e=function(e,n,r){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(e);case 2:return new t(e,n)}return new t(e,n,r)}return t.apply(this,arguments)};return e[s]=t[s],e}(p):m&&"function"==typeof p?i(Function.call,p):p,m&&((b.virtual||(b.virtual={}))[l]=p,t&u.R&&w&&!w[l]&&a(w,l,p)))};u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,t.exports=u},6762:function(t,e,n){"use strict";var r=n("5ca1"),o=n("c366")(!0);r(r.P,"Array",{includes:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}}),n("9c6c")("includes")},6821:function(t,e,n){var r=n("626a"),o=n("be13");t.exports=function(t){return r(o(t))}},"69a8":function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},"6a99":function(t,e,n){var r=n("d3f4");t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},"6b4c":function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},"6c1c":function(t,e,n){n("c367");for(var r=n("e53d"),o=n("35e8"),i=n("481b"),a=n("5168")("toStringTag"),c="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),s=0;s=u?t?"":void 0:(i=c.charCodeAt(s),i<55296||i>56319||s+1===u||(a=c.charCodeAt(s+1))<56320||a>57343?t?c.charAt(s):i:t?c.slice(s,s+2):a-56320+(i-55296<<10)+65536)}}},7726:function(t,e){var n=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},"774e":function(t,e,n){t.exports=n("d2d5")},"77f1":function(t,e,n){var r=n("4588"),o=Math.max,i=Math.min;t.exports=function(t,e){return t=r(t),t<0?o(t+e,0):i(t,e)}},"794b":function(t,e,n){t.exports=!n("8e60")&&!n("294c")((function(){return 7!=Object.defineProperty(n("1ec9")("div"),"a",{get:function(){return 7}}).a}))},"79aa":function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},"79e5":function(t,e){t.exports=function(t){try{return!!t()}catch(e){return!0}}},"7cd6":function(t,e,n){var r=n("40c3"),o=n("5168")("iterator"),i=n("481b");t.exports=n("584a").getIteratorMethod=function(t){if(void 0!=t)return t[o]||t["@@iterator"]||i[r(t)]}},"7d7b":function(t,e,n){var r=n("e4ae"),o=n("7cd6");t.exports=n("584a").getIterator=function(t){var e=o(t);if("function"!=typeof e)throw TypeError(t+" is not iterable!");return r(e.call(t))}},"7e90":function(t,e,n){var r=n("d9f6"),o=n("e4ae"),i=n("c3a1");t.exports=n("8e60")?Object.defineProperties:function(t,e){o(t);var n,a=i(e),c=a.length,s=0;while(c>s)r.f(t,n=a[s++],e[n]);return t}},8378:function(t,e){var n=t.exports={version:"2.6.5"};"number"==typeof __e&&(__e=n)},8436:function(t,e){t.exports=function(){}},"86cc":function(t,e,n){var r=n("cb7c"),o=n("c69a"),i=n("6a99"),a=Object.defineProperty;e.f=n("9e1e")?Object.defineProperty:function(t,e,n){if(r(t),e=i(e,!0),r(n),o)try{return a(t,e,n)}catch(c){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},"8aae":function(t,e,n){n("32a6"),t.exports=n("584a").Object.keys},"8e60":function(t,e,n){t.exports=!n("294c")((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},"8f60":function(t,e,n){"use strict";var r=n("a159"),o=n("aebd"),i=n("45f2"),a={};n("35e8")(a,n("5168")("iterator"),(function(){return this})),t.exports=function(t,e,n){t.prototype=r(a,{next:o(1,n)}),i(t,e+" Iterator")}},9003:function(t,e,n){var r=n("6b4c");t.exports=Array.isArray||function(t){return"Array"==r(t)}},9138:function(t,e,n){t.exports=n("35e8")},9306:function(t,e,n){"use strict";var r=n("c3a1"),o=n("9aa9"),i=n("355d"),a=n("241e"),c=n("335c"),s=Object.assign;t.exports=!s||n("294c")((function(){var t={},e={},n=Symbol(),r="abcdefghijklmnopqrst";return t[n]=7,r.split("").forEach((function(t){e[t]=t})),7!=s({},t)[n]||Object.keys(s({},e)).join("")!=r}))?function(t,e){var n=a(t),s=arguments.length,u=1,l=o.f,f=i.f;while(s>u){var p,d=c(arguments[u++]),h=l?r(d).concat(l(d)):r(d),v=h.length,m=0;while(v>m)f.call(d,p=h[m++])&&(n[p]=d[p])}return n}:s},9427:function(t,e,n){var r=n("63b6");r(r.S,"Object",{create:n("a159")})},"95d5":function(t,e,n){var r=n("40c3"),o=n("5168")("iterator"),i=n("481b");t.exports=n("584a").isIterable=function(t){var e=Object(t);return void 0!==e[o]||"@@iterator"in e||i.hasOwnProperty(r(e))}},"9aa9":function(t,e){e.f=Object.getOwnPropertySymbols},"9b43":function(t,e,n){var r=n("d8e8");t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}}},"9c6c":function(t,e,n){var r=n("2b4c")("unscopables"),o=Array.prototype;void 0==o[r]&&n("32e9")(o,r,{}),t.exports=function(t){o[r][t]=!0}},"9def":function(t,e,n){var r=n("4588"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},"9e1e":function(t,e,n){t.exports=!n("79e5")((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},a159:function(t,e,n){var r=n("e4ae"),o=n("7e90"),i=n("1691"),a=n("5559")("IE_PROTO"),c=function(){},s="prototype",u=function(){var t,e=n("1ec9")("iframe"),r=i.length,o="<",a=">";e.style.display="none",n("32fc").appendChild(e),e.src="javascript:",t=e.contentWindow.document,t.open(),t.write(o+"script"+a+"document.F=Object"+o+"/script"+a),t.close(),u=t.F;while(r--)delete u[s][i[r]];return u()};t.exports=Object.create||function(t,e){var n;return null!==t?(c[s]=r(t),n=new c,c[s]=null,n[a]=t):n=u(),void 0===e?n:o(n,e)}},a352:function(t,e){t.exports=n("aa47")},a3c3:function(t,e,n){var r=n("63b6");r(r.S+r.F,"Object",{assign:n("9306")})},a481:function(t,e,n){"use strict";var r=n("cb7c"),o=n("4bf8"),i=n("9def"),a=n("4588"),c=n("0390"),s=n("5f1b"),u=Math.max,l=Math.min,f=Math.floor,p=/\$([$&`']|\d\d?|<[^>]*>)/g,d=/\$([$&`']|\d\d?)/g,h=function(t){return void 0===t?t:String(t)};n("214f")("replace",2,(function(t,e,n,v){return[function(r,o){var i=t(this),a=void 0==r?void 0:r[e];return void 0!==a?a.call(r,i,o):n.call(String(i),r,o)},function(t,e){var o=v(n,t,this,e);if(o.done)return o.value;var f=r(t),p=String(this),d="function"===typeof e;d||(e=String(e));var g=f.global;if(g){var y=f.unicode;f.lastIndex=0}var b=[];while(1){var w=s(f,p);if(null===w)break;if(b.push(w),!g)break;var _=String(w[0]);""===_&&(f.lastIndex=c(p,i(f.lastIndex),y))}for(var x="",S=0,O=0;O=S&&(x+=p.slice(S,A)+T,S=A+E.length)}return x+p.slice(S)}];function m(t,e,r,i,a,c){var s=r+t.length,u=i.length,l=d;return void 0!==a&&(a=o(a),l=p),n.call(c,l,(function(n,o){var c;switch(o.charAt(0)){case"$":return"$";case"&":return t;case"`":return e.slice(0,r);case"'":return e.slice(s);case"<":c=a[o.slice(1,-1)];break;default:var l=+o;if(0===l)return n;if(l>u){var p=f(l/10);return 0===p?n:p<=u?void 0===i[p-1]?o.charAt(1):i[p-1]+o.charAt(1):n}c=i[l-1]}return void 0===c?"":c}))}}))},a4bb:function(t,e,n){t.exports=n("8aae")},a745:function(t,e,n){t.exports=n("f410")},aae3:function(t,e,n){var r=n("d3f4"),o=n("2d95"),i=n("2b4c")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},aebd:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},b0c5:function(t,e,n){"use strict";var r=n("520a");n("5ca1")({target:"RegExp",proto:!0,forced:r!==/./.exec},{exec:r})},b0dc:function(t,e,n){var r=n("e4ae");t.exports=function(t,e,n,o){try{return o?e(r(n)[0],n[1]):e(n)}catch(a){var i=t["return"];throw void 0!==i&&r(i.call(t)),a}}},b447:function(t,e,n){var r=n("3a38"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},b8e3:function(t,e){t.exports=!0},be13:function(t,e){t.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},c366:function(t,e,n){var r=n("6821"),o=n("9def"),i=n("77f1");t.exports=function(t){return function(e,n,a){var c,s=r(e),u=o(s.length),l=i(a,u);if(t&&n!=n){while(u>l)if(c=s[l++],c!=c)return!0}else for(;u>l;l++)if((t||l in s)&&s[l]===n)return t||l||0;return!t&&-1}}},c367:function(t,e,n){"use strict";var r=n("8436"),o=n("50ed"),i=n("481b"),a=n("36c3");t.exports=n("30f1")(Array,"Array",(function(t,e){this._t=a(t),this._i=0,this._k=e}),(function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,o(1)):o(0,"keys"==e?n:"values"==e?t[n]:[n,t[n]])}),"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},c3a1:function(t,e,n){var r=n("e6f3"),o=n("1691");t.exports=Object.keys||function(t){return r(t,o)}},c649:function(t,e,n){"use strict";(function(t){n.d(e,"c",(function(){return f})),n.d(e,"a",(function(){return u})),n.d(e,"b",(function(){return a})),n.d(e,"d",(function(){return l}));n("a481");var r=n("4aa6"),o=n.n(r);function i(){return"undefined"!==typeof window?window.console:t.console}var a=i();function c(t){var e=o()(null);return function(n){var r=e[n];return r||(e[n]=t(n))}}var s=/-(\w)/g,u=c((function(t){return t.replace(s,(function(t,e){return e?e.toUpperCase():""}))}));function l(t){null!==t.parentElement&&t.parentElement.removeChild(t)}function f(t,e,n){var r=0===n?t.children[0]:t.children[n-1].nextSibling;t.insertBefore(e,r)}}).call(this,n("c8ba"))},c69a:function(t,e,n){t.exports=!n("9e1e")&&!n("79e5")((function(){return 7!=Object.defineProperty(n("230e")("div"),"a",{get:function(){return 7}}).a}))},c8ba:function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(r){"object"===typeof window&&(n=window)}t.exports=n},c8bb:function(t,e,n){t.exports=n("54a1")},ca5a:function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++n+r).toString(36))}},cb7c:function(t,e,n){var r=n("d3f4");t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},ce7e:function(t,e,n){var r=n("63b6"),o=n("584a"),i=n("294c");t.exports=function(t,e){var n=(o.Object||{})[t]||Object[t],a={};a[t]=e(n),r(r.S+r.F*i((function(){n(1)})),"Object",a)}},d2c8:function(t,e,n){var r=n("aae3"),o=n("be13");t.exports=function(t,e,n){if(r(e))throw TypeError("String#"+n+" doesn't accept regex!");return String(o(t))}},d2d5:function(t,e,n){n("1654"),n("549b"),t.exports=n("584a").Array.from},d3f4:function(t,e){t.exports=function(t){return"object"===typeof t?null!==t:"function"===typeof t}},d864:function(t,e,n){var r=n("79aa");t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}}},d8e8:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},d9f6:function(t,e,n){var r=n("e4ae"),o=n("794b"),i=n("1bc3"),a=Object.defineProperty;e.f=n("8e60")?Object.defineProperty:function(t,e,n){if(r(t),e=i(e,!0),r(n),o)try{return a(t,e,n)}catch(c){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},dbdb:function(t,e,n){var r=n("584a"),o=n("e53d"),i="__core-js_shared__",a=o[i]||(o[i]={});(t.exports=function(t,e){return a[t]||(a[t]=void 0!==e?e:{})})("versions",[]).push({version:r.version,mode:n("b8e3")?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},dc62:function(t,e,n){n("9427");var r=n("584a").Object;t.exports=function(t,e){return r.create(t,e)}},e4ae:function(t,e,n){var r=n("f772");t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},e53d:function(t,e){var n=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},e6f3:function(t,e,n){var r=n("07e3"),o=n("36c3"),i=n("5b4e")(!1),a=n("5559")("IE_PROTO");t.exports=function(t,e){var n,c=o(t),s=0,u=[];for(n in c)n!=a&&r(c,n)&&u.push(n);while(e.length>s)r(c,n=e[s++])&&(~i(u,n)||u.push(n));return u}},f410:function(t,e,n){n("1af6"),t.exports=n("584a").Array.isArray},f559:function(t,e,n){"use strict";var r=n("5ca1"),o=n("9def"),i=n("d2c8"),a="startsWith",c=""[a];r(r.P+r.F*n("5147")(a),"String",{startsWith:function(t){var e=i(this,t,a),n=o(Math.min(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return c?c.call(e,r,n):e.slice(n,n+r.length)===r}})},f772:function(t,e){t.exports=function(t){return"object"===typeof t?null!==t:"function"===typeof t}},fa5b:function(t,e,n){t.exports=n("5537")("native-function-to-string",Function.toString)},fb15:function(t,e,n){"use strict";var r;(n.r(e),"undefined"!==typeof window)&&((r=window.document.currentScript)&&(r=r.src.match(/(.+\/)[^/]+\.js(\?.*)?$/))&&(n.p=r[1]));var o=n("5176"),i=n.n(o),a=(n("f559"),n("a4bb")),c=n.n(a),s=n("a745"),u=n.n(s);function l(t){if(u()(t))return t}var f=n("5d73"),p=n.n(f);function d(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var a,c=p()(t);!(r=(a=c.next()).done);r=!0)if(n.push(a.value),e&&n.length===e)break}catch(s){o=!0,i=s}finally{try{r||null==c["return"]||c["return"]()}finally{if(o)throw i}}return n}function h(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function v(t,e){return l(t)||d(t,e)||h()}n("6762"),n("2fdb");function m(t){if(u()(t)){for(var e=0,n=new Array(t.length);e=i?o.length:o.indexOf(t)}));return n?a.filter((function(t){return-1!==t})):a}function M(t,e){var n=this;this.$nextTick((function(){return n.$emit(t.toLowerCase(),e)}))}function T(t){var e=this;return function(n){null!==e.realList&&e["onDrag"+t](n),M.call(e,t,n)}}function j(t){return["transition-group","TransitionGroup"].includes(t)}function P(t){if(!t||1!==t.length)return!1;var e=v(t,1),n=e[0].componentOptions;return!!n&&j(n.tag)}function D(t,e,n){return t[n]||(e[n]?e[n]():void 0)}function I(t,e,n){var r=0,o=0,i=D(e,n,"header");i&&(r=i.length,t=t?[].concat(S(i),S(t)):S(i));var a=D(e,n,"footer");return a&&(o=a.length,t=t?[].concat(S(t),S(a)):S(a)),{children:t,headerOffset:r,footerOffset:o}}function L(t,e){var n=null,r=function(t,e){n=C(n,t,e)},o=c()(t).filter((function(t){return"id"===t||t.startsWith("data-")})).reduce((function(e,n){return e[n]=t[n],e}),{});if(r("attrs",o),!e)return n;var a=e.on,s=e.props,u=e.attrs;return r("on",a),r("props",s),i()(n.attrs,u),n}var N=["Start","Add","Remove","Update","End"],R=["Choose","Unchoose","Sort","Filter","Clone"],F=["Move"].concat(N,R).map((function(t){return"on"+t})),z=null,H={options:Object,list:{type:Array,required:!1,default:null},value:{type:Array,required:!1,default:null},noTransitionOnDrag:{type:Boolean,default:!1},clone:{type:Function,default:function(t){return t}},element:{type:String,default:"div"},tag:{type:String,default:null},move:{type:Function,default:null},componentData:{type:Object,required:!1,default:null}},B={name:"draggable",inheritAttrs:!1,props:H,data:function(){return{transitionMode:!1,noneFunctionalComponentMode:!1}},render:function(t){var e=this.$slots.default;this.transitionMode=P(e);var n=I(e,this.$slots,this.$scopedSlots),r=n.children,o=n.headerOffset,i=n.footerOffset;this.headerOffset=o,this.footerOffset=i;var a=L(this.$attrs,this.componentData);return t(this.getTag(),a,r)},created:function(){null!==this.list&&null!==this.value&&A["b"].error("Value and list props are mutually exclusive! Please set one or another."),"div"!==this.element&&A["b"].warn("Element props is deprecated please use tag props instead. See https://github.com/SortableJS/Vue.Draggable/blob/master/documentation/migrate.md#element-props"),void 0!==this.options&&A["b"].warn("Options props is deprecated, add sortable options directly as vue.draggable item, or use v-bind. See https://github.com/SortableJS/Vue.Draggable/blob/master/documentation/migrate.md#options-props")},mounted:function(){var t=this;if(this.noneFunctionalComponentMode=this.getTag().toLowerCase()!==this.$el.nodeName.toLowerCase()&&!this.getIsFunctional(),this.noneFunctionalComponentMode&&this.transitionMode)throw new Error("Transition-group inside component is not supported. Please alter tag value or remove transition-group. Current tag value: ".concat(this.getTag()));var e={};N.forEach((function(n){e["on"+n]=T.call(t,n)})),R.forEach((function(n){e["on"+n]=M.bind(t,n)}));var n=c()(this.$attrs).reduce((function(e,n){return e[Object(A["a"])(n)]=t.$attrs[n],e}),{}),r=i()({},this.options,n,e,{onMove:function(e,n){return t.onDragMove(e,n)}});!("draggable"in r)&&(r.draggable=">*"),this._sortable=new E.a(this.rootContainer,r),this.computeIndexes()},beforeDestroy:function(){void 0!==this._sortable&&this._sortable.destroy()},computed:{rootContainer:function(){return this.transitionMode?this.$el.children[0]:this.$el},realList:function(){return this.list?this.list:this.value}},watch:{options:{handler:function(t){this.updateOptions(t)},deep:!0},$attrs:{handler:function(t){this.updateOptions(t)},deep:!0},realList:function(){this.computeIndexes()}},methods:{getIsFunctional:function(){var t=this._vnode.fnOptions;return t&&t.functional},getTag:function(){return this.tag||this.element},updateOptions:function(t){for(var e in t){var n=Object(A["a"])(e);-1===F.indexOf(n)&&this._sortable.option(n,t[e])}},getChildrenNodes:function(){if(this.noneFunctionalComponentMode)return this.$children[0].$slots.default;var t=this.$slots.default;return this.transitionMode?t[0].child.$slots.default:t},computeIndexes:function(){var t=this;this.$nextTick((function(){t.visibleIndexes=k(t.getChildrenNodes(),t.rootContainer.children,t.transitionMode,t.footerOffset)}))},getUnderlyingVm:function(t){var e=$(this.getChildrenNodes()||[],t);if(-1===e)return null;var n=this.realList[e];return{index:e,element:n}},getUnderlyingPotencialDraggableComponent:function(t){var e=t.__vue__;return e&&e.$options&&j(e.$options._componentTag)?e.$parent:!("realList"in e)&&1===e.$children.length&&"realList"in e.$children[0]?e.$children[0]:e},emitChanges:function(t){var e=this;this.$nextTick((function(){e.$emit("change",t)}))},alterList:function(t){if(this.list)t(this.list);else{var e=S(this.value);t(e),this.$emit("input",e)}},spliceList:function(){var t=arguments,e=function(e){return e.splice.apply(e,S(t))};this.alterList(e)},updatePosition:function(t,e){var n=function(n){return n.splice(e,0,n.splice(t,1)[0])};this.alterList(n)},getRelatedContextFromMoveEvent:function(t){var e=t.to,n=t.related,r=this.getUnderlyingPotencialDraggableComponent(e);if(!r)return{component:r};var o=r.realList,a={list:o,component:r};if(e!==n&&o&&r.getUnderlyingVm){var c=r.getUnderlyingVm(n);if(c)return i()(c,a)}return a},getVmIndex:function(t){var e=this.visibleIndexes,n=e.length;return t>n-1?n:e[t]},getComponent:function(){return this.$slots.default[0].componentInstance},resetTransitionData:function(t){if(this.noTransitionOnDrag&&this.transitionMode){var e=this.getChildrenNodes();e[t].data=null;var n=this.getComponent();n.children=[],n.kept=void 0}},onDragStart:function(t){this.context=this.getUnderlyingVm(t.item),t.item._underlying_vm_=this.clone(this.context.element),z=t.item},onDragAdd:function(t){var e=t.item._underlying_vm_;if(void 0!==e){Object(A["d"])(t.item);var n=this.getVmIndex(t.newIndex);this.spliceList(n,0,e),this.computeIndexes();var r={element:e,newIndex:n};this.emitChanges({added:r})}},onDragRemove:function(t){if(Object(A["c"])(this.rootContainer,t.item,t.oldIndex),"clone"!==t.pullMode){var e=this.context.index;this.spliceList(e,1);var n={element:this.context.element,oldIndex:e};this.resetTransitionData(e),this.emitChanges({removed:n})}else Object(A["d"])(t.clone)},onDragUpdate:function(t){Object(A["d"])(t.item),Object(A["c"])(t.from,t.item,t.oldIndex);var e=this.context.index,n=this.getVmIndex(t.newIndex);this.updatePosition(e,n);var r={element:this.context.element,oldIndex:e,newIndex:n};this.emitChanges({moved:r})},updateProperty:function(t,e){t.hasOwnProperty(e)&&(t[e]+=this.headerOffset)},computeFutureIndex:function(t,e){if(!t.element)return 0;var n=S(e.to.children).filter((function(t){return"none"!==t.style["display"]})),r=n.indexOf(e.related),o=t.component.getVmIndex(r),i=-1!==n.indexOf(z);return i||!e.willInsertAfter?o:o+1},onDragMove:function(t,e){var n=this.move;if(!n||!this.realList)return!0;var r=this.getRelatedContextFromMoveEvent(t),o=this.context,a=this.computeFutureIndex(r,t);i()(o,{futureIndex:a});var c=i()({},t,{relatedContext:r,draggedContext:o});return n(c,e)},onDragEnd:function(){this.computeIndexes(),z=null}}};"undefined"!==typeof window&&"Vue"in window&&window.Vue.component("draggable",B);var V=B;e["default"]=V}})["default"]},"312a":function(t,e,n){var r=n("ca38"),o=n("b808"),i="__core-js_shared__",a=o[i]||(o[i]={});(t.exports=function(t,e){return a[t]||(a[t]=void 0!==e?e:{})})("versions",[]).push({version:r.version,mode:n("e6a1")?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},"31c2":function(t,e){e.f=Object.getOwnPropertySymbols},"32e9":function(t,e,n){var r=n("86cc"),o=n("4630");t.exports=n("9e1e")?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},3360:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=function(){for(var t=arguments.length,e=Array(t),n=0;n0&&e.reduce((function(e,n){return e&&n.apply(t,r)}),!0)}))}},3846:function(t,e,n){n("9e1e")&&"g"!=/./g.flags&&n("86cc").f(RegExp.prototype,"flags",{configurable:!0,get:n("0bfb")})},"386b":function(t,e,n){var r=n("5ca1"),o=n("79e5"),i=n("be13"),a=/"/g,c=function(t,e,n,r){var o=String(i(t)),c="<"+e;return""!==n&&(c+=" "+n+'="'+String(r).replace(a,""")+'"'),c+">"+o+""};t.exports=function(t,e){var n={};n[t]=e(c),r(r.P+r.F*o((function(){var e=""[t]('"');return e!==e.toLowerCase()||e.split('"').length>3})),"String",n)}},"386d":function(t,e,n){"use strict";var r=n("cb7c"),o=n("83a1"),i=n("5f1b");n("214f")("search",1,(function(t,e,n,a){return[function(n){var r=t(this),o=void 0==n?void 0:n[e];return void 0!==o?o.call(n,r):new RegExp(n)[e](String(r))},function(t){var e=a(n,t,this);if(e.done)return e.value;var c=r(t),s=String(this),u=c.lastIndex;o(u,0)||(c.lastIndex=0);var l=i(c,s);return o(c.lastIndex,u)||(c.lastIndex=u),null===l?-1:l.index}]}))},"38fd":function(t,e,n){var r=n("69a8"),o=n("4bf8"),i=n("613b")("IE_PROTO"),a=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),r(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?a:null}},"3a54":function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=(0,r.regex)("alphaNum",/^[a-zA-Z0-9]*$/)},"3adc":function(t,e,n){var r=n("0f89"),o=n("a47f"),i=n("2ea1"),a=Object.defineProperty;e.f=n("7d95")?Object.defineProperty:function(t,e,n){if(r(t),e=i(e,!0),r(n),o)try{return a(t,e,n)}catch(c){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},"3b2b":function(t,e,n){var r=n("7726"),o=n("5dbc"),i=n("86cc").f,a=n("9093").f,c=n("aae3"),s=n("0bfb"),u=r.RegExp,l=u,f=u.prototype,p=/a/g,d=/a/g,h=new u(p)!==p;if(n("9e1e")&&(!h||n("79e5")((function(){return d[n("2b4c")("match")]=!1,u(p)!=p||u(d)==d||"/a/i"!=u(p,"i")})))){u=function(t,e){var n=this instanceof u,r=c(t),i=void 0===e;return!n&&r&&t.constructor===u&&i?t:o(h?new l(r&&!i?t.source:t,e):l((r=t instanceof u)?t.source:t,r&&i?s.call(t):e),n?this:f,u)};for(var v=function(t){t in u||i(u,t,{configurable:!0,get:function(){return l[t]},set:function(e){l[t]=e}})},m=a(l),g=0;m.length>g;)v(m[g++]);f.constructor=u,u.prototype=f,n("2aba")(r,"RegExp",u)}n("7a56")("RegExp")},"3bb1":function(t,e,n){var r=n("b67f")("unscopables"),o=Array.prototype;void 0==o[r]&&n("a0a8")(o,r,{}),t.exports=function(t){o[r][t]=!0}},4052:function(t,e,n){var r=n("4a89"),o=Math.max,i=Math.min;t.exports=function(t,e){return t=r(t),t<0?o(t+e,0):i(t,e)}},"41a0":function(t,e,n){"use strict";var r=n("2aeb"),o=n("4630"),i=n("7f20"),a={};n("32e9")(a,n("2b4c")("iterator"),(function(){return this})),t.exports=function(t,e,n){t.prototype=r(a,{next:o(1,n)}),i(t,e+" Iterator")}},"436c":function(t,e,n){var r=n("1b55")("iterator"),o=!1;try{var i=[7][r]();i["return"]=function(){o=!0},Array.from(i,(function(){throw 2}))}catch(a){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i=[7],c=i[r]();c.next=function(){return{done:n=!0}},i[r]=function(){return c},t(i)}catch(a){}return n}},"43c8":function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},"456d":function(t,e,n){var r=n("4bf8"),o=n("0d58");n("5eda")("keys",(function(){return function(t){return o(r(t))}}))},4588:function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},"45b8":function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=(0,r.regex)("numeric",/^[0-9]*$/)},"45e2":function(t,e,n){t.exports=!n("b629")((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},4630:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},"46bc":function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=function(t){return(0,r.withParams)({type:"maxValue",max:t},(function(e){return!(0,r.req)(e)||(!/\s/.test(e)||e instanceof Date)&&+e<=+t}))}},4842:function(t,e,n){var r=n("569f");r(r.S+r.F,"Object",{assign:n("a402")})},4917:function(t,e,n){"use strict";var r=n("cb7c"),o=n("9def"),i=n("0390"),a=n("5f1b");n("214f")("match",1,(function(t,e,n,c){return[function(n){var r=t(this),o=void 0==n?void 0:n[e];return void 0!==o?o.call(n,r):new RegExp(n)[e](String(r))},function(t){var e=c(n,t,this);if(e.done)return e.value;var s=r(t),u=String(this);if(!s.global)return a(s,u);var l=s.unicode;s.lastIndex=0;var f,p=[],d=0;while(null!==(f=a(s,u))){var h=String(f[0]);p[d]=h,""===h&&(s.lastIndex=i(u,o(s.lastIndex),l)),d++}return 0===d?null:p}]}))},"49c1":function(t,e){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},"4a89":function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},"4b9e":function(t,e,n){var r=n("b808"),o=r.navigator;t.exports=o&&o.userAgent||""},"4bf8":function(t,e,n){var r=n("be13");t.exports=function(t){return Object(r(t))}},"4cf4":function(t,e,n){var r=n("0244");t.exports=function(t){return Object(r(t))}},"504c":function(t,e,n){var r=n("0d58"),o=n("6821"),i=n("52a7").f;t.exports=function(t){return function(e){var n,a=o(e),c=r(a),s=c.length,u=0,l=[];while(s>u)i.call(a,n=c[u++])&&l.push(t?[n,a[n]]:a[n]);return l}}},5147:function(t,e,n){var r=n("2b4c")("match");t.exports=function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[r]=!1,!"/./"[t](e)}catch(o){}}return!0}},"520a":function(t,e,n){"use strict";var r=n("0bfb"),o=RegExp.prototype.exec,i=String.prototype.replace,a=o,c="lastIndex",s=function(){var t=/a/,e=/b*/g;return o.call(t,"a"),o.call(e,"a"),0!==t[c]||0!==e[c]}(),u=void 0!==/()??/.exec("")[1],l=s||u;l&&(a=function(t){var e,n,a,l,f=this;return u&&(n=new RegExp("^"+f.source+"$(?!\\s)",r.call(f))),s&&(e=f[c]),a=o.call(f,t),s&&a&&(f[c]=f.global?a.index+a[0].length:e),u&&a&&a.length>1&&i.call(a[0],n,(function(){for(l=1;l=e?t:""+Array(e+1-r.length).join(n)+t},p={s:f,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),o=n%60;return(e<=0?"+":"-")+f(r,2,"0")+":"+f(o,2,"0")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),r=t.clone().add(n,a),o=e-r<0,i=t.clone().add(n+(o?-1:1),a);return Number(-(n+(e-r)/(o?r-i:i-r))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(u){return{M:a,y:s,w:i,d:o,D:"date",h:r,m:n,s:e,ms:t,Q:c}[u]||String(u||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},d={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},h="en",v={};v[h]=d;var m=function(t){return t instanceof w},g=function(t,e,n){var r;if(!t)return h;if("string"==typeof t)v[t]&&(r=t),e&&(v[t]=e,r=t);else{var o=t.name;v[o]=t,r=o}return!n&&r&&(h=r),r||!n&&h},y=function(t,e,n){if(m(t))return t.clone();var r=e?"string"==typeof e?{format:e,pl:n}:e:{};return r.date=t,new w(r)},b=p;b.l=g,b.i=m,b.w=function(t,e){return y(t,{locale:e.$L,utc:e.$u,$offset:e.$offset})};var w=function(){function f(t){this.$L=this.$L||g(t.locale,null,!0),this.parse(t)}var p=f.prototype;return p.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(b.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(u);if(r)return n?new Date(Date.UTC(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)):new Date(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)}return new Date(e)}(t),this.init()},p.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},p.$utils=function(){return b},p.isValid=function(){return!("Invalid Date"===this.$d.toString())},p.isSame=function(t,e){var n=y(t);return this.startOf(e)<=n&&n<=this.endOf(e)},p.isAfter=function(t,e){return y(t)()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$)/;e.default=(0,r.regex)("email",o)},"5d8fa":function(t,e,n){var r=n("7772")("keys"),o=n("7b00");t.exports=function(t){return r[t]||(r[t]=o(t))}},"5db3":function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=function(t){return(0,r.withParams)({type:"minLength",min:t},(function(e){return!(0,r.req)(e)||(0,r.len)(e)>=t}))}},"5dbc":function(t,e,n){var r=n("d3f4"),o=n("8b97").set;t.exports=function(t,e,n){var i,a=e.constructor;return a!==n&&"function"==typeof a&&(i=a.prototype)!==n.prototype&&r(i)&&o&&o(t,i),t}},"5df3":function(t,e,n){"use strict";var r=n("02f4")(!0);n("01f9")(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,e=this._t,n=this._i;return n>=e.length?{value:void 0,done:!0}:(t=r(e,n),this._i+=t.length,{value:t,done:!1})}))},"5eda":function(t,e,n){var r=n("5ca1"),o=n("8378"),i=n("79e5");t.exports=function(t,e){var n=(o.Object||{})[t]||Object[t],a={};a[t]=e(n),r(r.S+r.F*i((function(){n(1)})),"Object",a)}},"5f1b":function(t,e,n){"use strict";var r=n("23c6"),o=RegExp.prototype.exec;t.exports=function(t,e){var n=t.exec;if("function"===typeof n){var i=n.call(t,e);if("object"!==typeof i)throw new TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw new TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},6109:function(t,e,n){"use strict";var r=n("bc25"),o=n("d13f"),i=n("0185"),a=n("9c93"),c=n("c227"),s=n("a5ab"),u=n("b3ec"),l=n("f159");o(o.S+o.F*!n("436c")((function(t){Array.from(t)})),"Array",{from:function(t){var e,n,o,f,p=i(t),d="function"==typeof this?this:Array,h=arguments.length,v=h>1?arguments[1]:void 0,m=void 0!==v,g=0,y=l(p);if(m&&(v=r(v,h>2?arguments[2]:void 0,2)),void 0==y||d==Array&&c(y))for(e=s(p.length),n=new d(e);e>g;g++)u(n,g,m?v(p[g],g):p[g]);else for(f=y.call(p),n=new d;!(o=f.next()).done;g++)u(n,g,m?a(f,v,[o.value,g],!0):o.value);return n.length=g,n}})},"613b":function(t,e,n){var r=n("5537")("keys"),o=n("ca5a");t.exports=function(t){return r[t]||(r[t]=o(t))}},6235:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=(0,r.regex)("alpha",/^[a-zA-Z]*$/)},"626a":function(t,e,n){var r=n("2d95");t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},"626e":function(t,e,n){var r=n("d74e"),o=n("f845"),i=n("6a9b"),a=n("2ea1"),c=n("43c8"),s=n("a47f"),u=Object.getOwnPropertyDescriptor;e.f=n("7d95")?u:function(t,e){if(t=i(t),e=a(e,!0),s)try{return u(t,e)}catch(n){}if(c(t,e))return o(!r.f.call(t,e),t[e])}},6277:function(t,e,n){var r=n("7b00")("meta"),o=n("6f8a"),i=n("43c8"),a=n("3adc").f,c=0,s=Object.isExtensible||function(){return!0},u=!n("d782")((function(){return s(Object.preventExtensions({}))})),l=function(t){a(t,r,{value:{i:"O"+ ++c,w:{}}})},f=function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,r)){if(!s(t))return"F";if(!e)return"E";l(t)}return t[r].i},p=function(t,e){if(!i(t,r)){if(!s(t))return!0;if(!e)return!1;l(t)}return t[r].w},d=function(t){return u&&h.NEED&&s(t)&&!i(t,r)&&l(t),t},h=t.exports={KEY:r,NEED:!1,fastKey:f,getWeak:p,onFreeze:d}},6762:function(t,e,n){"use strict";var r=n("5ca1"),o=n("c366")(!0);r(r.P,"Array",{includes:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}}),n("9c6c")("includes")},"67bb":function(t,e,n){t.exports=n("b258")},6821:function(t,e,n){var r=n("626a"),o=n("be13");t.exports=function(t){return r(o(t))}},"696b":function(t,e){e.f=Object.getOwnPropertySymbols},"69a8":function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},"6a99":function(t,e,n){var r=n("d3f4");t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},"6a9b":function(t,e,n){var r=n("8bab"),o=n("e5fa");t.exports=function(t){return r(o(t))}},"6b54":function(t,e,n){"use strict";n("3846");var r=n("cb7c"),o=n("0bfb"),i=n("9e1e"),a="toString",c=/./[a],s=function(t){n("2aba")(RegExp.prototype,a,t,!0)};n("79e5")((function(){return"/a/b"!=c.call({source:"a",flags:"b"})}))?s((function(){var t=r(this);return"/".concat(t.source,"/","flags"in t?t.flags:!i&&t instanceof RegExp?o.call(t):void 0)})):c.name!=a&&s((function(){return c.call(this)}))},"6e1f":function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},"6f8a":function(t,e){t.exports=function(t){return"object"===typeof t?null!==t:"function"===typeof t}},7108:function(t,e,n){var r=n("0f89"),o=n("f568"),i=n("0029"),a=n("5d8fa")("IE_PROTO"),c=function(){},s="prototype",u=function(){var t,e=n("12fd")("iframe"),r=i.length,o="<",a=">";e.style.display="none",n("103a").appendChild(e),e.src="javascript:",t=e.contentWindow.document,t.open(),t.write(o+"script"+a+"document.F=Object"+o+"/script"+a),t.close(),u=t.F;while(r--)delete u[s][i[r]];return u()};t.exports=Object.create||function(t,e){var n;return null!==t?(c[s]=r(t),n=new c,c[s]=null,n[a]=t):n=u(),void 0===e?n:o(n,e)}},"71fa":function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},"73c3":function(t,e){t.exports=function(t){try{return{e:!1,v:t()}}catch(e){return{e:!0,v:e}}}},"75fc":function(t,e,n){"use strict";n.d(e,"a",(function(){return p}));var r=n("a745"),o=n.n(r);function i(t){if(o()(t)){for(var e=0,n=new Array(t.length);eb;b++)if(m=e?y(a(h=t[b])[0],h[1]):y(t[b]),m===u||m===l)return m}else for(v=g.call(t);!(h=v.next()).done;)if(m=o(v,y,h.value,e),m===u||m===l)return m};e.BREAK=u,e.RETURN=l},"89ca":function(t,e,n){n("b42c"),n("93c4"),t.exports=n("d38f")},"8b97":function(t,e,n){var r=n("d3f4"),o=n("cb7c"),i=function(t,e){if(o(t),!r(e)&&null!==e)throw TypeError(e+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,e,r){try{r=n("9b43")(Function.call,n("11e9").f(Object.prototype,"__proto__").set,2),r(t,[]),e=!(t instanceof Array)}catch(o){e=!0}return function(t,n){return i(t,n),e?t.__proto__=n:r(t,n),t}}({},!1):void 0),check:i}},"8bab":function(t,e,n){var r=n("6e1f");t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},"8c4f":function(t,e,n){"use strict"; /*! - * vue-router v3.0.2 - * (c) 2018 Evan You + * vue-router v3.1.6 + * (c) 2020 Evan You * @license MIT - */function r(t,e){0}function o(t){return Object.prototype.toString.call(t).indexOf("Error")>-1}function i(t,e){for(var n in e)t[n]=e[n];return t}var a={name:"RouterView",functional:!0,props:{name:{type:String,default:"default"}},render:function(t,e){var n=e.props,r=e.children,o=e.parent,a=e.data;a.routerView=!0;var s=o.$createElement,u=n.name,f=o.$route,l=o._routerViewCache||(o._routerViewCache={}),p=0,d=!1;while(o&&o._routerRoot!==o)o.$vnode&&o.$vnode.data.routerView&&p++,o._inactive&&(d=!0),o=o.$parent;if(a.routerViewDepth=p,d)return s(l[u],a,r);var h=f.matched[p];if(!h)return l[u]=null,s();var v=l[u]=h.components[u];a.registerRouteInstance=function(t,e){var n=h.instances[u];(e&&n!==t||!e&&n===t)&&(h.instances[u]=e)},(a.hook||(a.hook={})).prepatch=function(t,e){h.instances[u]=e.componentInstance};var y=a.props=c(f,h.props&&h.props[u]);if(y){y=a.props=i({},y);var g=a.attrs=a.attrs||{};for(var m in y)v.props&&m in v.props||(g[m]=y[m],delete y[m])}return s(v,a,r)}};function c(t,e){switch(typeof e){case"undefined":return;case"object":return e;case"function":return e(t);case"boolean":return e?t.params:void 0;default:0}}var s=/[!'()*]/g,u=function(t){return"%"+t.charCodeAt(0).toString(16)},f=/%2C/g,l=function(t){return encodeURIComponent(t).replace(s,u).replace(f,",")},p=decodeURIComponent;function d(t,e,n){void 0===e&&(e={});var r,o=n||h;try{r=o(t||"")}catch(a){r={}}for(var i in e)r[i]=e[i];return r}function h(t){var e={};return t=t.trim().replace(/^(\?|#|&)/,""),t?(t.split("&").forEach(function(t){var n=t.replace(/\+/g," ").split("="),r=p(n.shift()),o=n.length>0?p(n.join("=")):null;void 0===e[r]?e[r]=o:Array.isArray(e[r])?e[r].push(o):e[r]=[e[r],o]}),e):e}function v(t){var e=t?Object.keys(t).map(function(e){var n=t[e];if(void 0===n)return"";if(null===n)return l(e);if(Array.isArray(n)){var r=[];return n.forEach(function(t){void 0!==t&&(null===t?r.push(l(e)):r.push(l(e)+"="+l(t)))}),r.join("&")}return l(e)+"="+l(n)}).filter(function(t){return t.length>0}).join("&"):null;return e?"?"+e:""}var y=/\/?$/;function g(t,e,n,r){var o=r&&r.options.stringifyQuery,i=e.query||{};try{i=m(i)}catch(c){}var a={name:e.name||t&&t.name,meta:t&&t.meta||{},path:e.path||"/",hash:e.hash||"",query:i,params:e.params||{},fullPath:w(e,o),matched:t?_(t):[]};return n&&(a.redirectedFrom=w(n,o)),Object.freeze(a)}function m(t){if(Array.isArray(t))return t.map(m);if(t&&"object"===typeof t){var e={};for(var n in t)e[n]=m(t[n]);return e}return t}var b=g(null,{path:"/"});function _(t){var e=[];while(t)e.unshift(t),t=t.parent;return e}function w(t,e){var n=t.path,r=t.query;void 0===r&&(r={});var o=t.hash;void 0===o&&(o="");var i=e||v;return(n||"/")+i(r)+o}function x(t,e){return e===b?t===e:!!e&&(t.path&&e.path?t.path.replace(y,"")===e.path.replace(y,"")&&t.hash===e.hash&&O(t.query,e.query):!(!t.name||!e.name)&&(t.name===e.name&&t.hash===e.hash&&O(t.query,e.query)&&O(t.params,e.params)))}function O(t,e){if(void 0===t&&(t={}),void 0===e&&(e={}),!t||!e)return t===e;var n=Object.keys(t),r=Object.keys(e);return n.length===r.length&&n.every(function(n){var r=t[n],o=e[n];return"object"===typeof r&&"object"===typeof o?O(r,o):String(r)===String(o)})}function S(t,e){return 0===t.path.replace(y,"/").indexOf(e.path.replace(y,"/"))&&(!e.hash||t.hash===e.hash)&&$(t.query,e.query)}function $(t,e){for(var n in e)if(!(n in t))return!1;return!0}var A,C=[String,Object],k=[String,Array],E={name:"RouterLink",props:{to:{type:C,required:!0},tag:{type:String,default:"a"},exact:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,event:{type:k,default:"click"}},render:function(t){var e=this,n=this.$router,r=this.$route,o=n.resolve(this.to,r,this.append),a=o.location,c=o.route,s=o.href,u={},f=n.options.linkActiveClass,l=n.options.linkExactActiveClass,p=null==f?"router-link-active":f,d=null==l?"router-link-exact-active":l,h=null==this.activeClass?p:this.activeClass,v=null==this.exactActiveClass?d:this.exactActiveClass,y=a.path?g(null,a,null,n):c;u[v]=x(r,y),u[h]=this.exact?u[v]:S(r,y);var m=function(t){M(t)&&(e.replace?n.replace(a):n.push(a))},b={click:M};Array.isArray(this.event)?this.event.forEach(function(t){b[t]=m}):b[this.event]=m;var _={class:u};if("a"===this.tag)_.on=b,_.attrs={href:s};else{var w=j(this.$slots.default);if(w){w.isStatic=!1;var O=w.data=i({},w.data);O.on=b;var $=w.data.attrs=i({},w.data.attrs);$.href=s}else _.on=b}return t(this.tag,_,this.$slots.default)}};function M(t){if(!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)&&!t.defaultPrevented&&(void 0===t.button||0===t.button)){if(t.currentTarget&&t.currentTarget.getAttribute){var e=t.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return t.preventDefault&&t.preventDefault(),!0}}function j(t){if(t)for(var e,n=0;n=0&&(e=t.slice(r),t=t.slice(0,r));var o=t.indexOf("?");return o>=0&&(n=t.slice(o+1),t=t.slice(0,o)),{path:t,query:n,hash:e}}function I(t){return t.replace(/\/\//g,"/")}var N=Array.isArray||function(t){return"[object Array]"==Object.prototype.toString.call(t)},R=rt,F=U,H=Y,z=G,V=nt,B=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function U(t,e){var n,r=[],o=0,i=0,a="",c=e&&e.delimiter||"/";while(null!=(n=B.exec(t))){var s=n[0],u=n[1],f=n.index;if(a+=t.slice(i,f),i=f+s.length,u)a+=u[1];else{var l=t[i],p=n[2],d=n[3],h=n[4],v=n[5],y=n[6],g=n[7];a&&(r.push(a),a="");var m=null!=p&&null!=l&&l!==p,b="+"===y||"*"===y,_="?"===y||"*"===y,w=n[2]||c,x=h||v;r.push({name:d||o++,prefix:p||"",delimiter:w,optional:_,repeat:b,partial:m,asterisk:!!g,pattern:x?X(x):g?".*":"[^"+K(w)+"]+?"})}}return i-1&&(c.params[p]=n.params[p]);if(u)return c.path=it(u.path,c.params,'named route "'+s+'"'),f(u,c,a)}else if(c.path){c.params={};for(var d=0;d=t.length?n():t[o]?e(t[o],function(){r(o+1)}):r(o+1)};r(0)}function Dt(t){return function(e,n,r){var i=!1,a=0,c=null;Lt(t,function(t,e,n,s){if("function"===typeof t&&void 0===t.cid){i=!0,a++;var u,f=Ft(function(e){Rt(e)&&(e=e.default),t.resolved="function"===typeof e?e:A.extend(e),n.components[s]=e,a--,a<=0&&r()}),l=Ft(function(t){var e="Failed to resolve async component "+s+": "+t;c||(c=o(t)?t:new Error(e),r(c))});try{u=t(f,l)}catch(d){l(d)}if(u)if("function"===typeof u.then)u.then(f,l);else{var p=u.component;p&&"function"===typeof p.then&&p.then(f,l)}}}),i||r()}}function Lt(t,e){return It(t.map(function(t){return Object.keys(t.components).map(function(n){return e(t.components[n],t.instances[n],t,n)})}))}function It(t){return Array.prototype.concat.apply([],t)}var Nt="function"===typeof Symbol&&"symbol"===typeof Symbol.toStringTag;function Rt(t){return t.__esModule||Nt&&"Module"===t[Symbol.toStringTag]}function Ft(t){var e=!1;return function(){var n=[],r=arguments.length;while(r--)n[r]=arguments[r];if(!e)return e=!0,t.apply(this,n)}}var Ht=function(t,e){this.router=t,this.base=zt(e),this.current=b,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[]};function zt(t){if(!t)if(P){var e=document.querySelector("base");t=e&&e.getAttribute("href")||"/",t=t.replace(/^https?:\/\/[^\/]+/,"")}else t="/";return"/"!==t.charAt(0)&&(t="/"+t),t.replace(/\/$/,"")}function Vt(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n=0?e.slice(0,n):e;return r+"#"+t}function oe(t){$t?jt(re(t)):window.location.hash=t}function ie(t){$t?Tt(re(t)):window.location.replace(re(t))}var ae=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var r=this;this.transitionTo(t,function(t){r.stack=r.stack.slice(0,r.index+1).concat(t),r.index++,e&&e(t)},n)},e.prototype.replace=function(t,e,n){var r=this;this.transitionTo(t,function(t){r.stack=r.stack.slice(0,r.index).concat(t),e&&e(t)},n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,function(){e.index=n,e.updateRoute(r)})}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(Ht),ce=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=lt(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!$t&&!1!==t.fallback,this.fallback&&(e="hash"),P||(e="abstract"),this.mode=e,e){case"history":this.history=new Jt(this,t.base);break;case"hash":this.history=new Qt(this,t.base,this.fallback);break;case"abstract":this.history=new ae(this,t.base);break;default:0}},se={currentRoute:{configurable:!0}};function ue(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}function fe(t,e,n){var r="hash"===n?"#"+e:e;return t?I(t+"/"+r):r}ce.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},se.currentRoute.get=function(){return this.history&&this.history.current},ce.prototype.init=function(t){var e=this;if(this.apps.push(t),!this.app){this.app=t;var n=this.history;if(n instanceof Jt)n.transitionTo(n.getCurrentLocation());else if(n instanceof Qt){var r=function(){n.setupListeners()};n.transitionTo(n.getCurrentLocation(),r,r)}n.listen(function(t){e.apps.forEach(function(e){e._route=t})})}},ce.prototype.beforeEach=function(t){return ue(this.beforeHooks,t)},ce.prototype.beforeResolve=function(t){return ue(this.resolveHooks,t)},ce.prototype.afterEach=function(t){return ue(this.afterHooks,t)},ce.prototype.onReady=function(t,e){this.history.onReady(t,e)},ce.prototype.onError=function(t){this.history.onError(t)},ce.prototype.push=function(t,e,n){this.history.push(t,e,n)},ce.prototype.replace=function(t,e,n){this.history.replace(t,e,n)},ce.prototype.go=function(t){this.history.go(t)},ce.prototype.back=function(){this.go(-1)},ce.prototype.forward=function(){this.go(1)},ce.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map(function(t){return Object.keys(t.components).map(function(e){return t.components[e]})})):[]},ce.prototype.resolve=function(t,e,n){var r=ft(t,e||this.history.current,n,this),o=this.match(r,e),i=o.redirectedFrom||o.fullPath,a=this.history.base,c=fe(a,i,this.mode);return{location:r,route:o,href:c,normalizedTo:r,resolved:o}},ce.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==b&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(ce.prototype,se),ce.install=T,ce.version="3.0.2",P&&window.Vue&&window.Vue.use(ce),e["a"]=ce},"8ce0":function(t,e,n){var r=n("3adc"),o=n("f845");t.exports=n("7d95")?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},9093:function(t,e,n){var r=n("ce10"),o=n("e11e").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},9184:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},"91d3":function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:":";return(0,r.withParams)({type:"macAddress"},function(e){if(!(0,r.req)(e))return!0;if("string"!==typeof e)return!1;var n="string"===typeof t&&""!==t?e.split(t):12===e.length||16===e.length?e.match(/.{2}/g):null;return null!==n&&(6===n.length||8===n.length)&&n.every(o)})};var o=function(t){return t.toLowerCase().match(/^[0-9a-f]{2}$/)}},"93c4":function(t,e,n){"use strict";var r=n("2a4e")(!0);n("e4a9")(String,"String",function(t){this._t=String(t),this._i=0},function(){var t,e=this._t,n=this._i;return n>=e.length?{value:void 0,done:!0}:(t=r(e,n),this._i+=t.length,{value:t,done:!1})})},"9a51":function(t,e,n){var r=n("d13f");r(r.S+r.F,"Object",{assign:n("9e44")})},"9b43":function(t,e,n){var r=n("d8e8");t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}}},"9c6c":function(t,e,n){var r=n("2b4c")("unscopables"),o=Array.prototype;void 0==o[r]&&n("32e9")(o,r,{}),t.exports=function(t){o[r][t]=!0}},"9c93":function(t,e,n){var r=n("0f89");t.exports=function(t,e,n,o){try{return o?e(r(n)[0],n[1]):e(n)}catch(a){var i=t["return"];throw void 0!==i&&r(i.call(t)),a}}},"9def":function(t,e,n){var r=n("4588"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},"9e1e":function(t,e,n){t.exports=!n("79e5")(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},"9e44":function(t,e,n){"use strict";var r=n("7633"),o=n("31c2"),i=n("d74e"),a=n("0185"),c=n("8bab"),s=Object.assign;t.exports=!s||n("d782")(function(){var t={},e={},n=Symbol(),r="abcdefghijklmnopqrst";return t[n]=7,r.split("").forEach(function(t){e[t]=t}),7!=s({},t)[n]||Object.keys(s({},e)).join("")!=r})?function(t,e){var n=a(t),s=arguments.length,u=1,f=o.f,l=i.f;while(s>u){var p,d=c(arguments[u++]),h=f?r(d).concat(f(d)):r(d),v=h.length,y=0;while(v>y)l.call(d,p=h[y++])&&(n[p]=d[p])}return n}:s},"9ed1":function(t,e,n){var r=n("f6d7"),o=n("49c1");t.exports=Object.keys||function(t){return r(t,o)}},"9faf":function(t,e,n){var r=n("1f51");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},a026:function(t,e,n){"use strict";(function(t){ + */function r(t,e){0}function o(t){return Object.prototype.toString.call(t).indexOf("Error")>-1}function i(t,e){return e instanceof t||e&&(e.name===t.name||e._name===t._name)}function a(t,e){for(var n in e)t[n]=e[n];return t}var c={name:"RouterView",functional:!0,props:{name:{type:String,default:"default"}},render:function(t,e){var n=e.props,r=e.children,o=e.parent,i=e.data;i.routerView=!0;var c=o.$createElement,u=n.name,l=o.$route,f=o._routerViewCache||(o._routerViewCache={}),p=0,d=!1;while(o&&o._routerRoot!==o){var h=o.$vnode?o.$vnode.data:{};h.routerView&&p++,h.keepAlive&&o._directInactive&&o._inactive&&(d=!0),o=o.$parent}if(i.routerViewDepth=p,d){var v=f[u],m=v&&v.component;return m?(v.configProps&&s(m,i,v.route,v.configProps),c(m,i,r)):c()}var g=l.matched[p],y=g&&g.components[u];if(!g||!y)return f[u]=null,c();f[u]={component:y},i.registerRouteInstance=function(t,e){var n=g.instances[u];(e&&n!==t||!e&&n===t)&&(g.instances[u]=e)},(i.hook||(i.hook={})).prepatch=function(t,e){g.instances[u]=e.componentInstance},i.hook.init=function(t){t.data.keepAlive&&t.componentInstance&&t.componentInstance!==g.instances[u]&&(g.instances[u]=t.componentInstance)};var b=g.props&&g.props[u];return b&&(a(f[u],{route:l,configProps:b}),s(y,i,l,b)),c(y,i,r)}};function s(t,e,n,r){var o=e.props=u(n,r);if(o){o=e.props=a({},o);var i=e.attrs=e.attrs||{};for(var c in o)t.props&&c in t.props||(i[c]=o[c],delete o[c])}}function u(t,e){switch(typeof e){case"undefined":return;case"object":return e;case"function":return e(t);case"boolean":return e?t.params:void 0;default:0}}var l=/[!'()*]/g,f=function(t){return"%"+t.charCodeAt(0).toString(16)},p=/%2C/g,d=function(t){return encodeURIComponent(t).replace(l,f).replace(p,",")},h=decodeURIComponent;function v(t,e,n){void 0===e&&(e={});var r,o=n||m;try{r=o(t||"")}catch(a){r={}}for(var i in e)r[i]=e[i];return r}function m(t){var e={};return t=t.trim().replace(/^(\?|#|&)/,""),t?(t.split("&").forEach((function(t){var n=t.replace(/\+/g," ").split("="),r=h(n.shift()),o=n.length>0?h(n.join("=")):null;void 0===e[r]?e[r]=o:Array.isArray(e[r])?e[r].push(o):e[r]=[e[r],o]})),e):e}function g(t){var e=t?Object.keys(t).map((function(e){var n=t[e];if(void 0===n)return"";if(null===n)return d(e);if(Array.isArray(n)){var r=[];return n.forEach((function(t){void 0!==t&&(null===t?r.push(d(e)):r.push(d(e)+"="+d(t)))})),r.join("&")}return d(e)+"="+d(n)})).filter((function(t){return t.length>0})).join("&"):null;return e?"?"+e:""}var y=/\/?$/;function b(t,e,n,r){var o=r&&r.options.stringifyQuery,i=e.query||{};try{i=w(i)}catch(c){}var a={name:e.name||t&&t.name,meta:t&&t.meta||{},path:e.path||"/",hash:e.hash||"",query:i,params:e.params||{},fullPath:S(e,o),matched:t?x(t):[]};return n&&(a.redirectedFrom=S(n,o)),Object.freeze(a)}function w(t){if(Array.isArray(t))return t.map(w);if(t&&"object"===typeof t){var e={};for(var n in t)e[n]=w(t[n]);return e}return t}var _=b(null,{path:"/"});function x(t){var e=[];while(t)e.unshift(t),t=t.parent;return e}function S(t,e){var n=t.path,r=t.query;void 0===r&&(r={});var o=t.hash;void 0===o&&(o="");var i=e||g;return(n||"/")+i(r)+o}function O(t,e){return e===_?t===e:!!e&&(t.path&&e.path?t.path.replace(y,"")===e.path.replace(y,"")&&t.hash===e.hash&&E(t.query,e.query):!(!t.name||!e.name)&&(t.name===e.name&&t.hash===e.hash&&E(t.query,e.query)&&E(t.params,e.params)))}function E(t,e){if(void 0===t&&(t={}),void 0===e&&(e={}),!t||!e)return t===e;var n=Object.keys(t),r=Object.keys(e);return n.length===r.length&&n.every((function(n){var r=t[n],o=e[n];return"object"===typeof r&&"object"===typeof o?E(r,o):String(r)===String(o)}))}function A(t,e){return 0===t.path.replace(y,"/").indexOf(e.path.replace(y,"/"))&&(!e.hash||t.hash===e.hash)&&C(t.query,e.query)}function C(t,e){for(var n in e)if(!(n in t))return!1;return!0}function $(t,e,n){var r=t.charAt(0);if("/"===r)return t;if("?"===r||"#"===r)return e+t;var o=e.split("/");n&&o[o.length-1]||o.pop();for(var i=t.replace(/^\//,"").split("/"),a=0;a=0&&(e=t.slice(r),t=t.slice(0,r));var o=t.indexOf("?");return o>=0&&(n=t.slice(o+1),t=t.slice(0,o)),{path:t,query:n,hash:e}}function M(t){return t.replace(/\/\//g,"/")}var T=Array.isArray||function(t){return"[object Array]"==Object.prototype.toString.call(t)},j=J,P=R,D=F,I=B,L=X,N=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function R(t,e){var n,r=[],o=0,i=0,a="",c=e&&e.delimiter||"/";while(null!=(n=N.exec(t))){var s=n[0],u=n[1],l=n.index;if(a+=t.slice(i,l),i=l+s.length,u)a+=u[1];else{var f=t[i],p=n[2],d=n[3],h=n[4],v=n[5],m=n[6],g=n[7];a&&(r.push(a),a="");var y=null!=p&&null!=f&&f!==p,b="+"===m||"*"===m,w="?"===m||"*"===m,_=n[2]||c,x=h||v;r.push({name:d||o++,prefix:p||"",delimiter:_,optional:w,repeat:b,partial:y,asterisk:!!g,pattern:x?U(x):g?".*":"[^"+V(_)+"]+?"})}}return i1||!_.length)return 0===_.length?t():t("span",{},_)}if("a"===this.tag)w.on=y,w.attrs={href:s};else{var x=ct(this.$slots.default);if(x){x.isStatic=!1;var S=x.data=a({},x.data);for(var E in S.on=S.on||{},S.on){var C=S.on[E];E in y&&(S.on[E]=Array.isArray(C)?C:[C])}for(var $ in y)$ in S.on?S.on[$].push(y[$]):S.on[$]=g;var k=x.data.attrs=a({},x.data.attrs);k.href=s}else w.on=y}return t(this.tag,w,this.$slots.default)}};function at(t){if(!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)&&!t.defaultPrevented&&(void 0===t.button||0===t.button)){if(t.currentTarget&&t.currentTarget.getAttribute){var e=t.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return t.preventDefault&&t.preventDefault(),!0}}function ct(t){if(t)for(var e,n=0;n-1&&(c.params[p]=n.params[p]);return c.path=Q(u.path,c.params,'named route "'+s+'"'),l(u,c,a)}if(c.path){c.params={};for(var d=0;d=t.length?n():t[o]?e(t[o],(function(){r(o+1)})):r(o+1)};r(0)}function Rt(t){return function(e,n,r){var i=!1,a=0,c=null;Ft(t,(function(t,e,n,s){if("function"===typeof t&&void 0===t.cid){i=!0,a++;var u,l=Vt((function(e){Bt(e)&&(e=e.default),t.resolved="function"===typeof e?e:et.extend(e),n.components[s]=e,a--,a<=0&&r()})),f=Vt((function(t){var e="Failed to resolve async component "+s+": "+t;c||(c=o(t)?t:new Error(e),r(c))}));try{u=t(l,f)}catch(d){f(d)}if(u)if("function"===typeof u.then)u.then(l,f);else{var p=u.component;p&&"function"===typeof p.then&&p.then(l,f)}}})),i||r()}}function Ft(t,e){return zt(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function zt(t){return Array.prototype.concat.apply([],t)}var Ht="function"===typeof Symbol&&"symbol"===typeof Symbol.toStringTag;function Bt(t){return t.__esModule||Ht&&"Module"===t[Symbol.toStringTag]}function Vt(t){var e=!1;return function(){var n=[],r=arguments.length;while(r--)n[r]=arguments[r];if(!e)return e=!0,t.apply(this,n)}}var Ut=function(t){function e(e){t.call(this),this.name=this._name="NavigationDuplicated",this.message='Navigating to current location ("'+e.fullPath+'") is not allowed',Object.defineProperty(this,"stack",{value:(new t).stack,writable:!0,configurable:!0})}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Error);Ut._name="NavigationDuplicated";var Yt=function(t,e){this.router=t,this.base=qt(e),this.current=_,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[]};function qt(t){if(!t)if(ut){var e=document.querySelector("base");t=e&&e.getAttribute("href")||"/",t=t.replace(/^https?:\/\/[^\/]+/,"")}else t="/";return"/"!==t.charAt(0)&&(t="/"+t),t.replace(/\/$/,"")}function Gt(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n-1?decodeURI(t.slice(0,r))+t.slice(r):decodeURI(t)}else t=decodeURI(t.slice(0,n))+t.slice(n);return t}function se(t){var e=window.location.href,n=e.indexOf("#"),r=n>=0?e.slice(0,n):e;return r+"#"+t}function ue(t){Dt?It(se(t)):window.location.hash=t}function le(t){Dt?Lt(se(t)):window.location.replace(se(t))}var fe=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index+1).concat(t),r.index++,e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index).concat(t),e&&e(t)}),n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,(function(){e.index=n,e.updateRoute(r)}),(function(t){i(Ut,t)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(Yt),pe=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=ht(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!Dt&&!1!==t.fallback,this.fallback&&(e="hash"),ut||(e="abstract"),this.mode=e,e){case"history":this.history=new ne(this,t.base);break;case"hash":this.history=new oe(this,t.base,this.fallback);break;case"abstract":this.history=new fe(this,t.base);break;default:0}},de={currentRoute:{configurable:!0}};function he(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}function ve(t,e,n){var r="hash"===n?"#"+e:e;return t?M(t+"/"+r):r}pe.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},de.currentRoute.get=function(){return this.history&&this.history.current},pe.prototype.init=function(t){var e=this;if(this.apps.push(t),t.$once("hook:destroyed",(function(){var n=e.apps.indexOf(t);n>-1&&e.apps.splice(n,1),e.app===t&&(e.app=e.apps[0]||null)})),!this.app){this.app=t;var n=this.history;if(n instanceof ne)n.transitionTo(n.getCurrentLocation());else if(n instanceof oe){var r=function(){n.setupListeners()};n.transitionTo(n.getCurrentLocation(),r,r)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},pe.prototype.beforeEach=function(t){return he(this.beforeHooks,t)},pe.prototype.beforeResolve=function(t){return he(this.resolveHooks,t)},pe.prototype.afterEach=function(t){return he(this.afterHooks,t)},pe.prototype.onReady=function(t,e){this.history.onReady(t,e)},pe.prototype.onError=function(t){this.history.onError(t)},pe.prototype.push=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!==typeof Promise)return new Promise((function(e,n){r.history.push(t,e,n)}));this.history.push(t,e,n)},pe.prototype.replace=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!==typeof Promise)return new Promise((function(e,n){r.history.replace(t,e,n)}));this.history.replace(t,e,n)},pe.prototype.go=function(t){this.history.go(t)},pe.prototype.back=function(){this.go(-1)},pe.prototype.forward=function(){this.go(1)},pe.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map((function(t){return Object.keys(t.components).map((function(e){return t.components[e]}))}))):[]},pe.prototype.resolve=function(t,e,n){e=e||this.history.current;var r=tt(t,e,n,this),o=this.match(r,e),i=o.redirectedFrom||o.fullPath,a=this.history.base,c=ve(a,i,this.mode);return{location:r,route:o,href:c,normalizedTo:r,resolved:o}},pe.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==_&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(pe.prototype,de),pe.install=st,pe.version="3.1.6",ut&&window.Vue&&window.Vue.use(pe),e["a"]=pe},"8ce0":function(t,e,n){var r=n("3adc"),o=n("f845");t.exports=n("7d95")?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},"8e6e":function(t,e,n){var r=n("5ca1"),o=n("990b"),i=n("6821"),a=n("11e9"),c=n("f1ae");r(r.S,"Object",{getOwnPropertyDescriptors:function(t){var e,n,r=i(t),s=a.f,u=o(r),l={},f=0;while(u.length>f)n=s(r,e=u[f++]),void 0!==n&&c(l,e,n);return l}})},9093:function(t,e,n){var r=n("ce10"),o=n("e11e").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},9184:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},"91d3":function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:":";return(0,r.withParams)({type:"macAddress"},(function(e){if(!(0,r.req)(e))return!0;if("string"!==typeof e)return!1;var n="string"===typeof t&&""!==t?e.split(t):12===e.length||16===e.length?e.match(/.{2}/g):null;return null!==n&&(6===n.length||8===n.length)&&n.every(o)}))};var o=function(t){return t.toLowerCase().match(/^[0-9a-f]{2}$/)}},"93c4":function(t,e,n){"use strict";var r=n("2a4e")(!0);n("e4a9")(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,e=this._t,n=this._i;return n>=e.length?{value:void 0,done:!0}:(t=r(e,n),this._i+=t.length,{value:t,done:!1})}))},"990b":function(t,e,n){var r=n("9093"),o=n("2621"),i=n("cb7c"),a=n("7726").Reflect;t.exports=a&&a.ownKeys||function(t){var e=r.f(i(t)),n=o.f;return n?e.concat(n(t)):e}},"9b43":function(t,e,n){var r=n("d8e8");t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}}},"9c12":function(t,e,n){var r=n("d3f4"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},"9c6c":function(t,e,n){var r=n("2b4c")("unscopables"),o=Array.prototype;void 0==o[r]&&n("32e9")(o,r,{}),t.exports=function(t){o[r][t]=!0}},"9c93":function(t,e,n){var r=n("0f89");t.exports=function(t,e,n,o){try{return o?e(r(n)[0],n[1]):e(n)}catch(a){var i=t["return"];throw void 0!==i&&r(i.call(t)),a}}},"9def":function(t,e,n){var r=n("4588"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},"9e1e":function(t,e,n){t.exports=!n("79e5")((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},"9ed1":function(t,e,n){var r=n("f6d7"),o=n("49c1");t.exports=Object.keys||function(t){return r(t,o)}},"9faf":function(t,e,n){var r=n("1f51");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},a026:function(t,e,n){"use strict";(function(t){ /*! - * Vue.js v2.6.10 + * Vue.js v2.6.11 * (c) 2014-2019 Evan You * Released under the MIT License. */ -var n=Object.freeze({});function r(t){return void 0===t||null===t}function o(t){return void 0!==t&&null!==t}function i(t){return!0===t}function a(t){return!1===t}function c(t){return"string"===typeof t||"number"===typeof t||"symbol"===typeof t||"boolean"===typeof t}function s(t){return null!==t&&"object"===typeof t}var u=Object.prototype.toString;function f(t){return"[object Object]"===u.call(t)}function l(t){return"[object RegExp]"===u.call(t)}function p(t){var e=parseFloat(String(t));return e>=0&&Math.floor(e)===e&&isFinite(t)}function d(t){return o(t)&&"function"===typeof t.then&&"function"===typeof t.catch}function h(t){return null==t?"":Array.isArray(t)||f(t)&&t.toString===u?JSON.stringify(t,null,2):String(t)}function v(t){var e=parseFloat(t);return isNaN(e)?t:e}function y(t,e){for(var n=Object.create(null),r=t.split(","),o=0;o-1)return t.splice(n,1)}}var _=Object.prototype.hasOwnProperty;function w(t,e){return _.call(t,e)}function x(t){var e=Object.create(null);return function(n){var r=e[n];return r||(e[n]=t(n))}}var O=/-(\w)/g,S=x(function(t){return t.replace(O,function(t,e){return e?e.toUpperCase():""})}),$=x(function(t){return t.charAt(0).toUpperCase()+t.slice(1)}),A=/\B([A-Z])/g,C=x(function(t){return t.replace(A,"-$1").toLowerCase()});function k(t,e){function n(n){var r=arguments.length;return r?r>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n}function E(t,e){return t.bind(e)}var M=Function.prototype.bind?E:k;function j(t,e){e=e||0;var n=t.length-e,r=new Array(n);while(n--)r[n]=t[n+e];return r}function T(t,e){for(var n in e)t[n]=e[n];return t}function P(t){for(var e={},n=0;n0,ot=et&&et.indexOf("edge/")>0,it=(et&&et.indexOf("android"),et&&/iphone|ipad|ipod|ios/.test(et)||"ios"===tt),at=(et&&/chrome\/\d+/.test(et),et&&/phantomjs/.test(et),et&&et.match(/firefox\/(\d+)/)),ct={}.watch,st=!1;if(Z)try{var ut={};Object.defineProperty(ut,"passive",{get:function(){st=!0}}),window.addEventListener("test-passive",null,ut)}catch(Ju){}var ft=function(){return void 0===X&&(X=!Z&&!Q&&"undefined"!==typeof t&&(t["process"]&&"server"===t["process"].env.VUE_ENV)),X},lt=Z&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function pt(t){return"function"===typeof t&&/native code/.test(t.toString())}var dt,ht="undefined"!==typeof Symbol&&pt(Symbol)&&"undefined"!==typeof Reflect&&pt(Reflect.ownKeys);dt="undefined"!==typeof Set&&pt(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var vt=D,yt=0,gt=function(){this.id=yt++,this.subs=[]};gt.prototype.addSub=function(t){this.subs.push(t)},gt.prototype.removeSub=function(t){b(this.subs,t)},gt.prototype.depend=function(){gt.target&>.target.addDep(this)},gt.prototype.notify=function(){var t=this.subs.slice();for(var e=0,n=t.length;e-1)if(i&&!w(o,"default"))a=!1;else if(""===a||a===C(t)){var s=ne(String,o.type);(s<0||c0&&(a=Ee(a,(e||"")+"_"+n),ke(a[0])&&ke(u)&&(f[s]=St(u.text+a[0].text),a.shift()),f.push.apply(f,a)):c(a)?ke(u)?f[s]=St(u.text+a):""!==a&&f.push(St(a)):ke(a)&&ke(u)?f[s]=St(u.text+a.text):(i(t._isVList)&&o(a.tag)&&r(a.key)&&o(e)&&(a.key="__vlist"+e+"_"+n+"__"),f.push(a)));return f}function Me(t){var e=t.$options.provide;e&&(t._provided="function"===typeof e?e.call(t):e)}function je(t){var e=Te(t.$options.inject,t);e&&(jt(!1),Object.keys(e).forEach(function(n){It(t,n,e[n])}),jt(!0))}function Te(t,e){if(t){for(var n=Object.create(null),r=ht?Reflect.ownKeys(t):Object.keys(t),o=0;o0,a=t?!!t.$stable:!i,c=t&&t.$key;if(t){if(t._normalized)return t._normalized;if(a&&r&&r!==n&&c===r.$key&&!i&&!r.$hasNormal)return r;for(var s in o={},t)t[s]&&"$"!==s[0]&&(o[s]=Ie(e,s,t[s]))}else o={};for(var u in e)u in o||(o[u]=Ne(e,u));return t&&Object.isExtensible(t)&&(t._normalized=o),W(o,"$stable",a),W(o,"$key",c),W(o,"$hasNormal",i),o}function Ie(t,e,n){var r=function(){var t=arguments.length?n.apply(null,arguments):n({});return t=t&&"object"===typeof t&&!Array.isArray(t)?[t]:Ce(t),t&&(0===t.length||1===t.length&&t[0].isComment)?void 0:t};return n.proxy&&Object.defineProperty(t,e,{get:r,enumerable:!0,configurable:!0}),r}function Ne(t,e){return function(){return t[e]}}function Re(t,e){var n,r,i,a,c;if(Array.isArray(t)||"string"===typeof t)for(n=new Array(t.length),r=0,i=t.length;r1?j(n):n;for(var r=j(arguments,1),o='event handler for "'+t+'"',i=0,a=n.length;idocument.createEvent("Event").timeStamp&&(Xn=function(){return Jn.now()})}function Zn(){var t,e;for(Kn=Xn(),qn=!0,Vn.sort(function(t,e){return t.id-e.id}),Wn=0;WnWn&&Vn[n].id>t.id)n--;Vn.splice(n+1,0,t)}else Vn.push(t);Yn||(Yn=!0,ye(Zn))}}var rr=0,or=function(t,e,n,r,o){this.vm=t,o&&(t._watcher=this),t._watchers.push(this),r?(this.deep=!!r.deep,this.user=!!r.user,this.lazy=!!r.lazy,this.sync=!!r.sync,this.before=r.before):this.deep=this.user=this.lazy=this.sync=!1,this.cb=n,this.id=++rr,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new dt,this.newDepIds=new dt,this.expression="","function"===typeof e?this.getter=e:(this.getter=K(e),this.getter||(this.getter=D)),this.value=this.lazy?void 0:this.get()};or.prototype.get=function(){var t;bt(this);var e=this.vm;try{t=this.getter.call(e,e)}catch(Ju){if(!this.user)throw Ju;re(Ju,e,'getter for watcher "'+this.expression+'"')}finally{this.deep&&me(t),_t(),this.cleanupDeps()}return t},or.prototype.addDep=function(t){var e=t.id;this.newDepIds.has(e)||(this.newDepIds.add(e),this.newDeps.push(t),this.depIds.has(e)||t.addSub(this))},or.prototype.cleanupDeps=function(){var t=this.deps.length;while(t--){var e=this.deps[t];this.newDepIds.has(e.id)||e.removeSub(this)}var n=this.depIds;this.depIds=this.newDepIds,this.newDepIds=n,this.newDepIds.clear(),n=this.deps,this.deps=this.newDeps,this.newDeps=n,this.newDeps.length=0},or.prototype.update=function(){this.lazy?this.dirty=!0:this.sync?this.run():nr(this)},or.prototype.run=function(){if(this.active){var t=this.get();if(t!==this.value||s(t)||this.deep){var e=this.value;if(this.value=t,this.user)try{this.cb.call(this.vm,t,e)}catch(Ju){re(Ju,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,t,e)}}},or.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},or.prototype.depend=function(){var t=this.deps.length;while(t--)this.deps[t].depend()},or.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||b(this.vm._watchers,this);var t=this.deps.length;while(t--)this.deps[t].removeSub(this);this.active=!1}};var ir={enumerable:!0,configurable:!0,get:D,set:D};function ar(t,e,n){ir.get=function(){return this[e][n]},ir.set=function(t){this[e][n]=t},Object.defineProperty(t,n,ir)}function cr(t){t._watchers=[];var e=t.$options;e.props&&sr(t,e.props),e.methods&&yr(t,e.methods),e.data?ur(t):Lt(t._data={},!0),e.computed&&pr(t,e.computed),e.watch&&e.watch!==ct&&gr(t,e.watch)}function sr(t,e){var n=t.$options.propsData||{},r=t._props={},o=t.$options._propKeys=[],i=!t.$parent;i||jt(!1);var a=function(i){o.push(i);var a=Zt(i,e,n,t);It(r,i,a),i in t||ar(t,"_props",i)};for(var c in e)a(c);jt(!0)}function ur(t){var e=t.$options.data;e=t._data="function"===typeof e?fr(e,t):e||{},f(e)||(e={});var n=Object.keys(e),r=t.$options.props,o=(t.$options.methods,n.length);while(o--){var i=n[o];0,r&&w(r,i)||q(i)||ar(t,"_data",i)}Lt(e,!0)}function fr(t,e){bt();try{return t.call(e,e)}catch(Ju){return re(Ju,e,"data()"),{}}finally{_t()}}var lr={lazy:!0};function pr(t,e){var n=t._computedWatchers=Object.create(null),r=ft();for(var o in e){var i=e[o],a="function"===typeof i?i:i.get;0,r||(n[o]=new or(t,a||D,D,lr)),o in t||dr(t,o,i)}}function dr(t,e,n){var r=!ft();"function"===typeof n?(ir.get=r?hr(e):vr(n),ir.set=D):(ir.get=n.get?r&&!1!==n.cache?hr(e):vr(n.get):D,ir.set=n.set||D),Object.defineProperty(t,e,ir)}function hr(t){return function(){var e=this._computedWatchers&&this._computedWatchers[t];if(e)return e.dirty&&e.evaluate(),gt.target&&e.depend(),e.value}}function vr(t){return function(){return t.call(this,this)}}function yr(t,e){t.$options.props;for(var n in e)t[n]="function"!==typeof e[n]?D:M(e[n],t)}function gr(t,e){for(var n in e){var r=e[n];if(Array.isArray(r))for(var o=0;o-1)return this;var n=j(arguments,1);return n.unshift(this),"function"===typeof t.install?t.install.apply(t,n):"function"===typeof t&&t.apply(null,n),e.push(t),this}}function Cr(t){t.mixin=function(t){return this.options=Xt(this.options,t),this}}function kr(t){t.cid=0;var e=1;t.extend=function(t){t=t||{};var n=this,r=n.cid,o=t._Ctor||(t._Ctor={});if(o[r])return o[r];var i=t.name||n.options.name;var a=function(t){this._init(t)};return a.prototype=Object.create(n.prototype),a.prototype.constructor=a,a.cid=e++,a.options=Xt(n.options,t),a["super"]=n,a.options.props&&Er(a),a.options.computed&&Mr(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,V.forEach(function(t){a[t]=n[t]}),i&&(a.options.components[i]=a),a.superOptions=n.options,a.extendOptions=t,a.sealedOptions=T({},a.options),o[r]=a,a}}function Er(t){var e=t.options.props;for(var n in e)ar(t.prototype,"_props",n)}function Mr(t){var e=t.options.computed;for(var n in e)dr(t.prototype,n,e[n])}function jr(t){V.forEach(function(e){t[e]=function(t,n){return n?("component"===e&&f(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&"function"===typeof n&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}})}function Tr(t){return t&&(t.Ctor.options.name||t.tag)}function Pr(t,e){return Array.isArray(t)?t.indexOf(e)>-1:"string"===typeof t?t.split(",").indexOf(e)>-1:!!l(t)&&t.test(e)}function Dr(t,e){var n=t.cache,r=t.keys,o=t._vnode;for(var i in n){var a=n[i];if(a){var c=Tr(a.componentOptions);c&&!e(c)&&Lr(n,i,r,o)}}}function Lr(t,e,n,r){var o=t[e];!o||r&&o.tag===r.tag||o.componentInstance.$destroy(),t[e]=null,b(n,e)}wr($r),br($r),jn($r),Ln($r),_n($r);var Ir=[String,RegExp,Array],Nr={name:"keep-alive",abstract:!0,props:{include:Ir,exclude:Ir,max:[String,Number]},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var t in this.cache)Lr(this.cache,t,this.keys)},mounted:function(){var t=this;this.$watch("include",function(e){Dr(t,function(t){return Pr(e,t)})}),this.$watch("exclude",function(e){Dr(t,function(t){return!Pr(e,t)})})},render:function(){var t=this.$slots.default,e=$n(t),n=e&&e.componentOptions;if(n){var r=Tr(n),o=this,i=o.include,a=o.exclude;if(i&&(!r||!Pr(i,r))||a&&r&&Pr(a,r))return e;var c=this,s=c.cache,u=c.keys,f=null==e.key?n.Ctor.cid+(n.tag?"::"+n.tag:""):e.key;s[f]?(e.componentInstance=s[f].componentInstance,b(u,f),u.push(f)):(s[f]=e,u.push(f),this.max&&u.length>parseInt(this.max)&&Lr(s,u[0],u,this._vnode)),e.data.keepAlive=!0}return e||t&&t[0]}},Rr={KeepAlive:Nr};function Fr(t){var e={get:function(){return U}};Object.defineProperty(t,"config",e),t.util={warn:vt,extend:T,mergeOptions:Xt,defineReactive:It},t.set=Nt,t.delete=Rt,t.nextTick=ye,t.observable=function(t){return Lt(t),t},t.options=Object.create(null),V.forEach(function(e){t.options[e+"s"]=Object.create(null)}),t.options._base=t,T(t.options.components,Rr),Ar(t),Cr(t),kr(t),jr(t)}Fr($r),Object.defineProperty($r.prototype,"$isServer",{get:ft}),Object.defineProperty($r.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty($r,"FunctionalRenderContext",{value:Qe}),$r.version="2.6.10";var Hr=y("style,class"),zr=y("input,textarea,option,select,progress"),Vr=function(t,e,n){return"value"===n&&zr(t)&&"button"!==e||"selected"===n&&"option"===t||"checked"===n&&"input"===t||"muted"===n&&"video"===t},Br=y("contenteditable,draggable,spellcheck"),Ur=y("events,caret,typing,plaintext-only"),Yr=function(t,e){return Xr(e)||"false"===e?"false":"contenteditable"===t&&Ur(e)?e:"true"},qr=y("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),Wr="http://www.w3.org/1999/xlink",Gr=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},Kr=function(t){return Gr(t)?t.slice(6,t.length):""},Xr=function(t){return null==t||!1===t};function Jr(t){var e=t.data,n=t,r=t;while(o(r.componentInstance))r=r.componentInstance._vnode,r&&r.data&&(e=Zr(r.data,e));while(o(n=n.parent))n&&n.data&&(e=Zr(e,n.data));return Qr(e.staticClass,e.class)}function Zr(t,e){return{staticClass:to(t.staticClass,e.staticClass),class:o(t.class)?[t.class,e.class]:e.class}}function Qr(t,e){return o(t)||o(e)?to(t,eo(e)):""}function to(t,e){return t?e?t+" "+e:t:e||""}function eo(t){return Array.isArray(t)?no(t):s(t)?ro(t):"string"===typeof t?t:""}function no(t){for(var e,n="",r=0,i=t.length;r-1?fo[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:fo[t]=/HTMLUnknownElement/.test(e.toString())}var po=y("text,number,password,search,email,tel,url");function ho(t){if("string"===typeof t){var e=document.querySelector(t);return e||document.createElement("div")}return t}function vo(t,e){var n=document.createElement(t);return"select"!==t?n:(e.data&&e.data.attrs&&void 0!==e.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n)}function yo(t,e){return document.createElementNS(oo[t],e)}function go(t){return document.createTextNode(t)}function mo(t){return document.createComment(t)}function bo(t,e,n){t.insertBefore(e,n)}function _o(t,e){t.removeChild(e)}function wo(t,e){t.appendChild(e)}function xo(t){return t.parentNode}function Oo(t){return t.nextSibling}function So(t){return t.tagName}function $o(t,e){t.textContent=e}function Ao(t,e){t.setAttribute(e,"")}var Co=Object.freeze({createElement:vo,createElementNS:yo,createTextNode:go,createComment:mo,insertBefore:bo,removeChild:_o,appendChild:wo,parentNode:xo,nextSibling:Oo,tagName:So,setTextContent:$o,setStyleScope:Ao}),ko={create:function(t,e){Eo(e)},update:function(t,e){t.data.ref!==e.data.ref&&(Eo(t,!0),Eo(e))},destroy:function(t){Eo(t,!0)}};function Eo(t,e){var n=t.data.ref;if(o(n)){var r=t.context,i=t.componentInstance||t.elm,a=r.$refs;e?Array.isArray(a[n])?b(a[n],i):a[n]===i&&(a[n]=void 0):t.data.refInFor?Array.isArray(a[n])?a[n].indexOf(i)<0&&a[n].push(i):a[n]=[i]:a[n]=i}}var Mo=new wt("",{},[]),jo=["create","activate","update","remove","destroy"];function To(t,e){return t.key===e.key&&(t.tag===e.tag&&t.isComment===e.isComment&&o(t.data)===o(e.data)&&Po(t,e)||i(t.isAsyncPlaceholder)&&t.asyncFactory===e.asyncFactory&&r(e.asyncFactory.error))}function Po(t,e){if("input"!==t.tag)return!0;var n,r=o(n=t.data)&&o(n=n.attrs)&&n.type,i=o(n=e.data)&&o(n=n.attrs)&&n.type;return r===i||po(r)&&po(i)}function Do(t,e,n){var r,i,a={};for(r=e;r<=n;++r)i=t[r].key,o(i)&&(a[i]=r);return a}function Lo(t){var e,n,a={},s=t.modules,u=t.nodeOps;for(e=0;ev?(l=r(n[m+1])?null:n[m+1].elm,O(t,l,n,h,m,i)):h>m&&$(t,e,p,v)}function k(t,e,n,r){for(var i=n;i-1?qo(t,e,n):qr(e)?Xr(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):Br(e)?t.setAttribute(e,Yr(e,n)):Gr(e)?Xr(n)?t.removeAttributeNS(Wr,Kr(e)):t.setAttributeNS(Wr,e,n):qo(t,e,n)}function qo(t,e,n){if(Xr(n))t.removeAttribute(e);else{if(nt&&!rt&&"TEXTAREA"===t.tagName&&"placeholder"===e&&""!==n&&!t.__ieph){var r=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",r)};t.addEventListener("input",r),t.__ieph=!0}t.setAttribute(e,n)}}var Wo={create:Uo,update:Uo};function Go(t,e){var n=e.elm,i=e.data,a=t.data;if(!(r(i.staticClass)&&r(i.class)&&(r(a)||r(a.staticClass)&&r(a.class)))){var c=Jr(e),s=n._transitionClasses;o(s)&&(c=to(c,eo(s))),c!==n._prevClass&&(n.setAttribute("class",c),n._prevClass=c)}}var Ko,Xo,Jo,Zo,Qo,ti,ei={create:Go,update:Go},ni=/[\w).+\-_$\]]/;function ri(t){var e,n,r,o,i,a=!1,c=!1,s=!1,u=!1,f=0,l=0,p=0,d=0;for(r=0;r=0;h--)if(v=t.charAt(h)," "!==v)break;v&&ni.test(v)||(u=!0)}}else void 0===o?(d=r+1,o=t.slice(0,r).trim()):y();function y(){(i||(i=[])).push(t.slice(d,r).trim()),d=r+1}if(void 0===o?o=t.slice(0,r).trim():0!==d&&y(),i)for(r=0;r-1?{exp:t.slice(0,Zo),key:'"'+t.slice(Zo+1)+'"'}:{exp:t,key:null};Xo=t,Zo=Qo=ti=0;while(!xi())Jo=wi(),Oi(Jo)?$i(Jo):91===Jo&&Si(Jo);return{exp:t.slice(0,Qo),key:t.slice(Qo+1,ti)}}function wi(){return Xo.charCodeAt(++Zo)}function xi(){return Zo>=Ko}function Oi(t){return 34===t||39===t}function Si(t){var e=1;Qo=Zo;while(!xi())if(t=wi(),Oi(t))$i(t);else if(91===t&&e++,93===t&&e--,0===e){ti=Zo;break}}function $i(t){var e=t;while(!xi())if(t=wi(),t===e)break}var Ai,Ci="__r",ki="__c";function Ei(t,e,n){n;var r=e.value,o=e.modifiers,i=t.tag,a=t.attrsMap.type;if(t.component)return mi(t,r,o),!1;if("select"===i)Ti(t,r,o);else if("input"===i&&"checkbox"===a)Mi(t,r,o);else if("input"===i&&"radio"===a)ji(t,r,o);else if("input"===i||"textarea"===i)Pi(t,r,o);else{if(!U.isReservedTag(i))return mi(t,r,o),!1}return!0}function Mi(t,e,n){var r=n&&n.number,o=hi(t,"value")||"null",i=hi(t,"true-value")||"true",a=hi(t,"false-value")||"false";ci(t,"checked","Array.isArray("+e+")?_i("+e+","+o+")>-1"+("true"===i?":("+e+")":":_q("+e+","+i+")")),pi(t,"change","var $$a="+e+",$$el=$event.target,$$c=$$el.checked?("+i+"):("+a+");if(Array.isArray($$a)){var $$v="+(r?"_n("+o+")":o)+",$$i=_i($$a,$$v);if($$el.checked){$$i<0&&("+bi(e,"$$a.concat([$$v])")+")}else{$$i>-1&&("+bi(e,"$$a.slice(0,$$i).concat($$a.slice($$i+1))")+")}}else{"+bi(e,"$$c")+"}",null,!0)}function ji(t,e,n){var r=n&&n.number,o=hi(t,"value")||"null";o=r?"_n("+o+")":o,ci(t,"checked","_q("+e+","+o+")"),pi(t,"change",bi(e,o),null,!0)}function Ti(t,e,n){var r=n&&n.number,o='Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = "_value" in o ? o._value : o.value;return '+(r?"_n(val)":"val")+"})",i="$event.target.multiple ? $$selectedVal : $$selectedVal[0]",a="var $$selectedVal = "+o+";";a=a+" "+bi(e,i),pi(t,"change",a,null,!0)}function Pi(t,e,n){var r=t.attrsMap.type,o=n||{},i=o.lazy,a=o.number,c=o.trim,s=!i&&"range"!==r,u=i?"change":"range"===r?Ci:"input",f="$event.target.value";c&&(f="$event.target.value.trim()"),a&&(f="_n("+f+")");var l=bi(e,f);s&&(l="if($event.target.composing)return;"+l),ci(t,"value","("+e+")"),pi(t,u,l,null,!0),(c||a)&&pi(t,"blur","$forceUpdate()")}function Di(t){if(o(t[Ci])){var e=nt?"change":"input";t[e]=[].concat(t[Ci],t[e]||[]),delete t[Ci]}o(t[ki])&&(t.change=[].concat(t[ki],t.change||[]),delete t[ki])}function Li(t,e,n){var r=Ai;return function o(){var i=e.apply(null,arguments);null!==i&&Ri(t,o,n,r)}}var Ii=se&&!(at&&Number(at[1])<=53);function Ni(t,e,n,r){if(Ii){var o=Kn,i=e;e=i._wrapper=function(t){if(t.target===t.currentTarget||t.timeStamp>=o||t.timeStamp<=0||t.target.ownerDocument!==document)return i.apply(this,arguments)}}Ai.addEventListener(t,e,st?{capture:n,passive:r}:n)}function Ri(t,e,n,r){(r||Ai).removeEventListener(t,e._wrapper||e,n)}function Fi(t,e){if(!r(t.data.on)||!r(e.data.on)){var n=e.data.on||{},o=t.data.on||{};Ai=e.elm,Di(n),xe(n,o,Ni,Ri,Li,e.context),Ai=void 0}}var Hi,zi={create:Fi,update:Fi};function Vi(t,e){if(!r(t.data.domProps)||!r(e.data.domProps)){var n,i,a=e.elm,c=t.data.domProps||{},s=e.data.domProps||{};for(n in o(s.__ob__)&&(s=e.data.domProps=T({},s)),c)n in s||(a[n]="");for(n in s){if(i=s[n],"textContent"===n||"innerHTML"===n){if(e.children&&(e.children.length=0),i===c[n])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===n&&"PROGRESS"!==a.tagName){a._value=i;var u=r(i)?"":String(i);Bi(a,u)&&(a.value=u)}else if("innerHTML"===n&&ao(a.tagName)&&r(a.innerHTML)){Hi=Hi||document.createElement("div"),Hi.innerHTML=""+i+"";var f=Hi.firstChild;while(a.firstChild)a.removeChild(a.firstChild);while(f.firstChild)a.appendChild(f.firstChild)}else if(i!==c[n])try{a[n]=i}catch(Ju){}}}}function Bi(t,e){return!t.composing&&("OPTION"===t.tagName||Ui(t,e)||Yi(t,e))}function Ui(t,e){var n=!0;try{n=document.activeElement!==t}catch(Ju){}return n&&t.value!==e}function Yi(t,e){var n=t.value,r=t._vModifiers;if(o(r)){if(r.number)return v(n)!==v(e);if(r.trim)return n.trim()!==e.trim()}return n!==e}var qi={create:Vi,update:Vi},Wi=x(function(t){var e={},n=/;(?![^(]*\))/g,r=/:(.+)/;return t.split(n).forEach(function(t){if(t){var n=t.split(r);n.length>1&&(e[n[0].trim()]=n[1].trim())}}),e});function Gi(t){var e=Ki(t.style);return t.staticStyle?T(t.staticStyle,e):e}function Ki(t){return Array.isArray(t)?P(t):"string"===typeof t?Wi(t):t}function Xi(t,e){var n,r={};if(e){var o=t;while(o.componentInstance)o=o.componentInstance._vnode,o&&o.data&&(n=Gi(o.data))&&T(r,n)}(n=Gi(t.data))&&T(r,n);var i=t;while(i=i.parent)i.data&&(n=Gi(i.data))&&T(r,n);return r}var Ji,Zi=/^--/,Qi=/\s*!important$/,ta=function(t,e,n){if(Zi.test(e))t.style.setProperty(e,n);else if(Qi.test(n))t.style.setProperty(C(e),n.replace(Qi,""),"important");else{var r=na(e);if(Array.isArray(n))for(var o=0,i=n.length;o-1?e.split(ia).forEach(function(e){return t.classList.add(e)}):t.classList.add(e);else{var n=" "+(t.getAttribute("class")||"")+" ";n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function ca(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(ia).forEach(function(e){return t.classList.remove(e)}):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{var n=" "+(t.getAttribute("class")||"")+" ",r=" "+e+" ";while(n.indexOf(r)>=0)n=n.replace(r," ");n=n.trim(),n?t.setAttribute("class",n):t.removeAttribute("class")}}function sa(t){if(t){if("object"===typeof t){var e={};return!1!==t.css&&T(e,ua(t.name||"v")),T(e,t),e}return"string"===typeof t?ua(t):void 0}}var ua=x(function(t){return{enterClass:t+"-enter",enterToClass:t+"-enter-to",enterActiveClass:t+"-enter-active",leaveClass:t+"-leave",leaveToClass:t+"-leave-to",leaveActiveClass:t+"-leave-active"}}),fa=Z&&!rt,la="transition",pa="animation",da="transition",ha="transitionend",va="animation",ya="animationend";fa&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(da="WebkitTransition",ha="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(va="WebkitAnimation",ya="webkitAnimationEnd"));var ga=Z?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()};function ma(t){ga(function(){ga(t)})}function ba(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),aa(t,e))}function _a(t,e){t._transitionClasses&&b(t._transitionClasses,e),ca(t,e)}function wa(t,e,n){var r=Oa(t,e),o=r.type,i=r.timeout,a=r.propCount;if(!o)return n();var c=o===la?ha:ya,s=0,u=function(){t.removeEventListener(c,f),n()},f=function(e){e.target===t&&++s>=a&&u()};setTimeout(function(){s0&&(n=la,f=a,l=i.length):e===pa?u>0&&(n=pa,f=u,l=s.length):(f=Math.max(a,u),n=f>0?a>u?la:pa:null,l=n?n===la?i.length:s.length:0);var p=n===la&&xa.test(r[da+"Property"]);return{type:n,timeout:f,propCount:l,hasTransform:p}}function Sa(t,e){while(t.length1}function Ma(t,e){!0!==e.data.show&&Aa(e)}var ja=Z?{create:Ma,activate:Ma,remove:function(t,e){!0!==t.data.show?Ca(t,e):e()}}:{},Ta=[Wo,ei,zi,qi,oa,ja],Pa=Ta.concat(Bo),Da=Lo({nodeOps:Co,modules:Pa});rt&&document.addEventListener("selectionchange",function(){var t=document.activeElement;t&&t.vmodel&&Va(t,"input")});var La={inserted:function(t,e,n,r){"select"===n.tag?(r.elm&&!r.elm._vOptions?Oe(n,"postpatch",function(){La.componentUpdated(t,e,n)}):Ia(t,e,n.context),t._vOptions=[].map.call(t.options,Fa)):("textarea"===n.tag||po(t.type))&&(t._vModifiers=e.modifiers,e.modifiers.lazy||(t.addEventListener("compositionstart",Ha),t.addEventListener("compositionend",za),t.addEventListener("change",za),rt&&(t.vmodel=!0)))},componentUpdated:function(t,e,n){if("select"===n.tag){Ia(t,e,n.context);var r=t._vOptions,o=t._vOptions=[].map.call(t.options,Fa);if(o.some(function(t,e){return!R(t,r[e])})){var i=t.multiple?e.value.some(function(t){return Ra(t,o)}):e.value!==e.oldValue&&Ra(e.value,o);i&&Va(t,"change")}}}};function Ia(t,e,n){Na(t,e,n),(nt||ot)&&setTimeout(function(){Na(t,e,n)},0)}function Na(t,e,n){var r=e.value,o=t.multiple;if(!o||Array.isArray(r)){for(var i,a,c=0,s=t.options.length;c-1,a.selected!==i&&(a.selected=i);else if(R(Fa(a),r))return void(t.selectedIndex!==c&&(t.selectedIndex=c));o||(t.selectedIndex=-1)}}function Ra(t,e){return e.every(function(e){return!R(e,t)})}function Fa(t){return"_value"in t?t._value:t.value}function Ha(t){t.target.composing=!0}function za(t){t.target.composing&&(t.target.composing=!1,Va(t.target,"input"))}function Va(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function Ba(t){return!t.componentInstance||t.data&&t.data.transition?t:Ba(t.componentInstance._vnode)}var Ua={bind:function(t,e,n){var r=e.value;n=Ba(n);var o=n.data&&n.data.transition,i=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;r&&o?(n.data.show=!0,Aa(n,function(){t.style.display=i})):t.style.display=r?i:"none"},update:function(t,e,n){var r=e.value,o=e.oldValue;if(!r!==!o){n=Ba(n);var i=n.data&&n.data.transition;i?(n.data.show=!0,r?Aa(n,function(){t.style.display=t.__vOriginalDisplay}):Ca(n,function(){t.style.display="none"})):t.style.display=r?t.__vOriginalDisplay:"none"}},unbind:function(t,e,n,r,o){o||(t.style.display=t.__vOriginalDisplay)}},Ya={model:La,show:Ua},qa={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function Wa(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?Wa($n(e.children)):t}function Ga(t){var e={},n=t.$options;for(var r in n.propsData)e[r]=t[r];var o=n._parentListeners;for(var i in o)e[S(i)]=o[i];return e}function Ka(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}function Xa(t){while(t=t.parent)if(t.data.transition)return!0}function Ja(t,e){return e.key===t.key&&e.tag===t.tag}var Za=function(t){return t.tag||Sn(t)},Qa=function(t){return"show"===t.name},tc={name:"transition",props:qa,abstract:!0,render:function(t){var e=this,n=this.$slots.default;if(n&&(n=n.filter(Za),n.length)){0;var r=this.mode;0;var o=n[0];if(Xa(this.$vnode))return o;var i=Wa(o);if(!i)return o;if(this._leaving)return Ka(t,o);var a="__transition-"+this._uid+"-";i.key=null==i.key?i.isComment?a+"comment":a+i.tag:c(i.key)?0===String(i.key).indexOf(a)?i.key:a+i.key:i.key;var s=(i.data||(i.data={})).transition=Ga(this),u=this._vnode,f=Wa(u);if(i.data.directives&&i.data.directives.some(Qa)&&(i.data.show=!0),f&&f.data&&!Ja(i,f)&&!Sn(f)&&(!f.componentInstance||!f.componentInstance._vnode.isComment)){var l=f.data.transition=T({},s);if("out-in"===r)return this._leaving=!0,Oe(l,"afterLeave",function(){e._leaving=!1,e.$forceUpdate()}),Ka(t,o);if("in-out"===r){if(Sn(i))return u;var p,d=function(){p()};Oe(s,"afterEnter",d),Oe(s,"enterCancelled",d),Oe(l,"delayLeave",function(t){p=t})}}return o}}},ec=T({tag:String,moveClass:String},qa);delete ec.mode;var nc={props:ec,beforeMount:function(){var t=this,e=this._update;this._update=function(n,r){var o=Pn(t);t.__patch__(t._vnode,t.kept,!1,!0),t._vnode=t.kept,o(),e.call(t,n,r)}},render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,o=this.$slots.default||[],i=this.children=[],a=Ga(this),c=0;cs&&(c.push(i=t.slice(s,o)),a.push(JSON.stringify(i)));var u=ri(r[1].trim());a.push("_s("+u+")"),c.push({"@binding":u}),s=o+r[0].length}return s\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,Oc=/^\s*((?:v-[\w-]+:|@|:|#)\[[^=]+\][^\s"'<>\/=]*)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,Sc="[a-zA-Z_][\\-\\.0-9_a-zA-Z"+Y.source+"]*",$c="((?:"+Sc+"\\:)?"+Sc+")",Ac=new RegExp("^<"+$c),Cc=/^\s*(\/?)>/,kc=new RegExp("^<\\/"+$c+"[^>]*>"),Ec=/^]+>/i,Mc=/^",""":'"',"&":"&"," ":"\n"," ":"\t","'":"'"},Lc=/&(?:lt|gt|quot|amp|#39);/g,Ic=/&(?:lt|gt|quot|amp|#39|#10|#9);/g,Nc=y("pre,textarea",!0),Rc=function(t,e){return t&&Nc(t)&&"\n"===e[0]};function Fc(t,e){var n=e?Ic:Lc;return t.replace(n,function(t){return Dc[t]})}function Hc(t,e){var n,r,o=[],i=e.expectHTML,a=e.isUnaryTag||L,c=e.canBeLeftOpenTag||L,s=0;while(t){if(n=t,r&&Tc(r)){var u=0,f=r.toLowerCase(),l=Pc[f]||(Pc[f]=new RegExp("([\\s\\S]*?)(]*>)","i")),p=t.replace(l,function(t,n,r){return u=r.length,Tc(f)||"noscript"===f||(n=n.replace(//g,"$1").replace(//g,"$1")),Rc(f,n)&&(n=n.slice(1)),e.chars&&e.chars(n),""});s+=t.length-p.length,t=p,A(f,s-u,s)}else{var d=t.indexOf("<");if(0===d){if(Mc.test(t)){var h=t.indexOf("--\x3e");if(h>=0){e.shouldKeepComment&&e.comment(t.substring(4,h),s,s+h+3),O(h+3);continue}}if(jc.test(t)){var v=t.indexOf("]>");if(v>=0){O(v+2);continue}}var y=t.match(Ec);if(y){O(y[0].length);continue}var g=t.match(kc);if(g){var m=s;O(g[0].length),A(g[1],m,s);continue}var b=S();if(b){$(b),Rc(b.tagName,t)&&O(1);continue}}var _=void 0,w=void 0,x=void 0;if(d>=0){w=t.slice(d);while(!kc.test(w)&&!Ac.test(w)&&!Mc.test(w)&&!jc.test(w)){if(x=w.indexOf("<",1),x<0)break;d+=x,w=t.slice(d)}_=t.substring(0,d)}d<0&&(_=t),_&&O(_.length),e.chars&&_&&e.chars(_,s-_.length,s)}if(t===n){e.chars&&e.chars(t);break}}function O(e){s+=e,t=t.substring(e)}function S(){var e=t.match(Ac);if(e){var n,r,o={tagName:e[1],attrs:[],start:s};O(e[0].length);while(!(n=t.match(Cc))&&(r=t.match(Oc)||t.match(xc)))r.start=s,O(r[0].length),r.end=s,o.attrs.push(r);if(n)return o.unarySlash=n[1],O(n[0].length),o.end=s,o}}function $(t){var n=t.tagName,s=t.unarySlash;i&&("p"===r&&wc(n)&&A(r),c(n)&&r===n&&A(n));for(var u=a(n)||!!s,f=t.attrs.length,l=new Array(f),p=0;p=0;a--)if(o[a].lowerCasedTag===c)break}else a=0;if(a>=0){for(var u=o.length-1;u>=a;u--)e.end&&e.end(o[u].tag,n,i);o.length=a,r=a&&o[a-1].tag}else"br"===c?e.start&&e.start(t,[],!0,n,i):"p"===c&&(e.start&&e.start(t,[],!1,n,i),e.end&&e.end(t,n,i))}A()}var zc,Vc,Bc,Uc,Yc,qc,Wc,Gc,Kc=/^@|^v-on:/,Xc=/^v-|^@|^:/,Jc=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,Zc=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,Qc=/^\(|\)$/g,ts=/^\[.*\]$/,es=/:(.*)$/,ns=/^:|^\.|^v-bind:/,rs=/\.[^.\]]+(?=[^\]]*$)/g,os=/^v-slot(:|$)|^#/,is=/[\r\n]/,as=/\s+/g,cs=x(mc.decode),ss="_empty_";function us(t,e,n){return{type:1,tag:t,attrsList:e,attrsMap:Ms(e),rawAttrsMap:{},parent:n,children:[]}}function fs(t,e){zc=e.warn||ii,qc=e.isPreTag||L,Wc=e.mustUseProp||L,Gc=e.getTagNamespace||L;var n=e.isReservedTag||L;(function(t){return!!t.component||!n(t.tag)}),Bc=ai(e.modules,"transformNode"),Uc=ai(e.modules,"preTransformNode"),Yc=ai(e.modules,"postTransformNode"),Vc=e.delimiters;var r,o,i=[],a=!1!==e.preserveWhitespace,c=e.whitespace,s=!1,u=!1;function f(t){if(l(t),s||t.processed||(t=ds(t,e)),i.length||t===r||r.if&&(t.elseif||t.else)&&ws(r,{exp:t.elseif,block:t}),o&&!t.forbidden)if(t.elseif||t.else)bs(t,o);else{if(t.slotScope){var n=t.slotTarget||'"default"';(o.scopedSlots||(o.scopedSlots={}))[n]=t}o.children.push(t),t.parent=o}t.children=t.children.filter(function(t){return!t.slotScope}),l(t),t.pre&&(s=!1),qc(t.tag)&&(u=!1);for(var a=0;a|^function\s*(?:[\w$]+)?\s*\(/,tu=/\([^)]*?\);*$/,eu=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/,nu={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},ru={esc:["Esc","Escape"],tab:"Tab",enter:"Enter",space:[" ","Spacebar"],up:["Up","ArrowUp"],left:["Left","ArrowLeft"],right:["Right","ArrowRight"],down:["Down","ArrowDown"],delete:["Backspace","Delete","Del"]},ou=function(t){return"if("+t+")return null;"},iu={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:ou("$event.target !== $event.currentTarget"),ctrl:ou("!$event.ctrlKey"),shift:ou("!$event.shiftKey"),alt:ou("!$event.altKey"),meta:ou("!$event.metaKey"),left:ou("'button' in $event && $event.button !== 0"),middle:ou("'button' in $event && $event.button !== 1"),right:ou("'button' in $event && $event.button !== 2")};function au(t,e){var n=e?"nativeOn:":"on:",r="",o="";for(var i in t){var a=cu(t[i]);t[i]&&t[i].dynamic?o+=i+","+a+",":r+='"'+i+'":'+a+","}return r="{"+r.slice(0,-1)+"}",o?n+"_d("+r+",["+o.slice(0,-1)+"])":n+r}function cu(t){if(!t)return"function(){}";if(Array.isArray(t))return"["+t.map(function(t){return cu(t)}).join(",")+"]";var e=eu.test(t.value),n=Qs.test(t.value),r=eu.test(t.value.replace(tu,""));if(t.modifiers){var o="",i="",a=[];for(var c in t.modifiers)if(iu[c])i+=iu[c],nu[c]&&a.push(c);else if("exact"===c){var s=t.modifiers;i+=ou(["ctrl","shift","alt","meta"].filter(function(t){return!s[t]}).map(function(t){return"$event."+t+"Key"}).join("||"))}else a.push(c);a.length&&(o+=su(a)),i&&(o+=i);var u=e?"return "+t.value+"($event)":n?"return ("+t.value+")($event)":r?"return "+t.value:t.value;return"function($event){"+o+u+"}"}return e||n?t.value:"function($event){"+(r?"return "+t.value:t.value)+"}"}function su(t){return"if(!$event.type.indexOf('key')&&"+t.map(uu).join("&&")+")return null;"}function uu(t){var e=parseInt(t,10);if(e)return"$event.keyCode!=="+e;var n=nu[t],r=ru[t];return"_k($event.keyCode,"+JSON.stringify(t)+","+JSON.stringify(n)+",$event.key,"+JSON.stringify(r)+")"}function fu(t,e){t.wrapListeners=function(t){return"_g("+t+","+e.value+")"}}function lu(t,e){t.wrapData=function(n){return"_b("+n+",'"+t.tag+"',"+e.value+","+(e.modifiers&&e.modifiers.prop?"true":"false")+(e.modifiers&&e.modifiers.sync?",true":"")+")"}}var pu={on:fu,bind:lu,cloak:D},du=function(t){this.options=t,this.warn=t.warn||ii,this.transforms=ai(t.modules,"transformCode"),this.dataGenFns=ai(t.modules,"genData"),this.directives=T(T({},pu),t.directives);var e=t.isReservedTag||L;this.maybeComponent=function(t){return!!t.component||!e(t.tag)},this.onceId=0,this.staticRenderFns=[],this.pre=!1};function hu(t,e){var n=new du(e),r=t?vu(t,n):'_c("div")';return{render:"with(this){return "+r+"}",staticRenderFns:n.staticRenderFns}}function vu(t,e){if(t.parent&&(t.pre=t.pre||t.parent.pre),t.staticRoot&&!t.staticProcessed)return yu(t,e);if(t.once&&!t.onceProcessed)return gu(t,e);if(t.for&&!t.forProcessed)return _u(t,e);if(t.if&&!t.ifProcessed)return mu(t,e);if("template"!==t.tag||t.slotTarget||e.pre){if("slot"===t.tag)return Du(t,e);var n;if(t.component)n=Lu(t.component,t,e);else{var r;(!t.plain||t.pre&&e.maybeComponent(t))&&(r=wu(t,e));var o=t.inlineTemplate?null:ku(t,e,!0);n="_c('"+t.tag+"'"+(r?","+r:"")+(o?","+o:"")+")"}for(var i=0;i>>0}function Au(t){return 1===t.type&&("slot"===t.tag||t.children.some(Au))}function Cu(t,e){var n=t.attrsMap["slot-scope"];if(t.if&&!t.ifProcessed&&!n)return mu(t,e,Cu,"null");if(t.for&&!t.forProcessed)return _u(t,e,Cu);var r=t.slotScope===ss?"":String(t.slotScope),o="function("+r+"){return "+("template"===t.tag?t.if&&n?"("+t.if+")?"+(ku(t,e)||"undefined")+":undefined":ku(t,e)||"undefined":vu(t,e))+"}",i=r?"":",proxy:true";return"{key:"+(t.slotTarget||'"default"')+",fn:"+o+i+"}"}function ku(t,e,n,r,o){var i=t.children;if(i.length){var a=i[0];if(1===i.length&&a.for&&"template"!==a.tag&&"slot"!==a.tag){var c=n?e.maybeComponent(a)?",1":",0":"";return""+(r||vu)(a,e)+c}var s=n?Eu(i,e.maybeComponent):0,u=o||ju;return"["+i.map(function(t){return u(t,e)}).join(",")+"]"+(s?","+s:"")}}function Eu(t,e){for(var n=0,r=0;r':'
',zu.innerHTML.indexOf(" ")>0}var qu=!!Z&&Yu(!1),Wu=!!Z&&Yu(!0),Gu=x(function(t){var e=ho(t);return e&&e.innerHTML}),Ku=$r.prototype.$mount;function Xu(t){if(t.outerHTML)return t.outerHTML;var e=document.createElement("div");return e.appendChild(t.cloneNode(!0)),e.innerHTML}$r.prototype.$mount=function(t,e){if(t=t&&ho(t),t===document.body||t===document.documentElement)return this;var n=this.$options;if(!n.render){var r=n.template;if(r)if("string"===typeof r)"#"===r.charAt(0)&&(r=Gu(r));else{if(!r.nodeType)return this;r=r.innerHTML}else t&&(r=Xu(t));if(r){0;var o=Uu(r,{outputSourceRange:!1,shouldDecodeNewlines:qu,shouldDecodeNewlinesForHref:Wu,delimiters:n.delimiters,comments:n.comments},this),i=o.render,a=o.staticRenderFns;n.render=i,n.staticRenderFns=a}}return Ku.call(this,t,e)},$r.compile=Uu,e["a"]=$r}).call(this,n("c8ba"))},a0a8:function(t,e,n){var r=n("e4e1"),o=n("dcc3");t.exports=n("45e2")?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},a243:function(t,e,n){var r=n("d13f");r(r.S,"Number",{isInteger:n("3457")})},a24c:function(t,e,n){var r=n("b808"),o=n("1ad4").set,i=r.MutationObserver||r.WebKitMutationObserver,a=r.process,c=r.Promise,s="process"==n("71fa")(a);t.exports=function(){var t,e,n,u=function(){var r,o;s&&(r=a.domain)&&r.exit();while(t){o=t.fn,t=t.next;try{o()}catch(i){throw t?n():e=void 0,i}}e=void 0,r&&r.enter()};if(s)n=function(){a.nextTick(u)};else if(!i||r.navigator&&r.navigator.standalone)if(c&&c.resolve){var f=c.resolve(void 0);n=function(){f.then(u)}}else n=function(){o.call(r,u)};else{var l=!0,p=document.createTextNode("");new i(u).observe(p,{characterData:!0}),n=function(){p.data=l=!l}}return function(r){var o={fn:r,next:void 0};e&&(e.next=o),t||(t=o,n()),e=o}}},a274:function(t,e,n){var r=n("71fa"),o=n("b67f")("toStringTag"),i="Arguments"==r(function(){return arguments}()),a=function(t,e){try{return t[e]}catch(n){}};t.exports=function(t){var e,n,c;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=a(e=Object(t),o))?n:i?r(e):"Object"==(c=r(e))&&"function"==typeof e.callee?"Arguments":c}},a402:function(t,e,n){"use strict";var r=n("9ed1"),o=n("696b"),i=n("bf41"),a=n("4cf4"),c=n("d43f"),s=Object.assign;t.exports=!s||n("b629")(function(){var t={},e={},n=Symbol(),r="abcdefghijklmnopqrst";return t[n]=7,r.split("").forEach(function(t){e[t]=t}),7!=s({},t)[n]||Object.keys(s({},e)).join("")!=r})?function(t,e){var n=a(t),s=arguments.length,u=1,f=o.f,l=i.f;while(s>u){var p,d=c(arguments[u++]),h=f?r(d).concat(f(d)):r(d),v=h.length,y=0;while(v>y)l.call(d,p=h[y++])&&(n[p]=d[p])}return n}:s},a47f:function(t,e,n){t.exports=!n("7d95")&&!n("d782")(function(){return 7!=Object.defineProperty(n("12fd")("div"),"a",{get:function(){return 7}}).a})},a481:function(t,e,n){"use strict";var r=n("cb7c"),o=n("4bf8"),i=n("9def"),a=n("4588"),c=n("0390"),s=n("5f1b"),u=Math.max,f=Math.min,l=Math.floor,p=/\$([$&`']|\d\d?|<[^>]*>)/g,d=/\$([$&`']|\d\d?)/g,h=function(t){return void 0===t?t:String(t)};n("214f")("replace",2,function(t,e,n,v){return[function(r,o){var i=t(this),a=void 0==r?void 0:r[e];return void 0!==a?a.call(r,i,o):n.call(String(i),r,o)},function(t,e){var o=v(n,t,this,e);if(o.done)return o.value;var l=r(t),p=String(this),d="function"===typeof e;d||(e=String(e));var g=l.global;if(g){var m=l.unicode;l.lastIndex=0}var b=[];while(1){var _=s(l,p);if(null===_)break;if(b.push(_),!g)break;var w=String(_[0]);""===w&&(l.lastIndex=c(p,i(l.lastIndex),m))}for(var x="",O=0,S=0;S=O&&(x+=p.slice(O,A)+j,O=A+$.length)}return x+p.slice(O)}];function y(t,e,r,i,a,c){var s=r+t.length,u=i.length,f=d;return void 0!==a&&(a=o(a),f=p),n.call(c,f,function(n,o){var c;switch(o.charAt(0)){case"$":return"$";case"&":return t;case"`":return e.slice(0,r);case"'":return e.slice(s);case"<":c=a[o.slice(1,-1)];break;default:var f=+o;if(0===f)return o;if(f>u){var p=l(f/10);return 0===p?o:p<=u?void 0===i[p-1]?o.charAt(1):i[p-1]+o.charAt(1):o}c=i[f-1]}return void 0===c?"":c})}})},a4bb:function(t,e,n){t.exports=n("fda6")},a5ab:function(t,e,n){var r=n("a812"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},a638:function(t,e){t.exports={}},a745:function(t,e,n){t.exports=n("d604")},a7d3:function(t,e){var n=t.exports={version:"2.6.5"};"number"==typeof __e&&(__e=n)},a812:function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},a9f2:function(t,e,n){var r=n("9184");t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}}},aa77:function(t,e,n){var r=n("5ca1"),o=n("be13"),i=n("79e5"),a=n("fdef"),c="["+a+"]",s="​…",u=RegExp("^"+c+c+"*"),f=RegExp(c+c+"*$"),l=function(t,e,n){var o={},c=i(function(){return!!a[t]()||s[t]()!=s}),u=o[t]=c?e(p):a[t];n&&(o[n]=u),r(r.P+r.F*c,"String",o)},p=l.trim=function(t,e){return t=String(o(t)),1&e&&(t=t.replace(u,"")),2&e&&(t=t.replace(f,"")),t};t.exports=l},aa82:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=function(t){return(0,r.withParams)({type:"requiredIf",prop:t},function(e,n){return!(0,r.ref)(t,this,n)||(0,r.req)(e)})}},aab6:function(t,e,n){var r=n("e4e1").f,o=n("0f4a"),i=n("b67f")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},aae3:function(t,e,n){var r=n("d3f4"),o=n("2d95"),i=n("2b4c")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},ab4c:function(t,e){t.exports=function(t){return"object"===typeof t?null!==t:"function"===typeof t}},ac6a:function(t,e,n){for(var r=n("cadf"),o=n("0d58"),i=n("2aba"),a=n("7726"),c=n("32e9"),s=n("84f2"),u=n("2b4c"),f=u("iterator"),l=u("toStringTag"),p=s.Array,d={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},h=o(d),v=0;vf)if(c=s[f++],c!=c)return!0}else for(;u>f;f++)if((t||f in s)&&s[f]===n)return t||f||0;return!t&&-1}}},c5f6:function(t,e,n){"use strict";var r=n("7726"),o=n("69a8"),i=n("2d95"),a=n("5dbc"),c=n("6a99"),s=n("79e5"),u=n("9093").f,f=n("11e9").f,l=n("86cc").f,p=n("aa77").trim,d="Number",h=r[d],v=h,y=h.prototype,g=i(n("2aeb")(y))==d,m="trim"in String.prototype,b=function(t){var e=c(t,!1);if("string"==typeof e&&e.length>2){e=m?e.trim():p(e,3);var n,r,o,i=e.charCodeAt(0);if(43===i||45===i){if(n=e.charCodeAt(2),88===n||120===n)return NaN}else if(48===i){switch(e.charCodeAt(1)){case 66:case 98:r=2,o=49;break;case 79:case 111:r=8,o=55;break;default:return+e}for(var a,s=e.slice(2),u=0,f=s.length;uo)return NaN;return parseInt(s,r)}}return+e};if(!h(" 0o1")||!h("0b1")||h("+0x1")){h=function(t){var e=arguments.length<1?0:t,n=this;return n instanceof h&&(g?s(function(){y.valueOf.call(n)}):i(n)!=d)?a(new v(b(e)),n,h):b(e)};for(var _,w=n("9e1e")?u(v):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),x=0;w.length>x;x++)o(v,_=w[x])&&!o(h,_)&&l(h,_,f(v,_));h.prototype=y,y.constructor=h,n("2aba")(r,d,h)}},c609:function(t,e,n){"use strict";var r=n("d13f"),o=n("03ca"),i=n("75c9");r(r.S,"Promise",{try:function(t){var e=o.f(this),n=i(t);return(n.e?e.reject:e.resolve)(n.v),e.promise}})},c69a:function(t,e,n){t.exports=!n("9e1e")&&!n("79e5")(function(){return 7!=Object.defineProperty(n("230e")("div"),"a",{get:function(){return 7}}).a})},c764:function(t,e,n){n("dc9b"),t.exports=n("a7d3").Object.values},c8ba:function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(r){"object"===typeof window&&(n=window)}t.exports=n},c8bb:function(t,e,n){t.exports=n("89ca")},c99d:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=(0,r.withParams)({type:"ipAddress"},function(t){if(!(0,r.req)(t))return!0;if("string"!==typeof t)return!1;var e=t.split(".");return 4===e.length&&e.every(o)});var o=function(t){if(t.length>3||0===t.length)return!1;if("0"===t[0]&&"0"!==t)return!1;if(!t.match(/^\d+$/))return!1;var e=0|+t;return e>=0&&e<=255}},ca38:function(t,e){var n=t.exports={version:"2.6.5"};"number"==typeof __e&&(__e=n)},ca5a:function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++n+r).toString(36))}},cadf:function(t,e,n){"use strict";var r=n("9c6c"),o=n("d53b"),i=n("84f2"),a=n("6821");t.exports=n("01f9")(Array,"Array",function(t,e){this._t=a(t),this._i=0,this._k=e},function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,o(1)):o(0,"keys"==e?n:"values"==e?t[n]:[n,t[n]])},"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},cb7c:function(t,e,n){var r=n("d3f4");t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},cc1d:function(t,e,n){var r=n("58b9"),o=n("04cf"),i=n("4052");t.exports=function(t){return function(e,n,a){var c,s=r(e),u=o(s.length),f=i(a,u);if(t&&n!=n){while(u>f)if(c=s[f++],c!=c)return!0}else for(;u>f;f++)if((t||f in s)&&s[f]===n)return t||f||0;return!t&&-1}}},cc20:function(t,e,n){"use strict";var r=n("9184");function o(t){var e,n;this.promise=new t(function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r}),this.resolve=r(e),this.reject=r(n)}t.exports.f=function(t){return new o(t)}},cd1c:function(t,e,n){var r=n("e853");t.exports=function(t,e){return new(r(t))(e)}},ce10:function(t,e,n){var r=n("69a8"),o=n("6821"),i=n("c366")(!1),a=n("613b")("IE_PROTO");t.exports=function(t,e){var n,c=o(t),s=0,u=[];for(n in c)n!=a&&r(c,n)&&u.push(n);while(e.length>s)r(c,n=e[s++])&&(~i(u,n)||u.push(n));return u}},cebc:function(t,e,n){"use strict";var r=n("268f"),o=n.n(r),i=n("e265"),a=n.n(i),c=n("a4bb"),s=n.n(c),u=n("85f2"),f=n.n(u);function l(t,e,n){return e in t?f()(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function p(t){for(var e=1;eu)i.call(a,n=c[u++])&&f.push(t?[n,a[n]]:a[n]);return f}}},d127:function(t,e,n){n("0a0a")("asyncIterator")},d13f:function(t,e,n){var r=n("da3c"),o=n("a7d3"),i=n("bc25"),a=n("8ce0"),c=n("43c8"),s="prototype",u=function(t,e,n){var f,l,p,d=t&u.F,h=t&u.G,v=t&u.S,y=t&u.P,g=t&u.B,m=t&u.W,b=h?o:o[e]||(o[e]={}),_=b[s],w=h?r:v?r[e]:(r[e]||{})[s];for(f in h&&(n=e),n)l=!d&&w&&void 0!==w[f],l&&c(b,f)||(p=l?w[f]:n[f],b[f]=h&&"function"!=typeof w[f]?n[f]:g&&l?i(p,r):m&&w[f]==p?function(t){var e=function(e,n,r){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(e);case 2:return new t(e,n)}return new t(e,n,r)}return t.apply(this,arguments)};return e[s]=t[s],e}(p):y&&"function"==typeof p?i(Function.call,p):p,y&&((b.virtual||(b.virtual={}))[f]=p,t&u.R&&_&&!_[f]&&a(_,f,p)))};u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,t.exports=u},d24f:function(t,e,n){n("0a0a")("observable")},d256:function(t,e,n){"use strict";var r=n("da3c"),o=n("43c8"),i=n("7d95"),a=n("d13f"),c=n("2312"),s=n("6277").KEY,u=n("d782"),f=n("7772"),l=n("c0d8"),p=n("7b00"),d=n("1b55"),h=n("fda1"),v=n("0a0a"),y=n("d2d6"),g=n("b5aa"),m=n("0f89"),b=n("6f8a"),_=n("6a9b"),w=n("2ea1"),x=n("f845"),O=n("7108"),S=n("565d"),$=n("626e"),A=n("3adc"),C=n("7633"),k=$.f,E=A.f,M=S.f,j=r.Symbol,T=r.JSON,P=T&&T.stringify,D="prototype",L=d("_hidden"),I=d("toPrimitive"),N={}.propertyIsEnumerable,R=f("symbol-registry"),F=f("symbols"),H=f("op-symbols"),z=Object[D],V="function"==typeof j,B=r.QObject,U=!B||!B[D]||!B[D].findChild,Y=i&&u(function(){return 7!=O(E({},"a",{get:function(){return E(this,"a",{value:7}).a}})).a})?function(t,e,n){var r=k(z,e);r&&delete z[e],E(t,e,n),r&&t!==z&&E(z,e,r)}:E,q=function(t){var e=F[t]=O(j[D]);return e._k=t,e},W=V&&"symbol"==typeof j.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof j},G=function(t,e,n){return t===z&&G(H,e,n),m(t),e=w(e,!0),m(n),o(F,e)?(n.enumerable?(o(t,L)&&t[L][e]&&(t[L][e]=!1),n=O(n,{enumerable:x(0,!1)})):(o(t,L)||E(t,L,x(1,{})),t[L][e]=!0),Y(t,e,n)):E(t,e,n)},K=function(t,e){m(t);var n,r=y(e=_(e)),o=0,i=r.length;while(i>o)G(t,n=r[o++],e[n]);return t},X=function(t,e){return void 0===e?O(t):K(O(t),e)},J=function(t){var e=N.call(this,t=w(t,!0));return!(this===z&&o(F,t)&&!o(H,t))&&(!(e||!o(this,t)||!o(F,t)||o(this,L)&&this[L][t])||e)},Z=function(t,e){if(t=_(t),e=w(e,!0),t!==z||!o(F,e)||o(H,e)){var n=k(t,e);return!n||!o(F,e)||o(t,L)&&t[L][e]||(n.enumerable=!0),n}},Q=function(t){var e,n=M(_(t)),r=[],i=0;while(n.length>i)o(F,e=n[i++])||e==L||e==s||r.push(e);return r},tt=function(t){var e,n=t===z,r=M(n?H:_(t)),i=[],a=0;while(r.length>a)!o(F,e=r[a++])||n&&!o(z,e)||i.push(F[e]);return i};V||(j=function(){if(this instanceof j)throw TypeError("Symbol is not a constructor!");var t=p(arguments.length>0?arguments[0]:void 0),e=function(n){this===z&&e.call(H,n),o(this,L)&&o(this[L],t)&&(this[L][t]=!1),Y(this,t,x(1,n))};return i&&U&&Y(z,t,{configurable:!0,set:e}),q(t)},c(j[D],"toString",function(){return this._k}),$.f=Z,A.f=G,n("d876").f=S.f=Q,n("d74e").f=J,n("31c2").f=tt,i&&!n("b457")&&c(z,"propertyIsEnumerable",J,!0),h.f=function(t){return q(d(t))}),a(a.G+a.W+a.F*!V,{Symbol:j});for(var et="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),nt=0;et.length>nt;)d(et[nt++]);for(var rt=C(d.store),ot=0;rt.length>ot;)v(rt[ot++]);a(a.S+a.F*!V,"Symbol",{for:function(t){return o(R,t+="")?R[t]:R[t]=j(t)},keyFor:function(t){if(!W(t))throw TypeError(t+" is not a symbol!");for(var e in R)if(R[e]===t)return e},useSetter:function(){U=!0},useSimple:function(){U=!1}}),a(a.S+a.F*!V,"Object",{create:X,defineProperty:G,defineProperties:K,getOwnPropertyDescriptor:Z,getOwnPropertyNames:Q,getOwnPropertySymbols:tt}),T&&a(a.S+a.F*(!V||u(function(){var t=j();return"[null]"!=P([t])||"{}"!=P({a:t})||"{}"!=P(Object(t))})),"JSON",{stringify:function(t){var e,n,r=[t],o=1;while(arguments.length>o)r.push(arguments[o++]);if(n=e=r[1],(b(e)||void 0!==t)&&!W(t))return g(e)||(e=function(t,e){if("function"==typeof n&&(e=n.call(this,t,e)),!W(e))return e}),r[1]=e,P.apply(T,r)}}),j[D][I]||n("8ce0")(j[D],I,j[D].valueOf),l(j,"Symbol"),l(Math,"Math",!0),l(r.JSON,"JSON",!0)},d294:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=function(){for(var t=arguments.length,e=Array(t),n=0;n0&&e.reduce(function(e,n){return e||n.apply(t,r)},!1)})}},d2c8:function(t,e,n){var r=n("aae3"),o=n("be13");t.exports=function(t,e,n){if(r(e))throw TypeError("String#"+n+" doesn't accept regex!");return String(o(t))}},d2d6:function(t,e,n){var r=n("7633"),o=n("31c2"),i=n("d74e");t.exports=function(t){var e=r(t),n=o.f;if(n){var a,c=n(t),s=i.f,u=0;while(c.length>u)s.call(t,a=c[u++])&&e.push(a)}return e}},d38f:function(t,e,n){var r=n("7d8a"),o=n("1b55")("iterator"),i=n("b22a");t.exports=n("a7d3").isIterable=function(t){var e=Object(t);return void 0!==e[o]||"@@iterator"in e||i.hasOwnProperty(r(e))}},d3f4:function(t,e){t.exports=function(t){return"object"===typeof t?null!==t:"function"===typeof t}},d43f:function(t,e,n){var r=n("71fa");t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},d4f4:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=(0,r.withParams)({type:"required"},r.req)},d53b:function(t,e){t.exports=function(t,e){return{value:e,done:!!t}}},d604:function(t,e,n){n("1938"),t.exports=n("a7d3").Array.isArray},d74e:function(t,e){e.f={}.propertyIsEnumerable},d782:function(t,e){t.exports=function(t){try{return!!t()}catch(e){return!0}}},d876:function(t,e,n){var r=n("2695"),o=n("0029").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},d8db:function(t,e,n){var r=n("b808").document;t.exports=r&&r.documentElement},d8e8:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},d9fc:function(t,e,n){"use strict";var r=n("569f"),o=n("ca38"),i=n("b808"),a=n("1aa7"),c=n("1c08");r(r.P+r.R,"Promise",{finally:function(t){var e=a(this,o.Promise||i.Promise),n="function"==typeof t;return this.then(n?function(n){return c(e,t()).then(function(){return n})}:t,n?function(n){return c(e,t()).then(function(){throw n})}:t)}})},da3c:function(t,e){var n=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},db0c:function(t,e,n){t.exports=n("c764")},dc9b:function(t,e,n){var r=n("d13f"),o=n("cff3")(!1);r(r.S,"Object",{values:function(t){return o(t)}})},dcc3:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},dd04:function(t,e,n){n("12fd9"),n("93c4"),n("b42c"),n("5b5f"),n("b604"),n("c609"),t.exports=n("a7d3").Promise},decf:function(t,e,n){var r=n("0f89"),o=n("6f8a"),i=n("03ca");t.exports=function(t,e){if(r(t),o(e)&&e.constructor===t)return e;var n=i.f(t),a=n.resolve;return a(e),n.promise}},df0a:function(t,e,n){var r,o,i,a=n("bc25"),c=n("196c"),s=n("103a"),u=n("12fd"),f=n("da3c"),l=f.process,p=f.setImmediate,d=f.clearImmediate,h=f.MessageChannel,v=f.Dispatch,y=0,g={},m="onreadystatechange",b=function(){var t=+this;if(g.hasOwnProperty(t)){var e=g[t];delete g[t],e()}},_=function(t){b.call(t.data)};p&&d||(p=function(t){var e=[],n=1;while(arguments.length>n)e.push(arguments[n++]);return g[++y]=function(){c("function"==typeof t?t:Function(t),e)},r(y),y},d=function(t){delete g[t]},"process"==n("6e1f")(l)?r=function(t){l.nextTick(a(b,t,1))}:v&&v.now?r=function(t){v.now(a(b,t,1))}:h?(o=new h,i=o.port2,o.port1.onmessage=_,r=a(i.postMessage,i,1)):f.addEventListener&&"function"==typeof postMessage&&!f.importScripts?(r=function(t){f.postMessage(t+"","*")},f.addEventListener("message",_,!1)):r=m in u("script")?function(t){s.appendChild(u("script"))[m]=function(){s.removeChild(this),b.call(t)}}:function(t){setTimeout(a(b,t,1),0)}),t.exports={set:p,clear:d}},e11e:function(t,e){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},e265:function(t,e,n){t.exports=n("5698")},e341:function(t,e,n){var r=n("d13f");r(r.S+r.F*!n("7d95"),"Object",{defineProperty:n("3adc").f})},e4a9:function(t,e,n){"use strict";var r=n("b457"),o=n("d13f"),i=n("2312"),a=n("8ce0"),c=n("b22a"),s=n("5ce7"),u=n("c0d8"),f=n("ff0c"),l=n("1b55")("iterator"),p=!([].keys&&"next"in[].keys()),d="@@iterator",h="keys",v="values",y=function(){return this};t.exports=function(t,e,n,g,m,b,_){s(n,e,g);var w,x,O,S=function(t){if(!p&&t in k)return k[t];switch(t){case h:return function(){return new n(this,t)};case v:return function(){return new n(this,t)}}return function(){return new n(this,t)}},$=e+" Iterator",A=m==v,C=!1,k=t.prototype,E=k[l]||k[d]||m&&k[m],M=E||S(m),j=m?A?S("entries"):M:void 0,T="Array"==e&&k.entries||E;if(T&&(O=f(T.call(new t)),O!==Object.prototype&&O.next&&(u(O,$,!0),r||"function"==typeof O[l]||a(O,l,y))),A&&E&&E.name!==v&&(C=!0,M=function(){return E.call(this)}),r&&!_||!p&&!C&&k[l]||a(k,l,M),c[e]=M,c[$]=y,m)if(w={values:A?M:S(v),keys:b?M:S(h),entries:j},_)for(x in w)x in k||i(k,x,w[x]);else o(o.P+o.F*(p||C),e,w);return w}},e4e1:function(t,e,n){var r=n("27b2"),o=n("e830"),i=n("b938"),a=Object.defineProperty;e.f=n("45e2")?Object.defineProperty:function(t,e,n){if(r(t),e=i(e,!0),r(n),o)try{return a(t,e,n)}catch(c){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},e523:function(t,e,n){var r=n("e4e1"),o=n("27b2"),i=n("9ed1");t.exports=n("45e2")?Object.defineProperties:function(t,e){o(t);var n,a=i(e),c=a.length,s=0;while(c>s)r.f(t,n=a[s++],e[n]);return t}},e5fa:function(t,e){t.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},e652:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=function(t){return(0,r.withParams)({type:"requiredUnless",prop:t},function(e,n){return!!(0,r.ref)(t,this,n)||(0,r.req)(e)})}},e6a1:function(t,e){t.exports=!1},e814:function(t,e,n){t.exports=n("54aa")},e830:function(t,e,n){t.exports=!n("45e2")&&!n("b629")(function(){return 7!=Object.defineProperty(n("781f")("div"),"a",{get:function(){return 7}}).a})},e853:function(t,e,n){var r=n("d3f4"),o=n("1169"),i=n("2b4c")("species");t.exports=function(t){var e;return o(t)&&(e=t.constructor,"function"!=typeof e||e!==Array&&!o(e.prototype)||(e=void 0),r(e)&&(e=e[i],null===e&&(e=void 0))),void 0===e?Array:e}},eb66:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=function(t){return(0,r.withParams)({type:"minValue",min:t},function(e){return!(0,r.req)(e)||(!/\s/.test(e)||e instanceof Date)&&+e>=+t})}},ebd6:function(t,e,n){var r=n("cb7c"),o=n("d8e8"),i=n("2b4c")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||void 0==(n=r(a)[i])?e:o(n)}},ec11:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=function(t,e){return(0,r.withParams)({type:"between",min:t,max:e},function(n){return!(0,r.req)(n)||(!/\s/.test(n)||n instanceof Date)&&+t<=+n&&+e>=+n})}},ec5b:function(t,e,n){n("e341");var r=n("a7d3").Object;t.exports=function(t,e,n){return r.defineProperty(t,e,n)}},ed0f:function(t,e,n){var r=n("27b2"),o=n("e523"),i=n("49c1"),a=n("be5a")("IE_PROTO"),c=function(){},s="prototype",u=function(){var t,e=n("781f")("iframe"),r=i.length,o="<",a=">";e.style.display="none",n("d8db").appendChild(e),e.src="javascript:",t=e.contentWindow.document,t.open(),t.write(o+"script"+a+"document.F=Object"+o+"/script"+a),t.close(),u=t.F;while(r--)delete u[s][i[r]];return u()};t.exports=Object.create||function(t,e){var n;return null!==t?(c[s]=r(t),n=new c,c[s]=null,n[a]=t):n=u(),void 0===e?n:o(n,e)}},eec7:function(t,e,n){"use strict";var r=n("ed0f"),o=n("dcc3"),i=n("aab6"),a={};n("a0a8")(a,n("b67f")("iterator"),function(){return this}),t.exports=function(t,e,n){t.prototype=r(a,{next:o(1,n)}),i(t,e+" Iterator")}},ef26:function(t,e){t.exports=function(t,e,n){var r=void 0===n;switch(e.length){case 0:return r?t():t.call(n);case 1:return r?t(e[0]):t.call(n,e[0]);case 2:return r?t(e[0],e[1]):t.call(n,e[0],e[1]);case 3:return r?t(e[0],e[1],e[2]):t.call(n,e[0],e[1],e[2]);case 4:return r?t(e[0],e[1],e[2],e[3]):t.call(n,e[0],e[1],e[2],e[3])}return t.apply(n,e)}},f159:function(t,e,n){var r=n("7d8a"),o=n("1b55")("iterator"),i=n("b22a");t.exports=n("a7d3").getIteratorMethod=function(t){if(void 0!=t)return t[o]||t["@@iterator"]||i[r(t)]}},f26d:function(t,e,n){var r=n("a638"),o=n("b67f")("iterator"),i=Array.prototype;t.exports=function(t){return void 0!==t&&(r.Array===t||i[o]===t)}},f2f3:function(t,e,n){"use strict";function r(t){return r="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"===typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r(t)}var o={namespaced:!0,state:{locale:null,fallback:null,translations:{}},mutations:{SET_LOCALE:function(t,e){t.locale=e.locale},ADD_LOCALE:function(t,e){var n=i(e.translations);if(t.translations.hasOwnProperty(e.locale)){var r=t.translations[e.locale];t.translations[e.locale]=Object.assign({},r,n)}else t.translations[e.locale]=n;try{t.translations.__ob__&&t.translations.__ob__.dep.notify()}catch(o){}},REPLACE_LOCALE:function(t,e){var n=i(e.translations);t.translations[e.locale]=n;try{t.translations.__ob__&&t.translations.__ob__.dep.notify()}catch(r){}},REMOVE_LOCALE:function(t,e){if(t.translations.hasOwnProperty(e.locale)){t.locale===e.locale&&(t.locale=null);var n=Object.assign({},t.translations);delete n[e.locale],t.translations=n}},SET_FALLBACK_LOCALE:function(t,e){t.fallback=e.locale}},actions:{setLocale:function(t,e){t.commit({type:"SET_LOCALE",locale:e.locale})},addLocale:function(t,e){t.commit({type:"ADD_LOCALE",locale:e.locale,translations:e.translations})},replaceLocale:function(t,e){t.commit({type:"REPLACE_LOCALE",locale:e.locale,translations:e.translations})},removeLocale:function(t,e){t.commit({type:"REMOVE_LOCALE",locale:e.locale,translations:e.translations})},setFallbackLocale:function(t,e){t.commit({type:"SET_FALLBACK_LOCALE",locale:e.locale})}}},i=function t(e){var n={};for(var o in e)if(e.hasOwnProperty(o)){var i=r(e[o]);if(a(e[o])){for(var c=e[o].length,s=0;s1?1:0;case"lv":return e%10===1&&e%100!==11?0:0!==e?1:2;case"lt":return e%10===1&&e%100!==11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2;case"be":case"bs":case"hr":case"ru":case"sr":case"uk":return e%10===1&&e%100!==11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2;case"mnk":return 0===e?0:1===e?1:2;case"ro":return 1===e?0:0===e||e%100>0&&e%100<20?1:2;case"pl":return 1===e?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2;case"cs":case"sk":return 1===e?0:e>=2&&e<=4?1:2;case"csb":return 1===e?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2;case"sl":return e%100===1?0:e%100===2?1:e%100===3||e%100===4?2:3;case"mt":return 1===e?0:0===e||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3;case"gd":return 1===e||11===e?0:2===e||12===e?1:e>2&&e<20?2:3;case"cy":return 1===e?0:2===e?1:8!==e&&11!==e?2:3;case"kw":return 1===e?0:2===e?1:3===e?2:3;case"ga":return 1===e?0:2===e?1:e>2&&e<7?2:e>6&&e<11?3:4;case"ar":return 0===e?0:1===e?1:2===e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5;default:return 1!==e?1:0}}},s={install:function(t,e,n){"string"!==typeof arguments[2]&&"string"!==typeof arguments[3]||(console.warn("i18n: Registering the plugin vuex-i18n with a string for `moduleName` or `identifiers` is deprecated. Use a configuration object instead.","https://github.com/dkfbasel/vuex-i18n#setup"),n={moduleName:arguments[2],identifiers:arguments[3]}),n=Object.assign({warnings:!0,moduleName:"i18n",identifiers:["{","}"],preserveState:!1,translateFilterName:"translate",translateInFilterName:"translateIn",onTranslationNotFound:function(){}},n);var r=n.moduleName,i=n.identifiers,a=n.translateFilterName,c=n.translateInFilterName,s=n.onTranslationNotFound;if("function"!==typeof s&&(console.error("i18n: i18n config option onTranslationNotFound must be a function"),s=function(){}),e.registerModule(r,o,{preserveState:n.preserveState}),!1===e.state.hasOwnProperty(r))return console.error("i18n: i18n vuex module is not correctly initialized. Please check the module name:",r),t.prototype.$i18n=function(t){return t},t.prototype.$getLanguage=function(){return null},void(t.prototype.$setLanguage=function(){console.error("i18n: i18n vuex module is not correctly initialized")});var f=u(i,n.warnings),l=function(){var t=e.state[r].locale;return p.apply(void 0,[t].concat(Array.prototype.slice.call(arguments)))},p=function(t){var o=arguments,i="",a="",c={},u=null,l=o.length;if(l>=3&&"string"===typeof o[2]?(i=o[1],a=o[2],l>3&&(c=o[3]),l>4&&(u=o[4])):(i=o[1],a=i,l>2&&(c=o[2]),l>3&&(u=o[3])),!t)return n.warnings&&console.warn("i18n: i18n locale is not set when trying to access translations:",i),a;var p=e.state[r].translations,d=e.state[r].fallback,h=t.split("-"),v=!0;if(!1===p.hasOwnProperty(t)?v=!1:!1===p[t].hasOwnProperty(i)&&(v=!1),!0===v)return f(t,p[t][i],c,u);if(h.length>1&&!0===p.hasOwnProperty(h[0])&&!0===p[h[0]].hasOwnProperty(i))return f(h[0],p[h[0]][i],c,u);var y=s(t,i,a);return y&&Promise.resolve(y).then(function(e){var n={};n[i]=e,b(t,n)}),!1===p.hasOwnProperty(d)?f(t,a,c,u):!1===p[d].hasOwnProperty(i)?f(d,a,c,u):f(t,p[d][i],c,u)},d=function(t,e){for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o1&&void 0!==arguments[1]?arguments[1]:"fallback",o=e.state[r].locale,i=e.state[r].fallback,a=e.state[r].translations;if(a.hasOwnProperty(o)&&a[o].hasOwnProperty(t))return!0;if("strict"==n)return!1;var c=o.split("-");return!!(c.length>1&&a.hasOwnProperty(c[0])&&a[c[0]].hasOwnProperty(t))||"locale"!=n&&!(!a.hasOwnProperty(i)||!a[i].hasOwnProperty(t))},v=function(t){e.dispatch({type:"".concat(r,"/setFallbackLocale"),locale:t})},y=function(t){e.dispatch({type:"".concat(r,"/setLocale"),locale:t})},g=function(){return e.state[r].locale},m=function(){return Object.keys(e.state[r].translations)},b=function(t,n){return e.dispatch({type:"".concat(r,"/addLocale"),locale:t,translations:n})},_=function(t,n){return e.dispatch({type:"".concat(r,"/replaceLocale"),locale:t,translations:n})},w=function(t){e.state[r].translations.hasOwnProperty(t)&&e.dispatch({type:"".concat(r,"/removeLocale"),locale:t})},x=function(t){return n.warnings&&console.warn("i18n: $i18n.exists is depreceated. Please use $i18n.localeExists instead. It provides exactly the same functionality."),O(t)},O=function(t){return e.state[r].translations.hasOwnProperty(t)};t.prototype.$i18n={locale:g,locales:m,set:y,add:b,replace:_,remove:w,fallback:v,localeExists:O,keyExists:h,translate:l,translateIn:p,exists:x},t.i18n={locale:g,locales:m,set:y,add:b,replace:_,remove:w,fallback:v,translate:l,translateIn:p,localeExists:O,keyExists:h,exists:x},t.prototype.$t=l,t.prototype.$tlang=p,t.filter(a,l),t.filter(c,d)}},u=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];null!=t&&2==t.length||console.warn("i18n: You must specify the start and end character identifying variable substitutions");var n=new RegExp(t[0]+"{1}(\\w{1}|\\w.+?)"+t[1]+"{1}","g"),o=function(r,o){return r.replace?r.replace(n,function(n){var i=n.replace(t[0],"").replace(t[1],"");return void 0!==o[i]?o[i]:(e&&(console.group?console.group("i18n: Not all placeholders found"):console.warn("i18n: Not all placeholders found"),console.warn("Text:",r),console.warn("Placeholder:",n),console.groupEnd&&console.groupEnd()),n)}):r},i=function(t,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,s=r(n),u=r(a),l=function(){return f(n)?n.map(function(t){return o(t,i,!1)}):"string"===s?o(n,i,!0):void 0};if(null===a)return l();if("number"!==u)return e&&console.warn("i18n: pluralization is not a number"),l();var p=l(),d=null;d=f(p)&&p.length>0?p:p.split(":::");var h=c.getTranslationIndex(t,a);return"undefined"===typeof d[h]?(e&&console.warn("i18n: pluralization not provided in locale",n,t,h),d[0].trim()):d[h].trim()};return i};function f(t){return!!t&&Array===t.constructor}var l={store:o,plugin:s};e["a"]=l},f2fe:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},f3e0:function(t,e,n){var r=n("0185"),o=n("7633");n("c165")("keys",function(){return function(t){return o(r(t))}})},f499:function(t,e,n){t.exports=n("1c01")},f559:function(t,e,n){"use strict";var r=n("5ca1"),o=n("9def"),i=n("d2c8"),a="startsWith",c=""[a];r(r.P+r.F*n("5147")(a),"String",{startsWith:function(t){var e=i(this,t,a),n=o(Math.min(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return c?c.call(e,r,n):e.slice(n,n+r.length)===r}})},f568:function(t,e,n){var r=n("3adc"),o=n("0f89"),i=n("7633");t.exports=n("7d95")?Object.defineProperties:function(t,e){o(t);var n,a=i(e),c=a.length,s=0;while(c>s)r.f(t,n=a[s++],e[n]);return t}},f6d7:function(t,e,n){var r=n("0f4a"),o=n("58b9"),i=n("cc1d")(!1),a=n("be5a")("IE_PROTO");t.exports=function(t,e){var n,c=o(t),s=0,u=[];for(n in c)n!=a&&r(c,n)&&u.push(n);while(e.length>s)r(c,n=e[s++])&&(~i(u,n)||u.push(n));return u}},f845:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},f906:function(t,e,n){!function(e,n){t.exports=n()}(0,function(){"use strict";var t,e=/(\[[^[]*\])|([-:\/.()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,n=/\d\d/,r=/\d\d?/,o=/\d*[^\s\d-:\/.()]+/,i=function(t){return function(e){this[t]=+e}},a=[/[+-]\d\d:?\d\d/,function(t){var e,n;(this.zone||(this.zone={})).offset=(e=t.match(/([+-]|\d\d)/g),0===(n=60*e[1]+ +e[2])?0:"+"===e[0]?-n:n)}],c={A:[/[AP]M/,function(t){this.afternoon="PM"===t}],a:[/[ap]m/,function(t){this.afternoon="pm"===t}],S:[/\d/,function(t){this.milliseconds=100*+t}],SS:[n,function(t){this.milliseconds=10*+t}],SSS:[/\d{3}/,function(t){this.milliseconds=+t}],s:[r,i("seconds")],ss:[r,i("seconds")],m:[r,i("minutes")],mm:[r,i("minutes")],H:[r,i("hours")],h:[r,i("hours")],HH:[r,i("hours")],hh:[r,i("hours")],D:[r,i("day")],DD:[n,i("day")],Do:[o,function(e){var n=t.ordinal,r=e.match(/\d+/);if(this.day=r[0],n)for(var o=1;o<=31;o+=1)n(o).replace(/\[|\]/g,"")===e&&(this.day=o)}],M:[r,i("month")],MM:[n,i("month")],MMM:[o,function(e){var n=t,r=n.months,o=n.monthsShort,i=o?o.findIndex(function(t){return t===e}):r.findIndex(function(t){return t.substr(0,3)===e});if(i<0)throw new Error;this.month=i+1}],MMMM:[o,function(e){var n=t.months.indexOf(e);if(n<0)throw new Error;this.month=n+1}],Y:[/[+-]?\d+/,i("year")],YY:[n,function(t){t=+t,this.year=t+(t>68?1900:2e3)}],YYYY:[/\d{4}/,i("year")],Z:a,ZZ:a},s=function(t,n,r){try{var o=function(t){for(var n=t.match(e),r=n.length,o=0;o0?a-1:h.getMonth(),g=s||h.getDate(),m=u||0,b=f||0,_=l||0,w=p||0;return r?new Date(Date.UTC(v,y,g,m,b,_,w)):new Date(v,y,g,m,b,_,w)}catch(t){return new Date("")}};return function(e,n,r){var o=n.prototype,i=o.parse;o.parse=function(e){var n=e.date,o=e.format,a=e.pl,c=e.utc;this.$u=c,o?(t=a?r.Ls[a]:this.$locale(),this.$d=s(n,o,c),this.init(e)):i.call(this,e)}}})},fa2d:function(t,e,n){"use strict";var r=n("e6a1"),o=n("569f"),i=n("1f51"),a=n("a0a8"),c=n("a638"),s=n("eec7"),u=n("aab6"),f=n("c339"),l=n("b67f")("iterator"),p=!([].keys&&"next"in[].keys()),d="@@iterator",h="keys",v="values",y=function(){return this};t.exports=function(t,e,n,g,m,b,_){s(n,e,g);var w,x,O,S=function(t){if(!p&&t in k)return k[t];switch(t){case h:return function(){return new n(this,t)};case v:return function(){return new n(this,t)}}return function(){return new n(this,t)}},$=e+" Iterator",A=m==v,C=!1,k=t.prototype,E=k[l]||k[d]||m&&k[m],M=E||S(m),j=m?A?S("entries"):M:void 0,T="Array"==e&&k.entries||E;if(T&&(O=f(T.call(new t)),O!==Object.prototype&&O.next&&(u(O,$,!0),r||"function"==typeof O[l]||a(O,l,y))),A&&E&&E.name!==v&&(C=!0,M=function(){return E.call(this)}),r&&!_||!p&&!C&&k[l]||a(k,l,M),c[e]=M,c[$]=y,m)if(w={values:A?M:S(v),keys:b?M:S(h),entries:j},_)for(x in w)x in k||i(k,x,w[x]);else o(o.P+o.F*(p||C),e,w);return w}},fa54:function(t,e,n){"use strict";var r=n("b3e7"),o=n("245b"),i=n("b22a"),a=n("6a9b");t.exports=n("e4a9")(Array,"Array",function(t,e){this._t=a(t),this._i=0,this._k=e},function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,o(1)):o(0,"keys"==e?n:"values"==e?t[n]:[n,t[n]])},"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},fab2:function(t,e,n){var r=n("7726").document;t.exports=r&&r.documentElement},fbf4:function(t,e,n){"use strict";function r(t){return null===t||void 0===t}function o(t){return null!==t&&void 0!==t}function i(t,e){return e.tag===t.tag&&e.key===t.key}function a(t){var e=t.tag;t.vm=new e({data:t.args})}function c(t){for(var e=Object.keys(t.args),n=0;nu?f(e,c,v):c>v&&l(t,n,u)}function f(t,e,n){for(;e<=n;++e)a(t[e])}function l(t,e,n){for(;e<=n;++e){var r=t[e];o(r)&&(r.vm.$destroy(),r.vm=null)}}function p(t,e){t!==e&&(e.vm=t.vm,c(e))}function d(t,e){o(t)&&o(e)?t!==e&&u(t,e):o(e)?f(e,0,e.length-1):o(t)&&l(t,0,t.length-1)}function h(t,e,n){return{tag:t,key:e,args:n}}Object.defineProperty(e,"__esModule",{value:!0}),e.patchChildren=d,e.h=h},fd6f:function(t,e,n){var r=n("d13f"),o=n("cff3")(!0);r(r.S,"Object",{entries:function(t){return o(t)}})},fda1:function(t,e,n){e.f=n("1b55")},fda6:function(t,e,n){n("f3e0"),t.exports=n("a7d3").Object.keys},fdef:function(t,e){t.exports="\t\n\v\f\r   ᠎              \u2028\u2029\ufeff"},ff0c:function(t,e,n){var r=n("43c8"),o=n("0185"),i=n("5d8f")("IE_PROTO"),a=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),r(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?a:null}}}]); \ No newline at end of file +var n=Object.freeze({});function r(t){return void 0===t||null===t}function o(t){return void 0!==t&&null!==t}function i(t){return!0===t}function a(t){return!1===t}function c(t){return"string"===typeof t||"number"===typeof t||"symbol"===typeof t||"boolean"===typeof t}function s(t){return null!==t&&"object"===typeof t}var u=Object.prototype.toString;function l(t){return"[object Object]"===u.call(t)}function f(t){return"[object RegExp]"===u.call(t)}function p(t){var e=parseFloat(String(t));return e>=0&&Math.floor(e)===e&&isFinite(t)}function d(t){return o(t)&&"function"===typeof t.then&&"function"===typeof t.catch}function h(t){return null==t?"":Array.isArray(t)||l(t)&&t.toString===u?JSON.stringify(t,null,2):String(t)}function v(t){var e=parseFloat(t);return isNaN(e)?t:e}function m(t,e){for(var n=Object.create(null),r=t.split(","),o=0;o-1)return t.splice(n,1)}}var w=Object.prototype.hasOwnProperty;function _(t,e){return w.call(t,e)}function x(t){var e=Object.create(null);return function(n){var r=e[n];return r||(e[n]=t(n))}}var S=/-(\w)/g,O=x((function(t){return t.replace(S,(function(t,e){return e?e.toUpperCase():""}))})),E=x((function(t){return t.charAt(0).toUpperCase()+t.slice(1)})),A=/\B([A-Z])/g,C=x((function(t){return t.replace(A,"-$1").toLowerCase()}));function $(t,e){function n(n){var r=arguments.length;return r?r>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n}function k(t,e){return t.bind(e)}var M=Function.prototype.bind?k:$;function T(t,e){e=e||0;var n=t.length-e,r=new Array(n);while(n--)r[n]=t[n+e];return r}function j(t,e){for(var n in e)t[n]=e[n];return t}function P(t){for(var e={},n=0;n0,ot=et&&et.indexOf("edge/")>0,it=(et&&et.indexOf("android"),et&&/iphone|ipad|ipod|ios/.test(et)||"ios"===tt),at=(et&&/chrome\/\d+/.test(et),et&&/phantomjs/.test(et),et&&et.match(/firefox\/(\d+)/)),ct={}.watch,st=!1;if(Z)try{var ut={};Object.defineProperty(ut,"passive",{get:function(){st=!0}}),window.addEventListener("test-passive",null,ut)}catch(Ju){}var lt=function(){return void 0===X&&(X=!Z&&!Q&&"undefined"!==typeof t&&(t["process"]&&"server"===t["process"].env.VUE_ENV)),X},ft=Z&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function pt(t){return"function"===typeof t&&/native code/.test(t.toString())}var dt,ht="undefined"!==typeof Symbol&&pt(Symbol)&&"undefined"!==typeof Reflect&&pt(Reflect.ownKeys);dt="undefined"!==typeof Set&&pt(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var vt=D,mt=0,gt=function(){this.id=mt++,this.subs=[]};gt.prototype.addSub=function(t){this.subs.push(t)},gt.prototype.removeSub=function(t){b(this.subs,t)},gt.prototype.depend=function(){gt.target&>.target.addDep(this)},gt.prototype.notify=function(){var t=this.subs.slice();for(var e=0,n=t.length;e-1)if(i&&!_(o,"default"))a=!1;else if(""===a||a===C(t)){var s=ne(String,o.type);(s<0||c0&&(a=ke(a,(e||"")+"_"+n),$e(a[0])&&$e(u)&&(l[s]=Ot(u.text+a[0].text),a.shift()),l.push.apply(l,a)):c(a)?$e(u)?l[s]=Ot(u.text+a):""!==a&&l.push(Ot(a)):$e(a)&&$e(u)?l[s]=Ot(u.text+a.text):(i(t._isVList)&&o(a.tag)&&r(a.key)&&o(e)&&(a.key="__vlist"+e+"_"+n+"__"),l.push(a)));return l}function Me(t){var e=t.$options.provide;e&&(t._provided="function"===typeof e?e.call(t):e)}function Te(t){var e=je(t.$options.inject,t);e&&(Tt(!1),Object.keys(e).forEach((function(n){Lt(t,n,e[n])})),Tt(!0))}function je(t,e){if(t){for(var n=Object.create(null),r=ht?Reflect.ownKeys(t):Object.keys(t),o=0;o0,a=t?!!t.$stable:!i,c=t&&t.$key;if(t){if(t._normalized)return t._normalized;if(a&&r&&r!==n&&c===r.$key&&!i&&!r.$hasNormal)return r;for(var s in o={},t)t[s]&&"$"!==s[0]&&(o[s]=Le(e,s,t[s]))}else o={};for(var u in e)u in o||(o[u]=Ne(e,u));return t&&Object.isExtensible(t)&&(t._normalized=o),G(o,"$stable",a),G(o,"$key",c),G(o,"$hasNormal",i),o}function Le(t,e,n){var r=function(){var t=arguments.length?n.apply(null,arguments):n({});return t=t&&"object"===typeof t&&!Array.isArray(t)?[t]:Ce(t),t&&(0===t.length||1===t.length&&t[0].isComment)?void 0:t};return n.proxy&&Object.defineProperty(t,e,{get:r,enumerable:!0,configurable:!0}),r}function Ne(t,e){return function(){return t[e]}}function Re(t,e){var n,r,i,a,c;if(Array.isArray(t)||"string"===typeof t)for(n=new Array(t.length),r=0,i=t.length;r1?T(n):n;for(var r=T(arguments,1),o='event handler for "'+t+'"',i=0,a=n.length;idocument.createEvent("Event").timeStamp&&(Xn=function(){return Jn.now()})}function Zn(){var t,e;for(Kn=Xn(),qn=!0,Bn.sort((function(t,e){return t.id-e.id})),Gn=0;GnGn&&Bn[n].id>t.id)n--;Bn.splice(n+1,0,t)}else Bn.push(t);Yn||(Yn=!0,me(Zn))}}var rr=0,or=function(t,e,n,r,o){this.vm=t,o&&(t._watcher=this),t._watchers.push(this),r?(this.deep=!!r.deep,this.user=!!r.user,this.lazy=!!r.lazy,this.sync=!!r.sync,this.before=r.before):this.deep=this.user=this.lazy=this.sync=!1,this.cb=n,this.id=++rr,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new dt,this.newDepIds=new dt,this.expression="","function"===typeof e?this.getter=e:(this.getter=K(e),this.getter||(this.getter=D)),this.value=this.lazy?void 0:this.get()};or.prototype.get=function(){var t;bt(this);var e=this.vm;try{t=this.getter.call(e,e)}catch(Ju){if(!this.user)throw Ju;re(Ju,e,'getter for watcher "'+this.expression+'"')}finally{this.deep&&ye(t),wt(),this.cleanupDeps()}return t},or.prototype.addDep=function(t){var e=t.id;this.newDepIds.has(e)||(this.newDepIds.add(e),this.newDeps.push(t),this.depIds.has(e)||t.addSub(this))},or.prototype.cleanupDeps=function(){var t=this.deps.length;while(t--){var e=this.deps[t];this.newDepIds.has(e.id)||e.removeSub(this)}var n=this.depIds;this.depIds=this.newDepIds,this.newDepIds=n,this.newDepIds.clear(),n=this.deps,this.deps=this.newDeps,this.newDeps=n,this.newDeps.length=0},or.prototype.update=function(){this.lazy?this.dirty=!0:this.sync?this.run():nr(this)},or.prototype.run=function(){if(this.active){var t=this.get();if(t!==this.value||s(t)||this.deep){var e=this.value;if(this.value=t,this.user)try{this.cb.call(this.vm,t,e)}catch(Ju){re(Ju,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,t,e)}}},or.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},or.prototype.depend=function(){var t=this.deps.length;while(t--)this.deps[t].depend()},or.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||b(this.vm._watchers,this);var t=this.deps.length;while(t--)this.deps[t].removeSub(this);this.active=!1}};var ir={enumerable:!0,configurable:!0,get:D,set:D};function ar(t,e,n){ir.get=function(){return this[e][n]},ir.set=function(t){this[e][n]=t},Object.defineProperty(t,n,ir)}function cr(t){t._watchers=[];var e=t.$options;e.props&&sr(t,e.props),e.methods&&mr(t,e.methods),e.data?ur(t):It(t._data={},!0),e.computed&&pr(t,e.computed),e.watch&&e.watch!==ct&&gr(t,e.watch)}function sr(t,e){var n=t.$options.propsData||{},r=t._props={},o=t.$options._propKeys=[],i=!t.$parent;i||Tt(!1);var a=function(i){o.push(i);var a=Zt(i,e,n,t);Lt(r,i,a),i in t||ar(t,"_props",i)};for(var c in e)a(c);Tt(!0)}function ur(t){var e=t.$options.data;e=t._data="function"===typeof e?lr(e,t):e||{},l(e)||(e={});var n=Object.keys(e),r=t.$options.props,o=(t.$options.methods,n.length);while(o--){var i=n[o];0,r&&_(r,i)||q(i)||ar(t,"_data",i)}It(e,!0)}function lr(t,e){bt();try{return t.call(e,e)}catch(Ju){return re(Ju,e,"data()"),{}}finally{wt()}}var fr={lazy:!0};function pr(t,e){var n=t._computedWatchers=Object.create(null),r=lt();for(var o in e){var i=e[o],a="function"===typeof i?i:i.get;0,r||(n[o]=new or(t,a||D,D,fr)),o in t||dr(t,o,i)}}function dr(t,e,n){var r=!lt();"function"===typeof n?(ir.get=r?hr(e):vr(n),ir.set=D):(ir.get=n.get?r&&!1!==n.cache?hr(e):vr(n.get):D,ir.set=n.set||D),Object.defineProperty(t,e,ir)}function hr(t){return function(){var e=this._computedWatchers&&this._computedWatchers[t];if(e)return e.dirty&&e.evaluate(),gt.target&&e.depend(),e.value}}function vr(t){return function(){return t.call(this,this)}}function mr(t,e){t.$options.props;for(var n in e)t[n]="function"!==typeof e[n]?D:M(e[n],t)}function gr(t,e){for(var n in e){var r=e[n];if(Array.isArray(r))for(var o=0;o-1)return this;var n=T(arguments,1);return n.unshift(this),"function"===typeof t.install?t.install.apply(t,n):"function"===typeof t&&t.apply(null,n),e.push(t),this}}function Cr(t){t.mixin=function(t){return this.options=Xt(this.options,t),this}}function $r(t){t.cid=0;var e=1;t.extend=function(t){t=t||{};var n=this,r=n.cid,o=t._Ctor||(t._Ctor={});if(o[r])return o[r];var i=t.name||n.options.name;var a=function(t){this._init(t)};return a.prototype=Object.create(n.prototype),a.prototype.constructor=a,a.cid=e++,a.options=Xt(n.options,t),a["super"]=n,a.options.props&&kr(a),a.options.computed&&Mr(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,B.forEach((function(t){a[t]=n[t]})),i&&(a.options.components[i]=a),a.superOptions=n.options,a.extendOptions=t,a.sealedOptions=j({},a.options),o[r]=a,a}}function kr(t){var e=t.options.props;for(var n in e)ar(t.prototype,"_props",n)}function Mr(t){var e=t.options.computed;for(var n in e)dr(t.prototype,n,e[n])}function Tr(t){B.forEach((function(e){t[e]=function(t,n){return n?("component"===e&&l(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&"function"===typeof n&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}}))}function jr(t){return t&&(t.Ctor.options.name||t.tag)}function Pr(t,e){return Array.isArray(t)?t.indexOf(e)>-1:"string"===typeof t?t.split(",").indexOf(e)>-1:!!f(t)&&t.test(e)}function Dr(t,e){var n=t.cache,r=t.keys,o=t._vnode;for(var i in n){var a=n[i];if(a){var c=jr(a.componentOptions);c&&!e(c)&&Ir(n,i,r,o)}}}function Ir(t,e,n,r){var o=t[e];!o||r&&o.tag===r.tag||o.componentInstance.$destroy(),t[e]=null,b(n,e)}_r(Er),br(Er),Tn(Er),In(Er),wn(Er);var Lr=[String,RegExp,Array],Nr={name:"keep-alive",abstract:!0,props:{include:Lr,exclude:Lr,max:[String,Number]},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var t in this.cache)Ir(this.cache,t,this.keys)},mounted:function(){var t=this;this.$watch("include",(function(e){Dr(t,(function(t){return Pr(e,t)}))})),this.$watch("exclude",(function(e){Dr(t,(function(t){return!Pr(e,t)}))}))},render:function(){var t=this.$slots.default,e=En(t),n=e&&e.componentOptions;if(n){var r=jr(n),o=this,i=o.include,a=o.exclude;if(i&&(!r||!Pr(i,r))||a&&r&&Pr(a,r))return e;var c=this,s=c.cache,u=c.keys,l=null==e.key?n.Ctor.cid+(n.tag?"::"+n.tag:""):e.key;s[l]?(e.componentInstance=s[l].componentInstance,b(u,l),u.push(l)):(s[l]=e,u.push(l),this.max&&u.length>parseInt(this.max)&&Ir(s,u[0],u,this._vnode)),e.data.keepAlive=!0}return e||t&&t[0]}},Rr={KeepAlive:Nr};function Fr(t){var e={get:function(){return U}};Object.defineProperty(t,"config",e),t.util={warn:vt,extend:j,mergeOptions:Xt,defineReactive:Lt},t.set=Nt,t.delete=Rt,t.nextTick=me,t.observable=function(t){return It(t),t},t.options=Object.create(null),B.forEach((function(e){t.options[e+"s"]=Object.create(null)})),t.options._base=t,j(t.options.components,Rr),Ar(t),Cr(t),$r(t),Tr(t)}Fr(Er),Object.defineProperty(Er.prototype,"$isServer",{get:lt}),Object.defineProperty(Er.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(Er,"FunctionalRenderContext",{value:Qe}),Er.version="2.6.11";var zr=m("style,class"),Hr=m("input,textarea,option,select,progress"),Br=function(t,e,n){return"value"===n&&Hr(t)&&"button"!==e||"selected"===n&&"option"===t||"checked"===n&&"input"===t||"muted"===n&&"video"===t},Vr=m("contenteditable,draggable,spellcheck"),Ur=m("events,caret,typing,plaintext-only"),Yr=function(t,e){return Xr(e)||"false"===e?"false":"contenteditable"===t&&Ur(e)?e:"true"},qr=m("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),Gr="http://www.w3.org/1999/xlink",Wr=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},Kr=function(t){return Wr(t)?t.slice(6,t.length):""},Xr=function(t){return null==t||!1===t};function Jr(t){var e=t.data,n=t,r=t;while(o(r.componentInstance))r=r.componentInstance._vnode,r&&r.data&&(e=Zr(r.data,e));while(o(n=n.parent))n&&n.data&&(e=Zr(e,n.data));return Qr(e.staticClass,e.class)}function Zr(t,e){return{staticClass:to(t.staticClass,e.staticClass),class:o(t.class)?[t.class,e.class]:e.class}}function Qr(t,e){return o(t)||o(e)?to(t,eo(e)):""}function to(t,e){return t?e?t+" "+e:t:e||""}function eo(t){return Array.isArray(t)?no(t):s(t)?ro(t):"string"===typeof t?t:""}function no(t){for(var e,n="",r=0,i=t.length;r-1?lo[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:lo[t]=/HTMLUnknownElement/.test(e.toString())}var po=m("text,number,password,search,email,tel,url");function ho(t){if("string"===typeof t){var e=document.querySelector(t);return e||document.createElement("div")}return t}function vo(t,e){var n=document.createElement(t);return"select"!==t?n:(e.data&&e.data.attrs&&void 0!==e.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n)}function mo(t,e){return document.createElementNS(oo[t],e)}function go(t){return document.createTextNode(t)}function yo(t){return document.createComment(t)}function bo(t,e,n){t.insertBefore(e,n)}function wo(t,e){t.removeChild(e)}function _o(t,e){t.appendChild(e)}function xo(t){return t.parentNode}function So(t){return t.nextSibling}function Oo(t){return t.tagName}function Eo(t,e){t.textContent=e}function Ao(t,e){t.setAttribute(e,"")}var Co=Object.freeze({createElement:vo,createElementNS:mo,createTextNode:go,createComment:yo,insertBefore:bo,removeChild:wo,appendChild:_o,parentNode:xo,nextSibling:So,tagName:Oo,setTextContent:Eo,setStyleScope:Ao}),$o={create:function(t,e){ko(e)},update:function(t,e){t.data.ref!==e.data.ref&&(ko(t,!0),ko(e))},destroy:function(t){ko(t,!0)}};function ko(t,e){var n=t.data.ref;if(o(n)){var r=t.context,i=t.componentInstance||t.elm,a=r.$refs;e?Array.isArray(a[n])?b(a[n],i):a[n]===i&&(a[n]=void 0):t.data.refInFor?Array.isArray(a[n])?a[n].indexOf(i)<0&&a[n].push(i):a[n]=[i]:a[n]=i}}var Mo=new _t("",{},[]),To=["create","activate","update","remove","destroy"];function jo(t,e){return t.key===e.key&&(t.tag===e.tag&&t.isComment===e.isComment&&o(t.data)===o(e.data)&&Po(t,e)||i(t.isAsyncPlaceholder)&&t.asyncFactory===e.asyncFactory&&r(e.asyncFactory.error))}function Po(t,e){if("input"!==t.tag)return!0;var n,r=o(n=t.data)&&o(n=n.attrs)&&n.type,i=o(n=e.data)&&o(n=n.attrs)&&n.type;return r===i||po(r)&&po(i)}function Do(t,e,n){var r,i,a={};for(r=e;r<=n;++r)i=t[r].key,o(i)&&(a[i]=r);return a}function Io(t){var e,n,a={},s=t.modules,u=t.nodeOps;for(e=0;ev?(f=r(n[y+1])?null:n[y+1].elm,S(t,f,n,h,y,i)):h>y&&E(e,p,v)}function $(t,e,n,r){for(var i=n;i-1?qo(t,e,n):qr(e)?Xr(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):Vr(e)?t.setAttribute(e,Yr(e,n)):Wr(e)?Xr(n)?t.removeAttributeNS(Gr,Kr(e)):t.setAttributeNS(Gr,e,n):qo(t,e,n)}function qo(t,e,n){if(Xr(n))t.removeAttribute(e);else{if(nt&&!rt&&"TEXTAREA"===t.tagName&&"placeholder"===e&&""!==n&&!t.__ieph){var r=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",r)};t.addEventListener("input",r),t.__ieph=!0}t.setAttribute(e,n)}}var Go={create:Uo,update:Uo};function Wo(t,e){var n=e.elm,i=e.data,a=t.data;if(!(r(i.staticClass)&&r(i.class)&&(r(a)||r(a.staticClass)&&r(a.class)))){var c=Jr(e),s=n._transitionClasses;o(s)&&(c=to(c,eo(s))),c!==n._prevClass&&(n.setAttribute("class",c),n._prevClass=c)}}var Ko,Xo,Jo,Zo,Qo,ti,ei={create:Wo,update:Wo},ni=/[\w).+\-_$\]]/;function ri(t){var e,n,r,o,i,a=!1,c=!1,s=!1,u=!1,l=0,f=0,p=0,d=0;for(r=0;r=0;h--)if(v=t.charAt(h)," "!==v)break;v&&ni.test(v)||(u=!0)}}else void 0===o?(d=r+1,o=t.slice(0,r).trim()):m();function m(){(i||(i=[])).push(t.slice(d,r).trim()),d=r+1}if(void 0===o?o=t.slice(0,r).trim():0!==d&&m(),i)for(r=0;r-1?{exp:t.slice(0,Zo),key:'"'+t.slice(Zo+1)+'"'}:{exp:t,key:null};Xo=t,Zo=Qo=ti=0;while(!xi())Jo=_i(),Si(Jo)?Ei(Jo):91===Jo&&Oi(Jo);return{exp:t.slice(0,Qo),key:t.slice(Qo+1,ti)}}function _i(){return Xo.charCodeAt(++Zo)}function xi(){return Zo>=Ko}function Si(t){return 34===t||39===t}function Oi(t){var e=1;Qo=Zo;while(!xi())if(t=_i(),Si(t))Ei(t);else if(91===t&&e++,93===t&&e--,0===e){ti=Zo;break}}function Ei(t){var e=t;while(!xi())if(t=_i(),t===e)break}var Ai,Ci="__r",$i="__c";function ki(t,e,n){n;var r=e.value,o=e.modifiers,i=t.tag,a=t.attrsMap.type;if(t.component)return yi(t,r,o),!1;if("select"===i)ji(t,r,o);else if("input"===i&&"checkbox"===a)Mi(t,r,o);else if("input"===i&&"radio"===a)Ti(t,r,o);else if("input"===i||"textarea"===i)Pi(t,r,o);else{if(!U.isReservedTag(i))return yi(t,r,o),!1}return!0}function Mi(t,e,n){var r=n&&n.number,o=hi(t,"value")||"null",i=hi(t,"true-value")||"true",a=hi(t,"false-value")||"false";ci(t,"checked","Array.isArray("+e+")?_i("+e+","+o+")>-1"+("true"===i?":("+e+")":":_q("+e+","+i+")")),pi(t,"change","var $$a="+e+",$$el=$event.target,$$c=$$el.checked?("+i+"):("+a+");if(Array.isArray($$a)){var $$v="+(r?"_n("+o+")":o)+",$$i=_i($$a,$$v);if($$el.checked){$$i<0&&("+bi(e,"$$a.concat([$$v])")+")}else{$$i>-1&&("+bi(e,"$$a.slice(0,$$i).concat($$a.slice($$i+1))")+")}}else{"+bi(e,"$$c")+"}",null,!0)}function Ti(t,e,n){var r=n&&n.number,o=hi(t,"value")||"null";o=r?"_n("+o+")":o,ci(t,"checked","_q("+e+","+o+")"),pi(t,"change",bi(e,o),null,!0)}function ji(t,e,n){var r=n&&n.number,o='Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = "_value" in o ? o._value : o.value;return '+(r?"_n(val)":"val")+"})",i="$event.target.multiple ? $$selectedVal : $$selectedVal[0]",a="var $$selectedVal = "+o+";";a=a+" "+bi(e,i),pi(t,"change",a,null,!0)}function Pi(t,e,n){var r=t.attrsMap.type,o=n||{},i=o.lazy,a=o.number,c=o.trim,s=!i&&"range"!==r,u=i?"change":"range"===r?Ci:"input",l="$event.target.value";c&&(l="$event.target.value.trim()"),a&&(l="_n("+l+")");var f=bi(e,l);s&&(f="if($event.target.composing)return;"+f),ci(t,"value","("+e+")"),pi(t,u,f,null,!0),(c||a)&&pi(t,"blur","$forceUpdate()")}function Di(t){if(o(t[Ci])){var e=nt?"change":"input";t[e]=[].concat(t[Ci],t[e]||[]),delete t[Ci]}o(t[$i])&&(t.change=[].concat(t[$i],t.change||[]),delete t[$i])}function Ii(t,e,n){var r=Ai;return function o(){var i=e.apply(null,arguments);null!==i&&Ri(t,o,n,r)}}var Li=se&&!(at&&Number(at[1])<=53);function Ni(t,e,n,r){if(Li){var o=Kn,i=e;e=i._wrapper=function(t){if(t.target===t.currentTarget||t.timeStamp>=o||t.timeStamp<=0||t.target.ownerDocument!==document)return i.apply(this,arguments)}}Ai.addEventListener(t,e,st?{capture:n,passive:r}:n)}function Ri(t,e,n,r){(r||Ai).removeEventListener(t,e._wrapper||e,n)}function Fi(t,e){if(!r(t.data.on)||!r(e.data.on)){var n=e.data.on||{},o=t.data.on||{};Ai=e.elm,Di(n),xe(n,o,Ni,Ri,Ii,e.context),Ai=void 0}}var zi,Hi={create:Fi,update:Fi};function Bi(t,e){if(!r(t.data.domProps)||!r(e.data.domProps)){var n,i,a=e.elm,c=t.data.domProps||{},s=e.data.domProps||{};for(n in o(s.__ob__)&&(s=e.data.domProps=j({},s)),c)n in s||(a[n]="");for(n in s){if(i=s[n],"textContent"===n||"innerHTML"===n){if(e.children&&(e.children.length=0),i===c[n])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===n&&"PROGRESS"!==a.tagName){a._value=i;var u=r(i)?"":String(i);Vi(a,u)&&(a.value=u)}else if("innerHTML"===n&&ao(a.tagName)&&r(a.innerHTML)){zi=zi||document.createElement("div"),zi.innerHTML=""+i+"";var l=zi.firstChild;while(a.firstChild)a.removeChild(a.firstChild);while(l.firstChild)a.appendChild(l.firstChild)}else if(i!==c[n])try{a[n]=i}catch(Ju){}}}}function Vi(t,e){return!t.composing&&("OPTION"===t.tagName||Ui(t,e)||Yi(t,e))}function Ui(t,e){var n=!0;try{n=document.activeElement!==t}catch(Ju){}return n&&t.value!==e}function Yi(t,e){var n=t.value,r=t._vModifiers;if(o(r)){if(r.number)return v(n)!==v(e);if(r.trim)return n.trim()!==e.trim()}return n!==e}var qi={create:Bi,update:Bi},Gi=x((function(t){var e={},n=/;(?![^(]*\))/g,r=/:(.+)/;return t.split(n).forEach((function(t){if(t){var n=t.split(r);n.length>1&&(e[n[0].trim()]=n[1].trim())}})),e}));function Wi(t){var e=Ki(t.style);return t.staticStyle?j(t.staticStyle,e):e}function Ki(t){return Array.isArray(t)?P(t):"string"===typeof t?Gi(t):t}function Xi(t,e){var n,r={};if(e){var o=t;while(o.componentInstance)o=o.componentInstance._vnode,o&&o.data&&(n=Wi(o.data))&&j(r,n)}(n=Wi(t.data))&&j(r,n);var i=t;while(i=i.parent)i.data&&(n=Wi(i.data))&&j(r,n);return r}var Ji,Zi=/^--/,Qi=/\s*!important$/,ta=function(t,e,n){if(Zi.test(e))t.style.setProperty(e,n);else if(Qi.test(n))t.style.setProperty(C(e),n.replace(Qi,""),"important");else{var r=na(e);if(Array.isArray(n))for(var o=0,i=n.length;o-1?e.split(ia).forEach((function(e){return t.classList.add(e)})):t.classList.add(e);else{var n=" "+(t.getAttribute("class")||"")+" ";n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function ca(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(ia).forEach((function(e){return t.classList.remove(e)})):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{var n=" "+(t.getAttribute("class")||"")+" ",r=" "+e+" ";while(n.indexOf(r)>=0)n=n.replace(r," ");n=n.trim(),n?t.setAttribute("class",n):t.removeAttribute("class")}}function sa(t){if(t){if("object"===typeof t){var e={};return!1!==t.css&&j(e,ua(t.name||"v")),j(e,t),e}return"string"===typeof t?ua(t):void 0}}var ua=x((function(t){return{enterClass:t+"-enter",enterToClass:t+"-enter-to",enterActiveClass:t+"-enter-active",leaveClass:t+"-leave",leaveToClass:t+"-leave-to",leaveActiveClass:t+"-leave-active"}})),la=Z&&!rt,fa="transition",pa="animation",da="transition",ha="transitionend",va="animation",ma="animationend";la&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(da="WebkitTransition",ha="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(va="WebkitAnimation",ma="webkitAnimationEnd"));var ga=Z?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()};function ya(t){ga((function(){ga(t)}))}function ba(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),aa(t,e))}function wa(t,e){t._transitionClasses&&b(t._transitionClasses,e),ca(t,e)}function _a(t,e,n){var r=Sa(t,e),o=r.type,i=r.timeout,a=r.propCount;if(!o)return n();var c=o===fa?ha:ma,s=0,u=function(){t.removeEventListener(c,l),n()},l=function(e){e.target===t&&++s>=a&&u()};setTimeout((function(){s0&&(n=fa,l=a,f=i.length):e===pa?u>0&&(n=pa,l=u,f=s.length):(l=Math.max(a,u),n=l>0?a>u?fa:pa:null,f=n?n===fa?i.length:s.length:0);var p=n===fa&&xa.test(r[da+"Property"]);return{type:n,timeout:l,propCount:f,hasTransform:p}}function Oa(t,e){while(t.length1}function Ma(t,e){!0!==e.data.show&&Aa(e)}var Ta=Z?{create:Ma,activate:Ma,remove:function(t,e){!0!==t.data.show?Ca(t,e):e()}}:{},ja=[Go,ei,Hi,qi,oa,Ta],Pa=ja.concat(Vo),Da=Io({nodeOps:Co,modules:Pa});rt&&document.addEventListener("selectionchange",(function(){var t=document.activeElement;t&&t.vmodel&&Ba(t,"input")}));var Ia={inserted:function(t,e,n,r){"select"===n.tag?(r.elm&&!r.elm._vOptions?Se(n,"postpatch",(function(){Ia.componentUpdated(t,e,n)})):La(t,e,n.context),t._vOptions=[].map.call(t.options,Fa)):("textarea"===n.tag||po(t.type))&&(t._vModifiers=e.modifiers,e.modifiers.lazy||(t.addEventListener("compositionstart",za),t.addEventListener("compositionend",Ha),t.addEventListener("change",Ha),rt&&(t.vmodel=!0)))},componentUpdated:function(t,e,n){if("select"===n.tag){La(t,e,n.context);var r=t._vOptions,o=t._vOptions=[].map.call(t.options,Fa);if(o.some((function(t,e){return!R(t,r[e])}))){var i=t.multiple?e.value.some((function(t){return Ra(t,o)})):e.value!==e.oldValue&&Ra(e.value,o);i&&Ba(t,"change")}}}};function La(t,e,n){Na(t,e,n),(nt||ot)&&setTimeout((function(){Na(t,e,n)}),0)}function Na(t,e,n){var r=e.value,o=t.multiple;if(!o||Array.isArray(r)){for(var i,a,c=0,s=t.options.length;c-1,a.selected!==i&&(a.selected=i);else if(R(Fa(a),r))return void(t.selectedIndex!==c&&(t.selectedIndex=c));o||(t.selectedIndex=-1)}}function Ra(t,e){return e.every((function(e){return!R(e,t)}))}function Fa(t){return"_value"in t?t._value:t.value}function za(t){t.target.composing=!0}function Ha(t){t.target.composing&&(t.target.composing=!1,Ba(t.target,"input"))}function Ba(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function Va(t){return!t.componentInstance||t.data&&t.data.transition?t:Va(t.componentInstance._vnode)}var Ua={bind:function(t,e,n){var r=e.value;n=Va(n);var o=n.data&&n.data.transition,i=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;r&&o?(n.data.show=!0,Aa(n,(function(){t.style.display=i}))):t.style.display=r?i:"none"},update:function(t,e,n){var r=e.value,o=e.oldValue;if(!r!==!o){n=Va(n);var i=n.data&&n.data.transition;i?(n.data.show=!0,r?Aa(n,(function(){t.style.display=t.__vOriginalDisplay})):Ca(n,(function(){t.style.display="none"}))):t.style.display=r?t.__vOriginalDisplay:"none"}},unbind:function(t,e,n,r,o){o||(t.style.display=t.__vOriginalDisplay)}},Ya={model:Ia,show:Ua},qa={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function Ga(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?Ga(En(e.children)):t}function Wa(t){var e={},n=t.$options;for(var r in n.propsData)e[r]=t[r];var o=n._parentListeners;for(var i in o)e[O(i)]=o[i];return e}function Ka(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}function Xa(t){while(t=t.parent)if(t.data.transition)return!0}function Ja(t,e){return e.key===t.key&&e.tag===t.tag}var Za=function(t){return t.tag||On(t)},Qa=function(t){return"show"===t.name},tc={name:"transition",props:qa,abstract:!0,render:function(t){var e=this,n=this.$slots.default;if(n&&(n=n.filter(Za),n.length)){0;var r=this.mode;0;var o=n[0];if(Xa(this.$vnode))return o;var i=Ga(o);if(!i)return o;if(this._leaving)return Ka(t,o);var a="__transition-"+this._uid+"-";i.key=null==i.key?i.isComment?a+"comment":a+i.tag:c(i.key)?0===String(i.key).indexOf(a)?i.key:a+i.key:i.key;var s=(i.data||(i.data={})).transition=Wa(this),u=this._vnode,l=Ga(u);if(i.data.directives&&i.data.directives.some(Qa)&&(i.data.show=!0),l&&l.data&&!Ja(i,l)&&!On(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=j({},s);if("out-in"===r)return this._leaving=!0,Se(f,"afterLeave",(function(){e._leaving=!1,e.$forceUpdate()})),Ka(t,o);if("in-out"===r){if(On(i))return u;var p,d=function(){p()};Se(s,"afterEnter",d),Se(s,"enterCancelled",d),Se(f,"delayLeave",(function(t){p=t}))}}return o}}},ec=j({tag:String,moveClass:String},qa);delete ec.mode;var nc={props:ec,beforeMount:function(){var t=this,e=this._update;this._update=function(n,r){var o=Pn(t);t.__patch__(t._vnode,t.kept,!1,!0),t._vnode=t.kept,o(),e.call(t,n,r)}},render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,o=this.$slots.default||[],i=this.children=[],a=Wa(this),c=0;cs&&(c.push(i=t.slice(s,o)),a.push(JSON.stringify(i)));var u=ri(r[1].trim());a.push("_s("+u+")"),c.push({"@binding":u}),s=o+r[0].length}return s\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,Sc=/^\s*((?:v-[\w-]+:|@|:|#)\[[^=]+\][^\s"'<>\/=]*)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,Oc="[a-zA-Z_][\\-\\.0-9_a-zA-Z"+Y.source+"]*",Ec="((?:"+Oc+"\\:)?"+Oc+")",Ac=new RegExp("^<"+Ec),Cc=/^\s*(\/?)>/,$c=new RegExp("^<\\/"+Ec+"[^>]*>"),kc=/^]+>/i,Mc=/^",""":'"',"&":"&"," ":"\n"," ":"\t","'":"'"},Ic=/&(?:lt|gt|quot|amp|#39);/g,Lc=/&(?:lt|gt|quot|amp|#39|#10|#9);/g,Nc=m("pre,textarea",!0),Rc=function(t,e){return t&&Nc(t)&&"\n"===e[0]};function Fc(t,e){var n=e?Lc:Ic;return t.replace(n,(function(t){return Dc[t]}))}function zc(t,e){var n,r,o=[],i=e.expectHTML,a=e.isUnaryTag||I,c=e.canBeLeftOpenTag||I,s=0;while(t){if(n=t,r&&jc(r)){var u=0,l=r.toLowerCase(),f=Pc[l]||(Pc[l]=new RegExp("([\\s\\S]*?)(]*>)","i")),p=t.replace(f,(function(t,n,r){return u=r.length,jc(l)||"noscript"===l||(n=n.replace(//g,"$1").replace(//g,"$1")),Rc(l,n)&&(n=n.slice(1)),e.chars&&e.chars(n),""}));s+=t.length-p.length,t=p,A(l,s-u,s)}else{var d=t.indexOf("<");if(0===d){if(Mc.test(t)){var h=t.indexOf("--\x3e");if(h>=0){e.shouldKeepComment&&e.comment(t.substring(4,h),s,s+h+3),S(h+3);continue}}if(Tc.test(t)){var v=t.indexOf("]>");if(v>=0){S(v+2);continue}}var m=t.match(kc);if(m){S(m[0].length);continue}var g=t.match($c);if(g){var y=s;S(g[0].length),A(g[1],y,s);continue}var b=O();if(b){E(b),Rc(b.tagName,t)&&S(1);continue}}var w=void 0,_=void 0,x=void 0;if(d>=0){_=t.slice(d);while(!$c.test(_)&&!Ac.test(_)&&!Mc.test(_)&&!Tc.test(_)){if(x=_.indexOf("<",1),x<0)break;d+=x,_=t.slice(d)}w=t.substring(0,d)}d<0&&(w=t),w&&S(w.length),e.chars&&w&&e.chars(w,s-w.length,s)}if(t===n){e.chars&&e.chars(t);break}}function S(e){s+=e,t=t.substring(e)}function O(){var e=t.match(Ac);if(e){var n,r,o={tagName:e[1],attrs:[],start:s};S(e[0].length);while(!(n=t.match(Cc))&&(r=t.match(Sc)||t.match(xc)))r.start=s,S(r[0].length),r.end=s,o.attrs.push(r);if(n)return o.unarySlash=n[1],S(n[0].length),o.end=s,o}}function E(t){var n=t.tagName,s=t.unarySlash;i&&("p"===r&&_c(n)&&A(r),c(n)&&r===n&&A(n));for(var u=a(n)||!!s,l=t.attrs.length,f=new Array(l),p=0;p=0;a--)if(o[a].lowerCasedTag===c)break}else a=0;if(a>=0){for(var u=o.length-1;u>=a;u--)e.end&&e.end(o[u].tag,n,i);o.length=a,r=a&&o[a-1].tag}else"br"===c?e.start&&e.start(t,[],!0,n,i):"p"===c&&(e.start&&e.start(t,[],!1,n,i),e.end&&e.end(t,n,i))}A()}var Hc,Bc,Vc,Uc,Yc,qc,Gc,Wc,Kc=/^@|^v-on:/,Xc=/^v-|^@|^:|^#/,Jc=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,Zc=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,Qc=/^\(|\)$/g,ts=/^\[.*\]$/,es=/:(.*)$/,ns=/^:|^\.|^v-bind:/,rs=/\.[^.\]]+(?=[^\]]*$)/g,os=/^v-slot(:|$)|^#/,is=/[\r\n]/,as=/\s+/g,cs=x(yc.decode),ss="_empty_";function us(t,e,n){return{type:1,tag:t,attrsList:e,attrsMap:Ms(e),rawAttrsMap:{},parent:n,children:[]}}function ls(t,e){Hc=e.warn||ii,qc=e.isPreTag||I,Gc=e.mustUseProp||I,Wc=e.getTagNamespace||I;var n=e.isReservedTag||I;(function(t){return!!t.component||!n(t.tag)}),Vc=ai(e.modules,"transformNode"),Uc=ai(e.modules,"preTransformNode"),Yc=ai(e.modules,"postTransformNode"),Bc=e.delimiters;var r,o,i=[],a=!1!==e.preserveWhitespace,c=e.whitespace,s=!1,u=!1;function l(t){if(f(t),s||t.processed||(t=ds(t,e)),i.length||t===r||r.if&&(t.elseif||t.else)&&_s(r,{exp:t.elseif,block:t}),o&&!t.forbidden)if(t.elseif||t.else)bs(t,o);else{if(t.slotScope){var n=t.slotTarget||'"default"';(o.scopedSlots||(o.scopedSlots={}))[n]=t}o.children.push(t),t.parent=o}t.children=t.children.filter((function(t){return!t.slotScope})),f(t),t.pre&&(s=!1),qc(t.tag)&&(u=!1);for(var a=0;a|^function(?:\s+[\w$]+)?\s*\(/,tu=/\([^)]*?\);*$/,eu=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/,nu={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},ru={esc:["Esc","Escape"],tab:"Tab",enter:"Enter",space:[" ","Spacebar"],up:["Up","ArrowUp"],left:["Left","ArrowLeft"],right:["Right","ArrowRight"],down:["Down","ArrowDown"],delete:["Backspace","Delete","Del"]},ou=function(t){return"if("+t+")return null;"},iu={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:ou("$event.target !== $event.currentTarget"),ctrl:ou("!$event.ctrlKey"),shift:ou("!$event.shiftKey"),alt:ou("!$event.altKey"),meta:ou("!$event.metaKey"),left:ou("'button' in $event && $event.button !== 0"),middle:ou("'button' in $event && $event.button !== 1"),right:ou("'button' in $event && $event.button !== 2")};function au(t,e){var n=e?"nativeOn:":"on:",r="",o="";for(var i in t){var a=cu(t[i]);t[i]&&t[i].dynamic?o+=i+","+a+",":r+='"'+i+'":'+a+","}return r="{"+r.slice(0,-1)+"}",o?n+"_d("+r+",["+o.slice(0,-1)+"])":n+r}function cu(t){if(!t)return"function(){}";if(Array.isArray(t))return"["+t.map((function(t){return cu(t)})).join(",")+"]";var e=eu.test(t.value),n=Qs.test(t.value),r=eu.test(t.value.replace(tu,""));if(t.modifiers){var o="",i="",a=[];for(var c in t.modifiers)if(iu[c])i+=iu[c],nu[c]&&a.push(c);else if("exact"===c){var s=t.modifiers;i+=ou(["ctrl","shift","alt","meta"].filter((function(t){return!s[t]})).map((function(t){return"$event."+t+"Key"})).join("||"))}else a.push(c);a.length&&(o+=su(a)),i&&(o+=i);var u=e?"return "+t.value+"($event)":n?"return ("+t.value+")($event)":r?"return "+t.value:t.value;return"function($event){"+o+u+"}"}return e||n?t.value:"function($event){"+(r?"return "+t.value:t.value)+"}"}function su(t){return"if(!$event.type.indexOf('key')&&"+t.map(uu).join("&&")+")return null;"}function uu(t){var e=parseInt(t,10);if(e)return"$event.keyCode!=="+e;var n=nu[t],r=ru[t];return"_k($event.keyCode,"+JSON.stringify(t)+","+JSON.stringify(n)+",$event.key,"+JSON.stringify(r)+")"}function lu(t,e){t.wrapListeners=function(t){return"_g("+t+","+e.value+")"}}function fu(t,e){t.wrapData=function(n){return"_b("+n+",'"+t.tag+"',"+e.value+","+(e.modifiers&&e.modifiers.prop?"true":"false")+(e.modifiers&&e.modifiers.sync?",true":"")+")"}}var pu={on:lu,bind:fu,cloak:D},du=function(t){this.options=t,this.warn=t.warn||ii,this.transforms=ai(t.modules,"transformCode"),this.dataGenFns=ai(t.modules,"genData"),this.directives=j(j({},pu),t.directives);var e=t.isReservedTag||I;this.maybeComponent=function(t){return!!t.component||!e(t.tag)},this.onceId=0,this.staticRenderFns=[],this.pre=!1};function hu(t,e){var n=new du(e),r=t?vu(t,n):'_c("div")';return{render:"with(this){return "+r+"}",staticRenderFns:n.staticRenderFns}}function vu(t,e){if(t.parent&&(t.pre=t.pre||t.parent.pre),t.staticRoot&&!t.staticProcessed)return mu(t,e);if(t.once&&!t.onceProcessed)return gu(t,e);if(t.for&&!t.forProcessed)return wu(t,e);if(t.if&&!t.ifProcessed)return yu(t,e);if("template"!==t.tag||t.slotTarget||e.pre){if("slot"===t.tag)return Du(t,e);var n;if(t.component)n=Iu(t.component,t,e);else{var r;(!t.plain||t.pre&&e.maybeComponent(t))&&(r=_u(t,e));var o=t.inlineTemplate?null:$u(t,e,!0);n="_c('"+t.tag+"'"+(r?","+r:"")+(o?","+o:"")+")"}for(var i=0;i>>0}function Au(t){return 1===t.type&&("slot"===t.tag||t.children.some(Au))}function Cu(t,e){var n=t.attrsMap["slot-scope"];if(t.if&&!t.ifProcessed&&!n)return yu(t,e,Cu,"null");if(t.for&&!t.forProcessed)return wu(t,e,Cu);var r=t.slotScope===ss?"":String(t.slotScope),o="function("+r+"){return "+("template"===t.tag?t.if&&n?"("+t.if+")?"+($u(t,e)||"undefined")+":undefined":$u(t,e)||"undefined":vu(t,e))+"}",i=r?"":",proxy:true";return"{key:"+(t.slotTarget||'"default"')+",fn:"+o+i+"}"}function $u(t,e,n,r,o){var i=t.children;if(i.length){var a=i[0];if(1===i.length&&a.for&&"template"!==a.tag&&"slot"!==a.tag){var c=n?e.maybeComponent(a)?",1":",0":"";return""+(r||vu)(a,e)+c}var s=n?ku(i,e.maybeComponent):0,u=o||Tu;return"["+i.map((function(t){return u(t,e)})).join(",")+"]"+(s?","+s:"")}}function ku(t,e){for(var n=0,r=0;r':'
',Hu.innerHTML.indexOf(" ")>0}var qu=!!Z&&Yu(!1),Gu=!!Z&&Yu(!0),Wu=x((function(t){var e=ho(t);return e&&e.innerHTML})),Ku=Er.prototype.$mount;function Xu(t){if(t.outerHTML)return t.outerHTML;var e=document.createElement("div");return e.appendChild(t.cloneNode(!0)),e.innerHTML}Er.prototype.$mount=function(t,e){if(t=t&&ho(t),t===document.body||t===document.documentElement)return this;var n=this.$options;if(!n.render){var r=n.template;if(r)if("string"===typeof r)"#"===r.charAt(0)&&(r=Wu(r));else{if(!r.nodeType)return this;r=r.innerHTML}else t&&(r=Xu(t));if(r){0;var o=Uu(r,{outputSourceRange:!1,shouldDecodeNewlines:qu,shouldDecodeNewlinesForHref:Gu,delimiters:n.delimiters,comments:n.comments},this),i=o.render,a=o.staticRenderFns;n.render=i,n.staticRenderFns=a}}return Ku.call(this,t,e)},Er.compile=Uu,e["a"]=Er}).call(this,n("c8ba"))},a0a8:function(t,e,n){var r=n("e4e1"),o=n("dcc3");t.exports=n("45e2")?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},a24c:function(t,e,n){var r=n("b808"),o=n("1ad4").set,i=r.MutationObserver||r.WebKitMutationObserver,a=r.process,c=r.Promise,s="process"==n("71fa")(a);t.exports=function(){var t,e,n,u=function(){var r,o;s&&(r=a.domain)&&r.exit();while(t){o=t.fn,t=t.next;try{o()}catch(i){throw t?n():e=void 0,i}}e=void 0,r&&r.enter()};if(s)n=function(){a.nextTick(u)};else if(!i||r.navigator&&r.navigator.standalone)if(c&&c.resolve){var l=c.resolve(void 0);n=function(){l.then(u)}}else n=function(){o.call(r,u)};else{var f=!0,p=document.createTextNode("");new i(u).observe(p,{characterData:!0}),n=function(){p.data=f=!f}}return function(r){var o={fn:r,next:void 0};e&&(e.next=o),t||(t=o,n()),e=o}}},a274:function(t,e,n){var r=n("71fa"),o=n("b67f")("toStringTag"),i="Arguments"==r(function(){return arguments}()),a=function(t,e){try{return t[e]}catch(n){}};t.exports=function(t){var e,n,c;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=a(e=Object(t),o))?n:i?r(e):"Object"==(c=r(e))&&"function"==typeof e.callee?"Arguments":c}},a402:function(t,e,n){"use strict";var r=n("45e2"),o=n("9ed1"),i=n("696b"),a=n("bf41"),c=n("4cf4"),s=n("d43f"),u=Object.assign;t.exports=!u||n("b629")((function(){var t={},e={},n=Symbol(),r="abcdefghijklmnopqrst";return t[n]=7,r.split("").forEach((function(t){e[t]=t})),7!=u({},t)[n]||Object.keys(u({},e)).join("")!=r}))?function(t,e){var n=c(t),u=arguments.length,l=1,f=i.f,p=a.f;while(u>l){var d,h=s(arguments[l++]),v=f?o(h).concat(f(h)):o(h),m=v.length,g=0;while(m>g)d=v[g++],r&&!p.call(h,d)||(n[d]=h[d])}return n}:u},a47f:function(t,e,n){t.exports=!n("7d95")&&!n("d782")((function(){return 7!=Object.defineProperty(n("12fd")("div"),"a",{get:function(){return 7}}).a}))},a481:function(t,e,n){"use strict";var r=n("cb7c"),o=n("4bf8"),i=n("9def"),a=n("4588"),c=n("0390"),s=n("5f1b"),u=Math.max,l=Math.min,f=Math.floor,p=/\$([$&`']|\d\d?|<[^>]*>)/g,d=/\$([$&`']|\d\d?)/g,h=function(t){return void 0===t?t:String(t)};n("214f")("replace",2,(function(t,e,n,v){return[function(r,o){var i=t(this),a=void 0==r?void 0:r[e];return void 0!==a?a.call(r,i,o):n.call(String(i),r,o)},function(t,e){var o=v(n,t,this,e);if(o.done)return o.value;var f=r(t),p=String(this),d="function"===typeof e;d||(e=String(e));var g=f.global;if(g){var y=f.unicode;f.lastIndex=0}var b=[];while(1){var w=s(f,p);if(null===w)break;if(b.push(w),!g)break;var _=String(w[0]);""===_&&(f.lastIndex=c(p,i(f.lastIndex),y))}for(var x="",S=0,O=0;O=S&&(x+=p.slice(S,A)+T,S=A+E.length)}return x+p.slice(S)}];function m(t,e,r,i,a,c){var s=r+t.length,u=i.length,l=d;return void 0!==a&&(a=o(a),l=p),n.call(c,l,(function(n,o){var c;switch(o.charAt(0)){case"$":return"$";case"&":return t;case"`":return e.slice(0,r);case"'":return e.slice(s);case"<":c=a[o.slice(1,-1)];break;default:var l=+o;if(0===l)return o;if(l>u){var p=f(l/10);return 0===p?o:p<=u?void 0===i[p-1]?o.charAt(1):i[p-1]+o.charAt(1):o}c=i[l-1]}return void 0===c?"":c}))}}))},a5ab:function(t,e,n){var r=n("a812"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},a638:function(t,e){t.exports={}},a745:function(t,e,n){t.exports=n("d604")},a7d3:function(t,e){var n=t.exports={version:"2.6.11"};"number"==typeof __e&&(__e=n)},a812:function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},a9f2:function(t,e,n){var r=n("9184");t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}}},aa47:function(t,e,n){"use strict"; +/**! + * Sortable 1.10.2 + * @author RubaXa + * @author owenm + * @license MIT + */ +function r(t){return r="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"===typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r(t)}function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(){return i=Object.assign||function(t){for(var e=1;e=0||(o[n]=t[n]);return o}function s(t,e){if(null==t)return{};var n,r,o=c(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}function u(t){return l(t)||f(t)||p()}function l(t){if(Array.isArray(t)){for(var e=0,n=new Array(t.length);e"===e[0]&&(e=e.substring(1)),t)try{if(t.matches)return t.matches(e);if(t.msMatchesSelector)return t.msMatchesSelector(e);if(t.webkitMatchesSelector)return t.webkitMatchesSelector(e)}catch(n){return!1}return!1}}function E(t){return t.host&&t!==document&&t.host.nodeType?t.host:t.parentNode}function A(t,e,n,r){if(t){n=n||document;do{if(null!=e&&(">"===e[0]?t.parentNode===n&&O(t,e):O(t,e))||r&&t===n)return t;if(t===n)break}while(t=E(t))}return null}var C,$=/\s+/g;function k(t,e,n){if(t&&e)if(t.classList)t.classList[n?"add":"remove"](e);else{var r=(" "+t.className+" ").replace($," ").replace(" "+e+" "," ");t.className=(r+(n?" "+e:"")).replace($," ")}}function M(t,e,n){var r=t&&t.style;if(r){if(void 0===n)return document.defaultView&&document.defaultView.getComputedStyle?n=document.defaultView.getComputedStyle(t,""):t.currentStyle&&(n=t.currentStyle),void 0===e?n:n[e];e in r||-1!==e.indexOf("webkit")||(e="-webkit-"+e),r[e]=n+("string"===typeof n?"":"px")}}function T(t,e){var n="";if("string"===typeof t)n=t;else do{var r=M(t,"transform");r&&"none"!==r&&(n=r+" "+n)}while(!e&&(t=t.parentNode));var o=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return o&&new o(n)}function j(t,e,n){if(t){var r=t.getElementsByTagName(e),o=0,i=r.length;if(n)for(;o=i:o<=i,!a)return r;if(r===P())break;r=H(r,!1)}return!1}function L(t,e,n){var r=0,o=0,i=t.children;while(o2&&void 0!==arguments[2]?arguments[2]:{},r=n.evt,o=s(n,["evt"]);nt.pluginEvent.bind(Zt)(t,e,a({dragEl:at,parentEl:ct,ghostEl:st,rootEl:ut,nextEl:lt,lastDownEl:ft,cloneEl:pt,cloneHidden:dt,dragStarted:At,putSortable:bt,activeSortable:Zt.active,originalEvent:r,oldIndex:ht,oldDraggableIndex:mt,newIndex:vt,newDraggableIndex:gt,hideGhostForTarget:Wt,unhideGhostForTarget:Kt,cloneNowHidden:function(){dt=!0},cloneNowShown:function(){dt=!1},dispatchSortableEvent:function(t){it({sortable:e,name:t,originalEvent:r})}},o))};function it(t){rt(a({putSortable:bt,cloneEl:pt,targetEl:at,rootEl:ut,oldIndex:ht,oldDraggableIndex:mt,newIndex:vt,newDraggableIndex:gt},t))}var at,ct,st,ut,lt,ft,pt,dt,ht,vt,mt,gt,yt,bt,wt,_t,xt,St,Ot,Et,At,Ct,$t,kt,Mt,Tt=!1,jt=!1,Pt=[],Dt=!1,It=!1,Lt=[],Nt=!1,Rt=[],Ft="undefined"!==typeof document,zt=b,Ht=m||v?"cssFloat":"float",Bt=Ft&&!w&&!b&&"draggable"in document.createElement("div"),Vt=function(){if(Ft){if(v)return!1;var t=document.createElement("x");return t.style.cssText="pointer-events:auto","auto"===t.style.pointerEvents}}(),Ut=function(t,e){var n=M(t),r=parseInt(n.width)-parseInt(n.paddingLeft)-parseInt(n.paddingRight)-parseInt(n.borderLeftWidth)-parseInt(n.borderRightWidth),o=L(t,0,e),i=L(t,1,e),a=o&&M(o),c=i&&M(i),s=a&&parseInt(a.marginLeft)+parseInt(a.marginRight)+D(o).width,u=c&&parseInt(c.marginLeft)+parseInt(c.marginRight)+D(i).width;if("flex"===n.display)return"column"===n.flexDirection||"column-reverse"===n.flexDirection?"vertical":"horizontal";if("grid"===n.display)return n.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(o&&a["float"]&&"none"!==a["float"]){var l="left"===a["float"]?"left":"right";return!i||"both"!==c.clear&&c.clear!==l?"horizontal":"vertical"}return o&&("block"===a.display||"flex"===a.display||"table"===a.display||"grid"===a.display||s>=r&&"none"===n[Ht]||i&&"none"===n[Ht]&&s+u>r)?"vertical":"horizontal"},Yt=function(t,e,n){var r=n?t.left:t.top,o=n?t.right:t.bottom,i=n?t.width:t.height,a=n?e.left:e.top,c=n?e.right:e.bottom,s=n?e.width:e.height;return r===a||o===c||r+i/2===a+s/2},qt=function(t,e){var n;return Pt.some((function(r){if(!N(r)){var o=D(r),i=r[X].options.emptyInsertThreshold,a=t>=o.left-i&&t<=o.right+i,c=e>=o.top-i&&e<=o.bottom+i;return i&&a&&c?n=r:void 0}})),n},Gt=function(t){function e(t,n){return function(r,o,i,a){var c=r.options.group.name&&o.options.group.name&&r.options.group.name===o.options.group.name;if(null==t&&(n||c))return!0;if(null==t||!1===t)return!1;if(n&&"clone"===t)return t;if("function"===typeof t)return e(t(r,o,i,a),n)(r,o,i,a);var s=(n?r:o).options.group.name;return!0===t||"string"===typeof t&&t===s||t.join&&t.indexOf(s)>-1}}var n={},o=t.group;o&&"object"==r(o)||(o={name:o}),n.name=o.name,n.checkPull=e(o.pull,!0),n.checkPut=e(o.put),n.revertClone=o.revertClone,t.group=n},Wt=function(){!Vt&&st&&M(st,"display","none")},Kt=function(){!Vt&&st&&M(st,"display","")};Ft&&document.addEventListener("click",(function(t){if(jt)return t.preventDefault(),t.stopPropagation&&t.stopPropagation(),t.stopImmediatePropagation&&t.stopImmediatePropagation(),jt=!1,!1}),!0);var Xt=function(t){if(at){t=t.touches?t.touches[0]:t;var e=qt(t.clientX,t.clientY);if(e){var n={};for(var r in t)t.hasOwnProperty(r)&&(n[r]=t[r]);n.target=n.rootEl=e,n.preventDefault=void 0,n.stopPropagation=void 0,e[X]._onDragOver(n)}}},Jt=function(t){at&&at.parentNode[X]._isOutsideThisEl(t.target)};function Zt(t,e){if(!t||!t.nodeType||1!==t.nodeType)throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(t));this.el=t,this.options=e=i({},e),t[X]=this;var n={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(t.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return Ut(t,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(t,e){t.setData("Text",e.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:!1!==Zt.supportPointer&&"PointerEvent"in window,emptyInsertThreshold:5};for(var r in nt.initializePlugins(this,t,n),n)!(r in e)&&(e[r]=n[r]);for(var o in Gt(e),this)"_"===o.charAt(0)&&"function"===typeof this[o]&&(this[o]=this[o].bind(this));this.nativeDraggable=!e.forceFallback&&Bt,this.nativeDraggable&&(this.options.touchStartThreshold=1),e.supportPointer?x(t,"pointerdown",this._onTapStart):(x(t,"mousedown",this._onTapStart),x(t,"touchstart",this._onTapStart)),this.nativeDraggable&&(x(t,"dragover",this),x(t,"dragenter",this)),Pt.push(this.el),e.store&&e.store.get&&this.sort(e.store.get(this)||[]),i(this,J())}function Qt(t){t.dataTransfer&&(t.dataTransfer.dropEffect="move"),t.cancelable&&t.preventDefault()}function te(t,e,n,r,o,i,a,c){var s,u,l=t[X],f=l.options.onMove;return!window.CustomEvent||v||m?(s=document.createEvent("Event"),s.initEvent("move",!0,!0)):s=new CustomEvent("move",{bubbles:!0,cancelable:!0}),s.to=e,s.from=t,s.dragged=n,s.draggedRect=r,s.related=o||e,s.relatedRect=i||D(e),s.willInsertAfter=c,s.originalEvent=a,t.dispatchEvent(s),f&&(u=f.call(l,s,a)),u}function ee(t){t.draggable=!1}function ne(){Nt=!1}function re(t,e,n){var r=D(N(n.el,n.options.draggable)),o=10;return e?t.clientX>r.right+o||t.clientX<=r.right&&t.clientY>r.bottom&&t.clientX>=r.left:t.clientX>r.right&&t.clientY>r.top||t.clientX<=r.right&&t.clientY>r.bottom+o}function oe(t,e,n,r,o,i,a,c){var s=r?t.clientY:t.clientX,u=r?n.height:n.width,l=r?n.top:n.left,f=r?n.bottom:n.right,p=!1;if(!a)if(c&&ktl+u*i/2:sf-kt)return-$t}else if(s>l+u*(1-o)/2&&sf-u*i/2)?s>l+u/2?1:-1:0}function ie(t){return R(at)=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){at&&ee(at),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var t=this.el.ownerDocument;S(t,"mouseup",this._disableDelayedDrag),S(t,"touchend",this._disableDelayedDrag),S(t,"touchcancel",this._disableDelayedDrag),S(t,"mousemove",this._delayedDragTouchMoveHandler),S(t,"touchmove",this._delayedDragTouchMoveHandler),S(t,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(t,e){e=e||"touch"==t.pointerType&&t,!this.nativeDraggable||e?this.options.supportPointer?x(document,"pointermove",this._onTouchMove):x(document,e?"touchmove":"mousemove",this._onTouchMove):(x(at,"dragend",this),x(ut,"dragstart",this._onDragStart));try{document.selection?se((function(){document.selection.empty()})):window.getSelection().removeAllRanges()}catch(n){}},_dragStarted:function(t,e){if(Tt=!1,ut&&at){ot("dragStarted",this,{evt:e}),this.nativeDraggable&&x(document,"dragover",Jt);var n=this.options;!t&&k(at,n.dragClass,!1),k(at,n.ghostClass,!0),Zt.active=this,t&&this._appendGhost(),it({sortable:this,name:"start",originalEvent:e})}else this._nulling()},_emulateDragOver:function(){if(_t){this._lastX=_t.clientX,this._lastY=_t.clientY,Wt();var t=document.elementFromPoint(_t.clientX,_t.clientY),e=t;while(t&&t.shadowRoot){if(t=t.shadowRoot.elementFromPoint(_t.clientX,_t.clientY),t===e)break;e=t}if(at.parentNode[X]._isOutsideThisEl(t),e)do{if(e[X]){var n=void 0;if(n=e[X]._onDragOver({clientX:_t.clientX,clientY:_t.clientY,target:t,rootEl:e}),n&&!this.options.dragoverBubble)break}t=e}while(e=e.parentNode);Kt()}},_onTouchMove:function(t){if(wt){var e=this.options,n=e.fallbackTolerance,r=e.fallbackOffset,o=t.touches?t.touches[0]:t,i=st&&T(st,!0),a=st&&i&&i.a,c=st&&i&&i.d,s=zt&&Mt&&F(Mt),u=(o.clientX-wt.clientX+r.x)/(a||1)+(s?s[0]-Lt[0]:0)/(a||1),l=(o.clientY-wt.clientY+r.y)/(c||1)+(s?s[1]-Lt[1]:0)/(c||1);if(!Zt.active&&!Tt){if(n&&Math.max(Math.abs(o.clientX-this._lastX),Math.abs(o.clientY-this._lastY))=0&&(it({rootEl:ct,name:"add",toEl:ct,fromEl:ut,originalEvent:t}),it({sortable:this,name:"remove",toEl:ct,originalEvent:t}),it({rootEl:ct,name:"sort",toEl:ct,fromEl:ut,originalEvent:t}),it({sortable:this,name:"sort",toEl:ct,originalEvent:t})),bt&&bt.save()):vt!==ht&&vt>=0&&(it({sortable:this,name:"update",toEl:ct,originalEvent:t}),it({sortable:this,name:"sort",toEl:ct,originalEvent:t})),Zt.active&&(null!=vt&&-1!==vt||(vt=ht,gt=mt),it({sortable:this,name:"end",toEl:ct,originalEvent:t}),this.save()))),this._nulling())},_nulling:function(){ot("nulling",this),ut=at=ct=st=lt=pt=ft=dt=wt=_t=At=vt=gt=ht=mt=Ct=$t=bt=yt=Zt.dragged=Zt.ghost=Zt.clone=Zt.active=null,Rt.forEach((function(t){t.checked=!0})),Rt.length=xt=St=0},handleEvent:function(t){switch(t.type){case"drop":case"dragend":this._onDrop(t);break;case"dragenter":case"dragover":at&&(this._onDragOver(t),Qt(t));break;case"selectstart":t.preventDefault();break}},toArray:function(){for(var t,e=[],n=this.el.children,r=0,o=n.length,i=this.options;r1&&(Pe.forEach((function(t){r.addAnimationState({target:t,rect:Le?D(t):o}),K(t),t.fromRect=o,e.removeAnimationState(t)})),Le=!1,Fe(!this.options.removeCloneOnHide,n))},dragOverCompleted:function(t){var e=t.sortable,n=t.isOwner,r=t.insertion,o=t.activeSortable,i=t.parentEl,a=t.putSortable,c=this.options;if(r){if(n&&o._hideClone(),Ie=!1,c.animation&&Pe.length>1&&(Le||!n&&!o.options.sort&&!a)){var s=D(Me,!1,!0,!0);Pe.forEach((function(t){t!==Me&&(W(t,s),i.appendChild(t))})),Le=!0}if(!n)if(Le||He(),Pe.length>1){var u=je;o._showClone(e),o.options.animation&&!je&&u&&De.forEach((function(t){o.addAnimationState({target:t,rect:Te}),t.fromRect=Te,t.thisAnimationDuration=null}))}else o._showClone(e)}},dragOverAnimationCapture:function(t){var e=t.dragRect,n=t.isOwner,r=t.activeSortable;if(Pe.forEach((function(t){t.thisAnimationDuration=null})),r.options.animation&&!n&&r.multiDrag.isMultiDrag){Te=i({},e);var o=T(Me,!0);Te.top-=o.f,Te.left-=o.e}},dragOverAnimationComplete:function(){Le&&(Le=!1,He())},drop:function(t){var e=t.originalEvent,n=t.rootEl,r=t.parentEl,o=t.sortable,i=t.dispatchSortableEvent,a=t.oldIndex,c=t.putSortable,s=c||this.sortable;if(e){var u=this.options,l=r.children;if(!Ne)if(u.multiDragKey&&!this.multiDragKeyDown&&this._deselectMultiDrag(),k(Me,u.selectedClass,!~Pe.indexOf(Me)),~Pe.indexOf(Me))Pe.splice(Pe.indexOf(Me),1),$e=null,rt({sortable:o,rootEl:n,name:"deselect",targetEl:Me,originalEvt:e});else{if(Pe.push(Me),rt({sortable:o,rootEl:n,name:"select",targetEl:Me,originalEvt:e}),e.shiftKey&&$e&&o.el.contains($e)){var f,p,d=R($e),h=R(Me);if(~d&&~h&&d!==h)for(h>d?(p=d,f=h):(p=h,f=d+1);p1){var v=D(Me),m=R(Me,":not(."+this.options.selectedClass+")");if(!Ie&&u.animation&&(Me.thisAnimationDuration=null),s.captureAnimationState(),!Ie&&(u.animation&&(Me.fromRect=v,Pe.forEach((function(t){if(t.thisAnimationDuration=null,t!==Me){var e=Le?D(t):v;t.fromRect=e,s.addAnimationState({target:t,rect:e})}}))),He(),Pe.forEach((function(t){l[m]?r.insertBefore(t,l[m]):r.appendChild(t),m++})),a===R(Me))){var g=!1;Pe.forEach((function(t){t.sortableIndex===R(t)||(g=!0)})),g&&i("update")}Pe.forEach((function(t){K(t)})),s.animateAll()}ke=s}(n===r||c&&"clone"!==c.lastPutMode)&&De.forEach((function(t){t.parentNode&&t.parentNode.removeChild(t)}))}},nullingGlobal:function(){this.isMultiDrag=Ne=!1,De.length=0},destroyGlobal:function(){this._deselectMultiDrag(),S(document,"pointerup",this._deselectMultiDrag),S(document,"mouseup",this._deselectMultiDrag),S(document,"touchend",this._deselectMultiDrag),S(document,"keydown",this._checkKeyDown),S(document,"keyup",this._checkKeyUp)},_deselectMultiDrag:function(t){if(("undefined"===typeof Ne||!Ne)&&ke===this.sortable&&(!t||!A(t.target,this.options.draggable,this.sortable.el,!1))&&(!t||0===t.button))while(Pe.length){var e=Pe[0];k(e,this.options.selectedClass,!1),Pe.shift(),rt({sortable:this.sortable,rootEl:this.sortable.el,name:"deselect",targetEl:e,originalEvt:t})}},_checkKeyDown:function(t){t.key===this.options.multiDragKey&&(this.multiDragKeyDown=!0)},_checkKeyUp:function(t){t.key===this.options.multiDragKey&&(this.multiDragKeyDown=!1)}},i(t,{pluginName:"multiDrag",utils:{select:function(t){var e=t.parentNode[X];e&&e.options.multiDrag&&!~Pe.indexOf(t)&&(ke&&ke!==e&&(ke.multiDrag._deselectMultiDrag(),ke=e),k(t,e.options.selectedClass,!0),Pe.push(t))},deselect:function(t){var e=t.parentNode[X],n=Pe.indexOf(t);e&&e.options.multiDrag&&~n&&(k(t,e.options.selectedClass,!1),Pe.splice(n,1))}},eventProperties:function(){var t=this,e=[],n=[];return Pe.forEach((function(r){var o;e.push({multiDragElement:r,index:r.sortableIndex}),o=Le&&r!==Me?-1:Le?R(r,":not(."+t.options.selectedClass+")"):R(r),n.push({multiDragElement:r,index:o})})),{items:u(Pe),clones:[].concat(De),oldIndicies:e,newIndicies:n}},optionListeners:{multiDragKey:function(t){return t=t.toLowerCase(),"ctrl"===t?t="Control":t.length>1&&(t=t.charAt(0).toUpperCase()+t.substr(1)),t}}})}function Fe(t,e){Pe.forEach((function(n,r){var o=e.children[n.sortableIndex+(t?Number(r):0)];o?e.insertBefore(n,o):e.appendChild(n)}))}function ze(t,e){De.forEach((function(n,r){var o=e.children[n.sortableIndex+(t?Number(r):0)];o?e.insertBefore(n,o):e.appendChild(n)}))}function He(){Pe.forEach((function(t){t!==Me&&t.parentNode&&t.parentNode.removeChild(t)}))}Zt.mount(new ye),Zt.mount(Ee,Oe),e["default"]=Zt},aa77:function(t,e,n){var r=n("5ca1"),o=n("be13"),i=n("79e5"),a=n("fdef"),c="["+a+"]",s="​…",u=RegExp("^"+c+c+"*"),l=RegExp(c+c+"*$"),f=function(t,e,n){var o={},c=i((function(){return!!a[t]()||s[t]()!=s})),u=o[t]=c?e(p):a[t];n&&(o[n]=u),r(r.P+r.F*c,"String",o)},p=f.trim=function(t,e){return t=String(o(t)),1&e&&(t=t.replace(u,"")),2&e&&(t=t.replace(l,"")),t};t.exports=f},aa82:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=function(t){return(0,r.withParams)({type:"requiredIf",prop:t},(function(e,n){return!(0,r.ref)(t,this,n)||(0,r.req)(e)}))}},aab6:function(t,e,n){var r=n("e4e1").f,o=n("0f4a"),i=n("b67f")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},aae3:function(t,e,n){var r=n("d3f4"),o=n("2d95"),i=n("2b4c")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},ab4c:function(t,e){t.exports=function(t){return"object"===typeof t?null!==t:"function"===typeof t}},ac6a:function(t,e,n){for(var r=n("cadf"),o=n("0d58"),i=n("2aba"),a=n("7726"),c=n("32e9"),s=n("84f2"),u=n("2b4c"),l=u("iterator"),f=u("toStringTag"),p=s.Array,d={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},h=o(d),v=0;vl)if(c=s[l++],c!=c)return!0}else for(;u>l;l++)if((t||l in s)&&s[l]===n)return t||l||0;return!t&&-1}}},c5f6:function(t,e,n){"use strict";var r=n("7726"),o=n("69a8"),i=n("2d95"),a=n("5dbc"),c=n("6a99"),s=n("79e5"),u=n("9093").f,l=n("11e9").f,f=n("86cc").f,p=n("aa77").trim,d="Number",h=r[d],v=h,m=h.prototype,g=i(n("2aeb")(m))==d,y="trim"in String.prototype,b=function(t){var e=c(t,!1);if("string"==typeof e&&e.length>2){e=y?e.trim():p(e,3);var n,r,o,i=e.charCodeAt(0);if(43===i||45===i){if(n=e.charCodeAt(2),88===n||120===n)return NaN}else if(48===i){switch(e.charCodeAt(1)){case 66:case 98:r=2,o=49;break;case 79:case 111:r=8,o=55;break;default:return+e}for(var a,s=e.slice(2),u=0,l=s.length;uo)return NaN;return parseInt(s,r)}}return+e};if(!h(" 0o1")||!h("0b1")||h("+0x1")){h=function(t){var e=arguments.length<1?0:t,n=this;return n instanceof h&&(g?s((function(){m.valueOf.call(n)})):i(n)!=d)?a(new v(b(e)),n,h):b(e)};for(var w,_=n("9e1e")?u(v):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),x=0;_.length>x;x++)o(v,w=_[x])&&!o(h,w)&&f(h,w,l(v,w));h.prototype=m,m.constructor=h,n("2aba")(r,d,h)}},c69a:function(t,e,n){t.exports=!n("9e1e")&&!n("79e5")((function(){return 7!=Object.defineProperty(n("230e")("div"),"a",{get:function(){return 7}}).a}))},c8ba:function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(r){"object"===typeof window&&(n=window)}t.exports=n},c8bb:function(t,e,n){t.exports=n("89ca")},c99d:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=(0,r.withParams)({type:"ipAddress"},(function(t){if(!(0,r.req)(t))return!0;if("string"!==typeof t)return!1;var e=t.split(".");return 4===e.length&&e.every(o)}));var o=function(t){if(t.length>3||0===t.length)return!1;if("0"===t[0]&&"0"!==t)return!1;if(!t.match(/^\d+$/))return!1;var e=0|+t;return e>=0&&e<=255}},ca38:function(t,e){var n=t.exports={version:"2.6.11"};"number"==typeof __e&&(__e=n)},ca5a:function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++n+r).toString(36))}},cadf:function(t,e,n){"use strict";var r=n("9c6c"),o=n("d53b"),i=n("84f2"),a=n("6821");t.exports=n("01f9")(Array,"Array",(function(t,e){this._t=a(t),this._i=0,this._k=e}),(function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,o(1)):o(0,"keys"==e?n:"values"==e?t[n]:[n,t[n]])}),"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},cb7c:function(t,e,n){var r=n("d3f4");t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},cc1d:function(t,e,n){var r=n("58b9"),o=n("04cf"),i=n("4052");t.exports=function(t){return function(e,n,a){var c,s=r(e),u=o(s.length),l=i(a,u);if(t&&n!=n){while(u>l)if(c=s[l++],c!=c)return!0}else for(;u>l;l++)if((t||l in s)&&s[l]===n)return t||l||0;return!t&&-1}}},cc20:function(t,e,n){"use strict";var r=n("9184");function o(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)}t.exports.f=function(t){return new o(t)}},cd1c:function(t,e,n){var r=n("e853");t.exports=function(t,e){return new(r(t))(e)}},ce10:function(t,e,n){var r=n("69a8"),o=n("6821"),i=n("c366")(!1),a=n("613b")("IE_PROTO");t.exports=function(t,e){var n,c=o(t),s=0,u=[];for(n in c)n!=a&&r(c,n)&&u.push(n);while(e.length>s)r(c,n=e[s++])&&(~i(u,n)||u.push(n));return u}},d127:function(t,e,n){n("0a0a")("asyncIterator")},d13f:function(t,e,n){var r=n("da3c"),o=n("a7d3"),i=n("bc25"),a=n("8ce0"),c=n("43c8"),s="prototype",u=function(t,e,n){var l,f,p,d=t&u.F,h=t&u.G,v=t&u.S,m=t&u.P,g=t&u.B,y=t&u.W,b=h?o:o[e]||(o[e]={}),w=b[s],_=h?r:v?r[e]:(r[e]||{})[s];for(l in h&&(n=e),n)f=!d&&_&&void 0!==_[l],f&&c(b,l)||(p=f?_[l]:n[l],b[l]=h&&"function"!=typeof _[l]?n[l]:g&&f?i(p,r):y&&_[l]==p?function(t){var e=function(e,n,r){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(e);case 2:return new t(e,n)}return new t(e,n,r)}return t.apply(this,arguments)};return e[s]=t[s],e}(p):m&&"function"==typeof p?i(Function.call,p):p,m&&((b.virtual||(b.virtual={}))[l]=p,t&u.R&&w&&!w[l]&&a(w,l,p)))};u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,t.exports=u},d24f:function(t,e,n){n("0a0a")("observable")},d256:function(t,e,n){"use strict";var r=n("da3c"),o=n("43c8"),i=n("7d95"),a=n("d13f"),c=n("2312"),s=n("6277").KEY,u=n("d782"),l=n("7772"),f=n("c0d8"),p=n("7b00"),d=n("1b55"),h=n("fda1"),v=n("0a0a"),m=n("d2d6"),g=n("b5aa"),y=n("0f89"),b=n("6f8a"),w=n("0185"),_=n("6a9b"),x=n("2ea1"),S=n("f845"),O=n("7108"),E=n("565d"),A=n("626e"),C=n("31c2"),$=n("3adc"),k=n("7633"),M=A.f,T=$.f,j=E.f,P=r.Symbol,D=r.JSON,I=D&&D.stringify,L="prototype",N=d("_hidden"),R=d("toPrimitive"),F={}.propertyIsEnumerable,z=l("symbol-registry"),H=l("symbols"),B=l("op-symbols"),V=Object[L],U="function"==typeof P&&!!C.f,Y=r.QObject,q=!Y||!Y[L]||!Y[L].findChild,G=i&&u((function(){return 7!=O(T({},"a",{get:function(){return T(this,"a",{value:7}).a}})).a}))?function(t,e,n){var r=M(V,e);r&&delete V[e],T(t,e,n),r&&t!==V&&T(V,e,r)}:T,W=function(t){var e=H[t]=O(P[L]);return e._k=t,e},K=U&&"symbol"==typeof P.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof P},X=function(t,e,n){return t===V&&X(B,e,n),y(t),e=x(e,!0),y(n),o(H,e)?(n.enumerable?(o(t,N)&&t[N][e]&&(t[N][e]=!1),n=O(n,{enumerable:S(0,!1)})):(o(t,N)||T(t,N,S(1,{})),t[N][e]=!0),G(t,e,n)):T(t,e,n)},J=function(t,e){y(t);var n,r=m(e=_(e)),o=0,i=r.length;while(i>o)X(t,n=r[o++],e[n]);return t},Z=function(t,e){return void 0===e?O(t):J(O(t),e)},Q=function(t){var e=F.call(this,t=x(t,!0));return!(this===V&&o(H,t)&&!o(B,t))&&(!(e||!o(this,t)||!o(H,t)||o(this,N)&&this[N][t])||e)},tt=function(t,e){if(t=_(t),e=x(e,!0),t!==V||!o(H,e)||o(B,e)){var n=M(t,e);return!n||!o(H,e)||o(t,N)&&t[N][e]||(n.enumerable=!0),n}},et=function(t){var e,n=j(_(t)),r=[],i=0;while(n.length>i)o(H,e=n[i++])||e==N||e==s||r.push(e);return r},nt=function(t){var e,n=t===V,r=j(n?B:_(t)),i=[],a=0;while(r.length>a)!o(H,e=r[a++])||n&&!o(V,e)||i.push(H[e]);return i};U||(P=function(){if(this instanceof P)throw TypeError("Symbol is not a constructor!");var t=p(arguments.length>0?arguments[0]:void 0),e=function(n){this===V&&e.call(B,n),o(this,N)&&o(this[N],t)&&(this[N][t]=!1),G(this,t,S(1,n))};return i&&q&&G(V,t,{configurable:!0,set:e}),W(t)},c(P[L],"toString",(function(){return this._k})),A.f=tt,$.f=X,n("d876").f=E.f=et,n("d74e").f=Q,C.f=nt,i&&!n("b457")&&c(V,"propertyIsEnumerable",Q,!0),h.f=function(t){return W(d(t))}),a(a.G+a.W+a.F*!U,{Symbol:P});for(var rt="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),ot=0;rt.length>ot;)d(rt[ot++]);for(var it=k(d.store),at=0;it.length>at;)v(it[at++]);a(a.S+a.F*!U,"Symbol",{for:function(t){return o(z,t+="")?z[t]:z[t]=P(t)},keyFor:function(t){if(!K(t))throw TypeError(t+" is not a symbol!");for(var e in z)if(z[e]===t)return e},useSetter:function(){q=!0},useSimple:function(){q=!1}}),a(a.S+a.F*!U,"Object",{create:Z,defineProperty:X,defineProperties:J,getOwnPropertyDescriptor:tt,getOwnPropertyNames:et,getOwnPropertySymbols:nt});var ct=u((function(){C.f(1)}));a(a.S+a.F*ct,"Object",{getOwnPropertySymbols:function(t){return C.f(w(t))}}),D&&a(a.S+a.F*(!U||u((function(){var t=P();return"[null]"!=I([t])||"{}"!=I({a:t})||"{}"!=I(Object(t))}))),"JSON",{stringify:function(t){var e,n,r=[t],o=1;while(arguments.length>o)r.push(arguments[o++]);if(n=e=r[1],(b(e)||void 0!==t)&&!K(t))return g(e)||(e=function(t,e){if("function"==typeof n&&(e=n.call(this,t,e)),!K(e))return e}),r[1]=e,I.apply(D,r)}}),P[L][R]||n("8ce0")(P[L],R,P[L].valueOf),f(P,"Symbol"),f(Math,"Math",!0),f(r.JSON,"JSON",!0)},d294:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=function(){for(var t=arguments.length,e=Array(t),n=0;n0&&e.reduce((function(e,n){return e||n.apply(t,r)}),!1)}))}},d2c8:function(t,e,n){var r=n("aae3"),o=n("be13");t.exports=function(t,e,n){if(r(e))throw TypeError("String#"+n+" doesn't accept regex!");return String(o(t))}},d2d6:function(t,e,n){var r=n("7633"),o=n("31c2"),i=n("d74e");t.exports=function(t){var e=r(t),n=o.f;if(n){var a,c=n(t),s=i.f,u=0;while(c.length>u)s.call(t,a=c[u++])&&e.push(a)}return e}},d38f:function(t,e,n){var r=n("7d8a"),o=n("1b55")("iterator"),i=n("b22a");t.exports=n("a7d3").isIterable=function(t){var e=Object(t);return void 0!==e[o]||"@@iterator"in e||i.hasOwnProperty(r(e))}},d3f4:function(t,e){t.exports=function(t){return"object"===typeof t?null!==t:"function"===typeof t}},d43f:function(t,e,n){var r=n("71fa");t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},d4f4:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=(0,r.withParams)({type:"required"},r.req)},d53b:function(t,e){t.exports=function(t,e){return{value:e,done:!!t}}},d604:function(t,e,n){n("1938"),t.exports=n("a7d3").Array.isArray},d74e:function(t,e){e.f={}.propertyIsEnumerable},d782:function(t,e){t.exports=function(t){try{return!!t()}catch(e){return!0}}},d876:function(t,e,n){var r=n("2695"),o=n("0029").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},d8db:function(t,e,n){var r=n("b808").document;t.exports=r&&r.documentElement},d8e8:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},d9fc:function(t,e,n){"use strict";var r=n("569f"),o=n("ca38"),i=n("b808"),a=n("1aa7"),c=n("1c08");r(r.P+r.R,"Promise",{finally:function(t){var e=a(this,o.Promise||i.Promise),n="function"==typeof t;return this.then(n?function(n){return c(e,t()).then((function(){return n}))}:t,n?function(n){return c(e,t()).then((function(){throw n}))}:t)}})},da3c:function(t,e){var n=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},dcc3:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},e11e:function(t,e){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},e341:function(t,e,n){var r=n("d13f");r(r.S+r.F*!n("7d95"),"Object",{defineProperty:n("3adc").f})},e4a9:function(t,e,n){"use strict";var r=n("b457"),o=n("d13f"),i=n("2312"),a=n("8ce0"),c=n("b22a"),s=n("5ce7"),u=n("c0d8"),l=n("ff0c"),f=n("1b55")("iterator"),p=!([].keys&&"next"in[].keys()),d="@@iterator",h="keys",v="values",m=function(){return this};t.exports=function(t,e,n,g,y,b,w){s(n,e,g);var _,x,S,O=function(t){if(!p&&t in $)return $[t];switch(t){case h:return function(){return new n(this,t)};case v:return function(){return new n(this,t)}}return function(){return new n(this,t)}},E=e+" Iterator",A=y==v,C=!1,$=t.prototype,k=$[f]||$[d]||y&&$[y],M=k||O(y),T=y?A?O("entries"):M:void 0,j="Array"==e&&$.entries||k;if(j&&(S=l(j.call(new t)),S!==Object.prototype&&S.next&&(u(S,E,!0),r||"function"==typeof S[f]||a(S,f,m))),A&&k&&k.name!==v&&(C=!0,M=function(){return k.call(this)}),r&&!w||!p&&!C&&$[f]||a($,f,M),c[e]=M,c[E]=m,y)if(_={values:A?M:O(v),keys:b?M:O(h),entries:T},w)for(x in _)x in $||i($,x,_[x]);else o(o.P+o.F*(p||C),e,_);return _}},e4e1:function(t,e,n){var r=n("27b2"),o=n("e830"),i=n("b938"),a=Object.defineProperty;e.f=n("45e2")?Object.defineProperty:function(t,e,n){if(r(t),e=i(e,!0),r(n),o)try{return a(t,e,n)}catch(c){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},e523:function(t,e,n){var r=n("e4e1"),o=n("27b2"),i=n("9ed1");t.exports=n("45e2")?Object.defineProperties:function(t,e){o(t);var n,a=i(e),c=a.length,s=0;while(c>s)r.f(t,n=a[s++],e[n]);return t}},e5fa:function(t,e){t.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},e652:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=function(t){return(0,r.withParams)({type:"requiredUnless",prop:t},(function(e,n){return!!(0,r.ref)(t,this,n)||(0,r.req)(e)}))}},e6a1:function(t,e){t.exports=!1},e830:function(t,e,n){t.exports=!n("45e2")&&!n("b629")((function(){return 7!=Object.defineProperty(n("781f")("div"),"a",{get:function(){return 7}}).a}))},e853:function(t,e,n){var r=n("d3f4"),o=n("1169"),i=n("2b4c")("species");t.exports=function(t){var e;return o(t)&&(e=t.constructor,"function"!=typeof e||e!==Array&&!o(e.prototype)||(e=void 0),r(e)&&(e=e[i],null===e&&(e=void 0))),void 0===e?Array:e}},eb66:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=function(t){return(0,r.withParams)({type:"minValue",min:t},(function(e){return!(0,r.req)(e)||(!/\s/.test(e)||e instanceof Date)&&+e>=+t}))}},ebd6:function(t,e,n){var r=n("cb7c"),o=n("d8e8"),i=n("2b4c")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||void 0==(n=r(a)[i])?e:o(n)}},ec11:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("78ef");e.default=function(t,e){return(0,r.withParams)({type:"between",min:t,max:e},(function(n){return!(0,r.req)(n)||(!/\s/.test(n)||n instanceof Date)&&+t<=+n&&+e>=+n}))}},ec5b:function(t,e,n){n("e341");var r=n("a7d3").Object;t.exports=function(t,e,n){return r.defineProperty(t,e,n)}},ed0f:function(t,e,n){var r=n("27b2"),o=n("e523"),i=n("49c1"),a=n("be5a")("IE_PROTO"),c=function(){},s="prototype",u=function(){var t,e=n("781f")("iframe"),r=i.length,o="<",a=">";e.style.display="none",n("d8db").appendChild(e),e.src="javascript:",t=e.contentWindow.document,t.open(),t.write(o+"script"+a+"document.F=Object"+o+"/script"+a),t.close(),u=t.F;while(r--)delete u[s][i[r]];return u()};t.exports=Object.create||function(t,e){var n;return null!==t?(c[s]=r(t),n=new c,c[s]=null,n[a]=t):n=u(),void 0===e?n:o(n,e)}},eec7:function(t,e,n){"use strict";var r=n("ed0f"),o=n("dcc3"),i=n("aab6"),a={};n("a0a8")(a,n("b67f")("iterator"),(function(){return this})),t.exports=function(t,e,n){t.prototype=r(a,{next:o(1,n)}),i(t,e+" Iterator")}},ef26:function(t,e){t.exports=function(t,e,n){var r=void 0===n;switch(e.length){case 0:return r?t():t.call(n);case 1:return r?t(e[0]):t.call(n,e[0]);case 2:return r?t(e[0],e[1]):t.call(n,e[0],e[1]);case 3:return r?t(e[0],e[1],e[2]):t.call(n,e[0],e[1],e[2]);case 4:return r?t(e[0],e[1],e[2],e[3]):t.call(n,e[0],e[1],e[2],e[3])}return t.apply(n,e)}},f159:function(t,e,n){var r=n("7d8a"),o=n("1b55")("iterator"),i=n("b22a");t.exports=n("a7d3").getIteratorMethod=function(t){if(void 0!=t)return t[o]||t["@@iterator"]||i[r(t)]}},f1ae:function(t,e,n){"use strict";var r=n("86cc"),o=n("4630");t.exports=function(t,e,n){e in t?r.f(t,e,o(0,n)):t[e]=n}},f26d:function(t,e,n){var r=n("a638"),o=n("b67f")("iterator"),i=Array.prototype;t.exports=function(t){return void 0!==t&&(r.Array===t||i[o]===t)}},f2f3:function(t,e,n){"use strict";function r(t){return r="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"===typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r(t)}var o={namespaced:!0,state:{locale:null,fallback:null,translations:{}},mutations:{SET_LOCALE:function(t,e){t.locale=e.locale},ADD_LOCALE:function(t,e){var n=i(e.translations);if(t.translations.hasOwnProperty(e.locale)){var r=t.translations[e.locale];t.translations[e.locale]=Object.assign({},r,n)}else t.translations[e.locale]=n;try{t.translations.__ob__&&t.translations.__ob__.dep.notify()}catch(o){}},REPLACE_LOCALE:function(t,e){var n=i(e.translations);t.translations[e.locale]=n;try{t.translations.__ob__&&t.translations.__ob__.dep.notify()}catch(r){}},REMOVE_LOCALE:function(t,e){if(t.translations.hasOwnProperty(e.locale)){t.locale===e.locale&&(t.locale=null);var n=Object.assign({},t.translations);delete n[e.locale],t.translations=n}},SET_FALLBACK_LOCALE:function(t,e){t.fallback=e.locale}},actions:{setLocale:function(t,e){t.commit({type:"SET_LOCALE",locale:e.locale})},addLocale:function(t,e){t.commit({type:"ADD_LOCALE",locale:e.locale,translations:e.translations})},replaceLocale:function(t,e){t.commit({type:"REPLACE_LOCALE",locale:e.locale,translations:e.translations})},removeLocale:function(t,e){t.commit({type:"REMOVE_LOCALE",locale:e.locale,translations:e.translations})},setFallbackLocale:function(t,e){t.commit({type:"SET_FALLBACK_LOCALE",locale:e.locale})}}},i=function t(e){var n={};for(var o in e)if(e.hasOwnProperty(o)){var i=r(e[o]);if(a(e[o])){for(var c=e[o].length,s=0;s1?1:0;case"lv":return e%10===1&&e%100!==11?0:0!==e?1:2;case"lt":return e%10===1&&e%100!==11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2;case"be":case"bs":case"hr":case"ru":case"sr":case"uk":return e%10===1&&e%100!==11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2;case"mnk":return 0===e?0:1===e?1:2;case"ro":return 1===e?0:0===e||e%100>0&&e%100<20?1:2;case"pl":return 1===e?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2;case"cs":case"sk":return 1===e?0:e>=2&&e<=4?1:2;case"csb":return 1===e?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2;case"sl":return e%100===1?0:e%100===2?1:e%100===3||e%100===4?2:3;case"mt":return 1===e?0:0===e||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3;case"gd":return 1===e||11===e?0:2===e||12===e?1:e>2&&e<20?2:3;case"cy":return 1===e?0:2===e?1:8!==e&&11!==e?2:3;case"kw":return 1===e?0:2===e?1:3===e?2:3;case"ga":return 1===e?0:2===e?1:e>2&&e<7?2:e>6&&e<11?3:4;case"ar":return 0===e?0:1===e?1:2===e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5;default:return 1!==e?1:0}}},s={install:function(t,e,n){"string"!==typeof arguments[2]&&"string"!==typeof arguments[3]||(console.warn("i18n: Registering the plugin vuex-i18n with a string for `moduleName` or `identifiers` is deprecated. Use a configuration object instead.","https://github.com/dkfbasel/vuex-i18n#setup"),n={moduleName:arguments[2],identifiers:arguments[3]}),n=Object.assign({warnings:!0,moduleName:"i18n",identifiers:["{","}"],preserveState:!1,translateFilterName:"translate",translateInFilterName:"translateIn",onTranslationNotFound:function(){}},n);var r=n.moduleName,i=n.identifiers,a=n.translateFilterName,c=n.translateInFilterName,s=n.onTranslationNotFound;if("function"!==typeof s&&(console.error("i18n: i18n config option onTranslationNotFound must be a function"),s=function(){}),e.registerModule(r,o,{preserveState:n.preserveState}),!1===e.state.hasOwnProperty(r))return console.error("i18n: i18n vuex module is not correctly initialized. Please check the module name:",r),t.prototype.$i18n=function(t){return t},t.prototype.$getLanguage=function(){return null},void(t.prototype.$setLanguage=function(){console.error("i18n: i18n vuex module is not correctly initialized")});var l=u(i,n.warnings),f=function(){var t=e.state[r].locale;return p.apply(void 0,[t].concat(Array.prototype.slice.call(arguments)))},p=function(t){var o=arguments,i="",a="",c={},u=null,f=o.length;if(f>=3&&"string"===typeof o[2]?(i=o[1],a=o[2],f>3&&(c=o[3]),f>4&&(u=o[4])):(i=o[1],a=i,f>2&&(c=o[2]),f>3&&(u=o[3])),!t)return n.warnings&&console.warn("i18n: i18n locale is not set when trying to access translations:",i),a;var p=e.state[r].translations,d=e.state[r].fallback,h=t.split("-"),v=!0;if(!1===p.hasOwnProperty(t)?v=!1:!1===p[t].hasOwnProperty(i)&&(v=!1),!0===v)return l(t,p[t][i],c,u);if(h.length>1&&!0===p.hasOwnProperty(h[0])&&!0===p[h[0]].hasOwnProperty(i))return l(h[0],p[h[0]][i],c,u);var m=s(t,i,a);return m&&Promise.resolve(m).then((function(e){var n={};n[i]=e,b(t,n)})),!1===p.hasOwnProperty(d)?l(t,a,c,u):!1===p[d].hasOwnProperty(i)?l(d,a,c,u):l(t,p[d][i],c,u)},d=function(t,e){for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o1&&void 0!==arguments[1]?arguments[1]:"fallback",o=e.state[r].locale,i=e.state[r].fallback,a=e.state[r].translations;if(a.hasOwnProperty(o)&&a[o].hasOwnProperty(t))return!0;if("strict"==n)return!1;var c=o.split("-");return!!(c.length>1&&a.hasOwnProperty(c[0])&&a[c[0]].hasOwnProperty(t))||"locale"!=n&&!(!a.hasOwnProperty(i)||!a[i].hasOwnProperty(t))},v=function(t){e.dispatch({type:"".concat(r,"/setFallbackLocale"),locale:t})},m=function(t){e.dispatch({type:"".concat(r,"/setLocale"),locale:t})},g=function(){return e.state[r].locale},y=function(){return Object.keys(e.state[r].translations)},b=function(t,n){return e.dispatch({type:"".concat(r,"/addLocale"),locale:t,translations:n})},w=function(t,n){return e.dispatch({type:"".concat(r,"/replaceLocale"),locale:t,translations:n})},_=function(t){e.state[r].translations.hasOwnProperty(t)&&e.dispatch({type:"".concat(r,"/removeLocale"),locale:t})},x=function(t){return n.warnings&&console.warn("i18n: $i18n.exists is depreceated. Please use $i18n.localeExists instead. It provides exactly the same functionality."),S(t)},S=function(t){return e.state[r].translations.hasOwnProperty(t)};t.prototype.$i18n={locale:g,locales:y,set:m,add:b,replace:w,remove:_,fallback:v,localeExists:S,keyExists:h,translate:f,translateIn:p,exists:x},t.i18n={locale:g,locales:y,set:m,add:b,replace:w,remove:_,fallback:v,translate:f,translateIn:p,localeExists:S,keyExists:h,exists:x},t.prototype.$t=f,t.prototype.$tlang=p,t.filter(a,f),t.filter(c,d)}},u=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];null!=t&&2==t.length||console.warn("i18n: You must specify the start and end character identifying variable substitutions");var n=new RegExp(t[0]+"{1}(\\w{1}|\\w.+?)"+t[1]+"{1}","g"),o=function(r,o){return r.replace?r.replace(n,(function(n){var i=n.replace(t[0],"").replace(t[1],"");return void 0!==o[i]?o[i]:(e&&(console.group?console.group("i18n: Not all placeholders found"):console.warn("i18n: Not all placeholders found"),console.warn("Text:",r),console.warn("Placeholder:",n),console.groupEnd&&console.groupEnd()),n)})):r},i=function(t,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,s=r(n),u=r(a),f=function(){return l(n)?n.map((function(t){return o(t,i,!1)})):"string"===s?o(n,i,!0):void 0};if(null===a)return f();if("number"!==u)return e&&console.warn("i18n: pluralization is not a number"),f();var p=f(),d=null;d=l(p)&&p.length>0?p:p.split(":::");var h=c.getTranslationIndex(t,a);return"undefined"===typeof d[h]?(e&&console.warn("i18n: pluralization not provided in locale",n,t,h),d[0].trim()):d[h].trim()};return i};function l(t){return!!t&&Array===t.constructor}var f={store:o,plugin:s};e["a"]=f},f2fe:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},f559:function(t,e,n){"use strict";var r=n("5ca1"),o=n("9def"),i=n("d2c8"),a="startsWith",c=""[a];r(r.P+r.F*n("5147")(a),"String",{startsWith:function(t){var e=i(this,t,a),n=o(Math.min(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return c?c.call(e,r,n):e.slice(n,n+r.length)===r}})},f568:function(t,e,n){var r=n("3adc"),o=n("0f89"),i=n("7633");t.exports=n("7d95")?Object.defineProperties:function(t,e){o(t);var n,a=i(e),c=a.length,s=0;while(c>s)r.f(t,n=a[s++],e[n]);return t}},f6d7:function(t,e,n){var r=n("0f4a"),o=n("58b9"),i=n("cc1d")(!1),a=n("be5a")("IE_PROTO");t.exports=function(t,e){var n,c=o(t),s=0,u=[];for(n in c)n!=a&&r(c,n)&&u.push(n);while(e.length>s)r(c,n=e[s++])&&(~i(u,n)||u.push(n));return u}},f845:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},f906:function(t,e,n){!function(e,n){t.exports=n()}(0,(function(){"use strict";var t,e=/(\[[^[]*\])|([-:/.()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,n=/\d\d/,r=/\d\d?/,o=/\d*[^\s\d-:/.()]+/,i=function(t){return function(e){this[t]=+e}},a=[/[+-]\d\d:?\d\d/,function(t){var e,n;(this.zone||(this.zone={})).offset=(e=t.match(/([+-]|\d\d)/g),0===(n=60*e[1]+ +e[2])?0:"+"===e[0]?-n:n)}],c={A:[/[AP]M/,function(t){this.afternoon="PM"===t}],a:[/[ap]m/,function(t){this.afternoon="pm"===t}],S:[/\d/,function(t){this.milliseconds=100*+t}],SS:[n,function(t){this.milliseconds=10*+t}],SSS:[/\d{3}/,function(t){this.milliseconds=+t}],s:[r,i("seconds")],ss:[r,i("seconds")],m:[r,i("minutes")],mm:[r,i("minutes")],H:[r,i("hours")],h:[r,i("hours")],HH:[r,i("hours")],hh:[r,i("hours")],D:[r,i("day")],DD:[n,i("day")],Do:[o,function(e){var n=t.ordinal,r=e.match(/\d+/);if(this.day=r[0],n)for(var o=1;o<=31;o+=1)n(o).replace(/\[|\]/g,"")===e&&(this.day=o)}],M:[r,i("month")],MM:[n,i("month")],MMM:[o,function(e){var n=t,r=n.months,o=n.monthsShort,i=o?o.findIndex((function(t){return t===e})):r.findIndex((function(t){return t.substr(0,3)===e}));if(i<0)throw new Error;this.month=i+1}],MMMM:[o,function(e){var n=t.months.indexOf(e);if(n<0)throw new Error;this.month=n+1}],Y:[/[+-]?\d+/,i("year")],YY:[n,function(t){t=+t,this.year=t+(t>68?1900:2e3)}],YYYY:[/\d{4}/,i("year")],Z:a,ZZ:a},s=function(t,n,r){try{var o=function(t){for(var n=t.match(e),r=n.length,o=0;o0?a-1:h.getMonth(),y=u||0,b=l||0,w=f||0,_=p||0;return r?new Date(Date.UTC(m,g,v,y,b,w,_)):new Date(m,g,v,y,b,w,_)}catch(t){return new Date("")}};return function(e,n,r){var o=n.prototype,i=o.parse;o.parse=function(e){var n=e.date,o=e.format,a=e.pl,c=e.utc;this.$u=c,o?(t=a?r.Ls[a]:this.$locale(),this.$d=s(n,o,c),this.init(e),a&&(this.$L=a)):i.call(this,e)}}}))},fa2d:function(t,e,n){"use strict";var r=n("e6a1"),o=n("569f"),i=n("1f51"),a=n("a0a8"),c=n("a638"),s=n("eec7"),u=n("aab6"),l=n("c339"),f=n("b67f")("iterator"),p=!([].keys&&"next"in[].keys()),d="@@iterator",h="keys",v="values",m=function(){return this};t.exports=function(t,e,n,g,y,b,w){s(n,e,g);var _,x,S,O=function(t){if(!p&&t in $)return $[t];switch(t){case h:return function(){return new n(this,t)};case v:return function(){return new n(this,t)}}return function(){return new n(this,t)}},E=e+" Iterator",A=y==v,C=!1,$=t.prototype,k=$[f]||$[d]||y&&$[y],M=k||O(y),T=y?A?O("entries"):M:void 0,j="Array"==e&&$.entries||k;if(j&&(S=l(j.call(new t)),S!==Object.prototype&&S.next&&(u(S,E,!0),r||"function"==typeof S[f]||a(S,f,m))),A&&k&&k.name!==v&&(C=!0,M=function(){return k.call(this)}),r&&!w||!p&&!C&&$[f]||a($,f,M),c[e]=M,c[E]=m,y)if(_={values:A?M:O(v),keys:b?M:O(h),entries:T},w)for(x in _)x in $||i($,x,_[x]);else o(o.P+o.F*(p||C),e,_);return _}},fa54:function(t,e,n){"use strict";var r=n("b3e7"),o=n("245b"),i=n("b22a"),a=n("6a9b");t.exports=n("e4a9")(Array,"Array",(function(t,e){this._t=a(t),this._i=0,this._k=e}),(function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,o(1)):o(0,"keys"==e?n:"values"==e?t[n]:[n,t[n]])}),"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},fab2:function(t,e,n){var r=n("7726").document;t.exports=r&&r.documentElement},fbf4:function(t,e,n){"use strict";function r(t){return null===t||void 0===t}function o(t){return null!==t&&void 0!==t}function i(t,e){return e.tag===t.tag&&e.key===t.key}function a(t){var e=t.tag;t.vm=new e({data:t.args})}function c(t){for(var e=Object.keys(t.args),n=0;nu?l(e,c,v):c>v&&f(t,n,u)}function l(t,e,n){for(;e<=n;++e)a(t[e])}function f(t,e,n){for(;e<=n;++e){var r=t[e];o(r)&&(r.vm.$destroy(),r.vm=null)}}function p(t,e){t!==e&&(e.vm=t.vm,c(e))}function d(t,e){o(t)&&o(e)?t!==e&&u(t,e):o(e)?l(e,0,e.length-1):o(t)&&f(t,0,t.length-1)}function h(t,e,n){return{tag:t,key:e,args:n}}Object.defineProperty(e,"__esModule",{value:!0}),e.patchChildren=d,e.h=h},fda1:function(t,e,n){e.f=n("1b55")},fdef:function(t,e){t.exports="\t\n\v\f\r   ᠎              \u2028\u2029\ufeff"},ff0c:function(t,e,n){var r=n("43c8"),o=n("0185"),i=n("5d8fa")("IE_PROTO"),a=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),r(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?a:null}},ffc1:function(t,e,n){var r=n("5ca1"),o=n("504c")(!0);r(r.S,"Object",{entries:function(t){return o(t)}})}}]); \ No newline at end of file diff --git a/kirby/src/Api/Api.php b/kirby/src/Api/Api.php index af465fe..774772d 100755 --- a/kirby/src/Api/Api.php +++ b/kirby/src/Api/Api.php @@ -293,6 +293,24 @@ class Api return isset($this->data[$key]) === true; } + /** + * Matches an object with an array item + * based on the `type` field + * + * @param array models or collections + * @param mixed $object + * + * @return string key of match + */ + protected function match(array $array, $object = null) + { + foreach ($array as $definition => $model) { + if (is_a($object, $model['type']) === true) { + return $definition; + } + } + } + /** * Returns an API model instance by name * @@ -302,8 +320,15 @@ class Api * * @throws \Kirby\Exception\NotFoundException If no model for `$name` exists */ - public function model(string $name, $object = null) + public function model(string $name = null, $object = null) { + // Try to auto-match object with API models + if ($name === null) { + if ($model = $this->match($this->models, $object)) { + $name = $model; + } + } + if (isset($this->models[$name]) === false) { throw new NotFoundException(sprintf('The model "%s" does not exist', $name)); } @@ -420,29 +445,15 @@ class Api return $object; } - $className = strtolower(get_class($object)); - $lastDash = strrpos($className, '\\'); - - if ($lastDash !== false) { - $className = substr($className, $lastDash + 1); + if ($model = $this->match($this->models, $object)) { + return $this->model($model, $object); } - if (isset($this->models[$className]) === true) { - return $this->model($className, $object); + if ($collection = $this->match($this->collections, $object)) { + return $this->collection($collection, $object); } - if (isset($this->collections[$className]) === true) { - return $this->collection($className, $object); - } - - // now models deeply by checking for the actual type - foreach ($this->models as $modelClass => $model) { - if (is_a($object, $model['type']) === true) { - return $this->model($modelClass, $object); - } - } - - throw new NotFoundException(sprintf('The object "%s" cannot be resolved', $className)); + throw new NotFoundException(sprintf('The object "%s" cannot be resolved', get_class($object))); } /** diff --git a/kirby/src/Api/Collection.php b/kirby/src/Api/Collection.php index fe40b8a..1de5d8e 100755 --- a/kirby/src/Api/Collection.php +++ b/kirby/src/Api/Collection.php @@ -29,7 +29,7 @@ class Collection { $this->api = $api; $this->data = $data; - $this->model = $schema['model']; + $this->model = $schema['model'] ?? null; $this->view = $schema['view'] ?? null; if ($data === null) { @@ -40,7 +40,10 @@ class Collection $this->data = $schema['default']->call($this->api); } - if (isset($schema['type']) === true && is_a($this->data, $schema['type']) === false) { + if ( + isset($schema['type']) === true && + is_a($this->data, $schema['type']) === false + ) { throw new Exception('Invalid collection type'); } } diff --git a/kirby/src/Api/Model.php b/kirby/src/Api/Model.php index 1eff4e5..558da5e 100755 --- a/kirby/src/Api/Model.php +++ b/kirby/src/Api/Model.php @@ -48,7 +48,10 @@ class Model $this->data = $schema['default']->call($this->api); } - if (isset($schema['type']) === true && is_a($this->data, $schema['type']) === false) { + if ( + isset($schema['type']) === true && + is_a($this->data, $schema['type']) === false + ) { throw new Exception(sprintf('Invalid model type "%s" expected: "%s"', get_class($this->data), $schema['type'])); } } @@ -130,7 +133,10 @@ class Model $value = $this->api->resolve($value); } - if (is_a($value, 'Kirby\Api\Collection') === true || is_a($value, 'Kirby\Api\Model') === true) { + if ( + is_a($value, 'Kirby\Api\Collection') === true || + is_a($value, 'Kirby\Api\Model') === true + ) { $selection = $select[$key]; if ($subview = $selection['view']) { diff --git a/kirby/src/Cms/Api.php b/kirby/src/Cms/Api.php index 08c9a9e..bcc2a34 100755 --- a/kirby/src/Cms/Api.php +++ b/kirby/src/Cms/Api.php @@ -39,7 +39,8 @@ class Api extends BaseApi $this->kirby->setCurrentLanguage($this->language()); - if ($user = $this->kirby->user()) { + $allowImpersonation = $this->kirby()->option('api.allowImpersonation', false); + if ($user = $this->kirby->user(null, $allowImpersonation)) { $this->kirby->setCurrentTranslation($user->language()); } @@ -95,8 +96,9 @@ class Api extends BaseApi public function file(string $path = null, string $filename) { $filename = urldecode($filename); + $file = $this->parent($path)->file($filename); - if ($file = $this->parent($path)->file($filename)) { + if ($file && $file->isReadable() === true) { return $file; } @@ -136,7 +138,7 @@ class Api extends BaseApi $model = $kirby->site(); break; case 'account': - $model = $kirby->user(); + $model = $kirby->user(null, $kirby->option('api.allowImpersonation', false)); break; case 'page': $id = str_replace(['+', ' '], '/', basename($path)); @@ -192,7 +194,7 @@ class Api extends BaseApi $id = str_replace('+', '/', $id); $page = $this->kirby->page($id); - if ($page && $page->isReadable()) { + if ($page && $page->isReadable() === true) { return $page; } @@ -242,7 +244,7 @@ class Api extends BaseApi { // get the authenticated user if ($id === null) { - return $this->kirby->auth()->user(); + return $this->kirby->auth()->user(null, $this->kirby()->option('api.allowImpersonation', false)); } // get a specific user by id diff --git a/kirby/src/Cms/App.php b/kirby/src/Cms/App.php index 3a206fb..ed9cd84 100755 --- a/kirby/src/Cms/App.php +++ b/kirby/src/Cms/App.php @@ -6,6 +6,7 @@ use Kirby\Data\Data; use Kirby\Email\PHPMailer as Emailer; use Kirby\Exception\ErrorPageException; use Kirby\Exception\InvalidArgumentException; +use Kirby\Exception\LogicException; use Kirby\Exception\NotFoundException; use Kirby\Http\Request; use Kirby\Http\Router; @@ -18,6 +19,7 @@ use Kirby\Toolkit\Controller; use Kirby\Toolkit\Dir; use Kirby\Toolkit\F; use Kirby\Toolkit\Properties; +use Throwable; /** * The `$kirby` object is the app instance of @@ -44,7 +46,6 @@ class App use Properties; protected static $instance; - protected static $root; protected static $version; public $data = []; @@ -74,6 +75,14 @@ class App protected $users; protected $visitor; + /** + * List of options that shouldn't be converted + * to a tree structure by dot syntax + * + * @var array + */ + public static $nestIgnoreOptions = ['hooks']; + /** * Creates a new App instance * @@ -81,9 +90,6 @@ class App */ public function __construct(array $props = []) { - // the kirby folder directory - static::$root = dirname(__DIR__, 2); - // register all roots to be able to load stuff afterwards $this->bakeRoots($props['roots'] ?? []); @@ -91,6 +97,9 @@ class App $this->optionsFromConfig(); $this->optionsFromProps($props['options'] ?? []); + // register the Whoops error handler + $this->handleErrors(); + // set the path to make it available for the url bakery $this->setPath($props['path'] ?? null); @@ -118,20 +127,22 @@ class App $this->extensionsFromSystem(); $this->extensionsFromProps($props); $this->extensionsFromPlugins(); - $this->extensionsFromOptions(); $this->extensionsFromFolders(); + // bake the options for the first time + $this->bakeOptions(); + + // register the extensions from the normalized options + $this->extensionsFromOptions(); + // trigger hook for use in plugins $this->trigger('system.loadPlugins:after'); - // handle those damn errors - $this->handleErrors(); - // execute a ready callback from the config $this->optionsFromReadyCallback(); - // bake config - Config::$data = $this->options; + // bake the options again with those from the ready callback + $this->bakeOptions(); } /** @@ -164,7 +175,7 @@ class App return $this->api; } - $root = static::$root . '/config/api'; + $root = $this->root('kirby') . '/config/api'; $extensions = $this->extensions['api'] ?? []; $routes = (include $root . '/routes.php')($this); @@ -182,37 +193,54 @@ class App } /** - * Applies a hook to the given value; - * the value that gets modified by the hooks - * is always the last argument + * Applies a hook to the given value * * @internal - * @param string $name Hook name - * @param mixed ...$args Arguments to pass to the hooks + * @param string $name Full event name + * @param array $args Associative array of named event arguments + * @param string $modify Key in $args that is modified by the hooks + * @param \Kirby\Cms\Event|null $originalEvent Event object (internal use) * @return mixed Resulting value as modified by the hooks */ - public function apply(string $name, ...$args) + public function apply(string $name, array $args, string $modify, ?Event $originalEvent = null) { - // split up args into "passive" args and the value - $value = array_pop($args); + $event = $originalEvent ?? new Event($name, $args); if ($functions = $this->extension('hooks', $name)) { foreach ($functions as $function) { - // re-assemble args - $hookArgs = $args; - $hookArgs[] = $value; - // bind the App object to the hook - $newValue = $function->call($this, ...$hookArgs); + $newValue = $event->call($this, $function); // update value if one was returned if ($newValue !== null) { - $value = $newValue; + $event->updateArgument($modify, $newValue); } } } - return $value; + // apply wildcard hooks if available + $nameWildcards = $event->nameWildcards(); + if ($originalEvent === null && count($nameWildcards) > 0) { + foreach ($nameWildcards as $nameWildcard) { + // the $event object is passed by reference + // and will be modified down the chain + $this->apply($nameWildcard, $event->arguments(), $modify, $event); + } + } + + return $event->argument($modify); + } + + /** + * Normalizes and globally sets the configured options + * + * @return self + */ + protected function bakeOptions() + { + $this->options = A::nest($this->options, static::$nestIgnoreOptions); + Config::$data = $this->options; + return $this; } /** @@ -223,7 +251,7 @@ class App */ protected function bakeRoots(array $roots = null) { - $roots = array_merge(require static::$root . '/config/roots.php', (array)$roots); + $roots = array_merge(require dirname(__DIR__, 2) . '/config/roots.php', (array)$roots); $this->roots = Ingredients::bake($roots); return $this; } @@ -241,7 +269,7 @@ class App $urls['index'] = $this->options['url']; } - $urls = array_merge(require static::$root . '/config/urls.php', (array)$urls); + $urls = array_merge(require $this->root('kirby') . '/config/urls.php', (array)$urls); $this->urls = Ingredients::bake($urls); return $this; } @@ -285,11 +313,11 @@ class App $router = $this->router(); $router::$beforeEach = function ($route, $path, $method) { - $this->trigger('route:before', $route, $path, $method); + $this->trigger('route:before', compact('route', 'path', 'method')); }; - $router::$afterEach = function ($route, $path, $method, $result) { - return $this->apply('route:after', $route, $path, $method, $result); + $router::$afterEach = function ($route, $path, $method, $result, $final) { + return $this->apply('route:after', compact('route', 'path', 'method', 'result', 'final'), 'result'); }; return $router->call($path ?? $this->path(), $method ?? $this->request()->method()); @@ -357,6 +385,31 @@ class App return $this->options['content']['ignore'] ?? Dir::$ignore; } + /** + * Generates a non-guessable token based on model + * data and a configured salt + * + * @param mixed $model Object to pass to the salt callback if configured + * @param string $value Model data to include in the generated token + * @return string + */ + public function contentToken($model, string $value): string + { + if (method_exists($model, 'root') === true) { + $default = $model->root(); + } else { + $default = $this->root('content'); + } + + $salt = $this->option('content.salt', $default); + + if (is_a($salt, 'Closure') === true) { + $salt = $salt($model); + } + + return hash_hmac('sha1', $value, $salt); + } + /** * Calls a page controller by name * and with the given arguments @@ -524,12 +577,17 @@ class App * Returns the current App instance * * @param \Kirby\Cms\App $instance - * @return self + * @param bool $lazy If `true`, the instance is only returned if already existing + * @return self|null */ - public static function instance(self $instance = null) + public static function instance(self $instance = null, bool $lazy = false) { if ($instance === null) { - return static::$instance ?? new static(); + if ($lazy === true) { + return static::$instance; + } else { + return static::$instance ?? new static(); + } } return static::$instance = $instance; @@ -659,7 +717,7 @@ class App $data['site'] = $data['site'] ?? $data['kirby']->site(); $data['parent'] = $data['parent'] ?? $data['site']->page(); - return KirbyTags::parse($text, $data, $this->options, $this->extensions['hooks']); + return KirbyTags::parse($text, $data, $this->options, $this); } /** @@ -673,7 +731,7 @@ class App */ public function kirbytext(string $text = null, array $data = [], bool $inline = false): string { - $text = $this->apply('kirbytext:before', $text); + $text = $this->apply('kirbytext:before', compact('text'), 'text'); $text = $this->kirbytags($text, $data); $text = $this->markdown($text, $inline); @@ -681,7 +739,7 @@ class App $text = $this->smartypants($text); } - $text = $this->apply('kirbytext:after', $text); + $text = $this->apply('kirbytext:after', compact('text'), 'text'); return $text; } @@ -859,6 +917,27 @@ class App // inject all last-minute options recursively $this->options = array_replace_recursive($this->options, $options); + + // update the system with changed options + if ( + isset($options['debug']) === true || + isset($options['whoops']) === true || + isset($options['editor']) === true + ) { + $this->handleErrors(); + } + + if (isset($options['debug']) === true) { + $this->api = null; + } + + if (isset($options['home']) === true || isset($options['error']) === true) { + $this->site = null; + } + + if (isset($options['slugs']) === true) { + $this->i18n(); + } } return $this->options; @@ -1091,7 +1170,7 @@ class App } $registry = $this->extensions('routes'); - $system = (include static::$root . '/config/routes.php')($this); + $system = (include $this->root('kirby') . '/config/routes.php')($this); $routes = array_merge($system['before'], $registry, $system['after']); return $this->routes = $routes; @@ -1312,12 +1391,15 @@ class App * Trigger a hook by name * * @internal - * @param string $name - * @param mixed ...$arguments + * @param string $name Full event name + * @param array $args Associative array of named event arguments + * @param \Kirby\Cms\Event|null $originalEvent Event object (internal use) * @return void */ - public function trigger(string $name, ...$arguments) + public function trigger(string $name, array $args = [], ?Event $originalEvent = null) { + $event = $originalEvent ?? new Event($name, $args); + if ($functions = $this->extension('hooks', $name)) { static $level = 0; static $triggered = []; @@ -1332,7 +1414,7 @@ class App $triggered[$name][] = $function; // bind the App object to the hook - $function->call($this, ...$arguments); + $event->call($this, $function); } $level--; @@ -1341,6 +1423,14 @@ class App $triggered = []; } } + + // trigger wildcard hooks if available + $nameWildcards = $event->nameWildcards(); + if ($originalEvent === null && count($nameWildcards) > 0) { + foreach ($nameWildcards as $nameWildcard) { + $this->trigger($nameWildcard, $args, $event); + } + } } /** @@ -1372,7 +1462,11 @@ class App */ public static function version(): ?string { - return static::$version = static::$version ?? Data::read(static::$root . '/composer.json')['version'] ?? null; + try { + return static::$version = static::$version ?? Data::read(dirname(__DIR__, 2) . '/composer.json')['version'] ?? null; + } catch (Throwable $e) { + throw new LogicException('The Kirby version cannot be detected. The composer.json is probably missing or not readable.'); + } } /** diff --git a/kirby/src/Cms/AppErrors.php b/kirby/src/Cms/AppErrors.php index 6936d0d..12f25d1 100755 --- a/kirby/src/Cms/AppErrors.php +++ b/kirby/src/Cms/AppErrors.php @@ -10,7 +10,7 @@ use Whoops\Handler\PrettyPageHandler; use Whoops\Run as Whoops; /** - * AppErrors + * PHP error handling using the Whoops library * * @package Kirby Cms * @author Bastian Allgeier @@ -20,14 +20,30 @@ use Whoops\Run as Whoops; */ trait AppErrors { + /** + * Whoops instance cache + * + * @var \Whoops\Run + */ + protected $whoops; + + /** + * Registers the PHP error handler for CLI usage + * + * @return void + */ protected function handleCliErrors(): void { - $whoops = new Whoops(); - $whoops->pushHandler(new PlainTextHandler()); - $whoops->register(); + $this->setWhoopsHandler(new PlainTextHandler()); } - protected function handleErrors() + /** + * Registers the PHP error handler + * based on the environment + * + * @return void + */ + protected function handleErrors(): void { if ($this->request()->cli() === true) { $this->handleCliErrors(); @@ -42,21 +58,25 @@ trait AppErrors $this->handleHtmlErrors(); } - protected function handleHtmlErrors() + /** + * Registers the PHP error handler for HTML output + * + * @return void + */ + protected function handleHtmlErrors(): void { - $whoops = new Whoops(); + $handler = null; if ($this->option('debug') === true) { if ($this->option('whoops', true) === true) { $handler = new PrettyPageHandler(); $handler->setPageTitle('Kirby CMS Debugger'); + $handler->setResourcesPath(dirname(__DIR__, 2) . '/assets'); + $handler->addCustomCss('whoops.css'); if ($editor = $this->option('editor')) { $handler->setEditor($editor); } - - $whoops->pushHandler($handler); - $whoops->register(); } } else { $handler = new CallbackHandler(function ($exception, $inspector, $run) { @@ -65,20 +85,27 @@ trait AppErrors if (is_a($fatal, 'Closure') === true) { echo $fatal($this); } else { - include static::$root . '/views/fatal.php'; + include $this->root('kirby') . '/views/fatal.php'; } return Handler::QUIT; }); + } - $whoops->pushHandler($handler); - $whoops->register(); + if ($handler !== null) { + $this->setWhoopsHandler($handler); + } else { + $this->unsetWhoopsHandler(); } } - protected function handleJsonErrors() + /** + * Registers the PHP error handler for JSON output + * + * @return void + */ + protected function handleJsonErrors(): void { - $whoops = new Whoops(); $handler = new CallbackHandler(function ($exception, $inspector, $run) { if (is_a($exception, 'Kirby\Exception\Exception') === true) { $httpCode = $exception->getHttpCode(); @@ -112,7 +139,46 @@ trait AppErrors return Handler::QUIT; }); + $this->setWhoopsHandler($handler); + } + + /** + * Enables Whoops with the specified handler + * + * @param Callable|\Whoops\Handler\HandlerInterface $handler + * @return void + */ + protected function setWhoopsHandler($handler): void + { + $whoops = $this->whoops(); + $whoops->clearHandlers(); $whoops->pushHandler($handler); - $whoops->register(); + $whoops->register(); // will only do something if not already registered + } + + /** + * Clears the Whoops handlers and disables Whoops + * + * @return void + */ + protected function unsetWhoopsHandler(): void + { + $whoops = $this->whoops(); + $whoops->clearHandlers(); + $whoops->unregister(); // will only do something if currently registered + } + + /** + * Returns the Whoops error handler instance + * + * @return \Whoops\Run + */ + protected function whoops() + { + if ($this->whoops !== null) { + return $this->whoops; + } + + return $this->whoops = new Whoops(); } } diff --git a/kirby/src/Cms/AppPlugins.php b/kirby/src/Cms/AppPlugins.php index 121e4b1..ff46657 100755 --- a/kirby/src/Cms/AppPlugins.php +++ b/kirby/src/Cms/AppPlugins.php @@ -7,7 +7,7 @@ use Kirby\Exception\DuplicateException; use Kirby\Form\Field as FormField; use Kirby\Text\KirbyTag; use Kirby\Toolkit\A; -use Kirby\Toolkit\Collection; +use Kirby\Toolkit\Collection as ToolkitCollection; use Kirby\Toolkit\Dir; use Kirby\Toolkit\F; use Kirby\Toolkit\V; @@ -30,6 +30,13 @@ trait AppPlugins */ protected static $plugins = []; + /** + * Cache for system extensions + * + * @var array + */ + protected static $systemExtensions = null; + /** * The extension registry * @@ -47,6 +54,7 @@ trait AppPlugins 'components' => [], 'controllers' => [], 'collectionFilters' => [], + 'collectionMethods' => [], 'fieldMethods' => [], 'fileMethods' => [], 'filesMethods' => [], @@ -56,12 +64,14 @@ trait AppPlugins 'pageMethods' => [], 'pagesMethods' => [], 'pageModels' => [], + 'permissions' => [], 'routes' => [], 'sections' => [], 'siteMethods' => [], 'snippets' => [], 'tags' => [], 'templates' => [], + 'thirdParty' => [], 'translations' => [], 'userMethods' => [], 'userModels' => [], @@ -69,13 +79,6 @@ trait AppPlugins 'validators' => [] ]; - /** - * Cache for system extensions - * - * @var array - */ - protected static $systemExtensions = null; - /** * Flag when plugins have been loaded * to not load them again @@ -152,7 +155,18 @@ trait AppPlugins */ protected function extendCollectionFilters(array $filters): array { - return $this->extensions['collectionFilters'] = Collection::$filters = array_merge(Collection::$filters, $filters); + return $this->extensions['collectionFilters'] = ToolkitCollection::$filters = array_merge(ToolkitCollection::$filters, $filters); + } + + /** + * Registers additional collection methods + * + * @param array $methods + * @return array + */ + protected function extendCollectionMethods(array $methods): array + { + return $this->extensions['collectionMethods'] = Collection::$methods = array_merge(Collection::$methods, $methods); } /** @@ -287,6 +301,10 @@ trait AppPlugins $options = $prefixed; } + // register each option in the nesting blacklist; + // this prevents Kirby from nesting the array keys inside each option + static::$nestIgnoreOptions = array_merge(static::$nestIgnoreOptions, array_keys($options)); + return $this->extensions['options'] = $this->options = A::merge($options, $this->options, A::MERGE_REPLACE); } @@ -334,6 +352,22 @@ trait AppPlugins return $this->extensions['pages'] = array_merge($this->extensions['pages'], $pages); } + /** + * Registers additional permissions + * + * @param array $permissions + * @param \Kirby\Cms\Plugin|null $plugin + * @return array + */ + protected function extendPermissions(array $permissions, Plugin $plugin = null): array + { + if ($plugin !== null) { + $permissions = [$plugin->prefix() => $permissions]; + } + + return $this->extensions['permissions'] = Permissions::$extendedActions = array_merge(Permissions::$extendedActions, $permissions); + } + /** * Registers additional routes * @@ -426,6 +460,20 @@ trait AppPlugins return $this->extensions['translations'] = array_replace_recursive($this->extensions['translations'], $translations); } + /** + * Add third party extensions to the registry + * so they can be used as plugins for plugins + * for example. + * + * @param string $type + * @param array $extensions + * @return array + */ + protected function extendThirdParty(array $extensions): array + { + return $this->extensions['thirdParty'] = array_replace_recursive($this->extensions['thirdParty'], $extensions); + } + /** * Registers additional user methods * @@ -514,7 +562,7 @@ trait AppPlugins $class = str_replace(['.', '-', '_'], '', $name) . 'Page'; // load the model class - include_once $model; + F::loadOnce($model); if (class_exists($class) === true) { $models[$name] = $class; @@ -577,16 +625,18 @@ trait AppPlugins */ protected function extensionsFromSystem() { + $root = $this->root('kirby'); + // load static extensions only once if (static::$systemExtensions === null) { // Form Field Mixins - FormField::$mixins['filepicker'] = include static::$root . '/config/fields/mixins/filepicker.php'; - FormField::$mixins['min'] = include static::$root . '/config/fields/mixins/min.php'; - FormField::$mixins['options'] = include static::$root . '/config/fields/mixins/options.php'; - FormField::$mixins['pagepicker'] = include static::$root . '/config/fields/mixins/pagepicker.php'; - FormField::$mixins['picker'] = include static::$root . '/config/fields/mixins/picker.php'; - FormField::$mixins['upload'] = include static::$root . '/config/fields/mixins/upload.php'; - FormField::$mixins['userpicker'] = include static::$root . '/config/fields/mixins/userpicker.php'; + FormField::$mixins['filepicker'] = include $root . '/config/fields/mixins/filepicker.php'; + FormField::$mixins['min'] = include $root . '/config/fields/mixins/min.php'; + FormField::$mixins['options'] = include $root . '/config/fields/mixins/options.php'; + FormField::$mixins['pagepicker'] = include $root . '/config/fields/mixins/pagepicker.php'; + FormField::$mixins['picker'] = include $root . '/config/fields/mixins/picker.php'; + FormField::$mixins['upload'] = include $root . '/config/fields/mixins/upload.php'; + FormField::$mixins['userpicker'] = include $root . '/config/fields/mixins/userpicker.php'; // Tag Aliases KirbyTag::$aliases = [ @@ -612,32 +662,32 @@ trait AppPlugins ]; // blueprint presets - PageBlueprint::$presets['pages'] = include static::$root . '/config/presets/pages.php'; - PageBlueprint::$presets['page'] = include static::$root . '/config/presets/page.php'; - PageBlueprint::$presets['files'] = include static::$root . '/config/presets/files.php'; + PageBlueprint::$presets['pages'] = include $root . '/config/presets/pages.php'; + PageBlueprint::$presets['page'] = include $root . '/config/presets/page.php'; + PageBlueprint::$presets['files'] = include $root . '/config/presets/files.php'; // section mixins - Section::$mixins['empty'] = include static::$root . '/config/sections/mixins/empty.php'; - Section::$mixins['headline'] = include static::$root . '/config/sections/mixins/headline.php'; - Section::$mixins['help'] = include static::$root . '/config/sections/mixins/help.php'; - Section::$mixins['layout'] = include static::$root . '/config/sections/mixins/layout.php'; - Section::$mixins['max'] = include static::$root . '/config/sections/mixins/max.php'; - Section::$mixins['min'] = include static::$root . '/config/sections/mixins/min.php'; - Section::$mixins['pagination'] = include static::$root . '/config/sections/mixins/pagination.php'; - Section::$mixins['parent'] = include static::$root . '/config/sections/mixins/parent.php'; + Section::$mixins['empty'] = include $root . '/config/sections/mixins/empty.php'; + Section::$mixins['headline'] = include $root . '/config/sections/mixins/headline.php'; + Section::$mixins['help'] = include $root . '/config/sections/mixins/help.php'; + Section::$mixins['layout'] = include $root . '/config/sections/mixins/layout.php'; + Section::$mixins['max'] = include $root . '/config/sections/mixins/max.php'; + Section::$mixins['min'] = include $root . '/config/sections/mixins/min.php'; + Section::$mixins['pagination'] = include $root . '/config/sections/mixins/pagination.php'; + Section::$mixins['parent'] = include $root . '/config/sections/mixins/parent.php'; // section types - Section::$types['info'] = include static::$root . '/config/sections/info.php'; - Section::$types['pages'] = include static::$root . '/config/sections/pages.php'; - Section::$types['files'] = include static::$root . '/config/sections/files.php'; - Section::$types['fields'] = include static::$root . '/config/sections/fields.php'; + Section::$types['info'] = include $root . '/config/sections/info.php'; + Section::$types['pages'] = include $root . '/config/sections/pages.php'; + Section::$types['files'] = include $root . '/config/sections/files.php'; + Section::$types['fields'] = include $root . '/config/sections/fields.php'; static::$systemExtensions = [ - 'components' => include static::$root . '/config/components.php', - 'blueprints' => include static::$root . '/config/blueprints.php', - 'fields' => include static::$root . '/config/fields.php', - 'fieldMethods' => include static::$root . '/config/methods.php', - 'tags' => include static::$root . '/config/tags.php' + 'components' => include $root . '/config/components.php', + 'blueprints' => include $root . '/config/blueprints.php', + 'fields' => include $root . '/config/fields.php', + 'fieldMethods' => include $root . '/config/methods.php', + 'tags' => include $root . '/config/tags.php' ]; } @@ -656,6 +706,18 @@ trait AppPlugins $this->extendTags(static::$systemExtensions['tags']); } + /** + * Returns the native implementation + * of a core component + * + * @param string $component + * @return \Closure | false + */ + public function nativeComponent(string $component) + { + return static::$systemExtensions['components'][$component] ?? false; + } + /** * Kirby plugin factory and getter * @@ -733,7 +795,7 @@ trait AppPlugins continue; } - include_once $entry; + F::loadOnce($entry); $loaded[] = $dir; } diff --git a/kirby/src/Cms/AppUsers.php b/kirby/src/Cms/AppUsers.php index 98697f2..3ca24f8 100755 --- a/kirby/src/Cms/AppUsers.php +++ b/kirby/src/Cms/AppUsers.php @@ -2,6 +2,7 @@ namespace Kirby\Cms; +use Closure; use Throwable; /** @@ -36,12 +37,34 @@ trait AppUsers /** * Become any existing user * - * @param string|null $who - * @return \Kirby\Cms\User|null + * @param string|null $who User ID or email address + * @param Closure|null $callback Optional action function that will be run with + * the permissions of the impersonated user; the + * impersonation will be reset afterwards + * @return mixed If called without callback: User that was impersonated; + * if called with callback: Return value from the callback */ - public function impersonate(string $who = null) + public function impersonate(?string $who = null, ?Closure $callback = null) { - return $this->auth()->impersonate($who); + $auth = $this->auth(); + + $userBefore = $auth->currentUserFromImpersonation(); + $userAfter = $auth->impersonate($who); + + if ($callback === null) { + return $userAfter; + } + + try { + // bind the App object to the callback + return $callback->call($this, $userAfter); + } catch (Throwable $e) { + throw $e; + } finally { + // ensure that the impersonation is *always* reset + // to the original value, even if an error occurred + $auth->impersonate($userBefore !== null ? $userBefore->id() : null); + } } /** @@ -77,20 +100,23 @@ trait AppUsers * Returns a specific user by id * or the current user if no id is given * - * @param string $id + * @param string|null $id + * @param bool $allowImpersonation If set to false, only the actually + * logged in user will be returned + * (when `$id` is passed as `null`) * @return \Kirby\Cms\User|null */ - public function user(string $id = null) + public function user(?string $id = null, bool $allowImpersonation = true) { if ($id !== null) { return $this->users()->find($id); } - if (is_string($this->user) === true) { + if ($allowImpersonation === true && is_string($this->user) === true) { return $this->auth()->impersonate($this->user); } else { try { - return $this->auth()->user(); + return $this->auth()->user(null, $allowImpersonation); } catch (Throwable $e) { return null; } diff --git a/kirby/src/Cms/Auth.php b/kirby/src/Cms/Auth.php index bd2b6dd..12c8892 100755 --- a/kirby/src/Cms/Auth.php +++ b/kirby/src/Cms/Auth.php @@ -85,6 +85,16 @@ class Auth return $this->validatePassword($auth->username(), $auth->password()); } + /** + * Returns the currently impersonated user + * + * @return \Kirby\Cms\User|null + */ + public function currentUserFromImpersonation() + { + return $this->impersonate; + } + /** * Returns the logged in user by checking * the current session and finding a valid @@ -124,10 +134,10 @@ class Auth /** * Become any existing user * - * @param string|null $who + * @param string|null $who User ID or email address * @return \Kirby\Cms\User|null */ - public function impersonate(string $who = null) + public function impersonate(?string $who = null) { switch ($who) { case null: @@ -416,16 +426,19 @@ class Auth /** * Returns the current authentication type * + * @param bool $allowImpersonation If set to false, 'impersonate' won't + * be returned as authentication type + * even if an impersonation is active * @return string */ - public function type(): string + public function type(bool $allowImpersonation = true): string { $basicAuth = $this->kirby->option('api.basicAuth', false); $auth = $this->kirby->request()->auth(); if ($basicAuth === true && $auth && $auth->type() === 'basic') { return 'basic'; - } elseif ($this->impersonate !== null) { + } elseif ($allowImpersonation === true && $this->impersonate !== null) { return 'impersonate'; } else { return 'session'; @@ -436,13 +449,15 @@ class Auth * Validates the currently logged in user * * @param \Kirby\Session\Session|array|null $session + * @param bool $allowImpersonation If set to false, only the actually + * logged in user will be returned * @return \Kirby\Cms\User * * @throws \Throwable If an authentication error occured */ - public function user($session = null) + public function user($session = null, bool $allowImpersonation = true) { - if ($this->impersonate !== null) { + if ($allowImpersonation === true && $this->impersonate !== null) { return $this->impersonate; } diff --git a/kirby/src/Cms/Collection.php b/kirby/src/Cms/Collection.php index 7f65b95..f987a18 100755 --- a/kirby/src/Cms/Collection.php +++ b/kirby/src/Cms/Collection.php @@ -45,7 +45,7 @@ class Collection extends BaseCollection public function __call(string $key, $arguments) { // collection methods - if ($this->hasMethod($key)) { + if ($this->hasMethod($key) === true) { return $this->callMethod($key, $arguments); } } diff --git a/kirby/src/Cms/Collections.php b/kirby/src/Cms/Collections.php index 8a42ce2..de44581 100755 --- a/kirby/src/Cms/Collections.php +++ b/kirby/src/Cms/Collections.php @@ -4,6 +4,7 @@ namespace Kirby\Cms; use Kirby\Exception\NotFoundException; use Kirby\Toolkit\Controller; +use Kirby\Toolkit\F; /** * Manages and loads all collections @@ -119,8 +120,8 @@ class Collections // first check for collection file $file = $kirby->root('collections') . '/' . $name . '.php'; - if (file_exists($file)) { - $collection = require $file; + if (is_file($file) === true) { + $collection = F::load($file); if (is_a($collection, 'Closure')) { return $collection; diff --git a/kirby/src/Cms/Content.php b/kirby/src/Cms/Content.php index e55d84a..c702a60 100755 --- a/kirby/src/Cms/Content.php +++ b/kirby/src/Cms/Content.php @@ -257,6 +257,10 @@ class Content public function update(array $content = null, bool $overwrite = false) { $this->data = $overwrite === true ? (array)$content : array_merge($this->data, (array)$content); + + // clear cache of Field objects + $this->fields = []; + return $this; } } diff --git a/kirby/src/Cms/ContentLocks.php b/kirby/src/Cms/ContentLocks.php index 2e4e73a..4c48a3f 100755 --- a/kirby/src/Cms/ContentLocks.php +++ b/kirby/src/Cms/ContentLocks.php @@ -2,7 +2,7 @@ namespace Kirby\Cms; -use Kirby\Data\Yaml; +use Kirby\Data\Data; use Kirby\Exception\Exception; use Kirby\Toolkit\F; @@ -108,7 +108,7 @@ class ContentLocks // always read the whole file rewind($handle); $string = fread($handle, $filesize); - $data = Yaml::decode($string); + $data = Data::decode($string, 'yaml'); } } @@ -207,7 +207,7 @@ class ContentLocks return F::remove($file); } - $yaml = Yaml::encode($this->data[$file]); + $yaml = Data::encode($this->data[$file], 'yaml'); // delete all file contents first if (rewind($handle) !== true || ftruncate($handle, 0) !== true) { diff --git a/kirby/src/Cms/Event.php b/kirby/src/Cms/Event.php new file mode 100755 index 0000000..3b9f3ec --- /dev/null +++ b/kirby/src/Cms/Event.php @@ -0,0 +1,288 @@ +trigger()` + * or `$kirby->apply()` methods are called. It collects all + * event information and handles calling the individual hooks. + * + * @package Kirby Cms + * @author Lukas Bestle , + * Ahmet Bora + * @link https://getkirby.com + * @copyright Bastian Allgeier GmbH + * @license https://getkirby.com/license + */ +class Event +{ + /** + * The full event name + * (e.g. `page.create:after`) + * + * @var string + */ + protected $name; + + /** + * The event type + * (e.g. `page` in `page.create:after`) + * + * @var string + */ + protected $type; + + /** + * The event action + * (e.g. `create` in `page.create:after`) + * + * @var string|null + */ + protected $action; + + /** + * The event state + * (e.g. `after` in `page.create:after`) + * + * @var string|null + */ + protected $state; + + /** + * The event arguments + * + * @var array + */ + protected $arguments = []; + + /** + * Class constructor + * + * @param string $name Full event name + * @param array $arguments Associative array of named event arguments + */ + public function __construct(string $name, array $arguments = []) + { + // split the event name into `$type.$action:$state` + // $action and $state are optional; + // if there is more than one dot, $type will be greedy + $regex = '/^(?.+?)(?:\.(?[^.]*?))?(?:\:(?.*))?$/'; + preg_match($regex, $name, $matches, PREG_UNMATCHED_AS_NULL); + + $this->name = $name; + $this->type = $matches['type']; + $this->action = $matches['action'] ?? null; + $this->state = $matches['state'] ?? null; + $this->arguments = $arguments; + } + + /** + * Magic caller for event arguments + * + * @param string $method + * @param array $arguments + * @return mixed + */ + public function __call(string $method, array $arguments = []) + { + return $this->argument($method); + } + + /** + * Improved `var_dump` output + * + * @return array + */ + public function __debugInfo(): array + { + return $this->toArray(); + } + + /** + * Makes it possible to simply echo + * or stringify the entire object + * + * @return string + */ + public function __toString(): string + { + return $this->toString(); + } + + /** + * Returns the action of the event (e.g. `create`) + * or `null` if the event name does not include an action + * + * @return string|null + */ + public function action(): ?string + { + return $this->action; + } + + /** + * Returns a specific event argument + * + * @param string $name + * @return mixed + */ + public function argument(string $name) + { + if (isset($this->arguments[$name]) === true) { + return $this->arguments[$name]; + } + + return null; + } + + /** + * Returns the arguments of the event + * + * @return array + */ + public function arguments(): array + { + return $this->arguments; + } + + /** + * Calls a hook with the event data and returns + * the hook's return value + * + * @param object|null $bind Optional object to bind to the hook function + * @param \Closure $hook + * @return mixed + */ + public function call($bind = null, Closure $hook) + { + // collect the list of possible hook arguments + $data = $this->arguments(); + $data['event'] = $this; + + // magically call the hook with the arguments it requested + $hook = new Controller($hook); + return $hook->call($bind, $data); + } + + /** + * Returns the full name of the event + * + * @return string + */ + public function name(): string + { + return $this->name; + } + + /** + * Returns the full list of possible wildcard + * event names based on the current event name + * + * @return array + */ + public function nameWildcards(): array + { + // if the event is already a wildcard event, no further variation is possible + if ($this->type === '*' || $this->action === '*' || $this->state === '*') { + return []; + } + + if ($this->action !== null && $this->state !== null) { + // full $type.$action:$state event + + return [ + $this->type . '.*:' . $this->state, + $this->type . '.' . $this->action . ':*', + $this->type . '.*:*', + '*.' . $this->action . ':' . $this->state, + '*.' . $this->action . ':*', + '*:' . $this->state, + '*' + ]; + } elseif ($this->state !== null) { + // event without action: $type:$state + + return [ + $this->type . ':*', + '*:' . $this->state, + '*' + ]; + } elseif ($this->action !== null) { + // event without state: $type.$action + + return [ + $this->type . '.*', + '*.' . $this->action, + '*' + ]; + } else { + // event with a simple name + + return ['*']; + } + } + + /** + * Returns the state of the event (e.g. `after`) + * + * @return string|null + */ + public function state(): ?string + { + return $this->state; + } + + /** + * Returns the event data as array + * + * @return array + */ + public function toArray(): array + { + return [ + 'name' => $this->name, + 'arguments' => $this->arguments + ]; + } + + /** + * Returns the event name as string + * + * @return string + */ + public function toString(): string + { + return $this->name; + } + + /** + * Returns the type of the event (e.g. `page`) + * + * @return string + */ + public function type(): string + { + return $this->type; + } + + /** + * Updates a given argument with a new value + * + * @internal + * @param string $name + * @param mixed $value + * @return void + */ + public function updateArgument(string $name, $value): void + { + if (array_key_exists($name, $this->arguments) !== true) { + throw new InvalidArgumentException('The argument ' . $name . ' does not exist'); + } + + $this->arguments[$name] = $value; + } +} diff --git a/kirby/src/Cms/File.php b/kirby/src/Cms/File.php index dc0c804..422d124 100755 --- a/kirby/src/Cms/File.php +++ b/kirby/src/Cms/File.php @@ -326,14 +326,32 @@ class File extends ModelWithContent } /** - * Create a unique media hash + * Check if the file can be read by the current user + * + * @return bool + */ + public function isReadable(): bool + { + static $readable = []; + + $template = $this->template(); + + if (isset($readable[$template]) === true) { + return $readable[$template]; + } + + return $readable[$template] = $this->permissions()->can('read'); + } + + /** + * Creates a unique media hash * * @internal * @return string */ public function mediaHash(): string { - return crc32($this->filename()) . '-' . $this->modifiedFile(); + return $this->mediaToken() . '-' . $this->modifiedFile(); } /** @@ -347,6 +365,18 @@ class File extends ModelWithContent return $this->parent()->mediaRoot() . '/' . $this->mediaHash() . '/' . $this->filename(); } + /** + * Creates a non-guessable token string for this file + * + * @internal + * @return string + */ + public function mediaToken(): string + { + $token = $this->kirby()->contentToken($this, $this->id()); + return substr($token, 0, 10); + } + /** * Returns the absolute Url to the file in the public media folder * @@ -375,12 +405,13 @@ class File extends ModelWithContent * * @param string $format * @param string|null $handler date or strftime + * @param string|null $languageCode * @return mixed */ - public function modified(string $format = null, string $handler = null) + public function modified(string $format = null, string $handler = null, string $languageCode = null) { $file = $this->modifiedFile(); - $content = $this->modifiedContent(); + $content = $this->modifiedContent($languageCode); $modified = max($file, $content); if (is_null($format) === true) { @@ -396,11 +427,12 @@ class File extends ModelWithContent * Timestamp of the last modification * of the content file * + * @param string|null $languageCode * @return int */ - protected function modifiedContent(): int + protected function modifiedContent(string $languageCode = null): int { - return F::modified($this->contentFile()); + return F::modified($this->contentFile($languageCode)); } /** diff --git a/kirby/src/Cms/FileActions.php b/kirby/src/Cms/FileActions.php index 72d5652..5dfe7e9 100755 --- a/kirby/src/Cms/FileActions.php +++ b/kirby/src/Cms/FileActions.php @@ -38,7 +38,7 @@ trait FileActions return $this; } - return $this->commit('changeName', [$this, $name], function ($oldFile, $name) { + return $this->commit('changeName', ['file' => $this, 'name' => $name], function ($oldFile, $name) { $newFile = $oldFile->clone([ 'filename' => $name . '.' . $oldFile->extension(), ]); @@ -87,7 +87,7 @@ trait FileActions */ public function changeSort(int $sort) { - return $this->commit('changeSort', [$this, $sort], function ($file, $sort) { + return $this->commit('changeSort', ['file' => $this, 'position' => $sort], function ($file, $sort) { return $file->save(['sort' => $sort]); }); } @@ -108,13 +108,24 @@ trait FileActions */ protected function commit(string $action, array $arguments, Closure $callback) { - $old = $this->hardcopy(); - $kirby = $this->kirby(); + $old = $this->hardcopy(); + $kirby = $this->kirby(); + $argumentValues = array_values($arguments); + + $this->rules()->$action(...$argumentValues); + $kirby->trigger('file.' . $action . ':before', $arguments); + + $result = $callback(...$argumentValues); + + if ($action === 'create') { + $argumentsAfter = ['file' => $result]; + } elseif ($action === 'delete') { + $argumentsAfter = ['status' => $result, 'file' => $old]; + } else { + $argumentsAfter = ['newFile' => $result, 'oldFile' => $old]; + } + $kirby->trigger('file.' . $action . ':after', $argumentsAfter); - $this->rules()->$action(...$arguments); - $kirby->trigger('file.' . $action . ':before', ...$arguments); - $result = $callback(...$arguments); - $kirby->trigger('file.' . $action . ':after', $result, $old); $kirby->cache('pages')->flush(); return $result; } @@ -175,7 +186,7 @@ trait FileActions $file = $file->clone(['content' => $form->strings(true)]); // run the hook - return $file->commit('create', [$file, $upload], function ($file, $upload) { + return $file->commit('create', compact('file', 'upload'), function ($file, $upload) { // delete all public versions $file->unpublish(); @@ -211,7 +222,7 @@ trait FileActions */ public function delete(): bool { - return $this->commit('delete', [$this], function ($file) { + return $this->commit('delete', ['file' => $this], function ($file) { // remove all versions in the media folder $file->unpublish(); @@ -243,7 +254,7 @@ trait FileActions */ public function publish() { - Media::publish($this->root(), $this->mediaRoot()); + Media::publish($this, $this->mediaRoot()); return $this; } @@ -273,7 +284,7 @@ trait FileActions */ public function replace(string $source) { - return $this->commit('replace', [$this, new Image($source)], function ($file, $upload) { + return $this->commit('replace', ['file' => $this, 'upload' => new Image($source)], function ($file, $upload) { // delete all public versions $file->unpublish(); @@ -295,7 +306,7 @@ trait FileActions */ public function unpublish() { - Media::unpublish($this->parent()->mediaRoot(), $this->filename()); + Media::unpublish($this->parent()->mediaRoot(), $this); return $this; } } diff --git a/kirby/src/Cms/FileBlueprint.php b/kirby/src/Cms/FileBlueprint.php index 2af1e4c..9323e67 100755 --- a/kirby/src/Cms/FileBlueprint.php +++ b/kirby/src/Cms/FileBlueprint.php @@ -26,6 +26,7 @@ class FileBlueprint extends Blueprint 'changeName' => null, 'create' => null, 'delete' => null, + 'read' => null, 'replace' => null, 'update' => null, ] diff --git a/kirby/src/Cms/Filename.php b/kirby/src/Cms/Filename.php index d4fa708..3f48a45 100755 --- a/kirby/src/Cms/Filename.php +++ b/kirby/src/Cms/Filename.php @@ -298,6 +298,6 @@ class Filename 'name' => $this->name(), 'attributes' => $this->attributesToString('-'), 'extension' => $this->extension() - ]); + ], ''); } } diff --git a/kirby/src/Cms/Files.php b/kirby/src/Cms/Files.php index ce32bf9..8a7e968 100755 --- a/kirby/src/Cms/Files.php +++ b/kirby/src/Cms/Files.php @@ -55,7 +55,7 @@ class Files extends Collection * Sort all given files by the * order in the array * - * @param array $files List of filenames + * @param array $files List of file ids * @param int $offset Sorting offset * @return self */ diff --git a/kirby/src/Cms/HasChildren.php b/kirby/src/Cms/HasChildren.php index dbdb74f..34d950e 100755 --- a/kirby/src/Cms/HasChildren.php +++ b/kirby/src/Cms/HasChildren.php @@ -126,7 +126,7 @@ trait HasChildren * Finds one or multiple children by id * * @param string ...$arguments - * @return \Kirby\Cms\Page|\Kirby\Cms\Pages + * @return \Kirby\Cms\Page|\Kirby\Cms\Pages|null */ public function find(...$arguments) { diff --git a/kirby/src/Cms/HasMethods.php b/kirby/src/Cms/HasMethods.php index 4a1a6bc..b6d812b 100755 --- a/kirby/src/Cms/HasMethods.php +++ b/kirby/src/Cms/HasMethods.php @@ -2,6 +2,8 @@ namespace Kirby\Cms; +use Kirby\Exception\BadMethodCallException; + /** * HasMethods * @@ -31,7 +33,13 @@ trait HasMethods */ public function callMethod(string $method, array $args = []) { - return static::$methods[$method]->call($this, ...$args); + $closure = $this->getMethod($method); + + if ($closure === null) { + throw new BadMethodCallException('The method ' . $method . ' does not exist'); + } + + return $closure->call($this, ...$args); } /** @@ -43,6 +51,29 @@ trait HasMethods */ public function hasMethod(string $method): bool { - return isset(static::$methods[$method]) === true; + return $this->getMethod($method) !== null; + } + + /** + * Returns a registered method by name, either from + * the current class or from a parent class ordered by + * inheritance order (top to bottom) + * + * @param string $method + * @return Closure|null + */ + protected function getMethod(string $method) + { + if (isset(static::$methods[$method]) === true) { + return static::$methods[$method]; + } + + foreach (class_parents($this) as $parent) { + if (isset($parent::$methods[$method]) === true) { + return $parent::$methods[$method]; + } + } + + return null; } } diff --git a/kirby/src/Cms/KirbyTags.php b/kirby/src/Cms/KirbyTags.php index 6442fa2..a3fea05 100755 --- a/kirby/src/Cms/KirbyTags.php +++ b/kirby/src/Cms/KirbyTags.php @@ -25,32 +25,19 @@ class KirbyTags extends \Kirby\Text\KirbyTags * @param string $text * @param array $data * @param array $options - * @param array $hooks + * @param \Kirby\Cms\App $app * @return string */ - public static function parse(string $text = null, array $data = [], array $options = [], array $hooks = []): string + public static function parse(string $text = null, array $data = [], array $options = [], ?App $app = null): string { - $text = static::hooks($hooks['kirbytags:before'] ?? [], $text, $data, $options); + if ($app !== null) { + $text = $app->apply('kirbytags:before', compact('text', 'data', 'options'), 'text'); + } + $text = parent::parse($text, $data, $options); - $text = static::hooks($hooks['kirbytags:after'] ?? [], $text, $data, $options); - return $text; - } - - /** - * Runs the given hooks and returns the - * modified text - * - * @param array $hooks - * @param string $text - * @param array $data - * @param array $options - * @return string|null - */ - protected static function hooks(array $hooks, string $text = null, array $data, array $options): ?string - { - foreach ($hooks as $hook) { - $text = $hook->call($data['kirby'], $text, $data, $options); + if ($app !== null) { + $text = $app->apply('kirbytags:after', compact('text', 'data', 'options'), 'text'); } return $text; diff --git a/kirby/src/Cms/Languages.php b/kirby/src/Cms/Languages.php index e2167da..4aeac34 100755 --- a/kirby/src/Cms/Languages.php +++ b/kirby/src/Cms/Languages.php @@ -94,7 +94,7 @@ class Languages extends Collection $files = glob(App::instance()->root('languages') . '/*.php'); foreach ($files as $file) { - $props = include $file; + $props = F::load($file); if (is_array($props) === true) { // inject the language code from the filename if it does not exist diff --git a/kirby/src/Cms/Media.php b/kirby/src/Cms/Media.php index 804ac3c..a065122 100755 --- a/kirby/src/Cms/Media.php +++ b/kirby/src/Cms/Media.php @@ -5,6 +5,7 @@ namespace Kirby\Cms; use Kirby\Data\Data; use Kirby\Toolkit\Dir; use Kirby\Toolkit\F; +use Kirby\Toolkit\Str; use Throwable; /** @@ -41,9 +42,15 @@ class Media // this should work for all original files if ($file = $model->file($filename)) { - // the media hash is outdated. redirect to the correct url + // check if the request contained an outdated media hash if ($file->mediaHash() !== $hash) { - return Response::redirect($file->mediaUrl(), 307); + // if at least the token was correct, redirect + if (Str::startsWith($hash, $file->mediaToken() . '-') === true) { + return Response::redirect($file->mediaUrl(), 307); + } else { + // don't leak the correct token + return new Response('Not Found', 'text/plain', 404); + } } // send the file to the browser @@ -57,18 +64,18 @@ class Media /** * Copy the file to the final media folder location * - * @param string $src + * @param \Kirby\Cms\File $file * @param string $dest * @return bool */ - public static function publish(string $src, string $dest): bool + public static function publish(File $file, string $dest): bool { - $filename = basename($src); + $src = $file->root(); $version = dirname($dest); $directory = dirname($version); // unpublish all files except stuff in the version folder - Media::unpublish($directory, $filename, $version); + Media::unpublish($directory, $file, $version); // copy/overwrite the file to the dest folder return F::copy($src, $dest, true); @@ -125,21 +132,25 @@ class Media } /** - * Deletes all versions of the given filename + * Deletes all versions of the given file * within the parent directory * * @param string $directory - * @param string $filename + * @param \Kirby\Cms\File $file * @param string $ignore * @return bool */ - public static function unpublish(string $directory, string $filename, string $ignore = null): bool + public static function unpublish(string $directory, File $file, string $ignore = null): bool { if (is_dir($directory) === false) { return true; } - $versions = glob($directory . '/' . crc32($filename) . '*', GLOB_ONLYDIR); + // get both old and new versions (pre and post Kirby 3.4.0) + $versions = array_merge( + glob($directory . '/' . crc32($file->filename()) . '-*', GLOB_ONLYDIR), + glob($directory . '/' . $file->mediaToken() . '-*', GLOB_ONLYDIR) + ); // delete all versions of the file foreach ($versions as $version) { diff --git a/kirby/src/Cms/ModelWithContent.php b/kirby/src/Cms/ModelWithContent.php index 3bd31ea..1eeb3a2 100755 --- a/kirby/src/Cms/ModelWithContent.php +++ b/kirby/src/Cms/ModelWithContent.php @@ -334,6 +334,11 @@ abstract class ModelWithContent extends Model } if (is_string($settings) === true) { + // use defined icon in blueprint + if ($settings === 'icon') { + return []; + } + $settings = [ 'query' => $settings ]; @@ -448,11 +453,15 @@ abstract class ModelWithContent extends Model return null; } - $result = Str::query($query, [ - 'kirby' => $this->kirby(), - 'site' => is_a($this, 'Kirby\Cms\Site') ? $this : $this->site(), - static::CLASS_ALIAS => $this - ]); + try { + $result = Str::query($query, [ + 'kirby' => $this->kirby(), + 'site' => is_a($this, 'Kirby\Cms\Site') ? $this : $this->site(), + static::CLASS_ALIAS => $this + ]); + } catch (Throwable $e) { + return null; + } if ($expect !== null && is_a($result, $expect) !== true) { return null; @@ -611,19 +620,21 @@ abstract class ModelWithContent extends Model * String template builder * * @param string|null $template + * @param array $data + * @param string $fallback Fallback for tokens in the template that cannot be replaced * @return string */ - public function toString(string $template = null): string + public function toString(string $template = null, array $data = [], string $fallback = ''): string { if ($template === null) { return $this->id(); } - $result = Str::template($template, [ + $result = Str::template($template, array_replace([ 'kirby' => $this->kirby(), 'site' => is_a($this, 'Kirby\Cms\Site') ? $this : $this->site(), static::CLASS_ALIAS => $this - ]); + ], $data), $fallback); return $result; } @@ -691,7 +702,8 @@ abstract class ModelWithContent extends Model } } - return $this->commit('update', [$this, $form->data(), $form->strings(), $languageCode], function ($model, $values, $strings, $languageCode) { + $arguments = [static::CLASS_ALIAS => $this, 'values' => $form->data(), 'strings' => $form->strings(), 'languageCode' => $languageCode]; + return $this->commit('update', $arguments, function ($model, $values, $strings, $languageCode) { // save updated values $model = $model->save($strings, $languageCode, true); diff --git a/kirby/src/Cms/Page.php b/kirby/src/Cms/Page.php index 25f1ca1..108aa8d 100755 --- a/kirby/src/Cms/Page.php +++ b/kirby/src/Cms/Page.php @@ -3,6 +3,7 @@ namespace Kirby\Cms; use Kirby\Exception\Exception; +use Kirby\Exception\InvalidArgumentException; use Kirby\Exception\NotFoundException; use Kirby\Http\Uri; use Kirby\Toolkit\A; @@ -344,7 +345,31 @@ class Page extends ModelWithContent ]); // call the template controller if there's one. - return array_merge($kirby->controller($this->template()->name(), $data, $contentType), $data); + $controllerData = $kirby->controller($this->template()->name(), $data, $contentType); + + // merge controller data with original data safely + if (empty($controllerData) === false) { + $classes = [ + 'kirby' => 'Kirby\Cms\App', + 'site' => 'Kirby\Cms\Site', + 'pages' => 'Kirby\Cms\Pages', + 'page' => 'Kirby\Cms\Page' + ]; + + foreach ($controllerData as $key => $value) { + if (array_key_exists($key, $classes) === true) { + if (is_a($value, $classes[$key]) === true) { + $data[$key] = $value; + } else { + throw new InvalidArgumentException('The returned variable "' . $key . '" from the controller "' . $this->template()->name() . '" is not of the required type "' . $classes[$key] . '"'); + } + } else { + $data[$key] = $value; + } + } + } + + return $data; } /** @@ -453,6 +478,20 @@ class Page extends ModelWithContent return new static($props); } + /** + * Redirects to this page, + * wrapper for the `go()` helper + * + * @since 3.4.0 + * + * @param array $options Options for `Kirby\Http\Uri` to create URL parts + * @param int $code HTTP status code + */ + public function go(array $options = [], int $code = 302) + { + go($this->url($options), $code); + } + /** * Checks if the intended template * for the page exists. @@ -889,11 +928,16 @@ class Page extends ModelWithContent * * @param string $format * @param string|null $handler + * @param string|null $languageCode * @return int|string */ - public function modified(string $format = null, string $handler = null) + public function modified(string $format = null, string $handler = null, string $languageCode = null) { - return F::modified($this->contentFile(), $format, $handler ?? $this->kirby()->option('date.handler', 'date')); + return F::modified( + $this->contentFile($languageCode), + $format, + $handler ?? $this->kirby()->option('date.handler', 'date') + ); } /** @@ -1448,7 +1492,7 @@ class Page extends ModelWithContent */ protected function token(): string { - return sha1($this->id() . $this->template()); + return $this->kirby()->contentToken($this, $this->id() . $this->template()); } /** diff --git a/kirby/src/Cms/PageActions.php b/kirby/src/Cms/PageActions.php index 6c4a2d8..694cc12 100755 --- a/kirby/src/Cms/PageActions.php +++ b/kirby/src/Cms/PageActions.php @@ -42,7 +42,7 @@ trait PageActions return $this; } - return $this->commit('changeNum', [$this, $num], function ($oldPage, $num) { + return $this->commit('changeNum', ['page' => $this, 'num' => $num], function ($oldPage, $num) { $newPage = $oldPage->clone([ 'num' => $num, 'dirname' => null, @@ -97,7 +97,8 @@ trait PageActions return $this; } - return $this->commit('changeSlug', [$this, $slug, $languageCode = null], function ($oldPage, $slug) { + $arguments = ['page' => $this, 'slug' => $slug, 'languageCode' => null]; + return $this->commit('changeSlug', $arguments, function ($oldPage, $slug) { $newPage = $oldPage->clone([ 'slug' => $slug, 'dirname' => null, @@ -151,7 +152,8 @@ trait PageActions throw new InvalidArgumentException('Use the changeSlug method to change the slug for the default language'); } - return $this->commit('changeSlug', [$this, $slug, $languageCode], function ($page, $slug, $languageCode) { + $arguments = ['page' => $this, 'slug' => $slug, 'languageCode' => $languageCode]; + return $this->commit('changeSlug', $arguments, function ($page, $slug, $languageCode) { // remove the slug if it's the same as the folder name if ($slug === $page->uid()) { $slug = null; @@ -185,7 +187,8 @@ trait PageActions protected function changeStatusToDraft() { - $page = $this->commit('changeStatus', [$this, 'draft', null], function ($page) { + $arguments = ['page' => $this, 'status' => 'draft', 'position' => null]; + $page = $this->commit('changeStatus', $arguments, function ($page) { return $page->unpublish(); }); @@ -206,7 +209,8 @@ trait PageActions return $this; } - $page = $this->commit('changeStatus', [$this, 'listed', $num], function ($page, $status, $position) { + $arguments = ['page' => $this, 'status' => 'listed', 'position' => $num]; + $page = $this->commit('changeStatus', $arguments, function ($page, $status, $position) { return $page->publish()->changeNum($position); }); @@ -226,7 +230,8 @@ trait PageActions return $this; } - $page = $this->commit('changeStatus', [$this, 'unlisted', null], function ($page) { + $arguments = ['page' => $this, 'status' => 'unlisted', 'position' => null]; + $page = $this->commit('changeStatus', $arguments, function ($page) { return $page->publish()->changeNum(null); }); @@ -243,11 +248,11 @@ trait PageActions */ public function changeTemplate(string $template) { - if ($template === $this->template()->name()) { + if ($template === $this->intendedTemplate()->name()) { return $this; } - return $this->commit('changeTemplate', [$this, $template], function ($oldPage, $template) { + return $this->commit('changeTemplate', ['page' => $this, 'template' => $template], function ($oldPage, $template) { if ($this->kirby()->multilang() === true) { $newPage = $this->clone([ 'template' => $template @@ -290,7 +295,8 @@ trait PageActions */ public function changeTitle(string $title, string $languageCode = null) { - return $this->commit('changeTitle', [$this, $title, $languageCode], function ($page, $title, $languageCode) { + $arguments = ['page' => $this, 'title' => $title, 'languageCode' => $languageCode]; + return $this->commit('changeTitle', $arguments, function ($page, $title, $languageCode) { return $page->save(['title' => $title], $languageCode); }); } @@ -311,13 +317,27 @@ trait PageActions */ protected function commit(string $action, array $arguments, Closure $callback) { - $old = $this->hardcopy(); + $old = $this->hardcopy(); + $kirby = $this->kirby(); + $argumentValues = array_values($arguments); - $this->rules()->$action(...$arguments); - $this->kirby()->trigger('page.' . $action . ':before', ...$arguments); - $result = $callback(...$arguments); - $this->kirby()->trigger('page.' . $action . ':after', $result, $old); - $this->kirby()->cache('pages')->flush(); + $this->rules()->$action(...$argumentValues); + $kirby->trigger('page.' . $action . ':before', $arguments); + + $result = $callback(...$argumentValues); + + if ($action === 'create') { + $argumentsAfter = ['page' => $result]; + } elseif ($action === 'duplicate') { + $argumentsAfter = ['duplicatePage' => $result]; + } elseif ($action === 'delete') { + $argumentsAfter = ['status' => $result, 'page' => $old]; + } else { + $argumentsAfter = ['newPage' => $result, 'oldPage' => $old]; + } + $kirby->trigger('page.' . $action . ':after', $argumentsAfter); + + $kirby->cache('pages')->flush(); return $result; } @@ -356,7 +376,9 @@ trait PageActions 'slug' => $slug, ]); - $ignore = []; + $ignore = [ + $this->kirby()->locks()->file($this) + ]; // don't copy files if ($files === false) { @@ -375,7 +397,7 @@ trait PageActions // remove all translated slugs if ($this->kirby()->multilang() === true) { foreach ($this->kirby()->languages() as $language) { - if ($language->isDefault() === false) { + if ($language->isDefault() === false && $copy->translation($language)->exists() === true) { $copy = $copy->save(['slug' => null], $language->code()); } } @@ -416,7 +438,7 @@ trait PageActions $page = $page->clone(['content' => $form->strings(true)]); // run the hooks and creation action - $page = $page->commit('create', [$page, $props], function ($page, $props) { + $page = $page->commit('create', ['page' => $page, 'input' => $props], function ($page, $props) { // always create pages in the default language if ($page->kirby()->multilang() === true) { @@ -461,7 +483,8 @@ trait PageActions 'site' => $this->site(), ]); - return static::create($props); + $modelClass = Page::$models[$props['template']] ?? Page::class; + return $modelClass::create($props); } /** @@ -520,7 +543,7 @@ trait PageActions 'kirby' => $app, 'page' => $app->page($this->id()), 'site' => $app->site(), - ]); + ], ''); return (int)$template; } @@ -534,7 +557,7 @@ trait PageActions */ public function delete(bool $force = false): bool { - return $this->commit('delete', [$this, $force], function ($page, $force) { + return $this->commit('delete', ['page' => $this, 'force' => $force], function ($page, $force) { // delete all files individually foreach ($page->files() as $file) { @@ -591,7 +614,8 @@ trait PageActions // create the slug for the duplicate $slug = Str::slug($slug ?? $this->slug() . '-copy'); - return $this->commit('duplicate', [$this, $slug, $options], function ($page, $slug, $options) { + $arguments = ['originalPage' => $this, 'input' => $slug, 'options' => $options]; + return $this->commit('duplicate', $arguments, function ($page, $slug, $options) { return $this->copy([ 'parent' => $this->parent(), 'slug' => $slug, diff --git a/kirby/src/Cms/Pages.php b/kirby/src/Cms/Pages.php index d8fb6fb..9125637 100755 --- a/kirby/src/Cms/Pages.php +++ b/kirby/src/Cms/Pages.php @@ -238,11 +238,11 @@ class Pages extends Collection public function findByIdRecursive(string $id, string $startAt = null, bool $multiLang = false) { $path = explode('/', $id); - $collection = $this; $item = null; $query = $startAt; foreach ($path as $key) { + $collection = $item ? $item->children() : $this; $query = ltrim($query . '/' . $key, '/'); $item = $collection->get($query) ?? null; @@ -253,8 +253,6 @@ class Pages extends Collection if ($item === null) { return null; } - - $collection = $item->children(); } return $item; @@ -340,9 +338,12 @@ class Pages extends Collection foreach ($this->data as $pageKey => $page) { $this->index->data[$pageKey] = $page; + $index = $page->index($drafts); - foreach ($page->index($drafts) as $childKey => $child) { - $this->index->data[$childKey] = $child; + if ($index) { + foreach ($index as $childKey => $child) { + $this->index->data[$childKey] = $child; + } } } diff --git a/kirby/src/Cms/Pagination.php b/kirby/src/Cms/Pagination.php index 4f6171b..b064dc1 100755 --- a/kirby/src/Cms/Pagination.php +++ b/kirby/src/Cms/Pagination.php @@ -23,7 +23,7 @@ use Kirby\Toolkit\Pagination as BasePagination; class Pagination extends BasePagination { /** - * Pagination method (param or query) + * Pagination method (param, query, none) * * @var string */ @@ -82,7 +82,7 @@ class Pagination extends BasePagination if ($params['method'] === 'query') { $params['page'] = $params['page'] ?? $params['url']->query()->get($params['variable']); - } else { + } elseif ($params['method'] === 'param') { $params['page'] = $params['page'] ?? $params['url']->params()->get($params['variable']); } @@ -153,8 +153,10 @@ class Pagination extends BasePagination if ($this->method === 'query') { $url->query->$variable = $pageValue; - } else { + } elseif ($this->method === 'param') { $url->params->$variable = $pageValue; + } else { + return null; } return $url->toString(); diff --git a/kirby/src/Cms/Panel.php b/kirby/src/Cms/Panel.php index cc3edc2..922b503 100755 --- a/kirby/src/Cms/Panel.php +++ b/kirby/src/Cms/Panel.php @@ -89,7 +89,7 @@ class Panel go($kirby->url('index') . '/' . $kirby->path()); } } catch (Throwable $e) { - die('The panel assets cannot be installed properly. Please check permissions of your media folder.'); + die('The Panel assets cannot be installed properly. ' . $e->getMessage()); } // get the uri object for the panel url diff --git a/kirby/src/Cms/Permissions.php b/kirby/src/Cms/Permissions.php index 48891ec..d9c2dee 100755 --- a/kirby/src/Cms/Permissions.php +++ b/kirby/src/Cms/Permissions.php @@ -17,6 +17,8 @@ use Kirby\Exception\InvalidArgumentException; */ class Permissions { + public static $extendedActions = []; + protected $actions = [ 'access' => [ 'panel' => true, @@ -28,6 +30,7 @@ class Permissions 'changeName' => true, 'create' => true, 'delete' => true, + 'read' => true, 'replace' => true, 'update' => true ], @@ -75,6 +78,15 @@ class Permissions public function __construct($settings = []) { + // dynamically register the extended actions + foreach (static::$extendedActions as $key => $actions) { + if (isset($this->actions[$key]) === true) { + throw new InvalidArgumentException('The action ' . $key . ' is already a core action'); + } + + $this->actions[$key] = $actions; + } + if (is_array($settings) === true) { return $this->setCategories($settings); } diff --git a/kirby/src/Cms/Search.php b/kirby/src/Cms/Search.php index d199be3..91d68be 100755 --- a/kirby/src/Cms/Search.php +++ b/kirby/src/Cms/Search.php @@ -2,8 +2,6 @@ namespace Kirby\Cms; -use Kirby\Toolkit\Str; - /** * The Search class extracts the * search logic from collections, to @@ -31,100 +29,15 @@ class Search /** * Native search method to search for anything within the collection * - * @param Collection $collection + * @param \Kirby\Cms\Collection $collection * @param string $query * @param mixed $params + * @return \Kirby\Cms\Collection|bool */ public static function collection(Collection $collection, string $query = null, $params = []) { - if (empty(trim($query)) === true) { - return $collection->limit(0); - } - - if (is_string($params) === true) { - $params = ['fields' => Str::split($params, '|')]; - } - - $defaults = [ - 'fields' => [], - 'minlength' => 2, - 'score' => [], - 'words' => false, - ]; - - $options = array_merge($defaults, $params); - $collection = clone $collection; - $searchwords = preg_replace('/(\s)/u', ',', $query); - $searchwords = Str::split($searchwords, ',', $options['minlength']); - $lowerQuery = mb_strtolower($query); - - if (empty($options['stopwords']) === false) { - $searchwords = array_diff($searchwords, $options['stopwords']); - } - - $searchwords = array_map(function ($value) use ($options) { - return $options['words'] ? '\b' . preg_quote($value) . '\b' : preg_quote($value); - }, $searchwords); - - $preg = '!(' . implode('|', $searchwords) . ')!i'; - $results = $collection->filter(function ($item) use ($query, $preg, $options, $lowerQuery) { - $data = $item->content()->toArray(); - $keys = array_keys($data); - $keys[] = 'id'; - - if (is_a($item, 'Kirby\Cms\User') === true) { - $keys[] = 'name'; - $keys[] = 'email'; - $keys[] = 'role'; - } elseif (is_a($item, 'Kirby\Cms\Page') === true) { - // apply the default score for pages - $options['score'] = array_merge([ - 'id' => 64, - 'title' => 64, - ], $options['score']); - } - - if (empty($options['fields']) === false) { - $fields = array_map('strtolower', $options['fields']); - $keys = array_intersect($keys, $fields); - } - - $item->searchHits = 0; - $item->searchScore = 0; - - foreach ($keys as $key) { - $score = $options['score'][$key] ?? 1; - $value = $data[$key] ?? (string)$item->$key(); - - $lowerValue = mb_strtolower($value); - - // check for exact matches - if ($lowerQuery == $lowerValue) { - $item->searchScore += 16 * $score; - $item->searchHits += 1; - - // check for exact beginning matches - } elseif (Str::startsWith($lowerValue, $lowerQuery) === true) { - $item->searchScore += 8 * $score; - $item->searchHits += 1; - - // check for exact query matches - } elseif ($matches = preg_match_all('!' . preg_quote($query) . '!i', $value, $r)) { - $item->searchScore += 2 * $score; - $item->searchHits += $matches; - } - - // check for any match - if ($matches = preg_match_all($preg, $value, $r)) { - $item->searchHits += $matches; - $item->searchScore += $matches * $score; - } - } - - return $item->searchHits > 0 ? true : false; - }); - - return $results->sortBy('searchScore', 'desc'); + $kirby = App::instance(); + return $kirby->component('search')($kirby, $collection, $query, $params); } /** diff --git a/kirby/src/Cms/SiteActions.php b/kirby/src/Cms/SiteActions.php index db759cf..f693d8e 100755 --- a/kirby/src/Cms/SiteActions.php +++ b/kirby/src/Cms/SiteActions.php @@ -31,13 +31,17 @@ trait SiteActions */ protected function commit(string $action, array $arguments, Closure $callback) { - $old = $this->hardcopy(); - $kirby = $this->kirby(); + $old = $this->hardcopy(); + $kirby = $this->kirby(); + $argumentValues = array_values($arguments); + + $this->rules()->$action(...$argumentValues); + $kirby->trigger('site.' . $action . ':before', $arguments); + + $result = $callback(...$argumentValues); + + $kirby->trigger('site.' . $action . ':after', ['newSite' => $result, 'oldSite' => $old]); - $this->rules()->$action(...$arguments); - $kirby->trigger('site.' . $action . ':before', ...$arguments); - $result = $callback(...$arguments); - $kirby->trigger('site.' . $action . ':after', $result, $old); $kirby->cache('pages')->flush(); return $result; } @@ -51,7 +55,8 @@ trait SiteActions */ public function changeTitle(string $title, string $languageCode = null) { - return $this->commit('changeTitle', [$this, $title, $languageCode], function ($site, $title, $languageCode) { + $arguments = ['site' => $this, 'title' => $title, 'languageCode' => $languageCode]; + return $this->commit('changeTitle', $arguments, function ($site, $title, $languageCode) { return $site->save(['title' => $title], $languageCode); }); } diff --git a/kirby/src/Cms/System.php b/kirby/src/Cms/System.php index 8cc4981..0ec28c9 100755 --- a/kirby/src/Cms/System.php +++ b/kirby/src/Cms/System.php @@ -9,6 +9,7 @@ use Kirby\Exception\PermissionException; use Kirby\Http\Remote; use Kirby\Http\Uri; use Kirby\Http\Url; +use Kirby\Toolkit\A; use Kirby\Toolkit\Dir; use Kirby\Toolkit\F; use Kirby\Toolkit\Str; @@ -281,7 +282,9 @@ class System * Loads the license file and returns * the license information if available * - * @return string|false + * @return string|bool License key or `false` if the current user has + * permissions for access.settings, otherwise just a + * boolean that tells whether a valid license is active */ public function license() { @@ -326,7 +329,14 @@ class System return false; } - return $license['license']; + // only return the actual license key if the + // current user has appropriate permissions + $user = $this->app->user(); + if ($user && $user->role()->permissions()->for('access', 'settings') === true) { + return $license['license']; + } else { + return true; + } } /** @@ -422,13 +432,17 @@ class System */ public function server(): bool { - $servers = [ - 'apache', - 'caddy', - 'litespeed', - 'nginx', - 'php' - ]; + if ($servers = $this->app->option('servers')) { + $servers = A::wrap($servers); + } else { + $servers = [ + 'apache', + 'caddy', + 'litespeed', + 'nginx', + 'php' + ]; + } $software = $_SERVER['SERVER_SOFTWARE'] ?? null; diff --git a/kirby/src/Cms/Url.php b/kirby/src/Cms/Url.php index c9163fe..af7fcbd 100755 --- a/kirby/src/Cms/Url.php +++ b/kirby/src/Cms/Url.php @@ -3,7 +3,6 @@ namespace Kirby\Cms; use Kirby\Http\Url as BaseUrl; -use Kirby\Toolkit\Str; /** * The `Url` class extends the @@ -61,36 +60,10 @@ class Url extends BaseUrl */ public static function to(string $path = null, $options = null): string { - $kirby = App::instance(); - $language = null; + $kirby = App::instance(); - // get language from simple string option - if (is_string($options) === true) { - $language = $options; - $options = null; - } - - // get language from array - if (is_array($options) === true && isset($options['language']) === true) { - $language = $options['language']; - unset($options['language']); - } - - // get a language url for the linked page, if the page can be found - if ($kirby->multilang() === true) { - $parts = Str::split($path, '#'); - - if ($page = page($parts[0] ?? null)) { - $path = $page->url($language); - - if (isset($parts[1]) === true) { - $path .= '#' . $parts[1]; - } - } - } - - return $kirby->component('url')($kirby, $path, $options, function (string $path = null, $options = null) { - return parent::to($path, $options); + return $kirby->component('url')($kirby, $path, $options, function (string $path = null, $options = null) use ($kirby) { + return $kirby->nativeComponent('url')($kirby, $path, $options); }); } } diff --git a/kirby/src/Cms/User.php b/kirby/src/Cms/User.php index cc54e71..e6c0652 100755 --- a/kirby/src/Cms/User.php +++ b/kirby/src/Cms/User.php @@ -426,13 +426,13 @@ class User extends ModelWithContent $session = $this->sessionFromOptions($session); - $kirby->trigger('user.login:before', $this, $session); + $kirby->trigger('user.login:before', ['user' => $this, 'session' => $session]); $session->regenerateToken(); // privilege change $session->data()->set('user.id', $this->id()); $this->kirby()->auth()->setUser($this); - $kirby->trigger('user.login:after', $this, $session); + $kirby->trigger('user.login:after', ['user' => $this, 'session' => $session]); } /** @@ -446,7 +446,7 @@ class User extends ModelWithContent $kirby = $this->kirby(); $session = $this->sessionFromOptions($session); - $kirby->trigger('user.logout:before', $this, $session); + $kirby->trigger('user.logout:before', ['user' => $this, 'session' => $session]); // remove the user from the session for future requests $session->data()->remove('user.id'); @@ -458,12 +458,12 @@ class User extends ModelWithContent // session is now empty, we might as well destroy it $session->destroy(); - $kirby->trigger('user.logout:after', $this, null); + $kirby->trigger('user.logout:after', ['user' => $this, 'session' => null]); } else { // privilege change $session->regenerateToken(); - $kirby->trigger('user.logout:after', $this, $session); + $kirby->trigger('user.logout:after', ['user' => $this, 'session' => $session]); } } @@ -515,11 +515,12 @@ class User extends ModelWithContent * * @param string $format * @param string|null $handler + * @param string|null $languageCode * @return int|string */ - public function modified(string $format = 'U', string $handler = null) + public function modified(string $format = 'U', string $handler = null, string $languageCode = null) { - $modifiedContent = F::modified($this->contentFile()); + $modifiedContent = F::modified($this->contentFile($languageCode)); $modifiedIndex = F::modified($this->root() . '/index.php'); $modifiedTotal = max([$modifiedContent, $modifiedIndex]); $handler = $handler ?? $this->kirby()->option('date.handler', 'date'); @@ -682,6 +683,41 @@ class User extends ModelWithContent return $this->role = Role::nobody(); } + /** + * Returns all available roles + * for this user, that can be selected + * by the authenticated user + * + * @return \Kirby\Cms\Roles + */ + public function roles() + { + $kirby = $this->kirby(); + $roles = $kirby->roles(); + + // a collection with just the one role of the user + $myRole = $roles->filterBy('id', $this->role()->id()); + + // if there's an authenticated user … + if ($user = $kirby->user()) { + + // admin users can select pretty much any role + if ($user->isAdmin() === true) { + // except if the user is the last admin + if ($this->isLastAdmin() === true) { + // in which case they have to stay admin + return $myRole; + } + + // return all roles for mighty admins + return $roles; + } + } + + // any other user can only keep their role + return $myRole; + } + /** * The absolute path to the user directory * @@ -844,15 +880,17 @@ class User extends ModelWithContent * String template builder * * @param string|null $template + * @param array|null $data + * @param string $fallback Fallback for tokens in the template that cannot be replaced * @return string */ - public function toString(string $template = null): string + public function toString(string $template = null, array $data = [], string $fallback = ''): string { if ($template === null) { $template = $this->email(); } - return parent::toString($template); + return parent::toString($template, $data); } /** diff --git a/kirby/src/Cms/UserActions.php b/kirby/src/Cms/UserActions.php index 217e2c4..f1afd7f 100755 --- a/kirby/src/Cms/UserActions.php +++ b/kirby/src/Cms/UserActions.php @@ -29,7 +29,7 @@ trait UserActions */ public function changeEmail(string $email) { - return $this->commit('changeEmail', [$this, $email], function ($user, $email) { + return $this->commit('changeEmail', ['user' => $this, 'email' => $email], function ($user, $email) { $user = $user->clone([ 'email' => $email ]); @@ -50,7 +50,7 @@ trait UserActions */ public function changeLanguage(string $language) { - return $this->commit('changeLanguage', [$this, $language], function ($user, $language) { + return $this->commit('changeLanguage', ['user' => $this, 'language' => $language], function ($user, $language) { $user = $user->clone([ 'language' => $language, ]); @@ -71,7 +71,7 @@ trait UserActions */ public function changeName(string $name) { - return $this->commit('changeName', [$this, $name], function ($user, $name) { + return $this->commit('changeName', ['user' => $this, 'name' => $name], function ($user, $name) { $user = $user->clone([ 'name' => $name ]); @@ -92,7 +92,7 @@ trait UserActions */ public function changePassword(string $password) { - return $this->commit('changePassword', [$this, $password], function ($user, $password) { + return $this->commit('changePassword', ['user' => $this, 'password' => $password], function ($user, $password) { $user = $user->clone([ 'password' => $password = User::hashPassword($password) ]); @@ -111,7 +111,7 @@ trait UserActions */ public function changeRole(string $role) { - return $this->commit('changeRole', [$this, $role], function ($user, $role) { + return $this->commit('changeRole', ['user' => $this, 'role' => $role], function ($user, $role) { $user = $user->clone([ 'role' => $role, ]); @@ -144,13 +144,25 @@ trait UserActions throw new PermissionException('The Kirby user cannot be changed'); } - $old = $this->hardcopy(); + $old = $this->hardcopy(); + $kirby = $this->kirby(); + $argumentValues = array_values($arguments); - $this->rules()->$action(...$arguments); - $this->kirby()->trigger('user.' . $action . ':before', ...$arguments); - $result = $callback(...$arguments); - $this->kirby()->trigger('user.' . $action . ':after', $result, $old); - $this->kirby()->cache('pages')->flush(); + $this->rules()->$action(...$argumentValues); + $kirby->trigger('user.' . $action . ':before', $arguments); + + $result = $callback(...$argumentValues); + + if ($action === 'create') { + $argumentsAfter = ['user' => $result]; + } elseif ($action === 'delete') { + $argumentsAfter = ['status' => $result, 'user' => $old]; + } else { + $argumentsAfter = ['newUser' => $result, 'oldUser' => $old]; + } + $kirby->trigger('user.' . $action . ':after', $argumentsAfter); + + $kirby->cache('pages')->flush(); return $result; } @@ -181,7 +193,7 @@ trait UserActions $user = $user->clone(['content' => $form->strings(true)]); // run the hook - return $user->commit('create', [$user, $props], function ($user, $props) { + return $user->commit('create', ['user' => $user, 'input' => $props], function ($user, $props) { $user->writeCredentials([ 'email' => $user->email(), 'language' => $user->language(), @@ -231,7 +243,7 @@ trait UserActions */ public function delete(): bool { - return $this->commit('delete', [$this], function ($user) { + return $this->commit('delete', ['user' => $this], function ($user) { if ($user->exists() === false) { return true; } @@ -258,8 +270,10 @@ trait UserActions */ protected function readCredentials(): array { - if (file_exists($this->root() . '/index.php') === true) { - $credentials = require $this->root() . '/index.php'; + $path = $this->root() . '/index.php'; + + if (is_file($path) === true) { + $credentials = F::load($path); return is_array($credentials) === false ? [] : $credentials; } else { diff --git a/kirby/src/Cms/UserPermissions.php b/kirby/src/Cms/UserPermissions.php index bc4ef36..f3b8e22 100755 --- a/kirby/src/Cms/UserPermissions.php +++ b/kirby/src/Cms/UserPermissions.php @@ -25,17 +25,7 @@ class UserPermissions extends ModelPermissions protected function canChangeRole(): bool { - // only one role, makes no sense to change it - if ($this->user->kirby()->roles()->count() < 2) { - return false; - } - - // users who are not admins cannot change their own role - if ($this->user->is($this->model) === true && $this->user->isAdmin() === false) { - return false; - } - - return $this->model->isLastAdmin() !== true; + return $this->model->roles()->count() > 1; } protected function canCreate(): bool diff --git a/kirby/src/Cms/Users.php b/kirby/src/Cms/Users.php index 61fafd6..f5ab742 100755 --- a/kirby/src/Cms/Users.php +++ b/kirby/src/Cms/Users.php @@ -3,6 +3,7 @@ namespace Kirby\Cms; use Kirby\Toolkit\Dir; +use Kirby\Toolkit\F; use Kirby\Toolkit\Str; /** @@ -109,8 +110,9 @@ class Users extends Collection } // get role information - if (file_exists($root . '/' . $userDirectory . '/index.php') === true) { - $credentials = require $root . '/' . $userDirectory . '/index.php'; + $path = $root . '/' . $userDirectory . '/index.php'; + if (is_file($path) === true) { + $credentials = F::load($path); } // create user model based on role diff --git a/kirby/src/Data/Data.php b/kirby/src/Data/Data.php index a53a085..07a4807 100755 --- a/kirby/src/Data/Data.php +++ b/kirby/src/Data/Data.php @@ -2,13 +2,13 @@ namespace Kirby\Data; -use Exception; +use Kirby\Exception\Exception; use Kirby\Toolkit\F; /** * The `Data` class provides readers and * writers for data. The class comes with - * four handlers for `json`, `php`, `txt` + * handlers for `json`, `php`, `txt`, `xml` * and `yaml` encoded data, but can be * extended and customized. * @@ -32,6 +32,7 @@ class Data public static $aliases = [ 'md' => 'txt', 'mdown' => 'txt', + 'rss' => 'xml', 'yml' => 'yaml', ]; @@ -44,6 +45,7 @@ class Data 'json' => 'Kirby\Data\Json', 'php' => 'Kirby\Data\PHP', 'txt' => 'Kirby\Data\Txt', + 'xml' => 'Kirby\Data\Xml', 'yaml' => 'Kirby\Data\Yaml', ]; @@ -73,23 +75,23 @@ class Data /** * Decodes data with the specified handler * - * @param string $data + * @param mixed $string * @param string $type * @return array */ - public static function decode(string $data = null, string $type): array + public static function decode($string = null, string $type): array { - return static::handler($type)->decode($data); + return static::handler($type)->decode($string); } /** * Encodes data with the specified handler * - * @param array $data + * @param mixed $data * @param string $type * @return string */ - public static function encode(array $data = null, string $type): string + public static function encode($data = null, string $type): string { return static::handler($type)->encode($data); } @@ -114,11 +116,11 @@ class Data * the extension if not specified * * @param string $file - * @param array $data + * @param mixed $data * @param string $type * @return bool */ - public static function write(string $file = null, array $data = [], string $type = null): bool + public static function write(string $file = null, $data = [], string $type = null): bool { return static::handler($type ?? F::extension($file))->write($file, $data); } diff --git a/kirby/src/Data/Handler.php b/kirby/src/Data/Handler.php index 6cf6a35..8bf5f7c 100755 --- a/kirby/src/Data/Handler.php +++ b/kirby/src/Data/Handler.php @@ -2,7 +2,7 @@ namespace Kirby\Data; -use Exception; +use Kirby\Exception\Exception; use Kirby\Toolkit\F; /** @@ -23,7 +23,7 @@ abstract class Handler * * Needs to throw an Exception if the file can't be parsed. * - * @param string $string + * @param mixed $string * @return array */ abstract public static function decode($string): array; @@ -55,10 +55,10 @@ abstract class Handler * Writes data to a file * * @param string $file - * @param array $data + * @param mixed $data * @return bool */ - public static function write(string $file = null, array $data = []): bool + public static function write(string $file = null, $data = []): bool { return F::write($file, static::encode($data)); } diff --git a/kirby/src/Data/Json.php b/kirby/src/Data/Json.php index 88d741f..542ce53 100755 --- a/kirby/src/Data/Json.php +++ b/kirby/src/Data/Json.php @@ -2,7 +2,7 @@ namespace Kirby\Data; -use Exception; +use Kirby\Exception\InvalidArgumentException; /** * Simple Wrapper around json_encode and json_decode @@ -29,17 +29,29 @@ class Json extends Handler /** * Parses an encoded JSON string and returns a multi-dimensional array * - * @param string $json + * @param mixed $string * @return array */ - public static function decode($json): array + public static function decode($string): array { - $result = json_decode($json, true); + if ($string === null) { + return []; + } + + if (is_array($string) === true) { + return $string; + } + + if (is_string($string) === false) { + throw new InvalidArgumentException('Invalid JSON data; please pass a string'); + } + + $result = json_decode($string, true); if (is_array($result) === true) { return $result; } else { - throw new Exception('JSON string is invalid'); + throw new InvalidArgumentException('JSON string is invalid'); } } } diff --git a/kirby/src/Data/PHP.php b/kirby/src/Data/PHP.php index 93f8871..8b2a840 100755 --- a/kirby/src/Data/PHP.php +++ b/kirby/src/Data/PHP.php @@ -2,7 +2,8 @@ namespace Kirby\Data; -use Exception; +use Kirby\Exception\BadMethodCallException; +use Kirby\Exception\Exception; use Kirby\Toolkit\F; /** @@ -23,7 +24,7 @@ class PHP extends Handler * @param string $indent For internal use only * @return string */ - public static function encode($data, $indent = ''): string + public static function encode($data, string $indent = ''): string { switch (gettype($data)) { case 'array': @@ -46,14 +47,14 @@ class PHP extends Handler } /** - * PHP arrays don't have to be decoded + * PHP strings shouldn't be decoded manually * - * @param array $array + * @param mixed $array * @return array */ public static function decode($array): array { - return $array; + throw new BadMethodCallException('The PHP::decode() method is not implemented'); } /** @@ -68,17 +69,17 @@ class PHP extends Handler throw new Exception('The file "' . $file . '" does not exist'); } - return (array)(include $file); + return (array)F::load($file, []); } /** * Creates a PHP file with the given data * * @param string $file - * @param array $data + * @param mixed $data * @return bool */ - public static function write(string $file = null, array $data = []): bool + public static function write(string $file = null, $data = []): bool { $php = static::encode($data); $php = " $value) { + foreach (A::wrap($data) as $key => $value) { if (empty($key) === true || $value === null) { continue; } @@ -48,7 +50,7 @@ class Txt extends Handler { // avoid problems with arrays if (is_array($value) === true) { - $value = Yaml::encode($value); + $value = Data::encode($value, 'yaml'); // avoid problems with localized floats } elseif (is_float($value) === true) { $value = Str::float($value); @@ -86,11 +88,23 @@ class Txt extends Handler /** * Parses a Kirby txt string and returns a multi-dimensional array * - * @param string $string + * @param mixed $string * @return array */ public static function decode($string): array { + if ($string === null) { + return []; + } + + if (is_array($string) === true) { + return $string; + } + + if (is_string($string) === false) { + throw new InvalidArgumentException('Invalid TXT data; please pass a string'); + } + // remove BOM $string = str_replace("\xEF\xBB\xBF", '', $string); // explode all fields by the line separator diff --git a/kirby/src/Data/Xml.php b/kirby/src/Data/Xml.php new file mode 100755 index 0000000..9c36be7 --- /dev/null +++ b/kirby/src/Data/Xml.php @@ -0,0 +1,64 @@ + + * @link https://getkirby.com + * @copyright Bastian Allgeier GmbH + * @license https://opensource.org/licenses/MIT + */ +class Xml extends Handler +{ + /** + * Converts an array to an encoded XML string + * + * @param mixed $data + * @return string + */ + public static function encode($data): string + { + return XmlConverter::create($data, 'data'); + } + + /** + * Parses an encoded XML string and returns a multi-dimensional array + * + * @param mixed $string + * @return array + */ + public static function decode($string): array + { + if ($string === null) { + return []; + } + + if (is_array($string) === true) { + return $string; + } + + if (is_string($string) === false) { + throw new InvalidArgumentException('Invalid XML data; please pass a string'); + } + + $result = XmlConverter::parse($string); + + if (is_array($result) === true) { + // remove the root's name if it is the default to ensure that + // the decoded data is the same as the input to the encode() method + if ($result['@name'] === 'data') { + unset($result['@name']); + } + + return $result; + } else { + throw new InvalidArgumentException('XML string is invalid'); + } + } +} diff --git a/kirby/src/Data/Yaml.php b/kirby/src/Data/Yaml.php index 0b5f321..83a1950 100755 --- a/kirby/src/Data/Yaml.php +++ b/kirby/src/Data/Yaml.php @@ -2,7 +2,7 @@ namespace Kirby\Data; -use Exception; +use Kirby\Exception\InvalidArgumentException; use Spyc; /** @@ -42,29 +42,33 @@ class Yaml extends Handler /** * Parses an encoded YAML string and returns a multi-dimensional array * - * @param string $yaml + * @param mixed $string * @return array */ - public static function decode($yaml): array + public static function decode($string): array { - if ($yaml === null) { + if ($string === null) { return []; } - if (is_array($yaml) === true) { - return $yaml; + if (is_array($string) === true) { + return $string; + } + + if (is_string($string) === false) { + throw new InvalidArgumentException('Invalid YAML data; please pass a string'); } // remove BOM - $yaml = str_replace("\xEF\xBB\xBF", '', $yaml); - $result = Spyc::YAMLLoadString($yaml); + $string = str_replace("\xEF\xBB\xBF", '', $string); + $result = Spyc::YAMLLoadString($string); if (is_array($result)) { return $result; } else { // apparently Spyc always returns an array, even for invalid YAML syntax // so this Exception should currently never be thrown - throw new Exception('YAML string is invalid'); // @codeCoverageIgnore + throw new InvalidArgumentException('The YAML data cannot be parsed'); // @codeCoverageIgnore } } } diff --git a/kirby/src/Database/Database.php b/kirby/src/Database/Database.php index 1de9bd2..f770b20 100755 --- a/kirby/src/Database/Database.php +++ b/kirby/src/Database/Database.php @@ -2,6 +2,7 @@ namespace Kirby\Database; +use Closure; use Exception; use Kirby\Exception\InvalidArgumentException; use Kirby\Toolkit\A; @@ -230,7 +231,7 @@ class Database } /** - * Sets the exception mode for the next query + * Sets the exception mode * * @param bool $fail * @return \Kirby\Database\Database @@ -369,7 +370,7 @@ class Database $this->statement->execute($bindings); $this->affected = $this->statement->rowCount(); - $this->lastId = $this->connection->lastInsertId(); + $this->lastId = Str::startsWith($query, 'insert ', true) ? $this->connection->lastInsertId() : null; $this->lastError = null; // store the final sql to add it to the trace later @@ -395,9 +396,6 @@ class Database 'error' => $this->lastError ]); - // reset some stuff - $this->fail = false; - // return true or false on success or failure return $this->lastError === null; } @@ -426,7 +424,11 @@ class Database } // define the default flag for the fetch method - $flags = $options['fetch'] === 'array' ? PDO::FETCH_ASSOC : PDO::FETCH_CLASS|PDO::FETCH_PROPS_LATE; + if ($options['fetch'] instanceof Closure || $options['fetch'] === 'array') { + $flags = PDO::FETCH_ASSOC; + } else { + $flags = PDO::FETCH_CLASS|PDO::FETCH_PROPS_LATE; + } // add optional flags if (empty($options['flag']) === false) { @@ -434,7 +436,7 @@ class Database } // set the fetch mode - if ($options['fetch'] === 'array') { + if ($options['fetch'] instanceof Closure || $options['fetch'] === 'array') { $this->statement->setFetchMode($flags); } else { $this->statement->setFetchMode($flags, $options['fetch']); @@ -443,6 +445,13 @@ class Database // fetch that stuff $results = $this->statement->{$options['method']}(); + // apply the fetch closure to all results if given + if ($options['fetch'] instanceof Closure) { + foreach ($results as $key => $result) { + $results[$key] = $options['fetch']($result, $key); + } + } + if ($options['iterator'] === 'array') { return $this->lastResult = $results; } @@ -559,6 +568,11 @@ class Database } } + // update cache + if (in_array($table, $this->tableWhitelist) !== true) { + $this->tableWhitelist[] = $table; + } + return true; } @@ -571,7 +585,17 @@ class Database public function dropTable($table): bool { $sql = $this->sql()->dropTable($table); - return $this->execute($sql['query'], $sql['bindings']); + if ($this->execute($sql['query'], $sql['bindings']) !== true) { + return false; + } + + // update cache + $key = array_search($this->tableWhitelist, $table); + if ($key !== false) { + unset($this->tableWhitelist[$key]); + } + + return true; } /** diff --git a/kirby/src/Database/Db.php b/kirby/src/Database/Db.php index f8a7cef..8d6c9b0 100755 --- a/kirby/src/Database/Db.php +++ b/kirby/src/Database/Db.php @@ -2,7 +2,7 @@ namespace Kirby\Database; -use InvalidArgumentException; +use Kirby\Exception\InvalidArgumentException; use Kirby\Toolkit\Config; /** @@ -16,8 +16,6 @@ use Kirby\Toolkit\Config; */ class Db { - const ERROR_UNKNOWN_METHOD = 0; - /** * Query shortcuts * @@ -35,10 +33,11 @@ class Db /** * (Re)connect the database * - * @param array $params Pass [] to use the default params from the config + * @param array|null $params Pass `[]` to use the default params from the config, + * don't pass any argument to get the current connection * @return \Kirby\Database\Database */ - public static function connect(array $params = null) + public static function connect(?array $params = null) { if ($params === null && static::$connection !== null) { return static::$connection; @@ -46,14 +45,15 @@ class Db // try to connect with the default // connection settings if no params are set - $params = $params ?? [ + $defaults = [ 'type' => Config::get('db.type', 'mysql'), 'host' => Config::get('db.host', 'localhost'), 'user' => Config::get('db.user', 'root'), 'password' => Config::get('db.password', ''), 'database' => Config::get('db.database', ''), - 'prefix' => Config::get('db.prefix', ''), + 'prefix' => Config::get('db.prefix', '') ]; + $params = $params ?? $defaults; return static::$connection = new Database($params); } @@ -61,7 +61,7 @@ class Db /** * Returns the current database connection * - * @return \Kirby\Database\Database + * @return \Kirby\Database\Database|null */ public static function connection() { @@ -69,7 +69,7 @@ class Db } /** - * Sets the current table, which should be queried. Returns a + * Sets the current table which should be queried. Returns a * Query object, which can be used to build a full query for * that table. * @@ -83,7 +83,7 @@ class Db } /** - * Executes a raw sql query which expects a set of results + * Executes a raw SQL query which expects a set of results * * @param string $query * @param array $bindings @@ -97,21 +97,22 @@ class Db } /** - * Executes a raw sql query which expects no set of results (i.e. update, insert, delete) + * Executes a raw SQL query which expects no set of results (i.e. update, insert, delete) * * @param string $query * @param array $bindings - * @return mixed + * @return bool */ - public static function execute(string $query, array $bindings = []) + public static function execute(string $query, array $bindings = []): bool { $db = static::connect(); return $db->execute($query, $bindings); } /** - * Magic calls for other static db methods, - * which are redircted to the database class if available + * Magic calls for other static Db methods are + * redirected to either a predefined query or + * the respective method of the Database object * * @param string $method * @param mixed $arguments @@ -123,20 +124,21 @@ class Db return static::$queries[$method](...$arguments); } - if (is_callable([static::$connection, $method]) === true) { + if (static::$connection !== null && method_exists(static::$connection, $method) === true) { return call_user_func_array([static::$connection, $method], $arguments); } - throw new InvalidArgumentException('Invalid static Db method: ' . $method, static::ERROR_UNKNOWN_METHOD); + throw new InvalidArgumentException('Invalid static Db method: ' . $method); } } /** - * Shortcut for select clauses + * Shortcut for SELECT clauses + * @codeCoverageIgnore * - * @param string $table The name of the table, which should be queried + * @param string $table The name of the table which should be queried * @param mixed $columns Either a string with columns or an array of column names - * @param mixed $where The where clause. Can be a string or an array + * @param mixed $where The WHERE clause; can be a string or an array * @param string $order * @param int $offset * @param int $limit @@ -148,10 +150,11 @@ Db::$queries['select'] = function (string $table, $columns = '*', $where = null, /** * Shortcut for selecting a single row in a table + * @codeCoverageIgnore * - * @param string $table The name of the table, which should be queried + * @param string $table The name of the table which should be queried * @param mixed $columns Either a string with columns or an array of column names - * @param mixed $where The where clause. Can be a string or an array + * @param mixed $where The WHERE clause; can be a string or an array * @param string $order * @param int $offset * @param int $limit @@ -163,10 +166,11 @@ Db::$queries['first'] = Db::$queries['row'] = Db::$queries['one'] = function (st /** * Returns only values from a single column + * @codeCoverageIgnore * - * @param string $table The name of the table, which should be queried + * @param string $table The name of the table which should be queried * @param string $column The name of the column to select from - * @param mixed $where The where clause. Can be a string or an array + * @param mixed $where The WHERE clause; can be a string or an array * @param string $order * @param int $offset * @param int $limit @@ -178,93 +182,101 @@ Db::$queries['column'] = function (string $table, string $column, $where = null, /** * Shortcut for inserting a new row into a table + * @codeCoverageIgnore * - * @param string $table The name of the table, which should be queried - * @param array $values An array of values, which should be inserted - * @return bool + * @param string $table The name of the table which should be queried + * @param array $values An array of values which should be inserted + * @return int ID of the inserted row */ -Db::$queries['insert'] = function (string $table, array $values) { +Db::$queries['insert'] = function (string $table, array $values): int { return Db::table($table)->insert($values); }; /** * Shortcut for updating a row in a table + * @codeCoverageIgnore * - * @param string $table The name of the table, which should be queried - * @param array $values An array of values, which should be inserted - * @param mixed $where An optional where clause + * @param string $table The name of the table which should be queried + * @param array $values An array of values which should be inserted + * @param mixed $where An optional WHERE clause * @return bool */ -Db::$queries['update'] = function (string $table, array $values, $where = null) { +Db::$queries['update'] = function (string $table, array $values, $where = null): bool { return Db::table($table)->where($where)->update($values); }; /** * Shortcut for deleting rows in a table + * @codeCoverageIgnore * - * @param string $table The name of the table, which should be queried - * @param mixed $where An optional where clause + * @param string $table The name of the table which should be queried + * @param mixed $where An optional WHERE clause * @return bool */ -Db::$queries['delete'] = function (string $table, $where = null) { +Db::$queries['delete'] = function (string $table, $where = null): bool { return Db::table($table)->where($where)->delete(); }; /** * Shortcut for counting rows in a table + * @codeCoverageIgnore * - * @param string $table The name of the table, which should be queried - * @param mixed $where An optional where clause + * @param string $table The name of the table which should be queried + * @param mixed $where An optional WHERE clause * @return int */ -Db::$queries['count'] = function (string $table, $where = null) { +Db::$queries['count'] = function (string $table, $where = null): int { return Db::table($table)->where($where)->count(); }; /** * Shortcut for calculating the minimum value in a column + * @codeCoverageIgnore * - * @param string $table The name of the table, which should be queried + * @param string $table The name of the table which should be queried * @param string $column The name of the column of which the minimum should be calculated - * @param mixed $where An optional where clause - * @return mixed + * @param mixed $where An optional WHERE clause + * @return float */ -Db::$queries['min'] = function (string $table, string $column, $where = null) { +Db::$queries['min'] = function (string $table, string $column, $where = null): float { return Db::table($table)->where($where)->min($column); }; /** * Shortcut for calculating the maximum value in a column + * @codeCoverageIgnore * - * @param string $table The name of the table, which should be queried + * @param string $table The name of the table which should be queried * @param string $column The name of the column of which the maximum should be calculated - * @param mixed $where An optional where clause - * @return mixed + * @param mixed $where An optional WHERE clause + * @return float */ -Db::$queries['max'] = function (string $table, string $column, $where = null) { +Db::$queries['max'] = function (string $table, string $column, $where = null): float { return Db::table($table)->where($where)->max($column); }; /** * Shortcut for calculating the average value in a column + * @codeCoverageIgnore * - * @param string $table The name of the table, which should be queried + * @param string $table The name of the table which should be queried * @param string $column The name of the column of which the average should be calculated - * @param mixed $where An optional where clause - * @return mixed + * @param mixed $where An optional WHERE clause + * @return float */ -Db::$queries['avg'] = function (string $table, string $column, $where = null) { +Db::$queries['avg'] = function (string $table, string $column, $where = null): float { return Db::table($table)->where($where)->avg($column); }; /** * Shortcut for calculating the sum of all values in a column + * @codeCoverageIgnore * - * @param string $table The name of the table, which should be queried + * @param string $table The name of the table which should be queried * @param string $column The name of the column of which the sum should be calculated - * @param mixed $where An optional where clause - * @return mixed + * @param mixed $where An optional WHERE clause + * @return float */ -Db::$queries['sum'] = function (string $table, string $column, $where = null) { +Db::$queries['sum'] = function (string $table, string $column, $where = null): float { return Db::table($table)->where($where)->sum($column); }; diff --git a/kirby/src/Database/Query.php b/kirby/src/Database/Query.php index c1e6684..ea92fdf 100755 --- a/kirby/src/Database/Query.php +++ b/kirby/src/Database/Query.php @@ -30,8 +30,9 @@ class Query /** * The object which should be fetched for each row + * or function to call for each row * - * @var string + * @var string|\Closure */ protected $fetch = 'Kirby\Toolkit\Obj'; @@ -219,13 +220,14 @@ class Query } /** - * Sets the object class, which should be fetched - * Set this to array to get a simple array instead of an object + * Sets the object class, which should be fetched; + * set this to `'array'` to get a simple array instead of an object; + * pass a function that receives the `$data` and the `$key` to generate arbitrary data structures * - * @param string $fetch + * @param string|\Closure $fetch * @return \Kirby\Database\Query */ - public function fetch(string $fetch) + public function fetch($fetch) { $this->fetch = $fetch; return $this; @@ -559,55 +561,55 @@ class Query /** * Builds a count query * - * @return \Kirby\Database\Query + * @return int */ - public function count() + public function count(): int { - return $this->aggregate('COUNT'); + return (int)$this->aggregate('COUNT'); } /** * Builds a max query * * @param string $column - * @return \Kirby\Database\Query + * @return float */ - public function max(string $column) + public function max(string $column): float { - return $this->aggregate('MAX', $column); + return (float)$this->aggregate('MAX', $column); } /** * Builds a min query * * @param string $column - * @return \Kirby\Database\Query + * @return float */ - public function min(string $column) + public function min(string $column): float { - return $this->aggregate('MIN', $column); + return (float)$this->aggregate('MIN', $column); } /** * Builds a sum query * * @param string $column - * @return \Kirby\Database\Query + * @return float */ - public function sum(string $column) + public function sum(string $column): float { - return $this->aggregate('SUM', $column); + return (float)$this->aggregate('SUM', $column); } /** * Builds an average query * * @param string $column - * @return \Kirby\Database\Query + * @return float */ - public function avg(string $column) + public function avg(string $column): float { - return $this->aggregate('AVG', $column); + return (float)$this->aggregate('AVG', $column); } /** @@ -812,10 +814,16 @@ class Query */ public function column($column) { - $sql = $this->database->sql(); - $primaryKey = $sql->combineIdentifier($this->table, $this->primaryKeyName); + // if there isn't already an explicit order, order by the primary key + // instead of the column that was requested (which would be implied otherwise) + if ($this->order === null) { + $sql = $this->database->sql(); + $primaryKey = $sql->combineIdentifier($this->table, $this->primaryKeyName); - $results = $this->query($this->select([$column])->order($primaryKey . ' ASC')->build('select'), [ + $this->order($primaryKey . ' ASC'); + } + + $results = $this->query($this->select([$column])->build('select'), [ 'iterator' => 'array', 'fetch' => 'array', ]); diff --git a/kirby/src/Database/Sql.php b/kirby/src/Database/Sql.php index 09e18fc..dc402b5 100755 --- a/kirby/src/Database/Sql.php +++ b/kirby/src/Database/Sql.php @@ -15,7 +15,7 @@ use Kirby\Toolkit\Str; * @copyright Bastian Allgeier GmbH * @license https://opensource.org/licenses/MIT */ -class Sql +abstract class Sql { /** * List of literals which should not be escaped in queries @@ -27,12 +27,21 @@ class Sql /** * The parent database connection * - * @var Database + * @var \Kirby\Database\Database */ - public $database; + protected $database; + + /** + * List of used bindings; used to avoid + * duplicate binding names + * + * @var array + */ + protected $bindings = []; /** * Constructor + * @codeCoverageIgnore * * @param \Kirby\Database\Database $database */ @@ -44,51 +53,45 @@ class Sql /** * Returns a randomly generated binding name * - * @param string $label String that contains lowercase letters and numbers to use as a readable identifier - * @param string $prefix - * @return string + * @param string $label String that only contains alphanumeric chars and + * underscores to use as a human-readable identifier + * @return string Binding name that is guaranteed to be unique for this connection */ public function bindingName(string $label): string { - // make sure that the binding name is valid to prevent injections - if (!preg_match('/^[a-z0-9_]+$/', $label)) { + // make sure that the binding name is safe to prevent injections; + // otherwise use a generic label + if (!$label || preg_match('/^[a-zA-Z0-9_]+$/', $label) !== 1) { $label = 'invalid'; } - return ':' . $label . '_' . Str::random(16); + // generate random bindings until the name is unique + do { + $binding = ':' . $label . '_' . Str::random(8, 'alphaNum'); + } while (in_array($binding, $this->bindings) === true); + + // cache the generated binding name for future invocations + $this->bindings[] = $binding; + return $binding; } /** - * Returns a list of columns for a specified table - * MySQL version + * Returns a query to list the columns of a specified table; + * the query needs to return rows with a column `name` * - * @param string $table The table name + * @param string $table Table name * @return array */ - public function columns(string $table): array - { - $databaseBinding = $this->bindingName('database'); - $tableBinding = $this->bindingName('table'); - - $query = 'SELECT COLUMN_NAME AS name FROM INFORMATION_SCHEMA.COLUMNS '; - $query .= 'WHERE TABLE_SCHEMA = ' . $databaseBinding . ' AND TABLE_NAME = ' . $tableBinding; - - return [ - 'query' => $query, - 'bindings' => [ - $databaseBinding => $this->database->name(), - $tableBinding => $table, - ] - ]; - } + abstract public function columns(string $table): array; /** - * Optionl default value definition for the column + * Returns a query snippet for a column default value * - * @param array $column - * @return array + * @param string $name Column name + * @param array $column Column definition array with an optional `default` key + * @return array Array with a `query` string and a `bindings` array */ - public function columnDefault(array $column): array + public function columnDefault(string $name, array $column): array { if (isset($column['default']) === false) { return [ @@ -97,74 +100,63 @@ class Sql ]; } - $binding = $this->bindingName($column['name'] . '_default'); + $binding = $this->bindingName($name . '_default'); return [ 'query' => 'DEFAULT ' . $binding, 'bindings' => [ - $binding = $column['default'] + $binding => $column['default'] ] ]; } /** - * Returns a valid column name + * Returns the cleaned identifier based on the table and column name * - * @param string $table - * @param string $column - * @param bool $enforceQualified - * @return string|null + * @param string $table Table name + * @param string $column Column name + * @param bool $enforceQualified If true, a qualified identifier is returned in all cases + * @return string|null Identifier or null if the table or column is invalid */ public function columnName(string $table, string $column, bool $enforceQualified = false): ?string { + // ensure we have clean $table and $column values without qualified identifiers list($table, $column) = $this->splitIdentifier($table, $column); - if ($this->validateColumn($table, $column) === true) { + // combine the identifiers again + if ($this->database->validateColumn($table, $column) === true) { return $this->combineIdentifier($table, $column, $enforceQualified !== true); } + // the table or column does not exist return null; } /** * Abstracted column types to simplify table * creation for multiple database drivers + * @codeCoverageIgnore * * @return array */ public function columnTypes(): array { return [ - 'id' => '{{ name }} INT(11) UNSIGNED NOT NULL AUTO_INCREMENT', - 'varchar' => '{{ name }} varchar(255) {{ null }} {{ default }}', - 'text' => '{{ name }} TEXT', - 'int' => '{{ name }} INT(11) UNSIGNED {{ null }} {{ default }}', - 'timestamp' => '{{ name }} TIMESTAMP {{ null }} {{ default }}' - ]; - } - - /** - * Optional key definition for the column. - * - * @param array $column - * @return array - */ - public function columnKey(array $column): array - { - return [ - 'query' => null, - 'bindings' => [] + 'id' => '{{ name }} INT(11) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY', + 'varchar' => '{{ name }} varchar(255) {{ null }} {{ default }} {{ unique }}', + 'text' => '{{ name }} TEXT {{ unique }}', + 'int' => '{{ name }} INT(11) UNSIGNED {{ null }} {{ default }} {{ unique }}', + 'timestamp' => '{{ name }} TIMESTAMP {{ null }} {{ default }} {{ unique }}' ]; } /** * Combines an identifier (table and column) - * Default version for MySQL * * @param $table string * @param $column string - * @param $values boolean Whether the identifier is going to be used for a values clause - * Only relevant for SQLite + * @param $values boolean Whether the identifier is going to be used for a VALUES clause; + * only relevant for SQLite * @return string */ public function combineIdentifier(string $table, string $column, bool $values = false): string @@ -173,33 +165,29 @@ class Sql } /** - * Creates the create syntax for a single column + * Creates the CREATE TABLE syntax for a single column * - * @param string $table - * @param array $column - * @return array + * @param string $name Column name + * @param array $column Column definition array; valid keys: + * - `type` (required): Column template to use + * - `null`: Whether the column may be NULL (boolean) + * - `key`: Index this column is part of; special values `'primary'` for PRIMARY KEY and `true` for automatic naming + * - `unique`: Whether the index (or if not set the column itself) has a UNIQUE constraint + * - `default`: Default value of this column + * @return array Array with `query` and `key` strings, a `unique` boolean and a `bindings` array */ - public function createColumn(string $table, array $column): array + public function createColumn(string $name, array $column): array { // column type if (isset($column['type']) === false) { - throw new InvalidArgumentException('No column type given for column ' . $column); + throw new InvalidArgumentException('No column type given for column ' . $name); } - - // column name - if (isset($column['name']) === false) { - throw new InvalidArgumentException('No column name given'); - } - - if ($column['type'] === 'id') { - $column['key'] = 'PRIMARY'; - } - - if (!$template = ($this->columnTypes()[$column['type']] ?? null)) { + $template = $this->columnTypes()[$column['type']] ?? null; + if (!$template) { throw new InvalidArgumentException('Unsupported column type: ' . $column['type']); } - // null + // null option if (A::get($column, 'null') === false) { $null = 'NOT NULL'; } else { @@ -207,85 +195,124 @@ class Sql } // indexes/keys - $key = false; - if (isset($column['key']) === true) { - $column['key'] = strtoupper($column['key']); - - // backwards compatibility - if ($column['key'] === 'PRIMARY') { - $column['key'] = 'PRIMARY KEY'; + if (is_string($column['key']) === true) { + $column['key'] = strtolower($column['key']); + } elseif ($column['key'] === true) { + $column['key'] = $name . '_index'; } + } - if (in_array($column['key'], ['PRIMARY KEY', 'INDEX']) === true) { - $key = $column['key']; + // unique + $uniqueKey = false; + $uniqueColumn = null; + if (isset($column['unique']) === true && $column['unique'] === true) { + if (isset($column['key']) === true) { + // this column is part of an index, make that unique + $uniqueKey = true; + } else { + // make the column itself unique + $uniqueColumn = 'UNIQUE'; } } // default value - $columnDefault = $this->columnDefault($column); - $columnKey = $this->columnKey($column); + $columnDefault = $this->columnDefault($name, $column); $query = trim(Str::template($template, [ - 'name' => $this->quoteIdentifier($column['name']), + 'name' => $this->quoteIdentifier($name), 'null' => $null, - 'key' => $columnKey['query'], 'default' => $columnDefault['query'], - ])); - - $bindings = array_merge($columnKey['bindings'], $columnDefault['bindings']); + 'unique' => $uniqueColumn + ], '')); return [ 'query' => $query, - 'bindings' => $bindings, - 'key' => $key + 'bindings' => $columnDefault['bindings'], + 'key' => $column['key'] ?? null, + 'unique' => $uniqueKey ]; } /** - * Creates a table with a simple scheme array for columns - * Default version for MySQL + * Creates the inner query for the columns in a CREATE TABLE query * - * @param string $table The table name - * @param array $columns - * @return array + * @param array $columns Array of column definition arrays, see `Kirby\Database\Sql::createColumn()` + * @return array Array with a `query` string and `bindings`, `keys` and `unique` arrays */ - public function createTable(string $table, array $columns = []): array + public function createTableInner(array $columns): array { - $output = []; - $keys = []; + $query = []; $bindings = []; + $keys = []; + $unique = []; foreach ($columns as $name => $column) { - $sql = $this->createColumn($table, $column); + $sql = $this->createColumn($name, $column); - $output[] = $sql['query']; + // collect query and bindings + $query[] = $sql['query']; + $bindings += $sql['bindings']; - if ($sql['key']) { - $keys[$column['name']] = $sql['key']; + // make a list of keys per key name + if ($sql['key'] !== null) { + if (isset($keys[$sql['key']]) !== true) { + $keys[$sql['key']] = []; + } + + $keys[$sql['key']][] = $name; + if ($sql['unique'] === true) { + $unique[$sql['key']] = true; + } } - - $bindings = array_merge($bindings, $sql['bindings']); - } - - // combine columns - $inner = implode(',' . PHP_EOL, $output); - - // add keys - foreach ($keys as $name => $key) { - $inner .= ',' . PHP_EOL . $key . ' (' . $this->quoteIdentifier($name) . ')'; } return [ - 'query' => 'CREATE TABLE ' . $this->quoteIdentifier($table) . ' (' . PHP_EOL . $inner . PHP_EOL . ')', - 'bindings' => $bindings + 'query' => implode(',' . PHP_EOL, $query), + 'bindings' => $bindings, + 'keys' => $keys, + 'unique' => $unique ]; } /** - * Builds a delete clause + * Creates a CREATE TABLE query * - * @param array $params List of parameters for the delete clause. See defaults for more info. + * @param string $table Table name + * @param array $columns Array of column definition arrays, see `Kirby\Database\Sql::createColumn()` + * @return array Array with a `query` string and a `bindings` array + */ + public function createTable(string $table, array $columns = []): array + { + $inner = $this->createTableInner($columns); + + // add keys + foreach ($inner['keys'] as $key => $columns) { + // quote each column name and make a list string out of the column names + $columns = implode(', ', array_map(function ($name) { + return $this->quoteIdentifier($name); + }, $columns)); + + if ($key === 'primary') { + $key = 'PRIMARY KEY'; + } else { + $unique = isset($inner['unique'][$key]) === true ? 'UNIQUE ' : ''; + $key = $unique . 'INDEX ' . $this->quoteIdentifier($key); + } + + $inner['query'] .= ',' . PHP_EOL . $key . ' (' . $columns . ')'; + } + + return [ + 'query' => 'CREATE TABLE ' . $this->quoteIdentifier($table) . ' (' . PHP_EOL . $inner['query'] . PHP_EOL . ')', + 'bindings' => $inner['bindings'] + ]; + } + + /** + * Builds a DELETE clause + * + * @param array $params List of parameters for the DELETE clause. See defaults for more info. * @return array */ public function delete(array $params = []): array @@ -546,19 +573,18 @@ class Sql /** * Quotes an identifier (table *or* column) - * Default version for MySQL * * @param $identifier string * @return string */ public function quoteIdentifier(string $identifier): string { - // * is special + // * is special, don't quote that if ($identifier === '*') { return $identifier; } - // replace every backtick with two backticks + // escape backticks inside the identifier name $identifier = str_replace('`', '``', $identifier); // wrap in backticks @@ -688,22 +714,12 @@ class Sql } /** - * Returns a list of tables for a specified database - * MySQL version + * Returns a query to list the tables of the current database; + * the query needs to return rows with a column `name` * * @return array */ - public function tables(): array - { - $binding = $this->bindingName('database'); - - return [ - 'query' => 'SELECT TABLE_NAME AS name FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = ' . $binding, - 'bindings' => [ - $binding => $this->database->name() - ] - ]; - } + abstract public function tables(): array; /** * Validates and quotes a table name @@ -781,10 +797,12 @@ class Sql * @param string $table * @param string $column * @return bool + * + * @throws \Kirby\Exception\InvalidArgumentException If the column is invalid */ public function validateColumn(string $table, string $column): bool { - if ($this->database->validateColumn($table, $column) === false) { + if ($this->database->validateColumn($table, $column) !== true) { throw new InvalidArgumentException('Invalid column ' . $column); } diff --git a/kirby/src/Database/Sql/Mysql.php b/kirby/src/Database/Sql/Mysql.php index c72a4a9..853a39b 100755 --- a/kirby/src/Database/Sql/Mysql.php +++ b/kirby/src/Database/Sql/Mysql.php @@ -5,7 +5,7 @@ namespace Kirby\Database\Sql; use Kirby\Database\Sql; /** - * Mysql query builder + * MySQL query builder * * @package Kirby Database * @author Bastian Allgeier @@ -15,4 +15,45 @@ use Kirby\Database\Sql; */ class Mysql extends Sql { + /** + * Returns a query to list the columns of a specified table; + * the query needs to return rows with a column `name` + * + * @param string $table Table name + * @return array + */ + public function columns(string $table): array + { + $databaseBinding = $this->bindingName('database'); + $tableBinding = $this->bindingName('table'); + + $query = 'SELECT COLUMN_NAME AS name FROM INFORMATION_SCHEMA.COLUMNS '; + $query .= 'WHERE TABLE_SCHEMA = ' . $databaseBinding . ' AND TABLE_NAME = ' . $tableBinding; + + return [ + 'query' => $query, + 'bindings' => [ + $databaseBinding => $this->database->name(), + $tableBinding => $table, + ] + ]; + } + + /** + * Returns a query to list the tables of the current database; + * the query needs to return rows with a column `name` + * + * @return array + */ + public function tables(): array + { + $binding = $this->bindingName('database'); + + return [ + 'query' => 'SELECT TABLE_NAME AS name FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = ' . $binding, + 'bindings' => [ + $binding => $this->database->name() + ] + ]; + } } diff --git a/kirby/src/Database/Sql/Sqlite.php b/kirby/src/Database/Sql/Sqlite.php index 842aa80..1c691ed 100755 --- a/kirby/src/Database/Sql/Sqlite.php +++ b/kirby/src/Database/Sql/Sqlite.php @@ -5,7 +5,7 @@ namespace Kirby\Database\Sql; use Kirby\Database\Sql; /** - * Sqlite query builder + * SQLite query builder * * @package Kirby Database * @author Bastian Allgeier @@ -16,11 +16,11 @@ use Kirby\Database\Sql; class Sqlite extends Sql { /** - * Returns a list of columns for a specified table - * SQLite version + * Returns a query to list the columns of a specified table; + * the query needs to return rows with a column `name` * - * @param string $table The table name - * @return string + * @param string $table Table name + * @return array */ public function columns(string $table): array { @@ -30,30 +30,10 @@ class Sqlite extends Sql ]; } - /** - * Optional key definition for the column. - * - * @param array $column - * @return array - */ - public function columnKey(array $column): array - { - if (isset($column['key']) === false || $column['key'] === 'INDEX') { - return [ - 'query' => null, - 'bindings' => [] - ]; - } - - return [ - 'query' => $column['key'], - 'bindings' => [] - ]; - } - /** * Abstracted column types to simplify table * creation for multiple database drivers + * @codeCoverageIgnore * * @return array */ @@ -61,33 +41,72 @@ class Sqlite extends Sql { return [ 'id' => '{{ name }} INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL UNIQUE', - 'varchar' => '{{ name }} TEXT {{ null }} {{ key }} {{ default }}', - 'text' => '{{ name }} TEXT {{ null }} {{ key }} {{ default }}', - 'int' => '{{ name }} INTEGER {{ null }} {{ key }} {{ default }}', - 'timestamp' => '{{ name }} INTEGER {{ null }} {{ key }} {{ default }}' + 'varchar' => '{{ name }} TEXT {{ null }} {{ default }} {{ unique }}', + 'text' => '{{ name }} TEXT {{ null }} {{ default }} {{ unique }}', + 'int' => '{{ name }} INTEGER {{ null }} {{ default }} {{ unique }}', + 'timestamp' => '{{ name }} INTEGER {{ null }} {{ default }} {{ unique }}' ]; } /** * Combines an identifier (table and column) - * SQLite version * * @param $table string * @param $column string - * @param $values boolean Whether the identifier is going to be used for a values clause - * Only relevant for SQLite + * @param $values boolean Whether the identifier is going to be used for a VALUES clause; + * only relevant for SQLite * @return string */ public function combineIdentifier(string $table, string $column, bool $values = false): string { // SQLite doesn't support qualified column names for VALUES clauses - if ($values) { + if ($values === true) { return $this->quoteIdentifier($column); } return $this->quoteIdentifier($table) . '.' . $this->quoteIdentifier($column); } + /** + * Creates a CREATE TABLE query + * + * @param string $table Table name + * @param array $columns Array of column definition arrays, see `Kirby\Database\Sql::createColumn()` + * @return array Array with a `query` string and a `bindings` array + */ + public function createTable(string $table, array $columns = []): array + { + $inner = $this->createTableInner($columns); + + // add keys + $keys = []; + foreach ($inner['keys'] as $key => $columns) { + // quote each column name and make a list string out of the column names + $columns = implode(', ', array_map(function ($name) { + return $this->quoteIdentifier($name); + }, $columns)); + + if ($key === 'primary') { + $inner['query'] .= ',' . PHP_EOL . 'PRIMARY KEY (' . $columns . ')'; + } else { + // SQLite only supports index creation using a separate CREATE INDEX query + $unique = isset($inner['unique'][$key]) === true ? 'UNIQUE ' : ''; + $keys[] = 'CREATE ' . $unique . 'INDEX ' . $this->quoteIdentifier($table . '_index_' . $key) . + ' ON ' . $this->quoteIdentifier($table) . ' (' . $columns . ')'; + } + } + + $query = 'CREATE TABLE ' . $this->quoteIdentifier($table) . ' (' . PHP_EOL . $inner['query'] . PHP_EOL . ')'; + if (empty($keys) === false) { + $query .= ';' . PHP_EOL . implode(';' . PHP_EOL, $keys); + } + + return [ + 'query' => $query, + 'bindings' => $inner['bindings'] + ]; + } + /** * Quotes an identifier (table *or* column) * @@ -101,7 +120,7 @@ class Sqlite extends Sql return $identifier; } - // replace every quote with two quotes + // escape quotes inside the identifier name $identifier = str_replace('"', '""', $identifier); // wrap in quotes @@ -109,10 +128,9 @@ class Sqlite extends Sql } /** - * Returns a list of tables of the database - * SQLite version + * Returns a query to list the tables of the current database; + * the query needs to return rows with a column `name` * - * @param string $database The database name * @return string */ public function tables(): array diff --git a/kirby/src/Form/Field.php b/kirby/src/Form/Field.php index fddf0e4..d81e43e 100755 --- a/kirby/src/Form/Field.php +++ b/kirby/src/Form/Field.php @@ -5,6 +5,7 @@ namespace Kirby\Form; use Exception; use Kirby\Cms\Model; use Kirby\Exception\InvalidArgumentException; +use Kirby\Toolkit\A; use Kirby\Toolkit\Component; use Kirby\Toolkit\I18n; use Kirby\Toolkit\V; @@ -324,8 +325,12 @@ class Field extends Component } } - if (empty($this->validate) === false) { - $errors = V::errors($this->value(), $this->validate); + if ( + empty($this->validate) === false && + ($this->isEmpty() === false || $this->isRequired() === true) + ) { + $rules = A::wrap($this->validate); + $errors = V::errors($this->value(), $rules); if (empty($errors) === false) { $this->errors = array_merge($this->errors, $errors); diff --git a/kirby/src/Form/Form.php b/kirby/src/Form/Form.php index 3dd0410..a2ae1bc 100755 --- a/kirby/src/Form/Form.php +++ b/kirby/src/Form/Form.php @@ -2,7 +2,7 @@ namespace Kirby\Form; -use Kirby\Data\Yaml; +use Kirby\Data\Data; use Throwable; /** @@ -154,7 +154,7 @@ class Form if ($value === null) { $strings[$key] = null; } elseif (is_array($value) === true) { - $strings[$key] = Yaml::encode($value); + $strings[$key] = Data::encode($value, 'yaml'); } else { $strings[$key] = $value; } diff --git a/kirby/src/Form/OptionsApi.php b/kirby/src/Form/OptionsApi.php index bed3771..5c86090 100755 --- a/kirby/src/Form/OptionsApi.php +++ b/kirby/src/Form/OptionsApi.php @@ -3,7 +3,10 @@ namespace Kirby\Form; use Kirby\Cms\Nest; +use Kirby\Exception\Exception; use Kirby\Exception\InvalidArgumentException; +use Kirby\Http\Remote; +use Kirby\Http\Url; use Kirby\Toolkit\Properties; use Kirby\Toolkit\Query; use Kirby\Toolkit\Str; @@ -56,14 +59,31 @@ class OptionsApi return $this->options; } - $content = @file_get_contents($this->url()); + if (Url::isAbsolute($this->url()) === true) { + // URL, request via cURL + $data = Remote::get($this->url())->json(); + } else { + // local file, get contents locally - if (empty($content) === true) { - return []; + // ensure the file exists before trying to load it as the + // file_get_contents() warnings need to be suppressed + if (is_file($this->url()) !== true) { + throw new Exception('Local file ' . $this->url() . ' was not found'); + } + + $content = @file_get_contents($this->url()); + + if (is_string($content) !== true) { + throw new Exception('Unexpected read error'); // @codeCoverageIgnore + } + + if (empty($content) === true) { + return []; + } + + $data = json_decode($content, true); } - $data = json_decode($content, true); - if (is_array($data) === false) { throw new InvalidArgumentException('Invalid options format'); } diff --git a/kirby/src/Http/Cookie.php b/kirby/src/Http/Cookie.php index 41285e5..92fc936 100755 --- a/kirby/src/Http/Cookie.php +++ b/kirby/src/Http/Cookie.php @@ -35,18 +35,19 @@ class Cookie * @param string $key The name of the cookie * @param string $value The cookie content * @param array $options Array of options: - * lifetime, path, domain, secure, httpOnly + * lifetime, path, domain, secure, httpOnly, sameSite * @return bool true: cookie was created, * false: cookie creation failed */ public static function set(string $key, string $value, array $options = []): bool { // extract options - $lifetime = $options['lifetime'] ?? 0; + $expires = static::lifetime($options['lifetime'] ?? 0); $path = $options['path'] ?? '/'; $domain = $options['domain'] ?? null; $secure = $options['secure'] ?? false; - $httpOnly = $options['httpOnly'] ?? true; + $httponly = $options['httpOnly'] ?? true; + $samesite = $options['sameSite'] ?? 'Lax'; // add an HMAC signature of the value $value = static::hmac($value) . '+' . $value; @@ -55,7 +56,14 @@ class Cookie $_COOKIE[$key] = $value; // store the cookie - return setcookie($key, $value, static::lifetime($lifetime), $path, $domain, $secure, $httpOnly); + // the array syntax is only supported by PHP 7.3+ + // TODO: Always use the first alternative when support for PHP 7.2 is dropped + if (version_compare(PHP_VERSION, '7.3.0', '>=') === true) { + $options = compact('expires', 'path', 'domain', 'secure', 'httponly', 'samesite'); + return setcookie($key, $value, $options); + } else { + return setcookie($key, $value, $expires, $path, $domain, $secure, $httponly); + } } /** diff --git a/kirby/src/Http/Header.php b/kirby/src/Http/Header.php index 46f9138..6ee8680 100755 --- a/kirby/src/Http/Header.php +++ b/kirby/src/Http/Header.php @@ -300,7 +300,7 @@ class Header $options = array_merge($defaults, $params); header('Pragma: public'); - header('Expires: 0'); + header('Cache-Control: no-cache, no-store, must-revalidate'); header('Last-Modified: ' . gmdate('D, d M Y H:i:s', $options['modified']) . ' GMT'); header('Content-Disposition: attachment; filename="' . $options['name'] . '"'); header('Content-Transfer-Encoding: binary'); diff --git a/kirby/src/Http/Remote.php b/kirby/src/Http/Remote.php index c5ab761..1550a5b 100755 --- a/kirby/src/Http/Remote.php +++ b/kirby/src/Http/Remote.php @@ -3,6 +3,8 @@ namespace Kirby\Http; use Exception; +use Kirby\Cms\App; +use Kirby\Exception\InvalidArgumentException; use Kirby\Toolkit\F; use Kirby\Toolkit\Str; @@ -18,6 +20,9 @@ use Kirby\Toolkit\Str; */ class Remote { + const CA_INTERNAL = 1; + const CA_SYSTEM = 2; + /** * @var array */ @@ -25,6 +30,7 @@ class Remote 'agent' => null, 'basicAuth' => null, 'body' => true, + 'ca' => self::CA_INTERNAL, 'data' => [], 'encoding' => 'utf-8', 'file' => null, @@ -96,8 +102,17 @@ class Remote */ public function __construct(string $url, array $options = []) { + $defaults = static::$defaults; + + // update the defaults with App config if set; + // request the App instance lazily + $app = App::instance(null, true); + if ($app !== null) { + $defaults = array_merge($defaults, $app->option('remote', [])); + } + // set all options - $this->options = array_merge(static::$defaults, $options); + $this->options = array_merge($defaults, $options); // add the url $this->options['url'] = $url; @@ -138,7 +153,6 @@ class Remote */ public function fetch() { - // curl options $this->curlopt = [ CURLOPT_URL => $this->options['url'], @@ -149,7 +163,6 @@ class Remote CURLOPT_RETURNTRANSFER => $this->options['body'], CURLOPT_FOLLOWLOCATION => true, CURLOPT_MAXREDIRS => 10, - CURLOPT_SSL_VERIFYPEER => false, CURLOPT_HEADER => false, CURLOPT_HEADERFUNCTION => function ($curl, $header) { $parts = Str::split($header, ':'); @@ -163,6 +176,24 @@ class Remote } ]; + // determine the TLS CA to use + if (is_file($this->options['ca']) === true) { + $this->curlopt[CURLOPT_SSL_VERIFYPEER] = true; + $this->curlopt[CURLOPT_CAINFO] = $this->options['ca']; + } elseif (is_dir($this->options['ca']) === true) { + $this->curlopt[CURLOPT_SSL_VERIFYPEER] = true; + $this->curlopt[CURLOPT_CAPATH] = $this->options['ca']; + } elseif ($this->options['ca'] === self::CA_INTERNAL) { + $this->curlopt[CURLOPT_SSL_VERIFYPEER] = true; + $this->curlopt[CURLOPT_CAINFO] = dirname(__DIR__, 2) . '/cacert.pem'; + } elseif ($this->options['ca'] === self::CA_SYSTEM) { + $this->curlopt[CURLOPT_SSL_VERIFYPEER] = true; + } elseif ($this->options['ca'] === false) { + $this->curlopt[CURLOPT_SSL_VERIFYPEER] = false; + } else { + throw new InvalidArgumentException('Invalid "ca" option for the Remote class'); + } + // add the progress if (is_callable($this->options['progress']) === true) { $this->curlopt[CURLOPT_NOPROGRESS] = false; diff --git a/kirby/src/Http/Request.php b/kirby/src/Http/Request.php index c83645a..ab5136a 100755 --- a/kirby/src/Http/Request.php +++ b/kirby/src/Http/Request.php @@ -107,7 +107,7 @@ class Request public function __construct(array $options = []) { $this->options = $options; - $this->method = $options['method'] ?? $_SERVER['REQUEST_METHOD'] ?? 'GET'; + $this->method = $this->detectRequestMethod($options['method'] ?? null); if (isset($options['body']) === true) { $this->body = new Body($options['body']); @@ -208,6 +208,39 @@ class Request return array_merge($this->body()->toArray(), $this->query()->toArray()); } + /** + * Detect the request method from various + * options: given method, query string, server vars + * + * @param string $method + * @return string + */ + public function detectRequestMethod(string $method = null): string + { + // all possible methods + $methods = ['GET', 'HEAD', 'POST', 'PUT', 'DELETE', 'CONNECT', 'OPTIONS', 'TRACE', 'PATCH']; + + // the request method can be overwritten with a header + $methodOverride = strtoupper($_SERVER['HTTP_X_HTTP_METHOD_OVERRIDE'] ?? null); + + if ($method === null && in_array($methodOverride, $methods) === true) { + $method = $methodOverride; + } + + // final chain of options to detect the method + $method = $method ?? $_SERVER['REQUEST_METHOD'] ?? 'GET'; + + // uppercase the shit out of it + $method = strtoupper($method); + + // sanitize the method + if (in_array($method, $methods) === false) { + $method = 'GET'; + } + + return $method; + } + /** * Returns the domain * diff --git a/kirby/src/Http/Response.php b/kirby/src/Http/Response.php index ca7596a..9279202 100755 --- a/kirby/src/Http/Response.php +++ b/kirby/src/Http/Response.php @@ -151,9 +151,10 @@ class Response * * @param string $file * @param string $filename + * @param array $props Custom overrides for response props (e.g. headers) * @return self */ - public static function download(string $file, string $filename = null) + public static function download(string $file, string $filename = null, array $props = []) { if (file_exists($file) === false) { throw new Exception('The file could not be found'); @@ -164,19 +165,21 @@ class Response $body = file_get_contents($file); $size = strlen($body); - return new static([ + $props = array_replace_recursive([ 'body' => $body, 'type' => 'application/force-download', 'headers' => [ 'Pragma' => 'public', - 'Expires' => '0', + 'Cache-Control' => 'no-cache, no-store, must-revalidate', 'Last-Modified' => gmdate('D, d M Y H:i:s', $modified) . ' GMT', 'Content-Disposition' => 'attachment; filename="' . $filename . '"', 'Content-Transfer-Encoding' => 'binary', 'Content-Length' => $size, 'Connection' => 'close' ] - ]); + ], $props); + + return new static($props); } /** @@ -184,11 +187,17 @@ class Response * sends the file content to the browser * * @param string $file + * @param array $props Custom overrides for response props (e.g. headers) * @return self */ - public static function file(string $file) + public static function file(string $file, array $props = []) { - return new static(F::read($file), F::extensionToMime(F::extension($file))); + $props = array_merge([ + 'body' => F::read($file), + 'type' => F::extensionToMime(F::extension($file)) + ], $props); + + return new static($props); } /** @@ -245,12 +254,12 @@ class Response * @param int $code * @return self */ - public static function redirect(?string $location = null, ?int $code = null) + public static function redirect(string $location = '/', int $code = 302) { return new static([ - 'code' => $code ?? 302, + 'code' => $code, 'headers' => [ - 'Location' => Url::unIdn($location ?? '/') + 'Location' => Url::unIdn($location) ] ]); } diff --git a/kirby/src/Http/Route.php b/kirby/src/Http/Route.php index eff1891..362b5a2 100755 --- a/kirby/src/Http/Route.php +++ b/kirby/src/Http/Route.php @@ -158,7 +158,7 @@ class Route * * @return void */ - public function next(): void + public static function next(): void { throw new Exceptions\NextRouteException('next'); } diff --git a/kirby/src/Http/Router.php b/kirby/src/Http/Router.php index 90903f4..389d47a 100755 --- a/kirby/src/Http/Router.php +++ b/kirby/src/Http/Router.php @@ -107,13 +107,14 @@ class Router $result = $route->action()->call($route, ...$route->arguments()); } - $loop = false; + $loop = false; } catch (Exceptions\NextRouteException $e) { $ignore[] = $route; } if (is_a(static::$afterEach, 'Closure') === true) { - $result = (static::$afterEach)($route, $path, $method, $result); + $final = $loop === false; + $result = (static::$afterEach)($route, $path, $method, $result, $final); } } diff --git a/kirby/src/Http/Url.php b/kirby/src/Http/Url.php index da21800..0335413 100755 --- a/kirby/src/Http/Url.php +++ b/kirby/src/Http/Url.php @@ -119,8 +119,8 @@ class Url // matches the following groups of URLs: // //example.com/uri // http://example.com/uri, https://example.com/uri, ftp://example.com/uri - // mailto:example@example.com - return preg_match('!^(//|[a-z0-9+-.]+://|mailto:|tel:)!i', $url) === 1; + // mailto:example@example.com, geo:49.0158,8.3239?z=11 + return preg_match('!^(//|[a-z0-9+-.]+://|mailto:|tel:|geo:)!i', $url) === 1; } /** diff --git a/kirby/src/Image/Camera.php b/kirby/src/Image/Camera.php index a59e4d9..59d16d2 100755 --- a/kirby/src/Image/Camera.php +++ b/kirby/src/Image/Camera.php @@ -34,8 +34,8 @@ class Camera */ public function __construct(array $exif) { - $this->make = @$exif['Make']; - $this->model = @$exif['Model']; + $this->make = $exif['Make'] ?? null; + $this->model = $exif['Model'] ?? null; } /** diff --git a/kirby/src/Session/Session.php b/kirby/src/Session/Session.php index 3bdb0e8..acb5e7c 100755 --- a/kirby/src/Session/Session.php +++ b/kirby/src/Session/Session.php @@ -459,7 +459,8 @@ class Session 'lifetime' => $this->tokenExpiry, 'path' => Url::index(['host' => null, 'trailingSlash' => true]), 'secure' => Url::scheme() === 'https', - 'httpOnly' => true + 'httpOnly' => true, + 'sameSite' => 'Lax' ]); } else { $this->needsRetransmission = true; diff --git a/kirby/src/Text/KirbyTag.php b/kirby/src/Text/KirbyTag.php index 60634aa..495172c 100755 --- a/kirby/src/Text/KirbyTag.php +++ b/kirby/src/Text/KirbyTag.php @@ -84,7 +84,14 @@ class KirbyTag public static function parse(string $string, array $data = [], array $options = []) { // remove the brackets, extract the first attribute (the tag type) - $tag = trim(rtrim(ltrim($string, '('), ')')); + $tag = trim(ltrim($string, '(')); + + // use substr instead of rtrim to keep non-tagged brackets + // (link: file.pdf text: Download (PDF)) + if (substr($tag, -1) === ')') { + $tag = substr($tag, 0, -1); + } + $type = trim(substr($tag, 0, strpos($tag, ':'))); $type = strtolower($type); $attr = static::$types[$type]['attr'] ?? []; diff --git a/kirby/src/Text/KirbyTags.php b/kirby/src/Text/KirbyTags.php index 08feffc..76aa85d 100755 --- a/kirby/src/Text/KirbyTags.php +++ b/kirby/src/Text/KirbyTags.php @@ -3,6 +3,8 @@ namespace Kirby\Text; use Exception; +use Kirby\Exception\InvalidArgumentException; +use Kirby\Toolkit\Str; /** * Parses and converts custom kirbytags in any @@ -22,10 +24,31 @@ class KirbyTags public static function parse(string $text = null, array $data = [], array $options = []): string { - return preg_replace_callback('!(?=[^\]])\([a-z0-9_-]+:.*?\)!is', function ($match) use ($data, $options) { + $regex = '! + (?=[^\]]) # positive lookahead that matches a group after the main expression without including ] in the result + (?=\([a-z0-9_-]+:) # positive lookahead that requires starts with ( and lowercase ASCII letters, digits, underscores or hyphens followed with : immediately to the right of the current location + (\( # capturing group 1 + (?:[^()]+|(?1))*+ # repetitions of any chars other than ( and ) or the whole group 1 pattern (recursed) + \)) # end of capturing group 1 + !isx'; + + return preg_replace_callback($regex, function ($match) use ($data, $options) { + $debug = $options['debug'] ?? false; + try { return static::$tagClass::parse($match[0], $data, $options)->render(); + } catch (InvalidArgumentException $e) { + // stay silent in production and ignore non-existing tags + if ($debug !== true || Str::startsWith($e->getMessage(), 'Undefined tag type:') === true) { + return $match[0]; + } + + throw $e; } catch (Exception $e) { + if ($debug === true) { + throw $e; + } + return $match[0]; } }, $text); diff --git a/kirby/src/Text/Markdown.php b/kirby/src/Text/Markdown.php index 98c07c4..7b03050 100755 --- a/kirby/src/Text/Markdown.php +++ b/kirby/src/Text/Markdown.php @@ -56,11 +56,11 @@ class Markdown /** * Parses the given text and returns the HTML * - * @param string $text + * @param string|null $text * @param bool $inline * @return string */ - public function parse(string $text, bool $inline = false): string + public function parse(string $text = null, bool $inline = false): string { if ($this->options['extra'] === true) { $parser = new ParsedownExtra(); diff --git a/kirby/src/Text/SmartyPants.php b/kirby/src/Text/SmartyPants.php index 50d70cb..9589a99 100755 --- a/kirby/src/Text/SmartyPants.php +++ b/kirby/src/Text/SmartyPants.php @@ -115,10 +115,10 @@ class SmartyPants /** * Parses the given text * - * @param string $text + * @param string|null $text * @return string */ - public function parse(string $text): string + public function parse(string $text = null): string { // prepare the text $text = str_replace('"', '"', $text); diff --git a/kirby/src/Toolkit/A.php b/kirby/src/Toolkit/A.php index 9d03da5..29d51d0 100755 --- a/kirby/src/Toolkit/A.php +++ b/kirby/src/Toolkit/A.php @@ -81,29 +81,38 @@ class A return $array[$key]; } - // support dot notation + // extract data from nested array structures using the dot notation if (strpos($key, '.') !== false) { $keys = explode('.', $key); $firstKey = array_shift($keys); + // if the input array also uses dot notation, try to find a subset of the $keys if (isset($array[$firstKey]) === false) { $currentKey = $firstKey; while ($innerKey = array_shift($keys)) { - $currentKey = $currentKey . '.' . $innerKey; + $currentKey .= '.' . $innerKey; - if (isset($array[$currentKey]) === true && is_array($array[$currentKey])) { + // the element needs to exist and also needs to be an array; otherwise + // we cannot find the remaining keys within it (invalid array structure) + if (isset($array[$currentKey]) === true && is_array($array[$currentKey]) === true) { + // $keys only holds the remaining keys that have not been shifted off yet return static::get($array[$currentKey], implode('.', $keys), $default); } } + // searching through the full chain of keys wasn't successful return $default; } + // if the input array uses a completely nested structure, + // recursively progress layer by layer if (is_array($array[$firstKey]) === true) { return static::get($array[$firstKey], implode('.', $keys), $default); } + // the $firstKey element was found, but isn't an array, so we cannot + // find the remaining keys within it (invalid array structure) return $default; } @@ -410,6 +419,89 @@ class A return $missing; } + /** + * Normalizes an array into a nested form by converting + * dot notation in keys to nested structures + * + * @param array $array + * @param array $ignore List of keys in dot notation that should + * not be converted to a nested structure + * @return array + */ + public static function nest(array $array, array $ignore = []): array + { + // convert a simple ignore list to a nested $key => true array + if (isset($ignore[0]) === true) { + $ignore = array_map(function () { + return true; + }, array_flip($ignore)); + + $ignore = A::nest($ignore); + } + + $result = []; + + foreach ($array as $fullKey => $value) { + // extract the first part of a multi-level key, keep the others + $subKeys = explode('.', $fullKey); + $key = array_shift($subKeys); + + // skip the magic for ignored keys + if (isset($ignore[$key]) === true && $ignore[$key] === true) { + $result[$fullKey] = $value; + continue; + } + + // untangle elements where the key uses dot notation + if (count($subKeys) > 0) { + $value = static::nestByKeys($value, $subKeys); + } + + // now recursively do the same for each array level if needed + if (is_array($value) === true) { + $value = static::nest($value, $ignore[$key] ?? []); + } + + // merge arrays with previous results if necessary + // (needed when the same keys are used both with and without dot notation) + if ( + isset($result[$key]) === true && + is_array($result[$key]) === true && + is_array($value) === true + ) { + $result[$key] = array_replace_recursive($result[$key], $value); + } else { + $result[$key] = $value; + } + } + + return $result; + } + + /** + * Recursively creates a nested array from a set of keys + * with a key on each level + * + * @param mixed $value Arbitrary value that will end up at the bottom of the tree + * @param array $keys List of keys to use sorted from the topmost level + * @return array|mixed Nested array or (if `$keys` is empty) the input `$value` + */ + public static function nestByKeys($value, array $keys) + { + // shift off the first key from the list + $firstKey = array_shift($keys); + + // stop further recursion if there are no more keys + if ($firstKey === null) { + return $value; + } + + // return one level of the output tree, recurse further + return [ + $firstKey => static::nestByKeys($value, $keys) + ]; + } + /** * Sorts a multi-dimensional array by a certain column * diff --git a/kirby/src/Toolkit/Collection.php b/kirby/src/Toolkit/Collection.php index b0787f5..865813b 100755 --- a/kirby/src/Toolkit/Collection.php +++ b/kirby/src/Toolkit/Collection.php @@ -26,6 +26,14 @@ class Collection extends Iterator implements Countable */ public static $filters = []; + /** + * Whether the collection keys should be + * treated as case-sensitive + * + * @var bool + */ + protected $caseSensitive = false; + /** * Pagination object * @var Pagination @@ -48,9 +56,12 @@ class Collection extends Iterator implements Countable * Constructor * * @param array $data + * @param bool $caseSensitive Whether the collection keys should be + * treated as case-sensitive */ - public function __construct(array $data = []) + public function __construct(array $data = [], bool $caseSensitive = false) { + $this->caseSensitive = $caseSensitive; $this->set($data); } @@ -72,11 +83,11 @@ class Collection extends Iterator implements Countable */ public function __get($key) { - if (isset($this->data[$key])) { - return $this->data[$key]; + if ($this->caseSensitive === true) { + return $this->data[$key] ?? null; } - return $this->data[strtolower($key)] ?? null; + return $this->data[$key] ?? $this->data[strtolower($key)] ?? null; } /** @@ -87,7 +98,12 @@ class Collection extends Iterator implements Countable */ public function __set(string $key, $value) { - $this->data[strtolower($key)] = $value; + if ($this->caseSensitive === true) { + $this->data[$key] = $value; + } else { + $this->data[strtolower($key)] = $value; + } + return $this; } @@ -1243,7 +1259,7 @@ Collection::$filters['!^='] = [ /** * Between Filter */ -Collection::$filters['between'] = [ +Collection::$filters['between'] = Collection::$filters['..'] = [ 'validator' => function ($value, $test) { return V::between($value, ...$test) === true; }, @@ -1294,3 +1310,67 @@ Collection::$filters['maxwords'] = [ Collection::$filters['minwords'] = [ 'validator' => 'V::minWords', ]; + +/** + * Date Equals Filter + */ +Collection::$filters['date =='] = [ + 'validator' => function ($value, $test) { + return V::date($value, '==', $test); + } +]; + +/** + * Date Not Equals Filter + */ +Collection::$filters['date !='] = [ + 'validator' => function ($value, $test) { + return V::date($value, '!=', $test); + } +]; + +/** + * Date More Filter + */ +Collection::$filters['date >'] = [ + 'validator' => function ($value, $test) { + return V::date($value, '>', $test); + } +]; + +/** + * Date Min Filter + */ +Collection::$filters['date >='] = [ + 'validator' => function ($value, $test) { + return V::date($value, '>=', $test); + } +]; + +/** + * Date Less Filter + */ +Collection::$filters['date <'] = [ + 'validator' => function ($value, $test) { + return V::date($value, '<', $test); + } +]; + +/** + * Date Max Filter + */ +Collection::$filters['date <='] = [ + 'validator' => function ($value, $test) { + return V::date($value, '<=', $test); + } +]; + +/** + * Date Between Filter + */ +Collection::$filters['date between'] = Collection::$filters['date ..'] = [ + 'validator' => function ($value, $test) { + return V::date($value, '>=', $test[0]) && + V::date($value, '<=', $test[1]); + } +]; diff --git a/kirby/src/Toolkit/Component.php b/kirby/src/Toolkit/Component.php index 2b12488..537942a 100755 --- a/kirby/src/Toolkit/Component.php +++ b/kirby/src/Toolkit/Component.php @@ -3,6 +3,7 @@ namespace Kirby\Toolkit; use ArgumentCountError; +use Kirby\Exception\Exception; use Kirby\Exception\InvalidArgumentException; use TypeError; @@ -224,8 +225,12 @@ class Component $definition = static::$types[$type]; // load definitions from string - if (is_array($definition) === false) { - static::$types[$type] = $definition = include $definition; + if (is_string($definition) === true) { + if (is_file($definition) !== true) { + throw new Exception('Component definition ' . $definition . ' does not exist'); + } + + static::$types[$type] = $definition = F::load($definition); } return $definition; diff --git a/kirby/src/Toolkit/Controller.php b/kirby/src/Toolkit/Controller.php index e711769..ee18435 100755 --- a/kirby/src/Toolkit/Controller.php +++ b/kirby/src/Toolkit/Controller.php @@ -51,11 +51,11 @@ class Controller public static function load(string $file) { - if (file_exists($file) === false) { + if (is_file($file) === false) { return null; } - $function = require $file; + $function = F::load($file); if (is_a($function, 'Closure') === false) { return null; diff --git a/kirby/src/Toolkit/Dir.php b/kirby/src/Toolkit/Dir.php index ec1b571..7b57c62 100755 --- a/kirby/src/Toolkit/Dir.php +++ b/kirby/src/Toolkit/Dir.php @@ -99,7 +99,7 @@ class Dir } /** - * Checks if the directory exsits on disk + * Checks if the directory exists on disk * * @param string $dir * @return bool diff --git a/kirby/src/Toolkit/F.php b/kirby/src/Toolkit/F.php index 79efb74..58f19c8 100755 --- a/kirby/src/Toolkit/F.php +++ b/kirby/src/Toolkit/F.php @@ -103,7 +103,7 @@ class F ], ]; - public static $units = ['B', 'kB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB']; + public static $units = ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB']; /** * Appends new content to an existing file @@ -357,19 +357,24 @@ class F } /** - * Loads a file and returns the result + * Loads a file and returns the result or `false` if the + * file to load does not exist * * @param string $file * @param mixed $fallback + * @param array $data Optional array of variables to extract in the variable scope * @return mixed */ - public static function load(string $file, $fallback = null) + public static function load(string $file, $fallback = null, array $data = []) { - if (file_exists($file) === false) { + if (is_file($file) === false) { return $fallback; } - $result = include $file; + // we use the loadIsolated() method here to prevent the included + // file from overwriting our $fallback in this variable scope; see + // https://www.php.net/manual/en/function.include.php#example-124 + $result = static::loadIsolated($file, $data); if ($fallback !== null && gettype($result) !== gettype($fallback)) { return $fallback; @@ -378,6 +383,39 @@ class F return $result; } + /** + * Loads a file with as little as possible in the variable scope + * + * @param string $file + * @param array $data Optional array of variables to extract in the variable scope + * @return mixed + */ + protected static function loadIsolated(string $file, array $data = []) + { + // extract the $data variables in this scope to be accessed by the included file; + // protect $file against being overwritten by a $data variable + $___file___ = $file; + extract($data); + + return include $___file___; + } + + /** + * Loads a file using `include_once()` and returns whether loading was successful + * + * @param string $file + * @return bool + */ + public static function loadOnce(string $file): bool + { + if (is_file($file) === false) { + return false; + } + + include_once $file; + return true; + } + /** * Returns the mime type of a file * @@ -498,7 +536,7 @@ class F // avoid errors for invalid sizes if ($size <= 0) { - return '0 kB'; + return '0 KB'; } // the math magic diff --git a/kirby/src/Toolkit/Html.php b/kirby/src/Toolkit/Html.php index de0b535..42c6473 100755 --- a/kirby/src/Toolkit/Html.php +++ b/kirby/src/Toolkit/Html.php @@ -6,7 +6,7 @@ use Exception; use Kirby\Http\Url; /** - * Html builder for the most common elements + * HTML builder for the most common elements * * @package Kirby Toolkit * @author Bastian Allgeier @@ -14,58 +14,60 @@ use Kirby\Http\Url; * @copyright Bastian Allgeier GmbH * @license https://opensource.org/licenses/MIT */ -class Html +class Html extends Xml { /** - * An internal store for a html entities translation table + * An internal store for an HTML entities translation table * * @var array */ public static $entities; /** - * Can be used to switch to trailing slashes if required + * Closing string for void tags; + * can be used to switch to trailing slashes if required * * ```php - * html::$void = ' />' + * Html::$void = ' />' * ``` * - * @var string $void + * @var string */ public static $void = '>'; /** * Generic HTML tag generator + * Can be called like `Html::p('A paragraph', ['class' => 'text'])` * - * @param string $tag - * @param array $arguments + * @param string $tag Tag name + * @param array $arguments Further arguments for the Html::tag() method * @return string */ public static function __callStatic(string $tag, array $arguments = []): string { if (static::isVoid($tag) === true) { - return Html::tag($tag, null, ...$arguments); + return static::tag($tag, null, ...$arguments); } - return Html::tag($tag, ...$arguments); + return static::tag($tag, ...$arguments); } /** - * Generates an `a` tag + * Generates an `` tag; automatically supports mailto: and tel: links * - * @param string $href The url for the `a` tag - * @param mixed $text The optional text. If `null`, the url will be used as text + * @param string $href The URL for the `` tag + * @param string|array|null $text The optional text; if `null`, the URL will be used as text * @param array $attr Additional attributes for the tag - * @return string the generated html + * @return string The generated HTML */ - public static function a(string $href = null, $text = null, array $attr = []): string + public static function a(string $href, $text = null, array $attr = []): string { if (Str::startsWith($href, 'mailto:')) { - return static::email($href, $text, $attr); + return static::email(substr($href, 7), $text, $attr); } if (Str::startsWith($href, 'tel:')) { - return static::tel($href, $text, $attr); + return static::tel(substr($href, 4), $text, $attr); } return static::link($href, $text, $attr); @@ -74,92 +76,47 @@ class Html /** * Generates a single attribute or a list of attributes * - * @param string $name mixed string: a single attribute with that name will be generated. array: a list of attributes will be generated. Don't pass a second argument in that case. - * @param string $value if used for a single attribute, pass the content for the attribute here - * @return string the generated html + * @param string|array $name String: A single attribute with that name will be generated. + * Key-value array: A list of attributes will be generated. Don't pass a second argument in that case. + * @param mixed $value If used with a `$name` string, pass the value of the attribute here. + * If used with a `$name` array, this can be set to `false` to disable attribute sorting. + * @return string|null The generated HTML attributes string */ - public static function attr($name, $value = null): string + public static function attr($name, $value = null): ?string { - if (is_array($name) === true) { - $attributes = []; - - ksort($name); - - foreach ($name as $key => $val) { - $a = static::attr($key, $val); - - if ($a) { - $attributes[] = $a; - } - } - - return implode(' ', $attributes); + // HTML supports boolean attributes without values + if (is_array($name) === false && is_bool($value) === true) { + return $value === true ? strtolower($name) : null; } - if ($value === null || $value === '' || $value === []) { - return false; - } + // all other cases can share the XML variant + $attr = parent::attr($name, $value); - if ($value === ' ') { - return strtolower($name) . '=""'; - } - - if (is_bool($value) === true) { - return $value === true ? strtolower($name) : ''; - } - - if (is_array($value) === true) { - if (isset($value['value'], $value['escape'])) { - $value = $value['escape'] === true ? htmlspecialchars($value['value'], ENT_QUOTES, 'UTF-8') : $value['value']; - } else { - $value = implode(' ', array_filter($value, function ($value) { - return !empty($value) || is_numeric($value); - })); - } - } else { - $value = htmlspecialchars($value, ENT_QUOTES, 'UTF-8'); - } - - return strtolower($name) . '="' . $value . '"'; + // HTML supports named entities + $entities = parent::entities(); + $html = array_keys($entities); + $xml = array_values($entities); + return str_replace($xml, $html, $attr); } /** - * Converts lines in a string into html breaks + * Converts lines in a string into HTML breaks * * @param string $string * @return string */ - public static function breaks(string $string = null): string + public static function breaks(string $string): string { return nl2br($string); } /** - * Removes all html tags and encoded chars from a string + * Generates an `` tag with `mailto:` * - * - * - * echo html::decode('some uber crazy stuff'); - * // output: some uber crazy stuff - * - * - * - * @param string $string - * @return string The html string - */ - public static function decode(string $string = null): string - { - $string = strip_tags($string); - return html_entity_decode($string, ENT_COMPAT, 'utf-8'); - } - - /** - * Generates an `a` tag with `mailto:` - * - * @param string $email The url for the a tag - * @param mixed $text The optional text. If null, the url will be used as text + * @param string $email The email address + * @param string|array|null $text The optional text; if `null`, the email address will be used as text * @param array $attr Additional attributes for the tag - * @return string the generated html + * @return string The generated HTML */ public static function email(string $email, $text = null, array $attr = []): string { @@ -168,8 +125,10 @@ class Html } if (empty($text) === true) { - // show only the eMail address without additional parameters (if the 'text' argument is empty) - $text = [Str::encode(Str::split($email, '?')[0])]; + // show only the email address without additional parameters + $address = Str::contains($email, '?') ? Str::before($email, '?') : $email; + + $text = [Str::encode($address)]; } $email = Str::encode($email); @@ -187,14 +146,18 @@ class Html } /** - * Converts a string to a html-safe string + * Converts a string to an HTML-safe string * - * @param string $string - * @param bool $keepTags - * @return string The html string + * @param string|null $string + * @param bool $keepTags If true, existing tags won't be escaped + * @return string The HTML string */ - public static function encode(string $string = null, bool $keepTags = false): string + public static function encode(?string $string, bool $keepTags = false): string { + if ($string === null) { + return ''; + } + if ($keepTags === true) { $list = static::entities(); unset($list['"'], $list['<'], $list['>'], $list['&']); @@ -209,24 +172,24 @@ class Html } /** - * Returns the entities translation table + * Returns the entity translation table * * @return array */ public static function entities(): array { - return static::$entities = static::$entities ?? get_html_translation_table(HTML_ENTITIES); + return self::$entities = self::$entities ?? get_html_translation_table(HTML_ENTITIES); } /** - * Creates a figure tag with optional caption + * Creates a `
` tag with optional caption * - * @param string|array $content - * @param string|array $caption - * @param array $attr - * @return string + * @param string|array $content Contents of the `
` tag + * @param string|array $caption Optional `
` text to use + * @param array $attr Additional attributes for the `
` tag + * @return string The generated HTML */ - public static function figure($content, $caption = null, array $attr = []): string + public static function figure($content, $caption = '', array $attr = []): string { if ($caption) { $figcaption = static::tag('figcaption', $caption); @@ -242,14 +205,14 @@ class Html } /** - * Embeds a gist + * Embeds a GitHub Gist * - * @param string $url - * @param string $file - * @param array $attr - * @return string + * @param string $url Gist URL + * @param string|null $file Optional specific file to embed + * @param array $attr Additional attributes for the `