jwtbutler 1.9.3 → 1.9.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -1
- package/_js/_build/script.js +10 -3
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -67,6 +67,7 @@ add the public sitekey:
|
|
|
67
67
|
|
|
68
68
|
```js
|
|
69
69
|
const api = new jwtbutler({
|
|
70
|
+
/* ... */
|
|
70
71
|
captcha: {
|
|
71
72
|
provider: 'hcaptcha',
|
|
72
73
|
sitekey: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
|
|
@@ -78,7 +79,10 @@ if your auth server uses passkeys and you want to show \
|
|
|
78
79
|
the passkey button in the default login form, enable it:
|
|
79
80
|
|
|
80
81
|
```js
|
|
81
|
-
|
|
82
|
+
const api = new jwtbutler({
|
|
83
|
+
/* ... */
|
|
84
|
+
passkeys: true
|
|
85
|
+
});
|
|
82
86
|
```
|
|
83
87
|
|
|
84
88
|
### single sign on
|
package/_js/_build/script.js
CHANGED
|
@@ -416,10 +416,17 @@ class jwtbutler {
|
|
|
416
416
|
}
|
|
417
417
|
let dom = new DOMParser().parseFromString(this.config.login_form, 'text/html').body.childNodes[0];
|
|
418
418
|
this.config.login_form_class = dom.getAttribute('class').split(' ')[0];
|
|
419
|
+
let submit = dom.querySelector('input[type="submit"]');
|
|
420
|
+
let submitItem = submit !== null ? submit.closest('.' + this.config.login_form_class + '__item') || submit.closest('li') || submit.parentElement : null;
|
|
421
|
+
let itemTag = submitItem !== null && submitItem.tagName.toLowerCase() === 'li' ? 'li' : 'div';
|
|
419
422
|
if (this.captchaEnabled() && dom.querySelector('.' + this.config.login_form_class + '__captcha') === null) {
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
+
if (submitItem !== null) {
|
|
424
|
+
submitItem.insertAdjacentHTML('beforebegin', '<' + itemTag + ' class="' + this.config.login_form_class + '__item"><div class="' + this.config.login_form_class + '__captcha"></div></' + itemTag + '>');
|
|
425
|
+
}
|
|
426
|
+
}
|
|
427
|
+
if (this.passkeyEnabled() && dom.querySelector('.' + this.config.login_form_class + '__passkey') === null) {
|
|
428
|
+
if (submitItem !== null) {
|
|
429
|
+
submitItem.insertAdjacentHTML('afterend', '<' + itemTag + ' class="' + this.config.login_form_class + '__item"><button class="' + this.config.login_form_class + '__passkey" type="button">Mit Passkey anmelden</button></' + itemTag + '>');
|
|
423
430
|
}
|
|
424
431
|
}
|
|
425
432
|
_helpers.default.remove(document.querySelector('.' + this.config.login_form_class));
|