diff --git a/VERSION b/VERSION
index a08ffae..269aa9c 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-3.8.2
+3.8.3
diff --git a/play-life-web/generate-icons.cjs b/play-life-web/generate-icons.cjs
index 990b69b..d6ade16 100644
--- a/play-life-web/generate-icons.cjs
+++ b/play-life-web/generate-icons.cjs
@@ -7,7 +7,7 @@ const path = require('path');
const publicDir = path.join(__dirname, 'public');
-// Создаем SVG шаблон для иконки
+// Создаем SVG шаблон для обычной иконки (со скругленными углами)
const createIconSVG = (size) => `
`;
+// Создаем SVG шаблон для maskable иконки (без скругления, контент в безопасной зоне 80%)
+const createMaskableIconSVG = (size) => `
+
+`;
+
async function generateIcons() {
- // Создаем базовый SVG
+ // Создаем базовые SVG
const baseSVG = createIconSVG(512);
const svgBuffer = Buffer.from(baseSVG);
+
+ const maskableSVG = createMaskableIconSVG(512);
+ const maskableSvgBuffer = Buffer.from(maskableSVG);
// Генерируем иконки разных размеров
const sizes = [
@@ -37,25 +54,9 @@ async function generateIcons() {
];
for (const icon of sizes) {
- let image = sharp(svgBuffer).resize(icon.size, icon.size);
-
- if (icon.maskable) {
- // Для maskable иконки добавляем padding (контент в центральных 80%)
- const padding = icon.size * 0.1;
- image = sharp({
- create: {
- width: icon.size,
- height: icon.size,
- channels: 4,
- background: { r: 0, g: 0, b: 0, alpha: 0 }
- }
- })
- .composite([{
- input: await sharp(svgBuffer).resize(Math.round(icon.size * 0.8), Math.round(icon.size * 0.8)).toBuffer(),
- left: Math.round(padding),
- top: Math.round(padding)
- }]);
- }
+ // Для maskable иконок используем специальный SVG с контентом в безопасной зоне
+ const sourceBuffer = icon.maskable ? maskableSvgBuffer : svgBuffer;
+ const image = sharp(sourceBuffer).resize(icon.size, icon.size);
const outputPath = path.join(publicDir, icon.name);
await image.png().toFile(outputPath);
diff --git a/play-life-web/package.json b/play-life-web/package.json
index 2da8e8b..2d3faf2 100644
--- a/play-life-web/package.json
+++ b/play-life-web/package.json
@@ -1,6 +1,6 @@
{
"name": "play-life-web",
- "version": "3.8.2",
+ "version": "3.8.3",
"type": "module",
"scripts": {
"dev": "vite",
diff --git a/play-life-web/public/pwa-maskable-192x192.png b/play-life-web/public/pwa-maskable-192x192.png
index 82be788..b9ad4e4 100644
Binary files a/play-life-web/public/pwa-maskable-192x192.png and b/play-life-web/public/pwa-maskable-192x192.png differ
diff --git a/play-life-web/public/pwa-maskable-512x512.png b/play-life-web/public/pwa-maskable-512x512.png
index f3e10d8..2b9b789 100644
Binary files a/play-life-web/public/pwa-maskable-512x512.png and b/play-life-web/public/pwa-maskable-512x512.png differ