From 374d03cdfd1b1ae96b3fbc6386dcf4edef31d802 Mon Sep 17 00:00:00 2001 From: poignatov Date: Sun, 11 Jan 2026 14:55:11 +0300 Subject: [PATCH] =?UTF-8?q?fix:=20=D0=B8=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D1=8B=20maskable=20=D0=B8=D0=BA=D0=BE=D0=BD?= =?UTF-8?q?=D0=BA=D0=B8=20=D0=B4=D0=BB=D1=8F=20Android=20-=20=D1=83=D0=B1?= =?UTF-8?q?=D1=80=D0=B0=D0=BD=20=D0=BF=D1=80=D0=BE=D0=B7=D1=80=D0=B0=D1=87?= =?UTF-8?q?=D0=BD=D1=8B=D0=B9=20=D1=84=D0=BE=D0=BD=20(v3.8.3)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- VERSION | 2 +- play-life-web/generate-icons.cjs | 43 +++++++++--------- play-life-web/package.json | 2 +- play-life-web/public/pwa-maskable-192x192.png | Bin 3541 -> 3021 bytes play-life-web/public/pwa-maskable-512x512.png | Bin 14172 -> 12057 bytes 5 files changed, 24 insertions(+), 23 deletions(-) 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) => ` @@ -21,10 +21,27 @@ const createIconSVG = (size) => ` `; +// Создаем SVG шаблон для maskable иконки (без скругления, контент в безопасной зоне 80%) +const createMaskableIconSVG = (size) => ` + + + + + + + + + P + +`; + 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 82be78833e5c26b4cb75de3b7ec9a212124fdc86..b9ad4e44990fd867864cbb18c4560f35e8e165b7 100644 GIT binary patch literal 3021 zcmXw5dmxj0AAjb~2ubC*tUAu=J(4B4UuGxXNaYrtk*4F6E~My1F57acQ*wzqDYA4V zml%ar=oyMmE;}zmWE;v(7!&3(Puu%Ev-gi@-|hMB_q~6=pU*X)L;JKezS95zK+Ds^ z%@2_*^ifkmKK(vMs3JoByay=;0I+)Kg8}XpZbrUPJ>7_h;|m3&D^W(_2CR8W$ezaX zm_5p-!?{JL*OMC?!a6u@jTe61@1AD1zgO*!j_EpL@V1*88gBZx_h+2)*V%`Cq^4i* zr~BDsCImO{&@jl)h>ge&kK@=seb(32vtayXC7B8(bNIYdozSDTls_^97Mm`av2oRvgU$eND=#dvdi3E76)H^zG1HjUjSP-GrDhv$=hqMX{ zWKv+fMmh}*Y{g2?p?9u2!NKT}@$Pv?71jdm#OCe%vz1BZaa#q{h4gWz5^Gj#hO_IZb<$Wwp|r#U&cf70X|IYF)mRKI0Orl< zrcgtp%3V;M`*b9F1E`NC$DwYSybNW^WHFSi%(Cd7>HTQv4;P_Un=RYtz5}2Zu3-$K z5`Cc{Jd0XSOy@C`0g7;0qm^(N>>_v43$tx73MhTYv){*4N zjMmAG2FZ=?+yI6Ha9##Adg;w(@GSaYau-q=G+K3eI`vYx8v)4B9jwoui-4kIO!u_u}Z9ri09uZzh{ys7vQ}Z;i{UesMB1a!|Iu5YX=65oi~6zrI52iP9`|2P-a{| zozBqej-K=ux6Q2wpb<;jaIN3yo^7EY{J*}Q(?Q-W;aNSk=VSIdU%GhDn%Zj&{s;(} z3+vw|e1v`r(K0r>&{D8yjD*d=^hO%F3gRaoXM7ZRI!xd`ARX|s%4^t}mieDYMN@^k z)XJD44BCuw!_3DYfC{gIGqq309K13Lruyuvo1dDBU8FTwWU9U}9Y$@c_T$c2(605x zFzZhToZ;SjhqI_;l$`8;JyiJ8$=7$Ti4;)zo_Et6f39MT{RfL)HxZ}pY9|?bwJ9@`<2COr22+|qe{>Gr=P6k#lj-lrK+Ja(dRkyvXj~4V^1M0=cWq0b|t9Z zD@K3|zWrj-LhY4rzFsmj+%1(5hBSv@ z@LjC_ggW~O9$#V0uqX$QR#r$UO#`{MEwNdIrUp$(nh7$!x$~;(TlVAM&;^BKUG%>v z;bQ*}KwXt8|3cy%CJW9T6`yY@h-A^v zBKvH~>%nCk%?GiA{N67GJn#4k1{Q!taq+6_ZXb3uu6L%rvbIr`q!DBxgDlP=O#c8Z za&$3Id}^^atBHFZm3)G~Hi^e~S|{aTIWv)kE6K`R#sVLY%xd|rdk|ZkD45E1Sg4r= zn+jK+xdc!VeDAuA zD7vUhvBK_J`&V7LH(bz_$RI1+KScz3!8S*u$O2WVmn2=8pm zMpt}Kqivc2&{_1=xPzhXI#hLtIcnId0l=RWwADh*^~ zb>8fdwT|(~JuTkDBY@M$pATtdJ=%;lRosU-WM&2#D#)yn-POS#0O3^=01D_AMy+`R zUf+g<**gelTJ>KCSd53)!BAvxiL(8b)*+YQLDbAIen&a{E`mM)qFAY`ERef{4{^(B2`NzY?6}%d%0%&txzOt!JY_t2cxhYBPT=l za>h~U1HV!T?K7KQ;D@1cBRX(la5Z{oC4V9gBus`x(nc?b=jF-ndZ0s49Mdx%8Gc0y&dV2l@ zPI^PeGKg}PL6ox$qK*VlLPN*OLsyoEp5lWrtn+j_{@I4G8?y9)o8{?qm#5ENo<4UX rM6W~3yGc&{GUQy+y%;)+fpJNDlrLz$_x>-!&jC;OLvGbSho<}w<%sC~ literal 3541 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 diff --git a/play-life-web/public/pwa-maskable-512x512.png b/play-life-web/public/pwa-maskable-512x512.png index f3e10d8690ea38adff5f7149ac170c5cfd38955d..2b9b78965d5353c53fa31569bff6340f7ec62896 100644 GIT binary patch literal 12057 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 Kj+E_3|M`E+uym*Z