strapi-plugin-notifier 1.2.1 → 1.2.2
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/logo.png +0 -0
- package/package.json +1 -1
- package/scripts/gen-logo.js +68 -0
package/logo.png
ADDED
|
Binary file
|
package/package.json
CHANGED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
// Generates logo.png (500×500) using sharp from the previewer's node_modules.
|
|
2
|
+
// Run: node scripts/gen-logo.js
|
|
3
|
+
const sharp = require(
|
|
4
|
+
'C:/Users/TemitopeAlabi/projects/strapi/learning_strapi/previewer/node_modules/sharp'
|
|
5
|
+
);
|
|
6
|
+
const path = require('path');
|
|
7
|
+
|
|
8
|
+
const svg = `<svg xmlns="http://www.w3.org/2000/svg" width="500" height="500" viewBox="0 0 500 500">
|
|
9
|
+
<defs>
|
|
10
|
+
<linearGradient id="bg" x1="0" y1="0" x2="1" y2="1">
|
|
11
|
+
<stop offset="0%" stop-color="#5B58FF"/>
|
|
12
|
+
<stop offset="100%" stop-color="#2320A8"/>
|
|
13
|
+
</linearGradient>
|
|
14
|
+
<filter id="shadow" x="-20%" y="-20%" width="140%" height="140%">
|
|
15
|
+
<feDropShadow dx="0" dy="6" stdDeviation="10" flood-color="#000" flood-opacity="0.25"/>
|
|
16
|
+
</filter>
|
|
17
|
+
</defs>
|
|
18
|
+
|
|
19
|
+
<!-- Background -->
|
|
20
|
+
<rect width="500" height="500" fill="url(#bg)" rx="90"/>
|
|
21
|
+
|
|
22
|
+
<!-- Bell body -->
|
|
23
|
+
<g filter="url(#shadow)">
|
|
24
|
+
<!-- Knob / handle -->
|
|
25
|
+
<rect x="234" y="98" width="32" height="34" rx="10" fill="white"/>
|
|
26
|
+
|
|
27
|
+
<!-- Main bell shape -->
|
|
28
|
+
<path d="
|
|
29
|
+
M 250 128
|
|
30
|
+
C 198 128, 152 165, 150 215
|
|
31
|
+
L 136 332
|
|
32
|
+
C 133 350, 144 362, 160 362
|
|
33
|
+
L 340 362
|
|
34
|
+
C 356 362, 367 350, 364 332
|
|
35
|
+
L 350 215
|
|
36
|
+
C 348 165, 302 128, 250 128
|
|
37
|
+
Z
|
|
38
|
+
" fill="white"/>
|
|
39
|
+
|
|
40
|
+
<!-- Bottom clapper -->
|
|
41
|
+
<ellipse cx="250" cy="366" rx="40" ry="20" fill="white"/>
|
|
42
|
+
|
|
43
|
+
<!-- Clapper cutout (same colour as background area) so it looks recessed -->
|
|
44
|
+
<ellipse cx="250" cy="370" rx="25" ry="13" fill="#3A38D4"/>
|
|
45
|
+
</g>
|
|
46
|
+
|
|
47
|
+
<!-- Notification badge -->
|
|
48
|
+
<circle cx="348" cy="148" r="46" fill="#EE5E52"/>
|
|
49
|
+
<circle cx="348" cy="148" r="38" fill="#EE5E52"/>
|
|
50
|
+
<text
|
|
51
|
+
x="348" y="149"
|
|
52
|
+
text-anchor="middle"
|
|
53
|
+
dominant-baseline="central"
|
|
54
|
+
font-family="Arial, Helvetica, sans-serif"
|
|
55
|
+
font-size="34"
|
|
56
|
+
font-weight="bold"
|
|
57
|
+
fill="white"
|
|
58
|
+
letter-spacing="-1"
|
|
59
|
+
>N</text>
|
|
60
|
+
</svg>`;
|
|
61
|
+
|
|
62
|
+
const out = path.resolve(__dirname, '..', 'logo.png');
|
|
63
|
+
|
|
64
|
+
sharp(Buffer.from(svg))
|
|
65
|
+
.png()
|
|
66
|
+
.toFile(out)
|
|
67
|
+
.then(() => console.log('logo.png saved →', out))
|
|
68
|
+
.catch((err) => { console.error(err); process.exit(1); });
|