diff --git a/.github/ISSUE_TEMPLATE/1_bug_report.yml b/.github/ISSUE_TEMPLATE/1_bug_report.yml index d8e1c50..6201e46 100644 --- a/.github/ISSUE_TEMPLATE/1_bug_report.yml +++ b/.github/ISSUE_TEMPLATE/1_bug_report.yml @@ -23,7 +23,7 @@ body: attributes: label: IconCaptcha version description: Please specify the version of the package that you are using. - placeholder: "e.g. 4.0.3" + placeholder: "e.g. 4.0.4" validations: required: true - type: input @@ -31,7 +31,7 @@ body: attributes: label: PHP version description: Please specify the version of PHP you are using. - placeholder: e.g. 8.2.0 + placeholder: e.g. 8.4.0 validations: required: true - type: dropdown diff --git a/.github/ISSUE_TEMPLATE/2_blank_issue.yml b/.github/ISSUE_TEMPLATE/2_blank_issue.yml index 61da860..1ca415f 100644 --- a/.github/ISSUE_TEMPLATE/2_blank_issue.yml +++ b/.github/ISSUE_TEMPLATE/2_blank_issue.yml @@ -12,7 +12,7 @@ body: attributes: label: IconCaptcha version description: Please specify the version of the package that you are using. - placeholder: "e.g. 4.0.3" + placeholder: "e.g. 4.0.4" validations: required: true - type: input @@ -20,7 +20,7 @@ body: attributes: label: PHP version description: Please specify the version of PHP you are using. - placeholder: e.g. 8.2.0 + placeholder: e.g. 8.4.0 validations: required: true - type: textarea diff --git a/CHANGELOG.md b/CHANGELOG.md index f37e85a..6899ea8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,14 @@ All notable changes will be documented in this file. Only changes starting at IconCaptcha 2.0.2 have been recorded. +## 4.0.4 - January 23, 2025 +Release: [View tag 4.0.4](https://github.com/fabianwennink/IconCaptcha-PHP/releases/tag/4.0.4) + +### Fixed +- Fixed a compatibility issue with PHP 8.4 caused by a deprecation warning for "implicitly marked nullable parameters", which was breaking the code. + +For a full list of commits and changes, please refer to the [full commit changelog](https://github.com/fabianwennink/IconCaptcha-PHP/compare/4.0.3...4.0.4). + ## 4.0.3 - Dec 19, 2023 Release: [View tag 4.0.3](https://github.com/fabianwennink/IconCaptcha-PHP/releases/tag/4.0.3) diff --git a/README.md b/README.md index 6df9a68..593ec23 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@
-
+
diff --git a/assets/client/css/iconcaptcha.min.css b/assets/client/css/iconcaptcha.min.css
index 29d5dee..a1af9ef 100644
--- a/assets/client/css/iconcaptcha.min.css
+++ b/assets/client/css/iconcaptcha.min.css
@@ -1,2 +1,2 @@
-/*! IconCaptcha v4.0.1 | (c) 2023, Fabian Wennink (fabianwennink.nl) | fabianwennink.nl/projects/IconCaptcha-Widget/license */
-.iconcaptcha-widget{position:relative;max-width:330px;min-height:50px;width:99%;height:auto;border-radius:8px;font-family:inherit;text-shadow:none;line-height:1;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}.iconcaptcha-widget a{text-decoration:none}.iconcaptcha-widget.iconcaptcha-init{-webkit-transition:background 150ms linear;transition:background 150ms linear}.iconcaptcha-widget.iconcaptcha-init:hover{-webkit-transition:background 150ms linear;transition:background 150ms linear}.iconcaptcha-widget.iconcaptcha-init:hover .iconcaptcha-modal__body-circle{opacity:.75;-webkit-transition:opacity .1s linear;transition:opacity .1s linear}.iconcaptcha-widget.iconcaptcha-init .iconcaptcha-modal__body{cursor:pointer}.iconcaptcha-widget.iconcaptcha-init .iconcaptcha-modal__body-circle{width:28px;height:28px;border-radius:100%;border:6px solid #52b3d9;position:absolute;top:13px;left:15px;-webkit-transition:opacity .1s linear;transition:opacity .1s linear;-webkit-animation:captcha-breathing 5s infinite linear;animation:captcha-breathing 5s infinite linear}.iconcaptcha-widget.iconcaptcha-init .iconcaptcha-modal__body-circle--speed{-webkit-animation-duration:2s;animation-duration:2s}.iconcaptcha-widget.iconcaptcha-init .iconcaptcha-modal__body-title,.iconcaptcha-widget.iconcaptcha-success .iconcaptcha-modal__body-title{font-size:15px;font-weight:bold;top:19px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:20px;padding-left:60px}.iconcaptcha-widget .iconcaptcha-modal{width:100%;display:block}.iconcaptcha-widget .iconcaptcha-modal__header{height:auto;padding:0 10px;display:block}.iconcaptcha-widget .iconcaptcha-modal__header span{padding:6px 0;display:block;text-align:center;font-size:11px;line-height:14px;font-weight:bold;cursor:default}.iconcaptcha-widget .iconcaptcha-modal__header span::-moz-selection{background:none !important}.iconcaptcha-widget .iconcaptcha-modal__header span::selection{background:none !important}.iconcaptcha-widget .iconcaptcha-modal__header span::-moz-selection{background:none !important}.iconcaptcha-widget .iconcaptcha-modal__body{display:block;overflow:hidden;position:relative;height:50px;min-height:50px;padding:2px 4px;text-align:center;-webkit-box-align:center;-webkit-box-pack:center;-webkit-box-sizing:initial;box-sizing:initial}.iconcaptcha-widget .iconcaptcha-modal__body-title{font-size:20px;font-weight:700;text-transform:uppercase;display:inline-block;width:100%;position:absolute;left:0;right:0;top:8px}.iconcaptcha-widget .iconcaptcha-modal__body-subtitle{font-size:12px;display:inline-block;width:100%;position:absolute;left:0;right:0;top:35px}.iconcaptcha-widget .iconcaptcha-modal__body-icons{position:relative;height:50px;background-repeat:no-repeat;background-position:50% 50%;z-index:1}.iconcaptcha-widget .iconcaptcha-modal__body-selection{position:absolute;left:0;top:2px;bottom:0;right:0;margin:2px 4px;z-index:999;cursor:none;height:50px}.iconcaptcha-widget .iconcaptcha-modal__body-selection>i{content:"";width:14px;height:14px;border-radius:100%;background:#52b3d9;position:absolute;display:none}.iconcaptcha-widget .iconcaptcha-modal__body-info{position:absolute;right:6px;bottom:4px;font-size:9px}.iconcaptcha-widget .iconcaptcha-modal__body-info:hover{text-decoration:underline}.iconcaptcha-widget .iconcaptcha-modal__body-icons,.iconcaptcha-widget .iconcaptcha-modal__body-selection{width:100%;max-width:320px;margin:0 auto}.iconcaptcha-widget .iconcaptcha-modal__body .captcha-loader{margin:auto;position:absolute;width:34px;height:34px;border-radius:100%;border:6px solid #52b3d9;z-index:10;top:0;left:0;bottom:0;right:0;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-animation:captcha-breathing 2s infinite ease-in-out;animation:captcha-breathing 2s infinite ease-in-out}.iconcaptcha-widget .iconcaptcha-modal__body.captcha-opacity>canvas:not(.captcha-loader){-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=20)";filter:alpha(opacity=15);-moz-opacity:.15;-khtml-opacity:.15;opacity:.15;cursor:default;pointer-events:none}.iconcaptcha-widget .iconcaptcha-modal__body.captcha-opacity>canvas:not(.captcha-loader):after,.iconcaptcha-widget .iconcaptcha-modal__body.captcha-opacity>canvas:not(.captcha-loader):hover:after{content:none}.iconcaptcha-widget .iconcaptcha-modal__body-checkmark{width:28px;height:28px;position:absolute;top:13px;left:15px}.iconcaptcha-widget .iconcaptcha-modal__footer{display:block !important;font-size:9px;padding:3px;cursor:default;text-align:center}.iconcaptcha-widget .iconcaptcha-modal__footer>span a{text-decoration:none;-webkit-transition:color .1s linear;transition:color .1s linear;text-align:center}.iconcaptcha-widget .iconcaptcha-modal__footer>span a:hover{-webkit-transition:color .1s linear;transition:color .1s linear}.iconcaptcha-widget .iconcaptcha-modal__footer--hide{visibility:hidden}.iconcaptcha-widget .iconcaptcha-modal__fields{display:none;visibility:hidden}.iconcaptcha-widget .iconcaptcha-modal__fields input[type=text]{display:none;visibility:hidden}.iconcaptcha-widget.iconcaptcha-theme-light{background:#fafafa;border:1px solid #d8d8d8}.iconcaptcha-widget.iconcaptcha-theme-light .iconcaptcha-modal__header{border-bottom:2px solid #d8d8d8}.iconcaptcha-widget.iconcaptcha-theme-light .iconcaptcha-modal__body-subtitle{color:#9e9e9e}.iconcaptcha-widget.iconcaptcha-theme-light .iconcaptcha-modal__footer{color:#a7a7a7;border-top:2px solid #d8d8d8;padding-top:6px;padding-bottom:5px}.iconcaptcha-widget.iconcaptcha-theme-light .iconcaptcha-modal__footer>span a{color:#448aff;text-transform:uppercase;font-weight:bold}.iconcaptcha-widget.iconcaptcha-theme-light .iconcaptcha-modal__footer>span a:hover{color:#74a8ff}.iconcaptcha-widget.iconcaptcha-theme-dark{background:#4c4c4c;border:1px solid #404040}.iconcaptcha-widget.iconcaptcha-theme-dark .iconcaptcha-modal__header{border-bottom:2px solid #404040}.iconcaptcha-widget.iconcaptcha-theme-dark .iconcaptcha-modal__header span{color:#dadada}.iconcaptcha-widget.iconcaptcha-theme-dark .iconcaptcha-modal__body-subtitle{color:#b1b1b1}.iconcaptcha-widget.iconcaptcha-theme-dark .iconcaptcha-modal__footer{color:#a7a7a7;border-top:2px solid #404040;padding-top:6px;padding-bottom:5px}.iconcaptcha-widget.iconcaptcha-theme-dark .iconcaptcha-modal__footer>span a{color:#fff;text-transform:uppercase;font-weight:bold}.iconcaptcha-widget.iconcaptcha-theme-dark .iconcaptcha-modal__footer>span a:hover{color:#f0f0f0}.iconcaptcha-widget.iconcaptcha-theme-light.iconcaptcha-init:hover{background:#f1f1f1}.iconcaptcha-widget.iconcaptcha-theme-light.iconcaptcha-init .iconcaptcha-modal__body-title{color:#464646}.iconcaptcha-widget.iconcaptcha-theme-light .iconcaptcha-modal__header span{color:#1d1d1d}.iconcaptcha-widget.iconcaptcha-theme-light .iconcaptcha-modal__body-info a{color:#afafaf}.iconcaptcha-widget.iconcaptcha-theme-light.iconcaptcha-success .iconcaptcha-modal__body-checkmark svg{stroke:#5bd25b}.iconcaptcha-widget.iconcaptcha-theme-light.iconcaptcha-success .iconcaptcha-modal__body-title{color:#5bd25b}.iconcaptcha-widget.iconcaptcha-theme-light.iconcaptcha-error .iconcaptcha-modal__body-title{color:#ef5858}.iconcaptcha-widget.iconcaptcha-theme-dark.iconcaptcha-init:hover{background:#454545}.iconcaptcha-widget.iconcaptcha-theme-dark.iconcaptcha-init .iconcaptcha-modal__body-title{color:#dadada}.iconcaptcha-widget.iconcaptcha-theme-dark .iconcaptcha-modal__header span{color:#dadada}.iconcaptcha-widget.iconcaptcha-theme-dark .iconcaptcha-modal__body-info a{color:#b1b1b1}.iconcaptcha-widget.iconcaptcha-theme-dark.iconcaptcha-success .iconcaptcha-modal__body-checkmark svg{stroke:#93d293}.iconcaptcha-widget.iconcaptcha-theme-dark.iconcaptcha-success .iconcaptcha-modal__body-title{color:#93d293}.iconcaptcha-widget.iconcaptcha-theme-dark.iconcaptcha-error .iconcaptcha-modal__body-title{color:#ef5858}.iconcaptcha-widget.iconcaptcha-success,.iconcaptcha-widget.iconcaptcha-error{cursor:default}.iconcaptcha-widget *{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased}.iconcaptcha-widget *::-moz-selection{background:none !important}.iconcaptcha-widget *::selection{background:none !important}.iconcaptcha-widget *::-moz-selection{background:none !important}@-webkit-keyframes captcha-breathing{0%,100%{-webkit-transform:scale(1) translateZ(0);transform:scale(1) translateZ(0);border-color:#52b3d9}25%{-webkit-transform:scale(0.8) translateZ(0);transform:scale(0.8) translateZ(0);border-color:#41a2c7}50%{-webkit-transform:scale(1) translateZ(0);transform:scale(1) translateZ(0);border-color:#52b3d9}75%{-webkit-transform:scale(0.8) translateZ(0);transform:scale(0.8) translateZ(0);border-color:#41a2c7}}@keyframes captcha-breathing{0%,100%{-webkit-transform:scale(1) translateZ(0);transform:scale(1) translateZ(0);border-color:#52b3d9}25%{-webkit-transform:scale(0.8) translateZ(0);transform:scale(0.8) translateZ(0);border-color:#41a2c7}50%{-webkit-transform:scale(1) translateZ(0);transform:scale(1) translateZ(0);border-color:#52b3d9}75%{-webkit-transform:scale(0.8) translateZ(0);transform:scale(0.8) translateZ(0);border-color:#41a2c7}}
\ No newline at end of file
+/*! IconCaptcha v4.0.2 | (c) 2017-2025, Fabian Wennink (fabianwennink.nl) | fabianwennink.nl/projects/IconCaptcha-Widget/license */
+.iconcaptcha-widget{position:relative;max-width:330px;min-height:50px;width:99%;height:auto;border-radius:8px;font-family:inherit;text-shadow:none;line-height:1;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}.iconcaptcha-widget a{text-decoration:none}.iconcaptcha-widget.iconcaptcha-init{-webkit-transition:background 150ms linear;transition:background 150ms linear}.iconcaptcha-widget.iconcaptcha-init:hover{-webkit-transition:background 150ms linear;transition:background 150ms linear}.iconcaptcha-widget.iconcaptcha-init:hover .iconcaptcha-modal__body-circle{opacity:.75;-webkit-transition:opacity .1s linear;transition:opacity .1s linear}.iconcaptcha-widget.iconcaptcha-init .iconcaptcha-modal__body{cursor:pointer}.iconcaptcha-widget.iconcaptcha-init .iconcaptcha-modal__body-circle{width:28px;height:28px;border-radius:100%;border:6px solid #52b3d9;position:absolute;top:13px;left:15px;-webkit-transition:opacity .1s linear;transition:opacity .1s linear;-webkit-animation:captcha-breathing 5s infinite linear;animation:captcha-breathing 5s infinite linear}.iconcaptcha-widget.iconcaptcha-init .iconcaptcha-modal__body-circle--speed{-webkit-animation-duration:2s;animation-duration:2s}.iconcaptcha-widget.iconcaptcha-init .iconcaptcha-modal__body-title,.iconcaptcha-widget.iconcaptcha-success .iconcaptcha-modal__body-title{font-size:15px;font-weight:bold;top:19px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:20px;padding-left:60px}.iconcaptcha-widget .iconcaptcha-modal{width:100%;display:block}.iconcaptcha-widget .iconcaptcha-modal__header{height:auto;padding:0 10px;display:block}.iconcaptcha-widget .iconcaptcha-modal__header span{padding:6px 0;display:block;text-align:center;font-size:11px;line-height:14px;font-weight:bold;cursor:default}.iconcaptcha-widget .iconcaptcha-modal__header span::-moz-selection{background:none !important}.iconcaptcha-widget .iconcaptcha-modal__header span::selection{background:none !important}.iconcaptcha-widget .iconcaptcha-modal__header span::-moz-selection{background:none !important}.iconcaptcha-widget .iconcaptcha-modal__body{display:block;overflow:hidden;position:relative;height:50px;padding:2px 4px;text-align:center;-webkit-box-align:center;-webkit-box-pack:center;-webkit-box-sizing:initial;box-sizing:initial}.iconcaptcha-widget .iconcaptcha-modal__body-title{font-size:20px;font-weight:700;text-transform:uppercase;display:inline-block;width:100%;position:absolute;left:0;right:0;top:8px}.iconcaptcha-widget .iconcaptcha-modal__body-subtitle{font-size:12px;display:inline-block;width:100%;position:absolute;left:0;right:0;top:35px}.iconcaptcha-widget .iconcaptcha-modal__body-icons{position:relative;height:50px;background-repeat:no-repeat;background-position:50% 50%;z-index:1}.iconcaptcha-widget .iconcaptcha-modal__body-selection{position:absolute;left:0;top:2px;bottom:0;right:0;margin:2px 4px;z-index:999;cursor:none;height:50px}.iconcaptcha-widget .iconcaptcha-modal__body-selection>i{content:"";width:14px;height:14px;border-radius:100%;background:#52b3d9;position:absolute;display:none}.iconcaptcha-widget .iconcaptcha-modal__body-info{position:absolute;right:6px;bottom:4px;font-size:9px}.iconcaptcha-widget .iconcaptcha-modal__body-info:hover{text-decoration:underline}.iconcaptcha-widget .iconcaptcha-modal__body-icons,.iconcaptcha-widget .iconcaptcha-modal__body-selection{width:100%;max-width:320px;margin:0 auto}.iconcaptcha-widget .iconcaptcha-modal__body .captcha-loader{margin:auto;position:absolute;width:34px;height:34px;border-radius:100%;border:6px solid #52b3d9;z-index:10;top:0;left:0;bottom:0;right:0;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-animation:captcha-breathing 2s infinite ease-in-out;animation:captcha-breathing 2s infinite ease-in-out}.iconcaptcha-widget .iconcaptcha-modal__body.captcha-opacity>canvas:not(.captcha-loader){-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=20)";filter:alpha(opacity=15);-moz-opacity:.15;-khtml-opacity:.15;opacity:.15;cursor:default;pointer-events:none}.iconcaptcha-widget .iconcaptcha-modal__body.captcha-opacity>canvas:not(.captcha-loader):after,.iconcaptcha-widget .iconcaptcha-modal__body.captcha-opacity>canvas:not(.captcha-loader):hover:after{content:none}.iconcaptcha-widget .iconcaptcha-modal__body-checkmark{width:28px;height:28px;position:absolute;top:13px;left:15px}.iconcaptcha-widget .iconcaptcha-modal__footer{display:block !important;font-size:9px;padding:3px;cursor:default;text-align:center}.iconcaptcha-widget .iconcaptcha-modal__footer>span a{text-decoration:none;-webkit-transition:color .1s linear;transition:color .1s linear;text-align:center}.iconcaptcha-widget .iconcaptcha-modal__footer>span a:hover{-webkit-transition:color .1s linear;transition:color .1s linear}.iconcaptcha-widget .iconcaptcha-modal__footer--hide{visibility:hidden}.iconcaptcha-widget .iconcaptcha-modal__fields{display:none;visibility:hidden}.iconcaptcha-widget .iconcaptcha-modal__fields input[type=text]{display:none;visibility:hidden}.iconcaptcha-widget.iconcaptcha-theme-light{background:#fafafa;border:1px solid #d8d8d8}.iconcaptcha-widget.iconcaptcha-theme-light .iconcaptcha-modal__header{border-bottom:2px solid #d8d8d8}.iconcaptcha-widget.iconcaptcha-theme-light .iconcaptcha-modal__body-subtitle{color:#9e9e9e}.iconcaptcha-widget.iconcaptcha-theme-light .iconcaptcha-modal__footer{color:#a7a7a7;border-top:2px solid #d8d8d8;padding-top:6px;padding-bottom:5px}.iconcaptcha-widget.iconcaptcha-theme-light .iconcaptcha-modal__footer>span a{color:#448aff;text-transform:uppercase;font-weight:bold}.iconcaptcha-widget.iconcaptcha-theme-light .iconcaptcha-modal__footer>span a:hover{color:#74a8ff}.iconcaptcha-widget.iconcaptcha-theme-dark{background:#4c4c4c;border:1px solid #404040}.iconcaptcha-widget.iconcaptcha-theme-dark .iconcaptcha-modal__header{border-bottom:2px solid #404040}.iconcaptcha-widget.iconcaptcha-theme-dark .iconcaptcha-modal__header span{color:#dadada}.iconcaptcha-widget.iconcaptcha-theme-dark .iconcaptcha-modal__body-subtitle{color:#b1b1b1}.iconcaptcha-widget.iconcaptcha-theme-dark .iconcaptcha-modal__footer{color:#a7a7a7;border-top:2px solid #404040;padding-top:6px;padding-bottom:5px}.iconcaptcha-widget.iconcaptcha-theme-dark .iconcaptcha-modal__footer>span a{color:#fff;text-transform:uppercase;font-weight:bold}.iconcaptcha-widget.iconcaptcha-theme-dark .iconcaptcha-modal__footer>span a:hover{color:#f0f0f0}.iconcaptcha-widget.iconcaptcha-theme-light.iconcaptcha-init:hover{background:#f1f1f1}.iconcaptcha-widget.iconcaptcha-theme-light.iconcaptcha-init .iconcaptcha-modal__body-title{color:#464646}.iconcaptcha-widget.iconcaptcha-theme-light .iconcaptcha-modal__header span{color:#1d1d1d}.iconcaptcha-widget.iconcaptcha-theme-light .iconcaptcha-modal__body-info a{color:#afafaf}.iconcaptcha-widget.iconcaptcha-theme-light.iconcaptcha-success .iconcaptcha-modal__body-checkmark svg{stroke:#5bd25b}.iconcaptcha-widget.iconcaptcha-theme-light.iconcaptcha-success .iconcaptcha-modal__body-title{color:#5bd25b}.iconcaptcha-widget.iconcaptcha-theme-light.iconcaptcha-error .iconcaptcha-modal__body-title{color:#ef5858}.iconcaptcha-widget.iconcaptcha-theme-dark.iconcaptcha-init:hover{background:#454545}.iconcaptcha-widget.iconcaptcha-theme-dark.iconcaptcha-init .iconcaptcha-modal__body-title{color:#dadada}.iconcaptcha-widget.iconcaptcha-theme-dark .iconcaptcha-modal__header span{color:#dadada}.iconcaptcha-widget.iconcaptcha-theme-dark .iconcaptcha-modal__body-info a{color:#b1b1b1}.iconcaptcha-widget.iconcaptcha-theme-dark.iconcaptcha-success .iconcaptcha-modal__body-checkmark svg{stroke:#93d293}.iconcaptcha-widget.iconcaptcha-theme-dark.iconcaptcha-success .iconcaptcha-modal__body-title{color:#93d293}.iconcaptcha-widget.iconcaptcha-theme-dark.iconcaptcha-error .iconcaptcha-modal__body-title{color:#ef5858}.iconcaptcha-widget.iconcaptcha-success,.iconcaptcha-widget.iconcaptcha-error{cursor:default}.iconcaptcha-widget *{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased}.iconcaptcha-widget *::-moz-selection{background:none !important}.iconcaptcha-widget *::selection{background:none !important}.iconcaptcha-widget *::-moz-selection{background:none !important}@-webkit-keyframes captcha-breathing{0%,100%{-webkit-transform:scale(1) translateZ(0);transform:scale(1) translateZ(0);border-color:#52b3d9}25%{-webkit-transform:scale(0.8) translateZ(0);transform:scale(0.8) translateZ(0);border-color:#41a2c7}50%{-webkit-transform:scale(1) translateZ(0);transform:scale(1) translateZ(0);border-color:#52b3d9}75%{-webkit-transform:scale(0.8) translateZ(0);transform:scale(0.8) translateZ(0);border-color:#41a2c7}}@keyframes captcha-breathing{0%,100%{-webkit-transform:scale(1) translateZ(0);transform:scale(1) translateZ(0);border-color:#52b3d9}25%{-webkit-transform:scale(0.8) translateZ(0);transform:scale(0.8) translateZ(0);border-color:#41a2c7}50%{-webkit-transform:scale(1) translateZ(0);transform:scale(1) translateZ(0);border-color:#52b3d9}75%{-webkit-transform:scale(0.8) translateZ(0);transform:scale(0.8) translateZ(0);border-color:#41a2c7}}
\ No newline at end of file
diff --git a/assets/client/js/iconcaptcha.min.js b/assets/client/js/iconcaptcha.min.js
index ab17013..71dd07c 100644
--- a/assets/client/js/iconcaptcha.min.js
+++ b/assets/client/js/iconcaptcha.min.js
@@ -1,2 +1,2 @@
-/*! IconCaptcha v4.0.1 | (c) 2023, Fabian Wennink (fabianwennink.nl) | fabianwennink.nl/projects/IconCaptcha-Widget/license */
-"use strict";function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var IconCaptchaPolyfills=function(){var e={extend:function(e){e=e||{};for(var t=1;t