musify 1.0.2 → 1.0.4
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 +38 -209
- package/dist/renderers/glassRenderer.d.ts.map +1 -1
- package/dist/renderers/glassRenderer.js +72 -44
- package/dist/renderers/glassRenderer.js.map +1 -1
- package/dist/types/index.d.ts +1 -5
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/textProcessor.d.ts.map +1 -1
- package/dist/utils/textProcessor.js +2 -1
- package/dist/utils/textProcessor.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,37 +1,46 @@
|
|
|
1
|
-
|
|
1
|
+
<div align="center">
|
|
2
|
+
|
|
3
|
+
# 🎧 Musify
|
|
2
4
|
|
|
3
|
-
> **Professional Music
|
|
5
|
+
> **Professional Music Image Generator for Discord Bots**
|
|
4
6
|
> *Create stunning, high-performance music cards with elegant glass design and automatic color extraction*
|
|
5
7
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
[](https://www.npmjs.com/package/musify)
|
|
11
|
+
[](https://www.npmjs.com/package/musify)
|
|
12
|
+
[](https://github.com/Zokys/musify/blob/main/LICENSE)
|
|
9
13
|
[](https://nodejs.org/)
|
|
10
14
|
|
|
11
|
-
<
|
|
15
|
+
<br><br>
|
|
16
|
+
|
|
17
|
+
# 👀 Preview
|
|
18
|
+
|
|
19
|
+
<img src="https://i.imgur.com/5lEfqA7.png" alt="Musify Preview 1" width="70%" /><br><br>
|
|
12
20
|
|
|
13
|
-
|
|
21
|
+
<img src="https://i.imgur.com/fZdYnAX.png" alt="Musify Preview 2" width="70%" /><br>
|
|
14
22
|
|
|
15
|
-
|
|
23
|
+
<img src="https://i.imgur.com/ztCvUln.png" alt="Musify Preview 3" width="70%" /><br>
|
|
16
24
|
|
|
17
25
|
</div>
|
|
18
26
|
|
|
27
|
+
|
|
19
28
|
---
|
|
20
29
|
|
|
21
30
|
## ✨ Features
|
|
22
31
|
|
|
23
32
|
| Feature | Description |
|
|
24
33
|
|---------|-------------|
|
|
25
|
-
|
|
|
34
|
+
| 🔎 **Glass Design** | Modern, clean music card layout with rounded corners and shadows |
|
|
26
35
|
| 🎯 **Auto Color Extraction** | Intelligently extracts dominant colors from thumbnails |
|
|
27
|
-
|
|
|
36
|
+
| 🪅 **Background Effects** | Blur, darkness, and overlay controls for stunning visuals |
|
|
28
37
|
| 📏 **Flexible Scaling** | Scale from 0.5x to 2x for different use cases |
|
|
29
38
|
| ⚡ **High Performance** | Optimized rendering with minimal memory footprint |
|
|
30
39
|
| 🔧 **TypeScript Ready** | Full TypeScript definitions and IntelliSense support |
|
|
31
40
|
| 🎵 **Riffy Integration** | Perfect compatibility with Riffy music library |
|
|
32
41
|
| 🖼️ **Multiple Formats** | Support for URLs, local paths, and buffer inputs |
|
|
33
42
|
|
|
34
|
-
##
|
|
43
|
+
## 🤔 Quick Start
|
|
35
44
|
|
|
36
45
|
### Installation
|
|
37
46
|
|
|
@@ -44,7 +53,7 @@ npm install musify
|
|
|
44
53
|
```typescript
|
|
45
54
|
import { Glass } from 'musify';
|
|
46
55
|
|
|
47
|
-
const
|
|
56
|
+
const Musify = await Glass({
|
|
48
57
|
thumbnailImage: 'https://example.com/thumbnail.jpg',
|
|
49
58
|
name: 'Bohemian Rhapsody',
|
|
50
59
|
author: 'Queen',
|
|
@@ -55,12 +64,12 @@ const musicCard = await Glass({
|
|
|
55
64
|
});
|
|
56
65
|
```
|
|
57
66
|
|
|
58
|
-
### Send to Discord
|
|
67
|
+
### Send to Discord Channel
|
|
59
68
|
|
|
60
69
|
```typescript
|
|
61
70
|
await channel.send({
|
|
62
71
|
files: [{
|
|
63
|
-
attachment:
|
|
72
|
+
attachment: Musify,
|
|
64
73
|
name: 'now-playing.png'
|
|
65
74
|
}]
|
|
66
75
|
});
|
|
@@ -68,14 +77,6 @@ await channel.send({
|
|
|
68
77
|
|
|
69
78
|
---
|
|
70
79
|
|
|
71
|
-
## 🎨 API Reference
|
|
72
|
-
|
|
73
|
-
### Glass Function
|
|
74
|
-
|
|
75
|
-
```typescript
|
|
76
|
-
Glass(options: MusifyOptions): Promise<Buffer>
|
|
77
|
-
```
|
|
78
|
-
|
|
79
80
|
Generates a professional music card and returns a PNG buffer.
|
|
80
81
|
|
|
81
82
|
### Configuration Options
|
|
@@ -102,12 +103,12 @@ Generates a professional music card and returns a PNG buffer.
|
|
|
102
103
|
|
|
103
104
|
---
|
|
104
105
|
|
|
105
|
-
## 🎯
|
|
106
|
+
## 🎯 Usage Examples
|
|
106
107
|
|
|
107
108
|
### Auto Color Extraction
|
|
108
109
|
|
|
109
110
|
```typescript
|
|
110
|
-
const
|
|
111
|
+
const Musify = await Glass({
|
|
111
112
|
thumbnailImage: track.info.thumbnail,
|
|
112
113
|
name: track.info.title,
|
|
113
114
|
author: track.info.author,
|
|
@@ -125,7 +126,7 @@ const musicCard = await Glass({
|
|
|
125
126
|
### Custom Styling
|
|
126
127
|
|
|
127
128
|
```typescript
|
|
128
|
-
const
|
|
129
|
+
const Musify = await Glass({
|
|
129
130
|
thumbnailImage: 'https://example.com/thumbnail.jpg',
|
|
130
131
|
name: 'Custom Styled Track',
|
|
131
132
|
author: 'Custom Artist',
|
|
@@ -146,7 +147,7 @@ const musicCard = await Glass({
|
|
|
146
147
|
### Background Effects
|
|
147
148
|
|
|
148
149
|
```typescript
|
|
149
|
-
const
|
|
150
|
+
const Musify = await Glass({
|
|
150
151
|
thumbnailImage: track.info.thumbnail,
|
|
151
152
|
backgroundImage: track.info.thumbnail, // Use same image as background
|
|
152
153
|
backgroundBlur: 20, // Strong blur effect
|
|
@@ -171,7 +172,7 @@ import { Glass } from 'musify';
|
|
|
171
172
|
|
|
172
173
|
// Track start event
|
|
173
174
|
client.riffy.on('trackStart', async (player, track) => {
|
|
174
|
-
const
|
|
175
|
+
const Musify = await Glass({
|
|
175
176
|
thumbnailImage: track.info.thumbnail,
|
|
176
177
|
name: track.info.title,
|
|
177
178
|
author: track.info.author,
|
|
@@ -184,7 +185,7 @@ client.riffy.on('trackStart', async (player, track) => {
|
|
|
184
185
|
|
|
185
186
|
// Send to Discord
|
|
186
187
|
await player.textChannel.send({
|
|
187
|
-
files: [{ attachment:
|
|
188
|
+
files: [{ attachment: Musify, name: 'now-playing.png' }]
|
|
188
189
|
});
|
|
189
190
|
});
|
|
190
191
|
|
|
@@ -195,7 +196,7 @@ setInterval(async () => {
|
|
|
195
196
|
const startTime = formatTime(player.position);
|
|
196
197
|
const endTime = formatTime(player.current.info.length);
|
|
197
198
|
|
|
198
|
-
const
|
|
199
|
+
const Musify = await Glass({
|
|
199
200
|
thumbnailImage: player.current.info.thumbnail,
|
|
200
201
|
name: player.current.info.title,
|
|
201
202
|
author: player.current.info.author,
|
|
@@ -207,7 +208,7 @@ setInterval(async () => {
|
|
|
207
208
|
});
|
|
208
209
|
|
|
209
210
|
// Update message
|
|
210
|
-
await message.edit({ files: [{ attachment:
|
|
211
|
+
await message.edit({ files: [{ attachment: Musify, name: 'now-playing.png' }] });
|
|
211
212
|
}
|
|
212
213
|
}, 5000); // Update every 5 seconds
|
|
213
214
|
|
|
@@ -222,7 +223,7 @@ function formatTime(ms: number): string {
|
|
|
222
223
|
|
|
223
224
|
## ⚡ Performance Optimization
|
|
224
225
|
|
|
225
|
-
###
|
|
226
|
+
### **Reuse Configuration Objects**
|
|
226
227
|
|
|
227
228
|
```typescript
|
|
228
229
|
const baseConfig = {
|
|
@@ -233,7 +234,7 @@ const baseConfig = {
|
|
|
233
234
|
};
|
|
234
235
|
|
|
235
236
|
// Reuse for different tracks
|
|
236
|
-
const
|
|
237
|
+
const Musify1 = await Glass({
|
|
237
238
|
...baseConfig,
|
|
238
239
|
thumbnailImage: track1.info.thumbnail,
|
|
239
240
|
name: track1.info.title,
|
|
@@ -241,7 +242,7 @@ const musicCard1 = await Glass({
|
|
|
241
242
|
progress: 30
|
|
242
243
|
});
|
|
243
244
|
|
|
244
|
-
const
|
|
245
|
+
const Musify2 = await Glass({
|
|
245
246
|
...baseConfig,
|
|
246
247
|
thumbnailImage: track2.info.thumbnail,
|
|
247
248
|
name: track2.info.title,
|
|
@@ -250,7 +251,7 @@ const musicCard2 = await Glass({
|
|
|
250
251
|
});
|
|
251
252
|
```
|
|
252
253
|
|
|
253
|
-
###
|
|
254
|
+
### **Cache Generated Cards**
|
|
254
255
|
|
|
255
256
|
```typescript
|
|
256
257
|
const cardCache = new Map();
|
|
@@ -262,8 +263,8 @@ async function getCachedCard(trackId: string, progress: number) {
|
|
|
262
263
|
return cardCache.get(cacheKey);
|
|
263
264
|
}
|
|
264
265
|
|
|
265
|
-
const
|
|
266
|
-
cardCache.set(cacheKey,
|
|
266
|
+
const Musify = await Glass(options);
|
|
267
|
+
cardCache.set(cacheKey, Musify);
|
|
267
268
|
|
|
268
269
|
// Limit cache size
|
|
269
270
|
if (cardCache.size > 100) {
|
|
@@ -271,180 +272,8 @@ async function getCachedCard(trackId: string, progress: number) {
|
|
|
271
272
|
cardCache.delete(firstKey);
|
|
272
273
|
}
|
|
273
274
|
|
|
274
|
-
return
|
|
275
|
-
}
|
|
276
|
-
```
|
|
277
|
-
|
|
278
|
-
### 3. **Batch Processing**
|
|
279
|
-
|
|
280
|
-
```typescript
|
|
281
|
-
async function generateMultipleCards(tracks: Track[]) {
|
|
282
|
-
const promises = tracks.map(track =>
|
|
283
|
-
Glass({
|
|
284
|
-
thumbnailImage: track.thumbnail,
|
|
285
|
-
name: track.title,
|
|
286
|
-
author: track.author,
|
|
287
|
-
progress: 0
|
|
288
|
-
})
|
|
289
|
-
);
|
|
290
|
-
|
|
291
|
-
return await Promise.all(promises);
|
|
275
|
+
return Musify;
|
|
292
276
|
}
|
|
293
277
|
```
|
|
294
278
|
|
|
295
|
-
---
|
|
296
|
-
|
|
297
|
-
## 🛠️ Development
|
|
298
|
-
|
|
299
|
-
### Building from Source
|
|
300
|
-
|
|
301
|
-
```bash
|
|
302
|
-
# Clone repository
|
|
303
|
-
git clone https://github.com/Zokys/musify.git
|
|
304
|
-
cd musify
|
|
305
|
-
|
|
306
|
-
# Install dependencies
|
|
307
|
-
npm install
|
|
308
|
-
|
|
309
|
-
# Build package
|
|
310
|
-
npm run build
|
|
311
|
-
|
|
312
|
-
# Run tests
|
|
313
|
-
npm test
|
|
314
|
-
```
|
|
315
|
-
|
|
316
|
-
### Development Mode
|
|
317
|
-
|
|
318
|
-
```bash
|
|
319
|
-
# Watch for changes
|
|
320
|
-
npm run dev
|
|
321
|
-
|
|
322
|
-
# Clean build
|
|
323
|
-
npm run clean && npm run build
|
|
324
|
-
```
|
|
325
|
-
|
|
326
|
-
### Project Structure
|
|
327
|
-
|
|
328
|
-
```
|
|
329
|
-
musify/
|
|
330
|
-
├── src/
|
|
331
|
-
│ ├── index.ts # Main entry point
|
|
332
|
-
│ ├── renderers/
|
|
333
|
-
│ │ └── glassRenderer.ts # Core rendering logic
|
|
334
|
-
│ ├── utils/
|
|
335
|
-
│ │ ├── colorExtractor.ts # Color extraction
|
|
336
|
-
│ │ ├── textProcessor.ts # Text utilities
|
|
337
|
-
│ │ └── fontManager.ts # Font management
|
|
338
|
-
│ ├── types/
|
|
339
|
-
│ │ └── index.ts # TypeScript definitions
|
|
340
|
-
│ └── fonts/ # Font assets
|
|
341
|
-
├── dist/ # Compiled output
|
|
342
|
-
├── package.json
|
|
343
|
-
└── README.md
|
|
344
|
-
```
|
|
345
|
-
|
|
346
|
-
---
|
|
347
|
-
|
|
348
|
-
## 🐛 Error Handling
|
|
349
|
-
|
|
350
|
-
```typescript
|
|
351
|
-
try {
|
|
352
|
-
const musicCard = await Glass({
|
|
353
|
-
thumbnailImage: track.info.thumbnail,
|
|
354
|
-
name: track.info.title,
|
|
355
|
-
author: track.info.author,
|
|
356
|
-
requester: track.info.requester.username,
|
|
357
|
-
progress: 25,
|
|
358
|
-
startTime: '1:15',
|
|
359
|
-
endTime: '4:30'
|
|
360
|
-
});
|
|
361
|
-
|
|
362
|
-
await channel.send({
|
|
363
|
-
files: [{ attachment: musicCard, name: 'music.png' }]
|
|
364
|
-
});
|
|
365
|
-
|
|
366
|
-
} catch (error) {
|
|
367
|
-
console.error('Failed to generate music card:', error.message);
|
|
368
|
-
|
|
369
|
-
// Fallback to text message
|
|
370
|
-
await channel.send({
|
|
371
|
-
embeds: [{
|
|
372
|
-
title: '🎵 Now Playing',
|
|
373
|
-
description: `${track.info.title} by ${track.info.author}`,
|
|
374
|
-
color: 0xFF7A00
|
|
375
|
-
}]
|
|
376
|
-
});
|
|
377
|
-
}
|
|
378
|
-
```
|
|
379
|
-
|
|
380
|
-
---
|
|
381
|
-
|
|
382
|
-
## 📊 Benchmarks
|
|
383
|
-
|
|
384
|
-
| Operation | Time | Memory |
|
|
385
|
-
|-----------|------|--------|
|
|
386
|
-
| Basic Card Generation | ~50ms | ~2MB |
|
|
387
|
-
| With Auto Color Extraction | ~80ms | ~3MB |
|
|
388
|
-
| With Background Effects | ~120ms | ~4MB |
|
|
389
|
-
| High Resolution (2x scale) | ~200ms | ~8MB |
|
|
390
|
-
|
|
391
|
-
*Tested on Node.js 18+ with 8GB RAM*
|
|
392
|
-
|
|
393
|
-
---
|
|
394
|
-
|
|
395
|
-
## 🤝 Contributing
|
|
396
|
-
|
|
397
|
-
We welcome contributions! Here's how to get started:
|
|
398
|
-
|
|
399
|
-
1. **Fork** the repository
|
|
400
|
-
2. **Create** a feature branch (`git checkout -b feature/amazing-feature`)
|
|
401
|
-
3. **Commit** your changes (`git commit -m 'Add amazing feature'`)
|
|
402
|
-
4. **Push** to the branch (`git push origin feature/amazing-feature`)
|
|
403
|
-
5. **Open** a Pull Request
|
|
404
|
-
|
|
405
|
-
### Development Guidelines
|
|
406
|
-
|
|
407
|
-
- Follow TypeScript best practices
|
|
408
|
-
- Add tests for new features
|
|
409
|
-
- Update documentation
|
|
410
|
-
- Ensure cross-platform compatibility
|
|
411
|
-
- Optimize for performance
|
|
412
|
-
|
|
413
|
-
---
|
|
414
|
-
|
|
415
|
-
## 📄 License
|
|
416
|
-
|
|
417
|
-
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
|
|
418
|
-
|
|
419
|
-
---
|
|
420
|
-
|
|
421
|
-
## 🆘 Support
|
|
422
|
-
|
|
423
|
-
### Getting Help
|
|
424
|
-
|
|
425
|
-
- 📖 **Documentation**: Check this README and examples
|
|
426
|
-
- 🐛 **Issues**: [GitHub Issues](https://github.com/Zokys/musify/issues)
|
|
427
|
-
- 💬 **Discussions**: [GitHub Discussions](https://github.com/Zokys/musify/discussions)
|
|
428
|
-
- 📧 **Email**: Contact the maintainers directly
|
|
429
|
-
|
|
430
|
-
### Common Issues
|
|
431
|
-
|
|
432
|
-
| Issue | Solution |
|
|
433
|
-
|-------|----------|
|
|
434
|
-
| Font loading errors | Ensure fonts are in `src/fonts/` directory |
|
|
435
|
-
| Color extraction fails | Check thumbnail URL accessibility |
|
|
436
|
-
| Memory issues | Reduce scale or optimize image sizes |
|
|
437
|
-
| Performance problems | Use caching and batch processing |
|
|
438
|
-
|
|
439
|
-
---
|
|
440
|
-
|
|
441
|
-
<div align="center">
|
|
442
|
-
|
|
443
|
-
**Made with ❤️ for the Discord bot community**
|
|
444
|
-
|
|
445
|
-
[](https://github.com/Zokys/musify)
|
|
446
|
-
[](https://github.com/Zokys/musify)
|
|
447
|
-
|
|
448
|
-
*Star this repository if it helped you! ⭐*
|
|
449
279
|
|
|
450
|
-
</div>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glassRenderer.d.ts","sourceRoot":"","sources":["../../src/renderers/glassRenderer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AASzC,wBAAsB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"glassRenderer.d.ts","sourceRoot":"","sources":["../../src/renderers/glassRenderer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AASzC,wBAAsB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAqDzE"}
|
|
@@ -16,6 +16,7 @@ async function renderGlass(options) {
|
|
|
16
16
|
}
|
|
17
17
|
const processedOptions = {
|
|
18
18
|
...options,
|
|
19
|
+
style: options.style,
|
|
19
20
|
nameColor: options.nameColor || autoColor,
|
|
20
21
|
progressColor: options.progressColor || autoColor,
|
|
21
22
|
authorColor: options.authorColor || '#FFFFFF',
|
|
@@ -29,7 +30,7 @@ async function renderGlass(options) {
|
|
|
29
30
|
const ctx = canvas.getContext('2d');
|
|
30
31
|
await drawBackground(ctx, processedOptions, CANVAS_W, CANVAS_H);
|
|
31
32
|
const thumbnail = await loadThumbnail(processedOptions);
|
|
32
|
-
await drawThumbnail(ctx, thumbnail, scale);
|
|
33
|
+
await drawThumbnail(ctx, thumbnail, scale, processedOptions);
|
|
33
34
|
await drawTextElements(ctx, processedOptions, scale);
|
|
34
35
|
drawProgressBar(ctx, processedOptions, scale);
|
|
35
36
|
drawTimeLabels(ctx, processedOptions, scale);
|
|
@@ -78,38 +79,87 @@ async function loadThumbnail(options) {
|
|
|
78
79
|
}
|
|
79
80
|
}
|
|
80
81
|
}
|
|
81
|
-
async function drawThumbnail(ctx, thumbnail, scale) {
|
|
82
|
-
const
|
|
83
|
-
const
|
|
84
|
-
const
|
|
85
|
-
const
|
|
82
|
+
async function drawThumbnail(ctx, thumbnail, scale, options) {
|
|
83
|
+
const style = String(options.style || 'v1').toLowerCase();
|
|
84
|
+
const isV2Style = style === 'v2';
|
|
85
|
+
const thumbH = isV2Style ? 100 * scale : 85 * scale;
|
|
86
|
+
const thumbW = isV2Style ? 95 * scale : 90 * scale;
|
|
87
|
+
const thumbX = isV2Style ? 0 : 10 * scale;
|
|
88
|
+
const thumbY = isV2Style ? 0 : (100 * scale - thumbH) / 2;
|
|
89
|
+
const radius = isV2Style ? 0 : 8 * scale;
|
|
90
|
+
const offCanvas = (0, canvas_1.createCanvas)(thumbW, thumbH);
|
|
91
|
+
const offCtx = offCanvas.getContext('2d');
|
|
92
|
+
offCtx.save();
|
|
93
|
+
offCtx.beginPath();
|
|
94
|
+
offCtx.moveTo(radius, 0);
|
|
95
|
+
offCtx.lineTo(thumbW - radius, 0);
|
|
96
|
+
offCtx.quadraticCurveTo(thumbW, 0, thumbW, radius);
|
|
97
|
+
offCtx.lineTo(thumbW, thumbH - radius);
|
|
98
|
+
offCtx.quadraticCurveTo(thumbW, thumbH, thumbW - radius, thumbH);
|
|
99
|
+
offCtx.lineTo(radius, thumbH);
|
|
100
|
+
offCtx.quadraticCurveTo(0, thumbH, 0, thumbH - radius);
|
|
101
|
+
offCtx.lineTo(0, radius);
|
|
102
|
+
offCtx.quadraticCurveTo(0, 0, radius, 0);
|
|
103
|
+
offCtx.closePath();
|
|
104
|
+
offCtx.clip();
|
|
105
|
+
offCtx.drawImage(thumbnail, 0, 0, thumbW, thumbH);
|
|
106
|
+
offCtx.restore();
|
|
107
|
+
if (isV2Style) {
|
|
108
|
+
const maskCanvas = (0, canvas_1.createCanvas)(thumbW, thumbH);
|
|
109
|
+
const maskCtx = maskCanvas.getContext('2d');
|
|
110
|
+
const fadeGradient = maskCtx.createLinearGradient(0, 0, thumbW, 0);
|
|
111
|
+
fadeGradient.addColorStop(0, 'rgba(255, 255, 255, 1)');
|
|
112
|
+
fadeGradient.addColorStop(0.4, 'rgba(255, 255, 255, 1)');
|
|
113
|
+
fadeGradient.addColorStop(0.45, 'rgba(255, 255, 255, 0.9)');
|
|
114
|
+
fadeGradient.addColorStop(0.5, 'rgba(255, 255, 255, 0.8)');
|
|
115
|
+
fadeGradient.addColorStop(0.55, 'rgba(255, 255, 255, 0.7)');
|
|
116
|
+
fadeGradient.addColorStop(0.6, 'rgba(255, 255, 255, 0.6)');
|
|
117
|
+
fadeGradient.addColorStop(0.7, 'rgba(255, 255, 255, 0.4)');
|
|
118
|
+
fadeGradient.addColorStop(0.8, 'rgba(255, 255, 255, 0.25)');
|
|
119
|
+
fadeGradient.addColorStop(0.9, 'rgba(255, 255, 255, 0.1)');
|
|
120
|
+
fadeGradient.addColorStop(0.95, 'rgba(255, 255, 255, 0.05)');
|
|
121
|
+
fadeGradient.addColorStop(1, 'rgba(255, 255, 255, 0)');
|
|
122
|
+
maskCtx.fillStyle = fadeGradient;
|
|
123
|
+
maskCtx.fillRect(0, 0, thumbW, thumbH);
|
|
124
|
+
offCtx.save();
|
|
125
|
+
offCtx.globalCompositeOperation = 'destination-in';
|
|
126
|
+
offCtx.drawImage(maskCanvas, 0, 0);
|
|
127
|
+
offCtx.restore();
|
|
128
|
+
}
|
|
129
|
+
ctx.drawImage(offCanvas, thumbX, thumbY, thumbW, thumbH);
|
|
130
|
+
}
|
|
131
|
+
function drawProgressBar(ctx, options, scale) {
|
|
132
|
+
const totalWidth = 240 * scale;
|
|
133
|
+
const completed = totalWidth * (options.progress || 0) / 100;
|
|
134
|
+
const progressBarHeight = 3 * scale;
|
|
135
|
+
const progressBarY = 80 * scale;
|
|
136
|
+
const progressBarX = 130 * scale;
|
|
86
137
|
ctx.save();
|
|
138
|
+
ctx.globalAlpha = 0.55;
|
|
87
139
|
ctx.beginPath();
|
|
88
|
-
ctx.
|
|
89
|
-
ctx.
|
|
90
|
-
ctx.
|
|
91
|
-
ctx.
|
|
92
|
-
ctx.
|
|
93
|
-
ctx.
|
|
94
|
-
ctx.
|
|
95
|
-
ctx.
|
|
96
|
-
ctx.
|
|
97
|
-
ctx.
|
|
98
|
-
ctx.
|
|
99
|
-
ctx.drawImage(thumbnail, thumbX, thumbY, thumbW, thumbH);
|
|
140
|
+
ctx.roundRect(progressBarX, progressBarY, totalWidth, progressBarHeight, progressBarHeight / 2);
|
|
141
|
+
ctx.fillStyle = '#222';
|
|
142
|
+
ctx.fill();
|
|
143
|
+
ctx.restore();
|
|
144
|
+
ctx.save();
|
|
145
|
+
ctx.beginPath();
|
|
146
|
+
ctx.roundRect(progressBarX, progressBarY, completed, progressBarHeight, progressBarHeight / 2);
|
|
147
|
+
ctx.fillStyle = options.progressColor || '#FF7A00';
|
|
148
|
+
ctx.shadowColor = options.progressColor || '#FF7A00';
|
|
149
|
+
ctx.shadowBlur = 5;
|
|
150
|
+
ctx.fill();
|
|
100
151
|
ctx.restore();
|
|
101
152
|
}
|
|
102
153
|
async function drawTextElements(ctx, options, scale) {
|
|
103
154
|
const textX = 110 * scale;
|
|
104
|
-
const titleY = 25 * scale;
|
|
105
155
|
ctx.font = `bold ${17 * scale}px NotoSans`;
|
|
106
156
|
ctx.fillStyle = options.nameColor || '#FF7A00';
|
|
107
157
|
ctx.shadowColor = 'rgba(0, 0, 0, 0.8)';
|
|
108
158
|
ctx.shadowBlur = 4 * scale;
|
|
109
159
|
ctx.shadowOffsetX = 2 * scale;
|
|
110
160
|
ctx.shadowOffsetY = 2 * scale;
|
|
111
|
-
ctx.fillText((0, textProcessor_1.truncateText)(options.name || '
|
|
112
|
-
ctx.font =
|
|
161
|
+
ctx.fillText((0, textProcessor_1.truncateText)(options.name || 'Unknown Track', 30), textX, 25 * scale, 280 * scale);
|
|
162
|
+
ctx.font = `${12 * scale}px NotoSans`;
|
|
113
163
|
ctx.fillStyle = options.authorColor || '#FFFFFF';
|
|
114
164
|
ctx.shadowColor = 'rgba(0, 0, 0, 0.8)';
|
|
115
165
|
ctx.shadowBlur = 3 * scale;
|
|
@@ -122,34 +172,12 @@ async function drawTextElements(ctx, options, scale) {
|
|
|
122
172
|
ctx.shadowBlur = 3 * scale;
|
|
123
173
|
ctx.shadowOffsetX = 1.5 * scale;
|
|
124
174
|
ctx.shadowOffsetY = 1.5 * scale;
|
|
125
|
-
ctx.fillText(
|
|
175
|
+
ctx.fillText(`${options.requester || 'Unknown'}`, textX, 63 * scale, 280 * scale);
|
|
126
176
|
ctx.shadowColor = 'transparent';
|
|
127
177
|
ctx.shadowBlur = 0;
|
|
128
178
|
ctx.shadowOffsetX = 0;
|
|
129
179
|
ctx.shadowOffsetY = 0;
|
|
130
180
|
}
|
|
131
|
-
function drawProgressBar(ctx, options, scale) {
|
|
132
|
-
const totalWidth = 240 * scale;
|
|
133
|
-
const completed = totalWidth * (options.progress || 0) / 100;
|
|
134
|
-
const progressBarHeight = 3 * scale;
|
|
135
|
-
const progressBarY = 80 * scale;
|
|
136
|
-
const progressBarX = 130 * scale;
|
|
137
|
-
ctx.save();
|
|
138
|
-
ctx.globalAlpha = 0.55;
|
|
139
|
-
ctx.beginPath();
|
|
140
|
-
ctx.roundRect(progressBarX, progressBarY, totalWidth, progressBarHeight, progressBarHeight / 2);
|
|
141
|
-
ctx.fillStyle = '#222';
|
|
142
|
-
ctx.fill();
|
|
143
|
-
ctx.restore();
|
|
144
|
-
ctx.save();
|
|
145
|
-
ctx.beginPath();
|
|
146
|
-
ctx.roundRect(progressBarX, progressBarY, completed, progressBarHeight, progressBarHeight / 2);
|
|
147
|
-
ctx.fillStyle = options.progressColor || '#FF7A00';
|
|
148
|
-
ctx.shadowColor = options.progressColor || '#FF7A00';
|
|
149
|
-
ctx.shadowBlur = 5;
|
|
150
|
-
ctx.fill();
|
|
151
|
-
ctx.restore();
|
|
152
|
-
}
|
|
153
181
|
function drawTimeLabels(ctx, options, scale) {
|
|
154
182
|
const progressBarX = 130 * scale;
|
|
155
183
|
const progressBarY = 80 * scale;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glassRenderer.js","sourceRoot":"","sources":["../../src/renderers/glassRenderer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"glassRenderer.js","sourceRoot":"","sources":["../../src/renderers/glassRenderer.ts"],"names":[],"mappings":";;AAUA,kCAqDC;AA/DD,4CAA0D;AAE1D,4DAAwD;AACxD,sEAA4F;AAC5F,0DAAsD;AACtD,sDAAqD;AAK9C,KAAK,UAAU,WAAW,CAAC,OAAsB;IACtD,IAAI,CAAC;QAEH,IAAA,2BAAa,GAAE,CAAC;QAGhB,IAAI,SAAS,GAAG,SAAS,CAAC;QAC1B,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,MAAM,IAAA,8BAAa,EAAC,OAAO,CAAC,cAAc,CAAC,CAAC;YAC3D,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,CAAC;QAGD,MAAM,gBAAgB,GAAG;YACvB,GAAG,OAAO;YACV,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,SAAS;YACzC,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,SAAS;YACjD,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,SAAS;YAC7C,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,SAAS;YACzC,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,SAAS;SACnC,CAAC;QAGnB,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC;QACjC,MAAM,QAAQ,GAAG,GAAG,GAAG,KAAK,CAAC;QAC7B,MAAM,QAAQ,GAAG,GAAG,GAAG,KAAK,CAAC;QAC7B,MAAM,MAAM,GAAG,IAAA,qBAAY,EAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAChD,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAGpC,MAAM,cAAc,CAAC,GAAG,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAGhE,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,gBAAgB,CAAC,CAAC;QACxD,MAAM,aAAa,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,gBAAgB,CAAC,CAAC;QAG7D,MAAM,gBAAgB,CAAC,GAAG,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC;QAGrD,eAAe,CAAC,GAAG,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC;QAG9C,cAAc,CAAC,GAAG,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC;QAG7C,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAErD,OAAO,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,iCAAiC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;IAC/G,CAAC;AACH,CAAC;AAKD,KAAK,UAAU,cAAc,CAAC,GAAQ,EAAE,OAAsB,EAAE,KAAa,EAAE,MAAc;IAC3F,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,iBAAiB,GAAG,MAAM,IAAA,6CAAuB,EACrD,OAAO,CAAC,eAAe,EACvB,OAAO,CAAC,cAAc,IAAI,EAAE,EAC5B,OAAO,CAAC,kBAAkB,IAAI,GAAG,CAClC,CAAC;YAEF,IAAI,iBAAiB,EAAE,CAAC;gBACtB,MAAM,eAAe,GAAG,MAAM,IAAA,kBAAS,EAAC,iBAAiB,CAAC,CAAC;gBAC3D,GAAG,CAAC,MAAM,GAAG,YAAY,CAAC;gBAC1B,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;gBACpD,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;gBACpB,OAAO;YACT,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE,KAAK,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAGD,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,eAAe,IAAI,SAAS,CAAC;IACrD,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACpC,CAAC;AAKD,KAAK,UAAU,aAAa,CAAC,OAAsB;IACjD,MAAM,UAAU,GAAG,IAAA,yCAAmB,EAAC,OAAO,CAAC,aAAa,IAAI,SAAS,CAAC,CAAC;IAC3E,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,UAAU,CAAC;IAE5D,IAAI,CAAC;QAEH,OAAO,MAAM,IAAA,kBAAS,EAAC,cAAc,CAAC,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACP,IAAI,CAAC;YAEH,OAAO,MAAM,IAAA,kBAAS,EAAC,UAAU,CAAC,CAAC;QACrC,CAAC;QAAC,MAAM,CAAC;YAEP,MAAM,cAAc,GAAG,IAAA,qBAAY,EAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAC5C,MAAM,WAAW,GAAG,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACpD,WAAW,CAAC,SAAS,GAAG,OAAO,CAAC,aAAa,IAAI,SAAS,CAAC;YAC3D,WAAW,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YACnC,OAAO,cAAc,CAAC;QACxB,CAAC;IACH,CAAC;AACH,CAAC;AAKD,KAAK,UAAU,aAAa,CAAC,GAAQ,EAAE,SAAc,EAAE,KAAa,EAAE,OAAsB;IAE1F,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IAC1D,MAAM,SAAS,GAAG,KAAK,KAAK,IAAI,CAAC;IAGjC,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC;IACpD,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC;IACnD,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC;IAC1C,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;IAGzC,MAAM,SAAS,GAAG,IAAA,qBAAY,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAG1C,MAAM,CAAC,IAAI,EAAE,CAAC;IACd,MAAM,CAAC,SAAS,EAAE,CAAC;IACnB,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACzB,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC;IAClC,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACnD,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACvC,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,CAAC;IACjE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,MAAM,CAAC,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACvD,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACzB,MAAM,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IACzC,MAAM,CAAC,SAAS,EAAE,CAAC;IACnB,MAAM,CAAC,IAAI,EAAE,CAAC;IACd,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAClD,MAAM,CAAC,OAAO,EAAE,CAAC;IAGjB,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,UAAU,GAAG,IAAA,qBAAY,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAG5C,MAAM,YAAY,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAGnE,YAAY,CAAC,YAAY,CAAC,CAAC,EAAE,wBAAwB,CAAC,CAAC;QACvD,YAAY,CAAC,YAAY,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;QACzD,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,0BAA0B,CAAC,CAAC;QAC5D,YAAY,CAAC,YAAY,CAAC,GAAG,EAAE,0BAA0B,CAAC,CAAC;QAC3D,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,0BAA0B,CAAC,CAAC;QAC5D,YAAY,CAAC,YAAY,CAAC,GAAG,EAAE,0BAA0B,CAAC,CAAC;QAC3D,YAAY,CAAC,YAAY,CAAC,GAAG,EAAE,0BAA0B,CAAC,CAAC;QAC3D,YAAY,CAAC,YAAY,CAAC,GAAG,EAAE,2BAA2B,CAAC,CAAC;QAC5D,YAAY,CAAC,YAAY,CAAC,GAAG,EAAE,0BAA0B,CAAC,CAAC;QAC3D,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,2BAA2B,CAAC,CAAC;QAC7D,YAAY,CAAC,YAAY,CAAC,CAAC,EAAE,wBAAwB,CAAC,CAAC;QAGvD,OAAO,CAAC,SAAS,GAAG,YAAY,CAAC;QACjC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAGvC,MAAM,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,CAAC,wBAAwB,GAAG,gBAAgB,CAAC;QACnD,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACnC,MAAM,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC;IAGD,GAAG,CAAC,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAC3D,CAAC;AAKD,SAAS,eAAe,CAAC,GAAQ,EAAE,OAAsB,EAAE,KAAa;IACtE,MAAM,UAAU,GAAG,GAAG,GAAG,KAAK,CAAC;IAC/B,MAAM,SAAS,GAAG,UAAU,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC;IAC7D,MAAM,iBAAiB,GAAG,CAAC,GAAG,KAAK,CAAC;IACpC,MAAM,YAAY,GAAG,EAAE,GAAG,KAAK,CAAC;IAChC,MAAM,YAAY,GAAG,GAAG,GAAG,KAAK,CAAC;IAGjC,GAAG,CAAC,IAAI,EAAE,CAAC;IACX,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC;IACvB,GAAG,CAAC,SAAS,EAAE,CAAC;IAChB,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,iBAAiB,GAAG,CAAC,CAAC,CAAC;IAChG,GAAG,CAAC,SAAS,GAAG,MAAM,CAAC;IACvB,GAAG,CAAC,IAAI,EAAE,CAAC;IACX,GAAG,CAAC,OAAO,EAAE,CAAC;IAGd,GAAG,CAAC,IAAI,EAAE,CAAC;IACX,GAAG,CAAC,SAAS,EAAE,CAAC;IAChB,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,iBAAiB,EAAE,iBAAiB,GAAG,CAAC,CAAC,CAAC;IAC/F,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,aAAa,IAAI,SAAS,CAAC;IACnD,GAAG,CAAC,WAAW,GAAG,OAAO,CAAC,aAAa,IAAI,SAAS,CAAC;IACrD,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC;IACnB,GAAG,CAAC,IAAI,EAAE,CAAC;IACX,GAAG,CAAC,OAAO,EAAE,CAAC;AAChB,CAAC;AAKD,KAAK,UAAU,gBAAgB,CAAC,GAAQ,EAAE,OAAsB,EAAE,KAAa;IAC7E,MAAM,KAAK,GAAG,GAAG,GAAG,KAAK,CAAC;IAG1B,GAAG,CAAC,IAAI,GAAG,QAAQ,EAAE,GAAG,KAAK,aAAa,CAAC;IAC3C,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,SAAS,CAAC;IAG/C,GAAG,CAAC,WAAW,GAAG,oBAAoB,CAAC;IACvC,GAAG,CAAC,UAAU,GAAG,CAAC,GAAG,KAAK,CAAC;IAC3B,GAAG,CAAC,aAAa,GAAG,CAAC,GAAG,KAAK,CAAC;IAC9B,GAAG,CAAC,aAAa,GAAG,CAAC,GAAG,KAAK,CAAC;IAE9B,GAAG,CAAC,QAAQ,CAAC,IAAA,4BAAY,EAAC,OAAO,CAAC,IAAI,IAAI,eAAe,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC;IAGhG,GAAG,CAAC,IAAI,GAAG,GAAG,EAAE,GAAG,KAAK,aAAa,CAAC;IACtC,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,WAAW,IAAI,SAAS,CAAC;IAGjD,GAAG,CAAC,WAAW,GAAG,oBAAoB,CAAC;IACvC,GAAG,CAAC,UAAU,GAAG,CAAC,GAAG,KAAK,CAAC;IAC3B,GAAG,CAAC,aAAa,GAAG,GAAG,GAAG,KAAK,CAAC;IAChC,GAAG,CAAC,aAAa,GAAG,GAAG,GAAG,KAAK,CAAC;IAEhC,GAAG,CAAC,QAAQ,CAAC,IAAA,4BAAY,EAAC,OAAO,CAAC,MAAM,IAAI,gBAAgB,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC;IAGnG,GAAG,CAAC,IAAI,GAAG,QAAQ,EAAE,GAAG,KAAK,aAAa,CAAC;IAC3C,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,cAAc,IAAI,SAAS,CAAC;IAGpD,GAAG,CAAC,WAAW,GAAG,oBAAoB,CAAC;IACvC,GAAG,CAAC,UAAU,GAAG,CAAC,GAAG,KAAK,CAAC;IAC3B,GAAG,CAAC,aAAa,GAAG,GAAG,GAAG,KAAK,CAAC;IAChC,GAAG,CAAC,aAAa,GAAG,GAAG,GAAG,KAAK,CAAC;IAEhC,GAAG,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,SAAS,IAAI,SAAS,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC;IAGlF,GAAG,CAAC,WAAW,GAAG,aAAa,CAAC;IAChC,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC;IACnB,GAAG,CAAC,aAAa,GAAG,CAAC,CAAC;IACtB,GAAG,CAAC,aAAa,GAAG,CAAC,CAAC;AACxB,CAAC;AAKD,SAAS,cAAc,CAAC,GAAQ,EAAE,OAAsB,EAAE,KAAa;IACrE,MAAM,YAAY,GAAG,GAAG,GAAG,KAAK,CAAC;IACjC,MAAM,YAAY,GAAG,EAAE,GAAG,KAAK,CAAC;IAChC,MAAM,UAAU,GAAG,GAAG,GAAG,KAAK,CAAC;IAE/B,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,KAAK,aAAa,CAAC;IACrC,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,SAAS,CAAC;IAG/C,GAAG,CAAC,WAAW,GAAG,oBAAoB,CAAC;IACvC,GAAG,CAAC,UAAU,GAAG,CAAC,GAAG,KAAK,CAAC;IAC3B,GAAG,CAAC,aAAa,GAAG,CAAC,GAAG,KAAK,CAAC;IAC9B,GAAG,CAAC,aAAa,GAAG,CAAC,GAAG,KAAK,CAAC;IAG9B,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,IAAI,MAAM,EAAE,YAAY,GAAG,EAAE,GAAG,KAAK,EAAE,YAAY,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;IAG/F,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,IAAI,MAAM,EAAE,YAAY,GAAG,UAAU,GAAG,CAAC,GAAG,KAAK,EAAE,YAAY,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;IAGzG,GAAG,CAAC,WAAW,GAAG,aAAa,CAAC;IAChC,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC;IACnB,GAAG,CAAC,aAAa,GAAG,CAAC,CAAC;IACtB,GAAG,CAAC,aAAa,GAAG,CAAC,CAAC;AACxB,CAAC;AAKD,SAAS,mBAAmB,CAAC,GAAQ,EAAE,MAAW,EAAE,KAAa,EAAE,MAAc;IAC/E,MAAM,UAAU,GAAG,IAAA,qBAAY,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC5C,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAEhC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IACnC,GAAG,CAAC,IAAI,EAAE,CAAC;IACX,GAAG,CAAC,SAAS,EAAE,CAAC;IAChB,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACjB,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IACzB,GAAG,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IACzC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;IAC9B,GAAG,CAAC,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;IACvD,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACtB,GAAG,CAAC,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;IAC/C,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACjB,GAAG,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACjC,GAAG,CAAC,SAAS,EAAE,CAAC;IAChB,GAAG,CAAC,IAAI,EAAE,CAAC;IACX,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAChC,GAAG,CAAC,OAAO,EAAE,CAAC;AAChB,CAAC"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -16,11 +16,7 @@ export interface MusifyOptions {
|
|
|
16
16
|
backgroundImage?: string;
|
|
17
17
|
backgroundBlur?: number;
|
|
18
18
|
backgroundDarkness?: number;
|
|
19
|
-
|
|
20
|
-
thumbnailHeight?: number;
|
|
21
|
-
thumbnailBorderRadius?: number;
|
|
22
|
-
thumbnailX?: number;
|
|
23
|
-
thumbnailY?: number | "center";
|
|
19
|
+
style?: "v1" | "v2" | undefined;
|
|
24
20
|
scale?: number;
|
|
25
21
|
}
|
|
26
22
|
export interface ColorExtractionResult {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAE5B,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAG5B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAE5B,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAG5B,KAAK,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;IAGhC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textProcessor.d.ts","sourceRoot":"","sources":["../../src/utils/textProcessor.ts"],"names":[],"mappings":"AAGA,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAGpE;AAKD,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAGjD;AAKD,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAQ7C;AAKD,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEtD;AAKD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEtD;AAKD,wBAAgB,eAAe,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG,
|
|
1
|
+
{"version":3,"file":"textProcessor.d.ts","sourceRoot":"","sources":["../../src/utils/textProcessor.ts"],"names":[],"mappings":"AAGA,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAGpE;AAKD,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAGjD;AAKD,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAQ7C;AAKD,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEtD;AAKD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEtD;AAKD,wBAAgB,eAAe,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG,CAwCjD"}
|
|
@@ -54,7 +54,8 @@ function validateOptions(options) {
|
|
|
54
54
|
thumbnailBorderRadius: Math.max(0, Math.min(50, options.thumbnailBorderRadius || 8)),
|
|
55
55
|
thumbnailX: options.thumbnailX || 15,
|
|
56
56
|
thumbnailY: options.thumbnailY || 'center',
|
|
57
|
-
scale: Math.max(0.5, Math.min(2, options.scale || 1))
|
|
57
|
+
scale: Math.max(0.5, Math.min(2, options.scale || 1)),
|
|
58
|
+
style: options.style || 'v1'
|
|
58
59
|
};
|
|
59
60
|
}
|
|
60
61
|
//# sourceMappingURL=textProcessor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textProcessor.js","sourceRoot":"","sources":["../../src/utils/textProcessor.ts"],"names":[],"mappings":";;AAGA,oCAGC;AAKD,oCAGC;AAKD,gCAQC;AAKD,0CAEC;AAKD,sCAEC;AAKD,
|
|
1
|
+
{"version":3,"file":"textProcessor.js","sourceRoot":"","sources":["../../src/utils/textProcessor.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "musify",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.4",
|
|
4
4
|
"description": "Powerful and elegant music image generator for Discord bots featuring high performance, customizable designs, and seamless integration.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|