63 lines
1.4 KiB
Markdown
63 lines
1.4 KiB
Markdown
Nostr_Login_Lite
|
|
===========
|
|
|
|
## Floating Tab API
|
|
|
|
Configure persistent floating tab for login/logout:
|
|
|
|
```javascript
|
|
await NOSTR_LOGIN_LITE.init({
|
|
floatingTab: {
|
|
enabled: true,
|
|
hPosition: 0.95, // 0.0-1.0 or '95%' from left
|
|
vPosition: 0.5, // 0.0-1.0 or '50%' from top
|
|
appearance: {
|
|
style: 'pill', // 'pill', 'square', 'circle', 'minimal'
|
|
theme: 'auto', // 'auto', 'light', 'dark'
|
|
icon: '🔐',
|
|
text: 'Login'
|
|
},
|
|
behavior: {
|
|
hideWhenAuthenticated: false,
|
|
showUserInfo: true,
|
|
autoSlide: true
|
|
},
|
|
animation: {
|
|
slideDirection: 'auto' // 'auto', 'left', 'right', 'up', 'down'
|
|
}
|
|
}
|
|
});
|
|
```
|
|
|
|
Control methods:
|
|
```javascript
|
|
NOSTR_LOGIN_LITE.showFloatingTab();
|
|
NOSTR_LOGIN_LITE.hideFloatingTab();
|
|
NOSTR_LOGIN_LITE.updateFloatingTab(options);
|
|
NOSTR_LOGIN_LITE.destroyFloatingTab();
|
|
```
|
|
|
|
## Embedded Modal API
|
|
|
|
Embed login interface directly into page element:
|
|
|
|
```javascript
|
|
// Initialize library first
|
|
await NOSTR_LOGIN_LITE.init({
|
|
methods: {
|
|
extension: true,
|
|
local: true,
|
|
readonly: true
|
|
}
|
|
});
|
|
|
|
// Embed into container
|
|
const modal = NOSTR_LOGIN_LITE.embed('#login-container', {
|
|
title: 'Login',
|
|
showHeader: true,
|
|
seamless: false // true = no borders/shadows, blends into page
|
|
});
|
|
```
|
|
|
|
Container can be CSS selector or DOM element. Modal renders inline without backdrop overlay.
|