From 3fc7b99d05064ed477130510365e716caf60f1a1 Mon Sep 17 00:00:00 2001 From: wukko Date: Sun, 16 Jun 2024 22:00:26 +0600 Subject: [PATCH] web: add manifest, more icons, and some metadata --- web/src/app.html | 13 +++- web/static/icons/android-chrome-192x192.png | Bin 0 -> 3580 bytes web/static/icons/android-chrome-512x512.png | Bin 0 -> 9818 bytes web/static/icons/apple-touch-icon.png | Bin 0 -> 3278 bytes web/static/icons/generic.png | Bin 0 -> 9818 bytes web/static/icons/maskable/128.png | Bin 0 -> 815 bytes web/static/icons/maskable/192.png | Bin 0 -> 1014 bytes web/static/icons/maskable/384.png | Bin 0 -> 1856 bytes web/static/icons/maskable/48.png | Bin 0 -> 390 bytes web/static/icons/maskable/512.png | Bin 0 -> 2828 bytes web/static/icons/maskable/72.png | Bin 0 -> 569 bytes web/static/icons/maskable/96.png | Bin 0 -> 617 bytes web/static/manifest.json | 75 ++++++++++++++++++++ 13 files changed, 87 insertions(+), 1 deletion(-) create mode 100644 web/static/icons/android-chrome-192x192.png create mode 100644 web/static/icons/android-chrome-512x512.png create mode 100644 web/static/icons/apple-touch-icon.png create mode 100644 web/static/icons/generic.png create mode 100644 web/static/icons/maskable/128.png create mode 100644 web/static/icons/maskable/192.png create mode 100644 web/static/icons/maskable/384.png create mode 100644 web/static/icons/maskable/48.png create mode 100644 web/static/icons/maskable/512.png create mode 100644 web/static/icons/maskable/72.png create mode 100644 web/static/icons/maskable/96.png create mode 100644 web/static/manifest.json diff --git a/web/src/app.html b/web/src/app.html index 8f8e1666..e4d684a2 100644 --- a/web/src/app.html +++ b/web/src/app.html @@ -2,8 +2,19 @@ - + + cobalt + + + + + + + + + + %sveltekit.head% diff --git a/web/static/icons/android-chrome-192x192.png b/web/static/icons/android-chrome-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..0d3ac83a24696f6d2e99ffe51177a583e01a6533 GIT binary patch literal 3580 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 literal 0 HcmV?d00001 diff --git a/web/static/icons/apple-touch-icon.png b/web/static/icons/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..b2abfa63d553dc474982d8b3d36dee71f9ceb0ce GIT binary patch literal 3278 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 N(3fm4)*(HT{tc`e{yYEx literal 0 HcmV?d00001 diff --git a/web/static/icons/generic.png b/web/static/icons/generic.png new file mode 100644 index 0000000000000000000000000000000000000000..d1777d489d3824d04f6d6db9f1d7e167b5f4dbc7 GIT binary patch literal 9818 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 literal 0 HcmV?d00001 diff --git a/web/static/icons/maskable/128.png b/web/static/icons/maskable/128.png new file mode 100644 index 0000000000000000000000000000000000000000..e8213cfe5828cc4435d15e4da25d5e57b3f2c472 GIT binary patch literal 815 zcmV+~1JL}5P)C0002YP)t-s00030 z|Ns5{{T3D$`T6gwv<-QBdbw3CyQgoK2BeSJ7MIN;#m$jHdIx3{aStB{b8 ziHV7HbaZ89Wll~`OG`^dMMVh-3GD3b=H}+)SUnwoKOaadSbR8&+y zKR-J=J2EmdBqSvB^YiWP?Y+IdsHmuwm6d^kfm&KxK|w*<+S%6WNt=~O%#0006W zNkl~PJx+&|Ey*O!vMtM z0l3frw1Tc_06Oak7&-Xg;QW2S#V`+SP;tw7(*UgV-4J)bEL6tXHm_6jcfe)WL#2`C z^pvCxYQZOPnYnmjEe_e1R;e}afJxF`qSEYw&U<>KR%V+}`GZQW7=tcuQS(b4F!4$* zDxC`GqGF9MM9MbdR7Pdl&bDKpT4M}c!j*R4%@WWZmegL32{75OQCUy3Z4yxH&w)uY z_33g45$FmNq*kl|mydf?-m|GNtW)~{E|o1R*Dc>xsS14TfCgL(FF%k2Y<5N8IAGFq zmQjR!I-$qjFb%Erf4HCZ}!tI^jGABIgZQgf~3>jWYa&{Am z)r<5N26}69JOE|`)Ren=`+P;>w>VzNx{WH5lAQyxuj}pI0}e=@2iX(aNa~vycsO{` ziUCXmI(Z;01Kd&!U>NZ7^Zo literal 0 HcmV?d00001 diff --git a/web/static/icons/maskable/192.png b/web/static/icons/maskable/192.png new file mode 100644 index 0000000000000000000000000000000000000000..8268d89a58c3c6334d887d403c4a9a615343c5f3 GIT binary patch literal 1014 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 nv_N+M?+@W;^HqDlV&cz;Xd literal 0 HcmV?d00001 diff --git a/web/static/icons/maskable/48.png b/web/static/icons/maskable/48.png new file mode 100644 index 0000000000000000000000000000000000000000..02a5bca0fb8b6cf17cd1327fab8f337e61c79489 GIT binary patch literal 390 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 literal 0 HcmV?d00001 diff --git a/web/static/icons/maskable/72.png b/web/static/icons/maskable/72.png new file mode 100644 index 0000000000000000000000000000000000000000..903f6bd500691990bc32f79d2192de30a594dbac GIT binary patch literal 569 zcmV-90>=G`P)U1D4i4kv<4{mg+}zyK($d1h!nwJ*b8~YFMdNuC9rRiG+lN zczAdage<5vZq|SJIvoDZf)%Lvw2I#ZK=M#Qy;1d0m_2sQ#amIqLvuF=xisi6$UIuz; zb6ur&hh5M0l9dq)!pXaUZ^FLHW>XW;P5BP`aN`?s&5l?Pn9ZZe+0xgV$Q#-C<2SNj z3;m;=H+pQcu@HK-A3tRDYEO~S*LK?Rog}FBlPt2w6wIbv9YG6rk|gmb8~ZEUS3jCQtRvM z=jZ3-z?PPllarH=kB?<#Wkp3rKtMne5)uy&58B$=&CSij!^6VD!n?b>y1Kff zqoag`giA|HIyyQyI5;36AhcV!LI3~(b4f%&RA}Dq)<>IyFc5&@45AbfM5WogYu#S| z{}0