@tostudy-ai/mcp-setup 1.0.3 → 1.2.0

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.
@@ -0,0 +1,96 @@
1
+ /**
2
+ * Polished HTML callback page served after successful OAuth.
3
+ * Dark theme, animated checkmark, auto-close after 3 seconds.
4
+ */
5
+ export function getCallbackPageHtml() {
6
+ return `<!DOCTYPE html>
7
+ <html lang="pt-BR">
8
+ <head>
9
+ <meta charset="utf-8">
10
+ <meta name="viewport" content="width=device-width, initial-scale=1">
11
+ <title>ToStudy — Autenticado</title>
12
+ <style>
13
+ * { margin: 0; padding: 0; box-sizing: border-box; }
14
+ body {
15
+ background: #0a0a0a;
16
+ color: #fafafa;
17
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
18
+ display: flex;
19
+ align-items: center;
20
+ justify-content: center;
21
+ min-height: 100vh;
22
+ }
23
+ .container {
24
+ text-align: center;
25
+ padding: 2rem;
26
+ }
27
+ .checkmark-circle {
28
+ width: 80px;
29
+ height: 80px;
30
+ border-radius: 50%;
31
+ border: 3px solid #22d3ee;
32
+ display: flex;
33
+ align-items: center;
34
+ justify-content: center;
35
+ margin: 0 auto 1.5rem;
36
+ animation: scaleIn 0.4s ease-out;
37
+ }
38
+ .checkmark {
39
+ width: 40px;
40
+ height: 40px;
41
+ stroke: #22d3ee;
42
+ stroke-width: 3;
43
+ fill: none;
44
+ stroke-linecap: round;
45
+ stroke-linejoin: round;
46
+ stroke-dasharray: 50;
47
+ stroke-dashoffset: 50;
48
+ animation: draw 0.5s ease-out 0.3s forwards;
49
+ }
50
+ h1 {
51
+ font-size: 1.5rem;
52
+ font-weight: 600;
53
+ margin-bottom: 0.5rem;
54
+ }
55
+ .subtitle {
56
+ color: #a1a1aa;
57
+ font-size: 0.95rem;
58
+ margin-bottom: 0.25rem;
59
+ }
60
+ .brand {
61
+ color: #22d3ee;
62
+ font-size: 0.85rem;
63
+ margin-top: 2rem;
64
+ letter-spacing: 0.05em;
65
+ }
66
+ @keyframes scaleIn {
67
+ from { transform: scale(0); opacity: 0; }
68
+ to { transform: scale(1); opacity: 1; }
69
+ }
70
+ @keyframes draw {
71
+ to { stroke-dashoffset: 0; }
72
+ }
73
+ </style>
74
+ </head>
75
+ <body>
76
+ <div class="container">
77
+ <div class="checkmark-circle">
78
+ <svg class="checkmark" viewBox="0 0 40 40">
79
+ <polyline points="12,20 18,26 28,14" />
80
+ </svg>
81
+ </div>
82
+ <h1>Autenticado com sucesso!</h1>
83
+ <p class="subtitle">Pode voltar ao terminal.</p>
84
+ <p class="subtitle" id="close-msg">Esta aba será fechada automaticamente.</p>
85
+ <p class="brand">ToStudy</p>
86
+ </div>
87
+ <script>
88
+ setTimeout(function() {
89
+ window.close();
90
+ document.getElementById('close-msg').textContent = 'Pode fechar esta aba manualmente.';
91
+ }, 3000);
92
+ </script>
93
+ </body>
94
+ </html>`;
95
+ }
96
+ //# sourceMappingURL=callback-page.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"callback-page.js","sourceRoot":"","sources":["../src/callback-page.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,mBAAmB;IACjC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAwFD,CAAC;AACT,CAAC"}