ncantu fe7f49b6cd Update API anchorage, services, and website skeleton
**Motivations:**
- Synchronisation des modifications sur l'API anchorage, les services et le website skeleton
- Ajout de scripts de monitoring et de diagnostic pour l'API anchorage
- Documentation des problèmes de mutex et de provisioning UTXO

**Root causes:**
- N/A (commit de synchronisation)

**Correctifs:**
- N/A (commit de synchronisation)

**Evolutions:**
- Ajout de scripts de monitoring et de diagnostic pour l'API anchorage
- Amélioration de la gestion des mutex et des UTXOs
- Mise à jour de la documentation

**Pages affectées:**
- api-anchorage/src/bitcoin-rpc.js
- api-anchorage/src/routes/anchor.js
- api-anchorage/src/routes/health.js
- api-anchorage/src/server.js
- api-anchorage/README-MONITORING.md
- api-anchorage/cleanup-stale-locks.mjs
- api-anchorage/diagnose.mjs
- api-anchorage/unlock-utxos.mjs
- service-login-verify/src/persistentNonceCache.ts
- signet-dashboard/src/server.js
- signet-dashboard/public/*
- userwallet/src/hooks/useChannel.ts
- userwallet/src/services/relayNotificationService.ts
- userwallet/src/utils/defaultContract.ts
- website-skeleton/src/*
- docs/DOMAINS_AND_PORTS.md
- docs/INTERFACES.md
- features/*
- fixKnowledge/*
2026-01-28 15:11:59 +01:00

163 lines
3.9 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Website skeleton UserWallet iframe</title>
<style>
* {
box-sizing: border-box;
}
body {
font-family: system-ui, -apple-system, sans-serif;
max-width: 900px;
margin: 0 auto;
padding: 1rem;
line-height: 1.5;
}
h1 {
font-size: 1.5rem;
margin-bottom: 1rem;
}
#status {
padding: 0.75rem 1rem;
margin: 1rem 0;
border-radius: 6px;
background: #f0f0f0;
border: 1px solid #ddd;
}
#status.accepted {
background: #d4edda;
border-color: #c3e6cb;
color: #155724;
}
#status.rejected {
background: #f8d7da;
border-color: #f5c6cb;
color: #721c24;
}
#status.pending {
background: #fff3cd;
border-color: #ffeaa7;
color: #856404;
}
.button-group {
margin: 1rem 0;
display: flex;
flex-wrap: wrap;
gap: 0.5rem;
}
button {
padding: 0.625rem 1.25rem;
font-size: 1rem;
border: 1px solid #ccc;
border-radius: 6px;
background: #fff;
cursor: pointer;
transition: all 0.2s;
min-height: 44px;
}
button:hover {
background: #f5f5f5;
border-color: #999;
}
button:active {
background: #e0e0e0;
}
button.primary {
background: #007bff;
color: white;
border-color: #007bff;
}
button.primary:hover {
background: #0056b3;
border-color: #0056b3;
}
button.danger {
background: #dc3545;
color: white;
border-color: #dc3545;
}
button.danger:hover {
background: #c82333;
border-color: #c82333;
}
#iframe-container {
margin: 1rem 0;
min-height: 400px;
border: 1px solid #ccc;
border-radius: 6px;
overflow: hidden;
background: #f9f9f9;
}
#iframe-container iframe {
width: 100%;
height: 600px;
border: 0;
display: block;
}
#connected-section {
padding: 1.5rem;
background: #f9f9f9;
border: 1px solid #ddd;
border-radius: 6px;
margin: 1rem 0;
}
#user-info {
margin: 1rem 0;
padding: 1rem;
background: white;
border-radius: 4px;
border: 1px solid #ddd;
}
@media (max-width: 768px) {
body {
padding: 0.75rem;
}
h1 {
font-size: 1.25rem;
}
#iframe-container iframe {
height: 500px;
}
button {
width: 100%;
margin-bottom: 0.5rem;
}
.button-group {
flex-direction: column;
}
}
@media (max-width: 480px) {
#iframe-container iframe {
height: 400px;
}
}
</style>
</head>
<body>
<h1>Website skeleton intégration iframe UserWallet</h1>
<p id="status">En attente du login depuis l'iframe.</p>
<div id="login-section">
<div class="button-group">
<button type="button" id="btn-login" class="primary">Se connecter</button>
<button type="button" id="btn-auth">Demander auth (auth-request)</button>
</div>
<div id="iframe-container">
<iframe id="userwallet" title="UserWallet"></iframe>
</div>
</div>
<div id="connected-section" style="display: none;">
<h2>Vous êtes connecté</h2>
<div id="user-info"></div>
<div class="button-group">
<button type="button" id="btn-logout" class="danger">Se déconnecter</button>
</div>
</div>
<script type="module" src="/src/main.ts"></script>
</body>
</html>