baileys-idn 1.0.11 → 1.0.12
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/lib/Utils/dashboard.d.ts.map +1 -1
- package/lib/Utils/dashboard.js +216 -128
- package/lib/Utils/dashboard.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../../src/Utils/dashboard.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,YAAY;IACzB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,aAAa;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC5B;AAED,MAAM,WAAW,gBAAgB;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,YAAY,CAAA;IACpB,OAAO,CAAC,EAAE,aAAa,CAAA;CAC1B;AAED,qBAAa,SAAS;IAClB,OAAO,CAAC,GAAG,CAAY;IACvB,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,EAAE,CAA0B;IACpC,OAAO,CAAC,IAAI,CAAQ;IACpB,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,MAAM,CAAiD;IAC/D,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,aAAa,CAAY;IACjC,OAAO,CAAC,WAAW,CAAY;gBAEnB,OAAO,GAAE,gBAAqB;IAoB1C,OAAO,CAAC,WAAW;IAuBnB,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,gBAAgB;IAuBjB,YAAY,CAAC,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,YAAY;IAKxD,iBAAiB,CAAC,IAAI,EAAE,MAAM;IAS9B,WAAW,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;IAMzD,gBAAgB;IAKhB,OAAO,CAAC,OAAO,EAAE,MAAM;IAKvB,KAAK;IAMZ,OAAO,CAAC,UAAU;
|
|
1
|
+
{"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../../src/Utils/dashboard.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,YAAY;IACzB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,aAAa;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC5B;AAED,MAAM,WAAW,gBAAgB;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,YAAY,CAAA;IACpB,OAAO,CAAC,EAAE,aAAa,CAAA;CAC1B;AAED,qBAAa,SAAS;IAClB,OAAO,CAAC,GAAG,CAAY;IACvB,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,EAAE,CAA0B;IACpC,OAAO,CAAC,IAAI,CAAQ;IACpB,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,MAAM,CAAiD;IAC/D,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,aAAa,CAAY;IACjC,OAAO,CAAC,WAAW,CAAY;gBAEnB,OAAO,GAAE,gBAAqB;IAoB1C,OAAO,CAAC,WAAW;IAuBnB,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,gBAAgB;IAuBjB,YAAY,CAAC,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,YAAY;IAKxD,iBAAiB,CAAC,IAAI,EAAE,MAAM;IAS9B,WAAW,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;IAMzD,gBAAgB;IAKhB,OAAO,CAAC,OAAO,EAAE,MAAM;IAKvB,KAAK;IAMZ,OAAO,CAAC,UAAU;CAufrB;AAED,eAAO,MAAM,eAAe,GAAI,UAAU,gBAAgB,cAA2B,CAAA"}
|
package/lib/Utils/dashboard.js
CHANGED
|
@@ -17,8 +17,8 @@ export class Dashboard {
|
|
|
17
17
|
this.port = options.port || 3000;
|
|
18
18
|
this.title = options.title || 'Shiina-MD Control Center';
|
|
19
19
|
this.theme = {
|
|
20
|
-
accentColor: options.theme?.accentColor || '#
|
|
21
|
-
opacity: options.theme?.opacity !== undefined ? options.theme.opacity : 0.
|
|
20
|
+
accentColor: options.theme?.accentColor || '#007aff',
|
|
21
|
+
opacity: options.theme?.opacity !== undefined ? options.theme.opacity : 0.75,
|
|
22
22
|
bgImage: options.theme?.bgImage || ''
|
|
23
23
|
};
|
|
24
24
|
this.widgets = {
|
|
@@ -87,7 +87,7 @@ export class Dashboard {
|
|
|
87
87
|
updatePairingCode(code) {
|
|
88
88
|
this.pairingCode = code;
|
|
89
89
|
this.io.emit('pairing-update', code);
|
|
90
|
-
const formattedLog =
|
|
90
|
+
const formattedLog = `PAIRING CODE: ${code}`;
|
|
91
91
|
log.info(formattedLog);
|
|
92
92
|
this.emitLog(formattedLog);
|
|
93
93
|
}
|
|
@@ -112,9 +112,12 @@ export class Dashboard {
|
|
|
112
112
|
});
|
|
113
113
|
}
|
|
114
114
|
renderHTML() {
|
|
115
|
-
const
|
|
116
|
-
|
|
117
|
-
|
|
115
|
+
const opacity = this.theme?.opacity ?? 0.75;
|
|
116
|
+
const accentColor = this.theme?.accentColor ?? '#007aff';
|
|
117
|
+
const bgImage = this.theme?.bgImage ?? '';
|
|
118
|
+
const bgStyle = bgImage
|
|
119
|
+
? `background: url('${bgImage}') no-repeat center center fixed; background-size: cover;`
|
|
120
|
+
: `background: linear-gradient(135deg, #0a0a0c 0%, #1c1c24 100%);`;
|
|
118
121
|
return `<!DOCTYPE html>
|
|
119
122
|
<html lang="id">
|
|
120
123
|
<head>
|
|
@@ -124,74 +127,74 @@ export class Dashboard {
|
|
|
124
127
|
<script src="/socket.io/socket.io.js"></script>
|
|
125
128
|
<style>
|
|
126
129
|
* { margin: 0; padding: 0; box-sizing: border-box; }
|
|
127
|
-
body { ${bgStyle} color: #
|
|
128
|
-
.container { width: 100%; max-width:
|
|
130
|
+
body { ${bgStyle} color: #f5f5f7; font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Segoe UI", Roboto, sans-serif; padding: 20px; display: flex; flex-direction: column; align-items: center; min-height: 100vh; }
|
|
131
|
+
.container { width: 100%; max-width: 850px; display: flex; flex-direction: column; gap: 14px; }
|
|
129
132
|
|
|
130
|
-
.header { display: flex; justify-content: space-between; align-items: center;
|
|
131
|
-
.header h1 { font-size: 1.
|
|
132
|
-
.header h1::before { content: '
|
|
133
|
+
.header { display: flex; justify-content: space-between; align-items: center; padding: 14px 18px; background: rgba(255, 255, 255, ${opacity * 0.1}); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border: 1px solid rgba(255, 255, 255, 0.12); border-radius: 14px; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.3); width: 100%; }
|
|
134
|
+
.header h1 { font-size: 1.1rem; font-weight: 600; color: #ffffff; display: flex; align-items: center; gap: 8px; letter-spacing: -0.3px; }
|
|
135
|
+
.header h1::before { content: '◈'; color: ${accentColor}; font-size: 0.9rem; }
|
|
133
136
|
.header-right { display: flex; align-items: center; gap: 10px; }
|
|
134
137
|
|
|
135
|
-
.btn-settings { background:
|
|
136
|
-
.btn-settings:hover { background:
|
|
138
|
+
.btn-settings { background: rgba(255, 255, 255, 0.1); color: #ffffff; border: 1px solid rgba(255, 255, 255, 0.15); padding: 6px 14px; border-radius: 10px; font-size: 0.72rem; font-weight: 600; cursor: pointer; transition: 0.2s; backdrop-filter: blur(10px); }
|
|
139
|
+
.btn-settings:hover { background: rgba(255, 255, 255, 0.2); }
|
|
137
140
|
|
|
138
|
-
.badge { padding: 4px 10px; border-radius:
|
|
139
|
-
.badge.online { background: rgba(
|
|
140
|
-
.badge.offline { background: rgba(
|
|
141
|
-
.badge.connecting { background: rgba(
|
|
141
|
+
.badge { padding: 4px 10px; border-radius: 20px; font-size: 0.65rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; }
|
|
142
|
+
.badge.online { background: rgba(48, 209, 88, 0.2); color: #30d158; border: 1px solid rgba(48, 209, 88, 0.4); }
|
|
143
|
+
.badge.offline { background: rgba(255, 69, 58, 0.2); color: #ff453a; border: 1px solid rgba(255, 69, 58, 0.4); }
|
|
144
|
+
.badge.connecting { background: rgba(255, 159, 10, 0.2); color: #ff9f0a; border: 1px solid rgba(255, 159, 10, 0.4); }
|
|
142
145
|
|
|
143
146
|
#widget-metrics-container { order: 1; }
|
|
144
|
-
#widget-
|
|
145
|
-
#widget-
|
|
146
|
-
|
|
147
|
-
.grid { display: ${this.widgets.showMetrics ? 'grid' : 'none'}; grid-template-columns: repeat(auto-fit, minmax(
|
|
148
|
-
.card { background: rgba(
|
|
149
|
-
.card::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; }
|
|
150
|
-
.card.cyan::before { background: #
|
|
151
|
-
.card.blue::before { background: ${
|
|
152
|
-
.card.purple::before { background: #
|
|
153
|
-
.card.orange::before { background: #
|
|
154
|
-
.card.green::before { background: #
|
|
155
|
-
.card .title { font-size: 0.
|
|
156
|
-
.card .value { font-size:
|
|
157
|
-
.card .subtext { font-size: 0.
|
|
158
|
-
.pairing-highlight { color: #
|
|
159
|
-
|
|
160
|
-
.terminal-card { display: ${this.widgets.showTerminal ? 'block' : 'none'}; background: rgba(
|
|
161
|
-
.terminal-header { background: rgba(
|
|
147
|
+
#widget-player-container { order: 2; }
|
|
148
|
+
#widget-terminal-container { order: 3; }
|
|
149
|
+
|
|
150
|
+
.grid { display: ${this.widgets.showMetrics ? 'grid' : 'none'}; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 12px; width: 100%; }
|
|
151
|
+
.card { background: rgba(255, 255, 255, ${opacity * 0.07}); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 14px; padding: 14px; position: relative; overflow: hidden; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.25); }
|
|
152
|
+
.card::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: rgba(255,255,255,0.4); }
|
|
153
|
+
.card.cyan::before { background: #64d2ff; }
|
|
154
|
+
.card.blue::before { background: ${accentColor}; }
|
|
155
|
+
.card.purple::before { background: #bf5af2; }
|
|
156
|
+
.card.orange::before { background: #ff9f0a; }
|
|
157
|
+
.card.green::before { background: #30d158; }
|
|
158
|
+
.card .title { font-size: 0.6rem; text-transform: uppercase; font-weight: 700; color: rgba(255,255,255,0.6); letter-spacing: 0.5px; margin-bottom: 4px; }
|
|
159
|
+
.card .value { font-size: 0.95rem; font-weight: 700; color: #ffffff; letter-spacing: -0.2px; }
|
|
160
|
+
.card .subtext { font-size: 0.65rem; color: rgba(255,255,255,0.45); margin-top: 2px; }
|
|
161
|
+
.pairing-highlight { color: #64d2ff !important; font-family: monospace; font-size: 1rem !important; }
|
|
162
|
+
|
|
163
|
+
.terminal-card { display: ${this.widgets.showTerminal ? 'block' : 'none'}; background: rgba(20, 20, 25, ${opacity}); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border: 1px solid rgba(255, 255, 255, 0.12); border-radius: 14px; overflow: hidden; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.35); width: 100%; }
|
|
164
|
+
.terminal-header { background: rgba(0, 0, 0, 0.4); padding: 8px 14px; font-size: 0.68rem; font-weight: 600; color: rgba(255,255,255,0.6); border-bottom: 1px solid rgba(255, 255, 255, 0.08); display: flex; justify-content: space-between; align-items: center; }
|
|
162
165
|
.dots { display: flex; gap: 5px; }
|
|
163
|
-
.dot { width:
|
|
164
|
-
.dot.red { background: #
|
|
165
|
-
.dot.yellow { background: #
|
|
166
|
-
.dot.green { background: #
|
|
166
|
+
.dot { width: 8px; height: 8px; border-radius: 50%; }
|
|
167
|
+
.dot.red { background: #ff453a; }
|
|
168
|
+
.dot.yellow { background: #ff9f0a; }
|
|
169
|
+
.dot.green { background: #30d158; }
|
|
167
170
|
|
|
168
171
|
#logs {
|
|
169
|
-
padding:
|
|
170
|
-
height:
|
|
172
|
+
padding: 10px 14px;
|
|
173
|
+
height: 260px;
|
|
171
174
|
overflow-y: auto;
|
|
172
|
-
background:
|
|
173
|
-
color: #
|
|
174
|
-
font-family: '
|
|
175
|
-
font-size: 0.
|
|
176
|
-
line-height: 1.
|
|
175
|
+
background: transparent;
|
|
176
|
+
color: #d1d1d6;
|
|
177
|
+
font-family: 'SF Mono', SFMono-Regular, Consolas, monospace;
|
|
178
|
+
font-size: 0.74rem;
|
|
179
|
+
line-height: 1.2;
|
|
177
180
|
margin: 0;
|
|
178
181
|
white-space: pre-wrap;
|
|
179
182
|
word-break: break-all;
|
|
180
183
|
}
|
|
181
184
|
|
|
182
|
-
/* Minimalist Music Player (Tanpa Thumbnail, Tanpa Seekbar) */
|
|
183
185
|
.player-card {
|
|
184
186
|
display: ${this.widgets.showMusicPlayer ? 'flex' : 'none'};
|
|
185
|
-
background: rgba(
|
|
186
|
-
backdrop-filter: blur(
|
|
187
|
-
|
|
188
|
-
border
|
|
189
|
-
|
|
187
|
+
background: rgba(255, 255, 255, ${opacity * 0.07});
|
|
188
|
+
backdrop-filter: blur(20px);
|
|
189
|
+
-webkit-backdrop-filter: blur(20px);
|
|
190
|
+
border: 1px solid rgba(255, 255, 255, 0.1);
|
|
191
|
+
border-radius: 14px;
|
|
192
|
+
padding: 14px 18px;
|
|
190
193
|
flex-direction: column;
|
|
191
194
|
align-items: center;
|
|
192
|
-
gap:
|
|
195
|
+
gap: 10px;
|
|
193
196
|
width: 100%;
|
|
194
|
-
|
|
197
|
+
box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.25);
|
|
195
198
|
}
|
|
196
199
|
|
|
197
200
|
.player-info {
|
|
@@ -204,9 +207,9 @@ export class Dashboard {
|
|
|
204
207
|
}
|
|
205
208
|
|
|
206
209
|
.player-title {
|
|
207
|
-
font-size: 0.
|
|
210
|
+
font-size: 0.82rem;
|
|
208
211
|
font-weight: 700;
|
|
209
|
-
color: #
|
|
212
|
+
color: #ffffff;
|
|
210
213
|
white-space: nowrap;
|
|
211
214
|
overflow: hidden;
|
|
212
215
|
text-overflow: ellipsis;
|
|
@@ -214,42 +217,49 @@ export class Dashboard {
|
|
|
214
217
|
}
|
|
215
218
|
|
|
216
219
|
.player-artist {
|
|
217
|
-
font-size: 0.
|
|
218
|
-
color:
|
|
220
|
+
font-size: 0.68rem;
|
|
221
|
+
color: rgba(255,255,255,0.5);
|
|
219
222
|
}
|
|
220
223
|
|
|
221
224
|
.play-btn-circle {
|
|
222
225
|
background: #ffffff;
|
|
223
226
|
color: #000000;
|
|
224
227
|
border: none;
|
|
225
|
-
width:
|
|
226
|
-
height:
|
|
228
|
+
width: 38px;
|
|
229
|
+
height: 38px;
|
|
227
230
|
border-radius: 50%;
|
|
228
|
-
font-size:
|
|
231
|
+
font-size: 0.85rem;
|
|
229
232
|
cursor: pointer;
|
|
230
233
|
display: flex;
|
|
231
234
|
align-items: center;
|
|
232
235
|
justify-content: center;
|
|
233
236
|
transition: transform 0.2s;
|
|
234
|
-
box-shadow: 0 4px
|
|
237
|
+
box-shadow: 0 4px 12px rgba(0,0,0,0.3);
|
|
235
238
|
}
|
|
236
239
|
|
|
237
240
|
.play-btn-circle:hover {
|
|
238
241
|
transform: scale(1.08);
|
|
239
242
|
}
|
|
240
243
|
|
|
241
|
-
|
|
242
|
-
.modal-
|
|
243
|
-
.modal-
|
|
244
|
-
.modal-header {
|
|
245
|
-
.modal-
|
|
246
|
-
|
|
244
|
+
.modal-overlay { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.6); backdrop-filter: blur(15px); -webkit-backdrop-filter: blur(15px); z-index: 1000; align-items: center; justify-content: center; padding: 16px; }
|
|
245
|
+
.modal-content { background: rgba(30, 30, 35, 0.85); backdrop-filter: blur(30px); border: 1px solid rgba(255, 255, 255, 0.15); border-radius: 18px; width: 100%; max-width: 420px; padding: 20px; display: flex; flex-direction: column; gap: 14px; box-shadow: 0 20px 40px rgba(0,0,0,0.5); max-height: 90vh; overflow-y: auto; }
|
|
246
|
+
.modal-header { display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid rgba(255,255,255,0.1); padding-bottom: 10px; }
|
|
247
|
+
.modal-header h2 { font-size: 0.9rem; color: #ffffff; font-family: monospace; letter-spacing: -0.2px; }
|
|
248
|
+
.modal-close { background: transparent; border: none; color: rgba(255,255,255,0.5); font-size: 1rem; cursor: pointer; }
|
|
249
|
+
|
|
250
|
+
.tab-nav { display: flex; gap: 6px; border-bottom: 1px solid rgba(255,255,255,0.1); padding-bottom: 8px; }
|
|
251
|
+
.tab-btn { background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1); color: rgba(255,255,255,0.5); padding: 6px 10px; border-radius: 8px; font-size: 0.7rem; font-weight: 700; cursor: pointer; font-family: monospace; flex: 1; text-align: center; }
|
|
252
|
+
.tab-btn.active { background: rgba(255,255,255,0.15); color: #ffffff; border-color: rgba(255,255,255,0.3); }
|
|
253
|
+
|
|
254
|
+
.tab-pane { display: none; flex-direction: column; gap: 12px; }
|
|
255
|
+
.tab-pane.active { display: flex; }
|
|
256
|
+
|
|
247
257
|
.form-group { display: flex; flex-direction: column; gap: 6px; }
|
|
248
|
-
.form-group label { font-size: 0.
|
|
249
|
-
.form-control { background:
|
|
250
|
-
.checkbox-group { display: flex; align-items: center; gap: 8px; font-size: 0.
|
|
251
|
-
.btn-save { background: #
|
|
252
|
-
.btn-save:hover { background: #
|
|
258
|
+
.form-group label { font-size: 0.72rem; font-weight: 600; color: rgba(255,255,255,0.6); }
|
|
259
|
+
.form-control { background: rgba(0, 0, 0, 0.4); border: 1px solid rgba(255, 255, 255, 0.12); color: #ffffff; padding: 8px 10px; border-radius: 8px; font-size: 0.78rem; outline: none; }
|
|
260
|
+
.checkbox-group { display: flex; align-items: center; gap: 8px; font-size: 0.78rem; color: rgba(255,255,255,0.8); cursor: pointer; }
|
|
261
|
+
.btn-save { background: #0a84ff; color: #fff; border: none; padding: 10px; border-radius: 10px; font-weight: 600; cursor: pointer; margin-top: 6px; transition: 0.2s; font-family: monospace; }
|
|
262
|
+
.btn-save:hover { background: #0071e3; }
|
|
253
263
|
</style>
|
|
254
264
|
</head>
|
|
255
265
|
<body>
|
|
@@ -257,18 +267,17 @@ export class Dashboard {
|
|
|
257
267
|
<div class="header">
|
|
258
268
|
<h1 id="dashboard-title">${this.title}</h1>
|
|
259
269
|
<div class="header-right">
|
|
260
|
-
<button class="btn-settings" onclick="openModal()"
|
|
270
|
+
<button class="btn-settings" onclick="openModal()">[+] SETTINGS</button>
|
|
261
271
|
<span id="status-badge" class="badge ${this.status.toLowerCase()}">${this.status}</span>
|
|
262
272
|
</div>
|
|
263
273
|
</div>
|
|
264
274
|
|
|
265
|
-
<!-- Section Status Boxes & Pairing Code -->
|
|
266
275
|
<div id="widget-metrics-container">
|
|
267
276
|
<div class="grid" id="metrics-grid">
|
|
268
277
|
<div class="card cyan">
|
|
269
278
|
<div class="title">WhatsApp Pairing Code</div>
|
|
270
|
-
<div class="value pairing-highlight" id="pairing-code"
|
|
271
|
-
<div class="subtext">
|
|
279
|
+
<div class="value pairing-highlight" id="pairing-code">------</div>
|
|
280
|
+
<div class="subtext">Device auth code</div>
|
|
272
281
|
</div>
|
|
273
282
|
<div class="card blue">
|
|
274
283
|
<div class="title">Operating System</div>
|
|
@@ -283,29 +292,27 @@ export class Dashboard {
|
|
|
283
292
|
<div class="card orange">
|
|
284
293
|
<div class="title">Total Commands</div>
|
|
285
294
|
<div class="value" id="total-commands">0</div>
|
|
286
|
-
<div class="subtext">Executed
|
|
295
|
+
<div class="subtext">Executed</div>
|
|
287
296
|
</div>
|
|
288
297
|
<div class="card green">
|
|
289
298
|
<div class="title">Total Groups</div>
|
|
290
299
|
<div class="value" id="total-groups">0</div>
|
|
291
|
-
<div class="subtext">Active
|
|
300
|
+
<div class="subtext">Active chats</div>
|
|
292
301
|
</div>
|
|
293
302
|
</div>
|
|
294
303
|
</div>
|
|
295
304
|
|
|
296
|
-
<!-- Section Minimalist Music Player -->
|
|
297
305
|
<div id="widget-player-container">
|
|
298
306
|
<div class="player-card" id="player-card">
|
|
299
307
|
<div class="player-info">
|
|
300
|
-
<div class="player-title" id="track-title">
|
|
301
|
-
<div class="player-artist" id="track-channel">
|
|
308
|
+
<div class="player-title" id="track-title">[ NO AUDIO PLAYING ]</div>
|
|
309
|
+
<div class="player-artist" id="track-channel">Use [SETTINGS] to search & play song</div>
|
|
302
310
|
</div>
|
|
303
311
|
<button class="play-btn-circle" id="play-btn" onclick="togglePlay()">▶</button>
|
|
304
312
|
<audio id="audio-player" preload="none"></audio>
|
|
305
313
|
</div>
|
|
306
314
|
</div>
|
|
307
315
|
|
|
308
|
-
<!-- Section Terminal Log -->
|
|
309
316
|
<div id="widget-terminal-container">
|
|
310
317
|
<div class="terminal-card" id="terminal-card">
|
|
311
318
|
<div class="terminal-header">
|
|
@@ -316,50 +323,73 @@ export class Dashboard {
|
|
|
316
323
|
<div class="dot green"></div>
|
|
317
324
|
</div>
|
|
318
325
|
</div>
|
|
319
|
-
<pre id="logs">[SYSTEM]
|
|
326
|
+
<pre id="logs">[SYSTEM] iOS Glass console initialized. Listening for events... </pre>
|
|
320
327
|
</div>
|
|
321
328
|
</div>
|
|
322
329
|
</div>
|
|
323
330
|
|
|
324
|
-
<!-- Modal Settings
|
|
331
|
+
<!-- Dual Tab Modal Settings -->
|
|
325
332
|
<div class="modal-overlay" id="settings-modal">
|
|
326
333
|
<div class="modal-content">
|
|
327
334
|
<div class="modal-header">
|
|
328
|
-
<h2
|
|
329
|
-
<button class="modal-close" onclick="closeModal()"
|
|
335
|
+
<h2>[+] IOS CONTROL PANEL</h2>
|
|
336
|
+
<button class="modal-close" onclick="closeModal()">[X]</button>
|
|
330
337
|
</div>
|
|
331
338
|
|
|
332
|
-
<div class="
|
|
333
|
-
<
|
|
334
|
-
<
|
|
335
|
-
</div>
|
|
336
|
-
|
|
337
|
-
<div class="form-group">
|
|
338
|
-
<label>Transparansi Widget (<span id="opacity-val">85</span>%)</label>
|
|
339
|
-
<input type="range" class="form-control" id="cfg-opacity" min="0.1" max="1" step="0.05" value="${this.theme.opacity}" oninput="updateOpacityLabel(this.value)">
|
|
340
|
-
</div>
|
|
341
|
-
|
|
342
|
-
<div class="form-group">
|
|
343
|
-
<label>URL Wallpaper Background</label>
|
|
344
|
-
<input type="text" class="form-control" id="cfg-bg" placeholder="https://..." value="${this.theme.bgImage}">
|
|
339
|
+
<div class="tab-nav">
|
|
340
|
+
<button class="tab-btn active" onclick="switchTab('tab-ui', this)">UI & BACKGROUND</button>
|
|
341
|
+
<button class="tab-btn" onclick="switchTab('tab-bot', this)">BOT SETTINGS</button>
|
|
345
342
|
</div>
|
|
346
343
|
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
<
|
|
350
|
-
<
|
|
351
|
-
<
|
|
352
|
-
</
|
|
344
|
+
<!-- Tab 1: UI & Background Settings -->
|
|
345
|
+
<div class="tab-pane active" id="tab-ui">
|
|
346
|
+
<div class="form-group">
|
|
347
|
+
<label>Search & Play YouTube Song</label>
|
|
348
|
+
<input type="text" class="form-control" id="cfg-song" placeholder="Type song title..." value="">
|
|
349
|
+
</div>
|
|
350
|
+
<div class="form-group">
|
|
351
|
+
<label>Glass Opacity (<span id="opacity-val">${Math.round(opacity * 100)}</span>%)</label>
|
|
352
|
+
<input type="range" class="form-control" id="cfg-opacity" min="0.1" max="1" step="0.05" value="${opacity}" oninput="updateOpacityLabel(this.value)">
|
|
353
|
+
</div>
|
|
354
|
+
<div class="form-group">
|
|
355
|
+
<label>Pilih File Background (Dari Perangkat)</label>
|
|
356
|
+
<input type="file" class="form-control" id="cfg-bg-file" accept="image/*" onchange="previewFileBg(event)">
|
|
357
|
+
</div>
|
|
358
|
+
<div class="form-group">
|
|
359
|
+
<label>Widgets Layout Order</label>
|
|
360
|
+
<select class="form-control" id="cfg-order">
|
|
361
|
+
<option value="default">Status -> Player -> Terminal</option>
|
|
362
|
+
<option value="terminal-first">Terminal -> Player -> Status</option>
|
|
363
|
+
</select>
|
|
364
|
+
</div>
|
|
365
|
+
<div class="form-group">
|
|
366
|
+
<label>Toggle Widgets Visibility</label>
|
|
367
|
+
<label class="checkbox-group"><input type="checkbox" id="cfg-w-metrics" ${this.widgets.showMetrics ? 'checked' : ''}> Show Metrics Box</label>
|
|
368
|
+
<label class="checkbox-group"><input type="checkbox" id="cfg-w-music" ${this.widgets.showMusicPlayer ? 'checked' : ''}> Show Music Player</label>
|
|
369
|
+
label class="checkbox-group"><input type="checkbox" id="cfg-w-terminal" ${this.widgets.showTerminal ? 'checked' : ''}> Show Terminal Log</label>
|
|
370
|
+
</div>
|
|
353
371
|
</div>
|
|
354
372
|
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
<
|
|
358
|
-
|
|
359
|
-
|
|
373
|
+
<!-- Tab 2: Bot Settings -->
|
|
374
|
+
<div class="tab-pane" id="tab-bot">
|
|
375
|
+
<div class="form-group">
|
|
376
|
+
<label>Nama Bot</label>
|
|
377
|
+
<input type="text" class="form-control" id="cfg-bot-name" placeholder="Shiina-MD" value="Shiina-MD">
|
|
378
|
+
</div>
|
|
379
|
+
<div class="form-group">
|
|
380
|
+
<label>URL Foto / Thumbnail Menu</label>
|
|
381
|
+
<input type="text" class="form-control" id="cfg-menu-thumb" placeholder="https://..." value="">
|
|
382
|
+
</div>
|
|
383
|
+
<div class="form-group">
|
|
384
|
+
<label>Bot Security & Features Toggles</label>
|
|
385
|
+
<label class="checkbox-group"><input type="checkbox" id="cfg-antilink" checked> Anti Link (Block group/web links)</label>
|
|
386
|
+
<label class="checkbox-group"><input type="checkbox" id="cfg-antibot" checked> Anti Bot (Prevent bot collisions)</label>
|
|
387
|
+
<label class="checkbox-group"><input type="checkbox" id="cfg-antimedia" checked> Anti Spammed Media</label>
|
|
388
|
+
<label class="checkbox-group"><input type="checkbox" id="cfg-autoread" checked> Auto-Read Incoming Messages</label>
|
|
389
|
+
</div>
|
|
360
390
|
</div>
|
|
361
391
|
|
|
362
|
-
<button class="btn-save" onclick="saveSettings()">
|
|
392
|
+
<button class="btn-save" onclick="saveSettings()">APPLY & SAVE CHANGES</button>
|
|
363
393
|
</div>
|
|
364
394
|
</div>
|
|
365
395
|
|
|
@@ -391,29 +421,32 @@ export class Dashboard {
|
|
|
391
421
|
});
|
|
392
422
|
|
|
393
423
|
function updateMetrics(data) {
|
|
394
|
-
|
|
424
|
+
const storedName = localStorage.getItem('shiina_bot_name') || data.title;
|
|
425
|
+
document.getElementById('dashboard-title').innerText = storedName;
|
|
395
426
|
document.getElementById('os-name').innerText = data.os;
|
|
396
427
|
document.getElementById('cpu-name').innerText = data.cpu;
|
|
397
428
|
document.getElementById('ram-text').innerText = data.ramUsed + ' MB / ' + data.ramTotal + ' MB';
|
|
398
429
|
document.getElementById('ram-percent').innerText = data.ramPercent + '% utilized';
|
|
399
430
|
document.getElementById('total-commands').innerText = data.commands;
|
|
400
431
|
document.getElementById('total-groups').innerText = data.groups;
|
|
401
|
-
|
|
432
|
+
if (data.pairingCode && data.pairingCode !== '-') {
|
|
433
|
+
document.getElementById('pairing-code').innerText = data.pairingCode;
|
|
434
|
+
}
|
|
402
435
|
|
|
403
436
|
const badge = document.getElementById('status-badge');
|
|
404
437
|
badge.innerText = data.status;
|
|
405
438
|
badge.className = 'badge ' + data.status.toLowerCase();
|
|
406
439
|
}
|
|
407
440
|
|
|
408
|
-
// Music Player Logic
|
|
409
441
|
const audio = document.getElementById('audio-player');
|
|
410
442
|
const playBtn = document.getElementById('play-btn');
|
|
411
443
|
const trackTitle = document.getElementById('track-title');
|
|
412
444
|
const trackChannel = document.getElementById('track-channel');
|
|
445
|
+
let uploadedBgBase64 = '';
|
|
413
446
|
|
|
414
447
|
async function fetchAndPlaySong(query) {
|
|
415
448
|
if (!query) return;
|
|
416
|
-
trackTitle.innerText = '
|
|
449
|
+
trackTitle.innerText = '[ LOADING AUDIO... ]';
|
|
417
450
|
try {
|
|
418
451
|
const res = await fetch('/api/play?q=' + encodeURIComponent(query));
|
|
419
452
|
const json = await res.json();
|
|
@@ -425,10 +458,10 @@ export class Dashboard {
|
|
|
425
458
|
audio.play();
|
|
426
459
|
playBtn.innerText = '❚❚';
|
|
427
460
|
} else {
|
|
428
|
-
trackTitle.innerText = '
|
|
461
|
+
trackTitle.innerText = '[ SONG NOT FOUND ]';
|
|
429
462
|
}
|
|
430
463
|
} catch (err) {
|
|
431
|
-
trackTitle.innerText = '
|
|
464
|
+
trackTitle.innerText = '[ API ERROR ]';
|
|
432
465
|
}
|
|
433
466
|
}
|
|
434
467
|
|
|
@@ -446,22 +479,56 @@ export class Dashboard {
|
|
|
446
479
|
}
|
|
447
480
|
}
|
|
448
481
|
|
|
449
|
-
// Script Customization & LocalStorage
|
|
450
482
|
function openModal() { document.getElementById('settings-modal').style.display = 'flex'; }
|
|
451
483
|
function closeModal() { document.getElementById('settings-modal').style.display = 'none'; }
|
|
452
484
|
function updateOpacityLabel(val) { document.getElementById('opacity-val').innerText = Math.round(val * 100); }
|
|
453
485
|
|
|
486
|
+
function switchTab(tabId, btn) {
|
|
487
|
+
document.querySelectorAll('.tab-pane').forEach(p => p.classList.remove('active'));
|
|
488
|
+
document.querySelectorAll('.tab-btn').forEach(b => b.classList.remove('active'));
|
|
489
|
+
document.getElementById(tabId).classList.add('active');
|
|
490
|
+
btn.classList.add('active');
|
|
491
|
+
}
|
|
492
|
+
|
|
493
|
+
function previewFileBg(event) {
|
|
494
|
+
const file = event.target.files[0];
|
|
495
|
+
if (file) {
|
|
496
|
+
const reader = new FileReader();
|
|
497
|
+
reader.onload = function(e) {
|
|
498
|
+
uploadedBgBase64 = e.target.result;
|
|
499
|
+
};
|
|
500
|
+
reader.readAsDataURL(file);
|
|
501
|
+
}
|
|
502
|
+
}
|
|
503
|
+
|
|
454
504
|
function saveSettings() {
|
|
455
505
|
const opacity = document.getElementById('cfg-opacity').value;
|
|
456
|
-
const bg = document.getElementById('cfg-bg').value;
|
|
457
506
|
const order = document.getElementById('cfg-order').value;
|
|
458
507
|
const showMetrics = document.getElementById('cfg-w-metrics').checked;
|
|
459
508
|
const showTerminal = document.getElementById('cfg-w-terminal').checked;
|
|
460
509
|
const showMusic = document.getElementById('cfg-w-music').checked;
|
|
461
510
|
const newSong = document.getElementById('cfg-song').value.trim();
|
|
462
|
-
|
|
463
|
-
const
|
|
511
|
+
|
|
512
|
+
const botName = document.getElementById('cfg-bot-name').value.trim();
|
|
513
|
+
const menuThumb = document.getElementById('cfg-menu-thumb').value.trim();
|
|
514
|
+
const antilink = document.getElementById('cfg-antilink').checked;
|
|
515
|
+
const antibot = document.getElementById('cfg-antibot').checked;
|
|
516
|
+
const antimedia = document.getElementById('cfg-antimedia').checked;
|
|
517
|
+
const autoread = document.getElementById('cfg-autoread').checked;
|
|
518
|
+
|
|
519
|
+
const bg = uploadedBgBase64 || (JSON.parse(localStorage.getItem('shiina_ui_config') || '{}').bg || '');
|
|
520
|
+
|
|
521
|
+
const config = {
|
|
522
|
+
opacity, bg, order, showMetrics, showTerminal, showMusic, newSong,
|
|
523
|
+
botName, menuThumb, antilink, antibot, antimedia, autoread
|
|
524
|
+
};
|
|
525
|
+
|
|
464
526
|
localStorage.setItem('shiina_ui_config', JSON.stringify(config));
|
|
527
|
+
if (botName) {
|
|
528
|
+
localStorage.setItem('shiina_bot_name', botName);
|
|
529
|
+
document.getElementById('dashboard-title').innerText = botName;
|
|
530
|
+
}
|
|
531
|
+
|
|
465
532
|
applyUI(config);
|
|
466
533
|
|
|
467
534
|
if (newSong) {
|
|
@@ -474,15 +541,21 @@ export class Dashboard {
|
|
|
474
541
|
function applyUI(cfg) {
|
|
475
542
|
if (!cfg) return;
|
|
476
543
|
|
|
477
|
-
document.querySelectorAll('.card, .header
|
|
478
|
-
el.style.background = 'rgba(
|
|
544
|
+
document.querySelectorAll('.card, .header').forEach(el => {
|
|
545
|
+
el.style.background = 'rgba(255, 255, 255, ' + (cfg.opacity * 0.07) + ')';
|
|
546
|
+
});
|
|
547
|
+
document.querySelectorAll('.player-card').forEach(el => {
|
|
548
|
+
el.style.background = 'rgba(255, 255, 255, ' + (cfg.opacity * 0.07) + ')';
|
|
549
|
+
});
|
|
550
|
+
document.querySelectorAll('.terminal-card').forEach(el => {
|
|
551
|
+
el.style.background = 'rgba(20, 20, 25, ' + cfg.opacity + ')';
|
|
479
552
|
});
|
|
480
553
|
|
|
481
554
|
if (cfg.bg) {
|
|
482
555
|
document.body.style.background = "url('" + cfg.bg + "') no-repeat center center fixed";
|
|
483
556
|
document.body.style.backgroundSize = "cover";
|
|
484
557
|
} else {
|
|
485
|
-
document.body.style.background = "#
|
|
558
|
+
document.body.style.background = "linear-gradient(135deg, #0a0a0c 0%, #1c1c24 100%)";
|
|
486
559
|
}
|
|
487
560
|
|
|
488
561
|
const cMetrics = document.getElementById('widget-metrics-container');
|
|
@@ -502,20 +575,35 @@ export class Dashboard {
|
|
|
502
575
|
document.getElementById('metrics-grid').style.display = cfg.showMetrics ? 'grid' : 'none';
|
|
503
576
|
document.getElementById('player-card').style.display = cfg.showMusic ? 'flex' : 'none';
|
|
504
577
|
document.getElementById('terminal-card').style.display = cfg.showTerminal ? 'block' : 'none';
|
|
578
|
+
|
|
579
|
+
if (cfg.botName) document.getElementById('cfg-bot-name').value = cfg.botName;
|
|
580
|
+
if (cfg.menuThumb) document.getElementById('cfg-menu-thumb').value = cfg.menuThumb;
|
|
581
|
+
if (cfg.antilink !== undefined) document.getElementById('cfg-antilink').checked = cfg.antilink;
|
|
582
|
+
if (cfg.antibot !== undefined) document.getElementById('cfg-antibot').checked = cfg.antibot;
|
|
583
|
+
if (cfg.antimedia !== undefined) document.getElementById('cfg-antimedia').checked = cfg.antimedia;
|
|
584
|
+
if (cfg.autoread !== undefined) document.getElementById('cfg-autoread').checked = cfg.autoread;
|
|
505
585
|
}
|
|
506
586
|
|
|
507
587
|
window.addEventListener('DOMContentLoaded', () => {
|
|
508
588
|
const saved = localStorage.getItem('shiina_ui_config');
|
|
589
|
+
const savedName = localStorage.getItem('shiina_bot_name');
|
|
590
|
+
if (savedName) document.getElementById('dashboard-title').innerText = savedName;
|
|
591
|
+
|
|
509
592
|
if (saved) {
|
|
510
593
|
try {
|
|
511
594
|
const cfg = JSON.parse(saved);
|
|
512
|
-
document.getElementById('cfg-opacity').value = cfg.opacity || 0.
|
|
513
|
-
document.getElementById('opacity-val').innerText = Math.round((cfg.opacity || 0.
|
|
514
|
-
document.getElementById('cfg-bg').value = cfg.bg || '';
|
|
595
|
+
document.getElementById('cfg-opacity').value = cfg.opacity || 0.75;
|
|
596
|
+
document.getElementById('opacity-val').innerText = Math.round((cfg.opacity || 0.75) * 100);
|
|
515
597
|
document.getElementById('cfg-order').value = cfg.order || 'default';
|
|
516
598
|
document.getElementById('cfg-w-metrics').checked = cfg.showMetrics !== false;
|
|
517
599
|
document.getElementById('cfg-w-music').checked = cfg.showMusicPlayer !== false;
|
|
518
600
|
document.getElementById('cfg-w-terminal').checked = cfg.showTerminal !== false;
|
|
601
|
+
if (cfg.botName) document.getElementById('cfg-bot-name').value = cfg.botName;
|
|
602
|
+
if (cfg.menuThumb) document.getElementById('cfg-menu-thumb').value = cfg.menuThumb;
|
|
603
|
+
if (cfg.antilink !== undefined) document.getElementById('cfg-antilink').checked = cfg.antilink;
|
|
604
|
+
if (cfg.antibot !== undefined) document.getElementById('cfg-antibot').checked = cfg.antibot;
|
|
605
|
+
if (cfg.antimedia !== undefined) document.getElementById('cfg-antimedia').checked = cfg.antimedia;
|
|
606
|
+
if (cfg.autoread !== undefined) document.getElementById('cfg-autoread').checked = cfg.autoread;
|
|
519
607
|
applyUI(cfg);
|
|
520
608
|
} catch(e) {}
|
|
521
609
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../src/Utils/dashboard.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../src/Utils/dashboard.ts"],"names":[],"mappings":"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"}
|